@codingame/monaco-vscode-edit-sessions-service-override 8.0.0 → 8.0.2
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/package.json +2 -2
- package/vscode/src/vs/workbench/contrib/editSessions/browser/editSessions.contribution.js +52 -52
- package/vscode/src/vs/workbench/contrib/editSessions/browser/editSessionsStorageService.js +9 -9
- package/vscode/src/vs/workbench/contrib/editSessions/browser/editSessionsViews.js +13 -13
- package/vscode/src/vs/workbench/contrib/editSessions/common/editSessions.js +3 -3
- package/vscode/src/vs/workbench/contrib/editSessions/common/editSessionsLogService.js +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-edit-sessions-service-override",
|
|
3
|
-
"version": "8.0.
|
|
3
|
+
"version": "8.0.2",
|
|
4
4
|
"keywords": [],
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "CodinGame",
|
|
@@ -26,6 +26,6 @@
|
|
|
26
26
|
}
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"vscode": "npm:@codingame/monaco-vscode-api@8.0.
|
|
29
|
+
"vscode": "npm:@codingame/monaco-vscode-api@8.0.2"
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -79,24 +79,24 @@ import Severity$1 from 'vscode/vscode/vs/base/common/severity';
|
|
|
79
79
|
var EditSessionsContribution_1;
|
|
80
80
|
const continueWorkingOnCommand = {
|
|
81
81
|
id: '_workbench.editSessions.actions.continueEditSession',
|
|
82
|
-
title: ( localize2(
|
|
82
|
+
title: ( localize2(2385, 'Continue Working On...')),
|
|
83
83
|
precondition: ( (WorkspaceFolderCountContext.notEqualsTo('0'))),
|
|
84
84
|
f1: true
|
|
85
85
|
};
|
|
86
86
|
const openLocalFolderCommand = {
|
|
87
87
|
id: '_workbench.editSessions.actions.continueEditSession.openLocalFolder',
|
|
88
|
-
title: ( localize2(
|
|
88
|
+
title: ( localize2(2386, 'Open In Local Folder')),
|
|
89
89
|
category: EDIT_SESSION_SYNC_CATEGORY,
|
|
90
90
|
precondition: ( (ContextKeyExpr.and( (IsWebContext.toNegated()), VirtualWorkspaceContext)))
|
|
91
91
|
};
|
|
92
92
|
const showOutputChannelCommand = {
|
|
93
93
|
id: 'workbench.editSessions.actions.showOutputChannel',
|
|
94
|
-
title: ( localize2(
|
|
94
|
+
title: ( localize2(2387, "Show Log")),
|
|
95
95
|
category: EDIT_SESSION_SYNC_CATEGORY
|
|
96
96
|
};
|
|
97
97
|
const installAdditionalContinueOnOptionsCommand = {
|
|
98
98
|
id: 'workbench.action.continueOn.extensions',
|
|
99
|
-
title: ( localize(
|
|
99
|
+
title: ( localize(2388, 'Install additional development environment options')),
|
|
100
100
|
};
|
|
101
101
|
registerAction2(class extends Action2 {
|
|
102
102
|
constructor() {
|
|
@@ -109,7 +109,7 @@ registerAction2(class extends Action2 {
|
|
|
109
109
|
view?.search('@tag:continueOn');
|
|
110
110
|
}
|
|
111
111
|
});
|
|
112
|
-
const resumeProgressOptionsTitle = `[${( localize(
|
|
112
|
+
const resumeProgressOptionsTitle = `[${( localize(2389, 'Resuming working changes...'))}](command:${showOutputChannelCommand.id})`;
|
|
113
113
|
const resumeProgressOptions = {
|
|
114
114
|
location: ProgressLocation.Window,
|
|
115
115
|
type: 'syncing',
|
|
@@ -190,7 +190,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
190
190
|
this._register(this.fileService.registerProvider(EditSessionsFileSystemProvider.SCHEMA, ( (new EditSessionsFileSystemProvider(this.editSessionsStorageService)))));
|
|
191
191
|
this.lifecycleService.onWillShutdown((e) => {
|
|
192
192
|
if (e.reason !== ShutdownReason.RELOAD && this.editSessionsStorageService.isSignedIn && this.configurationService.getValue('workbench.experimental.cloudChanges.autoStore') === 'onShutdown' && !isWeb) {
|
|
193
|
-
e.join(this.autoStoreEditSession(), { id: 'autoStoreWorkingChanges', label: ( localize(
|
|
193
|
+
e.join(this.autoStoreEditSession(), { id: 'autoStoreWorkingChanges', label: ( localize(2390, 'Storing current working changes...')) });
|
|
194
194
|
}
|
|
195
195
|
});
|
|
196
196
|
this._register(this.editSessionsStorageService.onDidSignIn(() => this.updateAccountsMenuBadge()));
|
|
@@ -248,7 +248,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
248
248
|
if (this.editSessionsStorageService.isSignedIn) {
|
|
249
249
|
return this.accountsMenuBadgeDisposable.clear();
|
|
250
250
|
}
|
|
251
|
-
const badge = ( (new NumberBadge(1, () => ( localize(
|
|
251
|
+
const badge = ( (new NumberBadge(1, () => ( localize(2391, 'Check for pending cloud changes')))));
|
|
252
252
|
this.accountsMenuBadgeDisposable.value = this.activityService.showAccountsActivity({ badge });
|
|
253
253
|
}
|
|
254
254
|
async autoStoreEditSession() {
|
|
@@ -256,7 +256,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
256
256
|
await this.progressService.withProgress({
|
|
257
257
|
location: ProgressLocation.Window,
|
|
258
258
|
type: 'syncing',
|
|
259
|
-
title: ( localize(
|
|
259
|
+
title: ( localize(2392, 'Storing working changes...'))
|
|
260
260
|
}, async () => this.storeEditSession(false, cancellationTokenSource.token), () => {
|
|
261
261
|
cancellationTokenSource.cancel();
|
|
262
262
|
cancellationTokenSource.dispose();
|
|
@@ -300,7 +300,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
300
300
|
constructor() {
|
|
301
301
|
super({
|
|
302
302
|
id: 'workbench.editSessions.actions.showEditSessions',
|
|
303
|
-
title: ( localize2(
|
|
303
|
+
title: ( localize2(2393, 'Show Cloud Changes')),
|
|
304
304
|
category: EDIT_SESSION_SYNC_CATEGORY,
|
|
305
305
|
f1: true
|
|
306
306
|
});
|
|
@@ -337,7 +337,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
337
337
|
location: ProgressLocation.Notification,
|
|
338
338
|
cancellable: true,
|
|
339
339
|
type: 'syncing',
|
|
340
|
-
title: ( localize(
|
|
340
|
+
title: ( localize(2394, 'Storing your working changes...'))
|
|
341
341
|
}, async () => {
|
|
342
342
|
const ref = await that.storeEditSession(false, cancellationTokenSource.token);
|
|
343
343
|
if (ref !== undefined) {
|
|
@@ -386,7 +386,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
386
386
|
constructor() {
|
|
387
387
|
super({
|
|
388
388
|
id: 'workbench.editSessions.actions.resumeLatest',
|
|
389
|
-
title: ( localize2(
|
|
389
|
+
title: ( localize2(2395, 'Resume Latest Changes from Cloud')),
|
|
390
390
|
category: EDIT_SESSION_SYNC_CATEGORY,
|
|
391
391
|
f1: true,
|
|
392
392
|
});
|
|
@@ -399,7 +399,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
399
399
|
constructor() {
|
|
400
400
|
super({
|
|
401
401
|
id: 'workbench.editSessions.actions.resumeFromSerializedPayload',
|
|
402
|
-
title: ( localize2(
|
|
402
|
+
title: ( localize2(2396, 'Resume Changes from Serialized Data')),
|
|
403
403
|
category: 'Developer',
|
|
404
404
|
f1: true,
|
|
405
405
|
});
|
|
@@ -419,7 +419,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
419
419
|
constructor() {
|
|
420
420
|
super({
|
|
421
421
|
id: 'workbench.editSessions.actions.storeCurrent',
|
|
422
|
-
title: ( localize2(
|
|
422
|
+
title: ( localize2(2397, 'Store Working Changes in Cloud')),
|
|
423
423
|
category: EDIT_SESSION_SYNC_CATEGORY,
|
|
424
424
|
f1: true,
|
|
425
425
|
});
|
|
@@ -428,7 +428,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
428
428
|
const cancellationTokenSource = ( (new CancellationTokenSource()));
|
|
429
429
|
await that.progressService.withProgress({
|
|
430
430
|
location: ProgressLocation.Notification,
|
|
431
|
-
title: ( localize(
|
|
431
|
+
title: ( localize(2398, 'Storing working changes...'))
|
|
432
432
|
}, async () => {
|
|
433
433
|
that.telemetryService.publicLog2('editSessions.store');
|
|
434
434
|
await that.storeEditSession(true, cancellationTokenSource.token);
|
|
@@ -450,14 +450,14 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
450
450
|
}
|
|
451
451
|
this.telemetryService.publicLog2('editSessions.resume');
|
|
452
452
|
performance.mark('code/willResumeEditSessionFromIdentifier');
|
|
453
|
-
progress?.report({ message: ( localize(
|
|
453
|
+
progress?.report({ message: ( localize(2399, 'Checking for pending cloud changes...')) });
|
|
454
454
|
const data = serializedData ? { content: serializedData, ref: '' } : await this.editSessionsStorageService.read('editSessions', ref);
|
|
455
455
|
if (!data) {
|
|
456
456
|
if (ref === undefined && !silent) {
|
|
457
|
-
this.notificationService.info(( localize(
|
|
457
|
+
this.notificationService.info(( localize(2400, 'There are no changes to resume from the cloud.')));
|
|
458
458
|
}
|
|
459
459
|
else if (ref !== undefined) {
|
|
460
|
-
this.notificationService.warn(( localize(
|
|
460
|
+
this.notificationService.warn(( localize(2401, 'Could not resume changes from the cloud for ID {0}.', ref)));
|
|
461
461
|
}
|
|
462
462
|
this.logService.info(ref !== undefined ? `Aborting resuming changes from cloud as no edit session content is available to be applied from ref ${ref}.` : `Aborting resuming edit session as no edit session content is available to be applied`);
|
|
463
463
|
return;
|
|
@@ -467,7 +467,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
467
467
|
ref = data.ref;
|
|
468
468
|
if (editSession.version > EditSessionSchemaVersion) {
|
|
469
469
|
this.notificationService.error(( localize(
|
|
470
|
-
|
|
470
|
+
2402,
|
|
471
471
|
"Please upgrade to a newer version of {0} to resume your working changes from the cloud.",
|
|
472
472
|
this.productService.nameLong
|
|
473
473
|
)));
|
|
@@ -484,12 +484,12 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
484
484
|
type: Severity$1.Warning,
|
|
485
485
|
message: conflictingChanges.length > 1 ?
|
|
486
486
|
( localize(
|
|
487
|
-
|
|
487
|
+
2403,
|
|
488
488
|
'Resuming your working changes from the cloud will overwrite the following {0} files. Do you want to proceed?',
|
|
489
489
|
conflictingChanges.length
|
|
490
490
|
)) :
|
|
491
491
|
( localize(
|
|
492
|
-
|
|
492
|
+
2404,
|
|
493
493
|
'Resuming your working changes from the cloud will overwrite {0}. Do you want to proceed?',
|
|
494
494
|
basename(conflictingChanges[0].uri)
|
|
495
495
|
)),
|
|
@@ -515,7 +515,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
515
515
|
}
|
|
516
516
|
catch (ex) {
|
|
517
517
|
this.logService.error('Failed to resume edit session, reason: ', ( (ex.toString())));
|
|
518
|
-
this.notificationService.error(( localize(
|
|
518
|
+
this.notificationService.error(( localize(2405, "Failed to resume your working changes from the cloud.")));
|
|
519
519
|
}
|
|
520
520
|
performance.mark('code/didResumeEditSessionFromIdentifier');
|
|
521
521
|
}
|
|
@@ -544,9 +544,9 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
544
544
|
this.configurationService.getValue('workbench.experimental.cloudChanges.partialMatches.enabled') === true) {
|
|
545
545
|
if (!applyPartialMatch) {
|
|
546
546
|
this.notificationService.prompt(Severity$1.Info, ( localize(
|
|
547
|
-
|
|
547
|
+
2406,
|
|
548
548
|
'You have pending working changes in the cloud for this workspace. Would you like to resume them?'
|
|
549
|
-
)), [{ label: ( localize(
|
|
549
|
+
)), [{ label: ( localize(2407, 'Resume')), run: () => this.resumeEditSession(ref, false, undefined, true) }]);
|
|
550
550
|
}
|
|
551
551
|
else {
|
|
552
552
|
folderRoot = f;
|
|
@@ -629,7 +629,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
629
629
|
const contents = encodeBase64((await this.fileService.readFile(uri)).value);
|
|
630
630
|
editSessionSize += contents.length;
|
|
631
631
|
if (editSessionSize > this.editSessionsStorageService.SIZE_LIMIT) {
|
|
632
|
-
this.notificationService.error(( localize(
|
|
632
|
+
this.notificationService.error(( localize(2408, 'Your working changes exceed the size limit and cannot be stored.')));
|
|
633
633
|
return undefined;
|
|
634
634
|
}
|
|
635
635
|
workingChanges.push({ type: ChangeType.Addition, fileType: FileType.File, contents: contents, relativeFilePath: relativeFilePath });
|
|
@@ -649,7 +649,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
649
649
|
this.logService.info('Skipped storing working changes in the cloud as there are no edits to store.');
|
|
650
650
|
if (fromStoreCommand) {
|
|
651
651
|
this.notificationService.info(( localize(
|
|
652
|
-
|
|
652
|
+
2409,
|
|
653
653
|
'Skipped storing working changes in the cloud as there are no edits to store.'
|
|
654
654
|
)));
|
|
655
655
|
}
|
|
@@ -668,11 +668,11 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
668
668
|
switch (ex.code) {
|
|
669
669
|
case UserDataSyncErrorCode.TooLarge:
|
|
670
670
|
this.telemetryService.publicLog2('editSessions.upload.failed', { reason: 'TooLarge' });
|
|
671
|
-
this.notificationService.error(( localize(
|
|
671
|
+
this.notificationService.error(( localize(2408, 'Your working changes exceed the size limit and cannot be stored.')));
|
|
672
672
|
break;
|
|
673
673
|
default:
|
|
674
674
|
this.telemetryService.publicLog2('editSessions.upload.failed', { reason: 'unknown' });
|
|
675
|
-
this.notificationService.error(( localize(
|
|
675
|
+
this.notificationService.error(( localize(2410, 'Your working changes cannot be stored.')));
|
|
676
676
|
break;
|
|
677
677
|
}
|
|
678
678
|
}
|
|
@@ -703,11 +703,11 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
703
703
|
}
|
|
704
704
|
if (this.hasEditSession()) {
|
|
705
705
|
const quickpick = this.quickInputService.createQuickPick();
|
|
706
|
-
quickpick.placeholder = ( localize(
|
|
706
|
+
quickpick.placeholder = ( localize(2411, "Select whether to bring your working changes with you"));
|
|
707
707
|
quickpick.ok = false;
|
|
708
708
|
quickpick.ignoreFocusOut = true;
|
|
709
|
-
const withCloudChanges = { label: ( localize(
|
|
710
|
-
const withoutCloudChanges = { label: ( localize(
|
|
709
|
+
const withCloudChanges = { label: ( localize(2412, "Yes, continue with my working changes")) };
|
|
710
|
+
const withoutCloudChanges = { label: ( localize(2413, "No, continue without my working changes")) };
|
|
711
711
|
quickpick.items = [withCloudChanges, withoutCloudChanges];
|
|
712
712
|
const continueWithCloudChanges = await ( (new Promise((resolve, reject) => {
|
|
713
713
|
quickpick.onDidAccept(() => {
|
|
@@ -800,7 +800,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
800
800
|
}
|
|
801
801
|
async run(accessor) {
|
|
802
802
|
const selection = await that.fileDialogService.showOpenDialog({
|
|
803
|
-
title: ( localize(
|
|
803
|
+
title: ( localize(2414, 'Select a local folder to continue working in')),
|
|
804
804
|
canSelectFolders: true,
|
|
805
805
|
canSelectMany: false,
|
|
806
806
|
canSelectFiles: false,
|
|
@@ -814,7 +814,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
814
814
|
}
|
|
815
815
|
}));
|
|
816
816
|
if (getVirtualWorkspaceLocation(this.contextService.getWorkspace()) !== undefined && isNative) {
|
|
817
|
-
this.generateStandaloneOptionCommand(openLocalFolderCommand.id, ( localize(
|
|
817
|
+
this.generateStandaloneOptionCommand(openLocalFolderCommand.id, ( localize(2415, 'Continue Working in Existing Local Folder')), undefined, openLocalFolderCommand.precondition, undefined);
|
|
818
818
|
}
|
|
819
819
|
}
|
|
820
820
|
async pickContinueEditSessionDestination() {
|
|
@@ -823,7 +823,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
823
823
|
? this.contextService.getWorkspace().folders[0].name
|
|
824
824
|
: ( (this.contextService.getWorkspace().folders.map((folder) => folder.name))).join(', ');
|
|
825
825
|
quickPick.placeholder = ( localize(
|
|
826
|
-
|
|
826
|
+
2416,
|
|
827
827
|
"Select a development environment to continue working on {0} in",
|
|
828
828
|
`'${workspaceContext}'`
|
|
829
829
|
));
|
|
@@ -881,7 +881,7 @@ let EditSessionsContribution = class EditSessionsContribution extends Disposable
|
|
|
881
881
|
createPickItems() {
|
|
882
882
|
const items = [...this.continueEditSessionOptions].filter((option) => option.when === undefined || this.contextKeyService.contextMatchesRules(option.when));
|
|
883
883
|
if (getVirtualWorkspaceLocation(this.contextService.getWorkspace()) !== undefined && isNative) {
|
|
884
|
-
items.push(( (new ContinueEditSessionItem('$(folder) ' + ( localize(
|
|
884
|
+
items.push(( (new ContinueEditSessionItem('$(folder) ' + ( localize(2417, 'Open in Local Folder')), openLocalFolderCommand.id, ( localize(2418, 'Built-in'))))));
|
|
885
885
|
}
|
|
886
886
|
const sortedItems = items.sort((item1, item2) => item1.label.localeCompare(item2.label));
|
|
887
887
|
return sortedItems.concat({ type: 'separator' }, ( (new ContinueEditSessionItem(
|
|
@@ -932,7 +932,7 @@ class ContinueEditSessionItem {
|
|
|
932
932
|
if (documentation !== undefined) {
|
|
933
933
|
this.buttons = [{
|
|
934
934
|
iconClass: infoButtonClass,
|
|
935
|
-
tooltip: ( localize(
|
|
935
|
+
tooltip: ( localize(2419, 'Learn More')),
|
|
936
936
|
}];
|
|
937
937
|
}
|
|
938
938
|
}
|
|
@@ -941,7 +941,7 @@ const continueEditSessionExtPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
941
941
|
extensionPoint: 'continueEditSession',
|
|
942
942
|
jsonSchema: {
|
|
943
943
|
description: ( localize(
|
|
944
|
-
|
|
944
|
+
2420,
|
|
945
945
|
'Contributes options for continuing the current edit session in a different environment'
|
|
946
946
|
)),
|
|
947
947
|
type: 'array',
|
|
@@ -950,35 +950,35 @@ const continueEditSessionExtPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
950
950
|
properties: {
|
|
951
951
|
command: {
|
|
952
952
|
description: ( localize(
|
|
953
|
-
|
|
953
|
+
2421,
|
|
954
954
|
'Identifier of the command to execute. The command must be declared in the \'commands\'-section and return a URI representing a different environment where the current edit session can be continued.'
|
|
955
955
|
)),
|
|
956
956
|
type: 'string'
|
|
957
957
|
},
|
|
958
958
|
group: {
|
|
959
|
-
description: ( localize(
|
|
959
|
+
description: ( localize(2422, 'Group into which this item belongs.')),
|
|
960
960
|
type: 'string'
|
|
961
961
|
},
|
|
962
962
|
qualifiedName: {
|
|
963
963
|
description: ( localize(
|
|
964
|
-
|
|
964
|
+
2423,
|
|
965
965
|
'A fully qualified name for this item which is used for display in menus.'
|
|
966
966
|
)),
|
|
967
967
|
type: 'string'
|
|
968
968
|
},
|
|
969
969
|
description: {
|
|
970
970
|
description: ( localize(
|
|
971
|
-
|
|
971
|
+
2424,
|
|
972
972
|
"The url, or a command that returns the url, to the option's documentation page."
|
|
973
973
|
)),
|
|
974
974
|
type: 'string'
|
|
975
975
|
},
|
|
976
976
|
remoteGroup: {
|
|
977
|
-
description: ( localize(
|
|
977
|
+
description: ( localize(2425, 'Group into which this item belongs in the remote indicator.')),
|
|
978
978
|
type: 'string'
|
|
979
979
|
},
|
|
980
980
|
when: {
|
|
981
|
-
description: ( localize(
|
|
981
|
+
description: ( localize(2426, 'Condition which must be true to show this item.')),
|
|
982
982
|
type: 'string'
|
|
983
983
|
}
|
|
984
984
|
},
|
|
@@ -995,16 +995,16 @@ workbenchRegistry.registerWorkbenchContribution(EditSessionsContribution, Lifecy
|
|
|
995
995
|
enum: ['onShutdown', 'off'],
|
|
996
996
|
enumDescriptions: [
|
|
997
997
|
( localize(
|
|
998
|
-
|
|
998
|
+
2427,
|
|
999
999
|
"Automatically store current working changes in the cloud on window close."
|
|
1000
1000
|
)),
|
|
1001
|
-
( localize(
|
|
1001
|
+
( localize(2428, "Never attempt to automatically store working changes in the cloud."))
|
|
1002
1002
|
],
|
|
1003
1003
|
'type': 'string',
|
|
1004
1004
|
'tags': ['experimental', 'usesOnlineServices'],
|
|
1005
1005
|
'default': 'off',
|
|
1006
1006
|
'markdownDescription': ( localize(
|
|
1007
|
-
|
|
1007
|
+
2429,
|
|
1008
1008
|
"Controls whether to automatically store available working changes in the cloud for the current workspace. This setting has no effect in the web."
|
|
1009
1009
|
)),
|
|
1010
1010
|
},
|
|
@@ -1012,16 +1012,16 @@ workbenchRegistry.registerWorkbenchContribution(EditSessionsContribution, Lifecy
|
|
|
1012
1012
|
enum: ['onReload', 'off'],
|
|
1013
1013
|
enumDescriptions: [
|
|
1014
1014
|
( localize(
|
|
1015
|
-
|
|
1015
|
+
2430,
|
|
1016
1016
|
"Automatically resume available working changes from the cloud on window reload."
|
|
1017
1017
|
)),
|
|
1018
|
-
( localize(
|
|
1018
|
+
( localize(2431, "Never attempt to resume working changes from the cloud."))
|
|
1019
1019
|
],
|
|
1020
1020
|
'type': 'string',
|
|
1021
1021
|
'tags': ['usesOnlineServices'],
|
|
1022
1022
|
'default': 'onReload',
|
|
1023
1023
|
'markdownDescription': ( localize(
|
|
1024
|
-
|
|
1024
|
+
2432,
|
|
1025
1025
|
"Controls whether to automatically resume available working changes stored in the cloud for the current workspace."
|
|
1026
1026
|
)),
|
|
1027
1027
|
},
|
|
@@ -1029,11 +1029,11 @@ workbenchRegistry.registerWorkbenchContribution(EditSessionsContribution, Lifecy
|
|
|
1029
1029
|
enum: ['prompt', 'off'],
|
|
1030
1030
|
enumDescriptions: [
|
|
1031
1031
|
( localize(
|
|
1032
|
-
|
|
1032
|
+
2433,
|
|
1033
1033
|
'Prompt the user to sign in to store working changes in the cloud with Continue Working On.'
|
|
1034
1034
|
)),
|
|
1035
1035
|
( localize(
|
|
1036
|
-
|
|
1036
|
+
2434,
|
|
1037
1037
|
'Do not store working changes in the cloud with Continue Working On unless the user has already turned on Cloud Changes.'
|
|
1038
1038
|
))
|
|
1039
1039
|
],
|
|
@@ -1041,7 +1041,7 @@ workbenchRegistry.registerWorkbenchContribution(EditSessionsContribution, Lifecy
|
|
|
1041
1041
|
tags: ['usesOnlineServices'],
|
|
1042
1042
|
default: 'prompt',
|
|
1043
1043
|
markdownDescription: ( localize(
|
|
1044
|
-
|
|
1044
|
+
2435,
|
|
1045
1045
|
'Controls whether to prompt the user to store working changes in the cloud when using Continue Working On.'
|
|
1046
1046
|
))
|
|
1047
1047
|
},
|
|
@@ -1050,7 +1050,7 @@ workbenchRegistry.registerWorkbenchContribution(EditSessionsContribution, Lifecy
|
|
|
1050
1050
|
'tags': ['experimental', 'usesOnlineServices'],
|
|
1051
1051
|
'default': false,
|
|
1052
1052
|
'markdownDescription': ( localize(
|
|
1053
|
-
|
|
1053
|
+
2436,
|
|
1054
1054
|
"Controls whether to surface cloud changes which partially match the current session."
|
|
1055
1055
|
))
|
|
1056
1056
|
}
|
|
@@ -232,7 +232,7 @@ let EditSessionsWorkbenchService = class EditSessionsWorkbenchService extends Di
|
|
|
232
232
|
async getAccountPreference(reason) {
|
|
233
233
|
const quickpick = this.quickInputService.createQuickPick();
|
|
234
234
|
quickpick.ok = false;
|
|
235
|
-
quickpick.placeholder = reason === 'read' ? ( localize(
|
|
235
|
+
quickpick.placeholder = reason === 'read' ? ( localize(2375, "Select an account to restore your working changes from the cloud")) : ( localize(2376, "Select an account to store your working changes in the cloud"));
|
|
236
236
|
quickpick.ignoreFocusOut = true;
|
|
237
237
|
quickpick.items = await this.createQuickpickItems();
|
|
238
238
|
return (
|
|
@@ -253,15 +253,15 @@ let EditSessionsWorkbenchService = class EditSessionsWorkbenchService extends Di
|
|
|
253
253
|
}
|
|
254
254
|
async createQuickpickItems() {
|
|
255
255
|
const options = [];
|
|
256
|
-
options.push({ type: 'separator', label: ( localize(
|
|
256
|
+
options.push({ type: 'separator', label: ( localize(2377, "Signed In")) });
|
|
257
257
|
const sessions = await this.getAllSessions();
|
|
258
258
|
options.push(...sessions);
|
|
259
|
-
options.push({ type: 'separator', label: ( localize(
|
|
259
|
+
options.push({ type: 'separator', label: ( localize(2378, "Others")) });
|
|
260
260
|
for (const authenticationProvider of (await this.getAuthenticationProviders())) {
|
|
261
261
|
const signedInForProvider = ( (sessions.some(account => account.session.providerId === authenticationProvider.id)));
|
|
262
262
|
if (!signedInForProvider || this.authenticationService.getProvider(authenticationProvider.id).supportsMultipleAccounts) {
|
|
263
263
|
const providerName = this.authenticationService.getProvider(authenticationProvider.id).label;
|
|
264
|
-
options.push({ label: ( localize(
|
|
264
|
+
options.push({ label: ( localize(2379, "Sign in with {0}", providerName)), provider: authenticationProvider });
|
|
265
265
|
}
|
|
266
266
|
}
|
|
267
267
|
return options;
|
|
@@ -350,7 +350,7 @@ let EditSessionsWorkbenchService = class EditSessionsWorkbenchService extends Di
|
|
|
350
350
|
constructor() {
|
|
351
351
|
super({
|
|
352
352
|
id,
|
|
353
|
-
title: ( localize(
|
|
353
|
+
title: ( localize(2380, 'Turn on Cloud Changes...')),
|
|
354
354
|
category: EDIT_SESSION_SYNC_CATEGORY,
|
|
355
355
|
precondition: when,
|
|
356
356
|
menu: [{
|
|
@@ -371,7 +371,7 @@ let EditSessionsWorkbenchService = class EditSessionsWorkbenchService extends Di
|
|
|
371
371
|
group: '2_editSessions',
|
|
372
372
|
command: {
|
|
373
373
|
id,
|
|
374
|
-
title: ( localize(
|
|
374
|
+
title: ( localize(2381, 'Turn on Cloud Changes... (1)')),
|
|
375
375
|
},
|
|
376
376
|
when: ( (ContextKeyExpr.and(
|
|
377
377
|
(ContextKeyExpr.equals(EDIT_SESSIONS_PENDING_KEY, true)),
|
|
@@ -385,7 +385,7 @@ let EditSessionsWorkbenchService = class EditSessionsWorkbenchService extends Di
|
|
|
385
385
|
constructor() {
|
|
386
386
|
super({
|
|
387
387
|
id: 'workbench.editSessions.actions.resetAuth',
|
|
388
|
-
title: ( localize(
|
|
388
|
+
title: ( localize(2382, 'Turn off Cloud Changes...')),
|
|
389
389
|
category: EDIT_SESSION_SYNC_CATEGORY,
|
|
390
390
|
precondition: ( (ContextKeyExpr.equals(EDIT_SESSIONS_SIGNED_IN_KEY, true))),
|
|
391
391
|
menu: [{
|
|
@@ -400,8 +400,8 @@ let EditSessionsWorkbenchService = class EditSessionsWorkbenchService extends Di
|
|
|
400
400
|
}
|
|
401
401
|
async run() {
|
|
402
402
|
const result = await that.dialogService.confirm({
|
|
403
|
-
message: ( localize(
|
|
404
|
-
checkbox: { label: ( localize(
|
|
403
|
+
message: ( localize(2383, 'Do you want to disable storing working changes in the cloud?')),
|
|
404
|
+
checkbox: { label: ( localize(2384, 'Delete all stored data from the cloud.')) }
|
|
405
405
|
});
|
|
406
406
|
if (result.confirmed) {
|
|
407
407
|
if (result.checkboxChecked) {
|
|
@@ -51,9 +51,9 @@ let EditSessionsDataViews = class EditSessionsDataViews extends Disposable {
|
|
|
51
51
|
}], container);
|
|
52
52
|
viewsRegistry.registerViewWelcomeContent(viewId, {
|
|
53
53
|
content: ( localize(
|
|
54
|
-
|
|
54
|
+
5692,
|
|
55
55
|
'You have no stored changes in the cloud to display.\n{0}',
|
|
56
|
-
`[${( localize(
|
|
56
|
+
`[${( localize(5693, 'Store Working Changes'))}](command:workbench.editSessions.actions.store)`
|
|
57
57
|
)),
|
|
58
58
|
when: ( (ContextKeyExpr.equals(EDIT_SESSIONS_COUNT_KEY, 0))),
|
|
59
59
|
order: 1
|
|
@@ -62,7 +62,7 @@ let EditSessionsDataViews = class EditSessionsDataViews extends Disposable {
|
|
|
62
62
|
constructor() {
|
|
63
63
|
super({
|
|
64
64
|
id: 'workbench.editSessions.actions.resume',
|
|
65
|
-
title: ( localize(
|
|
65
|
+
title: ( localize(5694, "Resume Working Changes")),
|
|
66
66
|
icon: Codicon.desktopDownload,
|
|
67
67
|
menu: {
|
|
68
68
|
id: MenuId.ViewItemContext,
|
|
@@ -85,7 +85,7 @@ let EditSessionsDataViews = class EditSessionsDataViews extends Disposable {
|
|
|
85
85
|
constructor() {
|
|
86
86
|
super({
|
|
87
87
|
id: 'workbench.editSessions.actions.store',
|
|
88
|
-
title: ( localize(
|
|
88
|
+
title: ( localize(5695, "Store Working Changes")),
|
|
89
89
|
icon: Codicon.cloudUpload,
|
|
90
90
|
});
|
|
91
91
|
}
|
|
@@ -99,7 +99,7 @@ let EditSessionsDataViews = class EditSessionsDataViews extends Disposable {
|
|
|
99
99
|
constructor() {
|
|
100
100
|
super({
|
|
101
101
|
id: 'workbench.editSessions.actions.delete',
|
|
102
|
-
title: ( localize(
|
|
102
|
+
title: ( localize(5696, "Delete Working Changes")),
|
|
103
103
|
icon: Codicon.trash,
|
|
104
104
|
menu: {
|
|
105
105
|
id: MenuId.ViewItemContext,
|
|
@@ -117,11 +117,11 @@ let EditSessionsDataViews = class EditSessionsDataViews extends Disposable {
|
|
|
117
117
|
const editSessionStorageService = accessor.get(IEditSessionsStorageService);
|
|
118
118
|
const result = await dialogService.confirm({
|
|
119
119
|
message: ( localize(
|
|
120
|
-
|
|
120
|
+
5697,
|
|
121
121
|
'Are you sure you want to permanently delete your working changes with ref {0}?',
|
|
122
122
|
editSessionId
|
|
123
123
|
)),
|
|
124
|
-
detail: ( localize(
|
|
124
|
+
detail: ( localize(5698, ' You cannot undo this action.')),
|
|
125
125
|
type: 'warning',
|
|
126
126
|
title: EDIT_SESSIONS_TITLE.value
|
|
127
127
|
});
|
|
@@ -135,7 +135,7 @@ let EditSessionsDataViews = class EditSessionsDataViews extends Disposable {
|
|
|
135
135
|
constructor() {
|
|
136
136
|
super({
|
|
137
137
|
id: 'workbench.editSessions.actions.deleteAll',
|
|
138
|
-
title: ( localize(
|
|
138
|
+
title: ( localize(5699, "Delete All Working Changes from Cloud")),
|
|
139
139
|
icon: Codicon.trash,
|
|
140
140
|
menu: {
|
|
141
141
|
id: MenuId.ViewTitle,
|
|
@@ -151,10 +151,10 @@ let EditSessionsDataViews = class EditSessionsDataViews extends Disposable {
|
|
|
151
151
|
const editSessionStorageService = accessor.get(IEditSessionsStorageService);
|
|
152
152
|
const result = await dialogService.confirm({
|
|
153
153
|
message: ( localize(
|
|
154
|
-
|
|
154
|
+
5700,
|
|
155
155
|
'Are you sure you want to permanently delete all stored changes from the cloud?'
|
|
156
156
|
)),
|
|
157
|
-
detail: ( localize(
|
|
157
|
+
detail: ( localize(5701, ' You cannot undo this action.')),
|
|
158
158
|
type: 'warning',
|
|
159
159
|
title: EDIT_SESSIONS_TITLE.value
|
|
160
160
|
});
|
|
@@ -268,11 +268,11 @@ let EditSessionDataViewDataProvider = class EditSessionDataViewDataProvider {
|
|
|
268
268
|
themeIcon: Codicon.file,
|
|
269
269
|
command: {
|
|
270
270
|
id: 'vscode.diff',
|
|
271
|
-
title: ( localize(
|
|
271
|
+
title: ( localize(5702, 'Compare Changes')),
|
|
272
272
|
arguments: [
|
|
273
273
|
localCopy,
|
|
274
274
|
cloudChangeUri,
|
|
275
|
-
`${basename(change.relativeFilePath)} (${( localize(
|
|
275
|
+
`${basename(change.relativeFilePath)} (${( localize(5703, 'Local Copy'))} \u2194 ${( localize(5704, 'Cloud Changes'))})`,
|
|
276
276
|
undefined
|
|
277
277
|
]
|
|
278
278
|
}
|
|
@@ -287,7 +287,7 @@ let EditSessionDataViewDataProvider = class EditSessionDataViewDataProvider {
|
|
|
287
287
|
themeIcon: Codicon.file,
|
|
288
288
|
command: {
|
|
289
289
|
id: API_OPEN_EDITOR_COMMAND_ID,
|
|
290
|
-
title: ( localize(
|
|
290
|
+
title: ( localize(5705, 'Open File')),
|
|
291
291
|
arguments: [cloudChangeUri, undefined, undefined]
|
|
292
292
|
}
|
|
293
293
|
};
|
|
@@ -5,7 +5,7 @@ import { RawContextKey } from 'vscode/vscode/vs/platform/contextkey/common/conte
|
|
|
5
5
|
import { registerIcon } from 'vscode/vscode/vs/platform/theme/common/iconRegistry';
|
|
6
6
|
import { StringSHA1 } from 'vscode/vscode/vs/base/common/hash';
|
|
7
7
|
|
|
8
|
-
const EDIT_SESSION_SYNC_CATEGORY = ( localize2(
|
|
8
|
+
const EDIT_SESSION_SYNC_CATEGORY = ( localize2(5680, 'Cloud Changes'));
|
|
9
9
|
var ChangeType;
|
|
10
10
|
( ((function(ChangeType) {
|
|
11
11
|
ChangeType[ChangeType["Addition"] = 1] = "Addition";
|
|
@@ -22,8 +22,8 @@ const EDIT_SESSIONS_PENDING_KEY = 'editSessionsPending';
|
|
|
22
22
|
const EDIT_SESSIONS_PENDING = ( (new RawContextKey(EDIT_SESSIONS_PENDING_KEY, false)));
|
|
23
23
|
const EDIT_SESSIONS_CONTAINER_ID = 'workbench.view.editSessions';
|
|
24
24
|
const EDIT_SESSIONS_DATA_VIEW_ID = 'workbench.views.editSessions.data';
|
|
25
|
-
const EDIT_SESSIONS_TITLE = ( localize2(
|
|
26
|
-
const EDIT_SESSIONS_VIEW_ICON = registerIcon('edit-sessions-view-icon', Codicon.cloudDownload, ( localize(
|
|
25
|
+
const EDIT_SESSIONS_TITLE = ( localize2(5680, 'Cloud Changes'));
|
|
26
|
+
const EDIT_SESSIONS_VIEW_ICON = registerIcon('edit-sessions-view-icon', Codicon.cloudDownload, ( localize(5681, 'View icon of the cloud changes view.')));
|
|
27
27
|
const EDIT_SESSIONS_SHOW_VIEW = ( (new RawContextKey('editSessionsShowView', false)));
|
|
28
28
|
const EDIT_SESSIONS_SCHEME = 'vscode-edit-sessions';
|
|
29
29
|
function decodeEditSessionFileContent(version, content) {
|
|
@@ -9,7 +9,7 @@ import { editSessionsLogId } from './editSessions.js';
|
|
|
9
9
|
let EditSessionsLogService = class EditSessionsLogService extends AbstractLogger {
|
|
10
10
|
constructor(loggerService, environmentService) {
|
|
11
11
|
super();
|
|
12
|
-
this.logger = this._register(loggerService.createLogger(joinPath(environmentService.logsHome, `${editSessionsLogId}.log`), { id: editSessionsLogId, name: ( localize(
|
|
12
|
+
this.logger = this._register(loggerService.createLogger(joinPath(environmentService.logsHome, `${editSessionsLogId}.log`), { id: editSessionsLogId, name: ( localize(2374, "Cloud Changes")) }));
|
|
13
13
|
}
|
|
14
14
|
trace(message, ...args) {
|
|
15
15
|
this.logger.trace(message, ...args);
|