@@ -10,7 +10,7 @@ Index: code-server/lib/vscode/src/vs/workbench/contrib/welcomeGettingStarted/bro
1010===================================================================
1111--- code-server.orig/lib/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.ts
1212+++ code-server/lib/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.ts
13- @@ -62,7 +62,7 @@ import { GettingStartedIndexList } from
13+ @@ -62,7 +62,7 @@ import { GettingStartedIndexList } from
1414 import { StandardKeyboardEvent } from 'vs/base/browser/keyboardEvent';
1515 import { KeyCode } from 'vs/base/common/keyCodes';
1616 import { getTelemetryLevel } from 'vs/platform/telemetry/common/telemetryUtils';
@@ -19,32 +19,106 @@ Index: code-server/lib/vscode/src/vs/workbench/contrib/welcomeGettingStarted/bro
1919 import { OpenFolderViaWorkspaceAction } from 'vs/workbench/browser/actions/workspaceActions';
2020 import { OpenRecentAction } from 'vs/workbench/browser/actions/windowActions';
2121 import { Toggle } from 'vs/base/browser/ui/toggle/toggle';
22- @@ -753,11 +753,24 @@ export class GettingStartedPage extends
23- onShowOnStartupChanged();
24- }));
25-
26- - const header = $('.header', {},
27- + let header = $('.header', {},
28- $('h1.product-name.caption', {}, this.productService.nameLong),
22+ @@ -758,6 +758,72 @@ export class GettingStartedPage extends
2923 $('p.subtitle.description', {}, localize({ key: 'gettingStarted.editingEvolved', comment: ['Shown as subtitle on the Welcome page.'] }, "Editing evolved"))
3024 );
3125
26+ + let gettingStartedCoder: HTMLElement = $('.header', {});
3227+ if (this.contextService.contextMatchesRules(IsEnabledCoderGettingStarted)) {
33- + header = $('.header', {},
34- + $('h1.product-name.caption', {}, this.productService.nameLong),
35- + $('p.subtitle.description.coder', {},
36- + "Using code-server on a team?",
37- + ),
38- + $('p.subtitle.description.coder-coder', {},
39- + "Check out: ",
40- + $('a', { href: "https://github.com/coder/coder" }, "coder/coder")
41- + ),
42- + );
28+ + gettingStartedCoder = $('.gettingStartedCategory', {},
29+ + $('h2', {
30+ + style: 'margin-bottom: 12px',
31+ + }, 'Next Up'),
32+ + $('a', {
33+ + href: 'https://cdr.co/code-server-to-coder',
34+ + target: '_blank',
35+ + },
36+ + $('button', {
37+ + style: [
38+ + 'padding: 10px 16px ',
39+ + 'border-radius: 4px',
40+ + 'background: linear-gradient(94.04deg, #7934DA 0%, #4D52E0 101.2%)',
41+ + 'color: white',
42+ + 'overflow: hidden',
43+ + 'margin-right: 14px',
44+ + ].join(';'),
45+ + },
46+ + $('h3', {
47+ + style: [
48+ + 'margin: 0px 0px 6px',
49+ + 'font-weight: 500',
50+ + ].join(';'),
51+ + }, 'Deploy code-server for your team'),
52+ + $('p', {
53+ + style: [
54+ + 'margin: 0',
55+ + 'font-size: 13px',
56+ + 'color: #dcdee2',
57+ + ].join(';'),
58+ + }, 'Provision remote development environments on your infrastructure with Coder.'),
59+ + $('p', {
60+ + style: [
61+ + 'margin-top: 8px',
62+ + 'font-size: 13px',
63+ + 'color: #dcdee2',
64+ + ].join(';'),
65+ + }, 'Coder is a self-service portal which provisions via Terraform—Linux, macOS, Windows, x86, ARM, and, of course, Kubernetes based infrastructure.'),
66+ + $('p', {
67+ + style: [
68+ + 'margin: 0',
69+ + 'margin-top: 8px',
70+ + 'font-size: 13px',
71+ + 'display: flex',
72+ + 'align-items: center',
73+ + ].join(';'),
74+ + }, 'Get started ', $('span', {
75+ + class: Codicon.arrowRight.classNames,
76+ + style: [
77+ + 'color: white',
78+ + 'margin-left: 8px',
79+ + ].join(';'),
80+ + })),
81+ + $('img', {
82+ + src: './_static/src/browser/media/templates.png',
83+ + style: [
84+ + 'margin-bottom: -65px',
85+ + ].join(';'),
86+ + }),
87+ + ),
88+ + ),
89+ + );
4390+ }
4491+
4592
4693 const leftColumn = $('.categories-column.categories-column-left', {},);
4794 const rightColumn = $('.categories-column.categories-column-right', {},);
95+ @@ -775,13 +841,23 @@ export class GettingStartedPage extends
96+ const layoutLists = () => {
97+ if (gettingStartedList.itemCount) {
98+ this.container.classList.remove('noWalkthroughs');
99+ - reset(leftColumn, startList.getDomElement(), recentList.getDomElement());
100+ - reset(rightColumn, gettingStartedList.getDomElement());
101+ + if (this.contextService.contextMatchesRules(IsEnabledCoderGettingStarted)) {
102+ + reset(leftColumn, startList.getDomElement(), recentList.getDomElement(), gettingStartedList.getDomElement());
103+ + reset(rightColumn, gettingStartedCoder);
104+ + } else {
105+ + reset(leftColumn, startList.getDomElement(), recentList.getDomElement());
106+ + reset(rightColumn, gettingStartedList.getDomElement());
107+ + }
108+ +
109+ recentList.setLimit(5);
110+ }
111+ else {
112+ this.container.classList.add('noWalkthroughs');
113+ - reset(leftColumn, startList.getDomElement());
114+ + if (this.contextService.contextMatchesRules(IsEnabledCoderGettingStarted)) {
115+ + reset(leftColumn, startList.getDomElement(), gettingStartedCoder);
116+ + } else {
117+ + reset(leftColumn, startList.getDomElement());
118+ + }
119+ reset(rightColumn, recentList.getDomElement());
120+ recentList.setLimit(10);
121+ }
48122Index: code-server/lib/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/media/gettingStarted.css
49123===================================================================
50124--- code-server.orig/lib/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/media/gettingStarted.css
0 commit comments