feat: make overview tab use actual elements

This commit is contained in:
David Ralph
2022-07-28 12:50:55 +01:00
parent 45d5a3b9d7
commit 7c7d7d526e
2 changed files with 53 additions and 14 deletions

View File

@@ -98,10 +98,18 @@
background: t($modal-sidebar); background: t($modal-sidebar);
border-radius: t($borderRadius); border-radius: t($borderRadius);
} }
.previewContainer { .previewContainer {
} }
.previewItem {
.previewItem {
.quotediv .quote {
max-width: 100%;
}
.quotediv .author-holder .author .author-content .title {
font-size: 1em !important;
}
} }
} }

View File

@@ -3,7 +3,14 @@ import { PureComponent } from 'react';
import { MdOutlineDragIndicator } from 'react-icons/md'; 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 '../../../../widgets/greeting/Greeting';
import Clock from '../../../../widgets/time/Clock';
import Quote from '../../../../widgets/quote/Quote';
import QuickLinks from '../../../../widgets/quicklinks/QuickLinks';
import Date from '../../../../widgets/time/Date';
import Message from '../../../../widgets/message/Message';
import Reminder from '../../../../widgets/reminder/Reminder';
import EventBus from 'modules/helpers/eventbus'; import EventBus from 'modules/helpers/eventbus';
@@ -73,6 +80,27 @@ export default class OrderSettings extends PureComponent {
} }
}; };
getTab = (value) => {
switch (value) {
case 'greeting':
return <Greeting />;
case 'time':
return <Clock />;
case 'quicklinks':
return <QuickLinks />;
case 'quote':
return <Quote />;
case 'date':
return <Date />;
case 'message':
return <Message />;
case 'reminder':
return <Reminder />;
default:
return null;
}
};
componentDidUpdate() { componentDidUpdate() {
localStorage.setItem('order', JSON.stringify(this.state.items)); localStorage.setItem('order', JSON.stringify(this.state.items));
variables.stats.postEvent('setting', 'Widget order'); variables.stats.postEvent('setting', 'Widget order');
@@ -82,30 +110,33 @@ export default class OrderSettings extends PureComponent {
render() { render() {
return ( return (
<> <>
<span className="mainTitle"> <span className="mainTitle">{getMessage('modals.main.marketplace.product.overview')}</span>
{getMessage('modals.main.marketplace.product.overview')}
</span>
{/*<span className="title">{getMessage('modals.main.marketplace.product.overview')}</span> {/*<span className="title">{getMessage('modals.main.marketplace.product.overview')}</span>
<span className="link" onClick={this.reset}> <span className="link" onClick={this.reset}>
{getMessage('modals.main.settings.buttons.reset')} {getMessage('modals.main.settings.buttons.reset')}
</span>*/} </span>*/}
<div className="overviewGrid"> <div className="overviewGrid">
<div> <div>
<span className='title'>Preview</span> <span className="title">Preview</span>
<div className='tabPreview'> <div className="tabPreview">
<div className="previewItem"> <div className="previewItem" style={{ maxWidth: '50%' }}>
{this.state.items.map((value, index) => { {this.state.items.map((value, index) => {
if (!this.enabled(value)) { if (!this.enabled(value)) {
return null; return null;
} }
return <div className="previewItem" key={`item-${value}`} index={index} > {value}</div>; return (
})} <div className="previewItem" key={`item-${value}`} index={index}>
{' '}
{this.getTab(value)}
</div>
);
})}
</div> </div>
</div> </div>
</div> </div>
<div> <div>
<span className='title'>{getMessage('modals.main.settings.sections.order.title')}</span> <span className="title">{getMessage('modals.main.settings.sections.order.title')}</span>
<SortableContainer <SortableContainer
onSortEnd={this.onSortEnd} onSortEnd={this.onSortEnd}
lockAxis="y" lockAxis="y"