diff --git a/src/App.jsx b/src/App.jsx
index bc2a627c..784206dd 100644
--- a/src/App.jsx
+++ b/src/App.jsx
@@ -31,6 +31,10 @@ export default class App extends PureComponent {
variables.stats.tabLoad();
}
+ componentWillUnmount() {
+ EventBus.off('refresh');
+ }
+
render() {
return (
<>
diff --git a/src/components/helpers/autocomplete/Autocomplete.jsx b/src/components/helpers/autocomplete/Autocomplete.jsx
index 2f524e5b..40dfd67f 100644
--- a/src/components/helpers/autocomplete/Autocomplete.jsx
+++ b/src/components/helpers/autocomplete/Autocomplete.jsx
@@ -55,7 +55,7 @@ export default class Autocomplete extends PureComponent {
});
}
- componentWillUmount() {
+ componentWillUnmount() {
EventBus.off('refresh');
}
diff --git a/src/components/modals/main/Main.jsx b/src/components/modals/main/Main.jsx
index 37032e13..f6f1c8e7 100644
--- a/src/components/modals/main/Main.jsx
+++ b/src/components/modals/main/Main.jsx
@@ -30,7 +30,6 @@ const renderLoader = (current) => (
);
export default function MainModal({ modalClose }) {
- const display = localStorage.getItem('showReminder') === 'true' ? 'flex' : 'none';
const [currentTab, setCurrentTab] = useState(0);
const changeTab = (type) => {
diff --git a/src/components/modals/main/marketplace/sections/Added.jsx b/src/components/modals/main/marketplace/sections/Added.jsx
index cfa93f85..a9e68638 100644
--- a/src/components/modals/main/marketplace/sections/Added.jsx
+++ b/src/components/modals/main/marketplace/sections/Added.jsx
@@ -1,5 +1,5 @@
import variables from 'modules/variables';
-import { PureComponent, createRef } from 'react';
+import { PureComponent } from 'react';
import { MdUpdate, MdOutlineExtensionOff, MdCode } from 'react-icons/md';
import { toast } from 'react-toastify';
import Modal from 'react-modal';
diff --git a/src/components/modals/main/tabs/backend/Tabs.jsx b/src/components/modals/main/tabs/backend/Tabs.jsx
index 4b8748a0..1d206721 100644
--- a/src/components/modals/main/tabs/backend/Tabs.jsx
+++ b/src/components/modals/main/tabs/backend/Tabs.jsx
@@ -26,8 +26,10 @@ export default class Tabs extends PureComponent {
};
render() {
+ const display = localStorage.getItem('showReminder') === 'true' ? 'flex' : 'none';
+
const reminderInfo = (
-
+
{variables.getMessage('modals.main.settings.reminder.title')}
{variables.getMessage('modals.main.settings.reminder.message')}
diff --git a/src/components/widgets/Widgets.jsx b/src/components/widgets/Widgets.jsx
index 151dcbc5..27a4a7ec 100644
--- a/src/components/widgets/Widgets.jsx
+++ b/src/components/widgets/Widgets.jsx
@@ -66,6 +66,10 @@ export default class Widgets extends PureComponent {
});
}
+ componentWillUnmount() {
+ EventBus.off('refresh');
+ }
+
render() {
// don't show when welcome is there
return this.state.welcome !== 'false' ? (
diff --git a/src/components/widgets/background/PhotoInformation.jsx b/src/components/widgets/background/PhotoInformation.jsx
index 0c1f830b..67758b02 100644
--- a/src/components/widgets/background/PhotoInformation.jsx
+++ b/src/components/widgets/background/PhotoInformation.jsx
@@ -119,25 +119,6 @@ export default function PhotoInformation({ info, url, api }) {
);
}
- /*const downloadEnabled =
- localStorage.getItem('downloadbtn') === 'true' && !info.offline && !info.photographerURL && api;
- const downloadBackground = () => {
- if (downloadEnabled) {
- downloadImage(info);
- }
- };
-
- const showBackgroundInformation = () => {
- const element = document.querySelector('.infoCard');
- if (element) {
- if (element.style.display === 'none' || element.style.display === '') {
- element.style.display = 'block';
- } else {
- element.style.display = 'none';
- }
- }
- };*/
-
let showingPhotoMap = false;
const photoMap = () => {
if (
diff --git a/src/components/widgets/message/Message.jsx b/src/components/widgets/message/Message.jsx
index fbc61f13..66f438d4 100644
--- a/src/components/widgets/message/Message.jsx
+++ b/src/components/widgets/message/Message.jsx
@@ -28,20 +28,23 @@ export default class Message extends PureComponent {
});
const messages = JSON.parse(localStorage.getItem('messages')) || [];
+ if (messages.length === 0) {
+ return (this.message.current.style.display = 'none');
+ }
this.message.current.style.fontSize = `${
1 * Number((localStorage.getItem('zoomMessage') || 100) / 100)
}em`;
- if (messages.length === 0) {
- return (this.message.current.style.display = 'none');
- }
-
this.setState({
messageText: messages[Math.floor(Math.random() * messages.length)],
});
}
+ componentWillUnmount() {
+ EventBus.off('refresh');
+ }
+
render() {
return (
diff --git a/src/components/widgets/navbar/Navbar.jsx b/src/components/widgets/navbar/Navbar.jsx
index b8902adc..69bf8752 100644
--- a/src/components/widgets/navbar/Navbar.jsx
+++ b/src/components/widgets/navbar/Navbar.jsx
@@ -15,11 +15,11 @@ export default class Navbar extends PureComponent {
constructor() {
super();
this.navbarContainer = createRef();
- this.refreshEnabled = localStorage.getItem('refresh');
- this.refreshValue = localStorage.getItem('refreshOption');
this.state = {
classList: localStorage.getItem('widgetStyle') === 'legacy' ? 'navbar old' : 'navbar new',
refreshText: '',
+ refreshEnabled: localStorage.getItem('refresh'),
+ refreshOption: localStorage.getItem('refreshOption') || ''
};
}
@@ -29,46 +29,57 @@ export default class Navbar extends PureComponent {
});
}
+ updateRefreshText() {
+ let refreshText;
+ switch (localStorage.getItem('refreshOption')) {
+ case 'background':
+ refreshText = variables.getMessage('modals.main.settings.sections.background.title');
+ break;
+ case 'quote':
+ refreshText = variables.getMessage('modals.main.settings.sections.quote.title');
+ break;
+ case 'quotebackground':
+ refreshText =
+ variables.getMessage('modals.main.settings.sections.quote.title') +
+ ' ' +
+ variables.getMessage('modals.main.settings.sections.background.title');
+ break;
+ default:
+ refreshText = variables.getMessage(
+ 'modals.main.settings.sections.appearance.navbar.refresh_options.page',
+ );
+ break;
+ }
+
+ this.setState({
+ refreshText,
+ });
+ }
+
componentDidMount() {
EventBus.on('refresh', (data) => {
if (data === 'navbar' || data === 'background') {
- this.refreshEnabled = localStorage.getItem('refresh');
- this.refreshValue = localStorage.getItem('refreshOption');
- this.forceUpdate();
+ this.setState({
+ refreshEnabled: localStorage.getItem('refresh'),
+ refreshOption: localStorage.getItem('refreshOption')
+ });
try {
+ this.updateRefreshText();
this.setZoom();
} catch (e) {}
}
});
- if (localStorage.getItem('refreshOption') === 'background') {
- this.setState({
- refreshText: variables.getMessage('modals.main.settings.sections.background.title'),
- });
- } else if (localStorage.getItem('refreshOption') === 'quote') {
- this.setState({
- refreshText: variables.getMessage('modals.main.settings.sections.quote.title'),
- });
- } else if (localStorage.getItem('refreshOption') === 'quotebackground') {
- this.setState({
- refreshText:
- variables.getMessage('modals.main.settings.sections.quote.title') +
- ' ' +
- variables.getMessage('modals.main.settings.sections.background.title'),
- });
- } else {
- this.setState({
- refreshText: variables.getMessage(
- 'modals.main.settings.sections.appearance.navbar.refresh_options.page',
- ),
- });
- }
-
+ this.updateRefreshText();
this.setZoom();
}
+ componentWillUnmount() {
+ EventBus.off('refresh');
+ }
+
refresh() {
- switch (this.refreshValue) {
+ switch (this.state.refreshOption) {
case 'background':
return EventBus.dispatch('refresh', 'backgroundrefresh');
case 'quote':
diff --git a/src/components/widgets/navbar/Notes.jsx b/src/components/widgets/navbar/Notes.jsx
index 545b7c38..8a267fcd 100644
--- a/src/components/widgets/navbar/Notes.jsx
+++ b/src/components/widgets/navbar/Notes.jsx
@@ -26,7 +26,7 @@ class Notes extends PureComponent {
componentDidMount() {
EventBus.on('refresh', (data) => {
- if (data === 'navbar' || data === 'background') {
+ if (data === 'navbar') {
this.forceUpdate();
try {
this.setZoom();
@@ -37,6 +37,10 @@ class Notes extends PureComponent {
this.setZoom();
}
+ componentWillUnmount() {
+ EventBus.off('refresh');
+ }
+
setNotes = (e) => {
localStorage.setItem('notes', e.target.value);
this.setState({
@@ -140,7 +144,7 @@ class Notes extends PureComponent {
}
}
-export default function NotesWrapper(props) {
+export default function NotesWrapper() {
const { x, y, reference, floating, strategy } = useFloating({
placement: 'bottom',
middleware: [shift()],
diff --git a/src/components/widgets/navbar/Todo.jsx b/src/components/widgets/navbar/Todo.jsx
index 501b54cc..8245787b 100644
--- a/src/components/widgets/navbar/Todo.jsx
+++ b/src/components/widgets/navbar/Todo.jsx
@@ -36,12 +36,12 @@ class Todo extends PureComponent {
setZoom() {
this.setState({
zoomFontSize: Number(((localStorage.getItem('zoomNavbar') || 100) / 100) * 1.2) + "rem"
- })
+ });
}
componentDidMount() {
EventBus.on('refresh', (data) => {
- if (data === 'navbar' || data === 'background') {
+ if (data === 'navbar') {
this.forceUpdate();
try {
this.setZoom();
@@ -52,6 +52,10 @@ class Todo extends PureComponent {
this.setZoom();
}
+ componentWillUnmount() {
+ EventBus.off('refresh');
+ }
+
arrayMove(array, oldIndex, newIndex) {
const result = Array.from(array);
const [removed] = result.splice(oldIndex, 1);
@@ -79,56 +83,50 @@ class Todo extends PureComponent {
}
updateTodo(action, index, data) {
- let todoContent = this.state.todo;
+ let todo = this.state.todo;
switch (action) {
case 'add':
- todoContent.push({
+ todo.push({
value: '',
done: false,
});
break;
case 'remove':
- todoContent.splice(index, 1);
- if (todoContent.length === 0) {
- todoContent.push({
+ todo.splice(index, 1);
+ if (todo.length === 0) {
+ todo.push({
value: '',
done: false,
});
}
break;
case 'set':
- todoContent[index] = {
+ todo[index] = {
value: data.target.value,
- done: todoContent[index].done,
+ done: todo[index].done,
};
break;
case 'done':
- todoContent[index].done = !todoContent[index].done;
+ todo[index].done = !todo[index].done;
break;
default:
break;
}
- localStorage.setItem('todoContent', JSON.stringify(todoContent));
+ localStorage.setItem('todo', JSON.stringify(todo));
this.setState({
- todo: todoContent,
+ todo,
});
this.forceUpdate();
}
pin() {
variables.stats.postEvent('feature', 'Todo pin');
- if (localStorage.getItem('todoPinned') === 'true') {
- localStorage.setItem('todoPinned', false);
- this.setState({
- showTodo: false,
- });
- } else {
- localStorage.setItem('todoPinned', true);
- this.setState({
- showTodo: true,
- });
- }
+ const todoPinned = (localStorage.getItem('todoPinned') === 'true');
+ localStorage.setItem('todoPinned', !todoPinned);
+ this.setState({
+ showTodo: !todoPinned,
+ });
}
render() {
diff --git a/src/components/widgets/quicklinks/QuickLinks.jsx b/src/components/widgets/quicklinks/QuickLinks.jsx
index 7a05ea12..c6f8864d 100644
--- a/src/components/widgets/quicklinks/QuickLinks.jsx
+++ b/src/components/widgets/quicklinks/QuickLinks.jsx
@@ -1,10 +1,5 @@
-import variables from 'modules/variables';
import { PureComponent, createRef } from 'react';
-import { TextareaAutosize } from '@mui/material';
-import { MdAddToPhotos } from 'react-icons/md';
-
import Tooltip from 'components/helpers/tooltip/Tooltip';
-
import EventBus from 'modules/helpers/eventbus';
import './quicklinks.scss';
@@ -14,98 +9,21 @@ export default class QuickLinks extends PureComponent {
super();
this.state = {
items: JSON.parse(localStorage.getItem('quicklinks')),
- name: '',
- url: '',
- showAddLink: 'none',
- nameError: '',
- urlError: '',
};
this.quicklinksContainer = createRef();
}
- deleteLink(key, event) {
- event.preventDefault();
-
- // remove link from array
- const data = JSON.parse(localStorage.getItem('quicklinks')).filter((i) => i.key !== key);
-
- localStorage.setItem('quicklinks', JSON.stringify(data));
- this.setState({
- items: data,
- });
-
- variables.stats.postEvent('feature', 'Quicklink delete');
- }
-
- addLink = () => {
- const data = JSON.parse(localStorage.getItem('quicklinks'));
- let url = this.state.url;
- let urlError;
-
- // regex: https://ihateregex.io/expr/url/
- // eslint-disable-next-line no-useless-escape
- if (
- url.length <= 0 ||
- /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()!@:%_.~#?&=]*)/.test(
- url,
- ) === false
- ) {
- urlError = variables.getMessage('widgets.quicklinks.url_error');
- }
-
- if (urlError) {
- return this.setState({
- urlError,
- });
- }
-
- if (!url.startsWith('http://') && !url.startsWith('https://')) {
- url = 'http://' + url;
- }
-
- data.push({
- name: this.state.name || url,
- url,
- icon: this.state.icon || '',
- key: Math.random().toString(36).substring(7) + 1,
- });
-
- localStorage.setItem('quicklinks', JSON.stringify(data));
-
- this.setState({
- items: data,
- name: '',
- url: '',
- });
-
- variables.stats.postEvent('feature', 'Quicklink add');
-
- this.toggleAdd();
-
- // make sure image is correct size
- this.setZoom(this.quicklinksContainer.current);
- };
-
- toggleAdd = () => {
- this.setState({
- showAddLink: this.state.showAddLink === 'none' ? 'flex' : 'none',
- });
- };
-
// widget zoom
setZoom(element) {
const zoom = localStorage.getItem('zoomQuicklinks') || 100;
+ for (const link of element.getElementsByTagName('span')) {
+ link.style.fontSize = `${14 * Number(zoom / 100)}px`;
+ }
+
if (localStorage.getItem('quickLinksStyle') !== 'text') {
- for (const link of element.getElementsByTagName('span')) {
- link.style.fontSize = `${14 * Number(zoom / 100)}px`;
- }
for (const img of element.getElementsByTagName('img')) {
img.style.height = `${30 * Number(zoom / 100)}px`;
}
- } else {
- for (const link of element.getElementsByTagName('span')) {
- link.style.fontSize = `${14 * Number(zoom / 100)}px`;
- }
}
}
@@ -128,16 +46,6 @@ export default class QuickLinks extends PureComponent {
this.setZoom(this.quicklinksContainer.current);
}
- // allows you to add a link by pressing enter
- topbarEnter = (e) => {
- e = e || window.event;
- const code = e.which || e.keyCode;
- if (code === 13 && this.state.showAddLink === 'visible') {
- this.addLink();
- e.preventDefault();
- }
- };
-
componentWillUnmount() {
EventBus.off('refresh');
}
@@ -199,7 +107,7 @@ export default class QuickLinks extends PureComponent {
);
return tooltipEnabled === 'true' ? (
-
+
{link}
) : (
@@ -208,44 +116,9 @@ export default class QuickLinks extends PureComponent {
};
return (
- <>
-
- {this.state.items.map((item) => quickLink(item))}
-
-
-
- {variables.getMessage('widgets.quicklinks.new')}
- this.setState({ name: e.target.value })}
- />
-
- this.setState({ url: e.target.value })}
- />
- {this.state.urlError}
- this.setState({ icon: e.target.value })}
- />
-
-
-
-
- >
+
+ {this.state.items.map((item) => quickLink(item))}
+
);
}
}
diff --git a/src/components/widgets/quote/Quote.jsx b/src/components/widgets/quote/Quote.jsx
index 5d5c791b..827e631c 100644
--- a/src/components/widgets/quote/Quote.jsx
+++ b/src/components/widgets/quote/Quote.jsx
@@ -359,6 +359,7 @@ export default class Quote extends PureComponent {
}
}
});
+
EventBus.on('refresh', (data) => {
if (data === 'quote') {
if (localStorage.getItem('quote') === 'false') {
diff --git a/src/components/widgets/weather/Expanded.jsx b/src/components/widgets/weather/Expanded.jsx
new file mode 100644
index 00000000..ba564e64
--- /dev/null
+++ b/src/components/widgets/weather/Expanded.jsx
@@ -0,0 +1,109 @@
+import { WiHumidity, WiWindy, WiBarometer, WiCloud } from 'react-icons/wi';
+import { MdDisabledVisible } from 'react-icons/md';
+
+import WeatherIcon from './WeatherIcon';
+import WindDirectionIcon from './WindDirectionIcon';
+
+import Tooltip from '../../helpers/tooltip/Tooltip';
+
+export default function Expanded({ state, weatherType, variables }) {
+ const enabled = (setting) => {
+ return (localStorage.getItem(setting) === 'true' && weatherType >= 3) || weatherType === '3';
+ };
+
+ return (
+
+ {weatherType >= 3 && (
+
+ {variables.getMessage('widgets.weather.extra_information')}
+
+ )}
+ {enabled('cloudiness') ? (
+
+
+
+ {state.weather.cloudiness}%
+
+
+ ) : null}
+ {enabled('windspeed') ? (
+
+
+
+ {state.weather.wind_speed}
+ m/s{' '}
+ {enabled('windDirection') ? (
+
+ ) : null}
+
+
+ ) : null}
+ {enabled('atmosphericpressure') ? (
+
+
+
+ {state.weather.pressure}
+ hPa
+
+
+ ) : null}
+ {enabled('weatherdescription') ? (
+
+
+
+ {state.weather.description}
+
+
+ ) : null}
+ {enabled('visibility') ? (
+
+
+
+ {variables.getMessage('widgets.weather.meters', {
+ amount: state.weather.visibility,
+ })}
+
+
+ ) : null}
+ {enabled('humidity') ? (
+
+
+
+ {state.weather.humidity}
+
+
+ ) : null}
+
+ );
+}
diff --git a/src/components/widgets/weather/Weather.jsx b/src/components/widgets/weather/Weather.jsx
index 1a8f7853..add0b9bd 100644
--- a/src/components/widgets/weather/Weather.jsx
+++ b/src/components/widgets/weather/Weather.jsx
@@ -1,12 +1,9 @@
import variables from 'modules/variables';
import { PureComponent } from 'react';
-import { WiHumidity, WiWindy, WiBarometer, WiCloud } from 'react-icons/wi';
-import { MdDisabledVisible } from 'react-icons/md';
import WeatherIcon from './WeatherIcon';
-import WindDirectionIcon from './WindDirectionIcon';
+import Expanded from './Expanded';
-import Tooltip from '../../helpers/tooltip/Tooltip';
import EventBus from 'modules/helpers/eventbus';
import './weather.scss';
@@ -16,21 +13,7 @@ export default class Weather extends PureComponent {
super();
this.state = {
location: localStorage.getItem('location') || 'London',
- icon: '',
- temp_text: '',
- weather: {
- temp: '',
- description: '',
- temp_min: '',
- temp_max: '',
- temp_feels_like: '',
- humidity: '',
- wind_speed: '',
- wind_degrees: '',
- cloudiness: '',
- visibility: '',
- pressure: '',
- },
+ done: false,
};
}
@@ -38,40 +21,17 @@ export default class Weather extends PureComponent {
const zoomWeather = `${Number((localStorage.getItem('zoomWeather') || 100) / 100)}em`;
document.querySelector('.weather').style.fontSize = zoomWeather;
- let data = {
- weather: [
- {
- description: this.state.weather.description,
- icon: this.state.icon,
- },
- ],
- main: {
- temp: this.state.weather.original_temp,
- temp_min: this.state.weather.original_temp_min,
- temp_max: this.state.weather.original_temp_max,
- temp_feels_like: this.state.weather.original_temp_feels_like,
- humidity: this.state.weather.humidity,
- pressure: this.state.weather.pressure,
- },
- visibility: this.state.weather.visibility,
- wind: {
- speed: this.state.weather.wind_speed,
- deg: this.state.weather.wind_degrees,
- },
- clouds: {
- all: this.state.weather.cloudiness,
- },
- };
-
- if (!this.state.weather.temp) {
- data = await (
- await fetch(
- variables.constants.PROXY_URL +
- `/weather/current?city=${this.state.location}&lang=${variables.languagecode}`,
- )
- ).json();
+ if (this.state.done === true) {
+ return;
}
+ const data = await (
+ await fetch(
+ variables.constants.PROXY_URL +
+ `/weather/current?city=${this.state.location}&lang=${variables.languagecode}`,
+ )
+ ).json();
+
if (data.cod === '404') {
return this.setState({
location: variables.getMessage('widgets.weather.not_found'),
@@ -84,24 +44,18 @@ export default class Weather extends PureComponent {
let temp_feels_like = data.main.temp_feels_like;
let temp_text = 'K';
- switch (localStorage.getItem('tempformat')) {
- case 'celsius':
- temp -= 273.15;
- temp_min -= 273.15;
- temp_max -= 273.15;
- temp_feels_like -= 273.15;
- temp_text = '°C';
- break;
- case 'fahrenheit':
- temp = (temp - 273.15) * 1.8 + 32;
- temp_min = (temp_min - 273.15) * 1.8 + 32;
- temp_max = (temp_max - 273.15) * 1.8 + 32;
- temp_feels_like = (temp_feels_like - 273.15) * 1.8 + 32;
- temp_text = '°F';
- break;
- // kelvin
- default:
- break;
+ if (localStorage.getItem('tempformat') === 'celsius') {
+ temp -= 273.15;
+ temp_min -= 273.15;
+ temp_max -= 273.15;
+ temp_feels_like -= 273.15;
+ temp_text = '°C';
+ } else {
+ temp = (temp - 273.15) * 1.8 + 32;
+ temp_min = (temp_min - 273.15) * 1.8 + 32;
+ temp_max = (temp_max - 273.15) * 1.8 + 32;
+ temp_feels_like = (temp_feels_like - 273.15) * 1.8 + 32;
+ temp_text = '°F';
}
this.setState({
@@ -118,12 +72,9 @@ export default class Weather extends PureComponent {
wind_degrees: data.wind.deg,
cloudiness: data.clouds.all,
visibility: data.visibility,
- pressure: data.main.pressure,
- original_temp: data.main.temp,
- original_temp_min: data.main.temp_min,
- original_temp_max: data.main.temp_max,
- original_temp_feels_like: data.main.temp_feels_like,
+ pressure: data.main.pressure
},
+ done: true
});
document.querySelector('.weather svg').style.fontSize = zoomWeather;
@@ -144,10 +95,11 @@ export default class Weather extends PureComponent {
}
render() {
+ if (this.state.done === false) {
+ return ;
+ }
+
const weatherType = localStorage.getItem('weatherType') || 1;
- const enabled = (setting) => {
- return (localStorage.getItem(setting) === 'true' && weatherType >= 3) || weatherType === '3';
- };
if (this.state.location === variables.getMessage('weather.not_found')) {
return (
@@ -156,107 +108,7 @@ export default class Weather extends PureComponent {
);
}
-
- const expandedInfo = () => {
- return (
-
- {weatherType >= 3 && (
-
- {variables.getMessage('widgets.weather.extra_information')}
-
- )}
- {enabled('cloudiness') ? (
-
-
-
- {this.state.weather.cloudiness}%
-
-
- ) : null}
- {enabled('windspeed') ? (
-
-
-
- {this.state.weather.wind_speed}
- m/s{' '}
- {enabled('windDirection') ? (
-
- ) : null}
-
-
- ) : null}
- {enabled('atmosphericpressure') ? (
-
-
-
- {this.state.weather.pressure}
- hPa
-
-
- ) : null}
- {enabled('weatherdescription') ? (
-
-
-
- {this.state.weather.description}
-
-
- ) : null}
- {enabled('visibility') ? (
-
-
-
- {variables.getMessage('widgets.weather.meters', {
- amount: this.state.weather.visibility,
- })}
-
-
- ) : null}
- {enabled('humidity') ? (
-
-
-
- {this.state.weather.humidity}
-
-
- ) : null}
-
- );
- };
-
+
return (
@@ -283,7 +135,7 @@ export default class Weather extends PureComponent {
{this.state.location}
)}
- {weatherType >= 3 ? expandedInfo() : null}
+ {weatherType >= 3 ?
: null}
);
}