@codingame/monaco-vscode-scm-service-override 11.1.2 → 12.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +2 -1
- package/index.js +22 -1
- package/package.json +24 -7
- package/vscode/src/vs/workbench/contrib/scm/browser/activity.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/activity.js +34 -32
- package/vscode/src/vs/workbench/contrib/scm/browser/diff.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/diff.js +93 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/media/scm.css.js +2 -2
- package/vscode/src/vs/workbench/contrib/scm/browser/menus.d.ts +49 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/menus.js +31 -32
- package/vscode/src/vs/workbench/contrib/scm/browser/scm.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/scm.contribution.js +153 -187
- package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryViewPane.d.ts +59 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryViewPane.js +245 -217
- package/vscode/src/vs/workbench/contrib/scm/browser/scmRepositoriesViewPane.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/scmRepositoriesViewPane.js +31 -29
- package/vscode/src/vs/workbench/contrib/scm/browser/scmRepositoryRenderer.d.ts +57 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/scmRepositoryRenderer.js +4 -2
- package/vscode/src/vs/workbench/contrib/scm/browser/scmViewPane.d.ts +185 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/scmViewPane.js +365 -336
- package/vscode/src/vs/workbench/contrib/scm/browser/scmViewPaneContainer.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/scmViewPaneContainer.js +17 -16
- package/vscode/src/vs/workbench/contrib/scm/browser/scmViewService.d.ts +66 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/scmViewService.js +13 -13
- package/vscode/src/vs/workbench/contrib/scm/browser/workingSet.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/scm/browser/workingSet.js +9 -6
- package/vscode/src/vs/workbench/contrib/scm/common/quickDiffService.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/scm/common/quickDiffService.js +4 -2
- package/vscode/src/vs/workbench/contrib/scm/common/scmService.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/scm/common/scmService.js +13 -11
- package/scm.js +0 -17
package/index.d.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import { type IEditorOverrideServices } from "vscode/vscode/vs/editor/standalone/browser/standaloneServices";
|
|
2
|
+
export default function getServiceOverride(): IEditorOverrideServices;
|
package/index.js
CHANGED
|
@@ -1 +1,22 @@
|
|
|
1
|
-
|
|
1
|
+
|
|
2
|
+
import 'vscode/vscode/vs/editor/standalone/browser/standaloneServices';
|
|
3
|
+
import { ISCMService, ISCMViewService } from 'vscode/vscode/vs/workbench/contrib/scm/common/scm.service';
|
|
4
|
+
import { SCMService } from './vscode/src/vs/workbench/contrib/scm/common/scmService.js';
|
|
5
|
+
import { SCMViewService } from './vscode/src/vs/workbench/contrib/scm/browser/scmViewService.js';
|
|
6
|
+
import { IQuickDiffService } from 'vscode/vscode/vs/workbench/contrib/scm/common/quickDiff.service';
|
|
7
|
+
import { QuickDiffService } from './vscode/src/vs/workbench/contrib/scm/common/quickDiffService.js';
|
|
8
|
+
import './vscode/src/vs/workbench/contrib/scm/browser/scm.contribution.js';
|
|
9
|
+
import { SyncDescriptor } from 'vscode/vscode/vs/platform/instantiation/common/descriptors';
|
|
10
|
+
import { IDirtyDiffModelService } from 'vscode/vscode/vs/workbench/contrib/scm/browser/diff.service';
|
|
11
|
+
import { DirtyDiffModelService } from './vscode/src/vs/workbench/contrib/scm/browser/diff.js';
|
|
12
|
+
|
|
13
|
+
function getServiceOverride() {
|
|
14
|
+
return {
|
|
15
|
+
[ISCMService.toString()]: new SyncDescriptor(SCMService, [], true),
|
|
16
|
+
[ISCMViewService.toString()]: new SyncDescriptor(SCMViewService, [], true),
|
|
17
|
+
[IQuickDiffService.toString()]: new SyncDescriptor(QuickDiffService, [], true),
|
|
18
|
+
[IDirtyDiffModelService.toString()]: new SyncDescriptor(DirtyDiffModelService, [], true)
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export { getServiceOverride as default };
|
package/package.json
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-scm-service-override",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "12.0.1",
|
|
4
|
+
"private": false,
|
|
5
|
+
"description": "VSCode public API plugged on the monaco editor - scm service-override",
|
|
4
6
|
"keywords": [],
|
|
5
7
|
"author": {
|
|
6
8
|
"name": "CodinGame",
|
|
@@ -12,8 +14,21 @@
|
|
|
12
14
|
"url": "git+ssh://git@github.com/CodinGame/monaco-vscode-api.git"
|
|
13
15
|
},
|
|
14
16
|
"type": "module",
|
|
15
|
-
"
|
|
16
|
-
|
|
17
|
+
"dependencies": {
|
|
18
|
+
"@codingame/monaco-vscode-27663a0b-1249-58ba-9085-e52d706b50bc-common": "12.0.1",
|
|
19
|
+
"@codingame/monaco-vscode-65619f8f-0eab-5d8b-855a-43b6353fe527-common": "12.0.1",
|
|
20
|
+
"@codingame/monaco-vscode-9e888134-1a6f-58d9-b0e6-0fc047448366-common": "12.0.1",
|
|
21
|
+
"@codingame/monaco-vscode-a7c9ae3c-16d2-5d17-86b2-981be7094566-common": "12.0.1",
|
|
22
|
+
"@codingame/monaco-vscode-b4efa70b-52b9-5670-ab5c-f10b10b6834e-common": "12.0.1",
|
|
23
|
+
"@codingame/monaco-vscode-be8ddbb5-094a-5657-b1cc-fe106c94c632-common": "12.0.1",
|
|
24
|
+
"@codingame/monaco-vscode-e571cbbb-526b-5d8b-92c5-a0437d2dabb3-common": "12.0.1",
|
|
25
|
+
"@codingame/monaco-vscode-f48982c4-9e82-55e2-b800-20e6d1e6096f-common": "12.0.1",
|
|
26
|
+
"@codingame/monaco-vscode-f99b74f5-fcb7-512f-8c6c-35f5a107577d-common": "12.0.1",
|
|
27
|
+
"@codingame/monaco-vscode-ff9fa663-eae3-5274-8573-c2b918871e4b-common": "12.0.1",
|
|
28
|
+
"vscode": "npm:@codingame/monaco-vscode-api@12.0.1"
|
|
29
|
+
},
|
|
30
|
+
"peerDependencies": {},
|
|
31
|
+
"peerDependenciesMeta": {},
|
|
17
32
|
"main": "index.js",
|
|
18
33
|
"module": "index.js",
|
|
19
34
|
"types": "index.d.ts",
|
|
@@ -22,10 +37,12 @@
|
|
|
22
37
|
"default": "./index.js"
|
|
23
38
|
},
|
|
24
39
|
"./vscode/*": {
|
|
25
|
-
"default": "./vscode/src/*.js"
|
|
40
|
+
"default": "./vscode/src/*.js",
|
|
41
|
+
"types": "./vscode/src/*.d.ts"
|
|
42
|
+
},
|
|
43
|
+
"./*": {
|
|
44
|
+
"default": "./*.js",
|
|
45
|
+
"types": "./*.d.ts"
|
|
26
46
|
}
|
|
27
|
-
},
|
|
28
|
-
"dependencies": {
|
|
29
|
-
"vscode": "npm:@codingame/monaco-vscode-api@11.1.2"
|
|
30
47
|
}
|
|
31
48
|
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Disposable } from "vscode/vscode/vs/base/common/lifecycle";
|
|
2
|
+
import { ISCMViewService } from "vscode/vscode/vs/workbench/contrib/scm/common/scm.service";
|
|
3
|
+
import { ISCMService } from "vscode/vscode/vs/workbench/contrib/scm/common/scm.service";
|
|
4
|
+
import { IActivityService } from "vscode/vscode/vs/workbench/services/activity/common/activity.service";
|
|
5
|
+
import { IWorkbenchContribution } from "vscode/vscode/vs/workbench/common/contributions";
|
|
6
|
+
import { IContextKeyService } from "vscode/vscode/vs/platform/contextkey/common/contextkey.service";
|
|
7
|
+
import { IStatusbarService } from "vscode/vscode/vs/workbench/services/statusbar/browser/statusbar.service";
|
|
8
|
+
import { IConfigurationService } from "vscode/vscode/vs/platform/configuration/common/configuration.service";
|
|
9
|
+
import { IUriIdentityService } from "vscode/vscode/vs/platform/uriIdentity/common/uriIdentity.service";
|
|
10
|
+
import { ITitleService } from "vscode/vscode/vs/workbench/services/title/browser/titleService.service";
|
|
11
|
+
import { IEditorGroupsService } from "vscode/vscode/vs/workbench/services/editor/common/editorGroupsService.service";
|
|
12
|
+
export declare class SCMActiveRepositoryController extends Disposable implements IWorkbenchContribution {
|
|
13
|
+
private readonly activityService;
|
|
14
|
+
private readonly configurationService;
|
|
15
|
+
private readonly contextKeyService;
|
|
16
|
+
private readonly scmService;
|
|
17
|
+
private readonly scmViewService;
|
|
18
|
+
private readonly statusbarService;
|
|
19
|
+
private readonly titleService;
|
|
20
|
+
private readonly _countBadgeConfig;
|
|
21
|
+
private readonly _repositories;
|
|
22
|
+
private readonly _activeRepositoryHistoryItemRefName;
|
|
23
|
+
private readonly _countBadgeRepositories;
|
|
24
|
+
private readonly _countBadge;
|
|
25
|
+
private _activeRepositoryNameContextKey;
|
|
26
|
+
private _activeRepositoryBranchNameContextKey;
|
|
27
|
+
constructor(activityService: IActivityService, configurationService: IConfigurationService, contextKeyService: IContextKeyService, scmService: ISCMService, scmViewService: ISCMViewService, statusbarService: IStatusbarService, titleService: ITitleService);
|
|
28
|
+
private _getRepositoryResourceCount;
|
|
29
|
+
private _updateActivityCountBadge;
|
|
30
|
+
private _updateStatusBar;
|
|
31
|
+
private _updateActiveRepositoryContextKeys;
|
|
32
|
+
}
|
|
33
|
+
export declare class SCMActiveResourceContextKeyController extends Disposable implements IWorkbenchContribution {
|
|
34
|
+
private readonly scmService;
|
|
35
|
+
private readonly uriIdentityService;
|
|
36
|
+
private readonly _repositories;
|
|
37
|
+
private readonly _onDidRepositoryChange;
|
|
38
|
+
constructor(editorGroupsService: IEditorGroupsService, scmService: ISCMService, uriIdentityService: IUriIdentityService);
|
|
39
|
+
private _getEditorHasChanges;
|
|
40
|
+
private _getEditorRepositoryId;
|
|
41
|
+
dispose(): void;
|
|
42
|
+
}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from 'vscode/external/tslib/tslib.es6';
|
|
2
3
|
import { localize } from 'vscode/vscode/vs/nls';
|
|
3
4
|
import { basename } from 'vscode/vscode/vs/base/common/resources';
|
|
4
5
|
import { Disposable } from 'vscode/vscode/vs/base/common/lifecycle';
|
|
5
6
|
import { Event, Emitter } from 'vscode/vscode/vs/base/common/event';
|
|
6
|
-
import { VIEW_PANE_ID } from 'vscode/vscode/vs/workbench/contrib/scm/common/scm';
|
|
7
|
+
import { VIEW_PANE_ID } from '@codingame/monaco-vscode-ff9fa663-eae3-5274-8573-c2b918871e4b-common/vscode/vs/workbench/contrib/scm/common/scm';
|
|
7
8
|
import { ISCMService, ISCMViewService } from 'vscode/vscode/vs/workbench/contrib/scm/common/scm.service';
|
|
8
|
-
import { NumberBadge } from 'vscode/vscode/vs/workbench/services/activity/common/activity';
|
|
9
|
+
import { NumberBadge } from '@codingame/monaco-vscode-a7c9ae3c-16d2-5d17-86b2-981be7094566-common/vscode/vs/workbench/services/activity/common/activity';
|
|
9
10
|
import { IActivityService } from 'vscode/vscode/vs/workbench/services/activity/common/activity.service';
|
|
10
11
|
import { RawContextKey } from 'vscode/vscode/vs/platform/contextkey/common/contextkey';
|
|
11
12
|
import { IContextKeyService } from 'vscode/vscode/vs/platform/contextkey/common/contextkey.service';
|
|
13
|
+
import { StatusbarAlignment } from 'vscode/vscode/vs/workbench/services/statusbar/browser/statusbar';
|
|
12
14
|
import { IStatusbarService } from 'vscode/vscode/vs/workbench/services/statusbar/browser/statusbar.service';
|
|
13
15
|
import { IConfigurationService } from 'vscode/vscode/vs/platform/configuration/common/configuration.service';
|
|
14
16
|
import { EditorResourceAccessor } from 'vscode/vscode/vs/workbench/common/editor';
|
|
@@ -16,7 +18,7 @@ import { IUriIdentityService } from 'vscode/vscode/vs/platform/uriIdentity/commo
|
|
|
16
18
|
import { Iterable } from 'vscode/vscode/vs/base/common/iterator';
|
|
17
19
|
import { ITitleService } from 'vscode/vscode/vs/workbench/services/title/browser/titleService.service';
|
|
18
20
|
import { IEditorGroupsService } from 'vscode/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
|
|
19
|
-
import { getRepositoryResourceCount } from 'vscode/vscode/vs/workbench/contrib/scm/browser/util';
|
|
21
|
+
import { getRepositoryResourceCount } from '@codingame/monaco-vscode-be8ddbb5-094a-5657-b1cc-fe106c94c632-common/vscode/vs/workbench/contrib/scm/browser/util';
|
|
20
22
|
import 'vscode/vscode/vs/base/common/arrays';
|
|
21
23
|
import { autorunWithStore, autorun } from 'vscode/vscode/vs/base/common/observableInternal/autorun';
|
|
22
24
|
import { derived } from 'vscode/vscode/vs/base/common/observableInternal/derived';
|
|
@@ -25,8 +27,8 @@ import { observableFromEvent } from 'vscode/vscode/vs/base/common/observableInte
|
|
|
25
27
|
import { observableConfigValue } from 'vscode/vscode/vs/platform/observable/common/platformObservableUtils';
|
|
26
28
|
|
|
27
29
|
const ActiveRepositoryContextKeys = {
|
|
28
|
-
ActiveRepositoryName: (
|
|
29
|
-
ActiveRepositoryBranchName: (
|
|
30
|
+
ActiveRepositoryName: ( new RawContextKey('scmActiveRepositoryName', '')),
|
|
31
|
+
ActiveRepositoryBranchName: ( new RawContextKey('scmActiveRepositoryBranchName', '')),
|
|
30
32
|
};
|
|
31
33
|
let SCMActiveRepositoryController = class SCMActiveRepositoryController extends Disposable {
|
|
32
34
|
constructor(activityService, configurationService, contextKeyService, scmService, scmViewService, statusbarService, titleService) {
|
|
@@ -50,10 +52,10 @@ let SCMActiveRepositoryController = class SCMActiveRepositoryController extends
|
|
|
50
52
|
switch (this._countBadgeConfig.read(reader)) {
|
|
51
53
|
case 'all': {
|
|
52
54
|
const repositories = this._repositories.read(reader);
|
|
53
|
-
return [...(
|
|
55
|
+
return [...( Iterable.map(
|
|
54
56
|
repositories,
|
|
55
57
|
r => ({ provider: r.provider, resourceCount: this._getRepositoryResourceCount(r) })
|
|
56
|
-
))
|
|
58
|
+
))];
|
|
57
59
|
}
|
|
58
60
|
case 'focused': {
|
|
59
61
|
const repository = this.scmViewService.activeRepository.read(reader);
|
|
@@ -62,7 +64,7 @@ let SCMActiveRepositoryController = class SCMActiveRepositoryController extends
|
|
|
62
64
|
case 'off':
|
|
63
65
|
return [];
|
|
64
66
|
default:
|
|
65
|
-
throw (
|
|
67
|
+
throw ( new Error('Invalid countBadge setting'));
|
|
66
68
|
}
|
|
67
69
|
});
|
|
68
70
|
this._countBadge = derived(this, reader => {
|
|
@@ -101,7 +103,7 @@ let SCMActiveRepositoryController = class SCMActiveRepositoryController extends
|
|
|
101
103
|
if (count === 0) {
|
|
102
104
|
return;
|
|
103
105
|
}
|
|
104
|
-
const badge = (
|
|
106
|
+
const badge = ( new NumberBadge(count, num => ( localize(8405, '{0} pending changes', num))));
|
|
105
107
|
store.add(this.activityService.showViewActivity(VIEW_PANE_ID, { badge }));
|
|
106
108
|
}
|
|
107
109
|
_updateStatusBar(repository, commands, store) {
|
|
@@ -127,15 +129,15 @@ let SCMActiveRepositoryController = class SCMActiveRepositoryController extends
|
|
|
127
129
|
repoAgnosticActionName = '';
|
|
128
130
|
}
|
|
129
131
|
const statusbarEntry = {
|
|
130
|
-
name: ( localize(
|
|
132
|
+
name: ( localize(8406, "Source Control")) + (repoAgnosticActionName ? ` ${repoAgnosticActionName}` : ''),
|
|
131
133
|
text: command.title,
|
|
132
134
|
ariaLabel: tooltip,
|
|
133
135
|
tooltip,
|
|
134
136
|
command: command.id ? command : undefined
|
|
135
137
|
};
|
|
136
138
|
store.add(index === 0 ?
|
|
137
|
-
this.statusbarService.addEntry(statusbarEntry, `status.scm.${index}`,
|
|
138
|
-
this.statusbarService.addEntry(statusbarEntry, `status.scm.${index}`,
|
|
139
|
+
this.statusbarService.addEntry(statusbarEntry, `status.scm.${index}`, StatusbarAlignment.LEFT, 10000) :
|
|
140
|
+
this.statusbarService.addEntry(statusbarEntry, `status.scm.${index}`, StatusbarAlignment.LEFT, { id: `status.scm.${index - 1}`, alignment: StatusbarAlignment.RIGHT, compact: true }));
|
|
139
141
|
}
|
|
140
142
|
}
|
|
141
143
|
_updateActiveRepositoryContextKeys(repositoryName, branchName) {
|
|
@@ -143,24 +145,24 @@ let SCMActiveRepositoryController = class SCMActiveRepositoryController extends
|
|
|
143
145
|
this._activeRepositoryBranchNameContextKey.set(branchName ?? '');
|
|
144
146
|
}
|
|
145
147
|
};
|
|
146
|
-
SCMActiveRepositoryController = (
|
|
147
|
-
(
|
|
148
|
-
(
|
|
149
|
-
(
|
|
150
|
-
(
|
|
151
|
-
(
|
|
152
|
-
(
|
|
153
|
-
(
|
|
154
|
-
], SCMActiveRepositoryController))
|
|
148
|
+
SCMActiveRepositoryController = ( __decorate([
|
|
149
|
+
( __param(0, IActivityService)),
|
|
150
|
+
( __param(1, IConfigurationService)),
|
|
151
|
+
( __param(2, IContextKeyService)),
|
|
152
|
+
( __param(3, ISCMService)),
|
|
153
|
+
( __param(4, ISCMViewService)),
|
|
154
|
+
( __param(5, IStatusbarService)),
|
|
155
|
+
( __param(6, ITitleService))
|
|
156
|
+
], SCMActiveRepositoryController));
|
|
155
157
|
let SCMActiveResourceContextKeyController = class SCMActiveResourceContextKeyController extends Disposable {
|
|
156
158
|
constructor(editorGroupsService, scmService, uriIdentityService) {
|
|
157
159
|
super();
|
|
158
160
|
this.scmService = scmService;
|
|
159
161
|
this.uriIdentityService = uriIdentityService;
|
|
160
162
|
this._repositories = observableFromEvent(this, Event.any(this.scmService.onDidAddRepository, this.scmService.onDidRemoveRepository), () => this.scmService.repositories);
|
|
161
|
-
this._onDidRepositoryChange = (
|
|
162
|
-
const activeResourceHasChangesContextKey = (
|
|
163
|
-
const activeResourceRepositoryContextKey = (
|
|
163
|
+
this._onDidRepositoryChange = ( new Emitter());
|
|
164
|
+
const activeResourceHasChangesContextKey = ( new RawContextKey('scmActiveResourceHasChanges', false, ( localize(8407, "Whether the active resource has changes"))));
|
|
165
|
+
const activeResourceRepositoryContextKey = ( new RawContextKey('scmActiveResourceRepository', undefined, ( localize(8408, "The active resource's repository"))));
|
|
164
166
|
this._store.add(autorunWithStore((reader, store) => {
|
|
165
167
|
for (const repository of this._repositories.read(reader)) {
|
|
166
168
|
store.add(Event.runAndSubscribe(repository.provider.onDidChangeResources, () => {
|
|
@@ -188,10 +190,10 @@ let SCMActiveResourceContextKeyController = class SCMActiveResourceContextKeyCon
|
|
|
188
190
|
}
|
|
189
191
|
const activeResourceRepository = this.scmService.getRepository(activeResource);
|
|
190
192
|
for (const resourceGroup of activeResourceRepository?.provider.groups ?? []) {
|
|
191
|
-
if ((
|
|
193
|
+
if (( resourceGroup.resources
|
|
192
194
|
.some(
|
|
193
195
|
scmResource => this.uriIdentityService.extUri.isEqual(activeResource, scmResource.sourceUri)
|
|
194
|
-
)))
|
|
196
|
+
))) {
|
|
195
197
|
return true;
|
|
196
198
|
}
|
|
197
199
|
}
|
|
@@ -210,10 +212,10 @@ let SCMActiveResourceContextKeyController = class SCMActiveResourceContextKeyCon
|
|
|
210
212
|
super.dispose();
|
|
211
213
|
}
|
|
212
214
|
};
|
|
213
|
-
SCMActiveResourceContextKeyController = (
|
|
214
|
-
(
|
|
215
|
-
(
|
|
216
|
-
(
|
|
217
|
-
], SCMActiveResourceContextKeyController))
|
|
215
|
+
SCMActiveResourceContextKeyController = ( __decorate([
|
|
216
|
+
( __param(0, IEditorGroupsService)),
|
|
217
|
+
( __param(1, ISCMService)),
|
|
218
|
+
( __param(2, IUriIdentityService))
|
|
219
|
+
], SCMActiveResourceContextKeyController));
|
|
218
220
|
|
|
219
221
|
export { SCMActiveRepositoryController, SCMActiveResourceContextKeyController };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { IInstantiationService } from "vscode/vscode/vs/platform/instantiation/common/instantiation";
|
|
2
|
+
import { DirtyDiffModel } from "vscode/vscode/vs/workbench/contrib/scm/browser/dirtydiffDecorator";
|
|
3
|
+
import { ITextFileService } from "vscode/vscode/vs/workbench/services/textfile/common/textfiles.service";
|
|
4
|
+
import { Disposable } from "vscode/vscode/vs/base/common/lifecycle";
|
|
5
|
+
import { IEditorService } from "vscode/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
6
|
+
import { DiffAlgorithmName } from "vscode/vscode/vs/editor/common/services/editorWorker";
|
|
7
|
+
import { IUriIdentityService } from "vscode/vscode/vs/platform/uriIdentity/common/uriIdentity.service";
|
|
8
|
+
import { URI } from "vscode/vscode/vs/base/common/uri";
|
|
9
|
+
import { IDirtyDiffModelService } from "vscode/vscode/vs/workbench/contrib/scm/browser/diff.service";
|
|
10
|
+
export declare class DirtyDiffModelService extends Disposable implements IDirtyDiffModelService {
|
|
11
|
+
private readonly editorService;
|
|
12
|
+
private readonly instantiationService;
|
|
13
|
+
private readonly textFileService;
|
|
14
|
+
private readonly uriIdentityService;
|
|
15
|
+
_serviceBrand: undefined;
|
|
16
|
+
private readonly _dirtyDiffModels;
|
|
17
|
+
private readonly _diffModels;
|
|
18
|
+
private _visibleTextEditorControls;
|
|
19
|
+
constructor(editorService: IEditorService, instantiationService: IInstantiationService, textFileService: ITextFileService, uriIdentityService: IUriIdentityService);
|
|
20
|
+
getDirtyDiffModel(uri: URI): DirtyDiffModel | undefined;
|
|
21
|
+
getDiffModel(uri: URI, algorithm: DiffAlgorithmName): DirtyDiffModel | undefined;
|
|
22
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from 'vscode/external/tslib/tslib.es6';
|
|
3
|
+
import { ResourceMap } from 'vscode/vscode/vs/base/common/map';
|
|
4
|
+
import { IInstantiationService } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
|
|
5
|
+
import { DirtyDiffModel } from 'vscode/vscode/vs/workbench/contrib/scm/browser/dirtydiffDecorator';
|
|
6
|
+
import { ITextFileService } from 'vscode/vscode/vs/workbench/services/textfile/common/textfiles.service';
|
|
7
|
+
import { Disposable } from 'vscode/vscode/vs/base/common/lifecycle';
|
|
8
|
+
import { IEditorService } from 'vscode/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
9
|
+
import 'vscode/vscode/vs/base/common/arrays';
|
|
10
|
+
import 'vscode/vscode/vs/base/common/event';
|
|
11
|
+
import { autorun } from 'vscode/vscode/vs/base/common/observableInternal/autorun';
|
|
12
|
+
import 'vscode/vscode/vs/base/common/observableInternal/derived';
|
|
13
|
+
import 'vscode/vscode/vs/base/common/cancellation';
|
|
14
|
+
import { observableFromEvent } from 'vscode/vscode/vs/base/common/observableInternal/utils';
|
|
15
|
+
import { isCodeEditor, isDiffEditor } from 'vscode/vscode/vs/editor/browser/editorBrowser';
|
|
16
|
+
import 'vscode/vscode/vs/platform/instantiation/common/extensions';
|
|
17
|
+
import { IUriIdentityService } from 'vscode/vscode/vs/platform/uriIdentity/common/uriIdentity.service';
|
|
18
|
+
|
|
19
|
+
let DirtyDiffModelService = class DirtyDiffModelService extends Disposable {
|
|
20
|
+
constructor(editorService, instantiationService, textFileService, uriIdentityService) {
|
|
21
|
+
super();
|
|
22
|
+
this.editorService = editorService;
|
|
23
|
+
this.instantiationService = instantiationService;
|
|
24
|
+
this.textFileService = textFileService;
|
|
25
|
+
this.uriIdentityService = uriIdentityService;
|
|
26
|
+
this._dirtyDiffModels = ( new ResourceMap());
|
|
27
|
+
this._diffModels = ( new ResourceMap());
|
|
28
|
+
this._visibleTextEditorControls = observableFromEvent(this.editorService.onDidVisibleEditorsChange, () => this.editorService.visibleTextEditorControls);
|
|
29
|
+
this._register(autorun(reader => {
|
|
30
|
+
const visibleTextEditorControls = this._visibleTextEditorControls.read(reader);
|
|
31
|
+
for (const [uri, dirtyDiffModel] of this._dirtyDiffModels) {
|
|
32
|
+
const textEditorControl = visibleTextEditorControls
|
|
33
|
+
.find(editor => isCodeEditor(editor) &&
|
|
34
|
+
this.uriIdentityService.extUri.isEqual(editor.getModel()?.uri, uri));
|
|
35
|
+
if (textEditorControl) {
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
dirtyDiffModel.dispose();
|
|
39
|
+
this._dirtyDiffModels.delete(uri);
|
|
40
|
+
}
|
|
41
|
+
for (const [uri, dirtyDiffModel] of this._diffModels) {
|
|
42
|
+
const diffEditorControl = visibleTextEditorControls
|
|
43
|
+
.find(editor => isDiffEditor(editor) &&
|
|
44
|
+
this.uriIdentityService.extUri.isEqual(editor.getModel()?.modified.uri, uri));
|
|
45
|
+
if (diffEditorControl) {
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
for (const algorithm of ( dirtyDiffModel.keys())) {
|
|
49
|
+
dirtyDiffModel.get(algorithm)?.dispose();
|
|
50
|
+
dirtyDiffModel.delete(algorithm);
|
|
51
|
+
}
|
|
52
|
+
this._diffModels.delete(uri);
|
|
53
|
+
}
|
|
54
|
+
}));
|
|
55
|
+
}
|
|
56
|
+
getDirtyDiffModel(uri) {
|
|
57
|
+
let model = this._dirtyDiffModels.get(uri);
|
|
58
|
+
if (model) {
|
|
59
|
+
return model;
|
|
60
|
+
}
|
|
61
|
+
const textFileModel = this.textFileService.files.get(uri);
|
|
62
|
+
if (!textFileModel?.isResolved()) {
|
|
63
|
+
return undefined;
|
|
64
|
+
}
|
|
65
|
+
model = this.instantiationService.createInstance(DirtyDiffModel, textFileModel, undefined);
|
|
66
|
+
this._dirtyDiffModels.set(uri, model);
|
|
67
|
+
return model;
|
|
68
|
+
}
|
|
69
|
+
getDiffModel(uri, algorithm) {
|
|
70
|
+
let model = this._diffModels.get(uri)?.get(algorithm);
|
|
71
|
+
if (model) {
|
|
72
|
+
return model;
|
|
73
|
+
}
|
|
74
|
+
const textFileModel = this.textFileService.files.get(uri);
|
|
75
|
+
if (!textFileModel?.isResolved()) {
|
|
76
|
+
return undefined;
|
|
77
|
+
}
|
|
78
|
+
model = this.instantiationService.createInstance(DirtyDiffModel, textFileModel, algorithm);
|
|
79
|
+
if (!( this._diffModels.has(uri))) {
|
|
80
|
+
this._diffModels.set(uri, ( new Map()));
|
|
81
|
+
}
|
|
82
|
+
this._diffModels.get(uri).set(algorithm, model);
|
|
83
|
+
return model;
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
DirtyDiffModelService = ( __decorate([
|
|
87
|
+
( __param(0, IEditorService)),
|
|
88
|
+
( __param(1, IInstantiationService)),
|
|
89
|
+
( __param(2, ITextFileService)),
|
|
90
|
+
( __param(3, IUriIdentityService))
|
|
91
|
+
], DirtyDiffModelService));
|
|
92
|
+
|
|
93
|
+
export { DirtyDiffModelService };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import n from 'vscode/external/rollup-plugin-styles/dist/runtime/inject-css
|
|
1
|
+
import n from 'vscode/external/rollup-plugin-styles/dist/runtime/inject-css';
|
|
2
2
|
|
|
3
|
-
var css = ".scm-view{height:100%;position:relative}.scm-overflow-widgets-container{height:0;left:0;overflow:visible;position:absolute;top:0;width:0;z-index:5000}.scm-view .monaco-tl-contents>div{overflow:hidden;padding-right:12px}.scm-view .count{display:flex;margin-left:6px}.scm-view .count.hidden{display:none}.scm-view .scm-provider{align-items:center;display:flex;flex-direction:column;flex-flow:nowrap;height:100%}.scm-view.auto-provider-counts .scm-provider>.count[data-count=\"0\"],.scm-view.hide-provider-counts .scm-provider>.count{display:none}.scm-view .scm-provider>.label{flex:1;min-width:50px;overflow:hidden;text-overflow:ellipsis}.scm-view .scm-provider>.label>.name{font-weight:700}.scm-view .scm-provider>.label>.description{font-size:.9em;margin-left:.5em;opacity:.7}.scm-view .scm-provider>.actions{justify-content:flex-end;overflow:hidden}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item{align-items:center;display:flex;padding-left:4px}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item:first-child{min-width:20px}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.action-label,.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.monaco-dropdown>.dropdown-label>.action-label{align-items:center;display:flex;line-height:16px;overflow:hidden}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.action-label>.codicon{font-size:12px;justify-content:center}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item:last-of-type{padding-right:0}.scm-view .scm-provider>.body{flex-grow:1}.scm-view .scm-provider>.status>.monaco-action-bar>.actions-container{border-color:var(--vscode-sideBar-border)}.scm-view .monaco-list-row{line-height:22px}.scm-view .monaco-list-row .monaco-icon-label-container{height:22px}.scm-view .monaco-list-row .history,.scm-view .monaco-list-row .history-item-group,.scm-view .monaco-list-row .resource-group{align-items:center;display:flex;height:100%}.scm-view .monaco-list-row .history-item .monaco-icon-label,.scm-view .monaco-list-row .history-item-group .monaco-icon-label{align-items:center;flex-grow:1}.scm-view .monaco-list-row .history-item{align-items:center;display:flex}.scm-view .monaco-list-row .history-item>.graph-container{display:flex;flex-shrink:0;height:22px}.scm-view .monaco-list-row .history-item>.graph-container.current>.graph>circle:last-child{fill:var(--vscode-sideBar-background)}.scm-view .monaco-list-row:hover .history-item>.graph-container.current>.graph>circle:last-child{fill:var(--vscode-list-hoverBackground)}.scm-view .monaco-list-row .history-item>.graph-container>.graph>circle{stroke:var(--vscode-sideBar-background)}.scm-view .monaco-list-row:hover .history-item>.graph-container>.graph>circle{stroke:var(--vscode-list-hoverBackground)}.scm-view .monaco-list-row .history-item>.label-container{display:flex;flex-shrink:0;gap:4px}.scm-view .monaco-list-row .history-item>.label-container>.label{align-items:center;border-radius:10px;display:flex;line-height:18px}.scm-view .monaco-list-row .history-item>.label-container>.label>.count{font-size:12px;margin-left:0;padding-left:4px}.scm-view .monaco-list-row .history-item>.label-container>.label>.codicon{color:inherit!important;font-size:14px;padding:2px}.scm-view .monaco-list-row .history-item>.label-container>.label>.codicon.codicon-git-branch{font-size:12px;padding:3px}.scm-view .monaco-list-row .history-item>.label-container>.label>.description{font-size:12px;max-width:100px;overflow:hidden;padding-right:4px;text-overflow:ellipsis}.scm-view .monaco-list-row .history-item .monaco-icon-label .icon-container{display:flex;padding-right:4px}.scm-view .monaco-list-row .history-item .monaco-icon-label .avatar{border-radius:14px;height:14px;width:14px}.scm-view .monaco-list-row .history-item .monaco-icon-label.history-item-current .label-name{font-weight:600}.scm-view .monaco-list-row .history-item .monaco-icon-label.history-item-current .label-description{font-weight:500}.scm-view .monaco-list-row .history>.name,.scm-view .monaco-list-row .resource-group>.name{flex:1;overflow:hidden;text-overflow:ellipsis}.scm-view .monaco-list-row .resource{display:flex;height:100%}.scm-view .monaco-list-row .resource.faded{opacity:.7}.scm-view .monaco-list-row .resource>.name{flex:1;overflow:hidden}.scm-view .monaco-list-row .resource>.name>.monaco-icon-label:after{margin-right:3px}.scm-view .monaco-list-row .resource>.decoration-icon{background-position:50% 50%;background-repeat:no-repeat;height:100%;margin-left:5px;width:16px}.scm-view .monaco-list-row .resource>.decoration-icon.codicon{margin-right:0;margin-top:3px}.scm-view .monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions{flex-grow:100}.scm-view .monaco-list .monaco-list-row .history-item>.actions,.scm-view .monaco-list .monaco-list-row .resource-group>.actions,.scm-view .monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions{display:none;max-width:fit-content}.scm-view .monaco-list .monaco-list-row.focused .history-item>.actions,.scm-view .monaco-list .monaco-list-row.focused .resource-group>.actions,.scm-view .monaco-list .monaco-list-row.focused .resource>.name>.monaco-icon-label>.actions,.scm-view .monaco-list .monaco-list-row:hover .history-item>.actions,.scm-view .monaco-list .monaco-list-row:hover .resource-group>.actions,.scm-view .monaco-list .monaco-list-row:hover .resource>.name>.monaco-icon-label>.actions,.scm-view .monaco-list:not(.selection-multiple) .monaco-list-row .resource:hover>.actions{display:block}.scm-view .monaco-list .monaco-list-row.focused.force-no-hover,.scm-view .monaco-list .monaco-list-row.force-no-hover,.scm-view .monaco-list .monaco-list-row.selected.force-no-hover,.scm-view .monaco-list .monaco-list-row:hover.force-no-hover{background:transparent!important}.scm-view .monaco-list .monaco-list-row.cursor-default{cursor:default}.scm-view.show-actions .scm-provider>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .history-item>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .resource-group>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .scm-input>.scm-editor>.actions{display:block}.scm-view .monaco-list-row .actions .action-label{padding:2px}.scm-view .scm-input{align-items:center;display:flex;height:100%;padding-left:11px}.scm-view .scm-input .scm-editor .scm-editor-toolbar{padding:1px 3px 1px 1px}.scm-view .scm-input .scm-editor .scm-editor-toolbar.hidden{display:none}.scm-view .scm-input .scm-editor .scm-editor-toolbar.scroll-decoration{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.scm-view .scm-input .scm-editor .scm-editor-toolbar .action-label.codicon.codicon-debug-stop{color:var(--vscode-icon-foreground)!important}.scm-view .scm-editor-container .monaco-editor{border-radius:2px}.scm-view .scm-editor{align-items:flex-start;background-color:var(--vscode-input-background);border:1px solid var(--vscode-input-border,transparent);border-radius:2px;box-sizing:border-box;display:flex;width:100%}.scm-view .button-container{align-items:center;display:flex;height:100%;padding-left:11px}.scm-view .button-container .codicon.codicon-cloud-upload,.scm-view .button-container .codicon.codicon-sync{margin:0 4px 0 0}.scm-view .button-container .codicon.codicon-arrow-down,.scm-view .button-container .codicon.codicon-arrow-up{font-size:small!important;margin:0 4px 0 0}.scm-view .button-container>.monaco-button-dropdown{flex-grow:1;overflow:hidden}.scm-view .button-container>.monaco-button-dropdown>.monaco-dropdown-button{align-items:center;display:flex;padding:0 4px}.scm-view .button-container>.monaco-button-dropdown>.monaco-button.monaco-text-button{min-width:0}.scm-view .button-container>.monaco-button-dropdown>.monaco-button.monaco-text-button>span:not(.codicon){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scm-view .scm-editor.hidden{display:none}.monaco-workbench .part.panel .scm-view .scm-editor-container{outline:1px solid var(--vscode-panelInput-border)}.monaco-workbench .part.panel .scm-view .scm-editor.synthetic-focus,.scm-view .scm-editor.synthetic-focus{outline:1px solid var(--vscode-focusBorder);outline-offset:-1px}.scm-view .scm-editor.validation-info{outline:1px solid var(--vscode-inputValidation-infoBorder)!important;outline-offset:-1px}.scm-view .scm-editor.validation-warning{outline:1px solid var(--vscode-inputValidation-warningBorder)!important;outline-offset:-1px}.scm-view .scm-editor.validation-error{outline:1px solid var(--vscode-inputValidation-errorBorder)!important;outline-offset:-1px}.scm-editor-validation-container{border-bottom-left-radius:2px;border-bottom-right-radius:2px;border-style:solid;border-width:1px;border-top:none;box-sizing:border-box;display:flex;padding:2px}.scm-editor-validation-container.validation-info{background-color:var(--vscode-inputValidation-infoBackground);border-color:var(--vscode-inputValidation-infoBorder);color:var(--vscode-inputValidation-infoForeground)}.scm-editor-validation-container.validation-warning{background-color:var(--vscode-inputValidation-warningBackground);border-color:var(--vscode-inputValidation-warningBorder);color:var(--vscode-inputValidation-warningForeground)}.scm-editor-validation-container.validation-error{background-color:var(--vscode-inputValidation-errorBackground);border-color:var(--vscode-inputValidation-errorBorder);color:var(--vscode-inputValidation-errorForeground)}.scm-editor-validation{border-style:none;box-sizing:border-box;display:block;flex:auto;font-size:.9em;padding:1px 3px}.scm-editor-validation p{margin:0;padding:0}.scm-editor-validation a{color:var(--vscode-textLink-foreground);-webkit-user-select:none;user-select:none}.scm-editor-validation a:active,.scm-editor-validation a:hover{color:var(--vscode-textLink-activeForeground)}.scm-editor-validation-actions{align-self:start;margin-top:1px}.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor,.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor .margin,.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor .monaco-editor-background,.scm-view .scm-editor-container .monaco-editor,.scm-view .scm-editor-container .monaco-editor .margin,.scm-view .scm-editor-container .monaco-editor-background{background-color:var(--vscode-input-background);color:inherit}.scm-view .scm-editor-container .mtk1{color:var(--vscode-input-foreground)}.scm-view .scm-editor-container .placeholder-text.mtk1{color:var(--vscode-input-placeholderForeground)}.scm-repositories-view .scm-provider{margin:0 12px 0 20px;overflow:hidden}.scm-repositories-view .scm-provider>.label>.name{font-weight:400}.monaco-hover.history-item-hover p:first-child{margin-top:4px}.monaco-hover.history-item-hover p:last-child{margin-bottom:0}.monaco-hover.history-item-hover p:last-child span:not(.codicon){margin-bottom:2px!important}.monaco-hover.history-item-hover hr{margin-bottom:4px;margin-top:4px}.monaco-hover.history-item-hover hr+p{margin:4px 0}.monaco-hover.history-item-hover span:not(.codicon){margin-bottom:0!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-git-branch{font-size:12px;margin-bottom:2px!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-tag,.monaco-hover.history-item-hover p>span>span.codicon.codicon-target{font-size:14px;margin-bottom:2px!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-cloud{font-size:14px;margin-bottom:1px!important}.monaco-hover.history-item-hover .hover-row.status-bar .action{align-items:center;display:flex}.monaco-hover.history-item-hover .hover-row.status-bar .action .codicon{color:inherit;font-size:12px}.pane-header .scm-graph-view-badge-container{align-items:center;display:flex;min-width:fit-content}.pane-header .scm-graph-view-badge-container>.scm-graph-view-badge.monaco-count-badge.long{background-color:var(--vscode-badge-background);border:1px solid var(--vscode-contrastBorder);color:var(--vscode-badge-foreground);margin:0 6px;padding:2px 4px}.monaco-workbench .part.auxiliarybar>.title>.title-actions .action-label.scm-graph-history-item-picker,.monaco-workbench .part.auxiliarybar>.title>.title-actions .action-label.scm-graph-repository-picker{display:flex}.monaco-toolbar .action-item>.action-label.scm-graph-history-item-picker,.monaco-toolbar .action-item>.action-label.scm-graph-repository-picker{align-items:center;color:var(--vscode-icon-foreground);font-weight:400;line-height:16px}.monaco-toolbar .action-item.disabled>.action-label.scm-graph-history-item-picker,.monaco-toolbar .action-item.disabled>.action-label.scm-graph-repository-picker{color:var(--vscode-disabledForeground)}.monaco-toolbar .action-label.scm-graph-history-item-picker .codicon,.monaco-toolbar .action-label.scm-graph-repository-picker .codicon{color:inherit;font-size:14px}.monaco-toolbar .action-label.scm-graph-history-item-picker>.name,.monaco-toolbar .action-label.scm-graph-repository-picker>.name{max-width:100px;overflow:hidden;text-overflow:ellipsis}.scm-history-view .scm-provider .label-name{font-weight:700}.scm-history-view .scm-provider .monaco-icon-label{align-items:center}.scm-history-view .scm-provider .state-label.monaco-count-badge.long{background:var(--vscode-debugView-stateLabelBackground);border-radius:2px;color:var(--vscode-debugView-stateLabelForeground);display:flex;font-size:.8em;margin:0 10px}.scm-history-view .scm-provider .actions{display:flex;flex-grow:1}.scm-history-view .history-item-load-more{display:flex;height:22px}.scm-history-view .history-item-load-more .graph-placeholder{mask-image:linear-gradient(#000,transparent)}.scm-history-view .history-item-load-more .history-item-placeholder{flex-grow:1}.scm-history-view .history-item-load-more .history-item-placeholder .monaco-highlighted-label{align-items:center;color:var(--vscode-textLink-foreground);display:flex;justify-content:center}.scm-history-view .history-item-load-more .history-item-placeholder .monaco-highlighted-label .codicon{color:var(--vscode-textLink-foreground);font-size:12px}.scm-history-view .history-item-load-more .history-item-placeholder.shimmer{padding:2px 0}.scm-history-view .history-item-load-more .history-item-placeholder.shimmer .monaco-icon-label-container{background:var(--vscode-scmGraph-historyItemHoverDefaultLabelBackground);border-radius:2px;height:18px;opacity:.5}";
|
|
3
|
+
var css = ".scm-view{height:100%;position:relative}.scm-overflow-widgets-container{height:0;left:0;overflow:visible;position:absolute;top:0;width:0;z-index:5000}.scm-view .monaco-tl-contents>div{overflow:hidden;padding-right:12px}.scm-view .count{display:flex;margin-left:6px}.scm-view .count.hidden{display:none}.scm-view .scm-provider{align-items:center;display:flex;flex-direction:column;flex-flow:nowrap;height:100%}.scm-view.auto-provider-counts .scm-provider>.count[data-count=\"0\"],.scm-view.hide-provider-counts .scm-provider>.count{display:none}.scm-view .scm-provider>.label{flex:1;min-width:50px;overflow:hidden;text-overflow:ellipsis}.scm-view .scm-provider>.label>.name{font-weight:700}.scm-view .scm-provider>.label>.description{font-size:.9em;margin-left:.5em;opacity:.7}.scm-view .scm-provider>.actions{justify-content:flex-end;overflow:hidden}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item{align-items:center;display:flex;padding-left:4px}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item:first-child{min-width:20px}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.action-label,.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.monaco-dropdown>.dropdown-label>.action-label{align-items:center;display:flex;line-height:16px;overflow:hidden}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item>.action-label>.codicon{font-size:12px;justify-content:center}.scm-view .scm-provider>.actions>.monaco-toolbar>.monaco-action-bar>.actions-container>.action-item:last-of-type{padding-right:0}.scm-view .scm-provider>.body{flex-grow:1}.scm-view .scm-provider>.status>.monaco-action-bar>.actions-container{border-color:var(--vscode-sideBar-border)}.scm-view .monaco-list-row{line-height:22px}.scm-view .monaco-list-row .monaco-icon-label-container{height:22px}.scm-view .monaco-list-row .history,.scm-view .monaco-list-row .history-item-group,.scm-view .monaco-list-row .resource-group{align-items:center;display:flex;height:100%}.scm-view .monaco-list-row .history-item .monaco-icon-label,.scm-view .monaco-list-row .history-item-group .monaco-icon-label{align-items:center;flex-grow:1}.scm-view .monaco-list-row .history-item{align-items:center;display:flex}.scm-view .monaco-list-row .history-item>.graph-container{display:flex;flex-shrink:0;height:22px}.scm-view .monaco-list-row .history-item>.graph-container.current>.graph>circle:last-child{fill:var(--vscode-sideBar-background)}.scm-view .monaco-list-row:hover .history-item>.graph-container.current>.graph>circle:last-child{fill:var(--vscode-list-hoverBackground)}.scm-view .monaco-list-row .history-item>.graph-container>.graph>circle{stroke:var(--vscode-sideBar-background)}.scm-view .monaco-list-row:hover .history-item>.graph-container>.graph>circle{stroke:var(--vscode-list-hoverBackground)}.scm-view .monaco-list-row .history-item>.label-container{display:flex;flex-shrink:0;gap:4px}.scm-view .monaco-list-row .history-item>.label-container>.label{align-items:center;border-radius:10px;display:flex;line-height:18px}.scm-view .monaco-list-row .history-item>.label-container>.label>.count{font-size:12px;margin-left:0;padding-left:4px}.scm-view .monaco-list-row .history-item>.label-container>.label>.codicon{color:inherit!important;font-size:14px;padding:2px}.scm-view .monaco-list-row .history-item>.label-container>.label>.codicon.codicon-git-branch{font-size:12px;padding:3px}.scm-view .monaco-list-row .history-item>.label-container>.label>.description{font-size:12px;max-width:100px;overflow:hidden;padding-right:4px;text-overflow:ellipsis}.scm-view .monaco-list-row .history-item .monaco-icon-label .icon-container{display:flex;padding-right:4px}.scm-view .monaco-list-row .history-item .monaco-icon-label .avatar{border-radius:14px;height:14px;width:14px}.scm-view .monaco-list-row .history-item .monaco-icon-label.history-item-current .label-name{font-weight:600}.scm-view .monaco-list-row .history-item .monaco-icon-label.history-item-current .label-description{font-weight:500}.scm-view .monaco-list-row .history>.name,.scm-view .monaco-list-row .resource-group>.name{flex:1;overflow:hidden;text-overflow:ellipsis}.scm-view .monaco-list-row .resource{display:flex;height:100%}.scm-view .monaco-list-row .resource.faded{opacity:.7}.scm-view .monaco-list-row .resource>.name{flex:1;overflow:hidden}.scm-view .monaco-list-row .resource>.name>.monaco-icon-label:after{margin-right:3px}.scm-view .monaco-list-row .resource>.decoration-icon{background-position:50% 50%;background-repeat:no-repeat;height:100%;margin-left:5px;width:16px}.scm-view .monaco-list-row .resource>.decoration-icon.codicon{margin-right:0;margin-top:3px}.scm-view .monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions{flex-grow:100}.scm-view .monaco-list .monaco-list-row .history-item>.actions,.scm-view .monaco-list .monaco-list-row .resource-group>.actions,.scm-view .monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions{display:none;max-width:fit-content}.scm-view .monaco-list .monaco-list-row.focused .history-item>.actions,.scm-view .monaco-list .monaco-list-row.focused .resource-group>.actions,.scm-view .monaco-list .monaco-list-row.focused .resource>.name>.monaco-icon-label>.actions,.scm-view .monaco-list .monaco-list-row:hover .history-item>.actions,.scm-view .monaco-list .monaco-list-row:hover .resource-group>.actions,.scm-view .monaco-list .monaco-list-row:hover .resource>.name>.monaco-icon-label>.actions,.scm-view .monaco-list:not(.selection-multiple) .monaco-list-row .resource:hover>.actions{display:block}.scm-view .monaco-list .monaco-list-row.focused.force-no-hover,.scm-view .monaco-list .monaco-list-row.force-no-hover,.scm-view .monaco-list .monaco-list-row.selected.force-no-hover,.scm-view .monaco-list .monaco-list-row:hover.force-no-hover{background:transparent!important}.scm-view .monaco-list .monaco-list-row.cursor-default{cursor:default}.scm-view.show-actions .scm-provider>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .history-item>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .resource-group>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .resource>.name>.monaco-icon-label>.actions,.scm-view.show-actions>.monaco-list .monaco-list-row .scm-input>.scm-editor>.actions{display:block}.scm-view .monaco-list-row .actions .action-label{padding:2px}.scm-view .scm-input{align-items:center;display:flex;height:100%;padding-left:11px}.scm-view .scm-input .scm-editor .scm-editor-toolbar{padding:1px 3px 1px 1px}.scm-view .scm-input .scm-editor .scm-editor-toolbar.hidden{display:none}.scm-view .scm-input .scm-editor .scm-editor-toolbar.scroll-decoration{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.scm-view .scm-input .scm-editor .scm-editor-toolbar .action-label.codicon.codicon-debug-stop{color:var(--vscode-icon-foreground)!important}.scm-view .scm-editor-container .monaco-editor{border-radius:2px}.scm-view .scm-editor{align-items:flex-start;background-color:var(--vscode-input-background);border:1px solid var(--vscode-input-border,transparent);border-radius:2px;box-sizing:border-box;display:flex;width:100%}.scm-view .button-container{align-items:center;display:flex;height:100%;padding-left:11px}.scm-view .button-container .codicon.codicon-cloud-upload,.scm-view .button-container .codicon.codicon-sync{margin:0 4px 0 0}.scm-view .button-container .codicon.codicon-arrow-down,.scm-view .button-container .codicon.codicon-arrow-up{font-size:small!important;margin:0 4px 0 0}.scm-view .button-container>.monaco-button-dropdown{flex-grow:1;overflow:hidden}.scm-view .button-container>.monaco-button-dropdown>.monaco-dropdown-button{align-items:center;display:flex;padding:0 4px}.scm-view .button-container>.monaco-button-dropdown>.monaco-button.monaco-text-button{min-width:0}.scm-view .button-container>.monaco-button-dropdown>.monaco-button.monaco-text-button>span:not(.codicon){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scm-view .scm-editor.hidden{display:none}.monaco-workbench .part.panel .scm-view .scm-editor-container{outline:1px solid var(--vscode-panelInput-border)}.monaco-workbench .part.panel .scm-view .scm-editor.synthetic-focus,.scm-view .scm-editor.synthetic-focus{outline:1px solid var(--vscode-focusBorder);outline-offset:-1px}.scm-view .scm-editor.validation-info{outline:1px solid var(--vscode-inputValidation-infoBorder)!important;outline-offset:-1px}.scm-view .scm-editor.validation-warning{outline:1px solid var(--vscode-inputValidation-warningBorder)!important;outline-offset:-1px}.scm-view .scm-editor.validation-error{outline:1px solid var(--vscode-inputValidation-errorBorder)!important;outline-offset:-1px}.scm-editor-validation-container{border-bottom-left-radius:2px;border-bottom-right-radius:2px;border-style:solid;border-width:1px;border-top:none;box-sizing:border-box;display:flex;padding:2px}.scm-editor-validation-container.validation-info{background-color:var(--vscode-inputValidation-infoBackground);border-color:var(--vscode-inputValidation-infoBorder);color:var(--vscode-inputValidation-infoForeground)}.scm-editor-validation-container.validation-warning{background-color:var(--vscode-inputValidation-warningBackground);border-color:var(--vscode-inputValidation-warningBorder);color:var(--vscode-inputValidation-warningForeground)}.scm-editor-validation-container.validation-error{background-color:var(--vscode-inputValidation-errorBackground);border-color:var(--vscode-inputValidation-errorBorder);color:var(--vscode-inputValidation-errorForeground)}.scm-editor-validation{border-style:none;box-sizing:border-box;display:block;flex:auto;font-size:.9em;padding:1px 3px}.scm-editor-validation p{margin:0;padding:0}.scm-editor-validation a{color:var(--vscode-textLink-foreground);-webkit-user-select:none;user-select:none}.scm-editor-validation a:active,.scm-editor-validation a:hover{color:var(--vscode-textLink-activeForeground)}.scm-editor-validation-actions{align-self:start;margin-top:1px}.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor,.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor .margin,.monaco-workbench .part.basepanel>.content .scm-view .scm-editor-container .monaco-editor .monaco-editor-background,.scm-view .scm-editor-container .monaco-editor,.scm-view .scm-editor-container .monaco-editor .margin,.scm-view .scm-editor-container .monaco-editor-background{background-color:var(--vscode-input-background);color:inherit}.scm-view .scm-editor-container .mtk1{color:var(--vscode-input-foreground)}.scm-view .scm-editor-container .placeholder-text.mtk1{color:var(--vscode-input-placeholderForeground)}.scm-repositories-view .scm-provider{margin:0 12px 0 20px;overflow:hidden}.scm-repositories-view .scm-provider>.label>.name{font-weight:400}.monaco-hover.history-item-hover p:first-child{margin-top:4px}.monaco-hover.history-item-hover p:last-child{margin-bottom:0}.monaco-hover.history-item-hover p:last-child span:not(.codicon){margin-bottom:2px!important}.monaco-hover.history-item-hover hr{margin-bottom:4px;margin-top:4px}.monaco-hover.history-item-hover hr+p{margin:4px 0}.monaco-hover.history-item-hover span:not(.codicon){margin-bottom:0!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-git-branch{font-size:12px;margin-bottom:2px!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-tag,.monaco-hover.history-item-hover p>span>span.codicon.codicon-target{font-size:14px;margin-bottom:2px!important}.monaco-hover.history-item-hover p>span>span.codicon.codicon-cloud{font-size:14px;margin-bottom:1px!important}.monaco-hover.history-item-hover .hover-row.status-bar .action{align-items:center;display:flex}.monaco-hover.history-item-hover .hover-row.status-bar .action .codicon{color:inherit;font-size:12px}.pane-header .scm-graph-view-badge-container{align-items:center;display:flex;min-width:fit-content}.pane-header .scm-graph-view-badge-container>.scm-graph-view-badge.monaco-count-badge.long{background-color:var(--vscode-badge-background);border:1px solid var(--vscode-contrastBorder);color:var(--vscode-badge-foreground);margin:0 6px;padding:2px 4px}.monaco-workbench .part.auxiliarybar>.title>.title-actions .action-label.scm-graph-history-item-picker,.monaco-workbench .part.auxiliarybar>.title>.title-actions .action-label.scm-graph-repository-picker,.monaco-workbench .part.panel>.title>.title-actions .action-label.scm-graph-history-item-picker,.monaco-workbench .part.panel>.title>.title-actions .action-label.scm-graph-repository-picker{display:flex}.monaco-toolbar .action-item>.action-label.scm-graph-history-item-picker,.monaco-toolbar .action-item>.action-label.scm-graph-repository-picker{align-items:center;color:var(--vscode-icon-foreground);font-weight:400;line-height:16px}.monaco-toolbar .action-item.disabled>.action-label.scm-graph-history-item-picker,.monaco-toolbar .action-item.disabled>.action-label.scm-graph-repository-picker{color:var(--vscode-disabledForeground)}.monaco-toolbar .action-label.scm-graph-history-item-picker .codicon,.monaco-toolbar .action-label.scm-graph-repository-picker .codicon{color:inherit;font-size:14px}.monaco-toolbar .action-label.scm-graph-history-item-picker>.name,.monaco-toolbar .action-label.scm-graph-repository-picker>.name{max-width:100px;overflow:hidden;text-overflow:ellipsis}.scm-history-view .scm-provider .label-name{font-weight:700}.scm-history-view .scm-provider .monaco-icon-label{align-items:center}.scm-history-view .scm-provider .state-label.monaco-count-badge.long{background:var(--vscode-debugView-stateLabelBackground);border-radius:2px;color:var(--vscode-debugView-stateLabelForeground);display:flex;font-size:.8em;margin:0 10px}.scm-history-view .scm-provider .actions{display:flex;flex-grow:1}.scm-history-view .history-item-load-more{display:flex;height:22px}.scm-history-view .history-item-load-more .graph-placeholder{mask-image:linear-gradient(#000,transparent)}.scm-history-view .history-item-load-more .history-item-placeholder{flex-grow:1}.scm-history-view .history-item-load-more .history-item-placeholder .monaco-highlighted-label{align-items:center;color:var(--vscode-textLink-foreground);display:flex;justify-content:center}.scm-history-view .history-item-load-more .history-item-placeholder .monaco-highlighted-label .codicon{color:var(--vscode-textLink-foreground);font-size:12px}.scm-history-view .history-item-load-more .history-item-placeholder.shimmer{padding:2px 0}.scm-history-view .history-item-load-more .history-item-placeholder.shimmer .monaco-icon-label-container{background:var(--vscode-scmGraph-historyItemHoverDefaultLabelBackground);border-radius:2px;height:18px;opacity:.5}";
|
|
4
4
|
n(css,{});
|
|
5
5
|
|
|
6
6
|
export { css, css as default };
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { IAction } from "vscode/vscode/vs/base/common/actions";
|
|
2
|
+
import { IDisposable } from "vscode/vscode/vs/base/common/lifecycle";
|
|
3
|
+
import { IMenu } from "vscode/vscode/vs/platform/actions/common/actions";
|
|
4
|
+
import { IMenuService } from "vscode/vscode/vs/platform/actions/common/actions.service";
|
|
5
|
+
import { IContextKeyService } from "vscode/vscode/vs/platform/contextkey/common/contextkey.service";
|
|
6
|
+
import { IInstantiationService } from "vscode/vscode/vs/platform/instantiation/common/instantiation";
|
|
7
|
+
import { ISCMMenus, ISCMProvider, ISCMRepositoryMenus, ISCMResource, ISCMResourceGroup } from "@codingame/monaco-vscode-ff9fa663-eae3-5274-8573-c2b918871e4b-common/vscode/vs/workbench/contrib/scm/common/scm";
|
|
8
|
+
import { ISCMService } from "vscode/vscode/vs/workbench/contrib/scm/common/scm.service";
|
|
9
|
+
export declare class SCMTitleMenu implements IDisposable {
|
|
10
|
+
private _actions;
|
|
11
|
+
get actions(): IAction[];
|
|
12
|
+
private _secondaryActions;
|
|
13
|
+
get secondaryActions(): IAction[];
|
|
14
|
+
private readonly _onDidChangeTitle;
|
|
15
|
+
readonly onDidChangeTitle: import("vscode/vscode/vs/base/common/event").Event<void>;
|
|
16
|
+
readonly menu: IMenu;
|
|
17
|
+
private readonly disposables;
|
|
18
|
+
constructor(menuService: IMenuService, contextKeyService: IContextKeyService);
|
|
19
|
+
private updateTitleActions;
|
|
20
|
+
dispose(): void;
|
|
21
|
+
}
|
|
22
|
+
export declare class SCMRepositoryMenus implements ISCMRepositoryMenus, IDisposable {
|
|
23
|
+
private readonly provider;
|
|
24
|
+
private readonly menuService;
|
|
25
|
+
private contextKeyService;
|
|
26
|
+
readonly titleMenu: SCMTitleMenu;
|
|
27
|
+
readonly repositoryMenu: IMenu;
|
|
28
|
+
private readonly resourceGroupMenusItems;
|
|
29
|
+
private _repositoryContextMenu;
|
|
30
|
+
get repositoryContextMenu(): IMenu;
|
|
31
|
+
private readonly disposables;
|
|
32
|
+
constructor(provider: ISCMProvider, contextKeyService: IContextKeyService, instantiationService: IInstantiationService, menuService: IMenuService);
|
|
33
|
+
getResourceGroupMenu(group: ISCMResourceGroup): IMenu;
|
|
34
|
+
getResourceMenu(resource: ISCMResource): IMenu;
|
|
35
|
+
getResourceFolderMenu(group: ISCMResourceGroup): IMenu;
|
|
36
|
+
private getOrCreateResourceGroupMenusItem;
|
|
37
|
+
private onDidChangeResourceGroups;
|
|
38
|
+
dispose(): void;
|
|
39
|
+
}
|
|
40
|
+
export declare class SCMMenus implements ISCMMenus, IDisposable {
|
|
41
|
+
private instantiationService;
|
|
42
|
+
readonly titleMenu: SCMTitleMenu;
|
|
43
|
+
private readonly disposables;
|
|
44
|
+
private readonly menus;
|
|
45
|
+
constructor(scmService: ISCMService, instantiationService: IInstantiationService);
|
|
46
|
+
private onDidRemoveRepository;
|
|
47
|
+
getRepositoryMenus(provider: ISCMProvider): SCMRepositoryMenus;
|
|
48
|
+
dispose(): void;
|
|
49
|
+
}
|