@codingame/monaco-vscode-update-service-override 4.5.0 → 4.5.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/index.d.ts +1 -1
- package/package.json +2 -2
- package/vscode/src/vs/platform/update/common/update.config.contribution.js +21 -32
- package/vscode/src/vs/workbench/contrib/markdown/browser/markdownSettingRenderer.js +34 -47
- package/vscode/src/vs/workbench/contrib/update/browser/releaseNotesEditor.js +28 -40
- package/vscode/src/vs/workbench/contrib/update/browser/update.contribution.js +33 -78
- package/vscode/src/vs/workbench/contrib/update/browser/update.js +107 -203
- package/update.d.ts +0 -5
package/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { default } from '
|
|
1
|
+
export { default } from 'vscode/service-override/update';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-update-service-override",
|
|
3
|
-
"version": "4.5.
|
|
3
|
+
"version": "4.5.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@4.5.
|
|
29
|
+
"vscode": "npm:@codingame/monaco-vscode-api@4.5.2"
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -3,15 +3,12 @@ import { localizeWithPath } from 'vscode/vscode/vs/nls';
|
|
|
3
3
|
import { Extensions } from 'vscode/vscode/vs/platform/configuration/common/configurationRegistry';
|
|
4
4
|
import { Registry } from 'vscode/vscode/vs/platform/registry/common/platform';
|
|
5
5
|
|
|
6
|
-
const
|
|
6
|
+
const _moduleId = "vs/platform/update/common/update.config.contribution";
|
|
7
|
+
const configurationRegistry = ( (Registry.as(Extensions.Configuration)));
|
|
7
8
|
configurationRegistry.registerConfiguration({
|
|
8
9
|
id: 'update',
|
|
9
10
|
order: 15,
|
|
10
|
-
title: ( localizeWithPath(
|
|
11
|
-
'vs/platform/update/common/update.config.contribution',
|
|
12
|
-
'updateConfigurationTitle',
|
|
13
|
-
"Update"
|
|
14
|
-
)),
|
|
11
|
+
title: ( localizeWithPath(_moduleId, 0, "Update")),
|
|
15
12
|
type: 'object',
|
|
16
13
|
properties: {
|
|
17
14
|
'update.mode': {
|
|
@@ -20,30 +17,26 @@ configurationRegistry.registerConfiguration({
|
|
|
20
17
|
default: 'default',
|
|
21
18
|
scope: 1 ,
|
|
22
19
|
description: ( localizeWithPath(
|
|
23
|
-
|
|
24
|
-
|
|
20
|
+
_moduleId,
|
|
21
|
+
1,
|
|
25
22
|
"Configure whether you receive automatic updates. Requires a restart after change. The updates are fetched from a Microsoft online service."
|
|
26
23
|
)),
|
|
27
24
|
tags: ['usesOnlineServices'],
|
|
28
25
|
enumDescriptions: [
|
|
26
|
+
( localizeWithPath(_moduleId, 2, "Disable updates.")),
|
|
29
27
|
( localizeWithPath(
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
"Disable updates."
|
|
33
|
-
)),
|
|
34
|
-
( localizeWithPath(
|
|
35
|
-
'vs/platform/update/common/update.config.contribution',
|
|
36
|
-
'manual',
|
|
28
|
+
_moduleId,
|
|
29
|
+
3,
|
|
37
30
|
"Disable automatic background update checks. Updates will be available if you manually check for updates."
|
|
38
31
|
)),
|
|
39
32
|
( localizeWithPath(
|
|
40
|
-
|
|
41
|
-
|
|
33
|
+
_moduleId,
|
|
34
|
+
4,
|
|
42
35
|
"Check for updates only on startup. Disable automatic background update checks."
|
|
43
36
|
)),
|
|
44
37
|
( localizeWithPath(
|
|
45
|
-
|
|
46
|
-
|
|
38
|
+
_moduleId,
|
|
39
|
+
5,
|
|
47
40
|
"Enable automatic update checks. Code will check for updates automatically and periodically."
|
|
48
41
|
))
|
|
49
42
|
],
|
|
@@ -57,13 +50,13 @@ configurationRegistry.registerConfiguration({
|
|
|
57
50
|
default: 'default',
|
|
58
51
|
scope: 1 ,
|
|
59
52
|
description: ( localizeWithPath(
|
|
60
|
-
|
|
61
|
-
|
|
53
|
+
_moduleId,
|
|
54
|
+
1,
|
|
62
55
|
"Configure whether you receive automatic updates. Requires a restart after change. The updates are fetched from a Microsoft online service."
|
|
63
56
|
)),
|
|
64
57
|
deprecationMessage: ( localizeWithPath(
|
|
65
|
-
|
|
66
|
-
|
|
58
|
+
_moduleId,
|
|
59
|
+
6,
|
|
67
60
|
"This setting is deprecated, please use '{0}' instead.",
|
|
68
61
|
'update.mode'
|
|
69
62
|
))
|
|
@@ -72,14 +65,10 @@ configurationRegistry.registerConfiguration({
|
|
|
72
65
|
type: 'boolean',
|
|
73
66
|
default: true,
|
|
74
67
|
scope: 1 ,
|
|
75
|
-
title: ( localizeWithPath(
|
|
76
|
-
'vs/platform/update/common/update.config.contribution',
|
|
77
|
-
'enableWindowsBackgroundUpdatesTitle',
|
|
78
|
-
"Enable Background Updates on Windows"
|
|
79
|
-
)),
|
|
68
|
+
title: ( localizeWithPath(_moduleId, 7, "Enable Background Updates on Windows")),
|
|
80
69
|
description: ( localizeWithPath(
|
|
81
|
-
|
|
82
|
-
|
|
70
|
+
_moduleId,
|
|
71
|
+
8,
|
|
83
72
|
"Enable to download and install new VS Code versions in the background on Windows."
|
|
84
73
|
)),
|
|
85
74
|
included: isWindows && !isWeb
|
|
@@ -89,8 +78,8 @@ configurationRegistry.registerConfiguration({
|
|
|
89
78
|
default: true,
|
|
90
79
|
scope: 1 ,
|
|
91
80
|
description: ( localizeWithPath(
|
|
92
|
-
|
|
93
|
-
|
|
81
|
+
_moduleId,
|
|
82
|
+
9,
|
|
94
83
|
"Show Release Notes after an update. The Release Notes are fetched from a Microsoft online service."
|
|
95
84
|
)),
|
|
96
85
|
tags: ['usesOnlineServices']
|
|
@@ -10,6 +10,7 @@ import { ActionViewItem } from 'vscode/vscode/vs/base/browser/ui/actionbar/actio
|
|
|
10
10
|
import { ITelemetryService } from 'vscode/vscode/vs/platform/telemetry/common/telemetry.service';
|
|
11
11
|
import { IClipboardService } from 'vscode/vscode/vs/platform/clipboard/common/clipboardService.service';
|
|
12
12
|
|
|
13
|
+
const _moduleId = "vs/workbench/contrib/markdown/browser/markdownSettingRenderer";
|
|
13
14
|
const codeSettingRegex = /^<code (codesetting)="([^\s"\:]+)(?::([^"]+))?">/;
|
|
14
15
|
let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
15
16
|
constructor(_configurationService, _contextMenuService, _preferencesService, _telemetryService, _clipboardService) {
|
|
@@ -18,14 +19,14 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
18
19
|
this._preferencesService = _preferencesService;
|
|
19
20
|
this._telemetryService = _telemetryService;
|
|
20
21
|
this._clipboardService = _clipboardService;
|
|
21
|
-
this._updatedSettings = ( new Map());
|
|
22
|
-
this._encounteredSettings = ( new Map());
|
|
23
|
-
this._featuredSettings = ( new Map());
|
|
22
|
+
this._updatedSettings = ( (new Map()));
|
|
23
|
+
this._encounteredSettings = ( (new Map()));
|
|
24
|
+
this._featuredSettings = ( (new Map()));
|
|
24
25
|
this.settingsGroups = undefined;
|
|
25
|
-
this._defaultSettings = ( new DefaultSettings([], 2 ));
|
|
26
|
+
this._defaultSettings = ( (new DefaultSettings([], 2 )));
|
|
26
27
|
}
|
|
27
28
|
get featuredSettingStates() {
|
|
28
|
-
const result = ( new Map());
|
|
29
|
+
const result = ( (new Map()));
|
|
29
30
|
for (const [settingId, value] of this._featuredSettings) {
|
|
30
31
|
result.set(settingId, this._configurationService.getValue(settingId) === value);
|
|
31
32
|
}
|
|
@@ -51,7 +52,7 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
51
52
|
if (!this.settingsGroups) {
|
|
52
53
|
this.settingsGroups = this._defaultSettings.getSettingsGroups();
|
|
53
54
|
}
|
|
54
|
-
if (( this._encounteredSettings.has(settingId))) {
|
|
55
|
+
if (( (this._encounteredSettings.has(settingId)))) {
|
|
55
56
|
return this._encounteredSettings.get(settingId);
|
|
56
57
|
}
|
|
57
58
|
for (const group of this.settingsGroups) {
|
|
@@ -93,17 +94,13 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
93
94
|
}
|
|
94
95
|
viewInSettingsMessage(settingId, alreadyDisplayed) {
|
|
95
96
|
if (alreadyDisplayed) {
|
|
96
|
-
return ( localizeWithPath(
|
|
97
|
-
'vs/workbench/contrib/markdown/browser/markdownSettingRenderer',
|
|
98
|
-
'viewInSettings',
|
|
99
|
-
"View in Settings"
|
|
100
|
-
));
|
|
97
|
+
return ( localizeWithPath(_moduleId, 0, "View in Settings"));
|
|
101
98
|
}
|
|
102
99
|
else {
|
|
103
100
|
const displayName = settingKeyToDisplayFormat(settingId);
|
|
104
101
|
return ( localizeWithPath(
|
|
105
|
-
|
|
106
|
-
|
|
102
|
+
_moduleId,
|
|
103
|
+
1,
|
|
107
104
|
"View \"{0}: {1}\" in Settings",
|
|
108
105
|
displayName.category,
|
|
109
106
|
displayName.label
|
|
@@ -113,8 +110,8 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
113
110
|
restorePreviousSettingMessage(settingId) {
|
|
114
111
|
const displayName = settingKeyToDisplayFormat(settingId);
|
|
115
112
|
return ( localizeWithPath(
|
|
116
|
-
|
|
117
|
-
|
|
113
|
+
_moduleId,
|
|
114
|
+
2,
|
|
118
115
|
"Restore value of \"{0}: {1}\"",
|
|
119
116
|
displayName.category,
|
|
120
117
|
displayName.label
|
|
@@ -128,8 +125,8 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
128
125
|
const displayName = settingKeyToDisplayFormat(setting.key);
|
|
129
126
|
if (booleanValue) {
|
|
130
127
|
return ( localizeWithPath(
|
|
131
|
-
|
|
132
|
-
|
|
128
|
+
_moduleId,
|
|
129
|
+
3,
|
|
133
130
|
"Enable \"{0}: {1}\"",
|
|
134
131
|
displayName.category,
|
|
135
132
|
displayName.label
|
|
@@ -137,8 +134,8 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
137
134
|
}
|
|
138
135
|
else {
|
|
139
136
|
return ( localizeWithPath(
|
|
140
|
-
|
|
141
|
-
|
|
137
|
+
_moduleId,
|
|
138
|
+
4,
|
|
142
139
|
"Disable \"{0}: {1}\"",
|
|
143
140
|
displayName.category,
|
|
144
141
|
displayName.label
|
|
@@ -152,8 +149,8 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
152
149
|
}
|
|
153
150
|
const displayName = settingKeyToDisplayFormat(setting.key);
|
|
154
151
|
return ( localizeWithPath(
|
|
155
|
-
|
|
156
|
-
|
|
152
|
+
_moduleId,
|
|
153
|
+
5,
|
|
157
154
|
"Set \"{0}: {1}\" to \"{2}\"",
|
|
158
155
|
displayName.category,
|
|
159
156
|
displayName.label,
|
|
@@ -167,8 +164,8 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
167
164
|
}
|
|
168
165
|
const displayName = settingKeyToDisplayFormat(setting.key);
|
|
169
166
|
return ( localizeWithPath(
|
|
170
|
-
|
|
171
|
-
|
|
167
|
+
_moduleId,
|
|
168
|
+
6,
|
|
172
169
|
"Set \"{0}: {1}\" to {2}",
|
|
173
170
|
displayName.category,
|
|
174
171
|
displayName.label,
|
|
@@ -177,11 +174,7 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
177
174
|
}
|
|
178
175
|
renderSetting(setting, newValue) {
|
|
179
176
|
const href = this.settingToUriString(setting.key, newValue);
|
|
180
|
-
const title = ( localizeWithPath(
|
|
181
|
-
'vs/workbench/contrib/markdown/browser/markdownSettingRenderer',
|
|
182
|
-
'changeSettingTitle',
|
|
183
|
-
"View or change setting"
|
|
184
|
-
));
|
|
177
|
+
const title = ( localizeWithPath(_moduleId, 7, "View or change setting"));
|
|
185
178
|
return `<code tabindex="0"><a href="${href}" class="codesetting" title="${title}" aria-role="button"><svg width="14" height="14" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg" fill="currentColor"><path d="M9.1 4.4L8.6 2H7.4l-.5 2.4-.7.3-2-1.3-.9.8 1.3 2-.2.7-2.4.5v1.2l2.4.5.3.8-1.3 2 .8.8 2-1.3.8.3.4 2.3h1.2l.5-2.4.8-.3 2 1.3.8-.8-1.3-2 .3-.8 2.3-.4V7.4l-2.4-.5-.3-.8 1.3-2-.8-.8-2 1.3-.7-.2zM9.4 1l.5 2.4L12 2.1l2 2-1.4 2.1 2.4.4v2.8l-2.4.5L14 12l-2 2-2.1-1.4-.5 2.4H6.6l-.5-2.4L4 13.9l-2-2 1.4-2.1L1 9.4V6.6l2.4-.5L2.1 4l2-2 2.1 1.4.4-2.4h2.8zm.6 7c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zM8 9c.6 0 1-.4 1-1s-.4-1-1-1-1 .4-1 1 .4 1 1 1z"/></svg>
|
|
186
179
|
<span class="separator"></span>
|
|
187
180
|
<span class="setting-name">${setting.key}</span>
|
|
@@ -216,7 +209,7 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
216
209
|
const settingId = uri.authority;
|
|
217
210
|
const newSettingValue = this.parseValue(uri.authority, uri.path.substring(1));
|
|
218
211
|
const currentSettingValue = this._configurationService.inspect(settingId).userValue;
|
|
219
|
-
if ((newSettingValue !== undefined) && newSettingValue === currentSettingValue && ( this._updatedSettings.has(settingId))) {
|
|
212
|
+
if ((newSettingValue !== undefined) && newSettingValue === currentSettingValue && ( (this._updatedSettings.has(settingId)))) {
|
|
220
213
|
const restoreMessage = this.restorePreviousSettingMessage(settingId);
|
|
221
214
|
actions.push({
|
|
222
215
|
class: undefined,
|
|
@@ -260,16 +253,8 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
260
253
|
class: undefined,
|
|
261
254
|
enabled: true,
|
|
262
255
|
id: 'copySettingId',
|
|
263
|
-
tooltip: ( localizeWithPath(
|
|
264
|
-
|
|
265
|
-
'copySettingId',
|
|
266
|
-
"Copy Setting ID"
|
|
267
|
-
)),
|
|
268
|
-
label: ( localizeWithPath(
|
|
269
|
-
'vs/workbench/contrib/markdown/browser/markdownSettingRenderer',
|
|
270
|
-
'copySettingId',
|
|
271
|
-
"Copy Setting ID"
|
|
272
|
-
)),
|
|
256
|
+
tooltip: ( localizeWithPath(_moduleId, 8, "Copy Setting ID")),
|
|
257
|
+
label: ( localizeWithPath(_moduleId, 8, "Copy Setting ID")),
|
|
273
258
|
run: () => {
|
|
274
259
|
this._clipboardService.writeText(settingId);
|
|
275
260
|
}
|
|
@@ -285,7 +270,9 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
285
270
|
getAnchor: () => ({ x, y }),
|
|
286
271
|
getActions: () => actions,
|
|
287
272
|
getActionViewItem: (action) => {
|
|
288
|
-
return (
|
|
273
|
+
return (
|
|
274
|
+
(new ActionViewItem(action, action, { label: true }))
|
|
275
|
+
);
|
|
289
276
|
},
|
|
290
277
|
});
|
|
291
278
|
}
|
|
@@ -298,12 +285,12 @@ let SimpleSettingRenderer = class SimpleSettingRenderer {
|
|
|
298
285
|
}
|
|
299
286
|
}
|
|
300
287
|
};
|
|
301
|
-
SimpleSettingRenderer = ( __decorate([
|
|
302
|
-
( __param(0, IConfigurationService)),
|
|
303
|
-
( __param(1, IContextMenuService)),
|
|
304
|
-
( __param(2, IPreferencesService)),
|
|
305
|
-
( __param(3, ITelemetryService)),
|
|
306
|
-
( __param(4, IClipboardService))
|
|
307
|
-
], SimpleSettingRenderer));
|
|
288
|
+
SimpleSettingRenderer = ( (__decorate([
|
|
289
|
+
( (__param(0, IConfigurationService))),
|
|
290
|
+
( (__param(1, IContextMenuService))),
|
|
291
|
+
( (__param(2, IPreferencesService))),
|
|
292
|
+
( (__param(3, ITelemetryService))),
|
|
293
|
+
( (__param(4, IClipboardService)))
|
|
294
|
+
], SimpleSettingRenderer)));
|
|
308
295
|
|
|
309
296
|
export { SimpleSettingRenderer };
|
|
@@ -31,6 +31,7 @@ import { IInstantiationService } from 'vscode/vscode/vs/platform/instantiation/c
|
|
|
31
31
|
import { Schemas } from 'vscode/vscode/vs/base/common/network';
|
|
32
32
|
import { ICodeEditorService } from 'vscode/vscode/vs/editor/browser/services/codeEditorService';
|
|
33
33
|
|
|
34
|
+
const _moduleId = "vs/workbench/contrib/update/browser/releaseNotesEditor";
|
|
34
35
|
let ReleaseNotesManager = class ReleaseNotesManager {
|
|
35
36
|
constructor(_environmentService, _keybindingService, _languageService, _openerService, _requestService, _configurationService, _editorService, _editorGroupService, _codeEditorService, _webviewWorkbenchService, _extensionService, _productService, _instantiationService) {
|
|
36
37
|
this._environmentService = _environmentService;
|
|
@@ -46,9 +47,9 @@ let ReleaseNotesManager = class ReleaseNotesManager {
|
|
|
46
47
|
this._extensionService = _extensionService;
|
|
47
48
|
this._productService = _productService;
|
|
48
49
|
this._instantiationService = _instantiationService;
|
|
49
|
-
this._releaseNotesCache = ( new Map());
|
|
50
|
+
this._releaseNotesCache = ( (new Map()));
|
|
50
51
|
this._currentReleaseNotes = undefined;
|
|
51
|
-
this.disposables = ( new DisposableStore());
|
|
52
|
+
this.disposables = ( (new DisposableStore()));
|
|
52
53
|
TokenizationRegistry.onDidChange(() => {
|
|
53
54
|
return this.updateHtml();
|
|
54
55
|
});
|
|
@@ -69,12 +70,7 @@ let ReleaseNotesManager = class ReleaseNotesManager {
|
|
|
69
70
|
const releaseNoteText = await this.loadReleaseNotes(version, useCurrentFile);
|
|
70
71
|
this._lastText = releaseNoteText;
|
|
71
72
|
const html = await this.renderBody(releaseNoteText);
|
|
72
|
-
const title = ( localizeWithPath(
|
|
73
|
-
'vs/workbench/contrib/update/browser/releaseNotesEditor',
|
|
74
|
-
'releaseNotesInputName',
|
|
75
|
-
"Release Notes: {0}",
|
|
76
|
-
version
|
|
77
|
-
));
|
|
73
|
+
const title = ( localizeWithPath(_moduleId, 0, "Release Notes: {0}", version));
|
|
78
74
|
const activeEditorPane = this._editorService.activeEditorPane;
|
|
79
75
|
if (this._currentReleaseNotes) {
|
|
80
76
|
this._currentReleaseNotes.setName(title);
|
|
@@ -95,8 +91,8 @@ let ReleaseNotesManager = class ReleaseNotesManager {
|
|
|
95
91
|
},
|
|
96
92
|
extension: undefined
|
|
97
93
|
}, 'releaseNotes', title, { group: ACTIVE_GROUP, preserveFocus: false });
|
|
98
|
-
this._currentReleaseNotes.webview.onDidClickLink(uri => this.onDidClickLink(( URI.parse(uri))));
|
|
99
|
-
const disposables = ( new DisposableStore());
|
|
94
|
+
this._currentReleaseNotes.webview.onDidClickLink(uri => this.onDidClickLink(( (URI.parse(uri)))));
|
|
95
|
+
const disposables = ( (new DisposableStore()));
|
|
100
96
|
disposables.add(this._currentReleaseNotes.webview.onMessage(e => {
|
|
101
97
|
if (e.message.type === 'showReleaseNotes') {
|
|
102
98
|
this._configurationService.updateValue('update.showReleaseNotes', e.message.value);
|
|
@@ -104,7 +100,7 @@ let ReleaseNotesManager = class ReleaseNotesManager {
|
|
|
104
100
|
else if (e.message.type === 'clickSetting') {
|
|
105
101
|
const x = this._currentReleaseNotes?.webview.container.offsetLeft + e.message.value.x;
|
|
106
102
|
const y = this._currentReleaseNotes?.webview.container.offsetTop + e.message.value.y;
|
|
107
|
-
this._simpleSettingRenderer.updateSetting(( URI.parse(e.message.value.uri)), x, y);
|
|
103
|
+
this._simpleSettingRenderer.updateSetting(( (URI.parse(e.message.value.uri))), x, y);
|
|
108
104
|
}
|
|
109
105
|
}));
|
|
110
106
|
disposables.add(this._currentReleaseNotes.onWillDispose(() => {
|
|
@@ -118,16 +114,12 @@ let ReleaseNotesManager = class ReleaseNotesManager {
|
|
|
118
114
|
async loadReleaseNotes(version, useCurrentFile) {
|
|
119
115
|
const match = /^(\d+\.\d+)\./.exec(version);
|
|
120
116
|
if (!match) {
|
|
121
|
-
throw new Error('not found');
|
|
117
|
+
throw ( (new Error('not found')));
|
|
122
118
|
}
|
|
123
119
|
const versionLabel = match[1].replace(/\./g, '_');
|
|
124
120
|
const baseUrl = 'https://code.visualstudio.com/raw';
|
|
125
121
|
const url = `${baseUrl}/v${versionLabel}.md`;
|
|
126
|
-
const unassigned = ( localizeWithPath(
|
|
127
|
-
'vs/workbench/contrib/update/browser/releaseNotesEditor',
|
|
128
|
-
'unassigned',
|
|
129
|
-
"unassigned"
|
|
130
|
-
));
|
|
122
|
+
const unassigned = ( localizeWithPath(_moduleId, 1, "unassigned"));
|
|
131
123
|
const escapeMdHtml = (text) => {
|
|
132
124
|
return escape(text).replace(/\\/g, '\\\\');
|
|
133
125
|
};
|
|
@@ -176,17 +168,17 @@ let ReleaseNotesManager = class ReleaseNotesManager {
|
|
|
176
168
|
}
|
|
177
169
|
}
|
|
178
170
|
catch {
|
|
179
|
-
throw new Error('Failed to fetch release notes');
|
|
171
|
+
throw ( (new Error('Failed to fetch release notes')));
|
|
180
172
|
}
|
|
181
173
|
if (!text || !/^#\s/.test(text)) {
|
|
182
|
-
throw new Error('Invalid release notes');
|
|
174
|
+
throw ( (new Error('Invalid release notes')));
|
|
183
175
|
}
|
|
184
176
|
return patchKeybindings(text);
|
|
185
177
|
};
|
|
186
178
|
if (useCurrentFile) {
|
|
187
179
|
return fetchReleaseNotes();
|
|
188
180
|
}
|
|
189
|
-
if (!( this._releaseNotesCache.has(version))) {
|
|
181
|
+
if (!( (this._releaseNotesCache.has(version)))) {
|
|
190
182
|
this._releaseNotesCache.set(version, (async () => {
|
|
191
183
|
try {
|
|
192
184
|
return await fetchReleaseNotes();
|
|
@@ -334,11 +326,7 @@ let ReleaseNotesManager = class ReleaseNotesManager {
|
|
|
334
326
|
|
|
335
327
|
const label = document.createElement('label');
|
|
336
328
|
label.htmlFor = 'showReleaseNotes';
|
|
337
|
-
label.textContent = '${( localizeWithPath(
|
|
338
|
-
'vs/workbench/contrib/update/browser/releaseNotesEditor',
|
|
339
|
-
'showOnUpdate',
|
|
340
|
-
"Show release notes after an update"
|
|
341
|
-
))}';
|
|
329
|
+
label.textContent = '${( localizeWithPath(_moduleId, 2, "Show release notes after an update"))}';
|
|
342
330
|
container.appendChild(label);
|
|
343
331
|
|
|
344
332
|
const beforeElement = document.querySelector("body > h1")?.nextElementSibling;
|
|
@@ -396,20 +384,20 @@ let ReleaseNotesManager = class ReleaseNotesManager {
|
|
|
396
384
|
}
|
|
397
385
|
}
|
|
398
386
|
};
|
|
399
|
-
ReleaseNotesManager = ( __decorate([
|
|
400
|
-
( __param(0, IEnvironmentService)),
|
|
401
|
-
( __param(1, IKeybindingService)),
|
|
402
|
-
( __param(2, ILanguageService)),
|
|
403
|
-
( __param(3, IOpenerService)),
|
|
404
|
-
( __param(4, IRequestService)),
|
|
405
|
-
( __param(5, IConfigurationService)),
|
|
406
|
-
( __param(6, IEditorService)),
|
|
407
|
-
( __param(7, IEditorGroupsService)),
|
|
408
|
-
( __param(8, ICodeEditorService)),
|
|
409
|
-
( __param(9, IWebviewWorkbenchService)),
|
|
410
|
-
( __param(10, IExtensionService)),
|
|
411
|
-
( __param(11, IProductService)),
|
|
412
|
-
( __param(12, IInstantiationService))
|
|
413
|
-
], ReleaseNotesManager));
|
|
387
|
+
ReleaseNotesManager = ( (__decorate([
|
|
388
|
+
( (__param(0, IEnvironmentService))),
|
|
389
|
+
( (__param(1, IKeybindingService))),
|
|
390
|
+
( (__param(2, ILanguageService))),
|
|
391
|
+
( (__param(3, IOpenerService))),
|
|
392
|
+
( (__param(4, IRequestService))),
|
|
393
|
+
( (__param(5, IConfigurationService))),
|
|
394
|
+
( (__param(6, IEditorService))),
|
|
395
|
+
( (__param(7, IEditorGroupsService))),
|
|
396
|
+
( (__param(8, ICodeEditorService))),
|
|
397
|
+
( (__param(9, IWebviewWorkbenchService))),
|
|
398
|
+
( (__param(10, IExtensionService))),
|
|
399
|
+
( (__param(11, IProductService))),
|
|
400
|
+
( (__param(12, IInstantiationService)))
|
|
401
|
+
], ReleaseNotesManager)));
|
|
414
402
|
|
|
415
403
|
export { ReleaseNotesManager };
|
|
@@ -18,7 +18,8 @@ import { IProductService } from 'vscode/vscode/vs/platform/product/common/produc
|
|
|
18
18
|
import { URI } from 'vscode/vscode/vs/base/common/uri';
|
|
19
19
|
import { ContextKeyExpr } from 'vscode/vscode/vs/platform/contextkey/common/contextkey';
|
|
20
20
|
|
|
21
|
-
const
|
|
21
|
+
const _moduleId = "vs/workbench/contrib/update/browser/update.contribution";
|
|
22
|
+
const workbench = ( (Registry.as(Extensions.Workbench)));
|
|
22
23
|
workbench.registerWorkbenchContribution(ProductContribution, 3 );
|
|
23
24
|
workbench.registerWorkbenchContribution(UpdateContribution, 3 );
|
|
24
25
|
workbench.registerWorkbenchContribution(SwitchProductQualityContribution, 3 );
|
|
@@ -27,16 +28,8 @@ class ShowCurrentReleaseNotesAction extends Action2 {
|
|
|
27
28
|
super({
|
|
28
29
|
id: ShowCurrentReleaseNotesActionId,
|
|
29
30
|
title: {
|
|
30
|
-
...( localize2WithPath(
|
|
31
|
-
|
|
32
|
-
'showReleaseNotes',
|
|
33
|
-
"Show Release Notes"
|
|
34
|
-
)),
|
|
35
|
-
mnemonicTitle: ( localizeWithPath(
|
|
36
|
-
'vs/workbench/contrib/update/browser/update.contribution',
|
|
37
|
-
{ key: 'mshowReleaseNotes', comment: ['&& denotes a mnemonic'] },
|
|
38
|
-
"Show &&Release Notes"
|
|
39
|
-
)),
|
|
31
|
+
...( localize2WithPath(_moduleId, 0, "Show Release Notes")),
|
|
32
|
+
mnemonicTitle: ( localizeWithPath(_moduleId, 1, "Show &&Release Notes")),
|
|
40
33
|
},
|
|
41
34
|
category: { value: product$1.nameShort, original: product$1.nameShort },
|
|
42
35
|
f1: true,
|
|
@@ -58,10 +51,15 @@ class ShowCurrentReleaseNotesAction extends Action2 {
|
|
|
58
51
|
}
|
|
59
52
|
catch (err) {
|
|
60
53
|
if (productService.releaseNotesUrl) {
|
|
61
|
-
await openerService.open(( URI.parse(productService.releaseNotesUrl)));
|
|
54
|
+
await openerService.open(( (URI.parse(productService.releaseNotesUrl))));
|
|
62
55
|
}
|
|
63
56
|
else {
|
|
64
|
-
throw new Error(localizeWithPath(
|
|
57
|
+
throw ( (new Error(localizeWithPath(
|
|
58
|
+
_moduleId,
|
|
59
|
+
2,
|
|
60
|
+
"This version of {0} does not have release notes online",
|
|
61
|
+
productService.nameLong
|
|
62
|
+
))));
|
|
65
63
|
}
|
|
66
64
|
}
|
|
67
65
|
}
|
|
@@ -71,22 +69,10 @@ class ShowCurrentReleaseNotesFromCurrentFileAction extends Action2 {
|
|
|
71
69
|
super({
|
|
72
70
|
id: ShowCurrentReleaseNotesFromCurrentFileActionId,
|
|
73
71
|
title: {
|
|
74
|
-
...( localize2WithPath(
|
|
75
|
-
|
|
76
|
-
'showReleaseNotesCurrentFile',
|
|
77
|
-
"Open Current File as Release Notes"
|
|
78
|
-
)),
|
|
79
|
-
mnemonicTitle: ( localizeWithPath(
|
|
80
|
-
'vs/workbench/contrib/update/browser/update.contribution',
|
|
81
|
-
{ key: 'mshowReleaseNotes', comment: ['&& denotes a mnemonic'] },
|
|
82
|
-
"Show &&Release Notes"
|
|
83
|
-
)),
|
|
72
|
+
...( localize2WithPath(_moduleId, 3, "Open Current File as Release Notes")),
|
|
73
|
+
mnemonicTitle: ( localizeWithPath(_moduleId, 1, "Show &&Release Notes")),
|
|
84
74
|
},
|
|
85
|
-
category: ( localize2WithPath(
|
|
86
|
-
'vs/workbench/contrib/update/browser/update.contribution',
|
|
87
|
-
'developerCategory',
|
|
88
|
-
"Developer"
|
|
89
|
-
)),
|
|
75
|
+
category: ( localize2WithPath(_moduleId, 4, "Developer")),
|
|
90
76
|
f1: true,
|
|
91
77
|
precondition: RELEASE_NOTES_URL
|
|
92
78
|
});
|
|
@@ -98,7 +84,9 @@ class ShowCurrentReleaseNotesFromCurrentFileAction extends Action2 {
|
|
|
98
84
|
await showReleaseNotesInEditor(instantiationService, productService.version, true);
|
|
99
85
|
}
|
|
100
86
|
catch (err) {
|
|
101
|
-
throw new Error(
|
|
87
|
+
throw ( (new Error(
|
|
88
|
+
localizeWithPath(_moduleId, 5, "Cannot open the current file as Release Notes")
|
|
89
|
+
)));
|
|
102
90
|
}
|
|
103
91
|
}
|
|
104
92
|
}
|
|
@@ -108,14 +96,10 @@ class CheckForUpdateAction extends Action2 {
|
|
|
108
96
|
constructor() {
|
|
109
97
|
super({
|
|
110
98
|
id: 'update.checkForUpdate',
|
|
111
|
-
title: ( localize2WithPath(
|
|
112
|
-
'vs/workbench/contrib/update/browser/update.contribution',
|
|
113
|
-
'checkForUpdates',
|
|
114
|
-
'Check for Updates...'
|
|
115
|
-
)),
|
|
99
|
+
title: ( localize2WithPath(_moduleId, 6, 'Check for Updates...')),
|
|
116
100
|
category: { value: product$1.nameShort, original: product$1.nameShort },
|
|
117
101
|
f1: true,
|
|
118
|
-
precondition: ( CONTEXT_UPDATE_STATE.isEqualTo("idle" )),
|
|
102
|
+
precondition: ( (CONTEXT_UPDATE_STATE.isEqualTo("idle" ))),
|
|
119
103
|
});
|
|
120
104
|
}
|
|
121
105
|
async run(accessor) {
|
|
@@ -127,14 +111,10 @@ class DownloadUpdateAction extends Action2 {
|
|
|
127
111
|
constructor() {
|
|
128
112
|
super({
|
|
129
113
|
id: 'update.downloadUpdate',
|
|
130
|
-
title: ( localize2WithPath(
|
|
131
|
-
'vs/workbench/contrib/update/browser/update.contribution',
|
|
132
|
-
'downloadUpdate',
|
|
133
|
-
'Download Update'
|
|
134
|
-
)),
|
|
114
|
+
title: ( localize2WithPath(_moduleId, 7, 'Download Update')),
|
|
135
115
|
category: { value: product$1.nameShort, original: product$1.nameShort },
|
|
136
116
|
f1: true,
|
|
137
|
-
precondition: ( CONTEXT_UPDATE_STATE.isEqualTo("available for download" ))
|
|
117
|
+
precondition: ( (CONTEXT_UPDATE_STATE.isEqualTo("available for download" )))
|
|
138
118
|
});
|
|
139
119
|
}
|
|
140
120
|
async run(accessor) {
|
|
@@ -145,14 +125,10 @@ class InstallUpdateAction extends Action2 {
|
|
|
145
125
|
constructor() {
|
|
146
126
|
super({
|
|
147
127
|
id: 'update.installUpdate',
|
|
148
|
-
title: ( localize2WithPath(
|
|
149
|
-
'vs/workbench/contrib/update/browser/update.contribution',
|
|
150
|
-
'installUpdate',
|
|
151
|
-
'Install Update'
|
|
152
|
-
)),
|
|
128
|
+
title: ( localize2WithPath(_moduleId, 8, 'Install Update')),
|
|
153
129
|
category: { value: product$1.nameShort, original: product$1.nameShort },
|
|
154
130
|
f1: true,
|
|
155
|
-
precondition: ( CONTEXT_UPDATE_STATE.isEqualTo("downloaded" ))
|
|
131
|
+
precondition: ( (CONTEXT_UPDATE_STATE.isEqualTo("downloaded" )))
|
|
156
132
|
});
|
|
157
133
|
}
|
|
158
134
|
async run(accessor) {
|
|
@@ -163,14 +139,10 @@ class RestartToUpdateAction extends Action2 {
|
|
|
163
139
|
constructor() {
|
|
164
140
|
super({
|
|
165
141
|
id: 'update.restartToUpdate',
|
|
166
|
-
title: ( localize2WithPath(
|
|
167
|
-
'vs/workbench/contrib/update/browser/update.contribution',
|
|
168
|
-
'restartToUpdate',
|
|
169
|
-
'Restart to Update'
|
|
170
|
-
)),
|
|
142
|
+
title: ( localize2WithPath(_moduleId, 9, 'Restart to Update')),
|
|
171
143
|
category: { value: product$1.nameShort, original: product$1.nameShort },
|
|
172
144
|
f1: true,
|
|
173
|
-
precondition: ( CONTEXT_UPDATE_STATE.isEqualTo("ready" ))
|
|
145
|
+
precondition: ( (CONTEXT_UPDATE_STATE.isEqualTo("ready" )))
|
|
174
146
|
});
|
|
175
147
|
}
|
|
176
148
|
async run(accessor) {
|
|
@@ -182,17 +154,12 @@ class DownloadAction extends Action2 {
|
|
|
182
154
|
constructor() {
|
|
183
155
|
super({
|
|
184
156
|
id: DownloadAction.ID,
|
|
185
|
-
title: ( localize2WithPath(
|
|
186
|
-
|
|
187
|
-
'openDownloadPage',
|
|
188
|
-
"Download {0}",
|
|
189
|
-
product$1.nameLong
|
|
190
|
-
)),
|
|
191
|
-
precondition: ( ContextKeyExpr.and(IsWebContext, DOWNLOAD_URL)),
|
|
157
|
+
title: ( localize2WithPath(_moduleId, 10, "Download {0}", product$1.nameLong)),
|
|
158
|
+
precondition: ( (ContextKeyExpr.and(IsWebContext, DOWNLOAD_URL))),
|
|
192
159
|
f1: true,
|
|
193
160
|
menu: [{
|
|
194
161
|
id: MenuId.StatusBarWindowIndicatorMenu,
|
|
195
|
-
when: ( ContextKeyExpr.and(IsWebContext, DOWNLOAD_URL))
|
|
162
|
+
when: ( (ContextKeyExpr.and(IsWebContext, DOWNLOAD_URL)))
|
|
196
163
|
}]
|
|
197
164
|
});
|
|
198
165
|
}
|
|
@@ -200,7 +167,7 @@ class DownloadAction extends Action2 {
|
|
|
200
167
|
const productService = accessor.get(IProductService);
|
|
201
168
|
const openerService = accessor.get(IOpenerService);
|
|
202
169
|
if (productService.downloadUrl) {
|
|
203
|
-
openerService.open(( URI.parse(productService.downloadUrl)));
|
|
170
|
+
openerService.open(( (URI.parse(productService.downloadUrl))));
|
|
204
171
|
}
|
|
205
172
|
}
|
|
206
173
|
}
|
|
@@ -214,32 +181,20 @@ if (isWindows) {
|
|
|
214
181
|
constructor() {
|
|
215
182
|
super({
|
|
216
183
|
id: '_update.applyupdate',
|
|
217
|
-
title: ( localize2WithPath(
|
|
218
|
-
'vs/workbench/contrib/update/browser/update.contribution',
|
|
219
|
-
'applyUpdate',
|
|
220
|
-
'Apply Update...'
|
|
221
|
-
)),
|
|
184
|
+
title: ( localize2WithPath(_moduleId, 11, 'Apply Update...')),
|
|
222
185
|
category: Categories.Developer,
|
|
223
186
|
f1: true,
|
|
224
|
-
precondition: ( CONTEXT_UPDATE_STATE.isEqualTo("idle" ))
|
|
187
|
+
precondition: ( (CONTEXT_UPDATE_STATE.isEqualTo("idle" )))
|
|
225
188
|
});
|
|
226
189
|
}
|
|
227
190
|
async run(accessor) {
|
|
228
191
|
const updateService = accessor.get(IUpdateService);
|
|
229
192
|
const fileDialogService = accessor.get(IFileDialogService);
|
|
230
193
|
const updatePath = await fileDialogService.showOpenDialog({
|
|
231
|
-
title: ( localizeWithPath(
|
|
232
|
-
'vs/workbench/contrib/update/browser/update.contribution',
|
|
233
|
-
'pickUpdate',
|
|
234
|
-
"Apply Update"
|
|
235
|
-
)),
|
|
194
|
+
title: ( localizeWithPath(_moduleId, 12, "Apply Update")),
|
|
236
195
|
filters: [{ name: 'Setup', extensions: ['exe'] }],
|
|
237
196
|
canSelectFiles: true,
|
|
238
|
-
openLabel: mnemonicButtonLabel(( localizeWithPath(
|
|
239
|
-
'vs/workbench/contrib/update/browser/update.contribution',
|
|
240
|
-
{ key: 'updateButton', comment: ['&& denotes a mnemonic'] },
|
|
241
|
-
"&&Update"
|
|
242
|
-
)))
|
|
197
|
+
openLabel: mnemonicButtonLabel(( localizeWithPath(_moduleId, 13, "&&Update")))
|
|
243
198
|
});
|
|
244
199
|
if (!updatePath || !updatePath[0]) {
|
|
245
200
|
return;
|
|
@@ -30,10 +30,11 @@ import { Event } from 'vscode/vscode/vs/base/common/event';
|
|
|
30
30
|
import { Action } from 'vscode/vscode/vs/base/common/actions';
|
|
31
31
|
|
|
32
32
|
var ProductContribution_1;
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
const
|
|
36
|
-
const
|
|
33
|
+
const _moduleId = "vs/workbench/contrib/update/browser/update";
|
|
34
|
+
const CONTEXT_UPDATE_STATE = ( (new RawContextKey('updateState', "uninitialized" )));
|
|
35
|
+
const MAJOR_MINOR_UPDATE_AVAILABLE = ( (new RawContextKey('majorMinorUpdateAvailable', false)));
|
|
36
|
+
const RELEASE_NOTES_URL = ( (new RawContextKey('releaseNotesUrl', '')));
|
|
37
|
+
const DOWNLOAD_URL = ( (new RawContextKey('downloadUrl', '')));
|
|
37
38
|
let releaseNotesManager = undefined;
|
|
38
39
|
function showReleaseNotesInEditor(instantiationService, version, useCurrentFile) {
|
|
39
40
|
if (!releaseNotesManager) {
|
|
@@ -45,11 +46,16 @@ async function openLatestReleaseNotesInBrowser(accessor) {
|
|
|
45
46
|
const openerService = accessor.get(IOpenerService);
|
|
46
47
|
const productService = accessor.get(IProductService);
|
|
47
48
|
if (productService.releaseNotesUrl) {
|
|
48
|
-
const uri = ( URI.parse(productService.releaseNotesUrl));
|
|
49
|
+
const uri = ( (URI.parse(productService.releaseNotesUrl)));
|
|
49
50
|
await openerService.open(uri);
|
|
50
51
|
}
|
|
51
52
|
else {
|
|
52
|
-
throw new Error(localizeWithPath(
|
|
53
|
+
throw ( (new Error(localizeWithPath(
|
|
54
|
+
_moduleId,
|
|
55
|
+
0,
|
|
56
|
+
"This version of {0} does not have release notes online",
|
|
57
|
+
productService.nameLong
|
|
58
|
+
))));
|
|
53
59
|
}
|
|
54
60
|
}
|
|
55
61
|
async function showReleaseNotes(accessor, version) {
|
|
@@ -62,7 +68,7 @@ async function showReleaseNotes(accessor, version) {
|
|
|
62
68
|
await instantiationService.invokeFunction(openLatestReleaseNotesInBrowser);
|
|
63
69
|
}
|
|
64
70
|
catch (err2) {
|
|
65
|
-
throw new Error(`${err.message} and ${err2.message}`);
|
|
71
|
+
throw ( (new Error(`${err.message} and ${err2.message}`)));
|
|
66
72
|
}
|
|
67
73
|
}
|
|
68
74
|
}
|
|
@@ -107,19 +113,15 @@ let ProductContribution = class ProductContribution {
|
|
|
107
113
|
showReleaseNotesInEditor(instantiationService, productService.version, false)
|
|
108
114
|
.then(undefined, () => {
|
|
109
115
|
notificationService.prompt(Severity$1.Info, ( localizeWithPath(
|
|
110
|
-
|
|
111
|
-
|
|
116
|
+
_moduleId,
|
|
117
|
+
1,
|
|
112
118
|
"Welcome to {0} v{1}! Would you like to read the Release Notes?",
|
|
113
119
|
productService.nameLong,
|
|
114
120
|
productService.version
|
|
115
121
|
)), [{
|
|
116
|
-
label: ( localizeWithPath(
|
|
117
|
-
'vs/workbench/contrib/update/browser/update',
|
|
118
|
-
'releaseNotes',
|
|
119
|
-
"Release Notes"
|
|
120
|
-
)),
|
|
122
|
+
label: ( localizeWithPath(_moduleId, 2, "Release Notes")),
|
|
121
123
|
run: () => {
|
|
122
|
-
const uri = ( URI.parse(releaseNotesUrl));
|
|
124
|
+
const uri = ( (URI.parse(releaseNotesUrl)));
|
|
123
125
|
openerService.open(uri);
|
|
124
126
|
}
|
|
125
127
|
}]);
|
|
@@ -129,17 +131,17 @@ let ProductContribution = class ProductContribution {
|
|
|
129
131
|
});
|
|
130
132
|
}
|
|
131
133
|
};
|
|
132
|
-
ProductContribution = ProductContribution_1 = ( __decorate([
|
|
133
|
-
( __param(0, IStorageService)),
|
|
134
|
-
( __param(1, IInstantiationService)),
|
|
135
|
-
( __param(2, INotificationService)),
|
|
136
|
-
( __param(3, IBrowserWorkbenchEnvironmentService)),
|
|
137
|
-
( __param(4, IOpenerService)),
|
|
138
|
-
( __param(5, IConfigurationService)),
|
|
139
|
-
( __param(6, IHostService)),
|
|
140
|
-
( __param(7, IProductService)),
|
|
141
|
-
( __param(8, IContextKeyService))
|
|
142
|
-
], ProductContribution));
|
|
134
|
+
ProductContribution = ProductContribution_1 = ( (__decorate([
|
|
135
|
+
( (__param(0, IStorageService))),
|
|
136
|
+
( (__param(1, IInstantiationService))),
|
|
137
|
+
( (__param(2, INotificationService))),
|
|
138
|
+
( (__param(3, IBrowserWorkbenchEnvironmentService))),
|
|
139
|
+
( (__param(4, IOpenerService))),
|
|
140
|
+
( (__param(5, IConfigurationService))),
|
|
141
|
+
( (__param(6, IHostService))),
|
|
142
|
+
( (__param(7, IProductService))),
|
|
143
|
+
( (__param(8, IContextKeyService)))
|
|
144
|
+
], ProductContribution)));
|
|
143
145
|
let UpdateContribution = class UpdateContribution extends Disposable {
|
|
144
146
|
constructor(storageService, instantiationService, notificationService, dialogService, updateService, activityService, contextKeyService, productService, openerService, configurationService, hostService) {
|
|
145
147
|
super();
|
|
@@ -154,7 +156,7 @@ let UpdateContribution = class UpdateContribution extends Disposable {
|
|
|
154
156
|
this.openerService = openerService;
|
|
155
157
|
this.configurationService = configurationService;
|
|
156
158
|
this.hostService = hostService;
|
|
157
|
-
this.badgeDisposable = this._register(( new MutableDisposable()));
|
|
159
|
+
this.badgeDisposable = this._register(( (new MutableDisposable())));
|
|
158
160
|
this.state = updateService.state;
|
|
159
161
|
this.updateStateContextKey = CONTEXT_UPDATE_STATE.bindTo(this.contextKeyService);
|
|
160
162
|
this.majorMinorUpdateAvailableContextKey = MAJOR_MINOR_UPDATE_AVAILABLE.bindTo(this.contextKeyService);
|
|
@@ -176,16 +178,16 @@ let UpdateContribution = class UpdateContribution extends Disposable {
|
|
|
176
178
|
this.notificationService.notify({
|
|
177
179
|
severity: Severity$1.Info,
|
|
178
180
|
message: ( localizeWithPath(
|
|
179
|
-
|
|
180
|
-
|
|
181
|
+
_moduleId,
|
|
182
|
+
3,
|
|
181
183
|
"Updates are disabled because you are running the user-scope installation of {0} as Administrator.",
|
|
182
184
|
this.productService.nameLong
|
|
183
185
|
)),
|
|
184
186
|
actions: {
|
|
185
187
|
primary: [
|
|
186
|
-
( new Action('', ( localizeWithPath(
|
|
187
|
-
|
|
188
|
-
|
|
188
|
+
( (new Action('', ( localizeWithPath(_moduleId, 4, "Learn More")), undefined, undefined, () => {
|
|
189
|
+
this.openerService.open('https://aka.ms/vscode-windows-setup');
|
|
190
|
+
})))
|
|
189
191
|
]
|
|
190
192
|
},
|
|
191
193
|
neverShowAgain: { id: 'no-updates-running-as-admin', }
|
|
@@ -220,31 +222,18 @@ let UpdateContribution = class UpdateContribution extends Disposable {
|
|
|
220
222
|
let badge = undefined;
|
|
221
223
|
let priority = undefined;
|
|
222
224
|
if (state.type === "available for download" || state.type === "downloaded" || state.type === "ready" ) {
|
|
223
|
-
badge = ( new NumberBadge(1, () => ( localizeWithPath(
|
|
224
|
-
'vs/workbench/contrib/update/browser/update',
|
|
225
|
-
'updateIsReady',
|
|
226
|
-
"New {0} update available.",
|
|
227
|
-
this.productService.nameShort
|
|
228
|
-
))));
|
|
225
|
+
badge = ( (new NumberBadge(1, () => ( localizeWithPath(_moduleId, 5, "New {0} update available.", this.productService.nameShort)))));
|
|
229
226
|
}
|
|
230
227
|
else if (state.type === "checking for updates" ) {
|
|
231
|
-
badge = ( new ProgressBadge(() => ( localizeWithPath(
|
|
232
|
-
'vs/workbench/contrib/update/browser/update',
|
|
233
|
-
'checkingForUpdates',
|
|
234
|
-
"Checking for Updates..."
|
|
235
|
-
))));
|
|
228
|
+
badge = ( (new ProgressBadge(() => ( localizeWithPath(_moduleId, 6, "Checking for Updates...")))));
|
|
236
229
|
priority = 1;
|
|
237
230
|
}
|
|
238
231
|
else if (state.type === "downloading" ) {
|
|
239
|
-
badge = ( new ProgressBadge(() => ( localizeWithPath(
|
|
240
|
-
'vs/workbench/contrib/update/browser/update',
|
|
241
|
-
'downloading',
|
|
242
|
-
"Downloading..."
|
|
243
|
-
))));
|
|
232
|
+
badge = ( (new ProgressBadge(() => ( localizeWithPath(_moduleId, 7, "Downloading...")))));
|
|
244
233
|
priority = 1;
|
|
245
234
|
}
|
|
246
235
|
else if (state.type === "updating" ) {
|
|
247
|
-
badge = ( new ProgressBadge(() => ( localizeWithPath(
|
|
236
|
+
badge = ( (new ProgressBadge(() => ( localizeWithPath(_moduleId, 8, "Updating...")))));
|
|
248
237
|
priority = 1;
|
|
249
238
|
}
|
|
250
239
|
this.badgeDisposable.clear();
|
|
@@ -261,19 +250,11 @@ let UpdateContribution = class UpdateContribution extends Disposable {
|
|
|
261
250
|
this.notificationService.notify({
|
|
262
251
|
severity: Severity$1.Error,
|
|
263
252
|
message: error,
|
|
264
|
-
source: ( localizeWithPath(
|
|
265
|
-
'vs/workbench/contrib/update/browser/update',
|
|
266
|
-
'update service',
|
|
267
|
-
"Update Service"
|
|
268
|
-
)),
|
|
253
|
+
source: ( localizeWithPath(_moduleId, 9, "Update Service")),
|
|
269
254
|
});
|
|
270
255
|
}
|
|
271
256
|
onUpdateNotAvailable() {
|
|
272
|
-
this.dialogService.info(( localizeWithPath(
|
|
273
|
-
'vs/workbench/contrib/update/browser/update',
|
|
274
|
-
'noUpdatesAvailable',
|
|
275
|
-
"There are currently no updates available."
|
|
276
|
-
)));
|
|
257
|
+
this.dialogService.info(( localizeWithPath(_moduleId, 10, "There are currently no updates available.")));
|
|
277
258
|
}
|
|
278
259
|
onUpdateAvailable(update) {
|
|
279
260
|
if (!this.shouldShowNotification()) {
|
|
@@ -283,26 +264,14 @@ let UpdateContribution = class UpdateContribution extends Disposable {
|
|
|
283
264
|
if (!productVersion) {
|
|
284
265
|
return;
|
|
285
266
|
}
|
|
286
|
-
this.notificationService.prompt(Severity$1.Info, ( localizeWithPath(
|
|
287
|
-
|
|
288
|
-
'thereIsUpdateAvailable',
|
|
289
|
-
"There is an available update."
|
|
290
|
-
)), [{
|
|
291
|
-
label: ( localizeWithPath(
|
|
292
|
-
'vs/workbench/contrib/update/browser/update',
|
|
293
|
-
'download update',
|
|
294
|
-
"Download Update"
|
|
295
|
-
)),
|
|
267
|
+
this.notificationService.prompt(Severity$1.Info, ( localizeWithPath(_moduleId, 11, "There is an available update.")), [{
|
|
268
|
+
label: ( localizeWithPath(_moduleId, 12, "Download Update")),
|
|
296
269
|
run: () => this.updateService.downloadUpdate()
|
|
297
270
|
}, {
|
|
298
|
-
label: ( localizeWithPath(
|
|
271
|
+
label: ( localizeWithPath(_moduleId, 13, "Later")),
|
|
299
272
|
run: () => { }
|
|
300
273
|
}, {
|
|
301
|
-
label: ( localizeWithPath(
|
|
302
|
-
'vs/workbench/contrib/update/browser/update',
|
|
303
|
-
'releaseNotes',
|
|
304
|
-
"Release Notes"
|
|
305
|
-
)),
|
|
274
|
+
label: ( localizeWithPath(_moduleId, 2, "Release Notes")),
|
|
306
275
|
run: () => {
|
|
307
276
|
this.instantiationService.invokeFunction(accessor => showReleaseNotes(accessor, productVersion));
|
|
308
277
|
}
|
|
@@ -323,27 +292,19 @@ let UpdateContribution = class UpdateContribution extends Disposable {
|
|
|
323
292
|
return;
|
|
324
293
|
}
|
|
325
294
|
this.notificationService.prompt(Severity$1.Info, ( localizeWithPath(
|
|
326
|
-
|
|
327
|
-
|
|
295
|
+
_moduleId,
|
|
296
|
+
14,
|
|
328
297
|
"There's an update available: {0} {1}",
|
|
329
298
|
this.productService.nameLong,
|
|
330
299
|
productVersion
|
|
331
300
|
)), [{
|
|
332
|
-
label: ( localizeWithPath(
|
|
333
|
-
'vs/workbench/contrib/update/browser/update',
|
|
334
|
-
'installUpdate',
|
|
335
|
-
"Install Update"
|
|
336
|
-
)),
|
|
301
|
+
label: ( localizeWithPath(_moduleId, 15, "Install Update")),
|
|
337
302
|
run: () => this.updateService.applyUpdate()
|
|
338
303
|
}, {
|
|
339
|
-
label: ( localizeWithPath(
|
|
304
|
+
label: ( localizeWithPath(_moduleId, 13, "Later")),
|
|
340
305
|
run: () => { }
|
|
341
306
|
}, {
|
|
342
|
-
label: ( localizeWithPath(
|
|
343
|
-
'vs/workbench/contrib/update/browser/update',
|
|
344
|
-
'releaseNotes',
|
|
345
|
-
"Release Notes"
|
|
346
|
-
)),
|
|
307
|
+
label: ( localizeWithPath(_moduleId, 2, "Release Notes")),
|
|
347
308
|
run: () => {
|
|
348
309
|
this.instantiationService.invokeFunction(accessor => showReleaseNotes(accessor, productVersion));
|
|
349
310
|
}
|
|
@@ -354,35 +315,31 @@ let UpdateContribution = class UpdateContribution extends Disposable {
|
|
|
354
315
|
return;
|
|
355
316
|
}
|
|
356
317
|
const actions = [{
|
|
357
|
-
label: ( localizeWithPath(
|
|
318
|
+
label: ( localizeWithPath(_moduleId, 16, "Update Now")),
|
|
358
319
|
run: () => this.updateService.quitAndInstall()
|
|
359
320
|
}, {
|
|
360
|
-
label: ( localizeWithPath(
|
|
321
|
+
label: ( localizeWithPath(_moduleId, 13, "Later")),
|
|
361
322
|
run: () => { }
|
|
362
323
|
}];
|
|
363
324
|
const productVersion = update.productVersion;
|
|
364
325
|
if (productVersion) {
|
|
365
326
|
actions.push({
|
|
366
|
-
label: ( localizeWithPath(
|
|
367
|
-
'vs/workbench/contrib/update/browser/update',
|
|
368
|
-
'releaseNotes',
|
|
369
|
-
"Release Notes"
|
|
370
|
-
)),
|
|
327
|
+
label: ( localizeWithPath(_moduleId, 2, "Release Notes")),
|
|
371
328
|
run: () => {
|
|
372
329
|
this.instantiationService.invokeFunction(accessor => showReleaseNotes(accessor, productVersion));
|
|
373
330
|
}
|
|
374
331
|
});
|
|
375
332
|
}
|
|
376
333
|
this.notificationService.prompt(Severity$1.Info, ( localizeWithPath(
|
|
377
|
-
|
|
378
|
-
|
|
334
|
+
_moduleId,
|
|
335
|
+
17,
|
|
379
336
|
"Restart {0} to apply the latest update.",
|
|
380
337
|
this.productService.nameLong
|
|
381
338
|
)), actions, { sticky: true });
|
|
382
339
|
}
|
|
383
340
|
shouldShowNotification() {
|
|
384
341
|
const currentVersion = this.productService.commit;
|
|
385
|
-
const currentMillis = ( new Date()).getTime();
|
|
342
|
+
const currentMillis = ( (new Date())).getTime();
|
|
386
343
|
const lastKnownVersion = this.storageService.get('update/lastKnownVersion', -1 );
|
|
387
344
|
if (currentVersion !== lastKnownVersion) {
|
|
388
345
|
this.storageService.store('update/lastKnownVersion', currentVersion, -1 , 1 );
|
|
@@ -398,81 +355,57 @@ let UpdateContribution = class UpdateContribution extends Disposable {
|
|
|
398
355
|
group: '7_update',
|
|
399
356
|
command: {
|
|
400
357
|
id: 'update.check',
|
|
401
|
-
title: ( localizeWithPath(
|
|
402
|
-
'vs/workbench/contrib/update/browser/update',
|
|
403
|
-
'checkForUpdates',
|
|
404
|
-
"Check for Updates..."
|
|
405
|
-
))
|
|
358
|
+
title: ( localizeWithPath(_moduleId, 18, "Check for Updates..."))
|
|
406
359
|
},
|
|
407
|
-
when: ( CONTEXT_UPDATE_STATE.isEqualTo("idle" ))
|
|
360
|
+
when: ( (CONTEXT_UPDATE_STATE.isEqualTo("idle" )))
|
|
408
361
|
});
|
|
409
362
|
CommandsRegistry.registerCommand('update.checking', () => { });
|
|
410
363
|
MenuRegistry.appendMenuItem(MenuId.GlobalActivity, {
|
|
411
364
|
group: '7_update',
|
|
412
365
|
command: {
|
|
413
366
|
id: 'update.checking',
|
|
414
|
-
title: ( localizeWithPath(
|
|
415
|
-
|
|
416
|
-
'checkingForUpdates',
|
|
417
|
-
"Checking for Updates..."
|
|
418
|
-
)),
|
|
419
|
-
precondition: ( ContextKeyExpr.false())
|
|
367
|
+
title: ( localizeWithPath(_moduleId, 6, "Checking for Updates...")),
|
|
368
|
+
precondition: ( (ContextKeyExpr.false()))
|
|
420
369
|
},
|
|
421
|
-
when: ( CONTEXT_UPDATE_STATE.isEqualTo("checking for updates" ))
|
|
370
|
+
when: ( (CONTEXT_UPDATE_STATE.isEqualTo("checking for updates" )))
|
|
422
371
|
});
|
|
423
372
|
CommandsRegistry.registerCommand('update.downloadNow', () => this.updateService.downloadUpdate());
|
|
424
373
|
MenuRegistry.appendMenuItem(MenuId.GlobalActivity, {
|
|
425
374
|
group: '7_update',
|
|
426
375
|
command: {
|
|
427
376
|
id: 'update.downloadNow',
|
|
428
|
-
title: ( localizeWithPath(
|
|
429
|
-
'vs/workbench/contrib/update/browser/update',
|
|
430
|
-
'download update_1',
|
|
431
|
-
"Download Update (1)"
|
|
432
|
-
))
|
|
377
|
+
title: ( localizeWithPath(_moduleId, 19, "Download Update (1)"))
|
|
433
378
|
},
|
|
434
|
-
when: ( CONTEXT_UPDATE_STATE.isEqualTo("available for download" ))
|
|
379
|
+
when: ( (CONTEXT_UPDATE_STATE.isEqualTo("available for download" )))
|
|
435
380
|
});
|
|
436
381
|
CommandsRegistry.registerCommand('update.downloading', () => { });
|
|
437
382
|
MenuRegistry.appendMenuItem(MenuId.GlobalActivity, {
|
|
438
383
|
group: '7_update',
|
|
439
384
|
command: {
|
|
440
385
|
id: 'update.downloading',
|
|
441
|
-
title: ( localizeWithPath(
|
|
442
|
-
|
|
443
|
-
'DownloadingUpdate',
|
|
444
|
-
"Downloading Update..."
|
|
445
|
-
)),
|
|
446
|
-
precondition: ( ContextKeyExpr.false())
|
|
386
|
+
title: ( localizeWithPath(_moduleId, 20, "Downloading Update...")),
|
|
387
|
+
precondition: ( (ContextKeyExpr.false()))
|
|
447
388
|
},
|
|
448
|
-
when: ( CONTEXT_UPDATE_STATE.isEqualTo("downloading" ))
|
|
389
|
+
when: ( (CONTEXT_UPDATE_STATE.isEqualTo("downloading" )))
|
|
449
390
|
});
|
|
450
391
|
CommandsRegistry.registerCommand('update.install', () => this.updateService.applyUpdate());
|
|
451
392
|
MenuRegistry.appendMenuItem(MenuId.GlobalActivity, {
|
|
452
393
|
group: '7_update',
|
|
453
394
|
command: {
|
|
454
395
|
id: 'update.install',
|
|
455
|
-
title: ( localizeWithPath(
|
|
456
|
-
'vs/workbench/contrib/update/browser/update',
|
|
457
|
-
'installUpdate...',
|
|
458
|
-
"Install Update... (1)"
|
|
459
|
-
))
|
|
396
|
+
title: ( localizeWithPath(_moduleId, 21, "Install Update... (1)"))
|
|
460
397
|
},
|
|
461
|
-
when: ( CONTEXT_UPDATE_STATE.isEqualTo("downloaded" ))
|
|
398
|
+
when: ( (CONTEXT_UPDATE_STATE.isEqualTo("downloaded" )))
|
|
462
399
|
});
|
|
463
400
|
CommandsRegistry.registerCommand('update.updating', () => { });
|
|
464
401
|
MenuRegistry.appendMenuItem(MenuId.GlobalActivity, {
|
|
465
402
|
group: '7_update',
|
|
466
403
|
command: {
|
|
467
404
|
id: 'update.updating',
|
|
468
|
-
title: ( localizeWithPath(
|
|
469
|
-
|
|
470
|
-
'installingUpdate',
|
|
471
|
-
"Installing Update..."
|
|
472
|
-
)),
|
|
473
|
-
precondition: ( ContextKeyExpr.false())
|
|
405
|
+
title: ( localizeWithPath(_moduleId, 22, "Installing Update...")),
|
|
406
|
+
precondition: ( (ContextKeyExpr.false()))
|
|
474
407
|
},
|
|
475
|
-
when: ( CONTEXT_UPDATE_STATE.isEqualTo("updating" ))
|
|
408
|
+
when: ( (CONTEXT_UPDATE_STATE.isEqualTo("updating" )))
|
|
476
409
|
});
|
|
477
410
|
if (this.productService.quality === 'stable') {
|
|
478
411
|
CommandsRegistry.registerCommand('update.showUpdateReleaseNotes', () => {
|
|
@@ -489,13 +422,12 @@ let UpdateContribution = class UpdateContribution extends Disposable {
|
|
|
489
422
|
order: 1,
|
|
490
423
|
command: {
|
|
491
424
|
id: 'update.showUpdateReleaseNotes',
|
|
492
|
-
title: ( localizeWithPath(
|
|
493
|
-
'vs/workbench/contrib/update/browser/update',
|
|
494
|
-
'showUpdateReleaseNotes',
|
|
495
|
-
"Show Update Release Notes"
|
|
496
|
-
))
|
|
425
|
+
title: ( localizeWithPath(_moduleId, 23, "Show Update Release Notes"))
|
|
497
426
|
},
|
|
498
|
-
when: ( ContextKeyExpr.and(
|
|
427
|
+
when: ( (ContextKeyExpr.and(
|
|
428
|
+
(CONTEXT_UPDATE_STATE.isEqualTo("ready" )),
|
|
429
|
+
MAJOR_MINOR_UPDATE_AVAILABLE
|
|
430
|
+
)))
|
|
499
431
|
});
|
|
500
432
|
}
|
|
501
433
|
CommandsRegistry.registerCommand('update.restart', () => this.updateService.quitAndInstall());
|
|
@@ -504,32 +436,28 @@ let UpdateContribution = class UpdateContribution extends Disposable {
|
|
|
504
436
|
order: 2,
|
|
505
437
|
command: {
|
|
506
438
|
id: 'update.restart',
|
|
507
|
-
title: ( localizeWithPath(
|
|
508
|
-
'vs/workbench/contrib/update/browser/update',
|
|
509
|
-
'restartToUpdate',
|
|
510
|
-
"Restart to Update (1)"
|
|
511
|
-
))
|
|
439
|
+
title: ( localizeWithPath(_moduleId, 24, "Restart to Update (1)"))
|
|
512
440
|
},
|
|
513
|
-
when: ( CONTEXT_UPDATE_STATE.isEqualTo("ready" ))
|
|
441
|
+
when: ( (CONTEXT_UPDATE_STATE.isEqualTo("ready" )))
|
|
514
442
|
});
|
|
515
443
|
CommandsRegistry.registerCommand('_update.state', () => {
|
|
516
444
|
return this.state;
|
|
517
445
|
});
|
|
518
446
|
}
|
|
519
447
|
};
|
|
520
|
-
UpdateContribution = ( __decorate([
|
|
521
|
-
( __param(0, IStorageService)),
|
|
522
|
-
( __param(1, IInstantiationService)),
|
|
523
|
-
( __param(2, INotificationService)),
|
|
524
|
-
( __param(3, IDialogService)),
|
|
525
|
-
( __param(4, IUpdateService)),
|
|
526
|
-
( __param(5, IActivityService)),
|
|
527
|
-
( __param(6, IContextKeyService)),
|
|
528
|
-
( __param(7, IProductService)),
|
|
529
|
-
( __param(8, IOpenerService)),
|
|
530
|
-
( __param(9, IConfigurationService)),
|
|
531
|
-
( __param(10, IHostService))
|
|
532
|
-
], UpdateContribution));
|
|
448
|
+
UpdateContribution = ( (__decorate([
|
|
449
|
+
( (__param(0, IStorageService))),
|
|
450
|
+
( (__param(1, IInstantiationService))),
|
|
451
|
+
( (__param(2, INotificationService))),
|
|
452
|
+
( (__param(3, IDialogService))),
|
|
453
|
+
( (__param(4, IUpdateService))),
|
|
454
|
+
( (__param(5, IActivityService))),
|
|
455
|
+
( (__param(6, IContextKeyService))),
|
|
456
|
+
( (__param(7, IProductService))),
|
|
457
|
+
( (__param(8, IOpenerService))),
|
|
458
|
+
( (__param(9, IConfigurationService))),
|
|
459
|
+
( (__param(10, IHostService)))
|
|
460
|
+
], UpdateContribution)));
|
|
533
461
|
let SwitchProductQualityContribution = class SwitchProductQualityContribution extends Disposable {
|
|
534
462
|
constructor(productService, environmentService) {
|
|
535
463
|
super();
|
|
@@ -548,15 +476,7 @@ let SwitchProductQualityContribution = class SwitchProductQualityContribution ex
|
|
|
548
476
|
constructor() {
|
|
549
477
|
super({
|
|
550
478
|
id: commandId,
|
|
551
|
-
title: isSwitchingToInsiders ? ( localizeWithPath(
|
|
552
|
-
'vs/workbench/contrib/update/browser/update',
|
|
553
|
-
'switchToInsiders',
|
|
554
|
-
"Switch to Insiders Version..."
|
|
555
|
-
)) : ( localizeWithPath(
|
|
556
|
-
'vs/workbench/contrib/update/browser/update',
|
|
557
|
-
'switchToStable',
|
|
558
|
-
"Switch to Stable Version..."
|
|
559
|
-
)),
|
|
479
|
+
title: isSwitchingToInsiders ? ( localizeWithPath(_moduleId, 25, "Switch to Insiders Version...")) : ( localizeWithPath(_moduleId, 26, "Switch to Stable Version...")),
|
|
560
480
|
precondition: IsWebContext,
|
|
561
481
|
menu: {
|
|
562
482
|
id: MenuId.GlobalActivity,
|
|
@@ -590,27 +510,19 @@ let SwitchProductQualityContribution = class SwitchProductQualityContribution ex
|
|
|
590
510
|
}
|
|
591
511
|
const res = await dialogService.confirm({
|
|
592
512
|
type: 'info',
|
|
593
|
-
message: ( localizeWithPath(
|
|
594
|
-
'vs/workbench/contrib/update/browser/update',
|
|
595
|
-
'relaunchMessage',
|
|
596
|
-
"Changing the version requires a reload to take effect"
|
|
597
|
-
)),
|
|
513
|
+
message: ( localizeWithPath(_moduleId, 27, "Changing the version requires a reload to take effect")),
|
|
598
514
|
detail: newQuality === 'insider' ?
|
|
599
515
|
( localizeWithPath(
|
|
600
|
-
|
|
601
|
-
|
|
516
|
+
_moduleId,
|
|
517
|
+
28,
|
|
602
518
|
"Press the reload button to switch to the Insiders version of VS Code."
|
|
603
519
|
)) :
|
|
604
520
|
( localizeWithPath(
|
|
605
|
-
|
|
606
|
-
|
|
521
|
+
_moduleId,
|
|
522
|
+
29,
|
|
607
523
|
"Press the reload button to switch to the Stable version of VS Code."
|
|
608
524
|
)),
|
|
609
|
-
primaryButton: ( localizeWithPath(
|
|
610
|
-
'vs/workbench/contrib/update/browser/update',
|
|
611
|
-
{ key: 'reload', comment: ['&& denotes a mnemonic'] },
|
|
612
|
-
"&&Reload"
|
|
613
|
-
))
|
|
525
|
+
primaryButton: ( localizeWithPath(_moduleId, 30, "&&Reload"))
|
|
614
526
|
});
|
|
615
527
|
if (res.confirmed) {
|
|
616
528
|
const promises = [];
|
|
@@ -637,30 +549,22 @@ let SwitchProductQualityContribution = class SwitchProductQualityContribution ex
|
|
|
637
549
|
const { result } = await dialogService.prompt({
|
|
638
550
|
type: Severity$1.Info,
|
|
639
551
|
message: ( localizeWithPath(
|
|
640
|
-
|
|
641
|
-
|
|
552
|
+
_moduleId,
|
|
553
|
+
31,
|
|
642
554
|
"Choose the settings sync service to use after changing the version"
|
|
643
555
|
)),
|
|
644
556
|
detail: ( localizeWithPath(
|
|
645
|
-
|
|
646
|
-
|
|
557
|
+
_moduleId,
|
|
558
|
+
32,
|
|
647
559
|
"The Insiders version of VS Code will synchronize your settings, keybindings, extensions, snippets and UI State using separate insiders settings sync service by default."
|
|
648
560
|
)),
|
|
649
561
|
buttons: [
|
|
650
562
|
{
|
|
651
|
-
label: ( localizeWithPath(
|
|
652
|
-
'vs/workbench/contrib/update/browser/update',
|
|
653
|
-
{ key: 'use insiders', comment: ['&& denotes a mnemonic'] },
|
|
654
|
-
"&&Insiders"
|
|
655
|
-
)),
|
|
563
|
+
label: ( localizeWithPath(_moduleId, 33, "&&Insiders")),
|
|
656
564
|
run: () => 'insiders'
|
|
657
565
|
},
|
|
658
566
|
{
|
|
659
|
-
label: ( localizeWithPath(
|
|
660
|
-
'vs/workbench/contrib/update/browser/update',
|
|
661
|
-
{ key: 'use stable', comment: ['&& denotes a mnemonic'] },
|
|
662
|
-
"&&Stable (current)"
|
|
663
|
-
)),
|
|
567
|
+
label: ( localizeWithPath(_moduleId, 34, "&&Stable (current)")),
|
|
664
568
|
run: () => 'stable'
|
|
665
569
|
}
|
|
666
570
|
],
|
|
@@ -672,9 +576,9 @@ let SwitchProductQualityContribution = class SwitchProductQualityContribution ex
|
|
|
672
576
|
}
|
|
673
577
|
}
|
|
674
578
|
};
|
|
675
|
-
SwitchProductQualityContribution = ( __decorate([
|
|
676
|
-
( __param(0, IProductService)),
|
|
677
|
-
( __param(1, IBrowserWorkbenchEnvironmentService))
|
|
678
|
-
], SwitchProductQualityContribution));
|
|
579
|
+
SwitchProductQualityContribution = ( (__decorate([
|
|
580
|
+
( (__param(0, IProductService))),
|
|
581
|
+
( (__param(1, IBrowserWorkbenchEnvironmentService)))
|
|
582
|
+
], SwitchProductQualityContribution)));
|
|
679
583
|
|
|
680
584
|
export { CONTEXT_UPDATE_STATE, DOWNLOAD_URL, MAJOR_MINOR_UPDATE_AVAILABLE, ProductContribution, RELEASE_NOTES_URL, SwitchProductQualityContribution, UpdateContribution, showReleaseNotesInEditor };
|