fix: Reset modal now works, widget order has reset button etc

This commit is contained in:
David Ralph
2021-03-31 12:21:37 +01:00
parent 353fa85cba
commit 5f9bc4a94b
11 changed files with 75 additions and 29 deletions

View File

@@ -1,13 +1,16 @@
import React from 'react';
import SettingsFunctions from '../../../../modules/helpers/settings';
export default function ResetModal(props) {
return (
<div className='welcomeContent'>
<span className='closeModal' onClick={props.modalClose}>&times;</span>
<div className='welcomeModalText'>
reset text
<button className='close' onClick={props.modalClose}>yes</button>
<button className='close' onClick={props.modalClose}>no</button>
<div className='resetmodal'>
<h3 style={{'textAlign': 'center'}}>WARNING</h3>
<h4>Do you want to reset Mue?</h4>
<p>This will delete all data. If you want to keep your data and preferences, please export first.</p>
<div className='resetfooter'>
<button className='reset' onClick={() => SettingsFunctions.setDefaultSettings('reset')}>Reset</button>
<button className='import' onClick={props.modalClose}>Cancel</button>
</div>
</div>
);

View File

@@ -18,10 +18,19 @@ export default class About extends React.PureComponent {
}
async getGitHubData() {
const contributors = await (await fetch('https://api.github.com/repos/mue/mue/contributors')).json();
const { sponsors } = await (await fetch(window.constants.SPONSORS_URL + '/list')).json();
let contributors, sponsors, versionData;
try {
contributors = await (await fetch(window.constants.GITHUB_URL + '/repos/mue/mue/contributors')).json();
sponsors = (await (await fetch(window.constants.SPONSORS_URL + '/list')).json()).sponsors;
versionData = await (await fetch(window.constants.GITHUB_URL + '/repos/mue/mue/releases')).json();
} catch (e) {
return this.setState({
update: 'Failed to get update information',
loading: 'An error occurred'
});
}
const versionData = await (await fetch('https://api.github.com/repos/mue/mue/releases')).json();
const newVersion = versionData[0].tag_name;
let updateMsg = this.language.version.no_update;

View File

@@ -52,7 +52,7 @@ export default class AdvancedSettings extends React.PureComponent {
<p>{advanced.experimental_warning}</p>
<Checkbox name='experimental' text={this.language.enabled} />
<Modal onRequestClose={() => this.setState({ resetModal: false })} isOpen={this.state.resetModal} className={'modal'} overlayClassName={'Overlay'} ariaHideApp={false}>
<Modal onRequestClose={() => this.setState({ resetModal: false })} isOpen={this.state.resetModal} className={'Modal resetmodal'} overlayClassName={'Overlay'} ariaHideApp={false}>
<ResetModal modalClose={() => this.setState({ resetModal: false })} />
</Modal>
</>

View File

@@ -26,7 +26,14 @@ export default class OrderSettings extends React.PureComponent {
this.setState(({items}) => ({
items: arrayMove(items, oldIndex, newIndex)
}));
};
}
reset = () => {
localStorage.setItem('order', JSON.stringify(['greeting', 'time', 'quote', 'date']));
this.setState({
items: JSON.parse(localStorage.getItem('order'))
});
}
componentDidUpdate() {
localStorage.setItem('order', JSON.stringify(this.state.items));
@@ -36,6 +43,7 @@ export default class OrderSettings extends React.PureComponent {
return (
<>
<h2>Order</h2>
<span className='modalLink' onClick={this.reset}>Reset</span>
<SortableContainer onSortEnd={this.onSortEnd}>
{this.state.items.map((value, index) => (
<SortableItem key={`item-${value}`} index={index} value={value} />