diff options
author | Florian Dold <florian.dold@gmail.com> | 2019-11-20 19:48:43 +0100 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2019-11-20 19:48:43 +0100 |
commit | 553da649902f71d5ca34c9a6289ab6b1ef0ba7cb (patch) | |
tree | 857c4eb2c39e4a92e71c8a623d3188e6dbbbd1e9 /src/webex/pages/logs.tsx | |
parent | faedf697626dd37f3ac74ad4cac1ec378598bbf3 (diff) |
WIP: simplify DB queries and error handling
Diffstat (limited to 'src/webex/pages/logs.tsx')
-rw-r--r-- | src/webex/pages/logs.tsx | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/src/webex/pages/logs.tsx b/src/webex/pages/logs.tsx deleted file mode 100644 index c4fe670a2..000000000 --- a/src/webex/pages/logs.tsx +++ /dev/null @@ -1,86 +0,0 @@ -/* - This file is part of TALER - (C) 2016 Inria - - TALER is free software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the Free Software - Foundation; either version 3, or (at your option) any later version. - - TALER is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - A PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - TALER; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -/** - * Show wallet logs. - * - * @author Florian Dold - */ - -import { - LogEntry, - getLogs, -} from "../../logging"; - -import * as React from "react"; -import * as ReactDOM from "react-dom"; - -interface LogViewProps { - log: LogEntry; -} - -class LogView extends React.Component<LogViewProps, {}> { - render(): JSX.Element { - const e = this.props.log; - return ( - <div className="tree-item"> - <ul> - <li>level: {e.level}</li> - <li>msg: {e.msg}</li> - <li>id: {e.id || "unknown"}</li> - <li>file: {e.source || "(unknown)"}</li> - <li>line: {e.line || "(unknown)"}</li> - <li>col: {e.col || "(unknown)"}</li> - {(e.detail ? <li> detail: <pre>{e.detail}</pre></li> : [])} - </ul> - </div> - ); - } -} - -interface LogsState { - logs: LogEntry[]|undefined; -} - -class Logs extends React.Component<{}, LogsState> { - constructor(props: {}) { - super({}); - this.update(); - this.state = {} as any; - } - - async update() { - const logs = await getLogs(); - this.setState({logs}); - } - - render(): JSX.Element { - const logs = this.state.logs; - if (!logs) { - return <span>...</span>; - } - return ( - <div className="tree-item"> - Logs: - {logs.map((e) => <LogView log={e} />)} - </div> - ); - } -} - -document.addEventListener("DOMContentLoaded", () => { - ReactDOM.render(<Logs />, document.getElementById("container")!); -}); |