Commit 86b509ea authored by Shanelle Valencia's avatar Shanelle Valencia

Merge branch 'styling' into 'dev'

🚧 Add footer and more styling [@svalencia]

See merge request !15
parents 55931521 26d296ea
import React from 'react'
import { Flex, Spacer } from "@chakra-ui/react"
const Footer = () => {
return (
<Flex justify="center" className="footer">
Copyright © All Rights Reserved
</Flex>
)
}
export default Footer
...@@ -6,24 +6,44 @@ import { faUser } from '@fortawesome/free-solid-svg-icons' ...@@ -6,24 +6,44 @@ import { faUser } from '@fortawesome/free-solid-svg-icons'
import { Box, Heading, Flex, Spacer, Button, Image, Avatar } from "@chakra-ui/react" import { Box, Heading, Flex, Spacer, Button, Image, Avatar } from "@chakra-ui/react"
import Logo from '../img/logo.png' import Logo from '../img/logo.png'
const Nav = () => { const Nav = () => {
const { isSignedIn, signOut, signIn, manager } = useGoogleAuth(); const { isSignedIn, signOut, signIn, manager } = useGoogleAuth();
const handleAuth = () => { isSignedIn ? signOut() : signIn();} const handleAuth = () => { isSignedIn ? signOut() : signIn();}
const authLinkText = useMemo(() => isSignedIn ? "Logout" : "Login", [isSignedIn]); const authLinkText = useMemo(() => isSignedIn ? "Logout" : "Login", [isSignedIn]);
const userIcon = isSignedIn ? const userIcon = isSignedIn ?
<Avatar name={manager.firstName + " " + manager.lastName} boxSize="40px" borderRadius="full" src={manager.imageUrl} alt="profile"/> : <Avatar name={manager.firstName + " " + manager.lastName} boxSize="40px" borderRadius="full" src={manager.imageUrl} alt="profile"/> : null
<FontAwesomeIcon icon={faUser} />
return ( return (
<Flex> <Flex className="header">
<Box className="left-nav"> <Box className="left-nav">
<Link to="/"><Image src={Logo} alt="project logo"/></Link> <Link to="/"><Image src={Logo} alt="project logo" height="90%" width="80%" /></Link>
</Box> </Box>
<Spacer /> <Spacer />
<Flex className="right-nav"> <Flex className="right-nav">
<Link className="nav-link" to="/account">{userIcon}</Link> <Link className="nav-link" to="/account">{userIcon}</Link>
<Button><Link to="/orders">All orders</Link></Button> <Button
<Button onClick={handleAuth}>{authLinkText}</Button> p={2}
size="sm"
color="white"
fontWeight="bold"
borderRadius="sm"
bgGradient="linear(to-r, teal.500,blue.500)"
_hover={{
bgGradient: "linear(to-r, blue.500, yellow.500)",
}}
><Link to="/orders">Orders</Link></Button>
<Button
p={2}
size="sm"
color="white"
fontWeight="bold"
borderRadius="sm"
bgGradient="linear(to-r, teal.500,blue.500)"
_hover={{
bgGradient: "linear(to-r, yellow.500, blue.500)",
}}
onClick={handleAuth}>{authLinkText}</Button>
</Flex> </Flex>
</Flex> </Flex>
) )
......
...@@ -40,11 +40,11 @@ const OrderShowDetails = (props: any) => { ...@@ -40,11 +40,11 @@ const OrderShowDetails = (props: any) => {
<div className="table-div"> <div className="table-div">
<Table variant="striped" colorScheme="messenger" size="lg"> <Table variant="striped" colorScheme="messenger" size="lg">
<Tbody> <Tbody>
<Tr> <Tr className="table-header">
<Th>ID</Th> <Th fontSize="22px" color="gray">ID</Th>
<Th>Price</Th> <Th fontSize="22px" color="gray">Price</Th>
<Th>Quantity</Th> <Th fontSize="22px" color="gray">Quantity</Th>
<Th>SKU</Th> <Th fontSize="22px" color="gray">SKU</Th>
</Tr> </Tr>
{itemDetails} {itemDetails}
</Tbody> </Tbody>
......
export {default as AccountForm} from './AccountForm' export {default as AccountForm} from './AccountForm'
export {default as LoginForm} from './LoginForm' export {default as LoginForm} from './LoginForm'
export {default as Nav} from './Nav' export {default as Nav} from './Nav'
export {default as Footer} from './Footer'
export {default as OrderDetails} from './OrderDetails' export {default as OrderDetails} from './OrderDetails'
export {default as SignUpForm} from './SignUpForm' export {default as SignUpForm} from './SignUpForm'
export {default as OrderShowDetails} from './OrderShowDetails' export {default as OrderShowDetails} from './OrderShowDetails'
......
...@@ -7,74 +7,35 @@ body { ...@@ -7,74 +7,35 @@ body {
-moz-osx-font-smoothing: grayscale; -moz-osx-font-smoothing: grayscale;
background-color: gray; background-color: gray;
color: ghostwhite; color: ghostwhite;
letter-spacing: 1px;
} }
code { code {
font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace;
monospace;
} }
/* homepage */
.homepage {
/* tbody, tr, th, span, td { padding: 200px 0;
border: 2px solid orangered;
}
span {
display: flex;
justify-content: space-around;
}
header {
display: flex;
height: 50px;
background-color: gray;
}
ul {
list-style-type: none;
display: flex;
margin: auto;
height: 100%;
} }
table { /* .svg-inline--fa {
width: 100%; display: inline-block;
padding: 20px; font-size: 24px;
} height: 1.7em;
overflow: visible;
td { vertical-align: -0.325em;
height: 100px; } */
}
li {
border-left: 2px solid green;
margin: 0;
height: 100%;
display: flex;
align-items: center;
}
.order-management { /* header */
padding-left: -30px;
padding-right: 75px;
margin: auto;
justify-content: left;
}
.nav-link { .header {
margin: auto; border-bottom: 1.5px solid orange;
padding: 10px;
text-decoration: none;
color: ghostwhite;
background-color: lightslategray;
} }
.nav-link:hover {
background-color: black;
} */
.left-nav { .left-nav {
padding: 10px 0px 0px 50px; padding: 10px 0px 0px 50px;
...@@ -85,12 +46,22 @@ li { ...@@ -85,12 +46,22 @@ li {
padding: 30px 120px 0px 0px; padding: 30px 120px 0px 0px;
} }
.right-nav Button {
background-color: rgb(235, 221, 178);
margin-right: 15px;
margin-top: 4px;
}
.nav-link { .nav-link {
margin-right: 15px; margin-right: 15px;
} }
/* body */
.table-div { .table-div {
padding: 150px; padding: 150px;
padding-top: 80px; padding-top: 80px;
...@@ -112,4 +83,19 @@ li { ...@@ -112,4 +83,19 @@ li {
/* padding: 0 10px 15px 10px; */ /* padding: 0 10px 15px 10px; */
border-radius: 2px; border-radius: 2px;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}
.table-header {
background-color: rgba(228, 158, 67, 0.5);
color: black;
}
/* footer */
.footer {
padding: 10px 0;
border-top: 1.5px solid orange;
} }
\ No newline at end of file
...@@ -6,7 +6,7 @@ const AccountPage = () => { ...@@ -6,7 +6,7 @@ const AccountPage = () => {
<Center> <Center>
<Box> <Box>
<Box> <Box>
<Avatar name={manager.firstName + " " + manager.lastName} size="2xl" src={manager.imageUrl} alt="profile"/> <Avatar name={manager.firstName + " " + manager.lastName} size="2xl" src={manager.imageUrl} alt="profile" />
</Box> </Box>
<Box> <Box>
Email: {manager.email} Email: {manager.email}
......
...@@ -3,7 +3,7 @@ import { Box, Center, Text, Heading } from '@chakra-ui/react' ...@@ -3,7 +3,7 @@ import { Box, Center, Text, Heading } from '@chakra-ui/react'
const HomePage = () => { const HomePage = () => {
return ( return (
<Center> <Center className="homepage">
<Box> <Box>
<Box> <Box>
<Text>Welcome to the Order Management System Console</Text> <Text>Welcome to the Order Management System Console</Text>
......
...@@ -8,7 +8,7 @@ import { ...@@ -8,7 +8,7 @@ import {
Tbody, Tbody,
Tr, Tr,
Th, Th,
Input Input,
} from "@chakra-ui/react" } from "@chakra-ui/react"
const OrderIndexPage = () => { const OrderIndexPage = () => {
...@@ -68,12 +68,12 @@ const OrderIndexPage = () => { ...@@ -68,12 +68,12 @@ const OrderIndexPage = () => {
</Input> </Input>
<br/> <br/>
<div className="index-table"> <div className="index-table">
<Table variant="striped" colorScheme="messenger" size="md"> <Table variant="striped" colorScheme="messenger" size="sm">
<Thead> <Thead>
<Tr> <Tr className="table-header">
<Th>Order number</Th> <Th fontSize="26px" color="gray">Order number</Th>
<Th>Order Date</Th> <Th fontSize="26px" color="gray">Order Date</Th>
<Th>Order Status</Th> <Th fontSize="26px" color="gray">Order Status</Th>
</Tr> </Tr>
</Thead> </Thead>
<Tbody> <Tbody>
......
import { BrowserRouter, Switch } from "react-router-dom"; import { BrowserRouter, Switch } from "react-router-dom";
import { Nav } from 'components' import { Nav, Footer } from 'components'
import { AccountPage, HomePage, OrderIndexPage, OrderShowPage } from 'pages'; import { AccountPage, HomePage, OrderIndexPage, OrderShowPage } from 'pages';
import { GoogleAuthProvider } from 'hooks' import { GoogleAuthProvider } from 'hooks'
import { PublicRoute, PrivateRoute } from 'router' import { PublicRoute, PrivateRoute } from 'router'
...@@ -21,6 +21,7 @@ const MainRouter: React.FC = () => { ...@@ -21,6 +21,7 @@ const MainRouter: React.FC = () => {
{/* <Route component={NotFoundPage} /> */} {/* <Route component={NotFoundPage} /> */}
</Switch> </Switch>
</main> </main>
<Footer />
</GoogleAuthProvider> </GoogleAuthProvider>
</BrowserRouter> </BrowserRouter>
......
import { ChakraProvider } from "@chakra-ui/react" import { ChakraProvider } from "@chakra-ui/react"
import {Nav} from 'components'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment