diff --git a/src/components/App/__snapshots__/App.test.js.snap b/src/components/App/__snapshots__/App.test.js.snap
index e96d66d..a004604 100644
--- a/src/components/App/__snapshots__/App.test.js.snap
+++ b/src/components/App/__snapshots__/App.test.js.snap
@@ -9056,7 +9056,37 @@ exports[`App Route /vehicles authenticated 1`] = `
+
+
{
const classes = useStyles();
const [search, setSearch] = useState("");
+ const [online, setOnline] = useState(false);
const { setTitle, setSitePath } = useStatusContext();
const {
token: {
@@ -25,6 +27,10 @@ const MainForm = () => {
setSearch(query);
};
+ const handleOnline = (event) => {
+ setOnline(event.target.checked);
+ }
+
useEffect(() => {
setTitle("Vehicles");
setSitePath([]);
@@ -42,13 +48,25 @@ const MainForm = () => {
-
+
+
+
+
+
+
);
diff --git a/src/components/Controls/OptionsDropdown/index.jsx b/src/components/Controls/OptionsDropdown/index.jsx
new file mode 100644
index 0000000..81a8403
--- /dev/null
+++ b/src/components/Controls/OptionsDropdown/index.jsx
@@ -0,0 +1,77 @@
+import React, {useEffect, useRef, useState} from "react";
+import {ClickAwayListener, Grow, IconButton, MenuList, Paper, Popper} from "@material-ui/core";
+import TuneIcon from "@material-ui/icons/Tune";
+
+
+const OptionsDropdown = ({listId, children}) => {
+ const [open, setOpen] = useState(false);
+ const anchorRef = useRef(null);
+ const prevOpen = useRef(open);
+
+ const handleToggle = () => {
+ setOpen((pOpen) => !pOpen);
+ };
+
+ const handleClose = (event) => {
+ if (anchorRef.current && anchorRef.current.contains(event.target)) {
+ return;
+ }
+
+ setOpen(false);
+ };
+
+ const handleListKeyDown = (event) => {
+ if (event.key === 'Tab') {
+ event.preventDefault();
+ setOpen(false);
+ }
+ }
+
+ useEffect(() => {
+ if (prevOpen.current === true && open === false) {
+ anchorRef.current.focus();
+ }
+
+ prevOpen.current = open;
+ }, [open]);
+
+ return (
+
+
+
+
+ {({TransitionProps, placement}) => (
+
+
+
+
+ {children}
+
+
+
+
+ )}
+
+
+ );
+}
+
+export default OptionsDropdown;
\ No newline at end of file