diff --git a/webui/src/App.js b/webui/src/App.js
index 9cb3cdc799779de5c7790e14e3fb085d76756f68..1d6382e5e9221feaebabc05a6caf3b57fb00cffc 100644
--- a/webui/src/App.js
+++ b/webui/src/App.js
@@ -1,5 +1,7 @@
import React from "react";
import { withRouter, Switch, Route } from "react-router";
+import { Link } from "react-router-dom";
+import { withStyles } from "@material-ui/core/styles";
import AppBar from "@material-ui/core/AppBar";
import CssBaseline from "@material-ui/core/CssBaseline";
@@ -7,24 +9,32 @@ import Toolbar from "@material-ui/core/Toolbar";
import Typography from "@material-ui/core/Typography";
import BugPage from "./BugPage";
+import ListPage from "./ListPage";
-const Home = () =>
Home
;
+const styles = theme => ({
+ appTitle: {
+ color: "white",
+ textDecoration: "none"
+ }
+});
-const App = ({ location }) => (
+const App = ({ location, classes }) => (
-
- git-bug-webui(1)
-
+
+
+ git-bug-webui(1)
+
+
-
+
);
-export default withRouter(App);
+export default withStyles(styles)(withRouter(App));
diff --git a/webui/src/BugSummary.js b/webui/src/BugSummary.js
index 461fe2d00de577eaf97dcada55a2409da5b3d976..469ab9a866615742f489fddaee1fbb8b24e1806b 100644
--- a/webui/src/BugSummary.js
+++ b/webui/src/BugSummary.js
@@ -1,4 +1,5 @@
import React from "react";
+import { Link } from "react-router-dom";
import gql from "graphql-tag";
import { withStyles } from "@material-ui/core/styles";
@@ -28,7 +29,8 @@ const BugSummary = ({ bug, classes }) => (
{bug.title}
- #{bug.id.slice(0, 8)} • {bug.status.toUpperCase()}
+ #{bug.id.slice(0, 8)} •{" "}
+ {bug.status.toUpperCase()}
{bug.labels.map(label => (
diff --git a/webui/src/ListPage.js b/webui/src/ListPage.js
new file mode 100644
index 0000000000000000000000000000000000000000..c873eefa273de0e818c5c73837046cf038536e12
--- /dev/null
+++ b/webui/src/ListPage.js
@@ -0,0 +1,46 @@
+import React from "react";
+import { Query } from "react-apollo";
+import gql from "graphql-tag";
+import { withStyles } from "@material-ui/core/styles";
+
+import CircularProgress from "@material-ui/core/CircularProgress";
+
+import BugSummary from "./BugSummary";
+
+const QUERY = gql`
+ {
+ bugs: allBugs {
+ ...BugSummary
+ }
+ }
+
+ ${BugSummary.fragment}
+`;
+
+const styles = theme => ({
+ main: {
+ maxWidth: 600,
+ margin: "auto",
+ marginTop: theme.spacing.unit * 4
+ }
+});
+
+const List = withStyles(styles)(({ bugs, classes }) => (
+
+ {bugs.map(bug => (
+
+ ))}
+
+));
+
+const ListPage = () => (
+
+ {({ loading, error, data }) => {
+ if (loading) return ;
+ if (error) return Error.
;
+ return
;
+ }}
+
+);
+
+export default ListPage;