diff --git a/src/App.js b/src/App.js
index be591f8..3c40537 100644
--- a/src/App.js
+++ b/src/App.js
@@ -1,65 +1,56 @@
-import React from 'react'
-import { BrowserRouter as Router, Route } from 'react-router-dom'
-import { Container } from 'react-bootstrap'
-import Header from './components/Header'
-import Footer from './components/Footer'
-import HomeScreen from './screens/HomeScreen'
-import ProductScreen from './screens/ProductScreen'
-import CartScreen from './screens/CartScreen'
-import LoginScreen from './screens/LoginScreen'
-import RegisterScreen from './screens/RegisterScreen'
-import ProfileScreen from './screens/ProfileScreen'
-import ShippingScreen from './screens/ShippingScreen'
-import PaymentScreen from './screens/PaymentScreen'
-import PlaceOrderScreen from './screens/PlaceOrderScreen'
-import OrderScreen from './screens/OrderScreen'
-import UserListScreen from './screens/UserListScreen'
-import UserEditScreen from './screens/UserEditScreen'
-import ProductListScreen from './screens/ProductListScreen'
-import ProductEditScreen from './screens/ProductEditScreen'
-import OrderListScreen from './screens/OrderListScreen'
+import { Route } from 'react-router-dom'
+
+// layout
+import Layout from './layout/Layout'
+
+// Pages
+import HomeScreen from './pages/HomeScreen'
+import ProductScreen from './pages/ProductScreen'
+import CartScreen from './pages/CartScreen'
+import LoginScreen from './pages/LoginScreen'
+import RegisterScreen from './pages/RegisterScreen'
+import ProfileScreen from './pages/ProfileScreen'
+import ShippingScreen from './pages/ShippingScreen'
+import PaymentScreen from './pages/PaymentScreen'
+import PlaceOrderScreen from './pages/PlaceOrderScreen'
+import OrderScreen from './pages/OrderScreen'
+import UserListScreen from './pages/UserListScreen'
+import UserEditScreen from './pages/UserEditScreen'
+import ProductListScreen from './pages/ProductListScreen'
+import ProductEditScreen from './pages/ProductEditScreen'
+import OrderListScreen from './pages/OrderListScreen'
const App = () => {
return (
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
)
}
diff --git a/src/components/Footer.js b/src/layout/Footer.js
similarity index 65%
rename from src/components/Footer.js
rename to src/layout/Footer.js
index 04f6577..0be2b9c 100644
--- a/src/components/Footer.js
+++ b/src/layout/Footer.js
@@ -2,11 +2,12 @@ import React from 'react'
import { Container, Row, Col } from 'react-bootstrap'
const Footer = () => {
+ const year = new Date().getFullYear()
return (
diff --git a/src/components/Header.js b/src/layout/Header.js
similarity index 96%
rename from src/components/Header.js
rename to src/layout/Header.js
index 158b840..92f9e64 100644
--- a/src/components/Header.js
+++ b/src/layout/Header.js
@@ -3,7 +3,7 @@ import { Route } from 'react-router-dom'
import { useDispatch, useSelector } from 'react-redux'
import { LinkContainer } from 'react-router-bootstrap'
import { Navbar, Nav, Container, NavDropdown } from 'react-bootstrap'
-import SearchBox from './SearchBox'
+import SearchBox from '../components/SearchBox'
import { logout } from '../actions/userActions'
const Header = () => {
@@ -21,7 +21,7 @@ const Header = () => {
- ProShop
+ The Shop
diff --git a/src/layout/Layout.js b/src/layout/Layout.js
new file mode 100644
index 0000000..a5dd9bf
--- /dev/null
+++ b/src/layout/Layout.js
@@ -0,0 +1,21 @@
+import { BrowserRouter as Router } from 'react-router-dom'
+import { Container } from 'react-bootstrap'
+
+import Meta from './Meta'
+import Header from './Header'
+import Footer from './Footer'
+
+const Layout = ({ children, title, description, pageName }) => {
+ return (
+
+
+
+
+ {children}
+
+
+
+ )
+}
+
+export default Layout
diff --git a/src/components/Meta.js b/src/layout/Meta.js
similarity index 62%
rename from src/components/Meta.js
rename to src/layout/Meta.js
index 32fb439..873132c 100644
--- a/src/components/Meta.js
+++ b/src/layout/Meta.js
@@ -1,10 +1,10 @@
import React from 'react'
import { Helmet } from 'react-helmet'
-const Meta = ({ title, description, keywords }) => {
+const Meta = ({ title, description, keywords, pageName }) => {
return (
- {title}
+ {title} | {pageName}
@@ -12,8 +12,9 @@ const Meta = ({ title, description, keywords }) => {
}
Meta.defaultProps = {
- title: 'Welcome To ProShop',
- description: 'We sell the best products for cheap',
+ title: 'The Shop',
+ pageName: 'All Products',
+ description: 'Get The Real Deal',
keywords: 'electronics, buy electronics, cheap electroincs',
}
diff --git a/src/screens/CartScreen.js b/src/pages/CartScreen.js
similarity index 100%
rename from src/screens/CartScreen.js
rename to src/pages/CartScreen.js
diff --git a/src/screens/HomeScreen.js b/src/pages/HomeScreen.js
similarity index 96%
rename from src/screens/HomeScreen.js
rename to src/pages/HomeScreen.js
index 966e042..54a0fb8 100644
--- a/src/screens/HomeScreen.js
+++ b/src/pages/HomeScreen.js
@@ -7,7 +7,6 @@ import Message from '../components/Message'
import Loader from '../components/Loader'
import Paginate from '../components/Paginate'
import ProductCarousel from '../components/ProductCarousel'
-import Meta from '../components/Meta'
import { listProducts } from '../actions/productActions'
const HomeScreen = ({ match }) => {
@@ -26,7 +25,6 @@ const HomeScreen = ({ match }) => {
return (
<>
-
{!keyword ? (
) : (
diff --git a/src/screens/LoginScreen.js b/src/pages/LoginScreen.js
similarity index 100%
rename from src/screens/LoginScreen.js
rename to src/pages/LoginScreen.js
diff --git a/src/screens/OrderListScreen.js b/src/pages/OrderListScreen.js
similarity index 100%
rename from src/screens/OrderListScreen.js
rename to src/pages/OrderListScreen.js
diff --git a/src/screens/OrderScreen.js b/src/pages/OrderScreen.js
similarity index 100%
rename from src/screens/OrderScreen.js
rename to src/pages/OrderScreen.js
diff --git a/src/screens/PaymentScreen.js b/src/pages/PaymentScreen.js
similarity index 100%
rename from src/screens/PaymentScreen.js
rename to src/pages/PaymentScreen.js
diff --git a/src/screens/PlaceOrderScreen.js b/src/pages/PlaceOrderScreen.js
similarity index 100%
rename from src/screens/PlaceOrderScreen.js
rename to src/pages/PlaceOrderScreen.js
diff --git a/src/screens/ProductEditScreen.js b/src/pages/ProductEditScreen.js
similarity index 100%
rename from src/screens/ProductEditScreen.js
rename to src/pages/ProductEditScreen.js
diff --git a/src/screens/ProductListScreen.js b/src/pages/ProductListScreen.js
similarity index 100%
rename from src/screens/ProductListScreen.js
rename to src/pages/ProductListScreen.js
diff --git a/src/screens/ProductScreen.js b/src/pages/ProductScreen.js
similarity index 99%
rename from src/screens/ProductScreen.js
rename to src/pages/ProductScreen.js
index 3141a10..81cf2b8 100644
--- a/src/screens/ProductScreen.js
+++ b/src/pages/ProductScreen.js
@@ -5,7 +5,7 @@ import { Row, Col, Image, ListGroup, Card, Button, Form } from 'react-bootstrap'
import Rating from '../components/Rating'
import Message from '../components/Message'
import Loader from '../components/Loader'
-import Meta from '../components/Meta'
+import Meta from '../layout/Meta'
import {
listProductDetails,
createProductReview,
@@ -60,6 +60,7 @@ const ProductScreen = ({ history, match }) => {
return (
<>
+
Go Back
@@ -69,7 +70,6 @@ const ProductScreen = ({ history, match }) => {
{error}
) : (
<>
-
diff --git a/src/screens/ProfileScreen.js b/src/pages/ProfileScreen.js
similarity index 100%
rename from src/screens/ProfileScreen.js
rename to src/pages/ProfileScreen.js
diff --git a/src/screens/RegisterScreen.js b/src/pages/RegisterScreen.js
similarity index 100%
rename from src/screens/RegisterScreen.js
rename to src/pages/RegisterScreen.js
diff --git a/src/screens/ShippingScreen.js b/src/pages/ShippingScreen.js
similarity index 100%
rename from src/screens/ShippingScreen.js
rename to src/pages/ShippingScreen.js
diff --git a/src/screens/UserEditScreen.js b/src/pages/UserEditScreen.js
similarity index 100%
rename from src/screens/UserEditScreen.js
rename to src/pages/UserEditScreen.js
diff --git a/src/screens/UserListScreen.js b/src/pages/UserListScreen.js
similarity index 100%
rename from src/screens/UserListScreen.js
rename to src/pages/UserListScreen.js