@codingame/monaco-vscode-walkthrough-service-override 7.1.0 → 8.0.0
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/welcomeGettingStarted/browser/gettingStarted.contribution.js +27 -34
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.js +30 -39
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedColors.js +8 -9
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedExtensionPoint.js +57 -93
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedIcons.js +3 -12
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedInput.js +2 -3
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService._contribution.js +5 -7
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +6 -7
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/startupPage.js +4 -6
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent.js +147 -177
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/notebookProfile.js +4 -5
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/theme_picker.js +6 -7
- package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/editor/editorWalkThrough.js +4 -9
- package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThrough.contribution.js +3 -4
- package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThroughPart.js +3 -4
- package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/common/walkThroughUtils.js +3 -5
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { localize } from 'vscode/vscode/vs/nls';
|
|
2
2
|
import { ExtensionsRegistry } from 'vscode/vscode/vs/workbench/services/extensions/common/extensionsRegistry';
|
|
3
3
|
|
|
4
|
-
const
|
|
5
|
-
const titleTranslated = ( localizeWithPath(_moduleId, 0, "Title"));
|
|
4
|
+
const titleTranslated = ( localize(7471, "Title"));
|
|
6
5
|
const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
7
6
|
extensionPoint: 'walkthroughs',
|
|
8
7
|
jsonSchema: {
|
|
9
|
-
description: (
|
|
10
|
-
|
|
11
|
-
1,
|
|
8
|
+
description: ( localize(
|
|
9
|
+
7472,
|
|
12
10
|
"Contribute walkthroughs to help users getting started with your extension."
|
|
13
11
|
)),
|
|
14
12
|
type: 'array',
|
|
@@ -19,29 +17,27 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
19
17
|
properties: {
|
|
20
18
|
id: {
|
|
21
19
|
type: 'string',
|
|
22
|
-
description: (
|
|
20
|
+
description: ( localize(7473, "Unique identifier for this walkthrough.")),
|
|
23
21
|
},
|
|
24
22
|
title: {
|
|
25
23
|
type: 'string',
|
|
26
|
-
description: (
|
|
24
|
+
description: ( localize(7474, "Title of walkthrough."))
|
|
27
25
|
},
|
|
28
26
|
icon: {
|
|
29
27
|
type: 'string',
|
|
30
|
-
description: (
|
|
31
|
-
|
|
32
|
-
4,
|
|
28
|
+
description: ( localize(
|
|
29
|
+
7475,
|
|
33
30
|
"Relative path to the icon of the walkthrough. The path is relative to the extension location. If not specified, the icon defaults to the extension icon if available."
|
|
34
31
|
)),
|
|
35
32
|
},
|
|
36
33
|
description: {
|
|
37
34
|
type: 'string',
|
|
38
|
-
description: (
|
|
35
|
+
description: ( localize(7476, "Description of walkthrough."))
|
|
39
36
|
},
|
|
40
37
|
featuredFor: {
|
|
41
38
|
type: 'array',
|
|
42
|
-
description: (
|
|
43
|
-
|
|
44
|
-
6,
|
|
39
|
+
description: ( localize(
|
|
40
|
+
7477,
|
|
45
41
|
"Walkthroughs that match one of these glob patterns appear as 'featured' in workspaces with the specified files. For example, a walkthrough for TypeScript projects might specify `tsconfig.json` here."
|
|
46
42
|
)),
|
|
47
43
|
items: {
|
|
@@ -50,15 +46,14 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
50
46
|
},
|
|
51
47
|
when: {
|
|
52
48
|
type: 'string',
|
|
53
|
-
description: (
|
|
54
|
-
|
|
55
|
-
7,
|
|
49
|
+
description: ( localize(
|
|
50
|
+
7478,
|
|
56
51
|
"Context key expression to control the visibility of this walkthrough."
|
|
57
52
|
))
|
|
58
53
|
},
|
|
59
54
|
steps: {
|
|
60
55
|
type: 'array',
|
|
61
|
-
description: (
|
|
56
|
+
description: ( localize(7479, "Steps to complete as part of this walkthrough.")),
|
|
62
57
|
items: {
|
|
63
58
|
type: 'object',
|
|
64
59
|
required: ['id', 'title', 'media'],
|
|
@@ -72,21 +67,19 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
72
67
|
properties: {
|
|
73
68
|
id: {
|
|
74
69
|
type: 'string',
|
|
75
|
-
description: (
|
|
76
|
-
|
|
77
|
-
9,
|
|
70
|
+
description: ( localize(
|
|
71
|
+
7480,
|
|
78
72
|
"Unique identifier for this step. This is used to keep track of which steps have been completed."
|
|
79
73
|
)),
|
|
80
74
|
},
|
|
81
75
|
title: {
|
|
82
76
|
type: 'string',
|
|
83
|
-
description: (
|
|
77
|
+
description: ( localize(7481, "Title of step."))
|
|
84
78
|
},
|
|
85
79
|
description: {
|
|
86
80
|
type: 'string',
|
|
87
|
-
description: (
|
|
88
|
-
|
|
89
|
-
11,
|
|
81
|
+
description: ( localize(
|
|
82
|
+
7482,
|
|
90
83
|
"Description of step. Supports ``preformatted``, __italic__, and **bold** text. Use markdown-style links for commands or external links: {0}, {1}, or {2}. Links on their own line will be rendered as buttons.",
|
|
91
84
|
`[${titleTranslated}](command:myext.command)`,
|
|
92
85
|
`[${titleTranslated}](command:toSide:myext.command)`,
|
|
@@ -94,9 +87,8 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
94
87
|
))
|
|
95
88
|
},
|
|
96
89
|
button: {
|
|
97
|
-
deprecationMessage: (
|
|
98
|
-
|
|
99
|
-
12,
|
|
90
|
+
deprecationMessage: ( localize(
|
|
91
|
+
7483,
|
|
100
92
|
"Deprecated. Use markdown links in the description instead, i.e. {0}, {1}, or {2}",
|
|
101
93
|
`[${titleTranslated}](command:myext.command)`,
|
|
102
94
|
`[${titleTranslated}](command:toSide:myext.command)`,
|
|
@@ -105,9 +97,8 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
105
97
|
},
|
|
106
98
|
media: {
|
|
107
99
|
type: 'object',
|
|
108
|
-
description: (
|
|
109
|
-
|
|
110
|
-
13,
|
|
100
|
+
description: ( localize(
|
|
101
|
+
7484,
|
|
111
102
|
"Media to show alongside this step, either an image or markdown content."
|
|
112
103
|
)),
|
|
113
104
|
oneOf: [
|
|
@@ -116,12 +107,11 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
116
107
|
additionalProperties: false,
|
|
117
108
|
properties: {
|
|
118
109
|
path: {
|
|
119
|
-
deprecationMessage: (
|
|
110
|
+
deprecationMessage: ( localize(7485, "Deprecated. Please use `image` or `markdown` instead"))
|
|
120
111
|
},
|
|
121
112
|
image: {
|
|
122
|
-
description: (
|
|
123
|
-
|
|
124
|
-
15,
|
|
113
|
+
description: ( localize(
|
|
114
|
+
7486,
|
|
125
115
|
"Path to an image - or object consisting of paths to light, dark, and hc images - relative to extension directory. Depending on context, the image will be displayed from 400px to 800px wide, with similar bounds on height. To support HIDPI displays, the image will be rendered at 1.5x scaling, for example a 900 physical pixels wide image will be displayed as 600 logical pixels wide."
|
|
126
116
|
)),
|
|
127
117
|
oneOf: [
|
|
@@ -133,33 +123,26 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
133
123
|
required: ['dark', 'light', 'hc', 'hcLight'],
|
|
134
124
|
properties: {
|
|
135
125
|
dark: {
|
|
136
|
-
description: (
|
|
137
|
-
|
|
138
|
-
16,
|
|
126
|
+
description: ( localize(
|
|
127
|
+
7487,
|
|
139
128
|
"Path to the image for dark themes, relative to extension directory."
|
|
140
129
|
)),
|
|
141
130
|
type: 'string',
|
|
142
131
|
},
|
|
143
132
|
light: {
|
|
144
|
-
description: (
|
|
145
|
-
|
|
146
|
-
17,
|
|
133
|
+
description: ( localize(
|
|
134
|
+
7488,
|
|
147
135
|
"Path to the image for light themes, relative to extension directory."
|
|
148
136
|
)),
|
|
149
137
|
type: 'string',
|
|
150
138
|
},
|
|
151
139
|
hc: {
|
|
152
|
-
description: (
|
|
153
|
-
_moduleId,
|
|
154
|
-
18,
|
|
155
|
-
"Path to the image for hc themes, relative to extension directory."
|
|
156
|
-
)),
|
|
140
|
+
description: ( localize(7489, "Path to the image for hc themes, relative to extension directory.")),
|
|
157
141
|
type: 'string',
|
|
158
142
|
},
|
|
159
143
|
hcLight: {
|
|
160
|
-
description: (
|
|
161
|
-
|
|
162
|
-
19,
|
|
144
|
+
description: ( localize(
|
|
145
|
+
7490,
|
|
163
146
|
"Path to the image for hc light themes, relative to extension directory."
|
|
164
147
|
)),
|
|
165
148
|
type: 'string',
|
|
@@ -170,9 +153,8 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
170
153
|
},
|
|
171
154
|
altText: {
|
|
172
155
|
type: 'string',
|
|
173
|
-
description: (
|
|
174
|
-
|
|
175
|
-
20,
|
|
156
|
+
description: ( localize(
|
|
157
|
+
7491,
|
|
176
158
|
"Alternate text to display when the image cannot be loaded or in screen readers."
|
|
177
159
|
))
|
|
178
160
|
}
|
|
@@ -183,18 +165,16 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
183
165
|
additionalProperties: false,
|
|
184
166
|
properties: {
|
|
185
167
|
svg: {
|
|
186
|
-
description: (
|
|
187
|
-
|
|
188
|
-
21,
|
|
168
|
+
description: ( localize(
|
|
169
|
+
7492,
|
|
189
170
|
"Path to an svg, color tokens are supported in variables to support theming to match the workbench."
|
|
190
171
|
)),
|
|
191
172
|
type: 'string',
|
|
192
173
|
},
|
|
193
174
|
altText: {
|
|
194
175
|
type: 'string',
|
|
195
|
-
description: (
|
|
196
|
-
|
|
197
|
-
20,
|
|
176
|
+
description: ( localize(
|
|
177
|
+
7492,
|
|
198
178
|
"Alternate text to display when the image cannot be loaded or in screen readers."
|
|
199
179
|
))
|
|
200
180
|
},
|
|
@@ -205,14 +185,10 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
205
185
|
additionalProperties: false,
|
|
206
186
|
properties: {
|
|
207
187
|
path: {
|
|
208
|
-
deprecationMessage: (
|
|
188
|
+
deprecationMessage: ( localize(7492, "Deprecated. Please use `image` or `markdown` instead"))
|
|
209
189
|
},
|
|
210
190
|
markdown: {
|
|
211
|
-
description: (
|
|
212
|
-
_moduleId,
|
|
213
|
-
22,
|
|
214
|
-
"Path to the markdown document, relative to extension directory."
|
|
215
|
-
)),
|
|
191
|
+
description: ( localize(7493, "Path to the markdown document, relative to extension directory.")),
|
|
216
192
|
type: 'string',
|
|
217
193
|
}
|
|
218
194
|
}
|
|
@@ -220,9 +196,8 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
220
196
|
]
|
|
221
197
|
},
|
|
222
198
|
completionEvents: {
|
|
223
|
-
description: (
|
|
224
|
-
|
|
225
|
-
23,
|
|
199
|
+
description: ( localize(
|
|
200
|
+
7494,
|
|
226
201
|
"Events that should trigger this step to become checked off. If empty or not defined, the step will check off when any of the step's buttons or links are clicked; if the step has no buttons or links it will check on when it is selected."
|
|
227
202
|
)),
|
|
228
203
|
type: 'array',
|
|
@@ -231,59 +206,52 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
231
206
|
defaultSnippets: [
|
|
232
207
|
{
|
|
233
208
|
label: 'onCommand',
|
|
234
|
-
description: (
|
|
235
|
-
|
|
236
|
-
24,
|
|
209
|
+
description: ( localize(
|
|
210
|
+
7495,
|
|
237
211
|
'Check off step when a given command is executed anywhere in VS Code.'
|
|
238
212
|
)),
|
|
239
213
|
body: 'onCommand:${1:commandId}'
|
|
240
214
|
},
|
|
241
215
|
{
|
|
242
216
|
label: 'onLink',
|
|
243
|
-
description: (
|
|
244
|
-
_moduleId,
|
|
245
|
-
25,
|
|
246
|
-
'Check off step when a given link is opened via a walkthrough step.'
|
|
247
|
-
)),
|
|
217
|
+
description: ( localize(7496, 'Check off step when a given link is opened via a walkthrough step.')),
|
|
248
218
|
body: 'onLink:${2:linkId}'
|
|
249
219
|
},
|
|
250
220
|
{
|
|
251
221
|
label: 'onView',
|
|
252
|
-
description: (
|
|
222
|
+
description: ( localize(7497, 'Check off step when a given view is opened')),
|
|
253
223
|
body: 'onView:${2:viewId}'
|
|
254
224
|
},
|
|
255
225
|
{
|
|
256
226
|
label: 'onSettingChanged',
|
|
257
|
-
description: (
|
|
227
|
+
description: ( localize(7498, 'Check off step when a given setting is changed')),
|
|
258
228
|
body: 'onSettingChanged:${2:settingName}'
|
|
259
229
|
},
|
|
260
230
|
{
|
|
261
231
|
label: 'onContext',
|
|
262
|
-
description: (
|
|
232
|
+
description: ( localize(7499, 'Check off step when a context key expression is true.')),
|
|
263
233
|
body: 'onContext:${2:key}'
|
|
264
234
|
},
|
|
265
235
|
{
|
|
266
236
|
label: 'onExtensionInstalled',
|
|
267
|
-
description: (
|
|
268
|
-
|
|
269
|
-
29,
|
|
237
|
+
description: ( localize(
|
|
238
|
+
7500,
|
|
270
239
|
'Check off step when an extension with the given id is installed. If the extension is already installed, the step will start off checked.'
|
|
271
240
|
)),
|
|
272
241
|
body: 'onExtensionInstalled:${3:extensionId}'
|
|
273
242
|
},
|
|
274
243
|
{
|
|
275
244
|
label: 'onStepSelected',
|
|
276
|
-
description: (
|
|
245
|
+
description: ( localize(7501, 'Check off step as soon as it is selected.')),
|
|
277
246
|
body: 'onStepSelected'
|
|
278
247
|
},
|
|
279
248
|
]
|
|
280
249
|
}
|
|
281
250
|
},
|
|
282
251
|
doneOn: {
|
|
283
|
-
description: (
|
|
284
|
-
deprecationMessage: (
|
|
285
|
-
|
|
286
|
-
32,
|
|
252
|
+
description: ( localize(7502, "Signal to mark step as complete.")),
|
|
253
|
+
deprecationMessage: ( localize(
|
|
254
|
+
7503,
|
|
287
255
|
"doneOn is deprecated. By default steps will be checked off when their buttons are clicked, to configure further use completionEvents"
|
|
288
256
|
)),
|
|
289
257
|
type: 'object',
|
|
@@ -291,18 +259,14 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
|
|
|
291
259
|
defaultSnippets: [{ 'body': { command: '$1' } }],
|
|
292
260
|
properties: {
|
|
293
261
|
'command': {
|
|
294
|
-
description: (
|
|
262
|
+
description: ( localize(7504, "Mark step done when the specified command is executed.")),
|
|
295
263
|
type: 'string'
|
|
296
264
|
}
|
|
297
265
|
},
|
|
298
266
|
},
|
|
299
267
|
when: {
|
|
300
268
|
type: 'string',
|
|
301
|
-
description: (
|
|
302
|
-
_moduleId,
|
|
303
|
-
34,
|
|
304
|
-
"Context key expression to control the visibility of this step."
|
|
305
|
-
))
|
|
269
|
+
description: ( localize(7505, "Context key expression to control the visibility of this step."))
|
|
306
270
|
}
|
|
307
271
|
}
|
|
308
272
|
}
|
package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedIcons.js
CHANGED
|
@@ -1,17 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { localize } from 'vscode/vscode/vs/nls';
|
|
2
2
|
import { Codicon } from 'vscode/vscode/vs/base/common/codicons';
|
|
3
3
|
import { registerIcon } from 'vscode/vscode/vs/platform/theme/common/iconRegistry';
|
|
4
4
|
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
_moduleId,
|
|
8
|
-
0,
|
|
9
|
-
"Used to represent walkthrough steps which have not been completed"
|
|
10
|
-
)));
|
|
11
|
-
const gettingStartedCheckedCodicon = registerIcon('getting-started-step-checked', Codicon.passFilled, ( localizeWithPath(
|
|
12
|
-
_moduleId,
|
|
13
|
-
1,
|
|
14
|
-
"Used to represent walkthrough steps which have been completed"
|
|
15
|
-
)));
|
|
5
|
+
const gettingStartedUncheckedCodicon = registerIcon('getting-started-step-unchecked', Codicon.circleLargeOutline, ( localize(7540, "Used to represent walkthrough steps which have not been completed")));
|
|
6
|
+
const gettingStartedCheckedCodicon = registerIcon('getting-started-step-checked', Codicon.passFilled, ( localize(7541, "Used to represent walkthrough steps which have been completed")));
|
|
16
7
|
|
|
17
8
|
export { gettingStartedCheckedCodicon, gettingStartedUncheckedCodicon };
|
package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedInput.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import './media/gettingStarted.css.js';
|
|
2
|
-
import {
|
|
2
|
+
import { localize } from 'vscode/vscode/vs/nls';
|
|
3
3
|
import { EditorInput } from 'vscode/vscode/vs/workbench/common/editor/editorInput';
|
|
4
4
|
import { URI } from 'vscode/vscode/vs/base/common/uri';
|
|
5
5
|
import { Schemas } from 'vscode/vscode/vs/base/common/network';
|
|
6
6
|
|
|
7
|
-
const _moduleId = "vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedInput";
|
|
8
7
|
const gettingStartedInputTypeId = 'workbench.editors.gettingStartedInput';
|
|
9
8
|
class GettingStartedInput extends EditorInput {
|
|
10
9
|
static { this.ID = gettingStartedInputTypeId; }
|
|
@@ -43,7 +42,7 @@ class GettingStartedInput extends EditorInput {
|
|
|
43
42
|
this.showTelemetryNotice = !!options.showTelemetryNotice;
|
|
44
43
|
}
|
|
45
44
|
getName() {
|
|
46
|
-
return (
|
|
45
|
+
return ( localize(7507, "Welcome"));
|
|
47
46
|
}
|
|
48
47
|
}
|
|
49
48
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { localize2 } from 'vscode/vscode/vs/nls';
|
|
2
2
|
import { registerAction2, Action2 } from 'vscode/vscode/vs/platform/actions/common/actions';
|
|
3
3
|
import { StorageScope, StorageTarget } from 'vscode/vscode/vs/platform/storage/common/storage';
|
|
4
4
|
import { IStorageService } from 'vscode/vscode/vs/platform/storage/common/storage.service';
|
|
@@ -6,18 +6,16 @@ import { Memento } from 'vscode/vscode/vs/workbench/common/memento';
|
|
|
6
6
|
import { hiddenEntriesConfigurationKey, walkthroughMetadataConfigurationKey } from './gettingStartedService.js';
|
|
7
7
|
import { IWalkthroughsService } from 'vscode/vscode/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.service';
|
|
8
8
|
|
|
9
|
-
const _moduleId = "vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService";
|
|
10
9
|
registerAction2(class extends Action2 {
|
|
11
10
|
constructor() {
|
|
12
11
|
super({
|
|
13
12
|
id: 'resetGettingStartedProgress',
|
|
14
|
-
category: (
|
|
15
|
-
title: (
|
|
13
|
+
category: ( localize2(7542, "Developer")),
|
|
14
|
+
title: ( localize2(7543, "Reset Welcome Page Walkthrough Progress")),
|
|
16
15
|
f1: true,
|
|
17
16
|
metadata: {
|
|
18
|
-
description: (
|
|
19
|
-
|
|
20
|
-
3,
|
|
17
|
+
description: ( localize2(
|
|
18
|
+
7544,
|
|
21
19
|
'Reset the progress of all Walkthrough steps on the Welcome Page to make them appear as if they are being viewed for the first time, providing a fresh start to the getting started experience.'
|
|
22
20
|
)),
|
|
23
21
|
}
|
package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js
CHANGED
|
@@ -24,18 +24,17 @@ import 'vscode/vscode/vs/platform/instantiation/common/extensions';
|
|
|
24
24
|
import { dirname } from 'vscode/vscode/vs/base/common/path';
|
|
25
25
|
import { coalesce } from 'vscode/vscode/vs/base/common/arrays';
|
|
26
26
|
import { IViewsService } from 'vscode/vscode/vs/workbench/services/views/common/viewsService.service';
|
|
27
|
-
import {
|
|
27
|
+
import { localize } from 'vscode/vscode/vs/nls';
|
|
28
28
|
import { ITelemetryService } from 'vscode/vscode/vs/platform/telemetry/common/telemetry.service';
|
|
29
29
|
import { checkGlobFileExists } from 'vscode/vscode/vs/workbench/services/extensions/common/workspaceContains';
|
|
30
30
|
import { IWorkspaceContextService } from 'vscode/vscode/vs/platform/workspace/common/workspace.service';
|
|
31
31
|
import { CancellationTokenSource } from 'vscode/vscode/vs/base/common/cancellation';
|
|
32
32
|
import { getDefaultIconPath } from 'vscode/vscode/vs/workbench/services/extensionManagement/common/extensionManagement';
|
|
33
33
|
|
|
34
|
-
const _moduleId = "vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService";
|
|
35
34
|
const HasMultipleNewFileEntries = ( (new RawContextKey('hasMultipleNewFileEntries', false)));
|
|
36
35
|
const hiddenEntriesConfigurationKey = 'workbench.welcomePage.hiddenCategories';
|
|
37
36
|
const walkthroughMetadataConfigurationKey = 'workbench.welcomePage.walkthroughMetadata';
|
|
38
|
-
const BUILT_IN_SOURCE = (
|
|
37
|
+
const BUILT_IN_SOURCE = ( localize(2743, "Built-In"));
|
|
39
38
|
const DAYS = 24 * 60 * 60 * 1000;
|
|
40
39
|
const NEW_WALKTHROUGH_TIME = 7 * DAYS;
|
|
41
40
|
let WalkthroughsService = class WalkthroughsService extends Disposable {
|
|
@@ -124,11 +123,10 @@ let WalkthroughsService = class WalkthroughsService extends Disposable {
|
|
|
124
123
|
this.extensionManagementService.getInstalled().then(installed => {
|
|
125
124
|
installed.forEach(ext => this.progressByEvent(`extensionInstalled:${ext.identifier.id.toLowerCase()}`));
|
|
126
125
|
});
|
|
127
|
-
this._register(this.extensionManagementService.onDidInstallExtensions(
|
|
128
|
-
const hadLastFoucs = await this.hostService.hadLastFocus();
|
|
126
|
+
this._register(this.extensionManagementService.onDidInstallExtensions((result) => {
|
|
129
127
|
for (const e of result) {
|
|
130
128
|
const skipWalkthrough = e?.context?.[EXTENSION_INSTALL_SKIP_WALKTHROUGH_CONTEXT] || e?.context?.[EXTENSION_INSTALL_DEP_PACK_CONTEXT];
|
|
131
|
-
if (
|
|
129
|
+
if (!skipWalkthrough) {
|
|
132
130
|
this.sessionInstalledExtensions.add(e.identifier.id.toLowerCase());
|
|
133
131
|
}
|
|
134
132
|
this.progressByEvent(`extensionInstalled:${e.identifier.id.toLowerCase()}`);
|
|
@@ -283,7 +281,8 @@ let WalkthroughsService = class WalkthroughsService extends Disposable {
|
|
|
283
281
|
this._onDidAddWalkthrough.fire(this.resolveWalkthrough(walkthoughDescriptor));
|
|
284
282
|
}));
|
|
285
283
|
this.storageService.store(walkthroughMetadataConfigurationKey, JSON.stringify([...this.metadata.entries()]), StorageScope.PROFILE, StorageTarget.USER);
|
|
286
|
-
|
|
284
|
+
const hadLastFoucs = await this.hostService.hadLastFocus();
|
|
285
|
+
if (hadLastFoucs && sectionToOpen && this.configurationService.getValue('workbench.welcomePage.walkthroughs.openOnInstall')) {
|
|
287
286
|
this.telemetryService.publicLog2('gettingStarted.didAutoOpenWalkthrough', { id: sectionToOpen });
|
|
288
287
|
this.commandService.executeCommand('workbench.action.openWalkthrough', sectionToOpen, true);
|
|
289
288
|
}
|
|
@@ -22,12 +22,11 @@ import { TelemetryLevel } from 'vscode/vscode/vs/platform/telemetry/common/telem
|
|
|
22
22
|
import { IProductService } from 'vscode/vscode/vs/platform/product/common/productService.service';
|
|
23
23
|
import { ILogService } from 'vscode/vscode/vs/platform/log/common/log.service';
|
|
24
24
|
import { INotificationService } from 'vscode/vscode/vs/platform/notification/common/notification.service';
|
|
25
|
-
import {
|
|
25
|
+
import { localize } from 'vscode/vscode/vs/nls';
|
|
26
26
|
import { RegisteredEditorPriority } from 'vscode/vscode/vs/workbench/services/editor/common/editorResolverService';
|
|
27
27
|
import { IEditorResolverService } from 'vscode/vscode/vs/workbench/services/editor/common/editorResolverService.service';
|
|
28
28
|
import { TerminalCommandId } from 'vscode/vscode/vs/workbench/contrib/terminal/common/terminal';
|
|
29
29
|
|
|
30
|
-
const _moduleId = "vs/workbench/contrib/welcomeGettingStarted/browser/startupPage";
|
|
31
30
|
const restoreWalkthroughsConfigurationKey = 'workbench.welcomePage.restorableWalkthroughs';
|
|
32
31
|
const configurationKey = 'workbench.startupEditor';
|
|
33
32
|
const oldConfigurationKey = 'workbench.welcome.enabled';
|
|
@@ -38,7 +37,7 @@ let StartupPageEditorResolverContribution = class StartupPageEditorResolverContr
|
|
|
38
37
|
this.instantiationService = instantiationService;
|
|
39
38
|
editorResolverService.registerEditor(`${GettingStartedInput.RESOURCE.scheme}:/**`, {
|
|
40
39
|
id: GettingStartedInput.ID,
|
|
41
|
-
label: (
|
|
40
|
+
label: ( localize(7536, "Welcome Page")),
|
|
42
41
|
priority: RegisteredEditorPriority.builtin,
|
|
43
42
|
}, {
|
|
44
43
|
singlePerResource: false,
|
|
@@ -157,9 +156,8 @@ let StartupPageRunnerContribution = class StartupPageRunnerContribution {
|
|
|
157
156
|
const isMarkDown = (readme) => readme.path.toLowerCase().endsWith('.md');
|
|
158
157
|
await Promise.all([
|
|
159
158
|
this.commandService.executeCommand('markdown.showPreview', null, readmes.filter(isMarkDown), { locked: true }).catch(error => {
|
|
160
|
-
this.notificationService.error((
|
|
161
|
-
|
|
162
|
-
1,
|
|
159
|
+
this.notificationService.error(( localize(
|
|
160
|
+
7537,
|
|
163
161
|
'Could not open markdown preview: {0}.\n\nPlease make sure the markdown extension is enabled.',
|
|
164
162
|
error.message
|
|
165
163
|
)));
|