feat: implement dark mode

This commit is contained in:
Jean-Philippe Sirois
2019-09-14 15:47:10 -04:00
parent a9e74c108f
commit 5f76447e05
18 changed files with 266 additions and 98 deletions
+13
View File
@@ -0,0 +1,13 @@
import React from "react"
import useTheme from "../../hooks/useTheme"
import * as SC from "./styles"
export function ThemeToggler() {
const { theme, toggleTheme } = useTheme()
return (
<SC.ThemeTogglerWrapper onClick={toggleTheme}>
<SC.Link>Switch to {theme === "dark" ? "light" : "dark"} mode</SC.Link>
</SC.ThemeTogglerWrapper>
)
}
+15
View File
@@ -0,0 +1,15 @@
import { transparentize } from "polished"
import styled from "styled-components"
export const ThemeTogglerWrapper = styled.div``
export const Link = styled.span`
display: inline-block;
cursor: pointer;
border-bottom: 2px solid transparent;
&:hover {
border-bottom: 2px solid
${props => transparentize(0.6, props.theme.sidebar.foreground)};
}
`