Skip to content

Commit 8959b0a

Browse files
authored
[dashboard] Update workspaces, settings, and header layout (#3521)
1 parent 4d65ed1 commit 8959b0a

17 files changed

+85
-65
lines changed

components/dashboard/src/Login.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ export function Login() {
6767
</div>
6868
<div className="mx-auto text-center pb-8 space-y-2">
6969
<h1 className="text-3xl">Log in to Gitpod</h1>
70-
<h2 className="uppercase text-sm">ALWAYS READY-TO-CODE</h2>
70+
<h2 className="uppercase text-sm text-gray-400">ALWAYS READY-TO-CODE</h2>
7171
</div>
7272
<div className="flex flex-col space-y-3">
7373
{authProviders.map(ap => {

components/dashboard/src/components/DropDown.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ export interface DropDownProps {
1111
}
1212

1313
function Arrow(props: {up: boolean}) {
14-
return <span className="mx-2 border-gray-400" style={{ margin: 2, padding: 3, border: 'solid black', borderWidth: '0 2px 2px 0', display: 'inline-block', transform: `rotate(${props.up ? '-135deg' : '45deg'})`}}></span>
14+
return <span className="mx-2 border-gray-400 group-hover:border-gray-600" style={{ margin: 2, padding: 3, border: 'solid black', borderWidth: '0 2px 2px 0', display: 'inline-block', transform: `rotate(${props.up ? '-135deg' : '45deg'})`}}></span>
1515
}
1616

1717
function DropDown(props: DropDownProps) {
@@ -26,7 +26,7 @@ function DropDown(props: DropDownProps) {
2626
}
2727
}
2828
})
29-
const font = "text-gray-400 text-sm leading-1"
29+
const font = "text-gray-400 text-sm leading-1 group hover:text-gray-600"
3030
return (
3131
<ContextMenu menuEntries={enhancedEntries} width={props.contextMenuWidth}>
3232
<span className={`py-2 cursor-pointer ${font}`}>{props.prefix}{current}<Arrow up={false}/></span>

components/dashboard/src/components/Header.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ export interface HeaderProps {
77

88
export default function Header(p: HeaderProps) {
99
return <div className="lg:px-28 px-10 border-gray-200">
10-
<div className="flex py-8">
10+
<div className="flex pb-8 pt-6">
1111
<div className="">
12-
<h1 className="">{p.title}</h1>
13-
<h2 className="pt-1">{p.subtitle}</h2>
12+
<h1 className="tracking-tight">{p.title}</h1>
13+
<h2 className="tracking-wide">{p.subtitle}</h2>
1414
</div>
1515
</div>
1616
<Separator />

components/dashboard/src/components/Menu.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ function Menu(props: { left: Entry[], right: Entry[] }) {
6060
{props.right.map(MenuItem)}
6161
</ul>
6262
</nav>
63-
<div className="lg:ml-3 flex items-center justify-start lg:mb-0 mb-4 pointer-cursor m-l-auto rounded-full border-2 border-white hover:border-gray-200 p-0.5">
63+
<div className="lg:ml-3 flex items-center justify-start lg:mb-0 mb-4 pointer-cursor m-l-auto rounded-full border-2 border-white hover:border-gray-200 p-0.5 font-medium">
6464
<ContextMenu menuEntries={[
6565
{
6666
title: (user && User.getPrimaryEmail(user)) || '',

components/dashboard/src/index.css

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929

3030
@layer components {
3131
button {
32-
@apply cursor-pointer px-3 py-1 my-auto bg-green-600 hover:bg-green-700 border-2 border-green-800 text-gray-100 text-sm rounded-md;
32+
@apply cursor-pointer px-4 py-2 my-auto bg-green-600 hover:bg-green-700 border-2 border-green-800 text-gray-100 text-sm rounded-md focus:outline-none focus:ring focus:border-blue-300;
3333
}
3434

3535
input[type=text] {
@@ -44,4 +44,4 @@
4444
@apply bg-gray-100 border-2 border-gray-300 text-gray-400;
4545
}
4646

47-
}
47+
}

components/dashboard/src/settings/Account.tsx

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,18 @@ export default function Account() {
1212
const close = () => setModal(false);
1313
return <div>
1414
<Modal visible={modal} onClose={close}>
15-
<h3>Do you really want to delete your account?</h3>
16-
<p>This action will remove all the data associated with your account in Gitpod and cannot be reversed.</p>
17-
<div className="flex justify-end pt-6">
15+
<h3 className="pb-2">Delete Account</h3>
16+
<div className="border-t border-b border-gray-200 mt-2 -mx-6 px-6 py-2">
17+
<p className="mt-1 mb-2 text-base">Are you sure you want to delete your account? This action will remove all the data associated with your account in Gitpod and cannot be reversed.</p>
18+
</div>
19+
<div className="flex justify-end mt-6">
1820
<button className="border-red-900 bg-red-500 hover:bg-red-700" onClick={close}>Delete Account</button>
1921
</div>
2022
</Modal>
2123

22-
<SettingsPage title='Account' subtitle='Profile details'>
24+
<SettingsPage title='Account' subtitle='Manage account and git configuration.'>
2325
<h3>Profile</h3>
26+
<p className="text-base text-gray-500 pb-4">The following information will be used to set up git configuration. You can override git author name and email per project by using the default environment variables <span className="text-gitpod-kumquat-dark bg-gitpod-kumquat-light px-1.5 py-1 rounded-md text-sm font-mono">GIT_AUTHOR_NAME</span> and <span className="text-gitpod-kumquat-dark bg-gitpod-kumquat-light px-1.5 py-1 rounded-md text-sm font-mono">GIT_COMMITTER_EMAIL</span>.</p>
2427
<div className="flex flex-col lg:flex-row">
2528
<div>
2629
<div className="mt-4">
@@ -35,14 +38,14 @@ export default function Account() {
3538
<div className="lg:pl-14">
3639
<div className="mt-4">
3740
<h4>Avatar</h4>
38-
<img className="rounded-full w-24 h-24 border-2 border-transparent hover:border-indigo-400"
41+
<img className="rounded-full w-24 h-24"
3942
src={user!.avatarUrl} alt={user!.name} />
4043
</div>
4144
</div>
4245
</div>
4346
<h3 className="mt-12">Delete Account</h3>
44-
<p className="text-sm text-gray-400 pb-4">This action will remove all the data associated with your account in Gitpod.</p>
45-
<button className="border-red-600 text-red-600 bg-white hover:border-red-800 hover:text-red-800" onClick={() => setModal(true)}>Delete Account</button>
47+
<p className="text-base text-gray-500 pb-4">This action will remove all the data associated with your account in Gitpod.</p>
48+
<button className="border-red-600 text-red-600 bg-white hover:border-red-800 hover:text-red-800 font-medium" onClick={() => setModal(true)}>Delete Account</button>
4649
</SettingsPage>
4750
</div>;
4851
}

components/dashboard/src/settings/EnvironmentVariables.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { SettingsPage } from "./SettingsPage";
22

33
export default function EnvVars() {
44
return <div>
5-
<SettingsPage title='Environment Variables' subtitle='Configure environment variables for your workspaces'>
5+
<SettingsPage title='Variables' subtitle='Configure environment variables for all workspaces.'>
66
<h3>Environment Variables</h3>
77
</SettingsPage>
88
</div>;

components/dashboard/src/settings/GitIntegrations.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ import { SettingsPage } from "./SettingsPage";
22

33
export default function GitIntegrations() {
44
return <div>
5-
<SettingsPage title='Git Integrations' subtitle='Manage integration with your Git hosters'>
6-
<h3>Git Hoster Access Control</h3>
5+
<SettingsPage title='Integrations' subtitle='Manage permissions for git providers and integrations.'>
6+
<h3>Git Providers</h3>
77
</SettingsPage>
88
</div>;
99
}

components/dashboard/src/settings/Notifications.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,9 @@ export default function Notifications() {
5353

5454
function CheckBox(props: {title: string, desc: string, checked: boolean, onChange: () => void}) {
5555
return <div className="flex mt-4">
56-
<input className={"h-5 w-5 focus:ring-0 mt-1 rounded cursor-pointer border-2 "+(props.checked?'bg-gray-800':'')} type="checkbox" checked={props.checked} onChange={props.onChange}/>
56+
<input className={"h-4 w-4 focus:ring-0 mt-1 rounded cursor-pointer border-2 "+(props.checked?'bg-gray-800':'')} type="checkbox" checked={props.checked} onChange={props.onChange}/>
5757
<div className="flex flex-col ml-2">
58-
<div className="text-gray-700 text-md font-semibold">{props.title}</div>
58+
<div className="text-gray-800 text-md font-semibold tracking-wide">{props.title}</div>
5959
<div className="text-gray-400 text-md">{props.desc}</div>
6060
</div>
6161
</div>

components/dashboard/src/settings/Plans.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { SettingsPage } from "./SettingsPage";
22

33
export default function Plans() {
44
return <div>
5-
<SettingsPage title='Plans' subtitle='Plans and Usage'>
5+
<SettingsPage title='Plans' subtitle='Manage account usage and billing.'>
66
<h3>Plans</h3>
77
</SettingsPage>
88
</div>;

0 commit comments

Comments
 (0)