@codingame/monaco-vscode-edit-sessions-service-override 2.2.0-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,325 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import { Disposable } from 'vscode/vscode/vs/base/common/lifecycle';
3
+ import { localizeWithPath } from 'vscode/vscode/vs/nls';
4
+ import { SyncDescriptor } from 'vscode/vscode/vs/platform/instantiation/common/descriptors';
5
+ import { IInstantiationService } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
6
+ import { Registry } from 'vscode/vscode/vs/platform/registry/common/platform';
7
+ import { TreeView, TreeViewPane } from 'vscode/vscode/vs/workbench/browser/parts/views/treeView';
8
+ import { Extensions, TreeItemCollapsibleState } from 'vscode/vscode/vs/workbench/common/views';
9
+ import { EDIT_SESSIONS_TITLE, EDIT_SESSIONS_SHOW_VIEW, IEditSessionsStorageService, EDIT_SESSIONS_SCHEME, ChangeType, EDIT_SESSIONS_DATA_VIEW_ID } from 'vscode/vscode/vs/workbench/contrib/editSessions/common/editSessions';
10
+ import { URI } from 'vscode/vscode/vs/base/common/uri';
11
+ import { fromNow } from 'vscode/vscode/vs/base/common/date';
12
+ import { Codicon } from 'vscode/vscode/vs/base/common/codicons';
13
+ import { API_OPEN_EDITOR_COMMAND_ID } from 'vscode/vscode/vs/workbench/browser/parts/editor/editorCommands';
14
+ import { registerAction2, Action2, MenuId } from 'vscode/vscode/vs/platform/actions/common/actions';
15
+ import { RawContextKey, ContextKeyExpr, IContextKeyService } from 'vscode/vscode/vs/platform/contextkey/common/contextkey';
16
+ import { ICommandService } from 'vscode/vscode/vs/platform/commands/common/commands';
17
+ import '../../../../../../../override/vs/platform/dialogs/common/dialogs.js';
18
+ import { IWorkspaceContextService } from 'vscode/vscode/vs/platform/workspace/common/workspace';
19
+ import { joinPath } from 'vscode/vscode/vs/base/common/resources';
20
+ import { IFileService } from 'vscode/vscode/vs/platform/files/common/files';
21
+ import { basename } from 'vscode/vscode/vs/base/common/path';
22
+ import { IDialogService } from 'vscode/vscode/vs/platform/dialogs/common/dialogs';
23
+
24
+ const EDIT_SESSIONS_COUNT_KEY = 'editSessionsCount';
25
+ const EDIT_SESSIONS_COUNT_CONTEXT_KEY = ( new RawContextKey(EDIT_SESSIONS_COUNT_KEY, 0));
26
+ let EditSessionsDataViews = class EditSessionsDataViews extends Disposable {
27
+ constructor(container, instantiationService) {
28
+ super();
29
+ this.instantiationService = instantiationService;
30
+ this.registerViews(container);
31
+ }
32
+ registerViews(container) {
33
+ const viewId = EDIT_SESSIONS_DATA_VIEW_ID;
34
+ const treeView = this.instantiationService.createInstance(TreeView, viewId, EDIT_SESSIONS_TITLE.value);
35
+ treeView.showCollapseAllAction = true;
36
+ treeView.showRefreshAction = true;
37
+ treeView.dataProvider = this.instantiationService.createInstance(EditSessionDataViewDataProvider);
38
+ const viewsRegistry = ( Registry.as(Extensions.ViewsRegistry));
39
+ viewsRegistry.registerViews([{
40
+ id: viewId,
41
+ name: EDIT_SESSIONS_TITLE,
42
+ ctorDescriptor: ( new SyncDescriptor(TreeViewPane)),
43
+ canToggleVisibility: true,
44
+ canMoveView: false,
45
+ treeView,
46
+ collapsed: false,
47
+ when: ( ContextKeyExpr.and(EDIT_SESSIONS_SHOW_VIEW)),
48
+ order: 100,
49
+ hideByDefault: true,
50
+ }], container);
51
+ registerAction2(class extends Action2 {
52
+ constructor() {
53
+ super({
54
+ id: 'workbench.editSessions.actions.resume',
55
+ title: ( localizeWithPath(
56
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
57
+ 'workbench.editSessions.actions.resume.v2',
58
+ "Resume Working Changes"
59
+ )),
60
+ icon: Codicon.desktopDownload,
61
+ menu: {
62
+ id: MenuId.ViewItemContext,
63
+ when: ( ContextKeyExpr.and(( ContextKeyExpr.equals('view', viewId)), ( ContextKeyExpr.regex('viewItem', /edit-session/i)))),
64
+ group: 'inline'
65
+ }
66
+ });
67
+ }
68
+ async run(accessor, handle) {
69
+ const editSessionId = ( URI.parse(handle.$treeItemHandle)).path.substring(1);
70
+ const commandService = accessor.get(ICommandService);
71
+ await commandService.executeCommand('workbench.editSessions.actions.resumeLatest', editSessionId, true);
72
+ await treeView.refresh();
73
+ }
74
+ });
75
+ registerAction2(class extends Action2 {
76
+ constructor() {
77
+ super({
78
+ id: 'workbench.editSessions.actions.store',
79
+ title: ( localizeWithPath(
80
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
81
+ 'workbench.editSessions.actions.store.v2',
82
+ "Store Working Changes"
83
+ )),
84
+ icon: Codicon.cloudUpload,
85
+ });
86
+ }
87
+ async run(accessor, handle) {
88
+ const commandService = accessor.get(ICommandService);
89
+ await commandService.executeCommand('workbench.editSessions.actions.storeCurrent');
90
+ await treeView.refresh();
91
+ }
92
+ });
93
+ registerAction2(class extends Action2 {
94
+ constructor() {
95
+ super({
96
+ id: 'workbench.editSessions.actions.delete',
97
+ title: ( localizeWithPath(
98
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
99
+ 'workbench.editSessions.actions.delete.v2',
100
+ "Delete Working Changes"
101
+ )),
102
+ icon: Codicon.trash,
103
+ menu: {
104
+ id: MenuId.ViewItemContext,
105
+ when: ( ContextKeyExpr.and(( ContextKeyExpr.equals('view', viewId)), ( ContextKeyExpr.regex('viewItem', /edit-session/i)))),
106
+ group: 'inline'
107
+ }
108
+ });
109
+ }
110
+ async run(accessor, handle) {
111
+ const editSessionId = ( URI.parse(handle.$treeItemHandle)).path.substring(1);
112
+ const dialogService = accessor.get(IDialogService);
113
+ const editSessionStorageService = accessor.get(IEditSessionsStorageService);
114
+ const result = await dialogService.confirm({
115
+ message: ( localizeWithPath(
116
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
117
+ 'confirm delete.v2',
118
+ 'Are you sure you want to permanently delete your working changes with ref {0}?',
119
+ editSessionId
120
+ )),
121
+ detail: ( localizeWithPath(
122
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
123
+ 'confirm delete detail.v2',
124
+ ' You cannot undo this action.'
125
+ )),
126
+ type: 'warning',
127
+ title: EDIT_SESSIONS_TITLE.value
128
+ });
129
+ if (result.confirmed) {
130
+ await editSessionStorageService.delete('editSessions', editSessionId);
131
+ await treeView.refresh();
132
+ }
133
+ }
134
+ });
135
+ registerAction2(class extends Action2 {
136
+ constructor() {
137
+ super({
138
+ id: 'workbench.editSessions.actions.deleteAll',
139
+ title: ( localizeWithPath(
140
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
141
+ 'workbench.editSessions.actions.deleteAll',
142
+ "Delete All Working Changes from Cloud"
143
+ )),
144
+ icon: Codicon.trash,
145
+ menu: {
146
+ id: MenuId.ViewTitle,
147
+ when: ( ContextKeyExpr.and(( ContextKeyExpr.equals('view', viewId)), ContextKeyExpr.greater(EDIT_SESSIONS_COUNT_KEY, 0))),
148
+ }
149
+ });
150
+ }
151
+ async run(accessor) {
152
+ const dialogService = accessor.get(IDialogService);
153
+ const editSessionStorageService = accessor.get(IEditSessionsStorageService);
154
+ const result = await dialogService.confirm({
155
+ message: ( localizeWithPath(
156
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
157
+ 'confirm delete all',
158
+ 'Are you sure you want to permanently delete all stored changes from the cloud?'
159
+ )),
160
+ detail: ( localizeWithPath(
161
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
162
+ 'confirm delete all detail',
163
+ ' You cannot undo this action.'
164
+ )),
165
+ type: 'warning',
166
+ title: EDIT_SESSIONS_TITLE.value
167
+ });
168
+ if (result.confirmed) {
169
+ await editSessionStorageService.delete('editSessions', null);
170
+ await treeView.refresh();
171
+ }
172
+ }
173
+ });
174
+ }
175
+ };
176
+ EditSessionsDataViews = ( __decorate([
177
+ ( __param(1, IInstantiationService))
178
+ ], EditSessionsDataViews));
179
+ let EditSessionDataViewDataProvider = class EditSessionDataViewDataProvider {
180
+ constructor(editSessionsStorageService, contextKeyService, workspaceContextService, fileService) {
181
+ this.editSessionsStorageService = editSessionsStorageService;
182
+ this.contextKeyService = contextKeyService;
183
+ this.workspaceContextService = workspaceContextService;
184
+ this.fileService = fileService;
185
+ this.editSessionsCount = EDIT_SESSIONS_COUNT_CONTEXT_KEY.bindTo(this.contextKeyService);
186
+ }
187
+ async getChildren(element) {
188
+ if (!element) {
189
+ return this.getAllEditSessions();
190
+ }
191
+ const [ref, folderName, filePath] = ( URI.parse(element.handle)).path.substring(1).split('/');
192
+ if (ref && !folderName) {
193
+ return this.getEditSession(ref);
194
+ }
195
+ else if (ref && folderName && !filePath) {
196
+ return this.getEditSessionFolderContents(ref, folderName);
197
+ }
198
+ return [];
199
+ }
200
+ async getAllEditSessions() {
201
+ const allEditSessions = await this.editSessionsStorageService.list('editSessions');
202
+ this.editSessionsCount.set(allEditSessions.length);
203
+ const editSessions = [];
204
+ for (const session of allEditSessions) {
205
+ const resource = ( URI.from(
206
+ { scheme: EDIT_SESSIONS_SCHEME, authority: 'remote-session-content', path: `/${session.ref}` }
207
+ ));
208
+ const sessionData = await this.editSessionsStorageService.read('editSessions', session.ref);
209
+ if (!sessionData) {
210
+ continue;
211
+ }
212
+ const content = JSON.parse(sessionData.content);
213
+ const label = ( content.folders.map((folder) => folder.name)).join(', ') ?? session.ref;
214
+ const machineId = content.machine;
215
+ const machineName = machineId ? await this.editSessionsStorageService.getMachineById(machineId) : undefined;
216
+ const description = machineName === undefined ? fromNow(session.created, true) : `${fromNow(session.created, true)}\u00a0\u00a0\u2022\u00a0\u00a0${machineName}`;
217
+ editSessions.push({
218
+ handle: ( resource.toString()),
219
+ collapsibleState: TreeItemCollapsibleState.Collapsed,
220
+ label: { label },
221
+ description: description,
222
+ themeIcon: Codicon.repo,
223
+ contextValue: `edit-session`
224
+ });
225
+ }
226
+ return editSessions;
227
+ }
228
+ async getEditSession(ref) {
229
+ const data = await this.editSessionsStorageService.read('editSessions', ref);
230
+ if (!data) {
231
+ return [];
232
+ }
233
+ const content = JSON.parse(data.content);
234
+ if (content.folders.length === 1) {
235
+ const folder = content.folders[0];
236
+ return this.getEditSessionFolderContents(ref, folder.name);
237
+ }
238
+ return ( content.folders.map((folder) => {
239
+ const resource = ( URI.from(
240
+ { scheme: EDIT_SESSIONS_SCHEME, authority: 'remote-session-content', path: `/${data.ref}/${folder.name}` }
241
+ ));
242
+ return {
243
+ handle: ( resource.toString()),
244
+ collapsibleState: TreeItemCollapsibleState.Collapsed,
245
+ label: { label: folder.name },
246
+ themeIcon: Codicon.folder
247
+ };
248
+ }));
249
+ }
250
+ async getEditSessionFolderContents(ref, folderName) {
251
+ const data = await this.editSessionsStorageService.read('editSessions', ref);
252
+ if (!data) {
253
+ return [];
254
+ }
255
+ const content = JSON.parse(data.content);
256
+ const currentWorkspaceFolder = this.workspaceContextService.getWorkspace().folders.find((folder) => folder.name === folderName);
257
+ const editSessionFolder = content.folders.find((folder) => folder.name === folderName);
258
+ if (!editSessionFolder) {
259
+ return [];
260
+ }
261
+ return Promise.all(( editSessionFolder.workingChanges.map(async (change) => {
262
+ const cloudChangeUri = ( URI.from(
263
+ { scheme: EDIT_SESSIONS_SCHEME, authority: 'remote-session-content', path: `/${data.ref}/${folderName}/${change.relativeFilePath}` }
264
+ ));
265
+ if (currentWorkspaceFolder?.uri) {
266
+ const localCopy = joinPath(currentWorkspaceFolder.uri, change.relativeFilePath);
267
+ if (change.type === ChangeType.Addition && (await this.fileService.exists(localCopy))) {
268
+ return {
269
+ handle: ( cloudChangeUri.toString()),
270
+ resourceUri: cloudChangeUri,
271
+ collapsibleState: TreeItemCollapsibleState.None,
272
+ label: { label: change.relativeFilePath },
273
+ themeIcon: Codicon.file,
274
+ command: {
275
+ id: 'vscode.diff',
276
+ title: ( localizeWithPath(
277
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
278
+ 'compare changes',
279
+ 'Compare Changes'
280
+ )),
281
+ arguments: [
282
+ localCopy,
283
+ cloudChangeUri,
284
+ `${basename(change.relativeFilePath)} (${( localizeWithPath(
285
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
286
+ 'local copy',
287
+ 'Local Copy'
288
+ ))} \u2194 ${( localizeWithPath(
289
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
290
+ 'cloud changes',
291
+ 'Cloud Changes'
292
+ ))})`,
293
+ undefined
294
+ ]
295
+ }
296
+ };
297
+ }
298
+ }
299
+ return {
300
+ handle: ( cloudChangeUri.toString()),
301
+ resourceUri: cloudChangeUri,
302
+ collapsibleState: TreeItemCollapsibleState.None,
303
+ label: { label: change.relativeFilePath },
304
+ themeIcon: Codicon.file,
305
+ command: {
306
+ id: API_OPEN_EDITOR_COMMAND_ID,
307
+ title: ( localizeWithPath(
308
+ 'vs/workbench/contrib/editSessions/browser/editSessionsViews',
309
+ 'open file',
310
+ 'Open File'
311
+ )),
312
+ arguments: [cloudChangeUri, undefined, undefined]
313
+ }
314
+ };
315
+ })));
316
+ }
317
+ };
318
+ EditSessionDataViewDataProvider = ( __decorate([
319
+ ( __param(0, IEditSessionsStorageService)),
320
+ ( __param(1, IContextKeyService)),
321
+ ( __param(2, IWorkspaceContextService)),
322
+ ( __param(3, IFileService))
323
+ ], EditSessionDataViewDataProvider));
324
+
325
+ export { EditSessionsDataViews };
@@ -0,0 +1,41 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import { joinPath } from 'vscode/vscode/vs/base/common/resources';
3
+ import { localizeWithPath } from 'vscode/vscode/vs/nls';
4
+ import { IEnvironmentService } from 'vscode/vscode/vs/platform/environment/common/environment';
5
+ import { AbstractLogger, ILoggerService } from 'vscode/vscode/vs/platform/log/common/log';
6
+ import { editSessionsLogId } from 'vscode/vscode/vs/workbench/contrib/editSessions/common/editSessions';
7
+
8
+ let EditSessionsLogService = class EditSessionsLogService extends AbstractLogger {
9
+ constructor(loggerService, environmentService) {
10
+ super();
11
+ this.logger = this._register(loggerService.createLogger(joinPath(environmentService.logsHome, `${editSessionsLogId}.log`), { id: editSessionsLogId, name: ( localizeWithPath(
12
+ 'vs/workbench/contrib/editSessions/common/editSessionsLogService',
13
+ 'cloudChangesLog',
14
+ "Cloud Changes"
15
+ )) }));
16
+ }
17
+ trace(message, ...args) {
18
+ this.logger.trace(message, ...args);
19
+ }
20
+ debug(message, ...args) {
21
+ this.logger.debug(message, ...args);
22
+ }
23
+ info(message, ...args) {
24
+ this.logger.info(message, ...args);
25
+ }
26
+ warn(message, ...args) {
27
+ this.logger.warn(message, ...args);
28
+ }
29
+ error(message, ...args) {
30
+ this.logger.error(message, ...args);
31
+ }
32
+ flush() {
33
+ this.logger.flush();
34
+ }
35
+ };
36
+ EditSessionsLogService = ( __decorate([
37
+ ( __param(0, ILoggerService)),
38
+ ( __param(1, IEnvironmentService))
39
+ ], EditSessionsLogService));
40
+
41
+ export { EditSessionsLogService };
@@ -0,0 +1,6 @@
1
+ import { UserDataSyncStoreClient } from 'vscode/vscode/vs/platform/userDataSync/common/userDataSyncStoreService';
2
+
3
+ class EditSessionsStoreClient extends UserDataSyncStoreClient {
4
+ }
5
+
6
+ export { EditSessionsStoreClient };
@@ -0,0 +1,142 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import { CancellationTokenSource } from 'vscode/vscode/vs/base/common/cancellation';
3
+ import { Emitter } from 'vscode/vscode/vs/base/common/event';
4
+ import { stringify, parse } from 'vscode/vscode/vs/base/common/marshalling';
5
+ import { IConfigurationService } from 'vscode/vscode/vs/platform/configuration/common/configuration';
6
+ import { IEnvironmentService } from 'vscode/vscode/vs/platform/environment/common/environment';
7
+ import { IFileService } from 'vscode/vscode/vs/platform/files/common/files';
8
+ import { IStorageService } from 'vscode/vscode/vs/platform/storage/common/storage';
9
+ import { ITelemetryService } from 'vscode/vscode/vs/platform/telemetry/common/telemetry';
10
+ import { IUriIdentityService } from 'vscode/vscode/vs/platform/uriIdentity/common/uriIdentity';
11
+ import { AbstractSynchroniser } from 'vscode/vscode/vs/platform/userDataSync/common/abstractSynchronizer';
12
+ import { IEditSessionsStorageService } from 'vscode/vscode/vs/workbench/contrib/editSessions/common/editSessions';
13
+ import { IWorkspaceIdentityService } from '../../../services/workspaces/common/workspaceIdentityService.js';
14
+
15
+ class NullBackupStoreService {
16
+ async writeResource() {
17
+ return;
18
+ }
19
+ async getAllResourceRefs() {
20
+ return [];
21
+ }
22
+ async resolveResourceContent() {
23
+ return null;
24
+ }
25
+ }
26
+ class NullEnablementService {
27
+ constructor() {
28
+ this._onDidChangeEnablement = ( new Emitter());
29
+ this.onDidChangeEnablement = this._onDidChangeEnablement.event;
30
+ this._onDidChangeResourceEnablement = ( new Emitter());
31
+ this.onDidChangeResourceEnablement = this._onDidChangeResourceEnablement.event;
32
+ }
33
+ isEnabled() { return true; }
34
+ canToggleEnablement() { return true; }
35
+ setEnablement(_enabled) { }
36
+ isResourceEnabled(_resource) { return true; }
37
+ setResourceEnablement(_resource, _enabled) { }
38
+ getResourceSyncStateVersion(_resource) { return undefined; }
39
+ }
40
+ let WorkspaceStateSynchroniser = class WorkspaceStateSynchroniser extends AbstractSynchroniser {
41
+ constructor(profile, collection, userDataSyncStoreService, logService, fileService, environmentService, telemetryService, configurationService, storageService, uriIdentityService, workspaceIdentityService, editSessionsStorageService) {
42
+ const userDataSyncLocalStoreService = ( new NullBackupStoreService());
43
+ const userDataSyncEnablementService = ( new NullEnablementService());
44
+ super({ syncResource: "workspaceState" , profile }, collection, fileService, environmentService, storageService, userDataSyncStoreService, userDataSyncLocalStoreService, userDataSyncEnablementService, telemetryService, logService, configurationService, uriIdentityService);
45
+ this.workspaceIdentityService = workspaceIdentityService;
46
+ this.editSessionsStorageService = editSessionsStorageService;
47
+ this.version = 1;
48
+ }
49
+ async sync() {
50
+ const cancellationTokenSource = ( new CancellationTokenSource());
51
+ const folders = await this.workspaceIdentityService.getWorkspaceStateFolders(cancellationTokenSource.token);
52
+ if (!folders.length) {
53
+ return;
54
+ }
55
+ await this.storageService.flush();
56
+ const keys = ( this.storageService.keys(1, 0 ));
57
+ if (!keys.length) {
58
+ return;
59
+ }
60
+ const contributedData = {};
61
+ keys.forEach((key) => {
62
+ const data = this.storageService.get(key, 1 );
63
+ if (data) {
64
+ contributedData[key] = data;
65
+ }
66
+ });
67
+ const content = { folders, storage: contributedData, version: this.version };
68
+ await this.editSessionsStorageService.write('workspaceState', stringify(content));
69
+ }
70
+ async apply() {
71
+ const payload = this.editSessionsStorageService.lastReadResources.get('editSessions')?.content;
72
+ const workspaceStateId = payload ? JSON.parse(payload).workspaceStateId : undefined;
73
+ const resource = await this.editSessionsStorageService.read('workspaceState', workspaceStateId);
74
+ if (!resource) {
75
+ return null;
76
+ }
77
+ const remoteWorkspaceState = parse(resource.content);
78
+ if (!remoteWorkspaceState) {
79
+ this.logService.info('Skipping initializing workspace state because remote workspace state does not exist.');
80
+ return null;
81
+ }
82
+ const cancellationTokenSource = ( new CancellationTokenSource());
83
+ const replaceUris = await this.workspaceIdentityService.matches(remoteWorkspaceState.folders, cancellationTokenSource.token);
84
+ if (!replaceUris) {
85
+ this.logService.info('Skipping initializing workspace state because remote workspace state does not match current workspace.');
86
+ return null;
87
+ }
88
+ const storage = {};
89
+ for (const key of ( Object.keys(remoteWorkspaceState.storage))) {
90
+ storage[key] = remoteWorkspaceState.storage[key];
91
+ }
92
+ if (( Object.keys(storage)).length) {
93
+ const storageEntries = [];
94
+ for (const key of ( Object.keys(storage))) {
95
+ try {
96
+ const value = parse(storage[key]);
97
+ replaceUris(value);
98
+ storageEntries.push({ key, value, scope: 1 , target: 0 });
99
+ }
100
+ catch {
101
+ storageEntries.push({ key, value: storage[key], scope: 1 , target: 0 });
102
+ }
103
+ }
104
+ this.storageService.storeAll(storageEntries, true);
105
+ }
106
+ this.editSessionsStorageService.delete('workspaceState', resource.ref);
107
+ return null;
108
+ }
109
+ applyResult(remoteUserData, lastSyncUserData, result, force) {
110
+ throw new Error('Method not implemented.');
111
+ }
112
+ async generateSyncPreview(remoteUserData, lastSyncUserData, isRemoteDataFromCurrentMachine, userDataSyncConfiguration, token) {
113
+ return [];
114
+ }
115
+ getMergeResult(resourcePreview, token) {
116
+ throw new Error('Method not implemented.');
117
+ }
118
+ getAcceptResult(resourcePreview, resource, content, token) {
119
+ throw new Error('Method not implemented.');
120
+ }
121
+ async hasRemoteChanged(lastSyncUserData) {
122
+ return true;
123
+ }
124
+ async hasLocalData() {
125
+ return false;
126
+ }
127
+ async resolveContent(uri) {
128
+ return null;
129
+ }
130
+ };
131
+ WorkspaceStateSynchroniser = ( __decorate([
132
+ ( __param(4, IFileService)),
133
+ ( __param(5, IEnvironmentService)),
134
+ ( __param(6, ITelemetryService)),
135
+ ( __param(7, IConfigurationService)),
136
+ ( __param(8, IStorageService)),
137
+ ( __param(9, IUriIdentityService)),
138
+ ( __param(10, IWorkspaceIdentityService)),
139
+ ( __param(11, IEditSessionsStorageService))
140
+ ], WorkspaceStateSynchroniser));
141
+
142
+ export { WorkspaceStateSynchroniser };
@@ -0,0 +1,5 @@
1
+ import { createDecorator } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
2
+
3
+ const IWorkspaceIdentityService = ( createDecorator('IWorkspaceIdentityService'));
4
+
5
+ export { IWorkspaceIdentityService };