diff --git a/.eslintcache b/.eslintcache
index aec376a..2ae758a 100644
--- a/.eslintcache
+++ b/.eslintcache
@@ -1 +1 @@
-[{"/home/malik/myPractice/reactPractice/src/index.js":"1","/home/malik/myPractice/reactPractice/src/App.js":"2","/home/malik/myPractice/reactPractice/src/components/pages/Home.js":"3","/home/malik/myPractice/reactPractice/src/components/Navbar.js":"4","/home/malik/myPractice/reactPractice/src/components/Footer.js":"5","/home/malik/myPractice/reactPractice/src/components/HeroSection.js":"6","/home/malik/myPractice/reactPractice/src/components/Cards.js":"7","/home/malik/myPractice/reactPractice/src/components/Button.js":"8","/home/malik/myPractice/reactPractice/src/components/CardItem.js":"9","/home/malik/myPractice/reactPractice/src/components/Carddata.js":"10"},{"size":155,"mtime":1671524635137,"results":"11","hashOfConfig":"12"},{"size":401,"mtime":1671524635001,"results":"13","hashOfConfig":"12"},{"size":308,"mtime":1671524635057,"results":"14","hashOfConfig":"12"},{"size":2036,"mtime":1671524635001,"results":"15","hashOfConfig":"12"},{"size":3567,"mtime":1671524635001,"results":"16","hashOfConfig":"12"},{"size":769,"mtime":1671524635001,"results":"17","hashOfConfig":"12"},{"size":781,"mtime":1671529904660,"results":"18","hashOfConfig":"12"},{"size":702,"mtime":1671524635001,"results":"19","hashOfConfig":"12"},{"size":756,"mtime":1671531844386,"results":"20","hashOfConfig":"12"},{"size":684,"mtime":1671530648611,"results":"21","hashOfConfig":"12"},{"filePath":"22","messages":"23","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"1txycbz",{"filePath":"24","messages":"25","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"26","messages":"27","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"28","messages":"29","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"30","messages":"31","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"32","messages":"33","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"34","messages":"35","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"36","messages":"37","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"38","messages":"39","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"40","messages":"41","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/home/malik/myPractice/reactPractice/src/index.js",[],"/home/malik/myPractice/reactPractice/src/App.js",[],"/home/malik/myPractice/reactPractice/src/components/pages/Home.js",[],"/home/malik/myPractice/reactPractice/src/components/Navbar.js",[],"/home/malik/myPractice/reactPractice/src/components/Footer.js",[],"/home/malik/myPractice/reactPractice/src/components/HeroSection.js",[],"/home/malik/myPractice/reactPractice/src/components/Cards.js",[],"/home/malik/myPractice/reactPractice/src/components/Button.js",[],"/home/malik/myPractice/reactPractice/src/components/CardItem.js",[],"/home/malik/myPractice/reactPractice/src/components/Carddata.js",[]]
\ No newline at end of file
+[{"/home/malik/myPractice/reactPractice/src/index.js":"1","/home/malik/myPractice/reactPractice/src/App.js":"2","/home/malik/myPractice/reactPractice/src/components/pages/Home.js":"3","/home/malik/myPractice/reactPractice/src/components/Navbar.js":"4","/home/malik/myPractice/reactPractice/src/components/Footer.js":"5","/home/malik/myPractice/reactPractice/src/components/HeroSection.js":"6","/home/malik/myPractice/reactPractice/src/components/Cards.js":"7","/home/malik/myPractice/reactPractice/src/components/Button.js":"8","/home/malik/myPractice/reactPractice/src/components/CardItem.js":"9","/home/malik/myPractice/reactPractice/src/components/Carddata.js":"10","/home/malik/myPractice/reactPractice/src/components/Todo/Todolist.js":"11","/home/malik/myPractice/reactPractice/src/components/Todo/Task1.js":"12"},{"size":155,"mtime":1671524635137,"results":"13","hashOfConfig":"14"},{"size":507,"mtime":1671683478611,"results":"15","hashOfConfig":"14"},{"size":308,"mtime":1671637037420,"results":"16","hashOfConfig":"14"},{"size":2285,"mtime":1671711965488,"results":"17","hashOfConfig":"14"},{"size":3567,"mtime":1671524635001,"results":"18","hashOfConfig":"14"},{"size":769,"mtime":1671524635001,"results":"19","hashOfConfig":"14"},{"size":781,"mtime":1671529904660,"results":"20","hashOfConfig":"14"},{"size":702,"mtime":1671543706966,"results":"21","hashOfConfig":"14"},{"size":756,"mtime":1671531844386,"results":"22","hashOfConfig":"14"},{"size":684,"mtime":1671530648611,"results":"23","hashOfConfig":"14"},{"size":258,"mtime":1672336051230,"results":"24","hashOfConfig":"14"},{"size":1754,"mtime":1672336042725,"results":"25","hashOfConfig":"14"},{"filePath":"26","messages":"27","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"28"},"1kfoqge",{"filePath":"29","messages":"30","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"28"},{"filePath":"31","messages":"32","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"28"},{"filePath":"33","messages":"34","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"28"},{"filePath":"35","messages":"36","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"28"},{"filePath":"37","messages":"38","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"28"},{"filePath":"39","messages":"40","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"28"},{"filePath":"41","messages":"42","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"28"},{"filePath":"43","messages":"44","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"28"},{"filePath":"45","messages":"46","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"28"},{"filePath":"47","messages":"48","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"49","messages":"50","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/home/malik/myPractice/reactPractice/src/index.js",[],["51","52"],"/home/malik/myPractice/reactPractice/src/App.js",[],"/home/malik/myPractice/reactPractice/src/components/pages/Home.js",[],"/home/malik/myPractice/reactPractice/src/components/Navbar.js",[],"/home/malik/myPractice/reactPractice/src/components/Footer.js",[],"/home/malik/myPractice/reactPractice/src/components/HeroSection.js",[],"/home/malik/myPractice/reactPractice/src/components/Cards.js",[],"/home/malik/myPractice/reactPractice/src/components/Button.js",[],"/home/malik/myPractice/reactPractice/src/components/CardItem.js",[],"/home/malik/myPractice/reactPractice/src/components/Carddata.js",[],"/home/malik/myPractice/reactPractice/src/components/Todo/Todolist.js",[],"/home/malik/myPractice/reactPractice/src/components/Todo/Task1.js",[],{"ruleId":"53","replacedBy":"54"},{"ruleId":"55","replacedBy":"56"},"no-native-reassign",["57"],"no-negated-in-lhs",["58"],"no-global-assign","no-unsafe-negation"]
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 37c89f9..564d3ae 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -13,6 +13,7 @@
"@testing-library/user-event": "^12.5.0",
"react": "^17.0.1",
"react-dom": "^17.0.1",
+ "react-icons": "^4.7.1",
"react-router-dom": "^5.2.0",
"react-scripts": "4.0.1",
"web-vitals": "^0.2.4"
@@ -1484,6 +1485,14 @@
"node": ">= 4"
}
},
+ "node_modules/@eslint/eslintrc/node_modules/type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/@hapi/address": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz",
@@ -1800,6 +1809,14 @@
"node": ">=8"
}
},
+ "node_modules/@jest/core/node_modules/type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/@jest/environment": {
"version": "26.6.2",
"resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz",
@@ -2008,6 +2025,14 @@
"node": ">=8"
}
},
+ "node_modules/@jest/reporters/node_modules/type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/@jest/source-map": {
"version": "26.6.2",
"resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-26.6.2.tgz",
@@ -4533,6 +4558,15 @@
"node": ">=8"
}
},
+ "node_modules/bindings": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
+ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
+ "optional": true,
+ "dependencies": {
+ "file-uri-to-path": "1.0.0"
+ }
+ },
"node_modules/bluebird": {
"version": "3.7.2",
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
@@ -7594,6 +7628,14 @@
"node": ">=8"
}
},
+ "node_modules/eslint/node_modules/type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/eslint/node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -8169,6 +8211,12 @@
"url": "https://opencollective.com/webpack"
}
},
+ "node_modules/file-uri-to-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
+ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
+ "optional": true
+ },
"node_modules/filesize": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/filesize/-/filesize-6.1.0.tgz",
@@ -10573,6 +10621,14 @@
"node": ">=8"
}
},
+ "node_modules/jest-config/node_modules/type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/jest-diff": {
"version": "26.6.2",
"resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz",
@@ -11242,6 +11298,14 @@
"node": ">=8"
}
},
+ "node_modules/jest-resolve/node_modules/type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/jest-runner": {
"version": "26.6.3",
"resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.6.3.tgz",
@@ -11392,6 +11456,14 @@
"node": ">=8"
}
},
+ "node_modules/jest-runner/node_modules/type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/jest-runtime": {
"version": "26.6.3",
"resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.6.3.tgz",
@@ -11560,6 +11632,14 @@
"node": ">=8"
}
},
+ "node_modules/jest-runtime/node_modules/type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/jest-serializer": {
"version": "26.6.2",
"resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.6.2.tgz",
@@ -11718,6 +11798,14 @@
"node": ">=8"
}
},
+ "node_modules/jest-snapshot/node_modules/type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/jest-util": {
"version": "26.6.2",
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz",
@@ -13035,6 +13123,12 @@
"resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz",
"integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE="
},
+ "node_modules/nan": {
+ "version": "2.17.0",
+ "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz",
+ "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==",
+ "optional": true
+ },
"node_modules/nanoid": {
"version": "3.1.20",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz",
@@ -15787,6 +15881,14 @@
"resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.8.tgz",
"integrity": "sha512-HvPuUQnLp5H7TouGq3kzBeioJmXms1wHy9EGjz2OURWBp4qZO6AfGEcnxts1D/CbwPLRAgTMPCEgYhA3sEM4vw=="
},
+ "node_modules/react-icons": {
+ "version": "4.7.1",
+ "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.7.1.tgz",
+ "integrity": "sha512-yHd3oKGMgm7zxo3EA7H2n7vxSoiGmHk5t6Ou4bXsfcgWyhfDKMpyKfhHR6Bjnn63c+YXBLBPUql9H4wPJM6sXw==",
+ "peerDependencies": {
+ "react": "*"
+ }
+ },
"node_modules/react-is": {
"version": "16.13.1",
"resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
@@ -18739,11 +18841,16 @@
}
},
"node_modules/type-fest": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
- "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "version": "0.13.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz",
+ "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==",
+ "optional": true,
+ "peer": true,
"engines": {
- "node": ">=8"
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/type-is": {
@@ -18771,6 +18878,19 @@
"is-typedarray": "^1.0.0"
}
},
+ "node_modules/typescript": {
+ "version": "3.9.10",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz",
+ "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==",
+ "peer": true,
+ "bin": {
+ "tsc": "bin/tsc",
+ "tsserver": "bin/tsserver"
+ },
+ "engines": {
+ "node": ">=4.2.0"
+ }
+ },
"node_modules/unicode-canonical-property-names-ecmascript": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz",
@@ -22200,6 +22320,11 @@
"version": "4.0.6",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
"integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg=="
+ },
+ "type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
}
}
},
@@ -22444,6 +22569,11 @@
"requires": {
"has-flag": "^4.0.0"
}
+ },
+ "type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
}
}
},
@@ -22603,6 +22733,11 @@
"requires": {
"has-flag": "^4.0.0"
}
+ },
+ "type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
}
}
},
@@ -24529,6 +24664,15 @@
"integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==",
"optional": true
},
+ "bindings": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
+ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
+ "optional": true,
+ "requires": {
+ "file-uri-to-path": "1.0.0"
+ }
+ },
"bluebird": {
"version": "3.7.2",
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
@@ -26617,6 +26761,11 @@
"has-flag": "^4.0.0"
}
},
+ "type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
+ },
"which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -27417,6 +27566,12 @@
}
}
},
+ "file-uri-to-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
+ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
+ "optional": true
+ },
"filesize": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/filesize/-/filesize-6.1.0.tgz",
@@ -29326,6 +29481,11 @@
"requires": {
"has-flag": "^4.0.0"
}
+ },
+ "type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
}
}
},
@@ -29804,6 +29964,11 @@
"requires": {
"has-flag": "^4.0.0"
}
+ },
+ "type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
}
}
},
@@ -29929,6 +30094,11 @@
"requires": {
"has-flag": "^4.0.0"
}
+ },
+ "type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
}
}
},
@@ -30056,6 +30226,11 @@
"requires": {
"has-flag": "^4.0.0"
}
+ },
+ "type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
}
}
},
@@ -30176,6 +30351,11 @@
"requires": {
"has-flag": "^4.0.0"
}
+ },
+ "type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
}
}
},
@@ -31138,6 +31318,12 @@
"resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz",
"integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE="
},
+ "nan": {
+ "version": "2.17.0",
+ "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz",
+ "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==",
+ "optional": true
+ },
"nanoid": {
"version": "3.1.20",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz",
@@ -33356,6 +33542,12 @@
"resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.8.tgz",
"integrity": "sha512-HvPuUQnLp5H7TouGq3kzBeioJmXms1wHy9EGjz2OURWBp4qZO6AfGEcnxts1D/CbwPLRAgTMPCEgYhA3sEM4vw=="
},
+ "react-icons": {
+ "version": "4.7.1",
+ "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.7.1.tgz",
+ "integrity": "sha512-yHd3oKGMgm7zxo3EA7H2n7vxSoiGmHk5t6Ou4bXsfcgWyhfDKMpyKfhHR6Bjnn63c+YXBLBPUql9H4wPJM6sXw==",
+ "requires": {}
+ },
"react-is": {
"version": "16.13.1",
"resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
@@ -35706,9 +35898,11 @@
"integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g=="
},
"type-fest": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
- "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA=="
+ "version": "0.13.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz",
+ "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==",
+ "optional": true,
+ "peer": true
},
"type-is": {
"version": "1.6.18",
@@ -35732,6 +35926,12 @@
"is-typedarray": "^1.0.0"
}
},
+ "typescript": {
+ "version": "3.9.10",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz",
+ "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==",
+ "peer": true
+ },
"unicode-canonical-property-names-ecmascript": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz",
diff --git a/package.json b/package.json
index 4bb76f8..a37b8ee 100644
--- a/package.json
+++ b/package.json
@@ -8,6 +8,7 @@
"@testing-library/user-event": "^12.5.0",
"react": "^17.0.1",
"react-dom": "^17.0.1",
+ "react-icons": "^4.7.1",
"react-router-dom": "^5.2.0",
"react-scripts": "4.0.1",
"web-vitals": "^0.2.4"
diff --git a/src/App.js b/src/App.js
index 7e4ced1..b302ba8 100644
--- a/src/App.js
+++ b/src/App.js
@@ -3,6 +3,7 @@ import './App.css';
import Navbar from './components/Navbar';
import {BrowserRouter as Router , Switch, Route} from 'react-router-dom';
import Home from './components/pages/Home.js'
+import Todolist from './components/Todo/Todolist';
function App() {
@@ -12,6 +13,7 @@ function App() {
+
>
diff --git a/src/components/Navbar.js b/src/components/Navbar.js
index 94f5cbc..ce7b1c6 100644
--- a/src/components/Navbar.js
+++ b/src/components/Navbar.js
@@ -7,7 +7,6 @@ function Navbar() {
const [click , setClick] = useState(false);
const [button, setButton] = useState(true);
-
const handleClick = () =>setClick(!click);
const closeMobileMenu = () =>setClick(false);
@@ -19,10 +18,7 @@ function Navbar() {
setButton(true);
}
};
-
window.addEventListener('resize', showButton);
-
-
return (
<>
+ >
+ )
+}
+export default Task1
+
+
+
diff --git a/src/components/Todo/Todolist.css b/src/components/Todo/Todolist.css
new file mode 100644
index 0000000..97fa33b
--- /dev/null
+++ b/src/components/Todo/Todolist.css
@@ -0,0 +1,166 @@
+* {
+ margin: 0;
+ padding: 0;
+}
+.edit{
+ color: red;
+ margin-top: 0.2rem;
+ margin-left: 0rem;
+}
+.cross{
+ color: red;
+ margin-top: 0.2rem;
+ display: flex;
+ justify-content: left;
+ width: 30px;
+}
+.crosstext{
+max-width: 90%;
+color: red;
+background-color: aqua;
+padding-top: 1px;
+margin-right: 2px;
+font-size: 25px;
+color: black;
+background-color: white;
+border: 1px solid #0d0d8b;
+border-radius: 11px;
+display: flex;
+margin-top: 0.1rem;
+}
+.text{
+color: blue;
+font-size: 30px;
+}
+.container{
+ background-color: white;
+ width: 100%;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ min-height: 80vh;
+ border-radius: 1px;
+}
+.app-wrapper{
+ background-color: blue;
+ min-width: 300px;
+ min-height: 400px;
+ padding: 10px;
+
+ border-radius: 8px;
+ box-shadow: 1px 2px 4px;
+}
+.header h1{
+ color: #fff;
+ text-align: center;
+ margin: 3px 0;
+}
+.task-input{
+ outline: none;
+ width: 260px;
+ padding: 6px;
+ margin-right: 2px;
+ font-size: 15px;
+ color: black;
+ background-color: white;
+ border: 1px solid #c09666;
+ border-radius: 11px;
+}
+.button-add{
+ width: 60px;
+ padding: 3px 1px;
+ font-size: 20px;
+ border-radius: 10px;
+ border: 0;
+ background-color: #c09666;
+ cursor: pointer;
+}
+.list-item{
+ display: flex;
+ margin: 20px 0;
+ border: 1px solid white;
+ padding: 10px;
+ max-height: 30px;
+}
+.button-complete,
+.button-delete,
+.button-edit{
+ border: none;
+ outline: none;
+ cursor: pointer;
+ background-color: transparent;
+ font-size: 28px;
+ border-radius: 50%;
+}
+.button-complete{
+ color: #ff6c6c;
+}
+.button-edit{
+ color: #e2d029;
+ margin-right: 10px;
+}
+.button-delete{
+ color: lightgreen;
+}
+.complete{
+ text-decoration-style:solid;
+ text-decoration-line:line-through;
+ text-decoration-color: #ff6c6c;
+ opacity: 0.5;
+}
+.list{
+ width: 220px;
+ background-color: #123430;
+ border: none;
+ color: #ccc;
+ font-size: 20px;
+ padding-left: 10px;
+ margin-right: 11px;
+}
+input:focus,
+button:focus{
+ outline: none;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/Todo/Todolist.js b/src/components/Todo/Todolist.js
new file mode 100644
index 0000000..0e16ab8
--- /dev/null
+++ b/src/components/Todo/Todolist.js
@@ -0,0 +1,19 @@
+import React from 'react'
+import './Todolist.css';
+
+import Task1 from './Task1';
+
+
+const Todolist =() => {
+ return (
+
+
+
+ )
+}
+export default Todolist