From 46b9df3279f51479cfc607cbce8fb8b73bef69f7 Mon Sep 17 00:00:00 2001 From: Ernst Widerberg Date: Wed, 6 Oct 2021 16:11:06 +0200 Subject: Initial commit --- src/components/App.js | 83 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 src/components/App.js (limited to 'src/components/App.js') diff --git a/src/components/App.js b/src/components/App.js new file mode 100644 index 0000000..3a1d65d --- /dev/null +++ b/src/components/App.js @@ -0,0 +1,83 @@ +import React from "react"; +import { + BrowserRouter as Router, + Switch, + Route, + Link, + useParams +} from "react-router-dom"; +import { Button } from "semantic-ui-react"; + +import Error from "./Error"; +import Header from "./Header"; +import List from "./List"; +import Login from "./Login"; +import ObjectView from "./ObjectView"; + +import "../styles/main.css"; + +class App extends React.Component { + constructor(props) { + super(props); + this.state = { + token: localStorage.getItem("token"), + error: null + }; + + this.clearError = this.clearError.bind(this); + this.clearToken = this.clearToken.bind(this); + this.setError = this.setError.bind(this); + this.setToken = this.setToken.bind(this); + } + + setToken(token) { + this.setState({ token: token }); + localStorage.setItem("token", token); + } + + clearToken() { + this.setState({ token: null }); + localStorage.removeItem("token"); + } + + setError(msg) { + this.setState({ error: msg }); + } + + clearError() { + this.setState({ error: null }); + } + + render() { + if (this.state.error !== null) + return ( + + ); + // if (this.state.token === null) + // return ; + return ( + +
+ + + + + + + + + + ); + } +} + +function MakeObjectView() { + let { id } = useParams(); + return ; +} + +export default App; -- cgit v1.1