@codingame/monaco-vscode-welcome-service-override 37.1.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 (40) hide show
  1. package/common.d.ts +2 -0
  2. package/common.js +15 -0
  3. package/index.js +3 -7
  4. package/package.json +11 -3
  5. package/session.d.ts +2 -0
  6. package/session.js +10 -0
  7. package/vscode/src/vs/workbench/contrib/onboarding/browser/onboarding.contribution.js +8 -8
  8. package/vscode/src/vs/workbench/contrib/onboarding/browser/onboardingService.d.ts +1 -1
  9. package/vscode/src/vs/workbench/contrib/onboarding/browser/onboardingService.js +5 -5
  10. package/vscode/src/vs/workbench/contrib/onboarding/browser/sequence/sequencePresentation.d.ts +1 -1
  11. package/vscode/src/vs/workbench/contrib/onboarding/browser/sequence/sequencePresentation.js +2 -2
  12. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/spotlightOverlay.d.ts +2 -2
  13. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/spotlightOverlay.js +9 -9
  14. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/spotlightPresentation.d.ts +2 -2
  15. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/spotlightPresentation.js +7 -4
  16. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingPresentation.d.ts +1 -1
  17. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcome.contribution.js +5 -5
  18. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcome.d.ts +105 -0
  19. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcome.js +765 -0
  20. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/media/agentSessionsWelcome.css +564 -0
  21. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/browser/onboardingVariationA.js +55 -55
  22. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/browser/welcomeOnboarding.contribution.js +2 -2
  23. package/vscode/src/vs/workbench/contrib/welcomeViews/common/newFile.contribution.js +10 -10
  24. package/vscode/src/vs/workbench/contrib/welcomeViews/common/viewsWelcomeContribution.js +1 -1
  25. package/vscode/src/vs/workbench/contrib/welcomeViews/common/viewsWelcomeExtensionPoint.js +8 -8
  26. package/vscode/src/vs/workbench/contrib/onboarding/browser/media/onboardingTarget.css +0 -28
  27. package/vscode/src/vs/workbench/contrib/onboarding/browser/sequence/runOnboardingStep.d.ts +0 -17
  28. package/vscode/src/vs/workbench/contrib/onboarding/browser/sequence/runOnboardingStep.js +0 -32
  29. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/onboardingTarget.d.ts +0 -37
  30. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/onboardingTarget.js +0 -29
  31. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes.d.ts +0 -67
  32. package/vscode/src/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes.js +0 -5
  33. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingRegistry.d.ts +0 -21
  34. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingRegistry.js +0 -35
  35. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenario.d.ts +0 -172
  36. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenario.js +0 -20
  37. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenarioService.d.ts +0 -48
  38. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingScenarioService.js +0 -11
  39. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingSequence.d.ts +0 -45
  40. package/vscode/src/vs/workbench/contrib/onboarding/common/onboardingSequence.js +0 -29
@@ -36,7 +36,7 @@ import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platfo
36
36
  import { ChatSetupStrategy } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatSetup/chatSetup';
37
37
  import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
38
38
  import { IAccessibilityService } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/common/accessibility.service';
39
- import { ONBOARDING_STEPS, AiCollaborationMode, OnboardingStepId, getOnboardingStepTitle, getOnboardingStepSubtitle, parseGheInstanceInput, GheParseResultKind, GHE_FULL_URI_REGEX, ONBOARDING_AI_PREFERENCE_OPTIONS } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes';
39
+ import { ONBOARDING_STEPS, AiCollaborationMode, OnboardingStepId, getOnboardingStepTitle, getOnboardingStepSubtitle, parseGheInstanceInput, GheParseResultKind, GHE_FULL_URI_REGEX, ONBOARDING_AI_PREFERENCE_OPTIONS } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes';
40
40
  import Severity from '@codingame/monaco-vscode-api/vscode/vs/base/common/severity';
41
41
 
42
42
  var OnboardingVariationA_1;
@@ -116,11 +116,11 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
116
116
  this.overlay = append(container, $(".onboarding-a-overlay"));
117
117
  this.overlay.setAttribute("role", "dialog");
118
118
  this.overlay.setAttribute("aria-modal", "true");
119
- this.overlay.setAttribute("aria-label", ( localize(19034, "Welcome to Visual Studio Code")));
119
+ this.overlay.setAttribute("aria-label", ( localize(21177, "Welcome to Visual Studio Code")));
120
120
  this.card = append(this.overlay, $(".onboarding-a-card"));
121
121
  this.closeButton = append(this.card, $("button.onboarding-a-close-btn"));
122
122
  this.closeButton.type = "button";
123
- this.closeButton.setAttribute("aria-label", ( localize(19035, "Close")));
123
+ this.closeButton.setAttribute("aria-label", ( localize(21178, "Close")));
124
124
  this.closeButton.appendChild(renderIcon(Codicon.close));
