@codingame/monaco-vscode-walkthrough-service-override 30.0.0 → 31.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.
Files changed (26) hide show
  1. package/package.json +3 -3
  2. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsBanner.d.ts +29 -0
  3. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsBanner.js +34 -0
  4. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcome.js +31 -20
  5. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcomeInput.js +1 -1
  6. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/media/agentSessionsWelcome.css +30 -6
  7. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.js +33 -20
  8. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.js +52 -43
  9. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedAccessibleView.js +2 -2
  10. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedColors.js +7 -7
  11. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedExtensionPoint.js +37 -37
  12. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedIcons.js +2 -2
  13. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedInput.js +1 -1
  14. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService._contribution.js +3 -3
  15. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +1 -1
  16. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/media/gettingStarted.css +19 -0
  17. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/startupPage.d.ts +4 -1
  18. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/startupPage.js +31 -4
  19. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent.js +156 -156
  20. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/notebookProfile.js +3 -3
  21. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/theme_picker.js +5 -5
  22. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/theme_picker_small.js +4 -4
  23. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/editor/editorWalkThrough.js +3 -3
  24. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThrough.contribution.js +2 -2
  25. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThroughPart.js +2 -2
  26. package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/common/walkThroughUtils.js +1 -1
@@ -72,6 +72,7 @@ import { IExtensionService } from '@codingame/monaco-vscode-api/vscode/vs/workbe
72
72
  import { IHostService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/host/browser/host.service';
73
73
  import { IWorkbenchThemeService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/themes/common/workbenchThemeService.service';
74
74
  import { GettingStartedIndexList } from './gettingStartedList.js';
75
+ import { canShowAgentsBanner, createAgentsBanner } from '../../chat/browser/agentSessions/agentSessionsBanner.js';
75
76
  import { AccessibilityVerbositySettingId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration';
76
77
  import { AccessibleViewAction } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/accessibility/browser/accessibleViewActions';
77
78
  import { KeybindingLabel } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/keybindingLabel/keybindingLabel';
@@ -174,7 +175,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
174
175
  this.container = $(".gettingStartedContainer", {
175
176
  role: "document",
176
177
  tabindex: 0,
177
- "aria-label": ( localize(15253, "Overview of how to get up to speed with your editor."))
178
+ "aria-label": ( localize(15390, "Overview of how to get up to speed with your editor."))
178
179
  });
179
180
  this.stepMediaComponent = $(".getting-started-media");
180
181
  this.stepMediaComponent.id = generateUuid();
@@ -248,17 +249,17 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
248
249
  badgeelement.parentElement?.setAttribute("aria-checked", "true");
249
250
  badgeelement.classList.remove(...ThemeIcon.asClassNameArray(gettingStartedUncheckedCodicon));
250
251
  badgeelement.classList.add("complete", ...ThemeIcon.asClassNameArray(gettingStartedCheckedCodicon));
251
- badgeelement.setAttribute("aria-label", ( localize(15254, "{0}: Completed", step.title)));
252
+ badgeelement.setAttribute("aria-label", ( localize(15391, "{0}: Completed", step.title)));
252
253
  } else {
253
254
  badgeelement.setAttribute("aria-checked", "false");
254
255
  badgeelement.parentElement?.setAttribute("aria-checked", "false");
255
256
  badgeelement.classList.remove("complete", ...ThemeIcon.asClassNameArray(gettingStartedCheckedCodicon));
256
257
  badgeelement.classList.add(...ThemeIcon.asClassNameArray(gettingStartedUncheckedCodicon));
257
- badgeelement.setAttribute("aria-label", ( localize(15255, "{0}: Not completed", step.title)));
258
+ badgeelement.setAttribute("aria-label", ( localize(15392, "{0}: Not completed", step.title)));
258
259
  }
259
260
  });
260
261
  if (step.done) {
261
- status(( localize(15256, "Step {0} completed", step.title)));
262
+ status(( localize(15393, "Step {0} completed", step.title)));
262
263
  }
263
264
  }
264
265
  this.updateCategoryProgress();
@@ -515,7 +516,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
515
516
  canPickMany: false,
516
517
  matchOnDescription: true,
517
518
  matchOnDetail: true,
518
- title: ( localize(15257, "Open Walkthrough..."))
519
+ title: ( localize(15394, "Open Walkthrough..."))
519
520
  });
