docs: 💄 Update UI

Signed-off-by: jffarge <jf@dagger.io>
This commit is contained in:
jffarge 2021-12-23 12:07:18 +01:00 committed by jffarge
parent e43f6db4b1
commit ac6d784714
6 changed files with 52 additions and 267 deletions

View File

@ -14,7 +14,7 @@ module.exports = {
{ {
type: "category", type: "category",
label: "Introduction", label: "Introduction",
collapsible: false, collapsible: true,
items: ["introduction/what_is", "introduction/vs"], items: ["introduction/what_is", "introduction/vs"],
}, },
{ {
@ -24,7 +24,8 @@ module.exports = {
{ {
type: "category", type: "category",
label: "Learn Dagger", label: "Learn Dagger",
collapsible: false, collapsible: true,
collapsed: false,
items: [ items: [
"learn/what_is_cue", "learn/what_is_cue",
"learn/get-started", "learn/get-started",
@ -39,14 +40,15 @@ module.exports = {
{ {
type: "category", type: "category",
label: "Use Cases", label: "Use Cases",
collapsible: false, collapsible: true,
collapsed: true,
items: ["use-cases/ci"], items: ["use-cases/ci"],
}, },
{ {
type: "category", type: "category",
label: "Universe - API Reference", label: "Universe - API Reference",
collapsible: true, collapsible: true,
collapsed: false, collapsed: true,
// generate the sidebar for reference doc automatically // generate the sidebar for reference doc automatically
items: [ items: [
{ {
@ -58,7 +60,8 @@ module.exports = {
{ {
type: "category", type: "category",
label: "Administrator Manual", label: "Administrator Manual",
collapsible: false, collapsible: true,
collapsed: true,
items: ["administrator/operator-manual"], items: ["administrator/operator-manual"],
}, },
], ],

View File

@ -83,6 +83,7 @@ html[data-theme="dark"] {
--ifm-table-stripe-background: #2e526a; --ifm-table-stripe-background: #2e526a;
--ifm-code-background: var(--ifm-color-primary-dark); --ifm-code-background: var(--ifm-color-primary-dark);
--ifm-heading-color: var(--ifm-color-primary-light); --ifm-heading-color: var(--ifm-color-primary-light);
--ifm-menu-color-background-hover: var(--ifm-color-primary);
--ifm-blockquote-color: var(--ifm-menu-color-background-hover); --ifm-blockquote-color: var(--ifm-menu-color-background-hover);
--ifm-color-emphasis-300: var(--ifm-menu-color-background-hover); --ifm-color-emphasis-300: var(--ifm-menu-color-background-hover);
} }
@ -199,8 +200,7 @@ h1[class^="h1Heading"] {
} }
#__docusaurus { #__docusaurus {
background-color: var(--ifm-color-primary-light); background-color: white;
// padding-bottom: 3rem;
html[data-theme="dark"] & { html[data-theme="dark"] & {
background: var(--ifm-color-primary-darker); background: var(--ifm-color-primary-darker);
@ -216,6 +216,7 @@ h1[class^="h1Heading"] {
.button { .button {
background: var(--ifm-color-secondary); background: var(--ifm-color-secondary);
color: var(--ifm-navbar-link-color);
font-family: var(--ifm-font-family-title); font-family: var(--ifm-font-family-title);
font-size: 1rem; font-size: 1rem;
font-style: normal; font-style: normal;
@ -223,12 +224,13 @@ h1[class^="h1Heading"] {
line-height: 1; line-height: 1;
letter-spacing: 0em; letter-spacing: 0em;
text-align: left; text-align: left;
padding: 1rem; padding: 0.625rem 1.5rem;
border: 0; border: 0;
border-radius: 0; border-radius: 50px;
&:hover { &:hover {
background: #ffffff; background: #ffffff;
color: var(--ifm-navbar-link-color);
cursor: pointer; cursor: pointer;
} }
@ -238,6 +240,10 @@ h1[class^="h1Heading"] {
} }
} }
.hash-link,
.hash-link::before {
color: var(--ifm-color-info);
}
/* navbar */ /* navbar */
.navbar__brand .navbar__logo { .navbar__brand .navbar__logo {
height: 5rem; height: 5rem;
@ -263,7 +269,7 @@ h1[class^="h1Heading"] {
margin: 0 0.75rem; margin: 0 0.75rem;
} }
.navbar__items--right > :last-child { .navbar__items--right > :last-child {
padding: 1rem; padding-right: 1.5rem;
} }
.react-toggle { .react-toggle {
@ -273,8 +279,7 @@ h1[class^="h1Heading"] {
.header-discord-link, .header-discord-link,
.header-github-link { .header-github-link {
height: 48px; height: 48px;
padding: 0; line-height: 36px;
@include desktop { @include desktop {
width: 48px; width: 48px;
span { span {
@ -283,12 +288,20 @@ h1[class^="h1Heading"] {
} }
} }
.header-github-link { .header-github-link,
.header-github-link:hover {
background: url("/img/github-icon.svg") no-repeat; background: url("/img/github-icon.svg") no-repeat;
@include tablet {
background-color: var(--ifm-color-primary);
}
} }
.header-discord-link { .header-discord-link,
.header-discord-link:hover {
background: url("/img/discord-icon.svg") no-repeat; background: url("/img/discord-icon.svg") no-repeat;
@include tablet {
background-color: var(--ifm-color-primary);
}
} }
.navbar .button svg { .navbar .button svg {
@ -401,161 +414,40 @@ button[class^="copyButton"] {
color: var(--ifm-color-primary-dark); color: var(--ifm-color-primary-dark);
} }
/* hash-link */
.hash-link {
svg path + path {
fill: #40b8bb;
}
&:hover svg path + path {
fill: #175761;
}
&:focus svg path + path {
fill: var(--ifm-color-primary-dark);
}
&::before {
display: none;
}
}
/* menu */
.menu { .menu {
padding: 0 !important; padding: 3rem 0.5rem 0.5rem !important;
@include desktop {
& > ul > li:nth-child(1) > a:nth-child(1) {
padding-top: 2rem;
border-top: 0;
}
} }
& > ul > li > a:nth-child(1) { .menu__link.button {
background-color: var(--ifm-color-primary-light); width: 190px;
border-top: 1px solid; margin: auto;
border-bottom: 1px solid;
border-color: #f0efe7;
html[data-theme="dark"] & {
background-color: var(--ifm-color-primary);
border-color: #65627b;
}
} }
& > ul > li + li > a:nth-child(1) { .menu__link:not(.button) {
border-top: 0;
}
}
.menu__list {
background-color: var(--ifm-color-secondary);
& > .menu__list-item > & {
padding-top: 0;
}
.menu__list-item {
margin-top: 0;
}
html[data-theme="dark"] & {
background-color: var(--ifm-color-primary-dark);
}
}
.menu__link {
border-radius: 0;
padding: 1rem;
@include tablet { @include tablet {
display: flex; background-color: transparent;
justify-content: center;
font-family: var(--ifm-font-family-title);
font-size: 1rem;
font-style: normal;
font-weight: 700;
line-height: 1;
position: relative;
}
& + .menu__list & {
padding-left: 2rem;
width: calc(100% - 1rem);
&:hover,
&.active {
background-color: var(--ifm-color-primary-dark);
color: var(--ifm-color-primary-light); color: var(--ifm-color-primary-light);
// --ifm-menu-color-active: var(--ifm-color-primary-light);
// --ifm-menu-color-background-active: var(--ifm-color-primary);
span {
display: block;
margin-left: 3rem;
color: white;
}
}
} }
&.active { .menu__link--active:not(.menu__link--sublist) {
font-weight: bold; font-weight: bold;
@include tablet {
background: var(--ifm-color-primary);
}
} }
&:focus, .menu__link--active:hover {
&:active { @include tablet {
background-color: var(--ifm-color-primary-dark);
color: var(--ifm-color-primary-light); color: var(--ifm-color-primary-light);
} }
&--active:not(.menu__link--sublist) {
background-color: var(--ifm-color-primary);
color: var(--ifm-color-primary-light);
font-weight: bold;
html[data-theme="dark"] & {
background-color: var(--ifm-menu-color-background-hover);
color: var(--ifm-color-primary);
}
}
html[data-theme="dark"] &,
html[data-theme="dark"] &:not([href]),
html[data-theme="dark"] &:focus {
color: var(--ifm-color-primary-light);
}
html[data-theme="dark"] &:not(.menu__link--active):hover {
background-color: var(--ifm-color-primary);
}
html[data-theme="dark"] &:not(.menu__link--active):active {
background-color: var(--ifm-color-primary-light);
color: var(--ifm-color-primary);
}
&.menu__link--sublist {
color: var(--ifm-color-primary-dark);
padding-right: 2rem;
margin-bottom: 0;
&:active,
&:focus {
background-color: var(--ifm-color-primary-light);
}
&:hover {
background-color: var(--ifm-menu-color-background-hover);
}
html[data-theme="dark"] & {
color: var(--ifm-color-primary-light);
}
html[data-theme="dark"] &:active,
html[data-theme="dark"] &:focus,
html[data-theme="dark"] &:hover {
color: var(--ifm-color-primary-light);
background-color: var(--ifm-color-primary);
}
}
}
&--sublist {
margin-bottom: 0;
}
&--sublist::after {
margin-left: auto;
}
} }
/* docsearch */ /* docsearch */

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 6.6 KiB

View File

@ -1,66 +0,0 @@
/**
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
import React from 'react';
import clsx from 'clsx';
import {translate} from '@docusaurus/Translate';
import {useThemeConfig} from '@docusaurus/theme-common';
import './styles.css';
import styles from './styles.module.css';
import AnchorIcon from "./anchor.svg"
export const MainHeading = function MainHeading({...props}) {
return (
<header>
<h1
{...props}
id={undefined} // h1 headings do not need an id because they don't appear in the TOC
>
{props.children}
</h1>
</header>
);
};
const createAnchorHeading = (Tag) =>
function TargetComponent({id, ...props}) {
const {
navbar: {hideOnScroll},
} = useThemeConfig();
if (!id) {
return <Tag {...props} />;
}
return (
<Tag
{...props}
className={clsx('anchor', {
[styles.anchorWithHideOnScrollNavbar]: hideOnScroll,
[styles.anchorWithStickyNavbar]: !hideOnScroll,
})}
id={id}>
{props.children}
<a
aria-hidden="true"
className="hash-link"
href={`#${id}`}
title={translate({
id: 'theme.common.headingLinkTitle',
message: 'Direct link to heading',
description: 'Title for link to heading',
})}>
<AnchorIcon />
</a>
</Tag>
);
};
const Heading = (headingType) => {
return headingType === 'h1' ? MainHeading : createAnchorHeading(headingType);
};
export default Heading;

View File

@ -1,21 +0,0 @@
/**
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
.hash-link {
opacity: 0;
padding-left: 0.5rem;
transition: opacity var(--ifm-transition-fast);
}
.hash-link:before {
content: '#';
}
.hash-link:focus,
*:hover > .hash-link {
opacity: 1;
}

View File

@ -1,19 +0,0 @@
/**
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/*
When the navbar is sticky, ensure that on anchor click,
the browser does not scroll that anchor behind the navbar
See https://twitter.com/JoshWComeau/status/1332015868725891076
*/
.anchorWithStickyNavbar {
scroll-margin-top: calc(var(--ifm-navbar-height) + 0.5rem);
}
.anchorWithHideOnScrollNavbar {
scroll-margin-top: 0.5rem;
}