mirror of
https://github.com/mue/mue.git
synced 2026-07-14 04:24:01 +02:00
perf: reduce localstorage calls etc
This commit is contained in:
@@ -58,7 +58,7 @@ export default class Modals extends PureComponent {
|
||||
render() {
|
||||
return (
|
||||
<>
|
||||
<Navbar openModal={(modal) => this.toggleModal(modal, true)}/>
|
||||
{this.state.welcomeModal === false ? <Navbar openModal={(modal) => this.toggleModal(modal, true)}/> : null}
|
||||
<Modal closeTimeoutMS={300} id='modal' onRequestClose={() => this.toggleModal('mainModal', false)} isOpen={this.state.mainModal} className='Modal mainModal' overlayClassName='Overlay' ariaHideApp={false}>
|
||||
<Main modalClose={() => this.toggleModal('mainModal', false)}/>
|
||||
</Modal>
|
||||
|
||||
@@ -13,6 +13,7 @@ const Weather = lazy(() => import('./weather/Weather'));
|
||||
const renderLoader = () => <></>;
|
||||
|
||||
export default class Widgets extends PureComponent {
|
||||
online = (localStorage.getItem('offlineMode') === 'false');
|
||||
constructor() {
|
||||
super();
|
||||
this.state = {
|
||||
@@ -24,7 +25,7 @@ export default class Widgets extends PureComponent {
|
||||
greeting: this.enabled('greeting') ? <Greeting/> : null,
|
||||
quote: this.enabled('quote') ? <Quote/> : null,
|
||||
date: this.enabled('date') ? <Date/> : null,
|
||||
quicklinks: this.enabled('quicklinksenabled') ? <QuickLinks/> : null
|
||||
quicklinks: this.enabled('quicklinksenabled') && this.online ? <QuickLinks/> : null
|
||||
};
|
||||
}
|
||||
|
||||
@@ -65,7 +66,7 @@ export default class Widgets extends PureComponent {
|
||||
<Suspense fallback={renderLoader()}>
|
||||
{this.enabled('searchBar') ? <Search/> : null}
|
||||
{elements}
|
||||
{this.enabled('weatherEnabled') && (localStorage.getItem('offlineMode') === 'false') ? <Weather/> : null}
|
||||
{this.enabled('weatherEnabled') && this.online ? <Weather/> : null}
|
||||
</Suspense>
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -66,12 +66,12 @@ export default class Greeting extends PureComponent {
|
||||
message = this.language.afternoon;
|
||||
}
|
||||
|
||||
// Events
|
||||
message = this.doEvents(now, message);
|
||||
|
||||
// Events and custom
|
||||
const custom = localStorage.getItem('defaultGreetingMessage');
|
||||
if (custom === 'false') {
|
||||
message = '';
|
||||
} else {
|
||||
message = this.doEvents(now, message);
|
||||
}
|
||||
|
||||
// Name
|
||||
|
||||
@@ -24,10 +24,6 @@ export default class Navbar extends PureComponent {
|
||||
}
|
||||
|
||||
render() {
|
||||
if (localStorage.getItem('showWelcome') !== 'false') {
|
||||
return null;
|
||||
}
|
||||
|
||||
const backgroundEnabled = (localStorage.getItem('background') === 'true');
|
||||
|
||||
return (
|
||||
|
||||
@@ -101,18 +101,17 @@ export default class QuickLinks extends PureComponent {
|
||||
|
||||
// widget zoom
|
||||
setZoom(element) {
|
||||
const zoomQuicklinks = Number((localStorage.getItem('zoomQuicklinks') || 100) / 100);
|
||||
const images = element.getElementsByTagName('img');
|
||||
|
||||
for (const img of images) {
|
||||
img.style.height = `${0.87 * Number((localStorage.getItem('zoomQuicklinks') || 100) / 100)}em`;
|
||||
img.style.height = `${0.87 * zoomQuicklinks}em`;
|
||||
};
|
||||
element.querySelector('button').style.fontSize = `${1.15 * Number((localStorage.getItem('zoomQuicklinks') || 100) / 100)}em`;
|
||||
|
||||
element.querySelector('button').style.fontSize = `${1.15 * zoomQuicklinks}em`;
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
if (localStorage.getItem('offlineMode') === 'true') {
|
||||
return;
|
||||
}
|
||||
|
||||
EventBus.on('refresh', (data) => {
|
||||
if (data === 'quicklinks') {
|
||||
const element = document.querySelector('.quicklinks-container');
|
||||
@@ -148,10 +147,6 @@ export default class QuickLinks extends PureComponent {
|
||||
}
|
||||
|
||||
render() {
|
||||
if (localStorage.getItem('offlineMode') === 'true') {
|
||||
return null;
|
||||
}
|
||||
|
||||
let target, rel = null;
|
||||
if (localStorage.getItem('quicklinksnewtab') === 'true') {
|
||||
target = '_blank';
|
||||
|
||||
@@ -200,8 +200,9 @@ export default class Quote extends PureComponent {
|
||||
}
|
||||
|
||||
setZoom() {
|
||||
document.querySelector('.quote').style.fontSize = `${0.8 * Number((localStorage.getItem('zoomQuote') || 100) / 100)}em`;
|
||||
document.querySelector('.quoteauthor').style.fontSize = `${0.9 * Number((localStorage.getItem('zoomQuote') || 100) / 100)}em`;
|
||||
const zoomQuote = Number((localStorage.getItem('zoomQuote') || 100) / 100);
|
||||
document.querySelector('.quote').style.fontSize = `${0.8 * zoomQuote}em`;
|
||||
document.querySelector('.quoteauthor').style.fontSize = `${0.9 * zoomQuote}em`;
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
|
||||
@@ -96,7 +96,7 @@ export default class DateWidget extends PureComponent {
|
||||
});
|
||||
} else {
|
||||
// Long date
|
||||
const lang = localStorage.getItem('language').split('_')[0];
|
||||
const lang = window.languagecode.split('_')[0];
|
||||
|
||||
const nth = (localStorage.getItem('datenth') === 'true') ? dtf.nth(date.getDate()) : date.getDate();
|
||||
|
||||
|
||||
@@ -31,11 +31,8 @@ export default class Weather extends PureComponent {
|
||||
}
|
||||
|
||||
async getWeather() {
|
||||
if (localStorage.getItem('offlineMode') === 'true') {
|
||||
return null;
|
||||
}
|
||||
|
||||
document.querySelector('.weather').style.fontSize = `${Number((localStorage.getItem('zoomWeather') || 100) / 100)}em`;
|
||||
const zoomWeather = `${Number((localStorage.getItem('zoomWeather') || 100) / 100)}em`;
|
||||
document.querySelector('.weather').style.fontSize = zoomWeather;
|
||||
|
||||
let data = {
|
||||
weather: [
|
||||
@@ -62,7 +59,7 @@ export default class Weather extends PureComponent {
|
||||
};
|
||||
|
||||
if (!this.state.weather.temp) {
|
||||
data = await (await fetch(window.constants.PROXY_URL + `/weather/current?city=${this.state.location}&lang=${localStorage.getItem('language')}`)).json();
|
||||
data = await (await fetch(window.constants.PROXY_URL + `/weather/current?city=${this.state.location}&lang=${window.languadecode}`)).json();
|
||||
}
|
||||
|
||||
if (data.cod === '404') {
|
||||
@@ -114,7 +111,7 @@ export default class Weather extends PureComponent {
|
||||
}
|
||||
});
|
||||
|
||||
document.querySelector('.weather svg').style.fontSize = `${0.95 * Number((localStorage.getItem('zoomWeather') || 100) / 100)}em`;
|
||||
document.querySelector('.weather svg').style.fontSize = zoomWeather;
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
@@ -123,6 +120,7 @@ export default class Weather extends PureComponent {
|
||||
this.getWeather();
|
||||
}
|
||||
});
|
||||
|
||||
this.getWeather();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user