fix: overview tab

Co-authored-by: David Ralph <me@davidcralph.co.uk>
This commit is contained in:
alexsparkes 2022-08-16 12:09:57 +01:00
parent 78bf7eca24
commit ff49fa6d48
14 changed files with 182 additions and 14 deletions

View File

@ -230,3 +230,95 @@ h5 {
align-items: center; align-items: center;
} }
} }
.reminder-info {
display: flex;
flex-flow: column;
position: absolute;
bottom: 0;
padding: 15px;
gap: 15px;
@include themed() {
background-color: t($modal-sidebarActive);
border-radius: t($borderRadius);
}
button {
@include basicIconButton(5px, 5px, modal);
display: flex;
justify-content: center;
gap: 15px;
svg {
margin: 0 !important;
}
}
@extend %tabText;
}
.quoteSkeleton {
margin-top: 5px;
display: flex;
flex-flow: column;
gap: 5px;
align-items: center;
div {
display: flex;
flex-flow: row;
}
.text {
display: flex;
flex-flow: column;
padding: 5px;
}
.skeletonAuthor {
font-size: smaller;
padding: 5px;
display: flex;
flex-flow: row;
align-items: center;
gap: 25px;
padding: 0 20px 0 5px;
svg {
@include themed() {
background-color: t($modal-sidebar);
padding: 10px;
border-radius: t($borderRadius);
place-items: center;
}
}
@include themed() {
background-color: t($modal-sidebarActive);
border-radius: t($borderRadius);
}
.title {
font-size: medium !important;
}
.subtitle {
font-size: smaller !important;
}
}
}
.quickLinksSkeleton {
.circles {
display: flex;
flex-flow: row;
gap: 5px;
div {
margin-top: 10px;
padding: 3px;
height: 20px;
width: 20px;
border-radius: 100%;
display: grid;
place-items: center;
@include themed() {
background-color: t($modal-sidebarActive);
}
}
}
}
.clockSkeleton {
font-size: 30px !important;
font-weight: bold;
}

View File

