@codingame/monaco-vscode-walkthrough-service-override 37.2.0 → 37.3.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.
Files changed (23) hide show
  1. package/index.js +2 -2
  2. package/package.json +6 -2
  3. package/session.d.ts +1 -0
  4. package/session.js +3 -0
  5. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.js +25 -25
  6. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.js +70 -63
  7. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedAccessibleView.js +5 -5
  8. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedColors.js +7 -7
  9. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedExtensionPoint.js +37 -37
  10. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedIcons.js +2 -2
  11. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedList.js +1 -1
  12. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService._contribution.js +3 -3
  13. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +33 -29
  14. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/startupPage.js +17 -15
  15. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent.js +151 -151
  16. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/notebookProfile.js +3 -3
  17. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/theme_picker.js +5 -5
  18. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/theme_picker_small.js +4 -4
  19. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/editor/editorWalkThrough.js +3 -3
  20. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThrough.contribution.js +2 -2
  21. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThroughInput.js +1 -1
  22. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThroughPart.js +4 -4
  23. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/common/walkThroughUtils.js +1 -1
package/index.js CHANGED
@@ -2,11 +2,11 @@
2
2
  import { SyncDescriptor } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/descriptors';
3
3
  import { WalkthroughsService } from './vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js';
4
4
  import { IWalkthroughsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.service';
5
- import './vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.js';
6
- import './vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThrough.contribution.js';
7
5
  import svgAssets from './vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/all.svg.js';
8
6
  import pngAssets from './vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/all.png.js';
9
7
  import { registerAssets } from '@codingame/monaco-vscode-api/assets';
8
+ import './vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.js';
9
+ import './vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThrough.contribution.js';
10
10
 
11
11
  registerAssets(svgAssets);
12
12
  registerAssets(pngAssets);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-walkthrough-service-override",
3
- "version": "37.2.0",
3
+ "version": "37.3.0",
4
4
  "private": false,
5
5
  "description": "VSCode public API plugged on the monaco editor - walkthrough service-override",
6
6
  "keywords": [],
@@ -15,7 +15,7 @@
15
15
  },
16
16
  "type": "module",
17
17
  "dependencies": {
18
- "@codingame/monaco-vscode-api": "37.2.0",
18
+ "@codingame/monaco-vscode-api": "37.3.0",
19
19
  "marked": "14.0.0"
20
20
  },
21
21
  "main": "index.js",
@@ -32,6 +32,10 @@
32
32
  "types": "./vscode/src/*.d.ts",
33
33
  "default": "./vscode/src/*.js"
34
34
  },
