diff --git a/README.md b/README.md
index 51e9002..ca997bc 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
-
π EDGEMONY FINAL PROJECT - TEAM SALVATORE B π
+
πEDGEMONY FINAL PROJECT - TEAM SALVATORE Bπ
π₯οΈ SNORLAXON, THE AMAZON CLONE π±

@@ -25,7 +25,7 @@ Our ecommerce was created using the following technologies:
This is Snorlaxon π a single page application inspired to Amazon.it
-

+
We welcome the viewers with a very impressive Carousel images in the main page; the different images can be slided with the β¬
οΈ and β‘οΈ arrows.
@@ -42,14 +42,14 @@ A detailed product presentation, that includes title, description, price, amount
Moreover, products can be added in and removed from the basket by clicking the relative buttons and, once added some, all items will be displayed into a side Navbar that will also report the relative subtotal, number of items selected and the "vai al carrello (checkout page)" button; by clicking on it, the customer will be redirected to the cart page where a summary of the purchase will be shown π(product amount, increase or decrease section for the quantity) π
-

+
If the potential buyer is happy with his purchase, she/he'll proceed to the checkout page where a fake payment section will be avaibale π³
After that, the confirmation message will appear into a new page π
-

+
@@ -60,12 +60,12 @@ Furthermore and in order to make our project more real, we also implemented the
-In conclusion, the footer section also hosts a modal that shows the members of team who made this project possible.
+In conclusion, the footer section also hosts a modal that shows the members of the team who made this project possible.
If you want to know more about us just click the "Snorlax Team" link.
-

