From c25633ade40bfa1f6da3b0da327c11d84ba87c6d Mon Sep 17 00:00:00 2001 From: cv <34649812+cpvalente@users.noreply.github.com> Date: Thu, 15 Apr 2021 13:51:51 +0200 Subject: [PATCH] style: go dark --- client/src/App.css | 2 +- .../common/components/buttons/NextIconBtn.jsx | 3 +- .../common/components/buttons/PrevIconBtn.jsx | 3 +- .../components/countdown/Countdown.module.css | 2 +- .../components/text/NumberedText.module.css | 3 +- .../src/common/input/EditableText.module.css | 6 +- .../src/common/input/EditableTimer.module.css | 17 ++- client/src/common/input/TimeInput.jsx | 6 +- client/src/common/input/TimeInput.module.css | 3 +- .../src/features/control/MessageControl.jsx | 77 +++++----- .../control/MessageControl.module.css | 26 +++- .../control/PlaybackControl.module.css | 9 +- client/src/features/editors/Editor.module.css | 4 +- .../features/editors/list/Block.module.css | 59 +++++--- .../src/features/editors/list/List.module.css | 10 ++ client/src/features/menu/EventListMenu.jsx | 6 +- .../viewers/backstage/StageManager.jsx | 6 +- .../viewers/backstage/StageManager.module.css | 57 ++++---- .../viewers/presenter/PresenterSimple.jsx | 12 +- .../viewers/presenter/PresenterView.jsx | 10 +- .../presenter/PresenterView.module.css | 134 ++++++++++-------- 21 files changed, 270 insertions(+), 185 deletions(-) diff --git a/client/src/App.css b/client/src/App.css index 16f4b4393..7ae3a11b8 100644 --- a/client/src/App.css +++ b/client/src/App.css @@ -4,6 +4,6 @@ } .App { - background-image: linear-gradient(rgb(20, 20, 20) 1.7%, rgb(48, 48, 48) 97%); + background: linear-gradient(90deg, #202020 0%, #121212 100%); height: 100vh; } diff --git a/client/src/common/components/buttons/NextIconBtn.jsx b/client/src/common/components/buttons/NextIconBtn.jsx index 23912605e..30f4f2d14 100644 --- a/client/src/common/components/buttons/NextIconBtn.jsx +++ b/client/src/common/components/buttons/NextIconBtn.jsx @@ -5,7 +5,8 @@ export default function NextIconBtn(props) { return ( } - colorScheme= 'blackAlpha' + colorScheme= 'whiteAlpha' + backgroundColor='#ffffff05' variant= 'outline' onClick={props.clickHandler} width={90} diff --git a/client/src/common/components/buttons/PrevIconBtn.jsx b/client/src/common/components/buttons/PrevIconBtn.jsx index 89453adec..a629955e3 100644 --- a/client/src/common/components/buttons/PrevIconBtn.jsx +++ b/client/src/common/components/buttons/PrevIconBtn.jsx @@ -5,7 +5,8 @@ export default function PrevIconBtn(props) { return ( } - colorScheme= 'blackAlpha' + colorScheme= 'whiteAlpha' + backgroundColor='#ffffff05' variant= 'outline' onClick={props.clickHandler} width={90} diff --git a/client/src/common/components/countdown/Countdown.module.css b/client/src/common/components/countdown/Countdown.module.css index 59411fd18..2864f685f 100644 --- a/client/src/common/components/countdown/Countdown.module.css +++ b/client/src/common/components/countdown/Countdown.module.css @@ -22,5 +22,5 @@ text-align: center; letter-spacing: 0.1em; font-weight: 600; - color: #333; + color: #fffffa; } diff --git a/client/src/common/components/text/NumberedText.module.css b/client/src/common/components/text/NumberedText.module.css index 016dc4b7d..0c2a7e0cf 100644 --- a/client/src/common/components/text/NumberedText.module.css +++ b/client/src/common/components/text/NumberedText.module.css @@ -4,7 +4,8 @@ color: white; font-weight: 600; - background-color: #319795; + background-color: #ff5b7e; + border: 1px solid rgba(255,255,255,0.47); width: 1.5em; border-radius: 1em; diff --git a/client/src/common/input/EditableText.module.css b/client/src/common/input/EditableText.module.css index 43659424e..e29803d21 100644 --- a/client/src/common/input/EditableText.module.css +++ b/client/src/common/input/EditableText.module.css @@ -2,14 +2,14 @@ .titleUnderlined { padding-left: 1em; font-size: 0.8em; - color: #888; + color: #aaa; display: inline-block; width: 6em; cursor: default; } .titleUnderlined { - border-bottom: 1px solid #0001; + border-bottom: 1px solid rgba(255, 255, 255, 0.35); } .block { @@ -23,4 +23,4 @@ .editable13 { width: '13em'; min-width: '13em'; -} \ No newline at end of file +} diff --git a/client/src/common/input/EditableTimer.module.css b/client/src/common/input/EditableTimer.module.css index 632d2750f..edc55d212 100644 --- a/client/src/common/input/EditableTimer.module.css +++ b/client/src/common/input/EditableTimer.module.css @@ -1,6 +1,6 @@ .time { - background-color: #fff8; - border: 1px solid #0001; + background-color: rgba(255, 255, 255, 0.05); + border: 1px solid rgba(255, 255, 255, 0.05); border-radius: 4px; width: 5em; height: fit-content; @@ -9,19 +9,18 @@ .editable, .delayedEditable { text-align: center; + border-radius: 4px; } .delayedEditable { - background-color: #ecc94b22; + border: 1px solid #ecc94b; } .delayValue { - font-size: 14px; - line-height: 2em; - color: #555; - background-color: #ffeaa066; + color: #fff; border-radius: 4px; + padding: 0.3em 0; text-align: center; - border: 1px solid #0001; + align-self: flex-start; + background-color: #d69e2e; } - diff --git a/client/src/common/input/TimeInput.jsx b/client/src/common/input/TimeInput.jsx index f62b60370..09fbde8c6 100644 --- a/client/src/common/input/TimeInput.jsx +++ b/client/src/common/input/TimeInput.jsx @@ -4,7 +4,11 @@ import style from './TimeInput.module.css'; const inputProps = { width: 20, - backgroundColor: '#fff5', + fontWeight: 400, + backgroundColor: 'rgba(0,0,0,0.05)', + color: '#fff', + border: '1px solid #ecc94b', + borderRadius: '4px', placeholder: '-', textAlign: 'center', }; diff --git a/client/src/common/input/TimeInput.module.css b/client/src/common/input/TimeInput.module.css index c0654b99b..12cc76001 100644 --- a/client/src/common/input/TimeInput.module.css +++ b/client/src/common/input/TimeInput.module.css @@ -4,6 +4,7 @@ } .label { - color: #0005; padding-left: 0.8em; + align-self: center; + font-weight: 600; } diff --git a/client/src/features/control/MessageControl.jsx b/client/src/features/control/MessageControl.jsx index 9419bd544..1a3311a77 100644 --- a/client/src/features/control/MessageControl.jsx +++ b/client/src/features/control/MessageControl.jsx @@ -1,5 +1,4 @@ -import { FormControl } from '@chakra-ui/form-control'; -import { Input } from '@chakra-ui/input'; +import { Editable, EditableInput, EditablePreview } from '@chakra-ui/editable'; import { useEffect, useState } from 'react'; import { useSocket } from '../../app/context/socketContext'; import VisibleIconBtn from '../../common/components/buttons/VisibleIconBtn'; @@ -80,60 +79,70 @@ export default function MessageControl() { }; return ( - <> +
- - Presenter screen message - Presenter screen message +
+ messageControl('pres-text', event.target.value) } + placeholder='only the presenter screens see this' + className={style.inline} + > + + + + messageControl('toggle-pres-visible')} {...inputProps} /> - - messageControl('toggle-pres-visible')} - {...inputProps} - /> +
- - Public screen message - Public screen message +
+ messageControl('publ-text', event.target.value) } + placeholder='all screens will render this' + className={style.inline} + > + + + + messageControl('toggle-publ-visible')} {...inputProps} /> - - messageControl('toggle-publ-visible')} - {...inputProps} - /> +
- - Lower third message - Lower third message +
+ messageControl('lower-text', event.target.value) } + placeholder='visible in lower third screen' + className={style.inline} + > + + + + + messageControl('toggle-lower-visible')} {...inputProps} /> - - messageControl('toggle-lower-visible')} - {...inputProps} - /> +
- +
); } diff --git a/client/src/features/control/MessageControl.module.css b/client/src/features/control/MessageControl.module.css index 9cdee6ba1..67673938d 100644 --- a/client/src/features/control/MessageControl.module.css +++ b/client/src/features/control/MessageControl.module.css @@ -1,16 +1,34 @@ +.messageContainer { + background-color: rgba(0, 0, 0, 0.05); + border: 1px solid rgba(0, 0, 0, 0.05); + border-radius: 4px; +} + .inputContainer, .inputContainerWGap { - display: flex; - align-items: flex-end; - gap: 1em; + padding: 0.5em; } .inputContainerWGap { padding-top: 0.5em; } +.inputItems { + display: grid; + grid-template-columns: 1fr auto; + gap: 1em; +} + .label { padding: 0; margin: 0; - font-size: 14px; + font-size: 0.9em; + color: #ccc; +} + +.inline { + padding-left: 0.5em; + border-radius: 4px; + background-color: rgba(255, 255, 255, 0.05); + border: 1px solid rgba(255, 255, 255, 0.05); } diff --git a/client/src/features/control/PlaybackControl.module.css b/client/src/features/control/PlaybackControl.module.css index e684d2039..05eff83c9 100644 --- a/client/src/features/control/PlaybackControl.module.css +++ b/client/src/features/control/PlaybackControl.module.css @@ -8,8 +8,9 @@ .timeContainer, .playbackContainer { - border: 1px solid rgb(226, 232, 240); - border-radius: 8px; + background-color: rgba(0, 0, 0, 0.05); + border: 1px solid rgba(0, 0, 0, 0.05); + border-radius: 4px; padding: 0.5em; } @@ -37,12 +38,12 @@ } .time { - color: #333; + color: #ccc; font-size: 1.1em; } .tag { - color: #666; + color: #aaa; font-size: 0.9em; } diff --git a/client/src/features/editors/Editor.module.css b/client/src/features/editors/Editor.module.css index afdff3030..38c0d01dd 100644 --- a/client/src/features/editors/Editor.module.css +++ b/client/src/features/editors/Editor.module.css @@ -2,13 +2,13 @@ width: 95%; margin: auto; height: 95vh; + color: #fffd; } .editor { height: 100%; margin-top: 1.5vh; - background-color: #fcfcfa; - /* 011627 */ + background-color: rgba(255, 255, 255, 0.13); padding: 0.8em 1.5em; display: flex; diff --git a/client/src/features/editors/list/Block.module.css b/client/src/features/editors/list/Block.module.css index ccb34a628..de0574678 100644 --- a/client/src/features/editors/list/Block.module.css +++ b/client/src/features/editors/list/Block.module.css @@ -5,12 +5,11 @@ .block, .delay { position: relative; - top: 1em; margin: 0.2em 0; width: 100%; border-radius: 8px; font-size: 15px; - border: 1px solid #0001; + border: 1px solid rgba(255, 255, 255, 0.05); } .block, @@ -29,7 +28,7 @@ align-content: center; align-self: center; - opacity: 0.6; + opacity: 0.8; transition: linear 0.1s; } @@ -37,7 +36,7 @@ .eventRowActive:hover > .actionOverlay, .block:hover > .actionOverlay, .delay:hover > .actionOverlay { - opacity: 0.85; + opacity: 1; transition: linear 0.1s; } @@ -61,24 +60,26 @@ } .eventRow { - background-color: #0001; + background-color: rgba(255, 255, 255, 0.02); } .eventRowActive { - background-color: #b2f5eaaa; + background-color: rgba(255, 255, 255, 0.36); background: linear-gradient( - 0deg, - #7aadffaa 5%, - #7aadff55 6%, - #7aadff55 95%, - #7aadffaa 96% + 180deg, + #ff5b7e 0%, + #ff7597 05%, + #ff759733 06%, + #ff759733 94%, + #ff7597 95%, + #ff5b7e 100% ); } .titleContainer, .detailedContainer { - background-color: #fff8; - border: 1px solid #0001; + background-color: rgba(255, 255, 255, 0.05); + border: 1px solid rgba(255, 255, 255, 0.05); border-radius: 4px; } @@ -101,24 +102,38 @@ /* ============= BLOCK BLOCK ============= */ .block { - background-color: #805ad5aa; - background: linear-gradient(0deg, #805ad5aa 20%, #805ad555 21%); + background-color: #805ad5; + /* background: linear-gradient(0deg, #6b46c1 20%, #805ad5 21%); */ + background: linear-gradient( + 0deg, + rgba(107, 70, 193, 1) 0%, + rgba(128, 90, 213, 1) 20%, + rgba(107, 70, 193, 0.15) 21% + ); + flex-direction: row-reverse; } /* ============= DELAY BLOCK ============= */ .delay { - background-color: #ecc94baa; - background: linear-gradient(180deg, #ecc94baa 20%, #ecc94b55 21%); + background-color: #ecc94b; + /* background: linear-gradient(180deg, #d69e2e 20%, #ecc94b 21%); */ + background: linear-gradient( + 180deg, + rgba(214, 158, 46, 1) 0%, + rgba(236, 201, 75, 1) 20%, + rgba(214, 158, 46, 0.07) 21% + ); + justify-content: space-between; } -.delayValue { - color: #222; - background-color: #fff5; +/* .delayValue { + color: #ffa; + font-weight: 600; border-radius: 4px; padding: 0.2em; text-align: center; width: 6em; - border: 1px solid #0001; -} + border: 1px solid rgba(255,255,255,0.05); +} */ diff --git a/client/src/features/editors/list/List.module.css b/client/src/features/editors/list/List.module.css index e69de29bb..a8c20abd2 100644 --- a/client/src/features/editors/list/List.module.css +++ b/client/src/features/editors/list/List.module.css @@ -0,0 +1,10 @@ +.eventContainer { + margin-top: 1em; + display: flex; + flex-direction: column; + gap: 5px; + background-color: rgba(0, 0, 0, 0.05); + border: 1px solid rgba(0, 0, 0, 0.05); + border-radius: 4px; + padding: 8px; +} diff --git a/client/src/features/menu/EventListMenu.jsx b/client/src/features/menu/EventListMenu.jsx index 2f4073a48..b28fba79f 100644 --- a/client/src/features/menu/EventListMenu.jsx +++ b/client/src/features/menu/EventListMenu.jsx @@ -15,6 +15,8 @@ export default function EventListMenu(props) { const buttonProps = { size: 'sm', variant: 'outline', + colorScheme: 'whiteAlpha', + backgroundColor: '#ffffff05' }; const addHandler = () => { @@ -25,7 +27,7 @@ export default function EventListMenu(props) {
- @@ -40,7 +42,7 @@ export default function EventListMenu(props) { - + diff --git a/client/src/features/viewers/backstage/StageManager.jsx b/client/src/features/viewers/backstage/StageManager.jsx index e9e1bc5b5..b6ba3de2e 100644 --- a/client/src/features/viewers/backstage/StageManager.jsx +++ b/client/src/features/viewers/backstage/StageManager.jsx @@ -74,7 +74,11 @@ export default function StageManager() {
Have a nice day
- +
diff --git a/client/src/features/viewers/backstage/StageManager.module.css b/client/src/features/viewers/backstage/StageManager.module.css index 42936c11e..06d5f2816 100644 --- a/client/src/features/viewers/backstage/StageManager.module.css +++ b/client/src/features/viewers/backstage/StageManager.module.css @@ -1,13 +1,12 @@ .container__gray, .container__grayFinished { background: linear-gradient(90deg, #252525 0%, #121212 100%); - height: 100%; + height: 100vh; color: #fffd; - font-size: 16px; font-weight: 300; display: grid; grid-template-columns: 1fr 1fr 1fr 3vw 2fr 1vw; - grid-template-rows: 5em 1fr 1fr 1fr 1fr 1fr; + grid-template-rows: 5vh 1fr 1fr 1fr 1fr 1fr; grid-template-areas: ' titl titl titl . schd .' ' titl titl titl . schd .' @@ -15,7 +14,7 @@ ' next next .... . schd .' ' .... .... .... . info .' ' time clck pres . info .'; - gap: 1em; + gap: 1vw; } .label { @@ -27,8 +26,8 @@ grid-area: titl; font-size: 5vw; font-weight: 600; - padding-top: 0.1em; - padding-left: 0.5em; + padding-top: 0.2vh; + padding-left: 2vw; } /* =================== TITLES ===================*/ @@ -39,29 +38,29 @@ .clockContainer, .countdownContainer { background-color: rgba(255, 255, 255, 0.05); - padding: 1em 2.5em; + padding: 1vh 2vw; } .todayContainer, .infoContainer { background-color: rgba(255, 255, 255, 0.07); - padding: 1.5em 2.5em; + padding: 2.5vh 2vw; } .infoContainer, .todayContainer { - border-radius: 1em; + border-radius: 1vw; } .nowContainer { background-color: rgba(255, 255, 255, 0.09); grid-area: now; - border-radius: 0 2em 2em 0; + border-radius: 0 2vw 2vw 0; } .nextContainer { grid-area: next; - border-radius: 0 2em 2em 0; + border-radius: 0 2vw 2vw 0; } .nowTitle, @@ -101,7 +100,7 @@ .todayContainer { grid-area: schd; display: grid; - grid-template-rows: 3em 1fr 2em; + grid-template-rows: 5vh 1fr 3vh; margin-top: 3vh; height: 95%; } @@ -109,30 +108,37 @@ .entries { display: flex; flex-direction: column; - gap: 0.8em; + gap: 1.5vh; } .navItem, .navItemSelected { background-color: rgba(255, 255, 255, 0.39); - width: 16px; - height: 16px; - border-radius: 10px; + width: 1vw; + height: 1vw; + border-radius: 1vw; } .navItemSelected { background-color: rgba(255, 255, 255, 0.79); } +.entryStart, +.entryEnd { +font-size: 1.5vw; +} + +.entryTitle { + align-self: center; +} .entryPast, .entryNow, .entryFuture { background-color: rgba(255, 255, 255, 0.03); display: flex; - gap: 1em; + gap: 1.5vw; font-size: 1.3vw; - padding: 0.2em 1em; - border-radius: 8px; + padding: 0.2vh 1vw; } .entryPast { @@ -144,8 +150,9 @@ .entryNow { font-size: 1.3vw; color: #fff; - line-height: 3em; + line-height: 7vh; background-color: rgba(255, 255, 255, 0.09); + border-bottom: 3px solid #ff7597aa; } /* =================== OVERLAY ===================*/ @@ -167,7 +174,7 @@ .infoMessages { grid-area: info; - font-size: 2em; + font-size: 1.5vw; } .qr { @@ -181,19 +188,19 @@ .clockContainer { grid-area: time; margin-bottom: 2vh; - border-radius: 1em 0em 0em 1em; + border-radius: 1vw 0 0 1vw; } .countdownContainer { grid-area: clck; margin-bottom: 2vh; - border-radius: 0em 1em 1em 0em; + border-radius: 0 1vw 1vw 0; } .clock { font-size: 3vw; text-align: center; - letter-spacing: 0.1em; + letter-spacing: 0.25vw; color: #ddd; } @@ -201,6 +208,6 @@ align-self: center; justify-self: flex-end; display: flex; - gap: 1em; + gap: 1vw; margin-bottom: auto; } diff --git a/client/src/features/viewers/presenter/PresenterSimple.jsx b/client/src/features/viewers/presenter/PresenterSimple.jsx index 53523f11c..4520588df 100644 --- a/client/src/features/viewers/presenter/PresenterSimple.jsx +++ b/client/src/features/viewers/presenter/PresenterSimple.jsx @@ -2,17 +2,17 @@ import style from './PresenterView.module.css'; export default function PresenterSimple() { return ( -
- +
{/*
Remember to smile
*/} -
+
01:03
-
-
-
+
+ +
+
{/*
diff --git a/client/src/features/viewers/presenter/PresenterView.jsx b/client/src/features/viewers/presenter/PresenterView.jsx index 64d7e9b95..9c3203298 100644 --- a/client/src/features/viewers/presenter/PresenterView.jsx +++ b/client/src/features/viewers/presenter/PresenterView.jsx @@ -21,15 +21,13 @@ export default function PresenterView() {
Remember to smile
*/} -
+
01:03
-
-
-
+ {/*
TIME UP
*/}
-
-
TIME UP
+
+
diff --git a/client/src/features/viewers/presenter/PresenterView.module.css b/client/src/features/viewers/presenter/PresenterView.module.css index c54527e17..8407b51a7 100644 --- a/client/src/features/viewers/presenter/PresenterView.module.css +++ b/client/src/features/viewers/presenter/PresenterView.module.css @@ -3,12 +3,33 @@ background: radial-gradient(circle, #202020 0%, #121212 80%); height: 100vh; color: #fffd; - font-size: 16px; - padding: 1em; + display: grid; + grid-template-columns: 1fr 1fr 5vw 1fr 1fr; + grid-template-rows: auto 1fr auto auto; + grid-template-areas: + ' clck .... .... .... ....' + ' timr timr timr timr timr' + ' prog prog prog prog prog' + ' now now .... next next'; + gap: 1vw; +} +.container__graySimple, +.container__grayFinishedSimple { + background: radial-gradient(circle, #202020 0%, #121212 80%); + height: 100vh; + color: #fffd; + display: grid; + grid-template-columns: 1fr 1fr 5vw 1fr 1fr; + grid-template-rows: auto 1fr 30vh; + grid-template-areas: + ' clck .... .... .... ....' + ' timr timr timr timr timr' + ' prog prog prog prog prog'; + gap: 1vw; } .label { - font-size: 1.5vw; + font-size: 1.3vw; color: #ff7597; } /* =================== TITLES ===================*/ @@ -16,30 +37,26 @@ .nowContainer, .nextContainer { background-color: rgba(255, 255, 255, 0.05); - padding: 1em 3em; - border-radius: 4px; - width: 40vw; + padding: 1vh 2vw; + border-radius: 1vw; } .nowContainer { - position: absolute; - bottom: 1em; - left: 1em; + grid-area: now; } .nextContainer { - position: absolute; - bottom: 1em; - left: calc(50% + 1em); + grid-area: next; } .title { color: #ddd; font-size: 2.5vw; } + .subtitle, .presenter { color: #aaa; - font-size: 1.8vw; + font-size: 2vw; } .title:after, @@ -50,49 +67,12 @@ /* =================== MAIN ===================*/ -.mainContainer, -.mainContainerFinished { - margin: auto; - width: 100%; - text-align: center; - position: absolute; - top: 40%; - left: 50%; +.timerContainer, +.timerContainerFinished { + grid-area: timr; + justify-self: center; + align-self: center; color: white; - transform: translate(-50%, -50%); - -ms-transform: translate(-50%, -50%); -} - -.countdown, -.countdownBig { - line-height: 1em; - letter-spacing: 0.1em; -} - -.countdown { - font-size: 25vw; -} - -.countdownBig { - padding-top: 10vh; - font-size: 30vw; -} - -.progress { - width: 80%; - margin: auto; - height: 1em; - background-color: #333; -} - -.progressed { - width: 30%; - height: 1em; - background-color: #ddd; -} - -.container__grayFinished { - border: 1em solid #ff5353; } .finished { @@ -101,6 +81,41 @@ color: #ff5353; } +.countdown, +.countdownBig { + letter-spacing: 4vw; +} + +.countdown { + font-size: 23vw; + line-height: 23vw; +} + +.countdownBig { + font-size: 30vw; + line-height: 30vw; +} + +.progress { + grid-area: prog; + width: 80%; + margin: 0 auto; + height: 2vh; + background-color: rgba(255, 255, 255, 0.13); + border-radius: 4px; +} + +.progressed { + width: 30%; + height: 2vh; + background-color: rgba(255, 255, 255, 0.79); + border-radius: 4px; +} + +.container__grayFinished { + border: 1vw solid #ff5353; +} + /* =================== OVERLAY ===================*/ .messageOverlay, @@ -129,7 +144,7 @@ transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); font-size: 15vw; - line-height: 1.1em; + line-height: 30vh; text-align: center; font-weight: 600; } @@ -137,13 +152,12 @@ /* =================== MAIN ===================*/ .clockContainer { - position: absolute; - top: 2em; - left: 2em; + grid-area: clck; + padding: 1vh 2vw; } .clock { font-size: 4vw; - letter-spacing: 0.1em; + letter-spacing: 0.4vw; color: #ddd; }