35
+ "./session": {
36
+ "types": "./session.d.ts",
37
+ "default": "./session.js"
38
+ },
35
39
  "./*": {
36
40
  "types": "./*.d.ts",
37
41
  "default": "./*.js"
package/session.d.ts ADDED
@@ -0,0 +1 @@
1
+ export {};
package/session.js ADDED
@@ -0,0 +1,3 @@
1
+
2
+
3
+ throw new Error('Walkthrough service override cannot be used in session mode');
@@ -40,7 +40,7 @@ registerAction2(class extends Action2 {
40
40
  constructor() {
41
41
  super({
42
42
  id: "workbench.action.openWalkthrough",
43
- title: ( localize2(18769, "Welcome")),
43
+ title: ( localize2(20912, "Welcome")),
44
44
  category: Categories.Help,
45
45
  f1: true,
46
46
  menu: {
@@ -49,7 +49,7 @@ registerAction2(class extends Action2 {
49
49
  order: 1
50
50
  },
51
51
  metadata: {
52
- description: ( localize2(18770, "Opens a Walkthrough to help you get started in VS Code."))
52
+ description: ( localize2(20913, "Opens a Walkthrough to help you get started in VS Code."))
53
53
  }
54
54
  });
55
55
  }
@@ -114,15 +114,15 @@ registerAction2(class extends Action2 {
114
114
  });
115
115
  ( Registry.as(EditorExtensions.EditorFactory)).registerEditorSerializer(GettingStartedInput.ID, GettingStartedInputSerializer);
116
116
  ( Registry.as(EditorExtensions.EditorPane)).registerEditorPane(
117
- EditorPaneDescriptor.create(GettingStartedPage, GettingStartedPage.ID, ( localize(18771, "Welcome"))),
117
+ EditorPaneDescriptor.create(GettingStartedPage, GettingStartedPage.ID, ( localize(20914, "Welcome"))),
118
118
  [( new SyncDescriptor(GettingStartedInput))]
119
119
  );
120
- const category = ( localize2(18771, "Welcome"));
120
+ const category = ( localize2(20914, "Welcome"));
121
121
  registerAction2(class extends Action2 {
122
122
  constructor() {
123
123
  super({
124
124
  id: "welcome.goBack",
125
- title: ( localize2(18772, "Go Back")),
125
+ title: ( localize2(20915, "Go Back")),
126
126
  category,
127
127
  keybinding: {
128
128
  weight: KeybindingWeight.EditorContrib,
@@ -157,7 +157,7 @@ registerAction2(class extends Action2 {
157
157
  constructor() {
158
158
  super({
159
159
  id: "welcome.markStepComplete",
160
- title: ( localize(18773, "Mark Step Complete")),
160
+ title: ( localize(20916, "Mark Step Complete")),
161
161
  category
162
162
  });
163
163
  }
@@ -173,7 +173,7 @@ registerAction2(class extends Action2 {
173
173
  constructor() {
174
174
  super({
175
175
  id: "welcome.markStepIncomplete",
176
- title: ( localize(18774, "Mark Step Incomplete")),
176
+ title: ( localize(20917, "Mark Step Incomplete")),
177
177
  category
178
178
  });
179
179
  }
@@ -189,7 +189,7 @@ registerAction2(class extends Action2 {
189
189
  constructor() {
190
190
  super({
191
191
  id: "welcome.showAllWalkthroughs",
192
- title: ( localize2(18775, "Open Walkthrough...")),
192
+ title: ( localize2(20918, "Open Walkthrough...")),
193
193
  category,
194
194
  f1: true,
195
195
  menu: {
@@ -201,12 +201,12 @@ registerAction2(class extends Action2 {
201
201
  }
202
202
  async getQuickPickItems(contextService, gettingStartedService) {
203
203
  const categories = await gettingStartedService.getWalkthroughs();
204
- return ( categories.filter(c => contextService.contextMatchesRules(c.when)).map(x => ({
204
+ return categories.filter(c => contextService.contextMatchesRules(c.when)).map(x => ({
205
205
  id: x.id,
206
206
  label: x.title,
207
207
  detail: x.description,
208
208
  description: x.source
209
- })));
209
+ }));
210
210
  }
211
211
  async run(accessor) {
212
212
  const commandService = accessor.get(ICommandService);
@@ -219,7 +219,7 @@ registerAction2(class extends Action2 {
219
219
  quickPick.canSelectMany = false;
220
220
  quickPick.matchOnDescription = true;
221
221
  quickPick.matchOnDetail = true;
222
- quickPick.placeholder = ( localize(18776, "Select a walkthrough to open"));
222
+ quickPick.placeholder = ( localize(20919, "Select a walkthrough to open"));
223
223
  quickPick.items = await this.getQuickPickItems(contextService, gettingStartedService);
224
224
  quickPick.busy = true;
225
225
  disposables.add(quickPick.onDidAccept(() => {
@@ -249,10 +249,10 @@ CommandsRegistry.registerCommand({
249
249
  });
250
250
  }
251
251
  });
252
- const WorkspacePlatform = ( new RawContextKey("workspacePlatform", undefined, ( localize(
253
- 18777,
252
+ const WorkspacePlatform = new RawContextKey("workspacePlatform", undefined, ( localize(
253
+ 20920,
254
254
  "The platform of the current workspace, which in remote or serverless contexts may be different from the platform of the UI"
255
- ))));
255
+ )));
256
256
  let WorkspacePlatformContribution = class WorkspacePlatformContribution {
257
257
  static {
258
258
  this.ID = "workbench.contrib.workspacePlatform";
@@ -292,7 +292,7 @@ configurationRegistry.registerConfiguration({
292
292
  type: "boolean",
293
293
  default: true,
294
294
  description: ( localize(
295
- 18778,
295
+ 20921,
296
296
  "When enabled, an extension's walkthrough will open upon install of the extension."
297
297
  ))
298
298
  },
@@ -308,22 +308,22 @@ configurationRegistry.registerConfiguration({
308
308
  "terminal",
309
309
  "agentSessionsWelcomePage"
310
310
  ],
311
- "enumDescriptions": [( localize(18779, "Start without an editor.")), ( localize(
312
- 18780,
311
+ "enumDescriptions": [( localize(20922, "Start without an editor.")), ( localize(
312
+ 20923,
313
313
  "Open the Welcome page, with content to aid in getting started with VS Code and extensions."
314
314
  )), ( localize(
315
- 18781,
315
+ 20924,
316
316
  "Open the README when opening a folder that contains one, fallback to 'welcomePage' otherwise. Note: This is only observed as a global configuration, it will be ignored if set in a workspace or folder configuration."
317
317
  )), ( localize(
318
- 18782,
318
+ 20925,
319
319
  "Open a new untitled text file (only applies when opening an empty window)."
320
- )), ( localize(18783, "Open the Welcome page when opening an empty workbench.")), ( localize(18784, "Open a new terminal in the editor area.")), ( localize(
321
- 18785,
320
+ )), ( localize(20926, "Open the Welcome page when opening an empty workbench.")), ( localize(20927, "Open a new terminal in the editor area.")), ( localize(
321
+ 20928,
322
322
  "Open the Agent Sessions Welcome page. Will override the workbench secondary side bar visibility settings."
323
323
  ))],
324
324
  "default": "welcomePage",
325
325
  "description": ( localize(
326
- 18786,
326
+ 20929,
327
327
  "Controls which editor is shown at startup, if none are restored from the previous session."
328
328
  )),
329
329
  "experiment": {
@@ -338,8 +338,8 @@ configurationRegistry.registerConfiguration({
338
338
  scope: ConfigurationScope.APPLICATION,
339
339
  type: "boolean",
340
340
  default: false,
341
- deprecationMessage: ( localize(18787, "Deprecated, use the global `workbench.reduceMotion`.")),
342
- description: ( localize(18788, "When enabled, reduce motion in welcome page."))
341
+ deprecationMessage: ( localize(20930, "Deprecated, use the global `workbench.reduceMotion`.")),
342
+ description: ( localize(20931, "When enabled, reduce motion in welcome page."))
343
343
  },
344
344
  "workbench.welcomePage.experimentalOnboarding": {
345
345
  scope: ConfigurationScope.APPLICATION,
@@ -347,7 +347,7 @@ configurationRegistry.registerConfiguration({
347
347
  default: true,
348
348
  tags: ["experimental"],
349
349
  description: ( localize(
350
- 18789,
350
+ 20932,
351
351
  "When enabled, show the new onboarding experience instead of the classic walkthrough on first launch."
352
352
  )),
353
353
  experiment: {
@@ -80,12 +80,12 @@ import { KeybindingLabel } from '@codingame/monaco-vscode-api/vscode/vs/base/bro
80
80
  import { ScrollbarVisibility } from '@codingame/monaco-vscode-api/vscode/vs/base/common/scrollable';
81
81
 
82
82
  var GettingStartedPage_1;
83
- registerCss(gettingStarted);
83
+ registerCss(gettingStarted, 1);
84
84
  const SLIDE_TRANSITION_TIME_MS = 250;
85
85
  const configurationKey = "workbench.startupEditor";
86
- const allWalkthroughsHiddenContext = ( new RawContextKey("allWalkthroughsHidden", false));
87
- const inWelcomeContext = ( new RawContextKey("inWelcome", false));
88
- const parsedStartEntries = ( startEntries.map((e, i) => ({
86
+ const allWalkthroughsHiddenContext = new RawContextKey("allWalkthroughsHidden", false);
87
+ const inWelcomeContext = new RawContextKey("inWelcome", false);
88
+ const parsedStartEntries = startEntries.map((e, i) => ({
89
89
  command: e.content.command,
90
90
  description: e.description,
91
91
  icon: {
@@ -96,7 +96,7 @@ const parsedStartEntries = ( startEntries.map((e, i) => ({
96
96
  order: i,
97
97
  title: e.title,
98
98
  when: ContextKeyExpr.deserialize(e.when) ?? ContextKeyExpr.true()
99
- })));
99
+ }));
100
100
  const REDUCED_MOTION_KEY = "workbench.welcomePage.preferReducedMotion";
101
101
  let GettingStartedPage = class GettingStartedPage extends EditorPane {
102
102
  static {
@@ -182,7 +182,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
182
182
  this.container = $(".gettingStartedContainer", {
183
183
  role: "document",
184
184
  tabindex: 0,
185
- "aria-label": ( localize(18790, "Overview of how to get up to speed with your editor."))
185
+ "aria-label": ( localize(20933, "Overview of how to get up to speed with your editor."))
186
186
  });
187
187
  this.stepMediaComponent = $(".getting-started-media");
188
188
  this.stepMediaComponent.id = generateUuid();
@@ -200,10 +200,10 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
200
200
  const rerender = () => {
201
201
  this.gettingStartedCategories = this.gettingStartedService.getWalkthroughs();
202
202
  if (this.currentWalkthrough) {
203
- const existingSteps = ( this.currentWalkthrough.steps.map(step => step.id));
203
+ const existingSteps = this.currentWalkthrough.steps.map(step => step.id);
204
204
  const newCategory = this.gettingStartedCategories.find(category => this.currentWalkthrough?.id === category.id);
205
205
  if (newCategory) {
206
- const newSteps = ( newCategory.steps.map(step => step.id));
206
+ const newSteps = newCategory.steps.map(step => step.id);
207
207
  if (!equals(newSteps, existingSteps)) {
208
208
  this.buildSlideThrottle.queue(() => this.buildCategoriesSlide());
209
209
  }
@@ -256,17 +256,17 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
256
256
  badgeelement.parentElement?.setAttribute("aria-checked", "true");
257
257
  badgeelement.classList.remove(...ThemeIcon.asClassNameArray(gettingStartedUncheckedCodicon));
258
258
  badgeelement.classList.add("complete", ...ThemeIcon.asClassNameArray(gettingStartedCheckedCodicon));
259
- badgeelement.setAttribute("aria-label", ( localize(18791, "{0}: Completed", step.title)));
259
+ badgeelement.setAttribute("aria-label", ( localize(20934, "{0}: Completed", step.title)));
260
260
  } else {
261
261
  badgeelement.setAttribute("aria-checked", "false");
262
262
  badgeelement.parentElement?.setAttribute("aria-checked", "false");
263
263
  badgeelement.classList.remove("complete", ...ThemeIcon.asClassNameArray(gettingStartedCheckedCodicon));
264
264
  badgeelement.classList.add(...ThemeIcon.asClassNameArray(gettingStartedUncheckedCodicon));
265
- badgeelement.setAttribute("aria-label", ( localize(18792, "{0}: Not completed", step.title)));
265
+ badgeelement.setAttribute("aria-label", ( localize(20935, "{0}: Not completed", step.title)));
266
266
  }
267
267
  });
268
268
  if (step.done) {
269
- status(( localize(18793, "Step {0} completed", step.title)));
269
+ status(( localize(20936, "Step {0} completed", step.title)));
270
270
  }
271
271
  }
272
272
  this.updateCategoryProgress();
@@ -514,17 +514,20 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
514
514
  }
515
515
  }
516
516
  async openWalkthroughSelector() {
517
- const selection = await this.quickInputService.pick(( this.gettingStartedCategories.filter(c => this.contextService.contextMatchesRules(c.when)).map(x => ({
518
- id: x.id,
519
- label: x.title,
520
- detail: x.description,
521
- description: x.source
522
- }))), {
523
- canPickMany: false,
524
- matchOnDescription: true,
525
- matchOnDetail: true,
526
- title: ( localize(18794, "Open Walkthrough..."))
527
- });
517
+ const selection = await this.quickInputService.pick(
518
+ this.gettingStartedCategories.filter(c => this.contextService.contextMatchesRules(c.when)).map(x => ({
519
+ id: x.id,
520
+ label: x.title,
521
+ detail: x.description,
522
+ description: x.source
523
+ })),
524
+ {
525
+ canPickMany: false,
526
+ matchOnDescription: true,
527
+ matchOnDetail: true,
528
+ title: ( localize(20937, "Open Walkthrough..."))
529
+ }
530
+ );
528
531
  if (selection) {
529
532
  this.runDispatchCommand("selectCategory", selection.id);
530
533
  }
@@ -609,7 +612,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
609
612
  mediaElement.setAttribute("alt", media.altText);
610
613
  this.updateMediaSourceForColorMode(mediaElement, media.path);
611
614
  this.stepDisposables.add(addDisposableListener(this.stepMediaComponent, "click", () => {
612
- const hrefs = ( stepToExpand.description.map(lt => ( lt.nodes.filter(node => typeof node !== "string").map(node => node.href)))).flat();
615
+ const hrefs = stepToExpand.description.map(
616
+ lt => lt.nodes.filter(node => typeof node !== "string").map(node => node.href)
617
+ ).flat();
613
618
  if (hrefs.length === 1) {
614
619
  const href = hrefs[0];
615
620
  if (href.startsWith("http")) {
@@ -642,7 +647,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
642
647
  }
643
648
  }));
644
649
  this.stepDisposables.add(addDisposableListener(this.stepMediaComponent, "click", () => {
645
- const hrefs = ( stepToExpand.description.map(lt => ( lt.nodes.filter(node => typeof node !== "string").map(node => node.href)))).flat();
650
+ const hrefs = stepToExpand.description.map(
651
+ lt => lt.nodes.filter(node => typeof node !== "string").map(node => node.href)
652
+ ).flat();
646
653
  if (hrefs.length === 1) {
647
654
  const href = hrefs[0];
648
655
  if (href.startsWith("http")) {
@@ -683,7 +690,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
683
690
  }
684
691
  };
685
692
  if (serializedContextKeyExprs) {
686
- const contextKeyExprs = coalesce(( serializedContextKeyExprs.map(expr => ContextKeyExpr.deserialize(expr))));
693
+ const contextKeyExprs = coalesce(serializedContextKeyExprs.map(expr => ContextKeyExpr.deserialize(expr)));
687
694
  const watchingKeys = ( new Set(contextKeyExprs.flatMap(expr => ( expr.keys()))));
688
695
  this.stepDisposables.add(this.contextService.onDidChangeContext(e => {
689
696
  if (e.affectsSome(watchingKeys)) {
@@ -754,7 +761,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
754
761
  const themeType = this.themeService.getColorTheme().type;
755
762
  const videoPath = media.path[themeType];
756
763
  const videoPoster = media.poster ? media.poster[themeType] : undefined;
757
- const altText = media.altText ? media.altText : ( localize(18795, "Video for {0}", stepToExpand.title));
764
+ const altText = media.altText ? media.altText : ( localize(20938, "Video for {0}", stepToExpand.title));
758
765
  const rawHTML = await this.detailsRenderer.renderVideo(videoPath, videoPoster, altText);
759
766
  this.webview.setHtml(rawHTML);
760
767
  let isDisposed = false;
@@ -786,8 +793,8 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
786
793
  provideScreenReaderUpdate() {
787
794
  if (this.configurationService.getValue(AccessibilityVerbositySettingId.Walkthrough)) {
788
795
  const kbLabel = this.keybindingService.lookupKeybinding(AccessibleViewAction.id)?.getAriaLabel();
789
- return kbLabel ? ( localize(18796, "Inspect this in the accessible view ({0}).\n", kbLabel)) : ( localize(
790
- 18797,
796
+ return kbLabel ? ( localize(20939, "Inspect this in the accessible view ({0}).\n", kbLabel)) : ( localize(
797
+ 20940,
791
798
  "Inspect this in the accessible view via the command Open Accessible View which is currently not triggerable via keybinding.\n"
792
799
  ));
793
800
  }
@@ -856,7 +863,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
856
863
  this.categoriesSlide = $(".gettingStartedSlideCategories.gettingStartedSlide");
857
864
  const prevButton = $("button.prev-button.button-link", {
858
865
  "x-dispatch": "scrollPrev"
859
- }, $("span.scroll-button.codicon.codicon-chevron-left"), $("span.moreText", {}, ( localize(18798, "Go Back"))));
866
+ }, $("span.scroll-button.codicon.codicon-chevron-left"), $("span.moreText", {}, ( localize(20941, "Go Back"))));
860
867
  this.stepsSlide = $(".gettingStartedSlideDetails.gettingStartedSlide", {}, prevButton);
861
868
  this.stepsContent = $(".gettingStartedDetailsContent", {});
862
869
  this.detailsPageScrollbar = this._register(( new DomScrollableElement(this.stepsContent, {
@@ -885,13 +892,13 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
885
892
  icon: Codicon.check,
886
893
  actionClassName: "getting-started-checkbox",
887
894
  isChecked: this.configurationService.getValue(configurationKey) === "welcomePage",
888
- title: ( localize(18799, "When checked, this page will be shown on startup.")),
895
+ title: ( localize(20942, "When checked, this page will be shown on startup.")),
889
896
  ...defaultToggleStyles
890
897
  }));
891
898
  showOnStartupCheckbox.domNode.id = "showOnStartup";
892
899
  const showOnStartupLabel = $("label.caption", {
893
900
  for: "showOnStartup"
894
- }, ( localize(18800, "Show welcome page on startup")));
901
+ }, ( localize(20943, "Show welcome page on startup")));
895
902
  const onShowOnStartupChanged = () => {
896
903
  if (showOnStartupCheckbox.checked) {
897
904
  this.telemetryService.publicLog2("gettingStarted.ActionExecuted", {
@@ -921,7 +928,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
921
928
  ".header",
922
929
  {},
923
930
  $("h1.product-name.caption", {}, this.productService.nameLong),
924
- $("p.subtitle.description", {}, ( localize(18801, "Editing evolved")))
931
+ $("p.subtitle.description", {}, ( localize(20944, "Editing evolved")))
925
932
  );
926
933
  const leftColumn = $(".categories-column.categories-column-left", {});
927
934
  const rightColumn = $(".categories-column.categories-column-right", {});
@@ -1044,7 +1051,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1044
1051
  const link = $("button.button-link");
1045
1052
  link.innerText = name;
1046
1053
  link.title = fullPath;
1047
- link.setAttribute("aria-label", ( localize(18802, "Open folder {0} with path {1}", name, parentPath)));
1054
+ link.setAttribute("aria-label", ( localize(20945, "Open folder {0} with path {1}", name, parentPath)));
1048
1055
  link.addEventListener("click", e => {
1049
1056
  this.telemetryService.publicLog2("gettingStarted.ActionExecuted", {
1050
1057
  command: "openRecent",
@@ -1070,8 +1077,8 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1070
1077
  {
1071
1078
  "tabindex": 0,
1072
1079
  "role": "button",
1073
- "title": ( localize(18803, "Remove from Recently Opened")),
1074
- "aria-label": ( localize(18804, "Remove {0} from Recently Opened", name))
1080
+ "title": ( localize(20946, "Remove from Recently Opened")),
1081
+ "aria-label": ( localize(20947, "Remove {0} from Recently Opened", name))
1075
1082
  }
1076
1083
  );
1077
1084
  const handleDelete = async e => {
@@ -1090,20 +1097,20 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1090
1097
  return li;
1091
1098
  };
1092
1099
  const recentlyOpenedList = this.recentlyOpenedList.value = ( new GettingStartedIndexList({
1093
- title: ( localize(18805, "Recent")),
1100
+ title: ( localize(20948, "Recent")),
1094
1101
  klass: "recently-opened",
1095
1102
  limit: 5,
1096
- empty: $(".empty-recent", {}, ( localize(18806, "You have no recent folders,")), $("button.button-link", {
1103
+ empty: $(".empty-recent", {}, ( localize(20949, "You have no recent folders,")), $("button.button-link", {
1097
1104
  "x-dispatch": "openFolder"
1098
- }, ( localize(18807, "open a folder"))), ( localize(18808, "to start."))),
1105
+ }, ( localize(20950, "open a folder"))), ( localize(20951, "to start."))),
1099
1106
  more: $(".more", {}, $("button.button-link", {
1100
1107
  "x-dispatch": "showMoreRecents",
1101
1108
  title: ( localize(
1102
- 18809,
1109
+ 20952,
1103
1110
  "Show All Recent Folders {0}",
1104
1111
  this.getKeybindingLabel(OpenRecentAction.ID)
1105
1112
  ))
1106
- }, ( localize(18810, "More...")))),
1113
+ }, ( localize(20953, "More...")))),
1107
1114
  renderElement: renderRecent,
1108
1115
  contextService: this.contextService
1109
1116
  }));
@@ -1123,12 +1130,12 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1123
1130
  return recentlyOpenedList;
1124
1131
  }
1125
1132
  filterRecentlyOpened(workspaces) {
1126
- return ( workspaces.filter(
1133
+ return workspaces.filter(
1127
1134
  recent => !this.workspaceContextService.isCurrentWorkspace(isRecentWorkspace(recent) ? recent.workspace : recent.folderUri)
1128
1135
  ).map(recent => ({
1129
1136
  ...recent,
1130
1137
  id: isRecentWorkspace(recent) ? recent.workspace.id : ( recent.folderUri.toString())
1131
- })));
1138
+ }));
1132
1139
  }
1133
1140
  refreshRecentlyOpened() {
1134
1141
  if (!this.recentlyOpenedList.value) {
@@ -1149,7 +1156,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1149
1156
  title: entry.description + " " + this.getKeybindingLabel(entry.command)
1150
1157
  }, this.iconWidgetFor(entry), $("span", {}, entry.title)));
1151
1158
  const startList = this.startList.value = ( new GettingStartedIndexList({
1152
- title: ( localize(18811, "Start")),
1159
+ title: ( localize(20954, "Start")),
1153
1160
  klass: "start-container",
1154
1161
  limit: 10,
1155
1162
  renderElement: renderStartEntry,
@@ -1165,9 +1172,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1165
1172
  const renderNewBadge = (category.newItems || category.newEntry) && !category.isFeatured;
1166
1173
  const newBadge = $(".new-badge", {});
1167
1174
  if (category.newEntry) {
1168
- reset(newBadge, $(".new-category", {}, ( localize(18812, "New"))));
1175
+ reset(newBadge, $(".new-category", {}, ( localize(20955, "New"))));
1169
1176
  } else if (category.newItems) {
1170
- reset(newBadge, $(".new-items", {}, ( localize(18813, "Updated"))));
1177
+ reset(newBadge, $(".new-items", {}, ( localize(20956, "Updated"))));
1171
1178
  }
1172
1179
  const featuredBadge = $(".featured-badge", {});
1173
1180
  const descriptionContent = $(".description-content", {});
@@ -1198,9 +1205,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1198
1205
  $("a.codicon.codicon-close.hide-category-button", {
1199
1206
  "tabindex": 0,
1200
1207
  "x-dispatch": "hideCategory:" + category.id,
1201
- "title": ( localize(18814, "Hide")),
1208
+ "title": ( localize(20957, "Hide")),
1202
1209
  "role": "button",
1203
- "aria-label": ( localize(18815, "Hide"))
1210
+ "aria-label": ( localize(20958, "Hide"))
1204
1211
  })
1205
1212
  ),
1206
1213
  descriptionContent,
@@ -1231,13 +1238,13 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1231
1238
  return rank;
1232
1239
  };
1233
1240
  const gettingStartedList = this.gettingStartedList.value = ( new GettingStartedIndexList({
1234
- title: ( localize(18816, "Walkthroughs")),
1241
+ title: ( localize(20959, "Walkthroughs")),
1235
1242
  klass: "getting-started",
1236
1243
  limit: 5,
1237
1244
  footer: $("span.button-link.see-all-walkthroughs", {
1238
1245
  "x-dispatch": "seeAllWalkthroughs",
1239
1246
  "tabindex": 0
1240
- }, ( localize(18810, "More..."))),
1247
+ }, ( localize(20953, "More..."))),
1241
1248
  renderElement: renderGetttingStaredWalkthrough,
1242
1249
  rankElement: rankWalkthrough,
1243
1250
  contextService: this.contextService
@@ -1290,9 +1297,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1290
1297
  bar.style.width = `${progress}%`;
1291
1298
  element.parentElement.classList.toggle("no-progress", stats.stepsComplete === 0);
1292
1299
  if (stats.stepsTotal === stats.stepsComplete) {
1293
- bar.title = ( localize(18817, "All {0} steps complete!", stats.stepsComplete));
1300
+ bar.title = ( localize(20960, "All {0} steps complete!", stats.stepsComplete));
1294
1301
  } else {
1295
- bar.title = ( localize(18818, "{0} of {1} steps complete", stats.stepsComplete, stats.stepsTotal));
1302
+ bar.title = ( localize(20961, "{0} of {1} steps complete", stats.stepsComplete, stats.stepsTotal));
1296
1303
  }
1297
1304
  });
1298
1305
  }
@@ -1443,7 +1450,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1443
1450
  if (isCommand) {
1444
1451
  const keybinding = this.getKeyBinding(command);
1445
1452
  if (keybinding) {
1446
- const shortcutMessage = $("span.shortcut-message", {}, ( localize(18819, "Tip: Use keyboard shortcut ")));
1453
+ const shortcutMessage = $("span.shortcut-message", {}, ( localize(20962, "Tip: Use keyboard shortcut ")));
1447
1454
  container.appendChild(shortcutMessage);
1448
1455
  const label = ( new KeybindingLabel(shortcutMessage, OS, {
1449
1456
  ...defaultKeybindingLabelStyles
@@ -1541,7 +1548,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1541
1548
  return;
1542
1549
  }
1543
1550
  renderedSteps = toRender;
1544
- reset(stepListContainer, ...( renderedSteps.map(step => {
1551
+ reset(stepListContainer, ...renderedSteps.map(step => {
1545
1552
  const codicon = $(
1546
1553
  ".codicon" + (step.done ? ".complete" + ThemeIcon.asCSSSelector(gettingStartedCheckedCodicon) : ThemeIcon.asCSSSelector(gettingStartedUncheckedCodicon)),
1547
1554
  {
@@ -1549,7 +1556,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1549
1556
  "x-dispatch": "toggleStepCompletion:" + step.id,
1550
1557
  "role": "checkbox",
1551
1558
  "aria-checked": step.done ? "true" : "false",
1552
- "aria-label": step.done ? ( localize(18791, "{0}: Completed", step.title)) : ( localize(18792, "{0}: Not completed", step.title))
1559
+ "aria-label": step.done ? ( localize(20934, "{0}: Completed", step.title)) : ( localize(20935, "{0}: Not completed", step.title))
1553
1560
  }
1554
1561
  );
1555
1562
  const container = $(".step-description-container", {
@@ -1563,11 +1570,11 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1563
1570
  const stepDescription = $(".step-container", {}, stepTitle, container);
1564
1571
  if (step.media.type === "image") {
1565
1572
  stepDescription.appendChild($(".image-description", {
1566
- "aria-label": ( localize(18820, "Image showing {0}", step.media.altText))
1573
+ "aria-label": ( localize(20963, "Image showing {0}", step.media.altText))
1567
1574
  }));
1568
1575
  } else if (step.media.type === "video") {
1569
1576
  stepDescription.appendChild($(".video-description", {
1570
- "aria-label": ( localize(18821, "Video showing {0}", step.media.altText))
1577
+ "aria-label": ( localize(20964, "Video showing {0}", step.media.altText))
1571
1578
  }));
1572
1579
  }
1573
1580
  return $("button.getting-started-step", {
@@ -1577,7 +1584,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1577
1584
  "aria-checked": step.done ? "true" : "false",
1578
1585
  "role": "button"
1579
1586
  }, codicon, stepDescription);
1580
- })));
1587
+ }));
1581
1588
  };
1582
1589
  buildStepList();
1583
1590
  this.detailsPageDisposables.add(this.contextService.onDidChangeContext(e => {
@@ -1592,9 +1599,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1592
1599
  "role": "list"
1593
1600
  }, stepListContainer, $(".done-next-container", {}, $("button.button-link.all-done", {
1594
1601
  "x-dispatch": "allDone"
1595
- }, $("span.codicon.codicon-check-all"), ( localize(18822, "Mark Done"))), ...(showNextCategory ? [$("button.button-link.next", {
1602
+ }, $("span.codicon.codicon-check-all"), ( localize(20965, "Mark Done"))), ...(showNextCategory ? [$("button.button-link.next", {
1596
1603
  "x-dispatch": "nextSection"
1597
- }, ( localize(18823, "Next Section")), $("span.codicon.codicon-arrow-right"))] : [])));
1604
+ }, ( localize(20966, "Next Section")), $("span.codicon.codicon-arrow-right"))] : [])));
1598
1605
  this.detailsScrollbar.value = ( new DomScrollableElement(stepsContainer, {
1599
1606
  className: "steps-container"
1600
1607
  }));
@@ -1617,12 +1624,12 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1617
1624
  this.registerDispatchListeners();
1618
1625
  }
1619
1626
  buildTelemetryFooter(parent) {
1620
- const privacyStatementCopy = ( localize(18824, "privacy statement"));
1627
+ const privacyStatementCopy = ( localize(20967, "privacy statement"));
1621
1628
  const privacyStatementButton = `[${privacyStatementCopy}](command:workbench.action.openPrivacyStatementUrl)`;
1622
- const optOutCopy = ( localize(18825, "opt out"));
1629
+ const optOutCopy = ( localize(20968, "opt out"));
1623
1630
  const optOutButton = `[${optOutCopy}](command:settings.filterByTelemetry)`;
1624
1631
  const text = ( localize(
1625
- 18826,
1632
+ 20969,
1626
1633
  "{0} collects usage data. Read our {1} and learn how to {2}.",
1627
1634
  this.productService.nameShort,
1628
1635
  privacyStatementButton,
@@ -1697,7 +1704,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1697
1704
  const prevButton = this.container.querySelector(".prev-button.button-link");
1698
1705
  prevButton.style.display = this.editorInput?.showWelcome || this.editorInput?.returnToCommand || this.prevWalkthrough ? "block" : "none";
1699
1706
  const moreTextElement = prevButton.querySelector(".moreText");
1700
- moreTextElement.textContent = firstLaunch ? ( localize(18827, "Welcome")) : ( localize(18798, "Go Back"));
1707
+ moreTextElement.textContent = firstLaunch ? ( localize(20970, "Welcome")) : ( localize(20941, "Go Back"));
1701
1708
  this.container.querySelector(".gettingStartedSlideDetails").querySelectorAll("button").forEach(button => button.disabled = false);
1702
1709
  this.container.querySelector(".gettingStartedSlideCategories").querySelectorAll("button").forEach(button => button.disabled = true);
1703
1710
  this.container.querySelector(".gettingStartedSlideCategories").querySelectorAll("input").forEach(button => button.disabled = true);
@@ -77,10 +77,10 @@ class GettingStartedAccessibleProvider extends Disposable {
77
77
  get actions() {
78
78
  const actions = [];
79
79
  const step = this._activeWalkthroughSteps[this._currentStepIndex];
80
- const nodes = ( step.description.map(lt => ( lt.nodes.filter(node => typeof node !== "string").map(node => ({
80
+ const nodes = step.description.map(lt => lt.nodes.filter(node => typeof node !== "string").map(node => ({
81
81
  href: node.href,
82
82
  label: node.label
83
- }))))).flat();
83
+ }))).flat();
84
84
  if (nodes.length === 1) {
85
85
  const node = nodes[0];
86
86
  actions.push(( new Action(
@@ -129,10 +129,10 @@ class GettingStartedAccessibleProvider extends Disposable {
129
129
  );
130
130
  }
131
131
  _getContent(waltkrough, step, includeTitle) {
132
- const description = ( step.description.map(lt => lt.nodes.filter(node => typeof node === "string"))).join("\n");
133
- const stepsContent = ( localize(18828, "{0}\n{1}", step.title, description));
132
+ const description = step.description.map(lt => lt.nodes.filter(node => typeof node === "string")).join("\n");
133
+ const stepsContent = ( localize(20971, "{0}\n{1}", step.title, description));
134
134
  if (includeTitle) {
135
- return [( localize(18829, "Title: {0}", waltkrough.title)), ( localize(18830, "Description: {0}", waltkrough.description)), stepsContent].join("\n");
135
+ return [( localize(20972, "Title: {0}", waltkrough.title)), ( localize(20973, "Description: {0}", waltkrough.description)), stepsContent].join("\n");
136
136
  } else {
137
137
  return stepsContent;
138
138
  }