diff --git a/client/src/components/Canvas/Canvas.jsx b/client/src/components/Canvas/Canvas.jsx index 867ca1b..8594742 100644 --- a/client/src/components/Canvas/Canvas.jsx +++ b/client/src/components/Canvas/Canvas.jsx @@ -4,23 +4,29 @@ import Volcano from "./views/Volcano"; import Admin from "./views/Admin"; import Account from "./views/Account" import Home from "./views/Home"; -import { DASHBOARD_VIEWS } from "@/constants/viewKeys"; +import { DASHBOARD_VIEWS, ADMIN_VIEWS } from "@/constants/viewKeys"; import { chakra } from "@chakra-ui/react"; import Personal from "./views/Personal"; import Security from "./views/Security"; +const ADMIN_DEFAULT = "medataentry"; + export default function Canvas(props) { const { view } = props; - return ( + + return ( - {/* Check if view is a tab inside the Canvas Header */} + {/* Check if view is a tab inside the Home Header */} { DASHBOARD_VIEWS.includes(view) && ( )} + {/* Check if view is a tab inside the Admin Header */} + { ADMIN_VIEWS.includes(view) && ( + + )} {view === "global" && } {view === "regional" && } {view === "volcano" && } - {view === "admin" && } {view === "account" && } {view === "settings" && } {view === "personal" && } diff --git a/client/src/components/Canvas/views/Admin.jsx b/client/src/components/Canvas/views/Admin.jsx index 1c4b83a..6b27590 100644 --- a/client/src/components/Canvas/views/Admin.jsx +++ b/client/src/components/Canvas/views/Admin.jsx @@ -1,24 +1,74 @@ -import { Box, Text } from '@chakra-ui/react'; +import { Box, Text, Flex, Tabs, HStack } from '@chakra-ui/react'; +import { MEDataEntry } from './AdminTabs/MEDataEntry'; +import { ProjectCollector } from './AdminTabs/ProjectCollector'; +import { NASApplication } from './AdminTabs/NASApplication'; +import { IVANS } from './AdminTabs/IVANS' +import { SearchBar } from "../CanvasComponents/SearchBar"; +import { SettingsButton } from "../CanvasComponents/SettingsButton"; -export default function Admin() { +export default function Admin({ view, onChangeView, onEditWidgets, appendWidget }) { + const settingsButtonProps = { onEditWidgets, appendWidget }; + return ( - - { + const nextView = e.value; + onChangeView(nextView); + }} + > + - - Admin Canvas coming soon! - - - + + + M&E Data Entry + + + Project Collector + + + NAS Application + + IVANS + + + + + + + + + + {/* CANVAS */} + + + + + + + + + + + + + ); -} \ No newline at end of file +} \ No newline at end of file diff --git a/client/src/components/Canvas/views/AdminTabs/IVANS.jsx b/client/src/components/Canvas/views/AdminTabs/IVANS.jsx new file mode 100644 index 0000000..ede9794 --- /dev/null +++ b/client/src/components/Canvas/views/AdminTabs/IVANS.jsx @@ -0,0 +1,22 @@ +import { Box, Text } from "@chakra-ui/react"; + +export function IVANS() { + return( + + + IVANS dashboard coming soon. + + + ); +} \ No newline at end of file diff --git a/client/src/components/Canvas/views/AdminTabs/MEDataEntry.jsx b/client/src/components/Canvas/views/AdminTabs/MEDataEntry.jsx new file mode 100644 index 0000000..98822e6 --- /dev/null +++ b/client/src/components/Canvas/views/AdminTabs/MEDataEntry.jsx @@ -0,0 +1,22 @@ +import { Box, Text } from "@chakra-ui/react"; + +export function MEDataEntry() { + return( + + + M&E Data Entry dashboard coming soon. + + + ); +} \ No newline at end of file diff --git a/client/src/components/Canvas/views/AdminTabs/NASApplication.jsx b/client/src/components/Canvas/views/AdminTabs/NASApplication.jsx new file mode 100644 index 0000000..b66c8e3 --- /dev/null +++ b/client/src/components/Canvas/views/AdminTabs/NASApplication.jsx @@ -0,0 +1,22 @@ +import { Box, Text } from "@chakra-ui/react"; + +export function NASApplication() { + return( + + + NAS Application dashboard coming soon. + + + ); +} \ No newline at end of file diff --git a/client/src/components/Canvas/views/AdminTabs/ProjectCollector.jsx b/client/src/components/Canvas/views/AdminTabs/ProjectCollector.jsx new file mode 100644 index 0000000..b9c372d --- /dev/null +++ b/client/src/components/Canvas/views/AdminTabs/ProjectCollector.jsx @@ -0,0 +1,22 @@ +import { Box, Text } from "@chakra-ui/react"; + +export function ProjectCollector() { + return( + + + Project Collector dashboard coming soon. + + + ); +} \ No newline at end of file diff --git a/client/src/constants/viewKeys.js b/client/src/constants/viewKeys.js index 987eb9e..4ce5b19 100644 --- a/client/src/constants/viewKeys.js +++ b/client/src/constants/viewKeys.js @@ -1,6 +1,9 @@ -// Main views called from Sidebar +// Main views called from Home tab -> Canvas navigation header export const DASHBOARD_VIEWS = ["mydashboard", "gas", "seismic", "remote", "daily"] +// Admin views called from Admin tab -> Canvas navigation header +export const ADMIN_VIEWS = ["admin", "medataentry", "projectcollector", "nasapplication", "ivans"] + // Sub views called from inside Home.jsx export const VIEW_LABELS = { mydashboard: "My Dashboard", @@ -12,6 +15,10 @@ export const VIEW_LABELS = { regional: "Regional Map", volcano: "Volcano", admin: "Admin", + medataentry: "M&E Data Entry", + projectcollector: "Project Collector", + nasapplication: "NAS Application", + ivans: "IVANS", settings: "Settings", personal: "Personal Info", security: "Security",