From e9985d27e5d357e106d90c8de8d7928a18ea788f Mon Sep 17 00:00:00 2001 From: sahil Date: Wed, 12 Oct 2022 21:55:34 +0530 Subject: [PATCH] Added a 404 Page --- package-lock.json | 181 +++++++++++++++++++++++++++++------ package.json | 3 + public/404Page.jpg | Bin 0 -> 18368 bytes src/App.js | 9 +- src/components/ErrorPage.css | 81 ++++++++++++++++ src/components/ErrorPage.js | 24 +++++ src/index.js | 6 +- 7 files changed, 271 insertions(+), 33 deletions(-) create mode 100644 public/404Page.jpg create mode 100644 src/components/ErrorPage.css create mode 100644 src/components/ErrorPage.js diff --git a/package-lock.json b/package-lock.json index a367bb9..ac4b15d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,6 +10,9 @@ "dependencies": { "react": "17.0.2", "react-dom": "17.0.2", + "react-icon": "^1.0.0", + "react-icons": "^4.4.0", + "react-router-dom": "^6.4.2", "react-scripts": "4.0.0" }, "devDependencies": { @@ -2709,6 +2712,14 @@ "node": ">= 8" } }, + "node_modules/@remix-run/router": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.0.2.tgz", + "integrity": "sha512-GRSOFhJzjGN+d4sKHTMSvNeUPoZiDHWmRnXfzaxrqe7dE/Nzlc8BiMSJdLDESZlndM7jIUrZ/F4yWqVYlI0rwQ==", + "engines": { + "node": ">=14" + } + }, "node_modules/@rollup/plugin-node-resolve": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-7.1.3.tgz", @@ -4376,6 +4387,27 @@ "babel-runtime": "^6.26.0" } }, + "node_modules/babel-plugin-transform-object-rest-spread/node_modules/babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==", + "dependencies": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "node_modules/babel-plugin-transform-object-rest-spread/node_modules/core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", + "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", + "hasInstallScript": true + }, + "node_modules/babel-plugin-transform-object-rest-spread/node_modules/regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + }, "node_modules/babel-plugin-transform-react-remove-prop-types": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz", @@ -4610,25 +4642,20 @@ } }, "node_modules/babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "version": "5.8.38", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-5.8.38.tgz", + "integrity": "sha512-KpgoA8VE/pMmNCrnEeeXqFG24TIH11Z3ZaimIhJWsin8EbfZy3WzFKUTIan10ZIDgRVvi9EkLbruJElJC9dRlg==", + "peer": true, "dependencies": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" + "core-js": "^1.0.0" } }, "node_modules/babel-runtime/node_modules/core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", - "deprecated": "core-js@<3.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.", - "hasInstallScript": true - }, - "node_modules/babel-runtime/node_modules/regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha512-ZiPp9pZlgxpWRu0M+YWbm6+aQ84XEfH1JRXvfOc/fILWI0VKhLC2LX13X1NYq4fULzLMq7Hfh43CSo2/aIaUPA==", + "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", + "peer": true }, "node_modules/babylon": { "version": "6.18.0", @@ -15996,6 +16023,23 @@ "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.9.tgz", "integrity": "sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==" }, + "node_modules/react-icon": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/react-icon/-/react-icon-1.0.0.tgz", + "integrity": "sha512-VzSlpBHnLanVw79mOxyq98hWDi6DlxK9qPiZ1bAK6bLurMBCaxO/jjyYUrRx9+JGLc/NbnwOmyE/W5Qglbb2QA==", + "peerDependencies": { + "babel-runtime": "^5.3.3", + "react": ">=0.12.0" + } + }, + "node_modules/react-icons": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.4.0.tgz", + "integrity": "sha512-fSbvHeVYo/B5/L4VhB7sBA1i2tS8MkT0Hb9t2H1AVPkwGfVHLJCqyr2Py9dKMxsyM63Eng1GkdZfbWj+Fmv8Rg==", + "peerDependencies": { + "react": "*" + } + }, "node_modules/react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", @@ -16009,6 +16053,36 @@ "node": ">=0.10.0" } }, + "node_modules/react-router": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.4.2.tgz", + "integrity": "sha512-Rb0BAX9KHhVzT1OKhMvCDMw776aTYM0DtkxqUBP8dNBom3mPXlfNs76JNGK8wKJ1IZEY1+WGj+cvZxHVk/GiKw==", + "dependencies": { + "@remix-run/router": "1.0.2" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/react-router-dom": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.4.2.tgz", + "integrity": "sha512-yM1kjoTkpfjgczPrcyWrp+OuQMyB1WleICiiGfstnQYo/S8hPEEnVjr/RdmlH6yKK4Tnj1UGXFSa7uwAtmDoLQ==", + "dependencies": { + "@remix-run/router": "1.0.2", + "react-router": "6.4.2" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, "node_modules/react-scripts": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/react-scripts/-/react-scripts-4.0.0.tgz", @@ -22864,6 +22938,11 @@ } } }, + "@remix-run/router": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.0.2.tgz", + "integrity": "sha512-GRSOFhJzjGN+d4sKHTMSvNeUPoZiDHWmRnXfzaxrqe7dE/Nzlc8BiMSJdLDESZlndM7jIUrZ/F4yWqVYlI0rwQ==" + }, "@rollup/plugin-node-resolve": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-7.1.3.tgz", @@ -24135,6 +24214,27 @@ "requires": { "babel-plugin-syntax-object-rest-spread": "^6.8.0", "babel-runtime": "^6.26.0" + }, + "dependencies": { + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==", + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + } } }, "babel-plugin-transform-react-remove-prop-types": { @@ -24340,23 +24440,19 @@ } }, "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "version": "5.8.38", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-5.8.38.tgz", + "integrity": "sha512-KpgoA8VE/pMmNCrnEeeXqFG24TIH11Z3ZaimIhJWsin8EbfZy3WzFKUTIan10ZIDgRVvi9EkLbruJElJC9dRlg==", + "peer": true, "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" + "core-js": "^1.0.0" }, "dependencies": { "core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha512-ZiPp9pZlgxpWRu0M+YWbm6+aQ84XEfH1JRXvfOc/fILWI0VKhLC2LX13X1NYq4fULzLMq7Hfh43CSo2/aIaUPA==", + "peer": true } } }, @@ -33119,6 +33215,18 @@ "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.9.tgz", "integrity": "sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==" }, + "react-icon": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/react-icon/-/react-icon-1.0.0.tgz", + "integrity": "sha512-VzSlpBHnLanVw79mOxyq98hWDi6DlxK9qPiZ1bAK6bLurMBCaxO/jjyYUrRx9+JGLc/NbnwOmyE/W5Qglbb2QA==", + "requires": {} + }, + "react-icons": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.4.0.tgz", + "integrity": "sha512-fSbvHeVYo/B5/L4VhB7sBA1i2tS8MkT0Hb9t2H1AVPkwGfVHLJCqyr2Py9dKMxsyM63Eng1GkdZfbWj+Fmv8Rg==", + "requires": {} + }, "react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", @@ -33129,6 +33237,23 @@ "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.8.3.tgz", "integrity": "sha512-X8jZHc7nCMjaCqoU+V2I0cOhNW+QMBwSUkeXnTi8IPe6zaRWfn60ZzvFDZqWPfmSJfjub7dDW1SP0jaHWLu/hg==" }, + "react-router": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.4.2.tgz", + "integrity": "sha512-Rb0BAX9KHhVzT1OKhMvCDMw776aTYM0DtkxqUBP8dNBom3mPXlfNs76JNGK8wKJ1IZEY1+WGj+cvZxHVk/GiKw==", + "requires": { + "@remix-run/router": "1.0.2" + } + }, + "react-router-dom": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.4.2.tgz", + "integrity": "sha512-yM1kjoTkpfjgczPrcyWrp+OuQMyB1WleICiiGfstnQYo/S8hPEEnVjr/RdmlH6yKK4Tnj1UGXFSa7uwAtmDoLQ==", + "requires": { + "@remix-run/router": "1.0.2", + "react-router": "6.4.2" + } + }, "react-scripts": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/react-scripts/-/react-scripts-4.0.0.tgz", diff --git a/package.json b/package.json index 8d65804..a27c131 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,9 @@ "dependencies": { "react": "17.0.2", "react-dom": "17.0.2", + "react-icon": "^1.0.0", + "react-icons": "^4.4.0", + "react-router-dom": "^6.4.2", "react-scripts": "4.0.0" }, "devDependencies": { diff --git a/public/404Page.jpg b/public/404Page.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5cb831a07acb25f4d55d7c8eeb5c6fb03c09cab6 GIT binary patch literal 18368 zcmV(*K;FMnNk&GvM*sj|lQDslp$0X{7ji9?~GArV>>=okXT zvbTN-u|Pl=GHCbWcP_se?Eix=JpwoEH|(Fa?zffw_4_~X|Fpj09CzF2mi!a_%l{|& zU$|fE_*K~-NFN3qq5fa{=k7oFFaQ7h{_y|2|Hb}4_B-XD^*{BW^*zBqOux#1bpJ8` zYx}SN{`Wp%zoma;|8xE?_uJ+-{n!03@t*KMy8pfZm;M+0SI7tRf9s#_{ck;yKgR#M z_6h!X{oDTcu223?@&E1r{Cyw)PyaXnkNrRUU;kf0f6qU$f64sw`2h3)|DFH;+{^d} z?{B>SCA~}egZHn>5AJ{Wyv_X^_YcWm-kzJ=#`HV*=i1-F|8M=S{{#Dz_iy@d^d1=e z%G4wA@8!SVf4Bb9e|-PR|9|U^`yDy^??8`XzNP-7`{(Vq`Jdgtaqs4RE&E&kckN5; z3;DP85A=WD|93yX|Nr;I@X`Bc{ZFF5urK5P)IZ(-jr_p+UjCE*C;0#NKe7JZKP~?y z|112*`k($E?0&*Ok$+78Q~me+pZ+iMKmY&x{oQ*9{j&Bh{ayce`TjPkl?;RgqtsXV z%!GY|TQ1ac3+<*C!BKTGp^$rGAw6MK#~m%DAZDfia!$roJ`?6E%oreO1wTz>^JY%hXdoWs7xo-f{B z-)b&?A*KFkZOi+((AiTt>Jnu*qerGqfI8q#7_8+-UU@BEJsg%c25@sbc|QaU&%t1! zfURKvrXjV$hw#^P>i}|1zHq6D1RK^p9g3r*K!?97*0!E-*sSI|ONMjMRylrkuDp0w zJH6z-KTT{GFn4az5)fWTv%Z9-q|Aqooue~^n6`Ck^I-Pv~je@pA zPmZL|jxIDmOkNz7WHD%HJ#xd9@mfl(xdHHttUmE`YcLiBuxHv5!Rr2`CL2C!jVz#& zIb&$t3lGRxgb;OAnB%c80X=OSu%ET>`cZDh#>f9&bk{d|PeSs}_dJ<2u!_!ddr9rO z9?0Jm+7uGRI+g>5DL*_S!=Aq0V+t%;yyHk+L(|3PaAb*^qfDOPwdSrqb@IV8pp@?2 z5M2#q7WkCx)L6T=vMsTp4~gCCc?Hl~sQGyKmRmCCdKivwrx(?I-UEf{EM=8bBl)TL>neY?urAn;BhMt-CN{AJOn2RAj3LImwC{2 zW6|q2*}RMNRsT=tKhev_(&K*&=Hnf%iKA^^Jo&9Mjg`1dBPBz{iPZXP$N@#X39)Rj z1=)OjN`oIqwNvT8t;A1&bX(r(o1dq}-4HLGtH`ulpa8B}QqJGAe@rT;n_B*4WB@pG z?Ij3-fdgmf%F!YXsHHWxIslx)S6+uG1Rv^BZIeO)PEcR z@Pb^x4bFHkU%Zy4oyI2jQj-Aa6&&L}2V@89&v`h(zWC5(iu_$sVqKWAA=g8E(dr!# zbNR|AZ4DB!8)D%5L*uN{E^ob*&>bc+^2XTO09)BUKl8ASNhH3d^JJDhVJfu7bmL8+ z?l|XmAsA%qw!`ng-QN{2=!vj@s8p|MeKLakUvA&U@c_Uldlz(QJ)^(Frh7oqhbSP5 zdn`(Vl@TZgau#V#KU&cG{}R6wl1&(UGtv&u0RP{!^aY_#+h_<=fvQlDI;(RoQxF0> zySvD}4MaQdCijb(Z~F*cZ)50M)zaU$$cXmvD(Npb6wvyQahF+b7TZc~L#d(zf zR2jXsTggzfX$~pJCRxE(C)oW)b%!O64ot@ZN%LPtoYZ5zV2&DUZLWvr@El}J@eN6O zdgO~Pkc$DMr!Hv?Py$2|K`K2YD{j?mE^1U}(C7o!4xfI+`ku01cWho+j$SEN2$NGT zAU&AG*<(ZAY?@$O8+zM0h-t@XhxNCt@Z7b{k z_nDM(S@r?14Vu&Y17ZW}AVx#T|%|L@aKKhoGh_wDhZ8`Aq$~yIL4D^EemJr=# z)ICaCx5hrp0$rRfyv>V6NgC~5&5*DH{#%DE72oWK)f#m`0Kb9*8RBNfN)el@n0-0! z8so$#se?)ICxSv1QiZ~Wl2n$%iJ;>RNowx5HcJvwL8xa_#c!l8#oiM8)WZy*7^Qd; z)E!mG2v?spDDk$|izsznv%z^Z2Tb4+&qP&;l=IK$+HaM3R-y)xz%Z}R@9I2#_rYTB zL{A6yr?DpKD%y-)1b4<1U`&q2-AGJ6vQ~|x^tT?XR{p|Er_)oyQ6e*c>&zj|&wh~z zl-FXxiLphA_OUHlrP}~Vt9Rw7&R9`}LD|j>H}M&meUUeiw@3q_q%kpeAUY*>kRtNQa7~iU`TdARxX_PV0?zWC?}?7t;RmNyvF`^ z+%QTJujeE=O#ET_Fw=M~IyZ36LD>_5OIR!>6Qc0ixBoI~v!DdwxWI2I|3z{u@>dqj zdGzKQA0;fFZZn%&({x@nd2;dU4tluvqeDc`(sA&*|HahWf4RcHz*k&-Z*?T;DGTw<^LH> zDs;l9Oe%E3p{+G65D0~VYQwydJ<>dy-vO@!%iCSQmFVGrtlt0GnE`jqN~o{^Z$XaY zuwlQ6uz$PB$RDvb5BGU6B8wO!Apt5m1@_Ym;HbKpP{=?^jzM(*0RH|~4C(q4*}$MM zc>Z@2OfMoQ1_Gfq1rwC=o!8Z5kOMKDQ$6a}CbfLZ})1)qS*H*%MKO`*VJw+fpl-8FsYt5)Go>qfxO znx%5cLrT2qby&S>y2<((?>Bxx&ylZ+3^e~svvX(6FXPJ2LWcLtap7ZJyS>$nIGbfZ zt2{G_FW+psc;^BU^j}uewDCw?CDphnedRc9uYLY?CZso}Wxp$rETVe3mYYS`+)OAQ zD36qIpn42X2&GX30yOVS6u*Zh0y)u?Fc<*mzAsLRS=C6hk9E~ni}NKBTHn7yp|;*b zTr^L3&m;iONf2^Ibf!xySg#F{lr*V1Rf#2FnmMDIIis36qnbJ+#fBGTsmRJPBMnS!YbZ_gh!W%utxl##1~4Wv<3m}n? za8Zffj6PEW$SxilKa1pJn)ANUzOLI$)#91ZQA`AW-=<4Ujue9ur|>6#{Hke$U@h^X zr_f3dB5VQ0cpMrzFu8vzbvr7ST)Y5Z*)mxNm)k$FKz+)X4%Y6hGQT0;@dO=Q9i)k! zndw(wajKv86_@_tvBs`bTqz0aed_mptex9af>jP}OiX)PM+Vv?K;&De3tET|6-jZ% z7ioB$wSxXNHfQkv;%_2NguJ?X2qd!d4U=Dzw}(8)njUuVh>kiZC6|U$j4J zC2PbvU>ZrG5Gl|u5fj=q17ch4W2{rn0M#lO8~xBfeSg6t^UUaXvNE#@=P(=AeY-!c zhAN4w?iEooh!GjLu0`K1%F7MxpLtDRq_R#fQ?B)KqxQygd_Pd+b}llgRx!}*YN-_@ z3CP%FZn)~Xz^<|mL0?yj#`S<%n*ICJYp03S*QyX6R;Q8myeO~f!p|aU4_}6OoV<2_ zDDG(pxkqnV8xF$x>RqMIQYo`Sb{y69FqT>5q*qTmEQ<;z;8l%DZ39$Fj|cq@isc#fj*H{_6>Qv` z#M0_^k3s&-AaJAG`&LDKp?Om#=>h0Aph9vJR`8JHqVzVF7I&-l8^3c5A&2&rY`SsO z`ERj~6hakglZJ+p8{v7qNN9&<$j<;@ly_X=AZ!1ZeGb_cYH>DVXP- zXXoeeS+l-&>Oaz?ir7pm0_X{*{QST9_e)%Evp_br{3FDA^|>QzVu9%QFYPcYe3SLB zF64zct{&zM3D`H;js~AMIxLrTkEx(ZfCieJUmA(`g5pN7f#%6Yg54F)P!Zy<3ySmk zk!CFAMdb#>ia9_D7IE~|Bg1@Xt=!OKH|5Y$emxNU2pNIv=U!jKs#R8GSUVb?1}L)N ztNFjPWpVdmM~yBl`@>~=HXXs*5_)z(nHx}dgm}xGzVZs&bxIx;?}Kb9t|aAeEgRhg zpyx!h0x@daKi@SS$57c{4DzRycqw-54^-vmz=vvX-3F?QHxce?Rwk83Hzk-nFGNK` z&?S4#D~&UXaAZ6TVyTSFqkgO2ve2+cbCHZB_5*DOesEuMQEQKaDf>WgBA8&sM08dp zPp}&m_YVDKC>6VO7-_FAq~FFvSgHcHetX+V_R-+6zmfSsPAUu%6Eq1A`0JQ%eG4xa zZ5(TWPxAFzS$R>7-62QiQLF9+noG-+h1~!2xtne%7F=W?mC!N2=JvYr%D>rq@7!lV zKdn~)RnYXp4~js(t)z)cxT^}~l>0E$Ts z=Ton?AYHy5XV^W4a?g(}K@a9|0mlRRQV-%CXJlXBq7YUa)LeLpSO(>1(~TKa^&qxQ z3^hyQeWfpYi4)EE{h>x$`n9jKtNrT~TaSzn`)6`8h0I%cJPzu`=A8`>)~iV(p&8=r zG9SV`kw?J5Jv$YETLQ*Kr%ai{?p#YwPv1Yap%8ogLx=Rhf6)e%!j^N-7;TY0X70EA zt;41jE!CrU+tEfKx{IOP>kZGo1fNg8(}nY;EJi5j>n-DGY5FLH>bCsZ(cYJ2l%X6#Lyf=Uho~ZJfu+qkue|t z9cdYlo(-FblI-WRTy`!E?TY8dy?@%|4f1UwnR1?g7Y4G~M{Y@eH+LTvE|X!iKteV5 zU~nvEJStav0g!0!Gxf4;wpA0K6<4@tD`G!U`{E2#faV7uYXgekg4HwIkV-Gomz=n) zcchD(DLO!#NpY5HXt{d2XtDgzjled{*X8yqgq3Oj!2ru~9MuGgihpG=d{Ca#E z)1_jG@@ng;`8&)O#S!6^o?H8i%Q{T>&HdOB#M%wH@g;mk01;RHM8M$puF^D-SLi{j z(l6Bi|ImMR)XnB45uYmX$QmElYFmZP%B5h$SYM>;k8OFMl$DA!;e!@@Xed9AORMe6 zx7ORAbt(B(bd6Y0x4!vNe-{YSGqRq!7GKVIOupE>m(6Rp#mK;c*ueS}`<}ZivWuFN znUL5EXMf6mVxow`S~i^_7lpRd6A+~P5!<&>{zBVGZp}?`#vn~0^U?S@6T;lB7Vim3 zMg$(F5UVgZM6Znu3iBYK1FMAG6QBWRYIU^w@C+yuNMb&=E5{2zN*fp~O=HM_xuks~ z*}#48*EAzk9$jP@qCmHrt?25`e@eUE&!lNxei->PzC+$Y-JKeoO%N4GPZRfcO?Z1d z3Z-&13WN<9C-5~L-z6&BLb&x|1;xg(DJ6=vJFo7?r=Cq*yChd}rT!vJ+rYIF*gq84WfAy>T!u+n=ytnB4%z&zzyOs9PK!by=7Z<)8_8 zbgP{%fg0K#GGRtpPmy@Y^oTld8r^F9P#Zaz+EY}#|A-S!Mcs4Sy{wX*Y3t9WBbG&) zU%DC$MhR2m@^8l#lYIiYoLTcMXYDRrhy;gd6d(Np3;jQL=I|;Zc*X}3ly1tiQ`P(e zH+6NqXRp41ztXuNH z6D&!}A9ZOdG%-cA87OC;!bX`qY(#YfVn^#f*}9*P>}yN4mn^DiuQ_70e9%=0&3_8Ol(&rNLX zffF{dypbbSYB7#~L|HPa`%qT+z_mV@=gx5m#mgrwcYM}{YHoZ?r)1GdadewZPUx%? zLY6WT|(814Db4=4$u%67f_-47Vfh8s>XRldUtcaPt# zU_zhuoe37STS}XFmQp-8N<5M1-6A(sO+y4k8}2dHh>CMT#S23@)g;HsQ0@NP8fx(gFBg< zkMz?Y7W{{*IwGtlr;rDvS zN{_)&d?jIJ?s`PTtF>K9{P`ZA$0t2AujXax7)z=xmt9sIFL8NN87q*Xt|Ene920l0p^$0;=F^_K>I%6X(5OGBP#0V-LkjLYaIVHvlvKrwdh(>4=YJ5*L;H>$e`5)|2q2&8GTprA>PN8+KPr!7>=m}rm zu%FiFPp?#^9;_r-`I-B0R)e$kq;bmj*F74jg&g&Y*B*6qM^46MAhG!+Cp}xm@LC8x zYkU0eG~M@V{t(;0B;8^4&wox3K|a2@?X1XRdJBfDwgTn;yWPCS3TqXv)CWxvF2G;E zhSe#|Ow4<2)!XIc(d~$+ebBDgk{CWspM4)jfQxl7hJ^AXFZw_6Ph0*&Ex&|~u>iZG zSJe+E)~+^(x4B)9zFSXUtgqF<1M0PajJ#$xe9ew&k{iE8pUgZ&j1_A*!_@D&T!>Ny zrG~?@Ed=;F;8|L+vDMJH&TkPlRWZ7IweJi(sdUS_Qcp6Z zlOpMP_MX8A4D_CluD!Sx z;jdR^*cuIr7#AcypDe(Rfo2--YL9m@K0J0<1h|EiQOqy+S$nb=weZUIBU1`ZW-G`9 z#pREJ11zg8ix)Eg&%B(v3<>{p1JL_=%^pF>OSXT%QQLA;}THG&M8FhXYt`*;bIzjNye72wRpmsrorYdhN?2YilX zt4=q6Rzc|!b=;Bh5YeRpIu_AU(@oWk)d)8KPdr=z18Wue;Buo>q|D*8%EUIZuSZd@ zsSUUf&p^-naY9O85Zb+p*XHsY^q6Mx8>mq09&bqZa%V<(>l&0U07kLA)7w-WYESP- zJCEAx;S?sD(8i1gN9CpCJV!aP@Di^8gS3f+u0|&5an*)-Z_(q|xzpuiVRui$HBvI} zidnOhh=-yeVUqg~r3opMwb|xNqZIG%zFBexq!+b2(Zb$NW~~PA<>&Xkba!Z?cJIS9 zuQ=X$+5Zb;fXyB$GW3_mO}mRUdfs_1N=7VHbkJqGEr(wq_Lbn-FW}W0sA)$;qh(Rh z1m+I#OYHlonJ-}7GJj2T(8;UK~o_LEvX`z&oIxrl8YovfEo(|A| z1bzT_?$Mm=p*+&6#W(>4i}2odzjNjS4A3DWd@~|>Wj8B|Vw6@JT_v9B0@a8hcM1lQ;9)!sIzVp^HU+a#W zNZ2-%rV1*e(pZ=*>^;uizeq?0!h`F9gyTasj*B1XDyS~Ru35V}2i`hN&&N?)cZ3z8 zeusUG_$a{V@Onuf{H{j9ziu+4KuuUTZg@BWH`lMJu3+U#JK0B^!z+x9Oc~mMa9-)3 z6$(EtK9qe)Y%R!?pDN-!xDMNL>~gCNH(oe&>x@+zp#7Q{`bT*s7@#%LWOT&V3Of=T z42){2B20Tp9A-o?C}i7BkKld6(Pi>hUY1iEwobwN`T5>r9CP~a1yNNemofQt#U8^B za22seOCLpxje>QG=U&G$^oo@F$c5~RIw$8CPj^5sgkK35J6GD>+i$%xjFPc)35Qm3 zB)yn)$j+NELg$l!w#ynI77BZZQCn3MHGEUaBYMyE>T`_V`Mv!&v!4xafkbxbD`G;D z!`t|!Sb2!6<5Tu+&B;zgUe%YcvP|7RPUe#`;dur=lle?>qRyq$na~NDC3l68SC(YW z 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 b?T + +