125
125
  const header = append(this.card, $(".onboarding-a-header"));
126
126
  this.progressContainer = append(header, $(".onboarding-a-progress"));
@@ -136,7 +136,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
136
136
  this.footerLeft = append(footer, $(".onboarding-a-footer-left"));
137
137
  const footerRight = append(footer, $(".onboarding-a-footer-right"));
138
138
  this.backButton = append(footerRight, $("button.onboarding-a-btn.onboarding-a-btn-secondary"));
139
- this.backButton.textContent = ( localize(19036, "Back"));
139
+ this.backButton.textContent = ( localize(21179, "Back"));
140
140
  this.backButton.type = "button";
141
141
  this.footerFocusableElements.push(this.backButton);
142
142
  this.nextButton = append(footerRight, $("button.onboarding-a-btn.onboarding-a-btn-primary"));
@@ -267,7 +267,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
267
267
  }
268
268
  }
269
269
  this.progressContainer.appendChild(this.stepLabelEl);
270
- this.stepLabelEl.textContent = ( localize(19037, "{0} of {1}", this.currentStepIndex + 1, this.steps.length));
270
+ this.stepLabelEl.textContent = ( localize(21180, "{0} of {1}", this.currentStepIndex + 1, this.steps.length));
271
271
  }
272
272
  _renderStep() {
273
273
  if (!this.titleEl || !this.subtitleEl || !this.contentEl) {
@@ -298,7 +298,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
298
298
  break;
299
299
  }
300
300
  this.bodyEl?.setAttribute("aria-label", ( localize(
301
- 19038,
301
+ 21181,
302
302
  "Step {0} of {1}: {2}",
303
303
  this.currentStepIndex + 1,
304
304
  this.steps.length,
@@ -314,17 +314,17 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
314
314
  if (this.currentStepIndex === 0) {
315
315
  if (this._userSignedIn) {
316
316
  this.nextButton.className = "onboarding-a-btn onboarding-a-btn-primary";
317
- this.nextButton.textContent = ( localize(19039, "Continue"));
317
+ this.nextButton.textContent = ( localize(21182, "Continue"));
318
318
  } else {
319
319
  this.nextButton.className = "onboarding-a-btn onboarding-a-btn-secondary";
320
- this.nextButton.textContent = ( localize(19040, "Continue without Signing In"));
320
+ this.nextButton.textContent = ( localize(21183, "Continue without Signing In"));
321
321
  }
322
322
  } else if (this._isLastStep()) {
323
323
  this.nextButton.className = "onboarding-a-btn onboarding-a-btn-primary";
324
- this.nextButton.textContent = ( localize(19041, "Get Started"));
324
+ this.nextButton.textContent = ( localize(21184, "Get Started"));
325
325
  } else {
326
326
  this.nextButton.className = "onboarding-a-btn onboarding-a-btn-primary";
327
- this.nextButton.textContent = ( localize(19042, "Continue"));
327
+ this.nextButton.textContent = ( localize(21185, "Continue"));
328
328
  }
329
329
  }
330
330
  if (this.footerLeft) {
@@ -332,7 +332,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
332
332
  if (!this._footerSignInBtn && !this._userSignedIn) {
333
333
  this._footerSignInBtn = append(this.footerLeft, $("button.onboarding-a-signin-nudge-btn"));
334
334
  this._footerSignInBtn.type = "button";
335
- this._footerSignInBtn.textContent = ( localize(19043, "Sign in to use GitHub Copilot"));
335
+ this._footerSignInBtn.textContent = ( localize(21186, "Sign in to use GitHub Copilot"));
336
336
  this.stepDisposables.add(
337
337
  addDisposableListener(this._footerSignInBtn, EventType.CLICK, async () => {
338
338
  this._logAction("signInNudge");
@@ -360,9 +360,9 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
360
360
  const content = append(wrapper, $(".onboarding-a-signin-content"));
361
361
  const contentMain = append(content, $(".onboarding-a-signin-content-main"));
362
362
  const title = append(contentMain, $("h2.onboarding-a-signin-title"));
363
- title.textContent = ( localize(19044, "Welcome to VS Code"));
363
+ title.textContent = ( localize(21187, "Welcome to VS Code"));
364
364
  const subtitle = append(contentMain, $("p.onboarding-a-signin-subtitle"));
365
- subtitle.textContent = ( localize(19045, "Sign in to use GitHub Copilot."));
365
+ subtitle.textContent = ( localize(21188, "Sign in to use GitHub Copilot."));
366
366
  const actions = append(contentMain, $(".onboarding-a-signin-actions"));
367
367
  if (this._userSignedIn) {
368
368
  const signedIn = append(actions, $(".onboarding-a-signin-confirmation"));
@@ -370,7 +370,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
370
370
  icon.classList.add(...ThemeIcon.asClassNameArray(Codicon.check));
371
371
  icon.setAttribute("aria-hidden", "true");
372
372
  const text = append(signedIn, $("span"));
373
- text.textContent = ( localize(19046, "You're signed in. You can continue to the next step."));
373
+ text.textContent = ( localize(21189, "You're signed in. You can continue to the next step."));
374
374
  } else {
375
375
  switch (this.enterpriseSignInUiState) {
376
376
  case "instance":
@@ -388,49 +388,49 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
388
388
  const disclaimerCol = append(footer, $(".onboarding-a-signin-disclaimer-col"));
389
389
  const copilotDisclaimer = append(disclaimerCol, $(".onboarding-a-signin-disclaimer"));
390
390
  copilotDisclaimer.append(( localize(
391
- 19047,
391
+ 21190,
392
392
  "By signing in, you agree to {0}'s ",
393
393
  defaultChat.provider.default.name
394
394
  )));
395
- this._createInlineLink(copilotDisclaimer, ( localize(19048, "Terms")), defaultChat.termsStatementUrl);
396
- copilotDisclaimer.append(( localize(19049, " and ")));
397
- this._createInlineLink(copilotDisclaimer, ( localize(19050, "Privacy Statement")), defaultChat.privacyStatementUrl);
398
- copilotDisclaimer.append(( localize(19051, ". {0} Copilot may show ", defaultChat.provider.default.name)));
399
- this._createInlineLink(copilotDisclaimer, ( localize(19052, "public code")), defaultChat.publicCodeMatchesUrl);
400
- copilotDisclaimer.append(( localize(19053, " suggestions and use your data to improve the product.")));
395
+ this._createInlineLink(copilotDisclaimer, ( localize(21191, "Terms")), defaultChat.termsStatementUrl);
396
+ copilotDisclaimer.append(( localize(21192, " and ")));
397
+ this._createInlineLink(copilotDisclaimer, ( localize(21193, "Privacy Statement")), defaultChat.privacyStatementUrl);
398
+ copilotDisclaimer.append(( localize(21194, ". {0} Copilot may show ", defaultChat.provider.default.name)));
399
+ this._createInlineLink(copilotDisclaimer, ( localize(21195, "public code")), defaultChat.publicCodeMatchesUrl);
400
+ copilotDisclaimer.append(( localize(21196, " suggestions and use your data to improve the product.")));
401
401
  copilotDisclaimer.append(" ");
402
- copilotDisclaimer.append(( localize(19054, "You can change these ")));
403
- this._createInlineLink(copilotDisclaimer, ( localize(19055, "settings")), this.defaultAccountService.resolveGitHubUrl(GitHubPaths.copilotSettings));
404
- copilotDisclaimer.append(( localize(19056, " anytime.")));
402
+ copilotDisclaimer.append(( localize(21197, "You can change these ")));
403
+ this._createInlineLink(copilotDisclaimer, ( localize(21198, "settings")), this.defaultAccountService.resolveGitHubUrl(GitHubPaths.copilotSettings));
404
+ copilotDisclaimer.append(( localize(21199, " anytime.")));
405
405
  }
406
406
  _renderDefaultSignInActions(actions) {
407
- const githubBtn = this._registerStepFocusable(this._createSignInButton(actions, "github", ( localize(19057, "Continue with GitHub")), {
407
+ const githubBtn = this._registerStepFocusable(this._createSignInButton(actions, "github", ( localize(21200, "Continue with GitHub")), {
408
408
  emphasized: true,
409
- label: ( localize(19058, "Continue with GitHub"))
409
+ label: ( localize(21201, "Continue with GitHub"))
410
410
  }));
411
411
  this.stepDisposables.add(addDisposableListener(githubBtn, EventType.CLICK, () => {
412
412
  this._logAction("signIn", undefined, "github");
413
413
  this._handleSignIn();
414
414
  }));
415
- const googleBtn = this._registerStepFocusable(this._createSignInButton(actions, "google", ( localize(19059, "Continue with Google")), {
415
+ const googleBtn = this._registerStepFocusable(this._createSignInButton(actions, "google", ( localize(21202, "Continue with Google")), {
416
416
  iconOnly: true,
417
- label: ( localize(19059, "Continue with Google"))
417
+ label: ( localize(21202, "Continue with Google"))
418
418
  }));
419
419
  this.stepDisposables.add(addDisposableListener(googleBtn, EventType.CLICK, () => {
420
420
  this._logAction("signIn", undefined, "google");
421
421
  this._handleSignIn("google");
422
422
  }));
423
- const appleBtn = this._registerStepFocusable(this._createSignInButton(actions, "apple", ( localize(19060, "Continue with Apple")), {
423
+ const appleBtn = this._registerStepFocusable(this._createSignInButton(actions, "apple", ( localize(21203, "Continue with Apple")), {
424
424
  iconOnly: true,
425
- label: ( localize(19060, "Continue with Apple"))
425
+ label: ( localize(21203, "Continue with Apple"))
426
426
  }));
427
427
  this.stepDisposables.add(addDisposableListener(appleBtn, EventType.CLICK, () => {
428
428
  this._logAction("signIn", undefined, "apple");
429
429
  this._handleSignIn("apple");
430
430
  }));
431
- const gheBtn = this._registerStepFocusable(this._createSignInButton(actions, "github-enterprise", ( localize(19061, "GHE")), {
431
+ const gheBtn = this._registerStepFocusable(this._createSignInButton(actions, "github-enterprise", ( localize(21204, "GHE")), {
432
432
  textOnly: true,
433
- label: ( localize(19062, "Continue with GitHub Enterprise"))
433
+ label: ( localize(21205, "Continue with GitHub Enterprise"))
434
434
  }));
435
435
  this.stepDisposables.add(addDisposableListener(gheBtn, EventType.CLICK, () => {
436
436
  this._logAction("signIn", undefined, "github-enterprise");
@@ -443,9 +443,9 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
443
443
  _renderEnterpriseInstanceForm(actions) {
444
444
  const enterprisePromptLabel = this._getEnterpriseInstancePromptLabel();
445
445
  const container = append(actions, $(".onboarding-a-signin-ghe-input"));
446
- const submitAction = this.stepDisposables.add(( new Action("onboarding.signIn.enterprise.submit", ( localize(19063, "Continue")), ThemeIcon.asClassName(Codicon.arrowRight), false)));
446
+ const submitAction = this.stepDisposables.add(( new Action("onboarding.signIn.enterprise.submit", ( localize(21206, "Continue")), ThemeIcon.asClassName(Codicon.arrowRight), false)));
447
447
  const inputBox = this.stepDisposables.add(( new InputBox(container, undefined, {
448
- placeholder: ( localize(19064, "i.e. \"octocat\" or \"https://octocat.ghe.com\"...")),
448
+ placeholder: ( localize(21207, "i.e. \"octocat\" or \"https://octocat.ghe.com\"...")),
449
449
  ariaLabel: enterprisePromptLabel,
450
450
  actions: [submitAction],
451
451
  inputBoxStyles: defaultInputBoxStyles
@@ -475,7 +475,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
475
475
  return false;
476
476
  case GheParseResultKind.SingleWord:
477
477
  message.classList.add("info");
478
- message.textContent = ( localize(19065, "Will resolve to {0}", result.resolvedUri));
478
+ message.textContent = ( localize(21208, "Will resolve to {0}", result.resolvedUri));
479
479
  submitAction.enabled = true;
480
480
  return true;
481
481
  case GheParseResultKind.FullUri:
@@ -486,7 +486,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
486
486
  inputBox.element.classList.add("error");
487
487
  message.classList.add("error");
488
488
  message.textContent = ( localize(
489
- 19066,
489
+ 21209,
490
490
  "You must enter a valid {0} instance (i.e. \"octocat\" or \"https://octocat.ghe.com\")",
491
491
  defaultChat.provider.enterprise.name
492
492
  ));
@@ -522,13 +522,13 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
522
522
  spinner.setAttribute("aria-hidden", "true");
523
523
  const message = append(container, $(".onboarding-a-signin-ghe-progress-message"));
524
524
  message.textContent = ( localize(
525
- 19067,
525
+ 21210,
526
526
  "Waiting for {0} sign-in to complete...",
527
527
  defaultChat.provider.enterprise.name
528
528
  ));
529
529
  }
530
530
  _getEnterpriseInstancePromptLabel() {
531
- return localize(19068, "What is your {0} instance?", defaultChat.provider.enterprise.name);
531
+ return localize(21211, "What is your {0} instance?", defaultChat.provider.enterprise.name);
532
532
  }
533
533
  _setEnterpriseSignInUiState(state) {
534
534
  this.enterpriseSignInUiState = state;
@@ -605,7 +605,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
605
605
  });
606
606
  this.notificationService.notify({
607
607
  severity: Severity.Error,
608
- message: ( localize(19069, "Sign-in failed. You can try again later from the Accounts menu."))
608
+ message: ( localize(21212, "Sign-in failed. You can try again later from the Accounts menu."))
609
609
  });
610
610
  }
611
611
  }
@@ -679,7 +679,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
679
679
  this.notificationService.notify({
680
680
  severity: Severity.Error,
681
681
  message: ( localize(
682
- 19070,
682
+ 21213,
683
683
  "GitHub Enterprise sign-in failed. Check your instance URL and try again."
684
684
  ))
685
685
  });
@@ -687,15 +687,15 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
687
687
  _renderPersonalizeStep(container) {
688
688
  const wrapper = append(container, $(".onboarding-a-personalize"));
689
689
  const themeLabel = append(wrapper, $("div.onboarding-a-section-label"));
690
- themeLabel.textContent = ( localize(19071, "Color Theme"));
690
+ themeLabel.textContent = ( localize(21214, "Color Theme"));
691
691
  const themeHint = append(wrapper, $("div.onboarding-a-theme-hint"));
692
692
  themeHint.textContent = ( localize(
693
- 19072,
693
+ 21215,
694
694
  "You can browse and install more themes later from the Extensions view."
695
695
  ));
696
696
  const themeGrid = append(wrapper, $(".onboarding-a-theme-grid"));
697
697
  themeGrid.setAttribute("role", "radiogroup");
698
- themeGrid.setAttribute("aria-label", ( localize(19073, "Choose a color theme")));
698
+ themeGrid.setAttribute("aria-label", ( localize(21216, "Choose a color theme")));
699
699
  const hasOtherEditors = this._hasOtherEditors();
700
700
  const allThemes = product.onboardingThemes ?? [];
701
701
  const themes = hasOtherEditors ? allThemes.filter(t => !t.id.startsWith("solarized")) : allThemes;
@@ -715,15 +715,15 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
715
715
  wrapper,
716
716
  $("div.onboarding-a-section-label.onboarding-a-section-label-keymap")
717
717
  );
718
- keymapLabel.textContent = ( localize(19074, "Keyboard Mapping"));
718
+ keymapLabel.textContent = ( localize(21217, "Keyboard Mapping"));
719
719
  const keymapHint = append(wrapper, $("div.onboarding-a-theme-hint"));
720
720
  keymapHint.textContent = ( localize(
721
- 19075,
721
+ 21218,
722
722
  "Coming from another editor? Import your keyboard mapping to feel right at home."
723
723
  ));
724
724
  const keymapList = append(wrapper, $(".onboarding-a-keymap-list"));
725
725
  keymapList.setAttribute("role", "radiogroup");
726
- keymapList.setAttribute("aria-label", ( localize(19076, "Choose a keyboard mapping")));
726
+ keymapList.setAttribute("aria-label", ( localize(21219, "Choose a keyboard mapping")));
727
727
  const keymapPills = [];
728
728
  for (const keymap of keymapOptions) {
729
729
  const pill = this._registerStepFocusable(append(keymapList, $("button.onboarding-a-keymap-pill")));
@@ -746,7 +746,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
746
746
  }
747
747
  pill.classList.add("selected");
748
748
  pill.setAttribute("aria-checked", "true");
749
- this.accessibilityService.alert(( localize(19077, "{0} keyboard mapping selected", keymap.label)));
749
+ this.accessibilityService.alert(( localize(21220, "{0} keyboard mapping selected", keymap.label)));
750
750
  }));
751
751
  }
752
752
  const selectedKeymapIndex = keymapOptions.findIndex(k => k.id === this.selectedKeymapId);
@@ -756,7 +756,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
756
756
  _renderPersonalizeSubtitle(container) {
757
757
  clearNode(container);
758
758
  const modifier = isMacintosh ? "Cmd" : "Ctrl";
759
- container.append(( localize(19078, "Tip: Press ")), this._createKbd(( localize(19079, "{0}", modifier))), "+", this._createKbd(( localize(19080, "Shift"))), "+", this._createKbd(( localize(19081, "P"))), ( localize(19082, " to access all VS Code commands.")));
759
+ container.append(( localize(21221, "Tip: Press ")), this._createKbd(( localize(21222, "{0}", modifier))), "+", this._createKbd(( localize(21223, "Shift"))), "+", this._createKbd(( localize(21224, "P"))), ( localize(21225, " to access all VS Code commands.")));
760
760
  }
761
761
  _createThemeCard(parent, theme, allCards) {
762
762
  const card = this._registerStepFocusable(append(parent, $("div.onboarding-a-theme-card")));
@@ -784,7 +784,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
784
784
  }
785
785
  card.classList.add("selected");
786
786
  card.setAttribute("aria-checked", "true");
787
- this.accessibilityService.alert(( localize(19083, "{0} theme selected", theme.label)));
787
+ this.accessibilityService.alert(( localize(21226, "{0} theme selected", theme.label)));
788
788
  }));
789
789
  this.stepDisposables.add(addDisposableListener(card, EventType.KEY_DOWN, e => {
790
790
  if (e.key === "Enter" || e.key === " ") {
@@ -821,7 +821,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
821
821
  this.notificationService.notify({
822
822
  severity: Severity.Warning,
823
823
  message: ( localize(
824
- 19084,
824
+ 21227,
825
825
  "Could not install {0} keymap. You can install it later from Extensions.",
826
826
  keymap.label
827
827
  ))
@@ -928,7 +928,7 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
928
928
  ]
929
929
  });
930
930
  }
931
- await Promise.all(( checks.map(async check => {
931
+ await Promise.all(checks.map(async check => {
932
932
  for (const path of check.paths) {
933
933
  try {
934
934
  if (await this.fileService.exists(path)) {
@@ -937,14 +937,14 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
937
937
  }
938
938
  } catch {}
939
939
  }
940
- })));
940
+ }));
941
941
  return detected;
942
942
  }
943
943
  _renderAiPreferenceStep(container) {
944
944
  const wrapper = append(container, $(".onboarding-a-ai-pref"));
945
945
  const cards = append(wrapper, $(".onboarding-a-ai-pref-cards"));
946
946
  cards.setAttribute("role", "radiogroup");
947
- cards.setAttribute("aria-label", ( localize(19085, "Choose your AI collaboration style")));
947
+ cards.setAttribute("aria-label", ( localize(21228, "Choose your AI collaboration style")));
948
948
  const allCards = [];
949
949
  for (const option of ONBOARDING_AI_PREFERENCE_OPTIONS) {
950
950
  const card = this._registerStepFocusable(append(cards, $("button.onboarding-a-ai-pref-card")));
@@ -972,13 +972,13 @@ let OnboardingVariationA = class OnboardingVariationA extends Disposable {
972
972
  c.setAttribute("aria-checked", c.dataset.id === option.id ? "true" : "false");
973
973
  }
974
974
  this._applyAiPreference(option.id);
975
- this.accessibilityService.alert(( localize(19086, "{0} selected", option.label)));
975
+ this.accessibilityService.alert(( localize(21229, "{0} selected", option.label)));
976
976
  }));
977
977
  }
978
978
  const selectedAiIndex = ONBOARDING_AI_PREFERENCE_OPTIONS.findIndex(o => o.id === this.selectedAiMode);
979
979
  this._setupRadioGroupNavigation(allCards, Math.max(0, selectedAiIndex));
980
980
  const hint = append(wrapper, $("div.onboarding-a-ai-pref-hint"));
981
- hint.textContent = ( localize(19087, "You can change this anytime in Settings."));
981
+ hint.textContent = ( localize(21230, "You can change this anytime in Settings."));
982
982
  }
983
983
  _applyAiPreference(mode) {
984
984
  switch (mode) {
@@ -8,12 +8,12 @@ import '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/ext
8
8
  import { IOnboardingService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/welcomeOnboarding/common/onboardingService.service';
9
9
  import './onboardingVariationA.js';
10
10
 
11
- registerCss(variationA);
11
+ registerCss(variationA, 1);
12
12
  registerAction2(class extends Action2 {
13
13
  constructor() {
14
14
  super({
15
15
  id: "workbench.action.welcomeOnboarding2026",
16
- title: ( localize2(19088, "Welcome Onboarding 2026")),
16
+ title: ( localize2(21231, "Welcome Onboarding 2026")),
17
17
  category: Categories.Developer,
18
18
  f1: true
19
19
  });
@@ -18,13 +18,13 @@ import { Extensions } from '@codingame/monaco-vscode-api/vscode/vs/workbench/com
18
18
  import { LifecyclePhase } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/lifecycle/common/lifecycle';
19
19
 
20
20
  var NewFileTemplatesManager_1;
21
- const builtInSource = ( localize(19101, "Built-In"));
22
- const category = ( localize2(19102, "Create"));
21
+ const builtInSource = ( localize(21244, "Built-In"));
22
+ const category = ( localize2(21245, "Create"));
23
23
  registerAction2(class extends Action2 {
24
24
  constructor() {
25
25
  super({
26
26
  id: "welcome.showNewFileEntries",
27
- title: ( localize2(19103, "New File...")),
27
+ title: ( localize2(21246, "New File...")),
28
28
  category,
29
29
  f1: true,
30
30
  precondition: ( IsSessionsWindowContext.negate()),
@@ -108,8 +108,8 @@ let NewFileTemplatesManager = class NewFileTemplatesManager extends Disposable {
108
108
  const qp = this.quickInputService.createQuickPick({
109
109
  useSeparators: true
110
110
  });
111
- qp.title = ( localize(19104, "New File..."));
112
- qp.placeholder = ( localize(19105, "Select File Type or Enter File Name..."));
111
+ qp.title = ( localize(21247, "New File..."));
112
+ qp.placeholder = ( localize(21248, "Select File Type or Enter File Name..."));
113
113
  qp.sortByLabel = false;
114
114
  qp.matchOnDetail = true;
115
115
  qp.matchOnDescription = true;
@@ -136,8 +136,8 @@ let NewFileTemplatesManager = class NewFileTemplatesManager extends Disposable {
136
136
  return a.from.localeCompare(b.from);
137
137
  };
138
138
  const displayCategory = {
139
- "file": ( localize(19106, "File")),
140
- "notebook": ( localize(19107, "Notebook"))
139
+ "file": ( localize(21249, "File")),
140
+ "notebook": ( localize(21250, "Notebook"))
141
141
  };
142
142
  const refreshQp = entries => {
143
143
  const items = [];
@@ -159,7 +159,7 @@ let NewFileTemplatesManager = class NewFileTemplatesManager extends Disposable {
159
159
  keybinding,
160
160
  buttons: command ? [{
161
161
  iconClass: "codicon codicon-gear",
162
- tooltip: ( localize(19108, "Configure Keybinding"))
162
+ tooltip: ( localize(21251, "Configure Keybinding"))
163
163
  }] : [],
164
164
  detail: "",
165
165
  description: entry.from
@@ -181,7 +181,7 @@ let NewFileTemplatesManager = class NewFileTemplatesManager extends Disposable {
181
181
  viewType: undefined,
182
182
  fileName: val
183
183
  },
184
- title: ( localize(19109, "Create New File ({0})", val)),
184
+ title: ( localize(21252, "Create New File ({0})", val)),
185
185
  group: "file",
186
186
  from: builtInSource
187
187
  };
@@ -215,7 +215,7 @@ MenuRegistry.appendMenuItem(MenuId.NewFile, {
215
215
  group: "file",
216
216
  command: {
217
217
  id: "workbench.action.files.newUntitledFile",
218
- title: ( localize(19110, "Text File"))
218
+ title: ( localize(21253, "Text File"))
219
219
  },
220
220
  order: 1
221
221
  });
@@ -63,7 +63,7 @@ function parseGroupAndOrder(welcome, contribution) {
63
63
  if (welcome.group) {
64
64
  if (!isProposedApiEnabled(contribution.description, "contribViewsWelcome")) {
65
65
  contribution.collector.warn(( localize(
66
- 19111,
66
+ 21254,
67
67
  "The viewsWelcome contribution in '{0}' requires 'enabledApiProposals: [\"contribViewsWelcome\"]' in order to use the 'group' proposed property.",
68
68
  contribution.description.identifier.value
69
69
  )));
@@ -20,12 +20,12 @@ const ViewIdentifierMap = {
20
20
  const viewsWelcomeExtensionPointSchema = ( Object.freeze({
21
21
  type: "array",
22
22
  description: ( localize(
23
- 19112,
23
+ 21255,
24
24
  "Contributed views welcome content. Welcome content will be rendered in tree based views whenever they have no meaningful content to display, ie. the File Explorer when no folder is open. Such content is useful as in-product documentation to drive users to use certain features before they are available. A good example would be a `Clone Repository` button in the File Explorer welcome view."
25
25
  )),
26
26
  items: {
27
27
  type: "object",
28
- description: ( localize(19113, "Contributed welcome content for a specific view.")),
28
+ description: ( localize(21256, "Contributed welcome content for a specific view.")),
29
29
  required: [
30
30
  ViewsWelcomeExtensionPointFields.view,
31
31
  ViewsWelcomeExtensionPointFields.contents
@@ -35,13 +35,13 @@ const viewsWelcomeExtensionPointSchema = ( Object.freeze({
35
35
  anyOf: [{
36
36
  type: "string",
37
37
  description: ( localize(
38
- 19114,
38
+ 21257,
39
39
  "Target view identifier for this welcome content. Only tree based views are supported."
40
40
  ))
41
41
  }, {
42
42
  type: "string",
43
43
  description: ( localize(
44
- 19114,
44
+ 21257,
45
45
  "Target view identifier for this welcome content. Only tree based views are supported."
46
46
  )),
47
47
  enum: ( Object.keys(ViewIdentifierMap))
@@ -50,22 +50,22 @@ const viewsWelcomeExtensionPointSchema = ( Object.freeze({
50
50
  [ViewsWelcomeExtensionPointFields.contents]: {
51
51
  type: "string",
52
52
  description: ( localize(
53
- 19115,
53
+ 21258,
54
54
  "Welcome content to be displayed. The format of the contents is a subset of Markdown, with support for links only."
55
55
  ))
56
56
  },
57
57
  [ViewsWelcomeExtensionPointFields.when]: {
58
58
  type: "string",
59
- description: ( localize(19116, "Condition when the welcome content should be displayed."))
59
+ description: ( localize(21259, "Condition when the welcome content should be displayed."))
60
60
  },
61
61
  [ViewsWelcomeExtensionPointFields.group]: {
62
62
  type: "string",
63
- description: ( localize(19117, "Group to which this welcome content belongs. Proposed API."))
63
+ description: ( localize(21260, "Group to which this welcome content belongs. Proposed API."))
64
64
  },
65
65
  [ViewsWelcomeExtensionPointFields.enablement]: {
66
66
  type: "string",
67
67
  description: ( localize(
68
- 19118,
68
+ 21261,
69
69
  "Condition when the welcome content buttons and command links should be enabled."
70
70
  ))
71
71
  }
@@ -1,28 +0,0 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * Licensed under the MIT License. See License.txt in the project root for license information.
4
- *--------------------------------------------------------------------------------------------*/
5
-
6
- .onboarding-target-pulse {
7
- animation: onboarding-target-pulse 1.4s ease-out infinite;
8
- outline: var(--vscode-strokeThickness) solid var(--vscode-focusBorder);
9
- outline-offset: 2px;
10
- }
11
-
12
- @media (prefers-reduced-motion: reduce) {
13
- .onboarding-target-pulse {
14
- animation: none;
15
- }
16
- }
17
-
18
- @keyframes onboarding-target-pulse {
19
- 0% {
20
- box-shadow: 0 0 0 0 var(--vscode-focusBorder);
21
- }
22
- 70% {
23
- box-shadow: 0 0 0 6px transparent;
24
- }
25
- 100% {
26
- box-shadow: 0 0 0 0 transparent;
27
- }
28
- }
@@ -1,17 +0,0 @@
1
- import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
2
- import { IOnboardingSequenceStep, IOnboardingSequenceStepContext, IOnboardingSequenceStepPresentation, IOnboardingSequenceStepResult } from "../../common/onboardingSequence.js";
3
- export declare const RUN_ONBOARDING_STEP_KIND = "run";
4
- export interface IRunOnboardingStepResult {
5
- readonly shown?: boolean;
6
- }
7
- /** Callback payload for a cancellable non-visual sequence step. */
8
- export interface IRunOnboardingStepPayload {
9
- readonly run: (token: CancellationToken) => Promise<IRunOnboardingStepResult | void> | IRunOnboardingStepResult | void;
10
- }
11
- /** Executes a run-step callback once and continues after reported errors. */
12
- export declare class RunOnboardingStepPresentation implements IOnboardingSequenceStepPresentation {
13
- readonly kind = "run";
14
- readonly countsAsVisualStep = false;
15
- readonly runOnce = true;
16
- runStep(step: IOnboardingSequenceStep, context: IOnboardingSequenceStepContext): Promise<IOnboardingSequenceStepResult>;
17
- }
@@ -1,32 +0,0 @@
1
-
2
- import { raceCancellation } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
3
- import { onUnexpectedError } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errors';
4
-
5
- const RUN_ONBOARDING_STEP_KIND = 'run';
6
- class RunOnboardingStepPresentation {
7
- constructor() {
8
- this.kind = RUN_ONBOARDING_STEP_KIND;
9
- this.countsAsVisualStep = false;
10
- this.runOnce = true;
11
- }
12
- async runStep(step, context) {
13
- if (context.cancellationToken.isCancellationRequested) {
14
- return { action: 'abort', shown: false };
15
- }
16
- let result = undefined;
17
- try {
18
- const payload = step.payload;
19
- result = await raceCancellation(Promise.resolve(payload.run(context.cancellationToken)), context.cancellationToken);
20
- }
21
- catch (error) {
22
- if (!context.cancellationToken.isCancellationRequested) {
23
- onUnexpectedError(error);
24
- }
25
- }
26
- return context.cancellationToken.isCancellationRequested
27
- ? { action: 'abort', shown: false }
28
- : { action: 'next', shown: result?.shown === true };
29
- }
30
- }
31
-
32
- export { RUN_ONBOARDING_STEP_KIND, RunOnboardingStepPresentation };
@@ -1,37 +0,0 @@
1
- import { IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
- /**
3
- * Attribute used to mark a DOM element as an onboarding spotlight target.
4
- *
5
- * Components opt in by tagging their *own* element with this attribute. Tours
6
- * reference the id; they never reach into another component's markup or CSS
7
- * classes to locate a target (see the sessions "DOM Traversal & Intent" rule).
8
- */
9
- export declare const ONBOARDING_TARGET_ATTR = "data-onboarding-id";
10
- export declare const ONBOARDING_TARGET_PULSE_CLASS = "onboarding-target-pulse";
11
- export interface IOnboardingTargetOptions {
12
- /** Opens or expands the target before its spotlight step is shown. */
13
- readonly open?: () => Promise<void> | void;
14
- }
15
- /**
16
- * Marks `element` as the onboarding target identified by `id`.
17
- *
18
- * @returns A disposable that removes the attribute again.
19
- */
20
- export declare function markOnboardingTarget(element: HTMLElement, id: string, options?: IOnboardingTargetOptions): IDisposable;
21
- /** Opens or expands a target through the behavior registered by its owner. */
22
- export declare function openOnboardingTarget(element: HTMLElement): Promise<void> | void;
23
- /**
24
- * Applies the standard onboarding pulse treatment to `element`.
25
- *
26
- * @returns A disposable that removes the pulse again.
27
- */
28
- export declare function pulseOnboardingTarget(element: HTMLElement): IDisposable;
29
- /**
30
- * Resolves the element marked with the given onboarding target id within the
31
- * provided window's document. Returns `undefined` if no such element exists
32
- * (e.g. the feature is not currently rendered).
33
- *
34
- * This is the *only* place onboarding queries the DOM, and it matches solely on
35
- * the onboarding attribute — never on foreign classes or structure.
36
- */
37
- export declare function findOnboardingTarget(targetWindow: Window, id: string): HTMLElement | undefined;