Remove redux

This commit is contained in:
Daniel Mason 2021-03-31 13:16:42 +13:00
parent 0c56281bcd
commit ebd88b3bb0
Signed by: idanoo
GPG key ID: 387387CDBC02F132
30 changed files with 263 additions and 696 deletions

View file

@ -1,7 +1,7 @@
import '../App.css';
import './About.css';
function About() {
const About = () => {
return (
<div className="pageWrapper">
<h1>

View file

@ -1,45 +0,0 @@
import React, { Component } from "react";
import UserService from "../Services/user.service";
class Admin extends Component {
constructor(props) {
super(props);
this.state = {
content: ""
};
}
componentDidMount() {
UserService.getAdminBoard().then(
response => {
this.setState({
content: response.data
});
},
error => {
this.setState({
content:
(error.response &&
error.response.data &&
error.response.data.message) ||
error.message ||
error.toString()
});
}
);
}
render() {
return (
<div className="container">
<header className="jumbotron">
<h3>{this.state.content}</h3>
</header>
</div>
);
}
}
export default Admin;

View file

@ -1,8 +1,8 @@
import React from 'react';
import '../App.css';
import './Dashboard.css';
import { connect } from 'react-redux';
import { getRecentScrobbles } from '../Actions/api';
import { getRecentScrobbles } from '../Api/index';
import ScaleLoader from 'react-spinners/ScaleLoader';
import ScrobbleTable from "../Components/ScrobbleTable";
@ -53,17 +53,4 @@ class Dashboard extends React.Component {
}
}
function mapStateToProps(state) {
const { isLoggedIn } = state.auth;
let uuid = null;
if (isLoggedIn) {
uuid = state.auth.user.uuid
}
return {
isLoggedIn,
uuid,
};
}
export default connect(mapStateToProps)(Dashboard);
export default Dashboard;

View file

@ -1,102 +1,57 @@
import React from 'react';
import React, { useContext } from 'react';
import '../App.css';
import './Login.css';
import { Button } from 'reactstrap';
import { Formik, Form, Field } from 'formik';
import ScaleLoader from 'react-spinners/ScaleLoader';
import { connect } from 'react-redux';
import { login } from '../Actions/auth';
import eventBus from "../Actions/eventBus";
import { LOGIN_SUCCESS } from '../Actions/types';
import AuthContext from '../Contexts/AuthContext';
class Login extends React.Component {
constructor(props) {
super(props);
this.state = {username: '', password: '', loading: false};
}
const Login = () => {
let boolTrue = true;
let { Login, loading } = useContext(AuthContext);
componentDidMount() {
const { history, isLoggedIn } = this.props;
if (isLoggedIn) {
history.push("/dashboard")
}
}
handleLogin(values) {
this.setState({loading: true});
const { dispatch, history } = this.props;
dispatch(login(values.username, values.password))
.then(() => {
this.setState({
loading: false,
isLoggedIn: true
});
eventBus.dispatch(LOGIN_SUCCESS, { isLoggedIn: true });
history.push("/dashboard");
})
.catch(() => {
this.setState({
loading: false
});
});
}
render() {
let trueBool = true;
return (
<div className="pageWrapper">
<h1>
Login
</h1>
<div className="loginBody">
<Formik
initialValues={{ username: '', password: '' }}
onSubmit={async values => this.handleLogin(values)}
>
<Form>
<label>
Email / Username<br/>
<Field
name="username"
type="text"
required={trueBool}
className="loginFields"
/>
</label>
<br/>
<label>
Password<br/>
<Field
name="password"
type="password"
required={trueBool}
className="loginFields"
/>
</label>
<br/><br/>
<Button
color="primary"
type="submit"
className="loginButton"
disabled={this.state.loading}
>{this.state.loading ? <ScaleLoader color="#FFF" size={35} /> : "Login"}</Button>
</Form>
</Formik>
</div>
return (
<div className="pageWrapper">
<h1>
Login
</h1>
<div className="loginBody">
<Formik
initialValues={{ username: '', password: '' }}
onSubmit={values => Login(values)}
>
<Form>
<label>
Email / Username<br/>
<Field
name="username"
type="text"
required={boolTrue}
className="loginFields"
/>
</label>
<br/>
<label>
Password<br/>
<Field
name="password"
type="password"
required={boolTrue}
className="loginFields"
/>
</label>
<br/><br/>
<Button
color="primary"
type="submit"
className="loginButton"
disabled={loading}
>{loading ? <ScaleLoader color="#FFF" size={35} /> : "Login"}</Button>
</Form>
</Formik>
</div>
);
}
</div>
);
}
function mapStateToProps(state) {
const { isLoggedIn } = state.auth;
return {
isLoggedIn
};
}
export default connect(mapStateToProps)(Login);
export default Login;

View file

@ -1,7 +1,6 @@
import React from 'react';
import '../App.css';
import './Dashboard.css';
import { connect } from 'react-redux';
class Profile extends React.Component {
componentDidMount() {
@ -23,11 +22,4 @@ class Profile extends React.Component {
}
}
function mapStateToProps(state) {
const { isLoggedIn } = state.auth;
return {
isLoggedIn,
};
}
export default connect(mapStateToProps)(Profile);
export default Profile;

View file

@ -3,9 +3,8 @@ import '../App.css';
import './Register.css';
import { Button } from 'reactstrap';
import ScaleLoader from "react-spinners/ScaleLoader";
import { register } from '../Actions/auth';
import register from '../Contexts/AuthContextProvider';
import { Formik, Field, Form } from 'formik';
import { connect } from 'react-redux';
class Register extends React.Component {
constructor(props) {
@ -115,11 +114,4 @@ class Register extends React.Component {
}
}
function mapStateToProps(state) {
const { isLoggedIn } = state.auth;
return {
isLoggedIn
};
}
export default connect(mapStateToProps)(Register);
export default Register;

View file

@ -2,15 +2,6 @@ import React from 'react';
import '../App.css';
import './Settings.css';
import { useToasts } from 'react-toast-notifications';
function withToast(Component) {
return function WrappedComponent(props) {
const toastFuncs = useToasts()
return <Component {...props} {...toastFuncs} />;
}
}
class Settings extends React.Component {
constructor(props) {
super(props);
@ -33,4 +24,4 @@ class Settings extends React.Component {
}
}
export default withToast(Settings);
export default Settings;