Todo List

- + } /> + } /> +
); } diff --git a/src/components/ErrorPage.css b/src/components/ErrorPage.css new file mode 100644 index 0000000..ba9b1ce --- /dev/null +++ b/src/components/ErrorPage.css @@ -0,0 +1,81 @@ +/* body { + font-family: sans-serif; + background-color: #81d4fa; + font-weight: bold; +} */ +.btn{ + display: flex; +} +.text-box { + margin-left: 1vw; + margin-top: 6vh; +} + +.btn:link, +.btn:visited { + text-transform: uppercase; + text-decoration: none; + padding: 15px 40px; + display: inline-block; + border-radius: 100px; + transition: all .2s; + position: absolute; + left: 264px; + top: 338px; + width: 162px; + background-color: lightskyblue; +} + +.btn:hover { + transform: translateY(-3px); + box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); +} + +.btn:active { + transform: translateY(-1px); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); +} + +.btn-white { + background-color: #fff; + color: #777; +} + +.btn::after { + content: ""; + display: inline-block; + height: 100%; + width: 100%; + border-radius: 100px; + position: absolute; + top: 0; + left: 0; + z-index: -1; + transition: all .4s; +} + +.btn-white::after { + background-color: #fff; +} + +.btn:hover::after { + transform: scaleX(1.4) scaleY(1.6); + opacity: 0; +} + +.btn-animated { + animation: moveInBottom 5s ease-out; + animation-fill-mode: backwards; +} + +@keyframes moveInBottom { + 0% { + opacity: 0; + transform: translateY(30px); + } + + 100% { + opacity: 1; + transform: translateY(0px); + } +} \ No newline at end of file diff --git a/src/components/ErrorPage.js b/src/components/ErrorPage.js new file mode 100644 index 0000000..e4c5ff0 --- /dev/null +++ b/src/components/ErrorPage.js @@ -0,0 +1,24 @@ +import React from "react"; +import "./ErrorPage.css"; +import {BiArrowBack} from 'react-icons/bi' +import { Link } from "react-router-dom"; +const ErrorPage = () => { + return ( +
+
+ + Back to Main Page + +
+ + + +
+ ); +}; + +export default ErrorPage; diff --git a/src/index.js b/src/index.js index d65892e..25761cd 100644 --- a/src/index.js +++ b/src/index.js @@ -1,12 +1,12 @@ import { StrictMode } from "react"; import ReactDOM from "react-dom"; - +import { BrowserRouter } from "react-router-dom"; import App from "./App"; const rootElement = document.getElementById("root"); ReactDOM.render( - + - , + , rootElement );