From 001824eb1cd92dd19da0d3db73a87d5799a7a3c0 Mon Sep 17 00:00:00 2001 From: Tapas Adhikary Date: Sun, 17 Apr 2022 21:39:42 +0530 Subject: [PATCH 1/6] =?UTF-8?q?=E2=9C=A8=20Basic=20form=20structure=20of?= =?UTF-8?q?=20the=20social=20card?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/meta/play-meta.js | 13 +++ src/plays/index.js | 1 + src/plays/social-card/CardDetails.jsx | 23 +++++ src/plays/social-card/CardForm.jsx | 138 ++++++++++++++++++++++++++ src/plays/social-card/SocialCard.jsx | 38 +++++++ src/plays/social-card/social-card.css | 0 6 files changed, 213 insertions(+) create mode 100644 src/plays/social-card/CardDetails.jsx create mode 100644 src/plays/social-card/CardForm.jsx create mode 100644 src/plays/social-card/SocialCard.jsx create mode 100644 src/plays/social-card/social-card.css diff --git a/src/meta/play-meta.js b/src/meta/play-meta.js index 7b203caf36..70b5500cf5 100644 --- a/src/meta/play-meta.js +++ b/src/meta/play-meta.js @@ -5,6 +5,7 @@ import { MovieContainer, WhyReact, CounterApp, +SocialCard, //import play here } from "plays"; @@ -75,6 +76,18 @@ export const plays = [ tags: 'JSX, State, Props', github: 'murtuzaalisurti', featured: true + }, { + id: 'pl-social-card', + name: 'Social Card', + description: 'The Social Card helps you telling who you are using photo, name, and other social footprints.', + component: () => {return }, + path: '/plays/social-card', + level: 'Intermediate', + tags: 'Form,Events,ComplexState', + github: 'atapas', + cover: '', + blog: '', + video: '' }, //replace new play item here ]; diff --git a/src/plays/index.js b/src/plays/index.js index 58f8326fda..03dc2a3696 100644 --- a/src/plays/index.js +++ b/src/plays/index.js @@ -6,4 +6,5 @@ export { default as BasicTree } from 'plays/org-tree/BasicTree'; export { default as MovieContainer } from 'plays/movies/MovieContainer'; export { default as WhyReact } from 'plays/why-react/WhyReact'; export { default as CounterApp } from 'plays/counter/CounterApp'; +export { default as SocialCard } from 'plays/social-card/SocialCard'; //add export here diff --git a/src/plays/social-card/CardDetails.jsx b/src/plays/social-card/CardDetails.jsx new file mode 100644 index 0000000000..8fa2c68a05 --- /dev/null +++ b/src/plays/social-card/CardDetails.jsx @@ -0,0 +1,23 @@ + +const CardDetails = () => { + + return ( +
+
+

Card Details

+
+
+
+
+ +
+
+ Social +
+
+
+
+ ); +}; + +export default CardDetails; \ No newline at end of file diff --git a/src/plays/social-card/CardForm.jsx b/src/plays/social-card/CardForm.jsx new file mode 100644 index 0000000000..e282c7f660 --- /dev/null +++ b/src/plays/social-card/CardForm.jsx @@ -0,0 +1,138 @@ + +import { useState } from 'react'; + +const CardForm = () => { + const [state, setState] = useState({ + name: "", + email: "", + photo: "", + bio: "", + website: "", + twitter: "", + linkedIn: "", + showwcase: "", + github: "" + }); + + + const handleChange = evt => { + const name = evt.target.name; + const value = + evt.target.type === "checkbox" ? evt.target.checked : evt.target.value; + setState({ + ...state, + [name]: value + }); + } + + const handleSubmit = evt => { + evt.preventDefault(); + console.log(state); + } + + return ( +
+
+ + +
+
+ + +
+
+ + +
+
+ +