@ -113,6 +113,9 @@ table {
} }
} }
.flexGrow {
flex-grow: 1;
}
.messageMap { .messageMap {
display: flex; display: flex;
flex-flow: row; flex-flow: row;
@ -139,6 +142,12 @@ table {
.messageText { .messageText {
display: flex; display: flex;
flex-flow: column; flex-flow: column;
flex-grow: 3;
textarea {
@include themed() {
color: t($color);
}
}
} }
.messageAction { .messageAction {
float: right; float: right;

View File

@ -103,6 +103,9 @@
} }
.previewItem { .previewItem {
display: flex;
flex-flow: column;
align-items: center;
.quotediv .quote { .quotediv .quote {
max-width: 100%; max-width: 100%;
} }

View File

@ -82,7 +82,7 @@ export default class Message extends PureComponent {
<div className="messagesContainer"> <div className="messagesContainer">
{this.state.messages.map((_url, index) => ( {this.state.messages.map((_url, index) => (
<div className="messageMap"> <div className="messageMap">
<div> <div className="flexGrow">
<div className="icon"> <div className="icon">
<MdOutlineTextsms /> <MdOutlineTextsms />
</div> </div>

View File

@ -4,12 +4,12 @@ import { MdOutlineDragIndicator } from 'react-icons/md';
import { sortableContainer, sortableElement } from 'react-sortable-hoc'; import { sortableContainer, sortableElement } from 'react-sortable-hoc';
import { toast } from 'react-toastify'; import { toast } from 'react-toastify';
import Greeting from '../../../../widgets/greeting/Greeting'; import Greeting from './overview_skeletons/Greeting';
import Clock from '../../../../widgets/time/Clock'; import Clock from './overview_skeletons/Clock';
import Quote from '../../../../widgets/quote/Quote'; import Quote from './overview_skeletons/Quote';
import QuickLinks from '../../../../widgets/quicklinks/QuickLinks'; import QuickLinks from './overview_skeletons/QuickLinks';
import Date from '../../../../widgets/time/Date'; import Date from './overview_skeletons/Date';
import Message from '../../../../widgets/message/Message'; import Message from './overview_skeletons/Message';
import EventBus from 'modules/helpers/eventbus'; import EventBus from 'modules/helpers/eventbus';

View File

@ -214,7 +214,7 @@ export default class QuoteSettings extends PureComponent {
/> />
<Checkbox <Checkbox
name="quoteShareButton" name="quoteShareButton"
text={this.getMessage('modals.main.settings.sections.quote.buttons.tweet')} text={this.getMessage('widgets.quote.share')}
category="quote" category="quote"
/> />
<Checkbox <Checkbox

View File

@ -0,0 +1,7 @@
export default function ClockSkeleton() {
return (
<span className="new-clock clock-container clockSkeleton">
10:20
</span>
);
}

View File

@ -0,0 +1,9 @@
export default function DateSkeleton() {
return (
<span className="date">
Thursday January 1st
<br />
Week 1
</span>
);
}

View File

@ -0,0 +1,7 @@
export default function GreetingSkeleton() {
return (
<span className="greeting">
Good Morning
</span>
);
}

View File

@ -0,0 +1,10 @@
export default function MessageSkeleton() {
return (
<h2 className="message">
<span>
Message
<br />
</span>
</h2>
);
}

View File

@ -0,0 +1,16 @@
import { FaDiscord, FaTwitter } from 'react-icons/fa';
import { SiKofi, SiPatreon } from 'react-icons/si';
export default function QuicklinksSkeleton() {
return (
<div className="quickLinksSkeleton">
<div className='circles'>
<div><FaDiscord/></div>
<div><FaTwitter/></div>
<div><SiKofi/></div>
<div><SiPatreon/></div>
</div>
</div>
);
}

View File

@ -0,0 +1,18 @@
import { MdPerson } from 'react-icons/md';
export default function QuoteSkeleton() {
return (
<div className="quoteSkeleton">
<span className="subtitle">"Cheese good"</span>
<div className="skeletonAuthor">
<div>
<MdPerson />
</div>
<div className="text">
<span className="title">James May</span>
<span className="subtitle">Cheese Man</span>
</div>
</div>
</div>
);
}

View File

@ -14,7 +14,6 @@ import {
MdOutlinePhoto as Background, MdOutlinePhoto as Background,
MdSearch, MdSearch,
MdCloudQueue as Weather, MdCloudQueue as Weather,
MdList as Order,
MdFormatPaint as Appearance, MdFormatPaint as Appearance,
MdTranslate as Language, MdTranslate as Language,
MdOutlineSettings as Advanced, MdOutlineSettings as Advanced,
@ -65,9 +64,6 @@ function Tab({ label, currentTab, onClick, navbarTab }) {
case getMessage('modals.main.settings.sections.appearance.navbar.title'): case getMessage('modals.main.settings.sections.appearance.navbar.title'):
icon = <Navbar />; icon = <Navbar />;
break; break;
case getMessage('modals.main.settings.sections.order.title'):
icon = <Order />;
break;
case getMessage('modals.main.settings.sections.greeting.title'): case getMessage('modals.main.settings.sections.greeting.title'):
icon = <Greeting />; icon = <Greeting />;
break; break;

View File

@ -1,6 +1,6 @@
import variables from 'modules/variables'; import variables from 'modules/variables';
import { PureComponent } from 'react'; import { PureComponent } from 'react';
import { MdSettings, MdOutlineShoppingBasket, MdOutlineExtension } from 'react-icons/md'; import { MdSettings, MdOutlineShoppingBasket, MdOutlineExtension, MdRefresh } from 'react-icons/md';
import Tab from './Tab'; import Tab from './Tab';
import ErrorBoundary from '../../../ErrorBoundary'; import ErrorBoundary from '../../../ErrorBoundary';
@ -41,6 +41,7 @@ export default class Tabs extends PureComponent {
)} )}
</span> </span>
<button onClick={() => window.location.reload()}> <button onClick={() => window.location.reload()}>
<MdRefresh />
{variables.language.getMessage( {variables.language.getMessage(
variables.languagecode, variables.languagecode,
'modals.main.error_boundary.refresh', 'modals.main.error_boundary.refresh',
@ -70,7 +71,6 @@ export default class Tabs extends PureComponent {
return ( return (
<div style={{ display: 'flex', width: '100%' }}> <div style={{ display: 'flex', width: '100%' }}>
<ul className="sidebar"> <ul className="sidebar">
{reminderInfo}
{this.props.children.map((tab, index) => ( {this.props.children.map((tab, index) => (
<Tab <Tab
currentTab={this.state.currentTab} currentTab={this.state.currentTab}
@ -80,6 +80,7 @@ export default class Tabs extends PureComponent {
navbarTab={this.props.navbar || false} navbarTab={this.props.navbar || false}
/> />
))} ))}
{reminderInfo}
</ul> </ul>
<div className="tab-content" style={{ width: '100%' }}> <div className="tab-content" style={{ width: '100%' }}>
<ErrorBoundary> <ErrorBoundary>