+
π€
@@ -128,3 +128,6 @@ npm start
To see the project in your browser just open [http://localhost:3000](http://localhost:3000)
+
+
.png?alt=media&token=2241740c-6da5-4a38-9943-6a32ded41d26)
+
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 32dc557..fd596b2 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -17,7 +17,7 @@
"@testing-library/react": "^12.1.2",
"@testing-library/user-event": "^13.5.0",
"firebase": "^9.6.6",
- "react": "^17.0.2",
+ "react": "^16.13.1",
"react-dom": "^17.0.2",
"react-image-gallery": "^1.2.7",
"react-router-dom": "^6.2.1",
@@ -3415,6 +3415,7 @@
"version": "4.11.4",
"resolved": "https://registry.npmjs.org/@material-ui/styles/-/styles-4.11.4.tgz",
"integrity": "sha512-KNTIZcnj/zprG5LW0Sao7zw+yG3O35pviHzejMdcSGCdWbiO8qzRgOYL8JAxAsWBKOKYwVZxXtHWaB5T2Kvxew==",
+ "deprecated": "You can now upgrade to @mui/styles. See the guide: https://mui.com/guides/migration-v4/",
"dependencies": {
"@babel/runtime": "^7.4.4",
"@emotion/hash": "^0.8.0",
@@ -3460,6 +3461,7 @@
"version": "4.12.1",
"resolved": "https://registry.npmjs.org/@material-ui/system/-/system-4.12.1.tgz",
"integrity": "sha512-lUdzs4q9kEXZGhbN7BptyiS1rLNHe6kG9o8Y307HCvF4sQxbCgpL2qi+gUk+yI8a2DNk48gISEQxoxpgph0xIw==",
+ "deprecated": "You can now upgrade to @mui/system. See the guide: https://mui.com/guides/migration-v4/",
"dependencies": {
"@babel/runtime": "^7.4.4",
"@material-ui/utils": "^4.11.2",
@@ -3519,37 +3521,6 @@
"react-dom": "^16.8.0 || ^17.0.0"
}
},
- "node_modules/@mui/base": {
- "version": "5.0.0-alpha.68",
- "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.68.tgz",
- "integrity": "sha512-q+3gX6EHuM/AyOn8fkoANQxSzIHBeuNsrGgb7SPP0y7NuM+4ZHG/b9882+OfHcilaSqPDWUQoLbphcBpw/m/RA==",
- "dependencies": {
- "@babel/runtime": "^7.17.0",
- "@emotion/is-prop-valid": "^1.1.1",
- "@mui/utils": "^5.4.1",
- "@popperjs/core": "^2.4.4",
- "clsx": "^1.1.1",
- "prop-types": "^15.7.2",
- "react-is": "^17.0.2"
- },
- "engines": {
- "node": ">=12.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/mui"
- },
- "peerDependencies": {
- "@types/react": "^16.8.6 || ^17.0.0",
- "react": "^17.0.0",
- "react-dom": "^17.0.0"
- },
- "peerDependenciesMeta": {
- "@types/react": {
- "optional": true
- }
- }
- },
"node_modules/@mui/icons-material": {
"version": "5.4.1",
"resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.4.1.tgz",
@@ -3619,14 +3590,18 @@
}
}
},
- "node_modules/@mui/private-theming": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.4.1.tgz",
- "integrity": "sha512-Xbc4MXFZxv0A3hoc4TSDBhzjhstppKfc+gQcTMqqBZQP7KjnmxF+wO7rEPQuYRBihjCqQBdrHIGMLsKWrhkZkQ==",
+ "node_modules/@mui/material/node_modules/@mui/base": {
+ "version": "5.0.0-alpha.68",
+ "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.68.tgz",
+ "integrity": "sha512-q+3gX6EHuM/AyOn8fkoANQxSzIHBeuNsrGgb7SPP0y7NuM+4ZHG/b9882+OfHcilaSqPDWUQoLbphcBpw/m/RA==",
"dependencies": {
"@babel/runtime": "^7.17.0",
+ "@emotion/is-prop-valid": "^1.1.1",
"@mui/utils": "^5.4.1",
- "prop-types": "^15.7.2"
+ "@popperjs/core": "^2.4.4",
+ "clsx": "^1.1.1",
+ "prop-types": "^15.7.2",
+ "react-is": "^17.0.2"
},
"engines": {
"node": ">=12.0.0"
@@ -3637,7 +3612,8 @@
},
"peerDependencies": {
"@types/react": "^16.8.6 || ^17.0.0",
- "react": "^17.0.0"
+ "react": "^17.0.0",
+ "react-dom": "^17.0.0"
},
"peerDependenciesMeta": {
"@types/react": {
@@ -3645,13 +3621,18 @@
}
}
},
- "node_modules/@mui/styled-engine": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.4.1.tgz",
- "integrity": "sha512-CFLNJkopRoAuShkgUZOTBVxdTlKu4w6L4kOwPi4r3QB2XXS6O5kyLHSsg9huUbtOYk5Dv5UZyUSc5pw4J7ezdg==",
+ "node_modules/@mui/material/node_modules/@mui/system": {
+ "version": "5.4.3",
+ "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.4.3.tgz",
+ "integrity": "sha512-Xz5AVe9JMufJVozMzUv93IRtnLNZnw/Q8k+Mg7Q4oRuwdir0TcYkMVUqAHetVKb3rAouIVCu/cQv0jB8gVeVsQ==",
"dependencies": {
"@babel/runtime": "^7.17.0",
- "@emotion/cache": "^11.7.1",
+ "@mui/private-theming": "^5.4.2",
+ "@mui/styled-engine": "^5.4.2",
+ "@mui/types": "^7.1.2",
+ "@mui/utils": "^5.4.2",
+ "clsx": "^1.1.1",
+ "csstype": "^3.0.10",
"prop-types": "^15.7.2"
},
"engines": {
@@ -3662,8 +3643,9 @@
"url": "https://opencollective.com/mui"
},
"peerDependencies": {
- "@emotion/react": "^11.4.1",
+ "@emotion/react": "^11.5.0",
"@emotion/styled": "^11.3.0",
+ "@types/react": "^16.8.6 || ^17.0.0",
"react": "^17.0.0"
},
"peerDependenciesMeta": {
@@ -3672,21 +3654,19 @@
},
"@emotion/styled": {
"optional": true
+ },
+ "@types/react": {
+ "optional": true
}
}
},
- "node_modules/@mui/system": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.4.1.tgz",
- "integrity": "sha512-07JBYf9iQdxIHZU8cFOLoxBnkQDUPLb7UBhNxo4998yEqpWFJ00WKgEVYBKvPl0X+MRU/20wqFz6yGIuCx4AeA==",
+ "node_modules/@mui/material/node_modules/@mui/system/node_modules/@mui/private-theming": {
+ "version": "5.4.2",
+ "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.4.2.tgz",
+ "integrity": "sha512-mlPDYYko4wIcwXjCPEmOWbNTT4DZ6h9YHdnRtQPnWM28+TRUHEo7SbydnnmVDQLRXUfaH4Y6XtEHIfBNPE/SLg==",
"dependencies": {
"@babel/runtime": "^7.17.0",
- "@mui/private-theming": "^5.4.1",
- "@mui/styled-engine": "^5.4.1",
- "@mui/types": "^7.1.1",
- "@mui/utils": "^5.4.1",
- "clsx": "^1.1.1",
- "csstype": "^3.0.10",
+ "@mui/utils": "^5.4.2",
"prop-types": "^15.7.2"
},
"engines": {
@@ -3697,40 +3677,49 @@
"url": "https://opencollective.com/mui"
},
"peerDependencies": {
- "@emotion/react": "^11.5.0",
- "@emotion/styled": "^11.3.0",
"@types/react": "^16.8.6 || ^17.0.0",
"react": "^17.0.0"
},
"peerDependenciesMeta": {
- "@emotion/react": {
- "optional": true
- },
- "@emotion/styled": {
- "optional": true
- },
"@types/react": {
"optional": true
}
}
},
- "node_modules/@mui/types": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.1.1.tgz",
- "integrity": "sha512-33hbHFLCwenTpS+T4m4Cz7cQ/ng5g+IgtINkw1uDBVvi1oM83VNt/IGzWIQNPK8H2pr0WIfkmboD501bVdYsPw==",
+ "node_modules/@mui/material/node_modules/@mui/system/node_modules/@mui/styled-engine": {
+ "version": "5.4.2",
+ "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.4.2.tgz",
+ "integrity": "sha512-tz9p3aRtzXHKAg7x3BgP0hVQEoGKaxNCFxsJ+d/iqEHYvywWFSs6oxqYAvDHIRpvMlUZyPNoTrkcNnbdMmH/ng==",
+ "dependencies": {
+ "@babel/runtime": "^7.17.0",
+ "@emotion/cache": "^11.7.1",
+ "prop-types": "^15.7.2"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/mui"
+ },
"peerDependencies": {
- "@types/react": "*"
+ "@emotion/react": "^11.4.1",
+ "@emotion/styled": "^11.3.0",
+ "react": "^17.0.0"
},
"peerDependenciesMeta": {
- "@types/react": {
+ "@emotion/react": {
+ "optional": true
+ },
+ "@emotion/styled": {
"optional": true
}
}
},
- "node_modules/@mui/utils": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.4.1.tgz",
- "integrity": "sha512-5HzM+ZjlQqbSp7UTOvLlhAjkWB+o9Z4NzO0W+yhZ1KnxITr+zr/MBzYmmQ3kyvhui8pyhgRDoTcVgwb+02ZUZA==",
+ "node_modules/@mui/material/node_modules/@mui/utils": {
+ "version": "5.4.2",
+ "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.4.2.tgz",
+ "integrity": "sha512-646dBCC57MXTo/Gf3AnZSHRHznaTETQq5x7AWp5FRQ4jPeyT4WSs18cpJVwkV01cAHKh06pNQTIufIALIWCL5g==",
"dependencies": {
"@babel/runtime": "^7.17.0",
"@types/prop-types": "^15.7.4",
@@ -3749,6 +3738,19 @@
"react": "^17.0.0"
}
},
+ "node_modules/@mui/types": {
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.1.2.tgz",
+ "integrity": "sha512-SD7O1nVzqG+ckQpFjDhXPZjRceB8HQFHEvdLLrPhlJy4lLbwEBbxK74Tj4t6Jgk0fTvLJisuwOutrtYe9P/xBQ==",
+ "peerDependencies": {
+ "@types/react": "*"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -14413,12 +14415,13 @@
}
},
"node_modules/react": {
- "version": "17.0.2",
- "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
- "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
+ "version": "16.14.0",
+ "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz",
+ "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==",
"dependencies": {
"loose-envify": "^1.1.0",
- "object-assign": "^4.1.1"
+ "object-assign": "^4.1.1",
+ "prop-types": "^15.6.2"
},
"engines": {
"node": ">=0.10.0"
@@ -20040,20 +20043,6 @@
"react-is": "^16.8.0 || ^17.0.0"
}
},
- "@mui/base": {
- "version": "5.0.0-alpha.68",
- "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.68.tgz",
- "integrity": "sha512-q+3gX6EHuM/AyOn8fkoANQxSzIHBeuNsrGgb7SPP0y7NuM+4ZHG/b9882+OfHcilaSqPDWUQoLbphcBpw/m/RA==",
- "requires": {
- "@babel/runtime": "^7.17.0",
- "@emotion/is-prop-valid": "^1.1.1",
- "@mui/utils": "^5.4.1",
- "@popperjs/core": "^2.4.4",
- "clsx": "^1.1.1",
- "prop-types": "^15.7.2",
- "react-is": "^17.0.2"
- }
- },
"@mui/icons-material": {
"version": "5.4.1",
"resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.4.1.tgz",
@@ -20079,61 +20068,79 @@
"prop-types": "^15.7.2",
"react-is": "^17.0.2",
"react-transition-group": "^4.4.2"
- }
- },
- "@mui/private-theming": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.4.1.tgz",
- "integrity": "sha512-Xbc4MXFZxv0A3hoc4TSDBhzjhstppKfc+gQcTMqqBZQP7KjnmxF+wO7rEPQuYRBihjCqQBdrHIGMLsKWrhkZkQ==",
- "requires": {
- "@babel/runtime": "^7.17.0",
- "@mui/utils": "^5.4.1",
- "prop-types": "^15.7.2"
- }
- },
- "@mui/styled-engine": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.4.1.tgz",
- "integrity": "sha512-CFLNJkopRoAuShkgUZOTBVxdTlKu4w6L4kOwPi4r3QB2XXS6O5kyLHSsg9huUbtOYk5Dv5UZyUSc5pw4J7ezdg==",
- "requires": {
- "@babel/runtime": "^7.17.0",
- "@emotion/cache": "^11.7.1",
- "prop-types": "^15.7.2"
- }
- },
- "@mui/system": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.4.1.tgz",
- "integrity": "sha512-07JBYf9iQdxIHZU8cFOLoxBnkQDUPLb7UBhNxo4998yEqpWFJ00WKgEVYBKvPl0X+MRU/20wqFz6yGIuCx4AeA==",
- "requires": {
- "@babel/runtime": "^7.17.0",
- "@mui/private-theming": "^5.4.1",
- "@mui/styled-engine": "^5.4.1",
- "@mui/types": "^7.1.1",
- "@mui/utils": "^5.4.1",
- "clsx": "^1.1.1",
- "csstype": "^3.0.10",
- "prop-types": "^15.7.2"
+ },
+ "dependencies": {
+ "@mui/base": {
+ "version": "5.0.0-alpha.68",
+ "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-alpha.68.tgz",
+ "integrity": "sha512-q+3gX6EHuM/AyOn8fkoANQxSzIHBeuNsrGgb7SPP0y7NuM+4ZHG/b9882+OfHcilaSqPDWUQoLbphcBpw/m/RA==",
+ "requires": {
+ "@babel/runtime": "^7.17.0",
+ "@emotion/is-prop-valid": "^1.1.1",
+ "@mui/utils": "^5.4.1",
+ "@popperjs/core": "^2.4.4",
+ "clsx": "^1.1.1",
+ "prop-types": "^15.7.2",
+ "react-is": "^17.0.2"
+ }
+ },
+ "@mui/system": {
+ "version": "5.4.3",
+ "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.4.3.tgz",
+ "integrity": "sha512-Xz5AVe9JMufJVozMzUv93IRtnLNZnw/Q8k+Mg7Q4oRuwdir0TcYkMVUqAHetVKb3rAouIVCu/cQv0jB8gVeVsQ==",
+ "requires": {
+ "@babel/runtime": "^7.17.0",
+ "@mui/private-theming": "^5.4.2",
+ "@mui/styled-engine": "^5.4.2",
+ "@mui/types": "^7.1.2",
+ "@mui/utils": "^5.4.2",
+ "clsx": "^1.1.1",
+ "csstype": "^3.0.10",
+ "prop-types": "^15.7.2"
+ },
+ "dependencies": {
+ "@mui/private-theming": {
+ "version": "5.4.2",
+ "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.4.2.tgz",
+ "integrity": "sha512-mlPDYYko4wIcwXjCPEmOWbNTT4DZ6h9YHdnRtQPnWM28+TRUHEo7SbydnnmVDQLRXUfaH4Y6XtEHIfBNPE/SLg==",
+ "requires": {
+ "@babel/runtime": "^7.17.0",
+ "@mui/utils": "^5.4.2",
+ "prop-types": "^15.7.2"
+ }
+ },
+ "@mui/styled-engine": {
+ "version": "5.4.2",
+ "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.4.2.tgz",
+ "integrity": "sha512-tz9p3aRtzXHKAg7x3BgP0hVQEoGKaxNCFxsJ+d/iqEHYvywWFSs6oxqYAvDHIRpvMlUZyPNoTrkcNnbdMmH/ng==",
+ "requires": {
+ "@babel/runtime": "^7.17.0",
+ "@emotion/cache": "^11.7.1",
+ "prop-types": "^15.7.2"
+ }
+ }
+ }
+ },
+ "@mui/utils": {
+ "version": "5.4.2",
+ "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.4.2.tgz",
+ "integrity": "sha512-646dBCC57MXTo/Gf3AnZSHRHznaTETQq5x7AWp5FRQ4jPeyT4WSs18cpJVwkV01cAHKh06pNQTIufIALIWCL5g==",
+ "requires": {
+ "@babel/runtime": "^7.17.0",
+ "@types/prop-types": "^15.7.4",
+ "@types/react-is": "^16.7.1 || ^17.0.0",
+ "prop-types": "^15.7.2",
+ "react-is": "^17.0.2"
+ }
+ }
}
},
"@mui/types": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.1.1.tgz",
- "integrity": "sha512-33hbHFLCwenTpS+T4m4Cz7cQ/ng5g+IgtINkw1uDBVvi1oM83VNt/IGzWIQNPK8H2pr0WIfkmboD501bVdYsPw==",
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.1.2.tgz",
+ "integrity": "sha512-SD7O1nVzqG+ckQpFjDhXPZjRceB8HQFHEvdLLrPhlJy4lLbwEBbxK74Tj4t6Jgk0fTvLJisuwOutrtYe9P/xBQ==",
"requires": {}
},
- "@mui/utils": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.4.1.tgz",
- "integrity": "sha512-5HzM+ZjlQqbSp7UTOvLlhAjkWB+o9Z4NzO0W+yhZ1KnxITr+zr/MBzYmmQ3kyvhui8pyhgRDoTcVgwb+02ZUZA==",
- "requires": {
- "@babel/runtime": "^7.17.0",
- "@types/prop-types": "^15.7.4",
- "@types/react-is": "^16.7.1 || ^17.0.0",
- "prop-types": "^15.7.2",
- "react-is": "^17.0.2"
- }
- },
"@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -27844,12 +27851,13 @@
}
},
"react": {
- "version": "17.0.2",
- "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
- "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==",
+ "version": "16.14.0",
+ "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz",
+ "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==",
"requires": {
"loose-envify": "^1.1.0",
- "object-assign": "^4.1.1"
+ "object-assign": "^4.1.1",
+ "prop-types": "^15.6.2"
}
},
"react-app-polyfill": {