520
521
  if (selection) {
521
522
  this.runDispatchCommand("selectCategory", selection.id);
@@ -746,7 +747,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
746
747
  const themeType = this.themeService.getColorTheme().type;
747
748
  const videoPath = media.path[themeType];
748
749
  const videoPoster = media.poster ? media.poster[themeType] : undefined;
749
- const altText = media.altText ? media.altText : ( localize(15258, "Video for {0}", stepToExpand.title));
750
+ const altText = media.altText ? media.altText : ( localize(15395, "Video for {0}", stepToExpand.title));
750
751
  const rawHTML = await this.detailsRenderer.renderVideo(videoPath, videoPoster, altText);
751
752
  this.webview.setHtml(rawHTML);
752
753
  let isDisposed = false;
@@ -778,8 +779,8 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
778
779
  provideScreenReaderUpdate() {
779
780
  if (this.configurationService.getValue(AccessibilityVerbositySettingId.Walkthrough)) {
780
781
  const kbLabel = this.keybindingService.lookupKeybinding(AccessibleViewAction.id)?.getAriaLabel();
781
- return kbLabel ? ( localize(15259, "Inspect this in the accessible view ({0}).\n", kbLabel)) : ( localize(
782
- 15260,
782
+ return kbLabel ? ( localize(15396, "Inspect this in the accessible view ({0}).\n", kbLabel)) : ( localize(
783
+ 15397,
783
784
  "Inspect this in the accessible view via the command Open Accessible View which is currently not triggerable via keybinding.\n"
784
785
  ));
785
786
  }
@@ -848,7 +849,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
848
849
  this.categoriesSlide = $(".gettingStartedSlideCategories.gettingStartedSlide");
849
850
  const prevButton = $("button.prev-button.button-link", {
850
851
  "x-dispatch": "scrollPrev"
851
- }, $("span.scroll-button.codicon.codicon-chevron-left"), $("span.moreText", {}, ( localize(15261, "Go Back"))));
852
+ }, $("span.scroll-button.codicon.codicon-chevron-left"), $("span.moreText", {}, ( localize(15398, "Go Back"))));
852
853
  this.stepsSlide = $(".gettingStartedSlideDetails.gettingStartedSlide", {}, prevButton);
853
854
  this.stepsContent = $(".gettingStartedDetailsContent", {});
854
855
  this.detailsPageScrollbar = this._register(( new DomScrollableElement(this.stepsContent, {
@@ -877,13 +878,13 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
877
878
  icon: Codicon.check,
878
879
  actionClassName: "getting-started-checkbox",
879
880
  isChecked: this.configurationService.getValue(configurationKey) === "welcomePage",
880
- title: ( localize(15262, "When checked, this page will be shown on startup.")),
881
+ title: ( localize(15399, "When checked, this page will be shown on startup.")),
881
882
  ...defaultToggleStyles
882
883
  }));
883
884
  showOnStartupCheckbox.domNode.id = "showOnStartup";
884
885
  const showOnStartupLabel = $("label.caption", {
885
886
  for: "showOnStartup"
886
- }, ( localize(15263, "Show welcome page on startup")));
887
+ }, ( localize(15400, "Show welcome page on startup")));
887
888
  const onShowOnStartupChanged = () => {
888
889
  if (showOnStartupCheckbox.checked) {
889
890
  this.telemetryService.publicLog2("gettingStarted.ActionExecuted", {
@@ -913,18 +914,26 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
913
914
  ".header",
914
915
  {},
915
916
  $("h1.product-name.caption", {}, this.productService.nameLong),
916
- $("p.subtitle.description", {}, ( localize(15264, "Editing evolved")))
917
+ $("p.subtitle.description", {}, ( localize(15401, "Editing evolved")))
917
918
  );
918
919
  const leftColumn = $(".categories-column.categories-column-left", {});
919
920
  const rightColumn = $(".categories-column.categories-column-right", {});
920
921
  const startList = this.buildStartList();
921
922
  const recentList = this.buildRecentlyOpenedList();
922
923
  const gettingStartedList = this.buildGettingStartedWalkthroughsList();
923
- const footer = $(
924
- ".footer",
925
- {},
924
+ const footerChildren = [];
925
+ if (canShowAgentsBanner(this.productService)) {
926
+ const agentsBanner = createAgentsBanner({
927
+ cssClass: "getting-started-category.agents-banner",
928
+ source: "welcomePage"
929
+ }, this.commandService, this.telemetryService);
930
+ this.categoriesSlideDisposables.add(agentsBanner.disposables);
931
+ footerChildren.push(agentsBanner.element);
932
+ }
933
+ footerChildren.push(
926
934
  $("p.showOnStartup", {}, showOnStartupCheckbox.domNode, showOnStartupLabel)
927
935
  );
936
+ const footer = $(".footer", {}, ...footerChildren);
928
937
  const layoutLists = () => {
929
938
  if (gettingStartedList.itemCount) {
930
939
  this.container.classList.remove("noWalkthroughs");
@@ -980,7 +989,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
980
989
  const telemetryNotice = $("p.telemetry-notice");
981
990
  this.buildTelemetryFooter(telemetryNotice);
982
991
  footer.appendChild(telemetryNotice);
983
- } else if (!this.productService.openToWelcomeMainPage && this.showFeaturedWalkthrough && this.storageService.isNew(StorageScope.APPLICATION)) {
992
+ } else if (!this.productService.openToWelcomeMainPage && this.showFeaturedWalkthrough && this.storageService.isNew(StorageScope.APPLICATION) && !this.configurationService.getValue("workbench.welcomePage.experimentalOnboarding")) {
984
993
  const firstSessionDateString = this.storageService.get(firstSessionDateStorageKey, StorageScope.APPLICATION) || ( new Date()).toUTCString();
985
994
  const daysSinceFirstSession = ((+( new Date())) - (+( new Date(firstSessionDateString)))) / 1000 / 60 / 60 / 24;
986
995
  const fistContentBehaviour = daysSinceFirstSession < 1 ? "openToFirstCategory" : "index";
@@ -1028,7 +1037,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1028
1037
  const link = $("button.button-link");
1029
1038
  link.innerText = name;
1030
1039
  link.title = fullPath;
1031
- link.setAttribute("aria-label", ( localize(15265, "Open folder {0} with path {1}", name, parentPath)));
1040
+ link.setAttribute("aria-label", ( localize(15402, "Open folder {0} with path {1}", name, parentPath)));
1032
1041
  link.addEventListener("click", e => {
1033
1042
  this.telemetryService.publicLog2("gettingStarted.ActionExecuted", {
1034
1043
  command: "openRecent",
@@ -1054,8 +1063,8 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1054
1063
  {
1055
1064
  "tabindex": 0,
1056
1065
  "role": "button",
1057
- "title": ( localize(15266, "Remove from Recently Opened")),
1058
- "aria-label": ( localize(15267, "Remove {0} from Recently Opened", name))
1066
+ "title": ( localize(15403, "Remove from Recently Opened")),
1067
+ "aria-label": ( localize(15404, "Remove {0} from Recently Opened", name))
1059
1068
  }
1060
1069
  );
1061
1070
  const handleDelete = async e => {
@@ -1077,20 +1086,20 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1077
1086
  this.recentlyOpenedList.dispose();
1078
1087
  }
1079
1088
  const recentlyOpenedList = this.recentlyOpenedList = ( new GettingStartedIndexList({
1080
- title: ( localize(15268, "Recent")),
1089
+ title: ( localize(15405, "Recent")),
1081
1090
  klass: "recently-opened",
1082
1091
  limit: 5,
1083
- empty: $(".empty-recent", {}, ( localize(15269, "You have no recent folders,")), $("button.button-link", {
1092
+ empty: $(".empty-recent", {}, ( localize(15406, "You have no recent folders,")), $("button.button-link", {
1084
1093
  "x-dispatch": "openFolder"
1085
- }, ( localize(15270, "open a folder"))), ( localize(15271, "to start."))),
1094
+ }, ( localize(15407, "open a folder"))), ( localize(15408, "to start."))),
1086
1095
  more: $(".more", {}, $("button.button-link", {
1087
1096
  "x-dispatch": "showMoreRecents",
1088
1097
  title: ( localize(
1089
- 15272,
1098
+ 15409,
1090
1099
  "Show All Recent Folders {0}",
1091
1100
  this.getKeybindingLabel(OpenRecentAction.ID)
1092
1101
  ))
1093
- }, ( localize(15273, "More...")))),
1102
+ }, ( localize(15410, "More...")))),
1094
1103
  renderElement: renderRecent,
1095
1104
  contextService: this.contextService
1096
1105
  }));
@@ -1139,7 +1148,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1139
1148
  this.startList.dispose();
1140
1149
  }
1141
1150
  const startList = this.startList = ( new GettingStartedIndexList({
1142
- title: ( localize(15274, "Start")),
1151
+ title: ( localize(15411, "Start")),
1143
1152
  klass: "start-container",
1144
1153
  limit: 10,
1145
1154
  renderElement: renderStartEntry,
@@ -1155,9 +1164,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1155
1164
  const renderNewBadge = (category.newItems || category.newEntry) && !category.isFeatured;
1156
1165
  const newBadge = $(".new-badge", {});
1157
1166
  if (category.newEntry) {
1158
- reset(newBadge, $(".new-category", {}, ( localize(15275, "New"))));
1167
+ reset(newBadge, $(".new-category", {}, ( localize(15412, "New"))));
1159
1168
  } else if (category.newItems) {
1160
- reset(newBadge, $(".new-items", {}, ( localize(15276, "Updated"))));
1169
+ reset(newBadge, $(".new-items", {}, ( localize(15413, "Updated"))));
1161
1170
  }
1162
1171
  const featuredBadge = $(".featured-badge", {});
1163
1172
  const descriptionContent = $(".description-content", {});
@@ -1188,9 +1197,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1188
1197
  $("a.codicon.codicon-close.hide-category-button", {
1189
1198
  "tabindex": 0,
1190
1199
  "x-dispatch": "hideCategory:" + category.id,
1191
- "title": ( localize(15277, "Hide")),
1200
+ "title": ( localize(15414, "Hide")),
1192
1201
  "role": "button",
1193
- "aria-label": ( localize(15278, "Hide"))
1202
+ "aria-label": ( localize(15415, "Hide"))
1194
1203
  })
1195
1204
  ),
1196
1205
  descriptionContent,
@@ -1224,13 +1233,13 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1224
1233
  return rank;
1225
1234
  };
1226
1235
  const gettingStartedList = this.gettingStartedList = ( new GettingStartedIndexList({
1227
- title: ( localize(15279, "Walkthroughs")),
1236
+ title: ( localize(15416, "Walkthroughs")),
1228
1237
  klass: "getting-started",
1229
1238
  limit: 5,
1230
1239
  footer: $("span.button-link.see-all-walkthroughs", {
1231
1240
  "x-dispatch": "seeAllWalkthroughs",
1232
1241
  "tabindex": 0
1233
- }, ( localize(15273, "More..."))),
1242
+ }, ( localize(15410, "More..."))),
1234
1243
  renderElement: renderGetttingStaredWalkthrough,
1235
1244
  rankElement: rankWalkthrough,
1236
1245
  contextService: this.contextService
@@ -1283,9 +1292,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1283
1292
  bar.style.width = `${progress}%`;
1284
1293
  element.parentElement.classList.toggle("no-progress", stats.stepsComplete === 0);
1285
1294
  if (stats.stepsTotal === stats.stepsComplete) {
1286
- bar.title = ( localize(15280, "All {0} steps complete!", stats.stepsComplete));
1295
+ bar.title = ( localize(15417, "All {0} steps complete!", stats.stepsComplete));
1287
1296
  } else {
1288
- bar.title = ( localize(15281, "{0} of {1} steps complete", stats.stepsComplete, stats.stepsTotal));
1297
+ bar.title = ( localize(15418, "{0} of {1} steps complete", stats.stepsComplete, stats.stepsTotal));
1289
1298
  }
1290
1299
  });
1291
1300
  }
@@ -1436,7 +1445,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1436
1445
  if (isCommand) {
1437
1446
  const keybinding = this.getKeyBinding(command);
1438
1447
  if (keybinding) {
1439
- const shortcutMessage = $("span.shortcut-message", {}, ( localize(15282, "Tip: Use keyboard shortcut ")));
1448
+ const shortcutMessage = $("span.shortcut-message", {}, ( localize(15419, "Tip: Use keyboard shortcut ")));
1440
1449
  container.appendChild(shortcutMessage);
1441
1450
  const label = ( new KeybindingLabel(shortcutMessage, OS, {
1442
1451
  ...defaultKeybindingLabelStyles
@@ -1545,7 +1554,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1545
1554
  "x-dispatch": "toggleStepCompletion:" + step.id,
1546
1555
  "role": "checkbox",
1547
1556
  "aria-checked": step.done ? "true" : "false",
1548
- "aria-label": step.done ? ( localize(15254, "{0}: Completed", step.title)) : ( localize(15255, "{0}: Not completed", step.title))
1557
+ "aria-label": step.done ? ( localize(15391, "{0}: Completed", step.title)) : ( localize(15392, "{0}: Not completed", step.title))
1549
1558
  }
1550
1559
  );
1551
1560
  const container = $(".step-description-container", {
@@ -1559,11 +1568,11 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1559
1568
  const stepDescription = $(".step-container", {}, stepTitle, container);
1560
1569
  if (step.media.type === "image") {
1561
1570
  stepDescription.appendChild($(".image-description", {
1562
- "aria-label": ( localize(15283, "Image showing {0}", step.media.altText))
1571
+ "aria-label": ( localize(15420, "Image showing {0}", step.media.altText))
1563
1572
  }));
1564
1573
  } else if (step.media.type === "video") {
1565
1574
  stepDescription.appendChild($(".video-description", {
1566
- "aria-label": ( localize(15284, "Video showing {0}", step.media.altText))
1575
+ "aria-label": ( localize(15421, "Video showing {0}", step.media.altText))
1567
1576
  }));
1568
1577
  }
1569
1578
  return $("button.getting-started-step", {
@@ -1588,9 +1597,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1588
1597
  "role": "list"
1589
1598
  }, stepListContainer, $(".done-next-container", {}, $("button.button-link.all-done", {
1590
1599
  "x-dispatch": "allDone"
1591
- }, $("span.codicon.codicon-check-all"), ( localize(15285, "Mark Done"))), ...(showNextCategory ? [$("button.button-link.next", {
1600
+ }, $("span.codicon.codicon-check-all"), ( localize(15422, "Mark Done"))), ...(showNextCategory ? [$("button.button-link.next", {
1592
1601
  "x-dispatch": "nextSection"
1593
- }, ( localize(15286, "Next Section")), $("span.codicon.codicon-arrow-right"))] : [])));
1602
+ }, ( localize(15423, "Next Section")), $("span.codicon.codicon-arrow-right"))] : [])));
1594
1603
  this.detailsScrollbar = this._register(( new DomScrollableElement(stepsContainer, {
1595
1604
  className: "steps-container"
1596
1605
  })));
@@ -1613,12 +1622,12 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1613
1622
  this.registerDispatchListeners();
1614
1623
  }
1615
1624
  buildTelemetryFooter(parent) {
1616
- const privacyStatementCopy = ( localize(15287, "privacy statement"));
1625
+ const privacyStatementCopy = ( localize(15424, "privacy statement"));
1617
1626
  const privacyStatementButton = `[${privacyStatementCopy}](command:workbench.action.openPrivacyStatementUrl)`;
1618
- const optOutCopy = ( localize(15288, "opt out"));
1627
+ const optOutCopy = ( localize(15425, "opt out"));
1619
1628
  const optOutButton = `[${optOutCopy}](command:settings.filterByTelemetry)`;
1620
1629
  const text = ( localize(
1621
- 15289,
1630
+ 15426,
1622
1631
  "{0} collects usage data. Read our {1} and learn how to {2}.",
1623
1632
  this.productService.nameShort,
1624
1633
  privacyStatementButton,
@@ -1693,7 +1702,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
1693
1702
  const prevButton = this.container.querySelector(".prev-button.button-link");
1694
1703
  prevButton.style.display = this.editorInput?.showWelcome || this.editorInput?.returnToCommand || this.prevWalkthrough ? "block" : "none";
1695
1704
  const moreTextElement = prevButton.querySelector(".moreText");
1696
- moreTextElement.textContent = firstLaunch ? ( localize(15290, "Welcome")) : ( localize(15261, "Go Back"));
1705
+ moreTextElement.textContent = firstLaunch ? ( localize(15427, "Welcome")) : ( localize(15398, "Go Back"));
1697
1706
  this.container.querySelector(".gettingStartedSlideDetails").querySelectorAll("button").forEach(button => button.disabled = false);
1698
1707
  this.container.querySelector(".gettingStartedSlideCategories").querySelectorAll("button").forEach(button => button.disabled = true);
1699
1708
  this.container.querySelector(".gettingStartedSlideCategories").querySelectorAll("input").forEach(button => button.disabled = true);
@@ -130,9 +130,9 @@ class GettingStartedAccessibleProvider extends Disposable {
130
130
  }
131
131
  _getContent(waltkrough, step, includeTitle) {
132
132
  const description = ( step.description.map(lt => lt.nodes.filter(node => typeof node === "string"))).join("\n");
133
- const stepsContent = ( localize(15291, "{0}\n{1}", step.title, description));
133
+ const stepsContent = ( localize(15428, "{0}\n{1}", step.title, description));
134
134
  if (includeTitle) {
135
- return [( localize(15292, "Title: {0}", waltkrough.title)), ( localize(15293, "Description: {0}", waltkrough.description)), stepsContent].join("\n");
135
+ return [( localize(15429, "Title: {0}", waltkrough.title)), ( localize(15430, "Description: {0}", waltkrough.description)), stepsContent].join("\n");
136
136
  } else {
137
137
  return stepsContent;
138
138
  }
@@ -12,30 +12,30 @@ import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/quic
12
12
  import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/searchColors';
13
13
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
14
14
 
15
- registerColor("welcomePage.background", null, ( localize(15294, "Background color for the Welcome page.")));
15
+ registerColor("welcomePage.background", null, ( localize(15431, "Background color for the Welcome page.")));
16
16
  registerColor("welcomePage.tileBackground", {
17
17
  dark: editorWidgetBackground,
18
18
  light: editorWidgetBackground,
19
19
  hcDark: "#000",
20
20
  hcLight: editorWidgetBackground
21
- }, ( localize(15295, "Background color for the tiles on the Welcome page.")));
21
+ }, ( localize(15432, "Background color for the tiles on the Welcome page.")));
22
22
  registerColor("welcomePage.tileHoverBackground", {
23
23
  dark: ( lighten(editorWidgetBackground, .2)),
24
24
  light: ( darken(editorWidgetBackground, .1)),
25
25
  hcDark: null,
26
26
  hcLight: null
27
- }, ( localize(15296, "Hover background color for the tiles on the Welcome.")));
27
+ }, ( localize(15433, "Hover background color for the tiles on the Welcome.")));
28
28
  registerColor("welcomePage.tileBorder", {
29
29
  dark: "#ffffff1a",
30
30
  light: "#0000001a",
31
31
  hcDark: contrastBorder,
32
32
  hcLight: contrastBorder
33
- }, ( localize(15297, "Border color for the tiles on the Welcome page.")));
34
- registerColor("welcomePage.progress.background", inputBackground, ( localize(15298, "Foreground color for the Welcome page progress bars.")));
35
- registerColor("welcomePage.progress.foreground", textLinkForeground, ( localize(15299, "Background color for the Welcome page progress bars.")));
33
+ }, ( localize(15434, "Border color for the tiles on the Welcome page.")));
34
+ registerColor("welcomePage.progress.background", inputBackground, ( localize(15435, "Foreground color for the Welcome page progress bars.")));
35
+ registerColor("welcomePage.progress.foreground", textLinkForeground, ( localize(15436, "Background color for the Welcome page progress bars.")));
36
36
  registerColor("walkthrough.stepTitle.foreground", {
37
37
  light: "#000000",
38
38
  dark: "#ffffff",
39
39
  hcDark: null,
40
40
  hcLight: null
41
- }, ( localize(15300, "Foreground color of the heading of each walkthrough step")));
41
+ }, ( localize(15437, "Foreground color of the heading of each walkthrough step")));
@@ -2,12 +2,12 @@
2
2
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
3
3
  import { ExtensionsRegistry } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensionsRegistry';
4
4
 
5
- const titleTranslated = ( localize(15301, "Title"));
5
+ const titleTranslated = ( localize(15438, "Title"));
6
6
  const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
7
7
  extensionPoint: "walkthroughs",
8
8
  jsonSchema: {
9
9
  description: ( localize(
10
- 15302,
10
+ 15439,
11
11
  "Contribute walkthroughs to help users getting started with your extension."
12
12
  )),
13
13
  type: "array",
@@ -25,27 +25,27 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
25
25
  properties: {
26
26
  id: {
27
27
  type: "string",
28
- description: ( localize(15303, "Unique identifier for this walkthrough."))
28
+ description: ( localize(15440, "Unique identifier for this walkthrough."))
29
29
  },
30
30
  title: {
31
31
  type: "string",
32
- description: ( localize(15304, "Title of walkthrough."))
32
+ description: ( localize(15441, "Title of walkthrough."))
33
33
  },
34
34
  icon: {
35
35
  type: "string",
36
36
  description: ( localize(
37
- 15305,
37
+ 15442,
38
38
  "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."
39
39
  ))
40
40
  },
41
41
  description: {
42
42
  type: "string",
43
- description: ( localize(15306, "Description of walkthrough."))
43
+ description: ( localize(15443, "Description of walkthrough."))
44
44
  },
45
45
  featuredFor: {
46
46
  type: "array",
47
47
  description: ( localize(
48
- 15307,
48
+ 15444,
49
49
  "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."
50
50
  )),
51
51
  items: {
@@ -55,13 +55,13 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
55
55
  when: {
56
56
  type: "string",
57
57
  description: ( localize(
58
- 15308,
58
+ 15445,
59
59
  "Context key expression to control the visibility of this walkthrough."
60
60
  ))
61
61
  },
62
62
  steps: {
63
63
  type: "array",
64
- description: ( localize(15309, "Steps to complete as part of this walkthrough.")),
64
+ description: ( localize(15446, "Steps to complete as part of this walkthrough.")),
65
65
  items: {
66
66
  type: "object",
67
67
  required: ["id", "title", "media"],
@@ -78,18 +78,18 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
78
78
  id: {
79
79
  type: "string",
80
80
  description: ( localize(
81
- 15310,
81
+ 15447,
82
82
  "Unique identifier for this step. This is used to keep track of which steps have been completed."
83
83
  ))
84
84
  },
85
85
  title: {
86
86
  type: "string",
87
- description: ( localize(15311, "Title of step."))
87
+ description: ( localize(15448, "Title of step."))
88
88
  },
89
89
  description: {
90
90
  type: "string",
91
91
  description: ( localize(
92
- 15312,
92
+ 15449,
93
93
  "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.",
94
94
  `[${titleTranslated}](command:myext.command)`,
95
95
  `[${titleTranslated}](command:toSide:myext.command)`,
@@ -98,7 +98,7 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
98
98
  },
99
99
  button: {
100
100
  deprecationMessage: ( localize(
101
- 15313,
101
+ 15450,
102
102
  "Deprecated. Use markdown links in the description instead, i.e. {0}, {1}, or {2}",
103
103
  `[${titleTranslated}](command:myext.command)`,
104
104
  `[${titleTranslated}](command:toSide:myext.command)`,
@@ -108,7 +108,7 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
108
108
  media: {
109
109
  type: "object",
110
110
  description: ( localize(
111
- 15314,
111
+ 15451,
112
112
  "Media to show alongside this step, either an image or markdown content."
113
113
  )),
114
114
  oneOf: [{
@@ -116,11 +116,11 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
116
116
  additionalProperties: false,
117
117
  properties: {
118
118
  path: {
119
- deprecationMessage: ( localize(15315, "Deprecated. Please use `image` or `markdown` instead"))
119
+ deprecationMessage: ( localize(15452, "Deprecated. Please use `image` or `markdown` instead"))
120
120
  },
121
121
  image: {
122
122
  description: ( localize(
123
- 15316,
123
+ 15453,
124
124
  "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."
125
125
  )),
126
126
  oneOf: [{
@@ -131,25 +131,25 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
131
131
  properties: {
132
132
  dark: {
133
133
  description: ( localize(
134
- 15317,
134
+ 15454,
135
135
  "Path to the image for dark themes, relative to extension directory."
136
136
  )),
137
137
  type: "string"
138
138
  },
139
139
  light: {
140
140
  description: ( localize(
141
- 15318,
141
+ 15455,
142
142
  "Path to the image for light themes, relative to extension directory."
143
143
  )),
144
144
  type: "string"
145
145
  },
146
146
  hc: {
147
- description: ( localize(15319, "Path to the image for hc themes, relative to extension directory.")),
147
+ description: ( localize(15456, "Path to the image for hc themes, relative to extension directory.")),
148
148
  type: "string"
149
149
  },
150
150
  hcLight: {
151
151
  description: ( localize(
152
- 15320,
152
+ 15457,
153
153
  "Path to the image for hc light themes, relative to extension directory."
154
154
  )),
155
155
  type: "string"
@@ -160,7 +160,7 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
160
160
  altText: {
161
161
  type: "string",
162
162
  description: ( localize(
163
- 15321,
163
+ 15458,
164
164
  "Alternate text to display when the image cannot be loaded or in screen readers."
165
165
  ))
166
166
  }
@@ -171,7 +171,7 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
171
171
  properties: {
172
172
  svg: {
173
173
  description: ( localize(
174
- 15322,
174
+ 15459,
175
175
  "Path to an svg, color tokens are supported in variables to support theming to match the workbench."
176
176
  )),
177
177
  type: "string"
@@ -179,7 +179,7 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
179
179
  altText: {
180
180
  type: "string",
181
181
  description: ( localize(
182
- 15321,
182
+ 15458,
183
183
  "Alternate text to display when the image cannot be loaded or in screen readers."
184
184
  ))
185
185
  }
@@ -189,10 +189,10 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
189
189
  additionalProperties: false,
190
190
  properties: {
191
191
  path: {
192
- deprecationMessage: ( localize(15315, "Deprecated. Please use `image` or `markdown` instead"))
192
+ deprecationMessage: ( localize(15452, "Deprecated. Please use `image` or `markdown` instead"))
193
193
  },
194
194
  markdown: {
195
- description: ( localize(15323, "Path to the markdown document, relative to extension directory.")),
195
+ description: ( localize(15460, "Path to the markdown document, relative to extension directory.")),
196
196
  type: "string"
197
197
  }
198
198
  }
@@ -200,7 +200,7 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
200
200
  },
201
201
  completionEvents: {
202
202
  description: ( localize(
203
- 15324,
203
+ 15461,
204
204
  "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."
205
205
  )),
206
206
  type: "array",
@@ -209,47 +209,47 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
209
209
  defaultSnippets: [{
210
210
  label: "onCommand",
211
211
  description: ( localize(
212
- 15325,
212
+ 15462,
213
213
  "Check off step when a given command is executed anywhere in VS Code."
214
214
  )),
215
215
  body: "onCommand:${1:commandId}"
216
216
  }, {
217
217
  label: "onLink",
218
218
  description: ( localize(
219
- 15326,
219
+ 15463,
220
220
  "Check off step when a given link is opened via a walkthrough step."
221
221
  )),
222
222
  body: "onLink:${2:linkId}"
223
223
  }, {
224
224
  label: "onView",
225
- description: ( localize(15327, "Check off step when a given view is opened")),
225
+ description: ( localize(15464, "Check off step when a given view is opened")),
226
226
  body: "onView:${2:viewId}"
227
227
  }, {
228
228
  label: "onSettingChanged",
229
- description: ( localize(15328, "Check off step when a given setting is changed")),
229
+ description: ( localize(15465, "Check off step when a given setting is changed")),
230
230
  body: "onSettingChanged:${2:settingName}"
231
231
  }, {
232
232
  label: "onContext",
233
- description: ( localize(15329, "Check off step when a context key expression is true.")),
233
+ description: ( localize(15466, "Check off step when a context key expression is true.")),
234
234
  body: "onContext:${2:key}"
235
235
  }, {
236
236
  label: "onExtensionInstalled",
237
237
  description: ( localize(
238
- 15330,
238
+ 15467,
239
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."
240
240
  )),
241
241
  body: "onExtensionInstalled:${3:extensionId}"
242
242
  }, {
243
243
  label: "onStepSelected",
244
- description: ( localize(15331, "Check off step as soon as it is selected.")),
244
+ description: ( localize(15468, "Check off step as soon as it is selected.")),
245
245
  body: "onStepSelected"
246
246
  }]
247
247
  }
248
248
  },
249
249
  doneOn: {
250
- description: ( localize(15332, "Signal to mark step as complete.")),
250
+ description: ( localize(15469, "Signal to mark step as complete.")),
251
251
  deprecationMessage: ( localize(
252
- 15333,
252
+ 15470,
253
253
  "doneOn is deprecated. By default steps will be checked off when their buttons are clicked, to configure further use completionEvents"
254
254
  )),
255
255
  type: "object",
@@ -261,14 +261,14 @@ const walkthroughsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
261
261
  }],
262
262
  properties: {
263
263
  "command": {
264
- description: ( localize(15334, "Mark step done when the specified command is executed.")),
264
+ description: ( localize(15471, "Mark step done when the specified command is executed.")),
265
265
  type: "string"
266
266
  }
267
267
  }
268
268
  },
269
269
  when: {
270
270
  type: "string",
271
- description: ( localize(15335, "Context key expression to control the visibility of this step."))
271
+ description: ( localize(15472, "Context key expression to control the visibility of this step."))
272
272
  }
273
273
  }
274
274
  }