@codingame/monaco-vscode-walkthrough-service-override 4.5.1 → 4.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.js +50 -107
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.js +138 -249
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedColors.js +8 -35
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedExtensionPoint.js +61 -116
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedIcons.js +5 -4
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedInput.js +3 -6
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +74 -77
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/startupPage.js +29 -32
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent.js +147 -498
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/notebookProfile.js +4 -15
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/media/theme_picker.js +6 -25
- package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/editor/editorWalkThrough.js +5 -12
- package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThrough.contribution.js +5 -12
- package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/browser/walkThroughPart.js +24 -31
- package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/common/walkThroughContentProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/welcomeWalkthrough/common/walkThroughUtils.js +4 -3
|
@@ -69,11 +69,12 @@ import { GettingStartedIndexList } from './gettingStartedList.js';
|
|
|
69
69
|
import { IWorkbenchAssignmentService } from 'vscode/vscode/vs/workbench/services/assignment/common/assignmentService.service';
|
|
70
70
|
|
|
71
71
|
var GettingStartedPage_1;
|
|
72
|
+
const _moduleId = "vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted";
|
|
72
73
|
const SLIDE_TRANSITION_TIME_MS = 250;
|
|
73
74
|
const configurationKey = 'workbench.startupEditor';
|
|
74
|
-
const allWalkthroughsHiddenContext = ( new RawContextKey('allWalkthroughsHidden', false));
|
|
75
|
-
const inWelcomeContext = ( new RawContextKey('inWelcome', false));
|
|
76
|
-
const parsedStartEntries = ( startEntries.map((e, i) => ({
|
|
75
|
+
const allWalkthroughsHiddenContext = ( (new RawContextKey('allWalkthroughsHidden', false)));
|
|
76
|
+
const inWelcomeContext = ( (new RawContextKey('inWelcome', false)));
|
|
77
|
+
const parsedStartEntries = ( (startEntries.map((e, i) => ({
|
|
77
78
|
command: e.content.command,
|
|
78
79
|
description: e.description,
|
|
79
80
|
icon: { type: 'icon', icon: e.icon },
|
|
@@ -81,7 +82,7 @@ const parsedStartEntries = ( startEntries.map((e, i) => ({
|
|
|
81
82
|
order: i,
|
|
82
83
|
title: e.title,
|
|
83
84
|
when: ContextKeyExpr.deserialize(e.when) ?? ContextKeyExpr.true()
|
|
84
|
-
})));
|
|
85
|
+
}))));
|
|
85
86
|
const REDUCED_MOTION_KEY = 'workbench.welcomePage.preferReducedMotion';
|
|
86
87
|
let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
87
88
|
static { GettingStartedPage_1 = this; }
|
|
@@ -110,11 +111,11 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
110
111
|
this.accessibilityService = accessibilityService;
|
|
111
112
|
this.tasExperimentService = tasExperimentService;
|
|
112
113
|
this.inProgressScroll = Promise.resolve();
|
|
113
|
-
this.dispatchListeners = ( new DisposableStore());
|
|
114
|
-
this.stepDisposables = ( new DisposableStore());
|
|
115
|
-
this.detailsPageDisposables = ( new DisposableStore());
|
|
116
|
-
this.mediaDisposables = ( new DisposableStore());
|
|
117
|
-
this.buildSlideThrottle = ( new Throttler());
|
|
114
|
+
this.dispatchListeners = ( (new DisposableStore()));
|
|
115
|
+
this.stepDisposables = ( (new DisposableStore()));
|
|
116
|
+
this.detailsPageDisposables = ( (new DisposableStore()));
|
|
117
|
+
this.mediaDisposables = ( (new DisposableStore()));
|
|
118
|
+
this.buildSlideThrottle = ( (new Throttler()));
|
|
118
119
|
this.hasScrolledToFirstCategory = false;
|
|
119
120
|
this.showFeaturedWalkthrough = true;
|
|
120
121
|
this.currentMediaComponent = undefined;
|
|
@@ -122,33 +123,29 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
122
123
|
this.container = $('.gettingStartedContainer', {
|
|
123
124
|
role: 'document',
|
|
124
125
|
tabindex: 0,
|
|
125
|
-
'aria-label': ( localizeWithPath(
|
|
126
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
127
|
-
'welcomeAriaLabel',
|
|
128
|
-
"Overview of how to get up to speed with your editor."
|
|
129
|
-
))
|
|
126
|
+
'aria-label': ( localizeWithPath(_moduleId, 0, "Overview of how to get up to speed with your editor."))
|
|
130
127
|
});
|
|
131
128
|
this.stepMediaComponent = $('.getting-started-media');
|
|
132
129
|
this.stepMediaComponent.id = generateUuid();
|
|
133
|
-
this.categoriesSlideDisposables = this._register(( new DisposableStore()));
|
|
134
|
-
this.detailsRenderer = ( new GettingStartedDetailsRenderer(
|
|
130
|
+
this.categoriesSlideDisposables = this._register(( (new DisposableStore())));
|
|
131
|
+
this.detailsRenderer = ( (new GettingStartedDetailsRenderer(
|
|
135
132
|
this.fileService,
|
|
136
133
|
this.notificationService,
|
|
137
134
|
this.extensionService,
|
|
138
135
|
this.languageService
|
|
139
|
-
));
|
|
136
|
+
)));
|
|
140
137
|
this.contextService = this._register(contextService.createScoped(this.container));
|
|
141
138
|
inWelcomeContext.bindTo(this.contextService).set(true);
|
|
142
139
|
this.gettingStartedCategories = this.gettingStartedService.getWalkthroughs();
|
|
143
140
|
this._register(this.dispatchListeners);
|
|
144
|
-
this.buildSlideThrottle = ( new Throttler());
|
|
141
|
+
this.buildSlideThrottle = ( (new Throttler()));
|
|
145
142
|
const rerender = () => {
|
|
146
143
|
this.gettingStartedCategories = this.gettingStartedService.getWalkthroughs();
|
|
147
144
|
if (this.currentWalkthrough) {
|
|
148
|
-
const existingSteps = ( this.currentWalkthrough.steps.map(step => step.id));
|
|
145
|
+
const existingSteps = ( (this.currentWalkthrough.steps.map(step => step.id)));
|
|
149
146
|
const newCategory = this.gettingStartedCategories.find(category => this.currentWalkthrough?.id === category.id);
|
|
150
147
|
if (newCategory) {
|
|
151
|
-
const newSteps = ( newCategory.steps.map(step => step.id));
|
|
148
|
+
const newSteps = ( (newCategory.steps.map(step => step.id)));
|
|
152
149
|
if (!equals(newSteps, existingSteps)) {
|
|
153
150
|
this.buildSlideThrottle.queue(() => this.buildCategoriesSlide());
|
|
154
151
|
}
|
|
@@ -272,7 +269,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
272
269
|
this.runDispatchCommand(command, argument);
|
|
273
270
|
}));
|
|
274
271
|
this.dispatchListeners.add(addDisposableListener(element, 'keyup', (e) => {
|
|
275
|
-
const keyboardEvent = ( new StandardKeyboardEvent(e));
|
|
272
|
+
const keyboardEvent = ( (new StandardKeyboardEvent(e)));
|
|
276
273
|
e.stopPropagation();
|
|
277
274
|
switch (keyboardEvent.keyCode) {
|
|
278
275
|
case 3 :
|
|
@@ -305,7 +302,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
305
302
|
break;
|
|
306
303
|
}
|
|
307
304
|
case 'openFolder': {
|
|
308
|
-
if (this.contextService.contextMatchesRules(( ContextKeyExpr.and((
|
|
305
|
+
if (this.contextService.contextMatchesRules(( (ContextKeyExpr.and( (WorkbenchStateContext.isEqualTo('workspace'))))))) {
|
|
309
306
|
this.commandService.executeCommand(OpenFolderViaWorkspaceAction.ID);
|
|
310
307
|
}
|
|
311
308
|
else {
|
|
@@ -404,26 +401,24 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
404
401
|
}
|
|
405
402
|
}
|
|
406
403
|
async openWalkthroughSelector() {
|
|
407
|
-
const selection = await this.quickInputService.pick(( this.gettingStartedCategories
|
|
404
|
+
const selection = await this.quickInputService.pick(( (this.gettingStartedCategories
|
|
408
405
|
.filter(c => this.contextService.contextMatchesRules(c.when))
|
|
409
406
|
.map(x => ({
|
|
410
407
|
id: x.id,
|
|
411
408
|
label: x.title,
|
|
412
409
|
detail: x.description,
|
|
413
410
|
description: x.source,
|
|
414
|
-
}))), { canPickMany: false, matchOnDescription: true, matchOnDetail: true, title: ( localizeWithPath(
|
|
415
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
416
|
-
'pickWalkthroughs',
|
|
417
|
-
"Open Walkthrough..."
|
|
418
|
-
)) });
|
|
411
|
+
})))), { canPickMany: false, matchOnDescription: true, matchOnDetail: true, title: ( localizeWithPath(_moduleId, 1, "Open Walkthrough...")) });
|
|
419
412
|
if (selection) {
|
|
420
413
|
this.runDispatchCommand('selectCategory', selection.id);
|
|
421
414
|
}
|
|
422
415
|
}
|
|
423
416
|
getHiddenCategories() {
|
|
424
|
-
return (
|
|
425
|
-
|
|
426
|
-
|
|
417
|
+
return (
|
|
418
|
+
(new Set(
|
|
419
|
+
JSON.parse(this.storageService.get(hiddenEntriesConfigurationKey, 0 , '[]'))
|
|
420
|
+
))
|
|
421
|
+
);
|
|
427
422
|
}
|
|
428
423
|
setHiddenCategories(hidden) {
|
|
429
424
|
this.storageService.store(hiddenEntriesConfigurationKey, JSON.stringify(hidden), 0 , 0 );
|
|
@@ -468,7 +463,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
468
463
|
mediaElement.setAttribute('alt', media.altText);
|
|
469
464
|
this.updateMediaSourceForColorMode(mediaElement, media.path);
|
|
470
465
|
this.stepDisposables.add(addDisposableListener(this.stepMediaComponent, 'click', () => {
|
|
471
|
-
const hrefs = flatten(( stepToExpand.description.map(
|
|
466
|
+
const hrefs = flatten(( (stepToExpand.description.map(
|
|
467
|
+
lt => ( (lt.nodes.filter((node) => typeof node !== 'string').map(node => node.href)))
|
|
468
|
+
))));
|
|
472
469
|
if (hrefs.length === 1) {
|
|
473
470
|
const href = hrefs[0];
|
|
474
471
|
if (href.startsWith('http')) {
|
|
@@ -493,7 +490,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
493
490
|
}
|
|
494
491
|
}));
|
|
495
492
|
this.stepDisposables.add(addDisposableListener(this.stepMediaComponent, 'click', () => {
|
|
496
|
-
const hrefs = flatten(( stepToExpand.description.map(
|
|
493
|
+
const hrefs = flatten(( (stepToExpand.description.map(
|
|
494
|
+
lt => ( (lt.nodes.filter((node) => typeof node !== 'string').map(node => node.href)))
|
|
495
|
+
))));
|
|
497
496
|
if (hrefs.length === 1) {
|
|
498
497
|
const href = hrefs[0];
|
|
499
498
|
if (href.startsWith('http')) {
|
|
@@ -526,8 +525,10 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
526
525
|
}
|
|
527
526
|
};
|
|
528
527
|
if (serializedContextKeyExprs) {
|
|
529
|
-
const contextKeyExprs = coalesce(( serializedContextKeyExprs.map(expr => ContextKeyExpr.deserialize(expr))));
|
|
530
|
-
const watchingKeys = ( new Set(
|
|
528
|
+
const contextKeyExprs = coalesce(( (serializedContextKeyExprs.map(expr => ContextKeyExpr.deserialize(expr)))));
|
|
529
|
+
const watchingKeys = ( (new Set(
|
|
530
|
+
flatten(( (contextKeyExprs.map(expr => ( (expr.keys()))))))
|
|
531
|
+
)));
|
|
531
532
|
this.stepDisposables.add(this.contextService.onDidChangeContext(e => {
|
|
532
533
|
if (e.affectsSome(watchingKeys)) {
|
|
533
534
|
postTrueKeysMessage();
|
|
@@ -555,7 +556,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
555
556
|
}
|
|
556
557
|
}));
|
|
557
558
|
}
|
|
558
|
-
const layoutDelayer = ( new Delayer(50));
|
|
559
|
+
const layoutDelayer = ( (new Delayer(50)));
|
|
559
560
|
this.layoutMarkdown = () => {
|
|
560
561
|
layoutDelayer.trigger(() => {
|
|
561
562
|
this.webview.postMessage({ layoutMeNow: true });
|
|
@@ -618,7 +619,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
618
619
|
}
|
|
619
620
|
updateMediaSourceForColorMode(element, sources) {
|
|
620
621
|
const themeType = this.themeService.getColorTheme().type;
|
|
621
|
-
const src = ( sources[themeType].toString(true)).replace(/ /g, '%20');
|
|
622
|
+
const src = ( (sources[themeType].toString(true))).replace(/ /g, '%20');
|
|
622
623
|
element.srcset = src.toLowerCase().endsWith('.svg') ? src : (src + ' 1.5x');
|
|
623
624
|
}
|
|
624
625
|
createEditor(parent) {
|
|
@@ -629,18 +630,14 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
629
630
|
this.categoriesPageScrollbar.dispose();
|
|
630
631
|
}
|
|
631
632
|
this.categoriesSlide = $('.gettingStartedSlideCategories.gettingStartedSlide');
|
|
632
|
-
const prevButton = $('button.prev-button.button-link', { 'x-dispatch': 'scrollPrev' }, $('span.scroll-button.codicon.codicon-chevron-left'), $('span.moreText', {}, ( localizeWithPath(
|
|
633
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
634
|
-
'welcome',
|
|
635
|
-
"Welcome"
|
|
636
|
-
))));
|
|
633
|
+
const prevButton = $('button.prev-button.button-link', { 'x-dispatch': 'scrollPrev' }, $('span.scroll-button.codicon.codicon-chevron-left'), $('span.moreText', {}, ( localizeWithPath(_moduleId, 2, "Welcome"))));
|
|
637
634
|
this.stepsSlide = $('.gettingStartedSlideDetails.gettingStartedSlide', {}, prevButton);
|
|
638
635
|
this.stepsContent = $('.gettingStartedDetailsContent', {});
|
|
639
|
-
this.detailsPageScrollbar = this._register(( new DomScrollableElement(this.stepsContent, { className: 'full-height-scrollable' })));
|
|
640
|
-
this.categoriesPageScrollbar = this._register(( new DomScrollableElement(
|
|
636
|
+
this.detailsPageScrollbar = this._register(( (new DomScrollableElement(this.stepsContent, { className: 'full-height-scrollable' }))));
|
|
637
|
+
this.categoriesPageScrollbar = this._register(( (new DomScrollableElement(
|
|
641
638
|
this.categoriesSlide,
|
|
642
639
|
{ className: 'full-height-scrollable categoriesScrollbar' }
|
|
643
|
-
)));
|
|
640
|
+
))));
|
|
644
641
|
this.stepsSlide.appendChild(this.detailsPageScrollbar.getDomNode());
|
|
645
642
|
const gettingStartedPage = $('.gettingStarted', {}, this.categoriesPageScrollbar.getDomNode(), this.stepsSlide);
|
|
646
643
|
this.container.appendChild(gettingStartedPage);
|
|
@@ -650,23 +647,15 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
650
647
|
}
|
|
651
648
|
async buildCategoriesSlide() {
|
|
652
649
|
this.categoriesSlideDisposables.clear();
|
|
653
|
-
const showOnStartupCheckbox = ( new Toggle({
|
|
650
|
+
const showOnStartupCheckbox = ( (new Toggle({
|
|
654
651
|
icon: Codicon.check,
|
|
655
652
|
actionClassName: 'getting-started-checkbox',
|
|
656
653
|
isChecked: this.configurationService.getValue(configurationKey) === 'welcomePage',
|
|
657
|
-
title: ( localizeWithPath(
|
|
658
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
659
|
-
'checkboxTitle',
|
|
660
|
-
"When checked, this page will be shown on startup."
|
|
661
|
-
)),
|
|
654
|
+
title: ( localizeWithPath(_moduleId, 3, "When checked, this page will be shown on startup.")),
|
|
662
655
|
...defaultToggleStyles
|
|
663
|
-
}));
|
|
656
|
+
})));
|
|
664
657
|
showOnStartupCheckbox.domNode.id = 'showOnStartup';
|
|
665
|
-
const showOnStartupLabel = $('label.caption', { for: 'showOnStartup' }, ( localizeWithPath(
|
|
666
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
667
|
-
'welcomePage.showOnStartup',
|
|
668
|
-
"Show welcome page on startup"
|
|
669
|
-
)));
|
|
658
|
+
const showOnStartupLabel = $('label.caption', { for: 'showOnStartup' }, ( localizeWithPath(_moduleId, 4, "Show welcome page on startup")));
|
|
670
659
|
const onShowOnStartupChanged = () => {
|
|
671
660
|
if (showOnStartupCheckbox.checked) {
|
|
672
661
|
this.telemetryService.publicLog2('gettingStarted.ActionExecuted', { command: 'showOnStartupChecked', argument: undefined, walkthroughId: this.currentWalkthrough?.id });
|
|
@@ -685,18 +674,14 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
685
674
|
showOnStartupCheckbox.checked = !showOnStartupCheckbox.checked;
|
|
686
675
|
onShowOnStartupChanged();
|
|
687
676
|
}));
|
|
688
|
-
const header = $('.header', {}, $('h1.product-name.caption', {}, this.productService.nameLong), $('p.subtitle.description', {}, ( localizeWithPath(
|
|
689
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
690
|
-
{ key: 'gettingStarted.editingEvolved', comment: ['Shown as subtitle on the Welcome page.'] },
|
|
691
|
-
"Editing evolved"
|
|
692
|
-
))));
|
|
677
|
+
const header = $('.header', {}, $('h1.product-name.caption', {}, this.productService.nameLong), $('p.subtitle.description', {}, ( localizeWithPath(_moduleId, 5, "Editing evolved"))));
|
|
693
678
|
const leftColumn = $('.categories-column.categories-column-left', {});
|
|
694
679
|
const rightColumn = $('.categories-column.categories-column-right', {});
|
|
695
680
|
const startList = this.buildStartList();
|
|
696
681
|
const recentList = this.buildRecentlyOpenedList();
|
|
697
682
|
const showVideoTutorials = await Promise.race([
|
|
698
683
|
this.tasExperimentService?.getTreatment('gettingStarted.showVideoTutorials'),
|
|
699
|
-
( new Promise(resolve => setTimeout(() => resolve(false), 200)))
|
|
684
|
+
( (new Promise(resolve => setTimeout(() => resolve(false), 200))))
|
|
700
685
|
]);
|
|
701
686
|
let videoList;
|
|
702
687
|
if (showVideoTutorials === true) {
|
|
@@ -776,15 +761,15 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
776
761
|
return;
|
|
777
762
|
}
|
|
778
763
|
}
|
|
779
|
-
const someStepsComplete = ( this.gettingStartedCategories.some(category => category.steps.find(s => s.done)));
|
|
764
|
+
const someStepsComplete = ( (this.gettingStartedCategories.some(category => category.steps.find(s => s.done))));
|
|
780
765
|
if (this.editorInput.showTelemetryNotice && this.productService.openToWelcomeMainPage) {
|
|
781
766
|
const telemetryNotice = $('p.telemetry-notice');
|
|
782
767
|
this.buildTelemetryFooter(telemetryNotice);
|
|
783
768
|
footer.appendChild(telemetryNotice);
|
|
784
769
|
}
|
|
785
770
|
else if (!this.productService.openToWelcomeMainPage && !someStepsComplete && !this.hasScrolledToFirstCategory && this.showFeaturedWalkthrough) {
|
|
786
|
-
const firstSessionDateString = this.storageService.get(firstSessionDateStorageKey, -1 ) || ( new Date()).toUTCString();
|
|
787
|
-
const daysSinceFirstSession = ((+( new Date())) - (+( new Date(firstSessionDateString)))) / 1000 / 60 / 60 / 24;
|
|
771
|
+
const firstSessionDateString = this.storageService.get(firstSessionDateStorageKey, -1 ) || ( (new Date())).toUTCString();
|
|
772
|
+
const daysSinceFirstSession = ((+( (new Date()))) - (+( (new Date(firstSessionDateString))))) / 1000 / 60 / 60 / 24;
|
|
788
773
|
const fistContentBehaviour = daysSinceFirstSession < 1 ? 'openToFirstCategory' : 'index';
|
|
789
774
|
if (fistContentBehaviour === 'openToFirstCategory') {
|
|
790
775
|
const first = this.gettingStartedCategories.filter(c => !c.when || this.contextService.contextMatchesRules(c.when))[0];
|
|
@@ -817,13 +802,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
817
802
|
const link = $('button.button-link');
|
|
818
803
|
link.innerText = name;
|
|
819
804
|
link.title = fullPath;
|
|
820
|
-
link.setAttribute('aria-label', ( localizeWithPath(
|
|
821
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
822
|
-
'welcomePage.openFolderWithPath',
|
|
823
|
-
"Open folder {0} with path {1}",
|
|
824
|
-
name,
|
|
825
|
-
parentPath
|
|
826
|
-
)));
|
|
805
|
+
link.setAttribute('aria-label', ( localizeWithPath(_moduleId, 6, "Open folder {0} with path {1}", name, parentPath)));
|
|
827
806
|
link.addEventListener('click', e => {
|
|
828
807
|
this.telemetryService.publicLog2('gettingStarted.ActionExecuted', { command: 'openRecent', argument: undefined, walkthroughId: this.currentWalkthrough?.id });
|
|
829
808
|
this.hostService.openWindow([windowOpenable], {
|
|
@@ -845,50 +824,30 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
845
824
|
if (this.recentlyOpenedList) {
|
|
846
825
|
this.recentlyOpenedList.dispose();
|
|
847
826
|
}
|
|
848
|
-
const recentlyOpenedList = this.recentlyOpenedList = ( new GettingStartedIndexList({
|
|
849
|
-
title: ( localizeWithPath(
|
|
850
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
851
|
-
'recent',
|
|
852
|
-
"Recent"
|
|
853
|
-
)),
|
|
827
|
+
const recentlyOpenedList = this.recentlyOpenedList = ( (new GettingStartedIndexList({
|
|
828
|
+
title: ( localizeWithPath(_moduleId, 7, "Recent")),
|
|
854
829
|
klass: 'recently-opened',
|
|
855
830
|
limit: 5,
|
|
856
|
-
empty: $('.empty-recent', {}, ( localizeWithPath(
|
|
857
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
858
|
-
'noRecents',
|
|
859
|
-
"You have no recent folders,"
|
|
860
|
-
)), $('button.button-link', { 'x-dispatch': 'openFolder' }, ( localizeWithPath(
|
|
861
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
862
|
-
'openFolder',
|
|
863
|
-
"open a folder"
|
|
864
|
-
))), ( localizeWithPath(
|
|
865
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
866
|
-
'toStart',
|
|
867
|
-
"to start."
|
|
868
|
-
))),
|
|
831
|
+
empty: $('.empty-recent', {}, ( localizeWithPath(_moduleId, 8, "You have no recent folders,")), $('button.button-link', { 'x-dispatch': 'openFolder' }, ( localizeWithPath(_moduleId, 9, "open a folder"))), ( localizeWithPath(_moduleId, 10, "to start."))),
|
|
869
832
|
more: $('.more', {}, $('button.button-link', {
|
|
870
833
|
'x-dispatch': 'showMoreRecents',
|
|
871
834
|
title: ( localizeWithPath(
|
|
872
|
-
|
|
873
|
-
|
|
835
|
+
_moduleId,
|
|
836
|
+
11,
|
|
874
837
|
"Show All Recent Folders {0}",
|
|
875
838
|
this.getKeybindingLabel(OpenRecentAction.ID)
|
|
876
839
|
))
|
|
877
|
-
}, ( localizeWithPath(
|
|
878
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
879
|
-
'showAll',
|
|
880
|
-
"More..."
|
|
881
|
-
)))),
|
|
840
|
+
}, ( localizeWithPath(_moduleId, 12, "More...")))),
|
|
882
841
|
renderElement: renderRecent,
|
|
883
842
|
contextService: this.contextService
|
|
884
|
-
}));
|
|
843
|
+
})));
|
|
885
844
|
recentlyOpenedList.onDidChange(() => this.registerDispatchListeners());
|
|
886
845
|
this.recentlyOpened.then(({ workspaces }) => {
|
|
887
|
-
const workspacesWithID = ( workspaces
|
|
846
|
+
const workspacesWithID = ( (workspaces
|
|
888
847
|
.filter(recent => !this.workspaceContextService.isCurrentWorkspace(isRecentWorkspace(recent) ? recent.workspace : recent.folderUri))
|
|
889
848
|
.map(
|
|
890
|
-
recent => ({ ...recent, id: isRecentWorkspace(recent) ? recent.workspace.id : ( recent.folderUri.toString()) })
|
|
891
|
-
));
|
|
849
|
+
recent => ({ ...recent, id: isRecentWorkspace(recent) ? recent.workspace.id : ( (recent.folderUri.toString())) })
|
|
850
|
+
)));
|
|
892
851
|
const updateEntries = () => {
|
|
893
852
|
recentlyOpenedList.setEntries(workspacesWithID);
|
|
894
853
|
};
|
|
@@ -905,18 +864,14 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
905
864
|
if (this.startList) {
|
|
906
865
|
this.startList.dispose();
|
|
907
866
|
}
|
|
908
|
-
const startList = this.startList = ( new GettingStartedIndexList({
|
|
909
|
-
title: ( localizeWithPath(
|
|
910
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
911
|
-
'start',
|
|
912
|
-
"Start"
|
|
913
|
-
)),
|
|
867
|
+
const startList = this.startList = ( (new GettingStartedIndexList({
|
|
868
|
+
title: ( localizeWithPath(_moduleId, 13, "Start")),
|
|
914
869
|
klass: 'start-container',
|
|
915
870
|
limit: 10,
|
|
916
871
|
renderElement: renderStartEntry,
|
|
917
872
|
rankElement: e => -e.order,
|
|
918
873
|
contextService: this.contextService
|
|
919
|
-
}));
|
|
874
|
+
})));
|
|
920
875
|
startList.setEntries(parsedStartEntries);
|
|
921
876
|
startList.onDidChange(() => this.registerDispatchListeners());
|
|
922
877
|
return startList;
|
|
@@ -926,18 +881,10 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
926
881
|
const renderNewBadge = (category.newItems || category.newEntry) && !category.isFeatured;
|
|
927
882
|
const newBadge = $('.new-badge', {});
|
|
928
883
|
if (category.newEntry) {
|
|
929
|
-
reset(newBadge, $('.new-category', {}, ( localizeWithPath(
|
|
930
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
931
|
-
'new',
|
|
932
|
-
"New"
|
|
933
|
-
))));
|
|
884
|
+
reset(newBadge, $('.new-category', {}, ( localizeWithPath(_moduleId, 14, "New"))));
|
|
934
885
|
}
|
|
935
886
|
else if (category.newItems) {
|
|
936
|
-
reset(newBadge, $('.new-items', {}, ( localizeWithPath(
|
|
937
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
938
|
-
{ key: 'newItems', comment: ['Shown when a list of items has changed based on an update from a remote source'] },
|
|
939
|
-
"Updated"
|
|
940
|
-
))));
|
|
887
|
+
reset(newBadge, $('.new-items', {}, ( localizeWithPath(_moduleId, 15, "Updated"))));
|
|
941
888
|
}
|
|
942
889
|
const featuredBadge = $('.featured-badge', {});
|
|
943
890
|
const descriptionContent = $('.description-content', {});
|
|
@@ -953,17 +900,9 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
953
900
|
}, featuredBadge, $('.main-content', {}, this.iconWidgetFor(category), titleContent, renderNewBadge ? newBadge : $('.no-badge'), $('a.codicon.codicon-close.hide-category-button', {
|
|
954
901
|
'tabindex': 0,
|
|
955
902
|
'x-dispatch': 'hideCategory:' + category.id,
|
|
956
|
-
'title': ( localizeWithPath(
|
|
957
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
958
|
-
'close',
|
|
959
|
-
"Hide"
|
|
960
|
-
)),
|
|
903
|
+
'title': ( localizeWithPath(_moduleId, 16, "Hide")),
|
|
961
904
|
'role': 'button',
|
|
962
|
-
'aria-label': ( localizeWithPath(
|
|
963
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
964
|
-
'closeAriaLabel',
|
|
965
|
-
"Hide"
|
|
966
|
-
)),
|
|
905
|
+
'aria-label': ( localizeWithPath(_moduleId, 17, "Hide")),
|
|
967
906
|
})), descriptionContent, $('.category-progress', { 'x-data-category-id': category.id, }, $('.progress-bar-outer', { 'role': 'progressbar' }, $('.progress-bar-inner'))));
|
|
968
907
|
};
|
|
969
908
|
if (this.gettingStartedList) {
|
|
@@ -983,28 +922,20 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
983
922
|
if (e.recencyBonus) {
|
|
984
923
|
rank += 4 * e.recencyBonus;
|
|
985
924
|
}
|
|
986
|
-
if (( this.getHiddenCategories().has(e.id))) {
|
|
925
|
+
if (( (this.getHiddenCategories().has(e.id)))) {
|
|
987
926
|
rank = null;
|
|
988
927
|
}
|
|
989
928
|
return rank;
|
|
990
929
|
};
|
|
991
|
-
const gettingStartedList = this.gettingStartedList = ( new GettingStartedIndexList({
|
|
992
|
-
title: ( localizeWithPath(
|
|
993
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
994
|
-
'walkthroughs',
|
|
995
|
-
"Walkthroughs"
|
|
996
|
-
)),
|
|
930
|
+
const gettingStartedList = this.gettingStartedList = ( (new GettingStartedIndexList({
|
|
931
|
+
title: ( localizeWithPath(_moduleId, 18, "Walkthroughs")),
|
|
997
932
|
klass: 'getting-started',
|
|
998
933
|
limit: 5,
|
|
999
|
-
footer: $('span.button-link.see-all-walkthroughs', { 'x-dispatch': 'seeAllWalkthroughs', 'tabindex': 0 }, ( localizeWithPath(
|
|
1000
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
1001
|
-
'showAll',
|
|
1002
|
-
"More..."
|
|
1003
|
-
))),
|
|
934
|
+
footer: $('span.button-link.see-all-walkthroughs', { 'x-dispatch': 'seeAllWalkthroughs', 'tabindex': 0 }, ( localizeWithPath(_moduleId, 12, "More..."))),
|
|
1004
935
|
renderElement: renderGetttingStaredWalkthrough,
|
|
1005
936
|
rankElement: rankWalkthrough,
|
|
1006
937
|
contextService: this.contextService,
|
|
1007
|
-
}));
|
|
938
|
+
})));
|
|
1008
939
|
gettingStartedList.onDidChange(() => {
|
|
1009
940
|
const hidden = this.getHiddenCategories();
|
|
1010
941
|
const someWalkthroughsHidden = hidden.size || gettingStartedList.itemCount < this.gettingStartedCategories.filter(c => this.contextService.contextMatchesRules(c.when)).length;
|
|
@@ -1031,46 +962,30 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1031
962
|
}, featuredBadge, $('.main-content', {}, this.iconWidgetFor(entry), titleContent, $('a.codicon.codicon-close.hide-category-button', {
|
|
1032
963
|
'tabindex': 0,
|
|
1033
964
|
'x-dispatch': 'hideVideos',
|
|
1034
|
-
'title': ( localizeWithPath(
|
|
1035
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
1036
|
-
'close',
|
|
1037
|
-
"Hide"
|
|
1038
|
-
)),
|
|
965
|
+
'title': ( localizeWithPath(_moduleId, 16, "Hide")),
|
|
1039
966
|
'role': 'button',
|
|
1040
|
-
'aria-label': ( localizeWithPath(
|
|
1041
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
1042
|
-
'closeAriaLabel',
|
|
1043
|
-
"Hide"
|
|
1044
|
-
)),
|
|
967
|
+
'aria-label': ( localizeWithPath(_moduleId, 17, "Hide")),
|
|
1045
968
|
})), descriptionContent);
|
|
1046
969
|
};
|
|
1047
970
|
if (this.videoList) {
|
|
1048
971
|
this.videoList.dispose();
|
|
1049
972
|
}
|
|
1050
|
-
const videoList = this.videoList = ( new GettingStartedIndexList({
|
|
1051
|
-
title: ( localizeWithPath(
|
|
1052
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
1053
|
-
'videos',
|
|
1054
|
-
"Videos"
|
|
1055
|
-
)),
|
|
973
|
+
const videoList = this.videoList = ( (new GettingStartedIndexList({
|
|
974
|
+
title: ( localizeWithPath(_moduleId, 19, "Videos")),
|
|
1056
975
|
klass: 'getting-started-videos',
|
|
1057
976
|
limit: 1,
|
|
1058
977
|
renderElement: renderFeaturedExtensions,
|
|
1059
978
|
contextService: this.contextService,
|
|
1060
|
-
}));
|
|
1061
|
-
if (( this.getHiddenCategories().has('getting-started-videos'))) {
|
|
979
|
+
})));
|
|
980
|
+
if (( (this.getHiddenCategories().has('getting-started-videos')))) {
|
|
1062
981
|
return videoList;
|
|
1063
982
|
}
|
|
1064
983
|
videoList.setEntries([{
|
|
1065
984
|
id: 'getting-started-videos',
|
|
1066
|
-
title: ( localizeWithPath(
|
|
1067
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
1068
|
-
'videos-title',
|
|
1069
|
-
'Watch Getting Started Tutorials'
|
|
1070
|
-
)),
|
|
985
|
+
title: ( localizeWithPath(_moduleId, 20, 'Watch Getting Started Tutorials')),
|
|
1071
986
|
description: ( localizeWithPath(
|
|
1072
|
-
|
|
1073
|
-
|
|
987
|
+
_moduleId,
|
|
988
|
+
21,
|
|
1074
989
|
'Learn VS Code\'s must-have features in short and practical videos'
|
|
1075
990
|
)),
|
|
1076
991
|
command: 'https://aka.ms/vscode-getting-started-tutorials',
|
|
@@ -1118,17 +1033,12 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1118
1033
|
bar.style.width = `${progress}%`;
|
|
1119
1034
|
element.parentElement.classList.toggle('no-progress', stats.stepsComplete === 0);
|
|
1120
1035
|
if (stats.stepsTotal === stats.stepsComplete) {
|
|
1121
|
-
bar.title = ( localizeWithPath(
|
|
1122
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
1123
|
-
'gettingStarted.allStepsComplete',
|
|
1124
|
-
"All {0} steps complete!",
|
|
1125
|
-
stats.stepsComplete
|
|
1126
|
-
));
|
|
1036
|
+
bar.title = ( localizeWithPath(_moduleId, 22, "All {0} steps complete!", stats.stepsComplete));
|
|
1127
1037
|
}
|
|
1128
1038
|
else {
|
|
1129
1039
|
bar.title = ( localizeWithPath(
|
|
1130
|
-
|
|
1131
|
-
|
|
1040
|
+
_moduleId,
|
|
1041
|
+
23,
|
|
1132
1042
|
"{0} of {1} steps complete",
|
|
1133
1043
|
stats.stepsComplete,
|
|
1134
1044
|
stats.stepsTotal
|
|
@@ -1137,7 +1047,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1137
1047
|
});
|
|
1138
1048
|
}
|
|
1139
1049
|
async scrollToCategory(categoryID, stepId) {
|
|
1140
|
-
if (!( this.gettingStartedCategories.some(c => c.id === categoryID))) {
|
|
1050
|
+
if (!( (this.gettingStartedCategories.some(c => c.id === categoryID)))) {
|
|
1141
1051
|
this.gettingStartedCategories = this.gettingStartedService.getWalkthroughs();
|
|
1142
1052
|
}
|
|
1143
1053
|
const ourCategory = this.gettingStartedCategories.find(c => c.id === categoryID);
|
|
@@ -1185,7 +1095,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1185
1095
|
this.focusSideEditorGroup();
|
|
1186
1096
|
}
|
|
1187
1097
|
if (isCommand) {
|
|
1188
|
-
const commandURI = ( URI.parse(command));
|
|
1098
|
+
const commandURI = ( (URI.parse(command)));
|
|
1189
1099
|
let args = [];
|
|
1190
1100
|
try {
|
|
1191
1101
|
args = parse(decodeURIComponent(commandURI.query));
|
|
@@ -1200,8 +1110,8 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1200
1110
|
if (!Array.isArray(args)) {
|
|
1201
1111
|
args = [args];
|
|
1202
1112
|
}
|
|
1203
|
-
if ((commandURI.path === ( OpenFileFolderAction.ID.toString()) ||
|
|
1204
|
-
commandURI.path === ( OpenFolderAction.ID.toString())) &&
|
|
1113
|
+
if ((commandURI.path === ( (OpenFileFolderAction.ID.toString())) ||
|
|
1114
|
+
commandURI.path === ( (OpenFolderAction.ID.toString()))) &&
|
|
1205
1115
|
this.workspaceContextService.getWorkspace().folders.length === 0) {
|
|
1206
1116
|
const selectedStepIndex = this.currentWalkthrough?.steps.findIndex(step => step.id === this.editorInput.selectedStep);
|
|
1207
1117
|
if (selectedStepIndex !== undefined &&
|
|
@@ -1218,7 +1128,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1218
1128
|
console.warn('Warn: Running walkthrough command', href, 'yielded non-URI `openFolder` result', toOpen, '. It will be disregarded.');
|
|
1219
1129
|
return;
|
|
1220
1130
|
}
|
|
1221
|
-
const restoreData = { folder: ( toOpen.toString()), category: this.editorInput.selectedCategory, step: this.editorInput.selectedStep };
|
|
1131
|
+
const restoreData = { folder: ( (toOpen.toString())), category: this.editorInput.selectedCategory, step: this.editorInput.selectedStep };
|
|
1222
1132
|
this.storageService.store(restoreWalkthroughsConfigurationKey, JSON.stringify(restoreData), 0 , 1 );
|
|
1223
1133
|
this.hostService.openWindow([{ folderUri: toOpen }]);
|
|
1224
1134
|
}
|
|
@@ -1239,10 +1149,10 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1239
1149
|
if (linkedText.nodes.length === 1 && typeof linkedText.nodes[0] !== 'string') {
|
|
1240
1150
|
const node = linkedText.nodes[0];
|
|
1241
1151
|
const buttonContainer = append(container, $('.button-container'));
|
|
1242
|
-
const button = ( new Button(
|
|
1152
|
+
const button = ( (new Button(
|
|
1243
1153
|
buttonContainer,
|
|
1244
1154
|
{ title: node.title, supportIcons: true, ...defaultButtonStyles }
|
|
1245
|
-
));
|
|
1155
|
+
)));
|
|
1246
1156
|
const isCommand = node.href.startsWith('command:');
|
|
1247
1157
|
const command = node.href.replace(/command:(toSide:)?/, 'command:');
|
|
1248
1158
|
button.label = node.label;
|
|
@@ -1254,11 +1164,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1254
1164
|
if (isCommand) {
|
|
1255
1165
|
const keybindingLabel = this.getKeybindingLabel(command);
|
|
1256
1166
|
if (keybindingLabel) {
|
|
1257
|
-
container.appendChild($('span.shortcut-message', {}, ( localizeWithPath(
|
|
1258
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
1259
|
-
'gettingStarted.keyboardTip',
|
|
1260
|
-
'Tip: Use keyboard shortcut '
|
|
1261
|
-
)), $('span.keybinding', {}, keybindingLabel)));
|
|
1167
|
+
container.appendChild($('span.shortcut-message', {}, ( localizeWithPath(_moduleId, 24, 'Tip: Use keyboard shortcut ')), $('span.keybinding', {}, keybindingLabel)));
|
|
1262
1168
|
}
|
|
1263
1169
|
}
|
|
1264
1170
|
this.detailsPageDisposables.add(button);
|
|
@@ -1308,7 +1214,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1308
1214
|
const categoryDescriptorComponent = $('.getting-started-category', {}, $('.category-description-container', {}, $('h2.category-title.max-lines-3', { 'x-category-title-for': category.id }, ...renderLabelWithIcons(category.title)), descriptionContainer));
|
|
1309
1215
|
const stepListContainer = $('.step-list-container');
|
|
1310
1216
|
this.detailsPageDisposables.add(addDisposableListener(stepListContainer, 'keydown', (e) => {
|
|
1311
|
-
const event = ( new StandardKeyboardEvent(e));
|
|
1217
|
+
const event = ( (new StandardKeyboardEvent(e)));
|
|
1312
1218
|
const currentStepIndex = () => category.steps.findIndex(e => e.id === this.editorInput.selectedStep);
|
|
1313
1219
|
if (event.keyCode === 16 ) {
|
|
1314
1220
|
const toExpand = category.steps.filter((step, index) => index < currentStepIndex() && this.contextService.contextMatchesRules(step.when));
|
|
@@ -1324,7 +1230,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1324
1230
|
}
|
|
1325
1231
|
}));
|
|
1326
1232
|
let renderedSteps = undefined;
|
|
1327
|
-
const contextKeysToWatch = ( new Set(category.steps.flatMap(step => ( step.when.keys()))));
|
|
1233
|
+
const contextKeysToWatch = ( (new Set(category.steps.flatMap(step => ( (step.when.keys()))))));
|
|
1328
1234
|
const buildStepList = () => {
|
|
1329
1235
|
category.steps.sort((a, b) => a.order - b.order);
|
|
1330
1236
|
const toRender = category.steps
|
|
@@ -1333,7 +1239,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1333
1239
|
return;
|
|
1334
1240
|
}
|
|
1335
1241
|
renderedSteps = toRender;
|
|
1336
|
-
reset(stepListContainer, ...( renderedSteps
|
|
1242
|
+
reset(stepListContainer, ...( (renderedSteps
|
|
1337
1243
|
.map(step => {
|
|
1338
1244
|
const codicon = $('.codicon' + (step.done ? '.complete' + ThemeIcon.asCSSSelector(gettingStartedCheckedCodicon) : ThemeIcon.asCSSSelector(gettingStartedUncheckedCodicon)), {
|
|
1339
1245
|
'data-done-step-id': step.id,
|
|
@@ -1348,12 +1254,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1348
1254
|
reset(stepTitle, ...renderLabelWithIcons(step.title));
|
|
1349
1255
|
const stepDescription = $('.step-container', {}, stepTitle, container);
|
|
1350
1256
|
if (step.media.type === 'image') {
|
|
1351
|
-
stepDescription.appendChild($('.image-description', { 'aria-label': ( localizeWithPath(
|
|
1352
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
1353
|
-
'imageShowing',
|
|
1354
|
-
"Image showing {0}",
|
|
1355
|
-
step.media.altText
|
|
1356
|
-
)) }));
|
|
1257
|
+
stepDescription.appendChild($('.image-description', { 'aria-label': ( localizeWithPath(_moduleId, 25, "Image showing {0}", step.media.altText)) }));
|
|
1357
1258
|
}
|
|
1358
1259
|
return $('button.getting-started-step', {
|
|
1359
1260
|
'x-dispatch': 'selectTask:' + step.id,
|
|
@@ -1362,7 +1263,7 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1362
1263
|
'aria-checked': step.done ? 'true' : 'false',
|
|
1363
1264
|
'role': 'button',
|
|
1364
1265
|
}, codicon, stepDescription);
|
|
1365
|
-
})));
|
|
1266
|
+
}))));
|
|
1366
1267
|
};
|
|
1367
1268
|
buildStepList();
|
|
1368
1269
|
this.detailsPageDisposables.add(this.contextService.onDidChangeContext(e => {
|
|
@@ -1373,18 +1274,10 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1373
1274
|
}
|
|
1374
1275
|
}));
|
|
1375
1276
|
const showNextCategory = this.gettingStartedCategories.find(_category => _category.id === category.next);
|
|
1376
|
-
const stepsContainer = $('.getting-started-detail-container', { 'role': 'list' }, stepListContainer, $('.done-next-container', {}, $('button.button-link.all-done', { 'x-dispatch': 'allDone' }, $('span.codicon.codicon-check-all'), ( localizeWithPath(
|
|
1377
|
-
'
|
|
1378
|
-
'allDone',
|
|
1379
|
-
"Mark Done"
|
|
1380
|
-
))), ...(showNextCategory
|
|
1381
|
-
? [$('button.button-link.next', { 'x-dispatch': 'nextSection' }, ( localizeWithPath(
|
|
1382
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
1383
|
-
'nextOne',
|
|
1384
|
-
"Next Section"
|
|
1385
|
-
)), $('span.codicon.codicon-arrow-right'))]
|
|
1277
|
+
const stepsContainer = $('.getting-started-detail-container', { 'role': 'list' }, stepListContainer, $('.done-next-container', {}, $('button.button-link.all-done', { 'x-dispatch': 'allDone' }, $('span.codicon.codicon-check-all'), ( localizeWithPath(_moduleId, 26, "Mark Done"))), ...(showNextCategory
|
|
1278
|
+
? [$('button.button-link.next', { 'x-dispatch': 'nextSection' }, ( localizeWithPath(_moduleId, 27, "Next Section")), $('span.codicon.codicon-arrow-right'))]
|
|
1386
1279
|
: [])));
|
|
1387
|
-
this.detailsScrollbar = this._register(( new DomScrollableElement(stepsContainer, { className: 'steps-container' })));
|
|
1280
|
+
this.detailsScrollbar = this._register(( (new DomScrollableElement(stepsContainer, { className: 'steps-container' }))));
|
|
1388
1281
|
const stepListComponent = this.detailsScrollbar.getDomNode();
|
|
1389
1282
|
const categoryFooter = $('.getting-started-footer');
|
|
1390
1283
|
if (this.editorInput.showTelemetryNotice && getTelemetryLevel(this.configurationService) !== 0 && this.productService.enableTelemetry) {
|
|
@@ -1399,21 +1292,13 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1399
1292
|
}
|
|
1400
1293
|
buildTelemetryFooter(parent) {
|
|
1401
1294
|
const mdRenderer = this.instantiationService.createInstance(MarkdownRenderer, {});
|
|
1402
|
-
const privacyStatementCopy = ( localizeWithPath(
|
|
1403
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
1404
|
-
'privacy statement',
|
|
1405
|
-
"privacy statement"
|
|
1406
|
-
));
|
|
1295
|
+
const privacyStatementCopy = ( localizeWithPath(_moduleId, 28, "privacy statement"));
|
|
1407
1296
|
const privacyStatementButton = `[${privacyStatementCopy}](command:workbench.action.openPrivacyStatementUrl)`;
|
|
1408
|
-
const optOutCopy = ( localizeWithPath(
|
|
1409
|
-
'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted',
|
|
1410
|
-
'optOut',
|
|
1411
|
-
"opt out"
|
|
1412
|
-
));
|
|
1297
|
+
const optOutCopy = ( localizeWithPath(_moduleId, 29, "opt out"));
|
|
1413
1298
|
const optOutButton = `[${optOutCopy}](command:settings.filterByTelemetry)`;
|
|
1414
1299
|
const text = ( localizeWithPath(
|
|
1415
|
-
|
|
1416
|
-
|
|
1300
|
+
_moduleId,
|
|
1301
|
+
30,
|
|
1417
1302
|
"{0} collects usage data. Read our {1} and learn how to {2}.",
|
|
1418
1303
|
this.productService.nameShort,
|
|
1419
1304
|
privacyStatementButton,
|
|
@@ -1488,32 +1373,32 @@ let GettingStartedPage = class GettingStartedPage extends EditorPane {
|
|
|
1488
1373
|
}
|
|
1489
1374
|
}
|
|
1490
1375
|
};
|
|
1491
|
-
GettingStartedPage = GettingStartedPage_1 = ( __decorate([
|
|
1492
|
-
( __param(1, ICommandService)),
|
|
1493
|
-
( __param(2, IProductService)),
|
|
1494
|
-
( __param(3, IKeybindingService)),
|
|
1495
|
-
( __param(4, IWalkthroughsService)),
|
|
1496
|
-
( __param(5, IConfigurationService)),
|
|
1497
|
-
( __param(6, ITelemetryService)),
|
|
1498
|
-
( __param(7, ILanguageService)),
|
|
1499
|
-
( __param(8, IFileService)),
|
|
1500
|
-
( __param(9, IOpenerService)),
|
|
1501
|
-
( __param(10, IThemeService)),
|
|
1502
|
-
( __param(11, IStorageService)),
|
|
1503
|
-
( __param(12, IExtensionService)),
|
|
1504
|
-
( __param(13, IInstantiationService)),
|
|
1505
|
-
( __param(14, INotificationService)),
|
|
1506
|
-
( __param(15, IEditorGroupsService)),
|
|
1507
|
-
( __param(16, IContextKeyService)),
|
|
1508
|
-
( __param(17, IQuickInputService)),
|
|
1509
|
-
( __param(18, IWorkspacesService)),
|
|
1510
|
-
( __param(19, ILabelService)),
|
|
1511
|
-
( __param(20, IHostService)),
|
|
1512
|
-
( __param(21, IWebviewService)),
|
|
1513
|
-
( __param(22, IWorkspaceContextService)),
|
|
1514
|
-
( __param(23, IAccessibilityService)),
|
|
1515
|
-
( __param(24, IWorkbenchAssignmentService))
|
|
1516
|
-
], GettingStartedPage));
|
|
1376
|
+
GettingStartedPage = GettingStartedPage_1 = ( (__decorate([
|
|
1377
|
+
( (__param(1, ICommandService))),
|
|
1378
|
+
( (__param(2, IProductService))),
|
|
1379
|
+
( (__param(3, IKeybindingService))),
|
|
1380
|
+
( (__param(4, IWalkthroughsService))),
|
|
1381
|
+
( (__param(5, IConfigurationService))),
|
|
1382
|
+
( (__param(6, ITelemetryService))),
|
|
1383
|
+
( (__param(7, ILanguageService))),
|
|
1384
|
+
( (__param(8, IFileService))),
|
|
1385
|
+
( (__param(9, IOpenerService))),
|
|
1386
|
+
( (__param(10, IThemeService))),
|
|
1387
|
+
( (__param(11, IStorageService))),
|
|
1388
|
+
( (__param(12, IExtensionService))),
|
|
1389
|
+
( (__param(13, IInstantiationService))),
|
|
1390
|
+
( (__param(14, INotificationService))),
|
|
1391
|
+
( (__param(15, IEditorGroupsService))),
|
|
1392
|
+
( (__param(16, IContextKeyService))),
|
|
1393
|
+
( (__param(17, IQuickInputService))),
|
|
1394
|
+
( (__param(18, IWorkspacesService))),
|
|
1395
|
+
( (__param(19, ILabelService))),
|
|
1396
|
+
( (__param(20, IHostService))),
|
|
1397
|
+
( (__param(21, IWebviewService))),
|
|
1398
|
+
( (__param(22, IWorkspaceContextService))),
|
|
1399
|
+
( (__param(23, IAccessibilityService))),
|
|
1400
|
+
( (__param(24, IWorkbenchAssignmentService)))
|
|
1401
|
+
], GettingStartedPage)));
|
|
1517
1402
|
class GettingStartedInputSerializer {
|
|
1518
1403
|
canSerialize(editorInput) {
|
|
1519
1404
|
return true;
|
|
@@ -1524,10 +1409,14 @@ class GettingStartedInputSerializer {
|
|
|
1524
1409
|
deserialize(instantiationService, serializedEditorInput) {
|
|
1525
1410
|
try {
|
|
1526
1411
|
const { selectedCategory, selectedStep } = JSON.parse(serializedEditorInput);
|
|
1527
|
-
return (
|
|
1412
|
+
return (
|
|
1413
|
+
(new GettingStartedInput({ selectedCategory, selectedStep }))
|
|
1414
|
+
);
|
|
1528
1415
|
}
|
|
1529
1416
|
catch { }
|
|
1530
|
-
return (
|
|
1417
|
+
return (
|
|
1418
|
+
(new GettingStartedInput({}))
|
|
1419
|
+
);
|
|
1531
1420
|
}
|
|
1532
1421
|
}
|
|
1533
1422
|
|