Skip to content

Commit

Permalink
Implement QueueSelector component and modify API call for multiple qu…
Browse files Browse the repository at this point in the history
…eues
  • Loading branch information
Justin Campbell committed Nov 2, 2020
1 parent 4f95eb1 commit d728722
Showing 1 changed file with 17 additions and 4 deletions.
21 changes: 17 additions & 4 deletions src/App.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,34 @@ import ItemTableAppBar from "./components/ItemTableAppBar/";
import ItemTable from "./components/ItemTable/";
import ItemViewAppBar from "./components/ItemViewAppBar/";
import ItemView from "./components/ItemView/";
import QueueSelector from "./components/QueueSelector/";

function App() {
const [darkMode, setDarkMode] = useState(false);
const [activeItem, setActiveItem] = useState({});
const [sidebarOpen, setSidebarOpen] = useState(false);
const [queues, setQueues] = useState([]);
const [items, setItems] = useState([]);
const [selectedQueues, setSelectedQueues] = useState([]);

useEffect( _ => {
async function getQueues(){
const apiResponse = await fetch("/api/ce");
const queueJson = await apiResponse.json();
setQueues(queueJson);
if (selectedQueues.length > 0){
let queuesToLoad = "";

for (let selectedQueue of selectedQueues){
queuesToLoad += `+${selectedQueue.name}`;
}

const apiResponse = await fetch(`/api/${queuesToLoad}`);
const queueJson = await apiResponse.json();
setQueues(queueJson);
} else {
setQueues([])
}
}
getQueues();
}, []);
}, [selectedQueues]);

useEffect( _ => {
let tempItems = [];
Expand Down Expand Up @@ -73,6 +85,7 @@ function App() {

<Box className={classes.leftCol}>
<ItemTableAppBar title="webqueue2" setDarkMode={setDarkMode} />
<QueueSelector selectedQueues={selectedQueues} setSelectedQueues={setSelectedQueues} />
<ItemTable data={items} onRowClick={ _ => console.log("Clicked!") }/>
</Box>

Expand Down

0 comments on commit d728722

Please sign in to comment.