From 542bd83046428bcd70bb94ab1c7fde18e5a63155 Mon Sep 17 00:00:00 2001 From: jacovinus Date: Tue, 5 Apr 2022 15:47:21 +0200 Subject: [PATCH] theming init --- src/components/LabelBrowser/QueryBar.js | 257 ++++-------------- .../components/HistoryButton/HistoryButton.js | 29 ++ .../ShowLabelsButton/ShowLabelsButton.js | 24 ++ .../ShowLogsButton/ShowLogsButton.js | 15 + .../LabelBrowser/components/styled/index.js | 104 +++++++ .../LabelBrowser/helpers/debugLog.js | 14 + .../LabelBrowser/helpers/onQueryValid.js | 3 + .../LabelBrowser/helpers/queryInit.js | 21 ++ .../components/apiselector/ApiSelector.js | 38 ++- .../components/daterangepicker/index.js | 24 +- src/components/StatusBar/styled/index.js | 131 +++++++-- src/scss/modules/date-range-picker.scss | 4 + src/scss/modules/status-bar.scss | 9 +- src/store/createInitialState.js | 3 +- src/theme/dark.js | 83 ++++++ 15 files changed, 483 insertions(+), 276 deletions(-) create mode 100644 src/components/LabelBrowser/components/HistoryButton/HistoryButton.js create mode 100644 src/components/LabelBrowser/components/ShowLabelsButton/ShowLabelsButton.js create mode 100644 src/components/LabelBrowser/components/ShowLogsButton/ShowLogsButton.js create mode 100644 src/components/LabelBrowser/components/styled/index.js create mode 100644 src/components/LabelBrowser/helpers/debugLog.js create mode 100644 src/components/LabelBrowser/helpers/onQueryValid.js create mode 100644 src/components/LabelBrowser/helpers/queryInit.js create mode 100644 src/theme/dark.js diff --git a/src/components/LabelBrowser/QueryBar.js b/src/components/LabelBrowser/QueryBar.js index 6d9c3d12..427ff08b 100644 --- a/src/components/LabelBrowser/QueryBar.js +++ b/src/components/LabelBrowser/QueryBar.js @@ -1,4 +1,4 @@ -import React, { useState, useEffect} from "react"; +import React, { useState, useEffect } from "react"; import { useSelector, useDispatch } from "react-redux"; import { setIsSubmit, setQuery } from "../../actions"; import loadLogs from "../../actions/loadLogs"; @@ -6,148 +6,22 @@ import setLoading from "../../actions/setLoading"; import { setLabelsBrowserOpen } from "../../actions/setLabelsBrowserOpen"; import localService from "../../services/localService"; import setQueryHistory from "../../actions/setQueryHistory"; -import HistoryIcon from "@mui/icons-material/History"; -import styled from "@emotion/styled"; + import setHistoryOpen from "../../actions/setHistoryOpen"; -import { Tooltip } from "@mui/material"; import localUrl from "../../services/localUrl"; import setLinksHistory from "../../actions/setLinksHistory"; import QueryEditor from "../../plugins/queryeditor"; -import KeyboardArrowDownIcon from "@mui/icons-material/KeyboardArrowDown"; -import KeyboardArrowRightIcon from "@mui/icons-material/KeyboardArrowRight"; + import loadLabels from "../../actions/LoadLabels"; import { decodeQuery } from "../../helpers/UpdateStateFromQueryParams"; - -const HistoryButtonStyled = styled.button` - background: none; - color: #ddd; - font-size: 14px; - border: none; - cursor: pointer; - - height: 22px; - margin: 3px; - @media screen and (max-width: 864px) { - display: ${(props) => (props.isMobile ? "flex" : "none")}; - } -`; -const $dark_quoise = "#208989"; -const $dark_quoise_hover = "#14b8b8"; -const HistoryIconStyled = styled(HistoryIcon)` - color: ${(props) => props.color}; -`; -const QueryBarContainer = styled.div` - display: flex; - padding: 3px 6px; - margin: 5px 0px; - margin-left: 0px; - background: #8a8a8a22; - flex-wrap: wrap; - border-radius: 3px; -`; -const ShowLogsButton = styled.button` - background: ${$dark_quoise}; - cursor: pointer; - color: white; - outline: none; - border: none; - border-radius: 4px; - font-weight: bold; - margin: 3px; - transition: 0.25s all; - height: 30px; - align-items: center; - justify-content: center; - white-space: nowrap; - &:hover { - background: ${$dark_quoise_hover}; - } - &:disabled { - background: rgb(67, 67, 67); - cursor: not-allowed; - } - @media screen and (max-width: 864px) { - display: ${(props) => (props.isMobile ? "flex" : "none")}; - - margin: 0; - } -`; -const ShowLabelsBtn = styled.button` - margin: 3px; - - border-radius: 3px; - background: ${(props) => (props.browserActive ? "#7b7b7b3b" : "#7b7b7b55")}; - height: 30px; - font-size: 0.85em; - display: flex; - cursor: pointer; - align-items: center; - text-overflow: ellipsis; - border: 1px solid transparent; - transition: 0.25s all; - white-space: nowrap; - justify-content: flex-start; - color: #ddd; - &:hover { - background: #7b7b7b3b; - } - @media screen and (max-width: 864px) { - display: ${(props) => (props.isMobile ? "flex" : "none")}; - padding-right: 8px; - margin: 0; - } -`; - -const MobileTopQueryMenu = styled.div` - display: none; - @media screen and (max-width: 864px) { - display: flex; - justify-content: space-between; - margin: 10px; - } -`; - -function ShowLabelsButton({ onValueDisplay, labelsBrowserOpen, isMobile }) { - const LOG_BROWSER = "Labels"; - - return ( - - {labelsBrowserOpen ? ( - - ) : ( - - )}{" "} - {LOG_BROWSER} - - ); -} - -function HistoryButton({ queryLength, handleHistoryClick, isMobile }) { - const [buttonState, setButtonState] = useState(false); - - useEffect(() => { - if (queryLength > 0) { - setButtonState(true); - } else { - setButtonState(false); - } - }, [queryLength]); - - return ( - - - - - - ); -} +import { css } from "@emotion/css"; +import { MobileTopQueryMenu, QueryBarContainer } from "./components/styled"; +import HistoryButton from "./components/HistoryButton/HistoryButton"; +import ShowLabelsButton from "./components/ShowLabelsButton/ShowLabelsButton"; +import ShowLogsButton from "./components/ShowLogsButton/ShowLogsButton"; +import queryInit from "./helpers/queryInit"; +import onQueryValid from "./helpers/onQueryValid"; +import debugLog from "./helpers/debugLog"; export const QueryBar = () => { const dispatch = useDispatch(); @@ -162,59 +36,27 @@ export const QueryBar = () => { const [queryInput, setQueryInput] = useState(query); const [queryValid, setQueryValid] = useState(false); - const [queryValue, setQueryValue] = useState( - query.split(/[ ]+/).map((m) => ({ - type: "paragraph", - children: [ - { - text: m, - }, - ], - })) || [ - { - type: "paragraph", - children: [ - { - text: "Enter a cLoki Query", - }, - ], - }, - ] - ); - const SHOW_LOGS = "Show Logs"; + const [queryValue, setQueryValue] = useState(queryInit(query)); const queryHistory = useSelector((store) => store.queryHistory); const saveUrl = localUrl(); - const onQueryValid = (query) => { - return query !== "{" && query !== "}" && query !== "{}" && query !== ""; // TODO: make a proper query validation - }; - useEffect(() => { - // force a query to be run after load of component - if (debug) - console.log("🚧 LOGIC/QueryBar/", typeof query, query.length); - - if (onQueryValid(query && isSubmit === "true")) { - if (debug) { - console.log( - "🚧 LOGIC/QueryBar/ dispatch ", - query !== "{}", - query.length > 0, - query !== "{}" || query.length > 1 - ); - // here - } - - dispatch(setLoading(true)); - dispatch(loadLogs()); - - setTimeout(() => { - dispatch(setIsSubmit(false)); - }, 200); - } else if (!onQueryValid(query) && isSubmit === "true") { - dispatch(setIsSubmit(false)); - } + const dLog = debugLog(query); + debug && dLog.logicQueryBar(); + + if (onQueryValid(query && isSubmit === "true")) { + debug && dLog.queryBarDispatch(); + + dispatch(setLoading(true)); + dispatch(loadLogs()); + + setTimeout(() => { + dispatch(setIsSubmit(false)); + }, 200); + } else if (!onQueryValid(query) && isSubmit === "true") { + dispatch(setIsSubmit(false)); + } }, []); useEffect(() => { @@ -276,27 +118,34 @@ export const QueryBar = () => { dispatch(setHistoryOpen(!historyOpen)); } return ( -
+
- - +
+ + +
+ - {" "} - {SHOW_LOGS} - + />
{ /> - {SHOW_LOGS} - + isMobile={false} + />
); diff --git a/src/components/LabelBrowser/components/HistoryButton/HistoryButton.js b/src/components/LabelBrowser/components/HistoryButton/HistoryButton.js new file mode 100644 index 00000000..1e255f8d --- /dev/null +++ b/src/components/LabelBrowser/components/HistoryButton/HistoryButton.js @@ -0,0 +1,29 @@ + + +import { Tooltip } from '@mui/material'; +import { useEffect, useState } from 'react'; +import { HistoryButtonStyled, HistoryIconStyled } from '../styled'; + +export default function HistoryButton({ queryLength, handleHistoryClick, isMobile }) { + const [buttonState, setButtonState] = useState(false); + + useEffect(() => { + if (queryLength > 0) { + setButtonState(true); + } else { + setButtonState(false); + } + }, [queryLength]); + + return ( + + + + {isMobile && History} + + + ); +} \ No newline at end of file diff --git a/src/components/LabelBrowser/components/ShowLabelsButton/ShowLabelsButton.js b/src/components/LabelBrowser/components/ShowLabelsButton/ShowLabelsButton.js new file mode 100644 index 00000000..e4d3a03a --- /dev/null +++ b/src/components/LabelBrowser/components/ShowLabelsButton/ShowLabelsButton.js @@ -0,0 +1,24 @@ +import { ShowLabelsBtn } from "../styled"; +import KeyboardArrowDownIcon from "@mui/icons-material/KeyboardArrowDown"; +import KeyboardArrowRightIcon from "@mui/icons-material/KeyboardArrowRight"; + + + +export default function ShowLabelsButton({ onValueDisplay, labelsBrowserOpen, isMobile }) { + const LOG_BROWSER = "Labels"; + + return ( + + {labelsBrowserOpen ? ( + + ) : ( + + )}{" "} + {LOG_BROWSER} + + ); +} \ No newline at end of file diff --git a/src/components/LabelBrowser/components/ShowLogsButton/ShowLogsButton.js b/src/components/LabelBrowser/components/ShowLogsButton/ShowLogsButton.js new file mode 100644 index 00000000..4293f06f --- /dev/null +++ b/src/components/LabelBrowser/components/ShowLogsButton/ShowLogsButton.js @@ -0,0 +1,15 @@ +import { ShowLogsBtn } from "../styled"; + +export default function ShowLogsButton({ disabled, onClick, isMobile }) { + const SHOW_LOGS = "Show Logs"; + return ( + + {SHOW_LOGS} + + ); +} diff --git a/src/components/LabelBrowser/components/styled/index.js b/src/components/LabelBrowser/components/styled/index.js new file mode 100644 index 00000000..f72b104f --- /dev/null +++ b/src/components/LabelBrowser/components/styled/index.js @@ -0,0 +1,104 @@ +import styled from "@emotion/styled"; + +import HistoryIcon from "@mui/icons-material/History"; +import darkTheme from "../../../../theme/dark"; + +// get theme from main state + +const theme = darkTheme; + +export const HistoryIconStyled = styled(HistoryIcon)` + color: ${(props) => props.color}; +`; +export const HistoryButtonStyled = styled.button` + background: none; + color: ${theme.textColor}; + margin-left: 5px; + background: ${theme.buttonHover}; + border: none; + cursor: pointer; + display: flex; + align-items: center; + line-height: 1.5; + font-size: 1em; + padding: 0px 8px; + border-radius: 3px; + span { + margin-left: 5px; + } + @media screen and (max-width: 864px) { + display: ${(props) => (props.isMobile ? "flex" : "none")}; + } +`; + +export const ShowLabelsBtn = styled.button` + background: ${(props) => (props.browserActive ? theme.buttonDefault : theme.buttonHover)}; + font-size: 1em; + display: flex; + cursor: pointer; + align-items: center; + text-overflow: ellipsis; + border: none; + border-radius: 3px; + padding: 4px 8px; + transition: 0.25s all; + white-space: nowrap; + justify-content: flex-start; + color: ${theme.textColor}; + &:hover { + background: ${theme.buttonHover}; + } + @media screen and (max-width: 864px) { + display: ${(props) => (props.isMobile ? "flex" : "none")}; + + margin: 0; + } +`; + +export const QueryBarContainer = styled.div` + display: flex; + padding: 3px 6px; + margin: 5px 0px; + margin-left: 0px; + background: ${theme.widgetContainer}; + flex-wrap: wrap; + border-radius: 3px; +`; +export const ShowLogsBtn = styled.button` + background: ${theme.primaryDark}; + cursor: pointer; + color: white; + outline: none; + border: none; + border-radius: 3px; + + margin-left: 5px; + transition: 0.25s all; + padding: 4px 8px; + font-size: 1em; + line-height: 1.5; + align-items: center; + justify-content: center; + white-space: nowrap; + &:hover { + background: ${theme.primaryLight}; + } + &:disabled { + background: ${theme.buttonDefault}; + cursor: not-allowed; + } + @media screen and (max-width: 864px) { + display: ${(props) => (props.isMobile ? "flex" : "none")}; + + margin: 0; + } +`; + +export const MobileTopQueryMenu = styled.div` + display: none; + @media screen and (max-width: 864px) { + display: flex; + justify-content: space-between; + margin: 10px; + } +`; diff --git a/src/components/LabelBrowser/helpers/debugLog.js b/src/components/LabelBrowser/helpers/debugLog.js new file mode 100644 index 00000000..e0036185 --- /dev/null +++ b/src/components/LabelBrowser/helpers/debugLog.js @@ -0,0 +1,14 @@ +export default function debugLog(query) { + const logicQueryBar = () => { + console.log("🚧 LOGIC/QueryBar/", typeof query, query.length); + }; + const queryBarDispatch = () => { + console.log( + "🚧 LOGIC/QueryBar/ dispatch ", + query !== "{}", + query.length > 0, + query !== "{}" || query.length > 1 + ); + }; + return {logicQueryBar, queryBarDispatch} +} diff --git a/src/components/LabelBrowser/helpers/onQueryValid.js b/src/components/LabelBrowser/helpers/onQueryValid.js new file mode 100644 index 00000000..f791b522 --- /dev/null +++ b/src/components/LabelBrowser/helpers/onQueryValid.js @@ -0,0 +1,3 @@ +export default function onQueryValid(query){ + return query !== "{" && query !== "}" && query !== "{}" && query !== ""; // TODO: make a proper query validation +} \ No newline at end of file diff --git a/src/components/LabelBrowser/helpers/queryInit.js b/src/components/LabelBrowser/helpers/queryInit.js new file mode 100644 index 00000000..98d3ec5a --- /dev/null +++ b/src/components/LabelBrowser/helpers/queryInit.js @@ -0,0 +1,21 @@ +export default function queryInit(query) { + return ( + query.split(/[ ]+/).map((m) => ({ + type: "paragraph", + children: [ + { + text: m, + }, + ], + })) || [ + { + type: "paragraph", + children: [ + { + text: "Enter a cLoki Query", + }, + ], + }, + ] + ); +} diff --git a/src/components/StatusBar/components/apiselector/ApiSelector.js b/src/components/StatusBar/components/apiselector/ApiSelector.js index 78c17a84..2580a64a 100644 --- a/src/components/StatusBar/components/apiselector/ApiSelector.js +++ b/src/components/StatusBar/components/apiselector/ApiSelector.js @@ -55,26 +55,24 @@ export function ApiSelector() { return ( -
- - {apiSelectorOpen ? ( -
- {API_URL} - - -
- ) : null} -
+ + {apiSelectorOpen ? ( +
+ {API_URL} + + +
+ ) : null}
); } diff --git a/src/components/StatusBar/components/daterangepicker/index.js b/src/components/StatusBar/components/daterangepicker/index.js index 486cf61c..137da478 100644 --- a/src/components/StatusBar/components/daterangepicker/index.js +++ b/src/components/StatusBar/components/daterangepicker/index.js @@ -41,7 +41,13 @@ import AccessTimeOutlinedIcon from "@mui/icons-material/AccessTimeOutlined"; import { Tooltip } from "@mui/material"; import loadLogs from "../../../../actions/loadLogs"; import { setLabelsBrowserOpen } from "../../../../actions/setLabelsBrowserOpen"; + + + import TimeLabel from "./components/TimeLabel"; +import { DatePickerButton } from "../../styled"; + + export function DateRangePickerMain(props) { const today = Date.now(); const { isOpen, minDate, maxDate } = props; @@ -189,18 +195,6 @@ export function DateRangePickerMain(props) { ); }; - const dateButtonStyles = { - border: "none", - height: "21px", - background: "#121212", - color: "orange", - padding: "3px 6px", - borderRadius: "3px", - fontSize: ".85em", - display: "flex", - alignItems: "center", - marginLeft: "20px", - }; const helpers = { inHoverRange, @@ -237,8 +231,8 @@ export function DateRangePickerMain(props) { : ""} > - + {rangeOpen ? (
diff --git a/src/components/StatusBar/styled/index.js b/src/components/StatusBar/styled/index.js index 41819f29..1a6b1fca 100644 --- a/src/components/StatusBar/styled/index.js +++ b/src/components/StatusBar/styled/index.js @@ -1,11 +1,17 @@ import styled from "@emotion/styled"; - +import darkTheme from "../../../theme/dark"; +const theme = darkTheme; export const MenuButton = styled.button` - display: none; + padding: 0px 8px; + font-size: 1em; + line-height: 1.5; + display: flex; + align-items: center; background: none; border: none; - margin-left: 10px; - color: ${(props) => (props.isActive ? "orange" : "#ddd")}; + display: none; + color: ${(props) => + props.isActive ? theme.inputTextFocus : theme.textColor}; cursor: pointer; @media screen and (max-width: 850px) { @@ -26,14 +32,31 @@ export const StatusBarCont = styled.div` export const StatusCont = styled.div` display: flex; align-items: center; + .selector { + margin-left: 10px; + .label { + flex: 1; + color: ${theme.inputLabelColor}; + padding: 4px 8px; + font-size: 0.85em; + text-transform: uppercase; + background: ${theme.inputLabelBg}; + border-radius: 4px; + } + } input { - color: orange; - background: #121212; + color: #ddd; + background: ${theme.inputBg}; border: none; - margin: 3px; - padding: 3px 6px; - font-size: 13px; + outline: none; + padding: 4px 8px; + font-size: 1em; border-radius: 3px; + line-height: 1.5; + margin: 0px 5px; + &:focus { + color: orange; + } &.limit { width: 50px; } @@ -42,29 +65,63 @@ export const StatusCont = styled.div` } &.date-time-range { width: 120px; - color: orange; - background: #121212; } } `; export const ApiSelectorStyled = styled.div` display: flex; align-items: center; - @media screen and (max-width: 850px) { - display: none; + margin-left: 20px; + display: flex; + align-items: center; + transition: 0.2s all; + + input { + color: ${theme.textColor}; + background: ${theme.inputBg}; + border: none; + outline: none; + padding: 4px 8px; + font-size: 1em; + border-radius: 3px; + line-height: 1.5; + margin: 0px 5px; + &:focus { + color: orange; + } + &.url { + width: 175px; + } + } + + button { + display: flex; + align-items: center; + border: none; + padding: 4px 8px; + border-radius: 3px; + background: #7b7b7b3b; + color: #d1d1d1; + font-size: 1em; + cursor: pointer; + line-height: 1.5; + white-space: nowrap; + text-overflow: ellipsis; + transition: 0.2s all; + &:hover { + background: #9e9e9e3b; + } } + .selector { margin-left: 10px; .label { flex: 1; - color: #bfbfbf; - min-width: 51px; - padding: 6px 6px; - margin: 5px; - font-size: 0.7rem; + color: ${theme.inputLabelColor}; + padding: 4px 8px; + font-size: 0.85em; text-transform: uppercase; - letter-spacing: 1px; - background: #12121267; + background: ${theme.inputLabelBg}; border-radius: 4px; } } @@ -72,31 +129,49 @@ export const ApiSelectorStyled = styled.div` display: flex; align-items: center; } + @media screen and (max-width: 850px) { + display: none; + } `; export const UrlCopyButton = styled.button` display: flex; align-items: center; - height: 20px; - font-size: 18px; border: none; - margin: 3px; - padding: 5px 8px; + padding: 4px 8px; background: #7b7b7b3b; + border-radius: 3px; color: ${({ isActive }) => (isActive ? "orange" : "#7b7b7b")}; - font-size: 0.9em; cursor: ${({ isActive }) => (isActive ? "pointer" : "not-allowed")}; align-items: center; white-space: nowrap; text-overflow: ellipsis; transition: 0.2s all; + font-size: 1em; + line-height: 1.5; span { margin-left: 4px; - text-transform: uppercase; - font-size: 0.85em; - color: #d1d1d1; + color: ${theme.textColor}; } &:hover { background: #9e9e9e3b; } `; + +export const DatePickerButton = styled.button` + cursor:pointer; + border: none; + background: ${theme.inputBg}; + color: ${theme.textColor}; + padding: 4px 8px; + border-radius: 3px; + font-size: 1em; + line-height: 1.5; + display: flex; + align-items: center; + margin-left: 10px; + span{ margin-left:5px;} + &:hover{ + color:orange; + } +`; diff --git a/src/scss/modules/date-range-picker.scss b/src/scss/modules/date-range-picker.scss index fa845334..835fce08 100644 --- a/src/scss/modules/date-range-picker.scss +++ b/src/scss/modules/date-range-picker.scss @@ -12,6 +12,10 @@ } @media screen and (max-width: 1200px) { .date-time-selector { + font-size: 1em; + padding: 8px; + color:#ddd; + line-height: 1.5; svg { margin-right: 0; } diff --git a/src/scss/modules/status-bar.scss b/src/scss/modules/status-bar.scss index 8db06fdc..24687c39 100644 --- a/src/scss/modules/status-bar.scss +++ b/src/scss/modules/status-bar.scss @@ -15,14 +15,9 @@ .label { flex: 1; color: #bfbfbf; - min-width: 51px; - padding: 6px 6px; - margin: 5px; - font-size: 0.7rem; + text-transform: uppercase; - letter-spacing: 1px; - background: #12121267; - border-radius: 4px; + border-radius: 3px; } } & div { diff --git a/src/store/createInitialState.js b/src/store/createInitialState.js index 9ab3a5aa..896e01e3 100644 --- a/src/store/createInitialState.js +++ b/src/store/createInitialState.js @@ -39,7 +39,8 @@ const initialState = () => { apiUrl: externalState.apiUrl || environment.apiUrl || '', isSubmit: externalState.isSubmit || false, chartType:'line', - notifications: [] + notifications: [], + theme: 'darkTheme' } if (debug) console.log('🚧 LOGIC/ INITIAL STATE ::: ', state) return state diff --git a/src/theme/dark.js b/src/theme/dark.js new file mode 100644 index 00000000..0574d21a --- /dev/null +++ b/src/theme/dark.js @@ -0,0 +1,83 @@ +// this is the set for dark theme colors + +// black +const black = { + b10: "#12121267", + b15: "#121212", + b100: "#0a0a0a", + b200: "#141414", + b300: "#1a1a1a", + b400: "#292929", + b500: "#333333", +}; +const white = { + w100: "#fff", + w200: "#f5f5f5", + w300: "#ebebeb", + w400: "#e0e0e0", + w500: "#d6d6d6", +}; + +const lightgrey = { + lg100: "#ccc", + lg200: "#c2c2c2", //text + lg300: "#b8b8b8", + lg400: "#adadad", // label + lg500: "#a3a3a3", +}; + +const darkgrey = { + dg10: "##7b7b7b3b", + dg15: "#7b7b7b55", + dg100: "#474747", + dg200: "#525252", + dg300: "#5c5c5c", + dg400: "#666", + dg500: "#707070", +}; + +const turquoise = { + tq100: "#1b7474", + tq200: "#208989", // button + tq300: "#2bb6b6", // button hover + tq400: "#39d0d0", + tq500: "#5ad8d8", +}; + +const orange = { + or100: "orange", +}; + +const textColor = lightgrey.lg200; +const inputBg = black.b15; +const primaryDark = turquoise.tq200; +const primaryLight = turquoise.tq300; +const widgetContainer = black.b400; +const buttonDefault = darkgrey.dg100; +const buttonHover = darkgrey.dg15; +const buttonInactive = black.b400; +const inputTextFocus = orange.or100; +const inputLabelColor = lightgrey.lg400; +const inputLabelBg = black.bg10; + + +const darkTheme = { + black, + white, + lightgrey, + textColor, + primaryDark, + primaryLight, + widgetContainer, + buttonDefault, + buttonHover, + buttonInactive, + inputBg, + inputTextFocus, + inputLabelColor, + inputLabelBg, + darkgrey, + turquoise, + +}; +export default darkTheme;