From 145d8547771baf9b2417823d6d1e9cd47dc398ef Mon Sep 17 00:00:00 2001 From: Mohit Jain <70198503+codedog001@users.noreply.github.com> Date: Sat, 26 Feb 2022 14:39:31 +0530 Subject: [PATCH] Complete project with images --- package.json | 18 +- public/images/article-icon.png | Bin 0 -> 2727 bytes public/images/clap-icon.png | Bin 0 -> 31439 bytes public/images/close-icon.png | Bin 0 -> 515 bytes public/images/comment-icon.png | Bin 0 -> 4005 bytes public/images/ellipsis.png | Bin 0 -> 297 bytes public/images/event-icon.png | Bin 0 -> 1402 bytes public/images/like-icon.png | Bin 0 -> 15696 bytes public/images/linkedin.png | Bin 341 -> 14937 bytes public/images/photo-icon.png | Bin 0 -> 1473 bytes public/images/shared-comment.png | Bin 0 -> 418 bytes public/images/shared-img.png | Bin 0 -> 235 bytes public/images/shared-vid.png | Bin 0 -> 231 bytes public/images/spin-loading.gif | Bin 0 -> 71979 bytes public/images/video-icon.png | Bin 0 -> 1036 bytes src/App.css | 3 + src/App.js | 29 +- src/actions/actionType.js | 3 + src/actions/index.js | 117 ++++++++ src/components/Header.js | 442 ++++++++++++++++--------------- src/components/Home.js | 136 +++++----- src/components/Leftside.js | 339 +++++++++++++----------- src/components/Login.js | 295 +++++++++++---------- src/components/Main.js | 403 +++++++++++++++++++++++++++- src/components/PostModal.js | 327 +++++++++++++++++++++++ src/components/Rightside.js | 207 ++++++++------- src/firebase.js | 23 ++ src/index.css | 85 +++--- src/index.js | 19 +- src/reducers/articleReducer.js | 25 ++ src/reducers/index.js | 10 + src/reducers/userReducer.js | 19 ++ src/store/index.js | 7 + 33 files changed, 1776 insertions(+), 731 deletions(-) create mode 100644 public/images/article-icon.png create mode 100644 public/images/clap-icon.png create mode 100644 public/images/close-icon.png create mode 100644 public/images/comment-icon.png create mode 100644 public/images/ellipsis.png create mode 100644 public/images/event-icon.png create mode 100644 public/images/like-icon.png create mode 100644 public/images/photo-icon.png create mode 100644 public/images/shared-comment.png create mode 100644 public/images/shared-img.png create mode 100644 public/images/shared-vid.png create mode 100644 public/images/spin-loading.gif create mode 100644 public/images/video-icon.png create mode 100644 src/actions/actionType.js create mode 100644 src/actions/index.js create mode 100644 src/components/PostModal.js create mode 100644 src/firebase.js create mode 100644 src/reducers/articleReducer.js create mode 100644 src/reducers/index.js create mode 100644 src/reducers/userReducer.js create mode 100644 src/store/index.js diff --git a/package.json b/package.json index d0ee9436..b0fadbce 100644 --- a/package.json +++ b/package.json @@ -3,15 +3,21 @@ "version": "0.1.0", "private": true, "dependencies": { - "@testing-library/jest-dom": "^5.11.4", - "@testing-library/react": "^11.1.0", - "@testing-library/user-event": "^12.1.10", + "@testing-library/jest-dom": "^5.16.2", + "@testing-library/react": "^12.1.3", + "@testing-library/user-event": "^13.5.0", + "firebase": "^8.6.1", + "firebase-tools": "^9.11.0", "react": "^17.0.2", "react-dom": "^17.0.2", + "react-player": "^2.9.0", + "react-redux": "^7.2.4", "react-router-dom": "^5.2.0", - "react-scripts": "4.0.3", - "styled-components": "^5.2.3", - "web-vitals": "^1.0.1" + "react-scripts": "^4.0.3", + "redux": "^4.1.0", + "redux-thunk": "^2.3.0", + "styled-components": "^5.3.0", + "web-vitals": "^1.1.2" }, "scripts": { "start": "react-scripts start", diff --git a/public/images/article-icon.png b/public/images/article-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..863e34df4a516f569785d9e548160dd890b01980 GIT binary patch literal 2727 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

738Ga^~f4K6CHW9UdJ(;yB=^fBX3ttZ8PbuXZ=Z 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

    t>xvq$ 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 LNkvXXu0mjfcYnaF literal 0 HcmV?d00001 diff --git a/public/images/ellipsis.png b/public/images/ellipsis.png new file mode 100644 index 0000000000000000000000000000000000000000..2abd4e593cb7456f5e62e5a161f6c8f69f056d11 GIT binary patch literal 297 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 diff --git a/public/images/photo-icon.png b/public/images/photo-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..237f3f82a41dddc7c54c01b503b52c1c8bf61825 GIT binary patch literal 1473 zcmV;y1wQ(TP)tdR80nLSDm<#r%F-3QT3VTt&zPMa1d-F~!;mD@_vC+(Ti6XVu^VPFN8aq)(?yZs z^QJnthvdxaGuHcC&p+}FX6IT$m+sUtuV^mIr!B+OOhn7ah{(O(#+DsW)PfbYxbp9> zT)J~PXTOD>6oEjGJsT;H*%2dLT^l@)5GO2*lgHPK&U8E15fB1I{K?uU@wkXUfg=K; zRN8of4M=&+l-9lK+TihYJJ$p%ODkDZwi-h-0FdPeusu_;J=2io2LLcMgEeKVsVrTY zlTS?%m~k!G5}NM>cpQkPZ%!r>Pd{6?1f=Zi_D^OoZ)vag|9W(txsEnl=2n>(dQzG7 zFc{^QKg=zE7{jBm{DnePrMFcG`V~>GBXFs;j?1m}gkm9nxqX32#>8Zs&*S65?TdtB zA?jK$Q`eeX4iq}%)7BMBzMHy|oIDT=X=cBJ&2iTYe^`Sb$)@ zfce8EV`yM#f+=~K-T1p=edHtHrY+KfQRe_;_R~48# zn3_NvApuIDEfC|S$!7AKor8QJhgzsdMz3qAyTdWLDIDV!kjW*~Rq&`_r~*S1n7Y8L zx(`*SWuqwI%S*^dbmU?FoQtiiv8vAmONHcJ2^)cBne2rCPyB{u>H<;A|Ss%T$TU9h!b#P^SR)3Ey_Csk#RzgN6OR$UJZ1mm!JTCyBQ=VR3_$Y z@kz7at?GO(wAQv{fb*`LcQ`Rh@$~V%<2r0ikv>|_s8(*VBzzHWAiT%ZqstE&DpW_(E bIQrs0qsq#k&i?9k00000NkvXXu0mjfxd*+I literal 0 HcmV?d00001 diff --git a/public/images/shared-comment.png b/public/images/shared-comment.png new file mode 100644 index 0000000000000000000000000000000000000000..6add17d356342b0b20373fc04a417e860079b6dc GIT binary patch literal 418 zcmV;T0bTxyP)4ne zEMN|k7>}R*!a4S^i7njqo7fndxWwO_afyxi-JW=jvo3^b3B2uAx`tLC(hx0t$}9a? zfbeNFI!R~oP=fdm=Chul6q=7~W;t!pq zf%l5JELvF2D-AUJl%C4iOtksfxa~I6n4eh3OMJ=dG~8x@sg$;TQ6V>hXQE>9N_6<_ zii*8$(FW~_N!)mR#xC|cSYDosO4T6U!Hcq`aD-!g#*+NC_kgzi1Aw_hAmM;{iU0rr M07*qoM6N<$f`4?uR{#J2 literal 0 HcmV?d00001 diff --git a/public/images/shared-img.png b/public/images/shared-img.png new file mode 100644 index 0000000000000000000000000000000000000000..ade17228272fa8a9cdc89676a95da8764a9e4789 GIT binary patch literal 235 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjY)RhkE)4%caKYZ?lYt@&JY5_^ zJUZWAGUPhsAmH}UpVcvE?GfpSsIKcCx)t*46JE;NG$`D-Rn2kKNNib0wvdpaN`jn@ zj`5$*U6NL_mQDY4y!6bw{}nIT|0_o%g)U$4{;z`9T^sc3+Pq`Pgg&ebxsLQ0FF0b@c;k- literal 0 HcmV?d00001 diff --git a/public/images/shared-vid.png b/public/images/shared-vid.png new file mode 100644 index 0000000000000000000000000000000000000000..ede42953eab02c386e6d76f9fffd2b6d5befbed3 GIT binary patch literal 231 zcmeAS@N?(olHy`uVBq!ia0vp^QXtI11|(N{`J4k%Y)RhkE)4%caKYZ?lYt_0JY5_^ zJUZWAy~ugUK*a5#eiQeO*65v0d5^f}9{T=@&#IN1RfgA;(yuLt`!HLMn9a drfex-kC8gObe+fh6F_$|c)I$ztaD0e0st^kT{Qpz literal 0 HcmV?d00001 diff --git a/public/images/spin-loading.gif b/public/images/spin-loading.gif new file mode 100644 index 0000000000000000000000000000000000000000..941ee5595725f1d14083142333d4388f452fb9ae GIT binary patch literal 71979 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 literal 0 HcmV?d00001 diff --git a/public/images/video-icon.png b/public/images/video-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..91ad70cc510213d10e09258ccdf3246a06d3491b GIT binary patch literal 1036 zcmV+n1oQieP)x(B-1*nZK&eZjp<4YStydK5f`FJEJ_On zOU-BtH4CkwNPqYPJLsZ{D|MrEqpjKcABe5S%p^*{LZpqQP)LVbFp*T6HtpQwA~V?3 z=En+SXPQ#Dex<(50Ao3VDlN(rO-Hp{+} z@2%YN0$8sCJ$n|{SF3XBs0uwtYX<}om26e)OQ5p&Irde!l1ZcY)o7i2TQi^)sOu1H z1)K@csxu&J-M#}{1xgwT6hPFrZS(^4^e|p1sJcoUweBd-0!~EOv6YY8q1X<^sZ*48 zY?a62M_rkybz21pjGI9i2!nxv^lE4`JQ@f;4ZJAdY6G2n zVAbQ0PNB50Ge|MD`voa%-!7T>S(fB;(*X_zKpSWaAkznTy#^f*ffiP2!{K%FObu?4 zJcyG!&cq6ktt=j$tD)<8SoacS)`K?OuMJ;@-3Qd-WGi7#u;wXP=z&W=z}y+`2EG6`-flh{$r7N-)e58+;^lTHK!k#$P>T~L zz>RA#JqqOsz<`FoL@^jApN)n+4F(|{AOaVEgR>`L;R*y`1cptT{qKFJ{)m&$>SuGP z_Y#jF7nxEngH{cVR8h{p9TapOat%kEpl9;V!wz@tN`XZ zoc$SoABV~f&~OFCCmkJpwCjYr`lg$7i4 z!-k+1z7%19Wex%u7h!1Egetj-{$CO|1oOXeaQI=q1=u;kn2U8DM&g!$LJ1R;0A6+z zGL*y#&}h5>NgINVCUHZs(fB3cT7crl7TYJ_N`U%at(#AjU19)iKKJkbfKvBjH{5JX zn!RSTVSOj~f5!`8^-z=nO5M^|_i7w5_JBND{c3&6wEhcI>XswGp}0jgi6fiOsdvI0 ztV1xH;qc{oK#@o6J1-N$1>jgVL!sG)csw4D$K&xNmVW@X4x__99XwkA0000 { + props.getUserAuth(); +}, []); -function App() { return (

    @@ -22,4 +29,12 @@ function App() { ); } -export default App; +const mapStateToProps = (state) => { + return {}; +}; + +const mapDispatchToProps = (dispatch) => ({ + getUserAuth: () => dispatch(getUserAuth()), +}); + +export default connect(mapStateToProps, mapDispatchToProps)(App); \ No newline at end of file diff --git a/src/actions/actionType.js b/src/actions/actionType.js new file mode 100644 index 00000000..0b9f5804 --- /dev/null +++ b/src/actions/actionType.js @@ -0,0 +1,3 @@ +export const SET_USER = "SET_USER"; +export const SET_LOADING_STATUS = "SET_LOADING_STATUS"; +export const GET_ARTICLES = "GET_ARTICLES"; \ No newline at end of file diff --git a/src/actions/index.js b/src/actions/index.js new file mode 100644 index 00000000..54cd9ebf --- /dev/null +++ b/src/actions/index.js @@ -0,0 +1,117 @@ +import { auth, provider, storage } from '../firebase'; +import db from '../firebase'; +import { SET_USER, SET_LOADING_STATUS, GET_ARTICLES } from './actionType'; + +export const setUser = (payload) => ({ + type: SET_USER, + user: payload, +}) + +export const setLoading = (status) => ({ + type: SET_LOADING_STATUS, + status : status, +}) + +export const getArticles = (payload) => ({ + type: GET_ARTICLES, + payload: payload, +}) + +export function signInAPI() { + return (dispatch) => { + auth + .signInWithPopup(provider) + .then((payload) => { + dispatch(setUser(payload.user)); + }) + .catch((error) => alert(error.message)); + }; +} + +export function getUserAuth() { + return (dispatch) => { + auth.onAuthStateChanged(async (user) => { + if(user) { + dispatch(setUser(user)); + } + }) + } +} + +export function signOutAPI() { + return(dispatch) => { + auth + .signOut() + .then(() => { + dispatch(setUser(null)); + }) + .catch((error) => { + console.log(error.message); + }); + }; +} + +export function postArticleAPI(payload) { + return (dispatch) => { + dispatch(setLoading(true)); + + if(payload.image != '') { + const upload = storage + .ref(`images/${payload.image.name}`) + .put(payload.image); + upload.on('state-changed', (snapshot) => { + const progress = + (snapshot.bytesTransferred / snapshot.totalBytes) * 100; + + console.log(`Progress: ${progress}%`); + if(snapshot.state === 'RUNNING') { + console.log(`Progress: ${progress}%`); + } + }, error => console.log(error.code), + async () => { + const downloadURL = await upload.snapshot.ref.getDownloadURL(); + db.collection("articles").add({ + actor: { + description: payload.user.email, + title: payload.user.displayName, + date: payload.timestamp, + image: payload.user.photoURL + }, + video: payload.video, + sharedImg: downloadURL, + comments: 0, + description: payload.description, + }); + dispatch(setLoading(false)); + }); + } + else if(payload.video) { + db.collection('articles').add({ + actor: { + description: payload.user.email, + title: payload.user.displayName, + date: payload.timestamp, + image: payload.user.photoURL, + }, + video: payload.video, + sharedImg: '', + comments: 0, + description: payload.description, + }); + dispatch(setLoading(false)); + } +}; +} + +export function getArticlesAPI() { + return (dispatch) => { + let payload; + + db.collection('articles') + .orderBy("actor.date", "desc") + .onSnapshot((snapshot) => { + payload = snapshot.docs.map((doc) => doc.data()); + dispatch(getArticles(payload)); + }); + }; +} \ No newline at end of file diff --git a/src/components/Header.js b/src/components/Header.js index 1cfcb32f..4b78ee34 100644 --- a/src/components/Header.js +++ b/src/components/Header.js @@ -1,260 +1,288 @@ -import styled from "styled-components"; +import styled from 'styled-components'; +import { connect } from 'react-redux'; +import { signOutAPI } from '../actions'; const Header = (props) => { - return ( - - - - - - - - -
    - -
    - - - -
    - + + + ); +} const Container = styled.div` - background-color: white; - border-bottom: 1px solid rgba(0, 0, 0, 0.08); - left: 0; - padding: 0 24px; - position: fixed; - top: 0; - width: 100vw; - z-index: 100; + background-color: #ffffff; + border-bottom: 1px solid rgba(0,0,0,0.08); + left: 0; + padding: 0 24px; + top: 0; + position: fixed; + width: 100vw; + z-index: 100; `; const Content = styled.div` - display: flex; - align-items: center; - margin: 0 auto; - min-height: 100%; - max-width: 1128px; + display: flex; + align-items: center; + margin: 0 auto; + min-height: 100%; + max-width: 1128px; `; const Logo = styled.span` - margin-right: 8px; - font-size: 0px; + margin-right: 8px; + font-size: 0px; `; const Search = styled.div` - opacity: 1; - flex-grow: 1; - position: relative; - & > div { - max-width: 280px; - input { - border: none; - box-shadow: none; - background-color: #eef3f8; - border-radius: 2px; - color: rgba(0, 0, 0, 0.9); - width: 218px; - padding: 0 8px 0 40px; - line-height: 1.75; - font-weight: 400; - font-size: 14px; - height: 34px; - border-color: #dce6f1; - vertical-align: text-top; + opacity: 1; + flex-grow: 1; + position: relative; + + & > div { + max-width: 280px; + + input { + border: none; + box-shadow: none; + background-color: #eef3f8; + border-radius: 2px; + color: rgba(0,0,0,0.9); + width: 218px; + padding: 0 8px 0 40px; + line-height: 1.75; + font-weight: 400; + font-size: 14px; + height: 34px; + border-color: #dce6f1; + vertical-align: text-top; + } } - } `; const SearchIcon = styled.div` - width: 40px; - position: absolute; - z-index: 1; - top: 10px; - left: 2px; - border-radius: 0 2px 2px 0; - margin: 0; - pointer-events: none; - display: flex; - justify-content: center; - align-items: center; + width: 40px; + position: absolute; + z-index: 1; + top: 10px; + left: 2px; + border-radius: 0 2px 2px 0; + margin: 0; + pointer-events: none; + display: flex; + justify-content: center; + align-items: center; `; const Nav = styled.nav` - margin-left: auto; - display: block; - @media (max-width: 768px) { - position: fixed; - left: 0; - bottom: 0; - background: white; - width: 100%; - } + margin-left: auto; + display: block; + + @media (max-width: 768px) { + position: fixed; + left: 0; + bottom: 0; + background: #ffffff; + width: 100%; + } `; const NavListWrap = styled.ul` - display: flex; - flex-wrap: nowrap; - list-style-type: none; + display: flex; + flex-wrap: nowrap; + list-style-type: none; - .active { - span:after { - content: ""; - transform: scaleX(1); - border-bottom: 2px solid var(--white, #fff); - bottom: 0; - left: 0; - position: absolute; - transition: transform 0.2s ease-in-out; - width: 100%; - border-color: rgba(0, 0, 0, 0.9); + .active { + span:after { + content: ''; + transform: scaleX(1); + border-bottom: 2px solid var(--white, #ffffff); + bottom: 0; + left: 0; + position: absolute; + transition: transform 0.2s ease-in-out; + width: 100%; + border-color: rgba(0,0,0,0.9); + } } - } `; const NavList = styled.li` - display: flex; - align-items: center; - a { - align-items: center; - background: transparent; display: flex; - flex-direction: column; - font-size: 12px; - font-weight: 400; - justify-content: center; - line-height: 1.5; - min-height: 52px; - min-width: 80px; - position: relative; - text-decoration: none; + align-items: center; - span { - color: rgba(0, 0, 0, 0.6); - display: flex; - align-items: center; - } + a { + align-items: center; + background: transparent; + display: flex; + flex-direction: column; + font-size: 12px; + font-weight: 400; + justify-content: center; + line-height: 1.5; + min-height: 42px; + min-width: 88px; + position: relative; + text-decoration: none; - @media (max-width: 768px) { - min-width: 70px; + span { + color: rgba(0,0,0,0.6); + display: flex; + align-items: center; + } + + @media (max-width: 768px) { + min-width: 70px; + } } - } - &:hover, - &:active { - a { - span { - color: rgba(0, 0, 0, 0.9); - } + &:hover,&:active { + a { + span { + color: rgba(0, 0, 0, 0.9); + } + } } - } `; const SignOut = styled.div` - position: absolute; - top: 45px; - background: white; - border-radius: 0 0 5px 5px; - width: 100px; - height: 40px; - font-size: 16px; - transition-duration: 167ms; - text-align: center; - display: none; + cursor: pointer; + position: absolute; + top: 45px; + background: #ffffff; + border-radius: 0 0 5px 5px; + width: 100px; + box-shadow: 2px 3px 5px -2px rgba(110,104,104,0.75); + height: 40px; + font-size: 16px; + transition-duration: 167ms; + text-align: center; + display: none; `; const User = styled(NavList)` - a > svg { - width: 24px; - border-radius: 50%; - } + a > svg { + padding-top: 5px; + width: 24px; + height: 24px; + border-radius: 50%; + } - a > img { - width: 24px; - height: 24px; - border-radius: 50%; - } + a > img { + width: 24px; + height: 24px; + padding-top: 5px; + border-radius: 50%; + } - span { - display: flex; - align-items: center; - } + span { + display: flex; + align-items: center; + cursor: pointer; + } - &:hover { - ${SignOut} { - align-items: center; - display: flex; - justify-content: center; + &:hover { + ${SignOut} { + align-items: center; + display: flex; + justify-content: center; + } } - } `; const Work = styled(User)` - border-left: 1px solid rgba(0, 0, 0, 0.08); + border-left: 1px solid rgba(0, 0, 0, 0.08); `; -export default Header; +const mapStateToProps = (state) => { + return { + user: state.userState.user, + }; +}; + +const mapDispatchToProps = (dispatch) => ({ + signOut: () => dispatch(signOutAPI()), +}); + +export default connect(mapStateToProps, mapDispatchToProps)(Header); \ No newline at end of file diff --git a/src/components/Home.js b/src/components/Home.js index db0c42ad..31aafd47 100644 --- a/src/components/Home.js +++ b/src/components/Home.js @@ -1,81 +1,91 @@ import styled from "styled-components"; -import Leftside from "./Leftside"; -import Main from "./Main"; -import Rightside from "./Rightside"; - +import Leftside from './Leftside'; +import Main from './Main'; +import Rightside from './Rightside'; +import { Redirect } from 'react-router-dom'; +import { connect } from 'react-redux'; + const Home = (props) => { - return ( - -
    -
    - Hiring in a hurry? - -
    -

    - Find talented pros in record time with Upwork and keep business - moving. -

    -
    - - -
    - - - - ); -}; + return ( + + {!props.user && } +
    +
    + Hiring in a hurry? - +
    +

    Find talents in record time with LinkedIn Premium and unlock special benefits!

    +
    + + + +
    + + + + ); +} const Container = styled.div` - padding-top: 52px; - max-width: 100%; + padding-top: 52px; + max-width: 100%; `; const Content = styled.div` - max-width: 1128px; - margin-left: auto; - margin-right: auto; + max-width: 1120px; + margin-left: auto; + margin-right: auto; `; const Section = styled.section` - min-height: 50px; - padding: 16px 0; - box-sizing: content-box; - text-align: center; - text-decoration: underline; - display: flex; - justify-content: center; - h5 { - color: #0a66c2; - font-size: 14px; - a { - font-weight: 700; + min-height: 50px; + padding: 16px 0; + box-sizing: content-box; + text-align: center; + text-decoration: underline; + display: flex; + justify-content: center; + + h5 { + color: #0a66c2; + font-size: 14px; + + a { + font-weight: 700; + } } - } - p { - font-size: 14px; - color: #434649; - font-weight: 600; - } + p { + font-size: 14px; + color: #434649; + font-weight: 600; + } - @media (max-width: 768px) { - flex-direction: column; - padding: 0 5px; - } + @media (max-width: 768px) { + flex-direction: column; + padding: 0 5px; + } `; const Layout = styled.div` - display: grid; - grid-template-areas: "leftside main rightside"; - grid-template-columns: minmax(0, 5fr) minmax(0, 12fr) minmax(300px, 7fr); - column-gap: 25px; - row-gap: 25px; - /* grid-template-row: auto; */ - margin: 25px 0; - @media (max-width: 768px) { - display: flex; - flex-direction: column; - padding: 0 5px; - } + display: grid; + grid-template-areas: "leftside main rightside"; + grid-template-columns: minmax(0,5fr) minmax(0,12fr) minmax(300px,7fr); + column-gap: 25px; + row-gap: 25px; + margin: 25px 0; + /*grid-template-row: auto;*/ + + @media (max-width: 768px) { + display: flex; + flex-direction: column; + padding: 0 5px; + } `; -export default Home; +const mapStateToProps = (state) => { + return { + user: state.userState.user, + }; +}; + +export default connect(mapStateToProps)(Home); \ No newline at end of file diff --git a/src/components/Leftside.js b/src/components/Leftside.js index b447259a..5516acb2 100644 --- a/src/components/Leftside.js +++ b/src/components/Leftside.js @@ -1,208 +1,225 @@ -import styled from "styled-components"; +import styled from 'styled-components'; +import { connect } from 'react-redux'; const Leftside = (props) => { - return ( - - - - - - - Welcome, there! - - - Add a photo - - - - -
    - Connections - Grow your network -
    - -
    -
    - - - - My Items - - -
    - - - - Groups - - - - Events - - - - - Follow Hashtags - - - Discover more - - -
    - ); + return ( + + + + + + + + Welcome, {props.user ? props.user.displayName : "there"}! + + + + + + + + + +
    + Connections + Grow your network +
    + +
    +
    + + + + + My Items + + +
    + + + + Groups + + + + Events + + + + + Follow Hashtags + + + Discover more + + +
    + ); }; const Container = styled.div` - grid-area: leftside; + grid-area: leftside; `; const ArtCard = styled.div` - text-align: center; - overflow: hidden; - margin-bottom: 8px; - background-color: #fff; - border-radius: 5px; - transition: box-shadow 83ms; - position: relative; - border: none; - box-shadow: 0 0 0 1px rgb(0 0 0 / 15%), 0 0 0 rgb(0 0 0 / 20%); + text-align: center; + overflow: hidden; + margin-bottom: 8px; + background-color: #ffffff; + border-radius: 5px; + transition: box-shadow 83ms; + position: relative; + border: none; + box-shadow: 0 0 0 1px rgb(0 0 0 / 15%), 0 0 0 rgb(0 0 0 / 20%); `; const UserInfo = styled.div` - border-bottom: 1px solid rgba(0, 0, 0, 0.15); - padding: 12px 12px 16px; - word-wrap: break-word; - word-break: break-word; + border-bottom: 1px solid rgba(0,0,0,0.15); + padding: 12px 12px 16px; + word-wrap: break-word; + word-break: break-word; `; const CardBackground = styled.div` - background: url("/images/card-bg.svg"); - background-position: center; - background-size: 462px; - height: 54px; - margin: -12px -12px 0; + background: url('/images/card-bg.svg'); + background-position: center; + background-size: 462px; + height: 54px; + margin: -12px -12px 0; `; const Photo = styled.div` - box-shadow: none; - background-image: url("/images/photo.svg"); - width: 72px; - height: 72px; - box-sizing: border-box; - background-clip: content-box; - background-color: white; - background-position: center; - background-size: 60%; - background-repeat: no-repeat; - border: 2px solid white; - margin: -38px auto 12px; - border-radius: 50%; + box-shadow: none; + background-image: url('/images/photo.svg'); + width: 72px; + height: 72px; + box-sizing: border-box; + background-clip: content-box; + background-color: #ffffff; + background-position: center; + background-size: 60%; + background-repeat: no-repeat; + border: 2px solid #ffffff; + margin : -38px auto 12px; + border-radius: 50%; `; const Link = styled.div` - font-size: 16px; - line-height: 1.5; - color: rgba(0, 0, 0, 0.9); - font-weight: 600; + font-size: 16px; + line-height: 16px; + color: rgba(0,0,0,0.9); + font-weight: 600; `; const AddPhotoText = styled.div` - color: #0a66c2; - margin-top: 4px; - font-size: 12px; - line-height: 1.33; - font-weight: 400; + color: #0a66c2; + margin-top: 4px; + font-size: 12px; + line-height: 1.33; + font-weight: 400; `; const Widget = styled.div` - border-bottom: 1px solid rgba(0, 0, 0, 0.15); - padding-top: 12px; - padding-bottom: 12px; + border-bottom: 1px solid rgba(0,0,0,0.15); + padding-top: 12px; + padding-bottom: 12px; + + & > a { + text-decoration: none; + display: flex; + justify-content: space-between; + align-items: center; + padding: 4px 12px; + + &:hover { + background-color: rgba(0,0,0,0.08); + } - & > a { - text-decoration: none; - display: flex; - justify-content: space-between; - align-items: center; - padding: 4px 12px; + div { + display: flex; + flex-direction: column; + text-align: left; - &:hover { - background-color: rgba(0, 0, 0, 0.08); - } + span { + font-size: 12px; + line-height: 1.333; - div { - display: flex; - flex-direction: column; - text-align: left; - span { - font-size: 12px; - line-height: 1.333; - &:first-child { - color: rgba(0, 0, 0, 0.6); - } - &:nth-child(2) { - color: rgba(0, 0, 0, 1); + &:first-child { + color: rgba(0, 0, 0, 0.6); + } + + &:nth-child(2) { + color: rgba(0, 0, 0, 1); + } + } } - } } - } - svg { - color: rgba(0, 0, 0, 1); - } + svg { + color: rgba(0, 0, 0, 1); + } `; const Item = styled.a` - border-color: rgba(0, 0, 0, 0.8); - text-align: left; - padding: 12px; - font-size: 12px; - display: block; - span { - display: flex; - align-items: center; - color: rgba(0, 0, 0, 1); - svg { - color: rgba(0, 0, 0, 0.6); + border-color: rgba(0, 0, 0, 0.8); + text-align: left; + padding: 12px; + font-size: 12px; + display: block; + + span { + display: flex; + align-items: center; + color: rgba(0, 0, 0, 1); + + svg { + color: rgba(0, 0, 0, 0.6); + } } - } - &:hover { - background-color: rgba(0, 0, 0, 0.08); - } + &:hover { + background-color: rgba(0, 0, 0, 0.08); + } `; const CommunityCard = styled(ArtCard)` - padding: 8px 0 0; - text-align: left; - display: flex; - flex-direction: column; - a { - color: black; - padding: 4px 12px 4px 12px; - font-size: 12px; + padding: 8px 0 0; + text-align: left; + display: flex; + flex-direction: column; - &:hover { - color: #0a66c2; - } + a { + color: #000000; + padding: 4px 12px; + font-size: 12px; - span { - display: flex; - align-items: center; - justify-content: space-between; - } + &:hover { + color: #0a66c2; + } - &:last-child { - color: rgba(0, 0, 0, 0.6); - text-decoration: none; + span { + display: flex; + align-items: center; + justify-content: space-between; + } - border-top: 1px solid #d6cec2; - padding: 12px; - &:hover { - background-color: rgba(0, 0, 0, 0.08); - } + &:last-child { + color: rgba(0,0,0,0.6); + text-decoration: none; + border-top: 1px solid #d6cec2; + padding: 12px; + + &:hover { + background-color: rgba(0,0,0,0.08); + } + } } - } `; -export default Leftside; +const mapStateToProps = (state) => { + return { + user: state.userState.user, + }; +}; + +export default connect(mapStateToProps)(Leftside); \ No newline at end of file diff --git a/src/components/Login.js b/src/components/Login.js index 10bf7e8b..b93a4f92 100644 --- a/src/components/Login.js +++ b/src/components/Login.js @@ -1,169 +1,196 @@ import styled from "styled-components"; +import { connect } from 'react-redux'; +import { signInAPI } from '../actions'; +import { Redirect } from 'react-router'; const Login = (props) => { - return ( - - -
    - -

    Welcome to your professional community

    - -
    -
    - - - Sign in with Google - -
    -
    -
    - ); + return ( + + { + props.user && + + } + + +
    + +

    Welcome to your professional community

    + +
    + +
    + props.signIn()}> + Sign in with Google + +
    +
    +
    + ); }; const Container = styled.div` - padding: 0px; + padding: 0px; `; const Nav = styled.nav` - max-width: 1128px; - margin: auto; - padding: 12px 0 16px; - display: flex; - align-items: center; - position: relative; - justify-content: space-between; - flex-wrap: nowrap; - - & > a { - width: 135px; - height: 34px; - @media (max-width: 768px) { - padding: 0 5px; + max-width: 1128px; + margin: auto; + padding: 12px 0 16px 0; + display: flex; + align-items: center; + position: relative; + justify-content: space-between; + flex-wrap: nowrap; + + & > a { + width: 135px; + height: 34px; + + @media (max-width: 768px) { + padding: 0 5px; + } } - } `; const Join = styled.a` - font-size: 16px; - padding: 10px 12px; - text-decoration: none; - border-radius: 4px; - color: rgba(0, 0, 0, 0.6); - margin-right: 12px; - &:hover { - background-color: rgba(0, 0, 0, 0.08); - color: rgba(0, 0, 0, 0.9); + font-size: 16px; + padding: 10px 12px; text-decoration: none; - } + color: rgba(0, 0, 0, 0.6); + margin-right: 12px; + font-weight: 600; + border-radius: 4px; + + &:hover { + background-color: rgba(0, 0, 0, 0.08); + color: rgba(0, 0, 0, 0.9); + text-decoration: none; + cursor: pointer; + } `; const SignIn = styled.a` - box-shadow: inset 0 0 0 1px #0a66c2; - color: #0a66c2; - border-radius: 24px; - transition-duration: 167ms; - font-size: 16px; - font-weight: 600; - line-height: 40px; - padding: 10px 24px; - text-align: center; - background-color: rgba(0, 0, 0, 0); - &:hover { - background-color: rgba(112, 181, 249, 0.15); + box-shadow: inset 0 0 0 1px #0a66c2; color: #0a66c2; - text-decoration: none; - } + border-radius: 24px; + transition-duration: 167ms; + font-size: 16px; + font-weight: 600; + line-height: 40px; + padding: 12px 23px; + text-align: center; + background-color: rgba(0, 0, 0, 0); + + &:hover { + background-color: rgba(112, 181, 249, 0.15); + color: #0a66c2; + text-decoration: none; + cursor: pointer; + box-shadow: inset 0 0 0 2px #0a66c2; + } `; const Section = styled.section` - display: flex; - align-content: start; - min-height: 700px; - padding-bottom: 138px; - padding-top: 40px; - padding: 60px 0; - position: relative; - flex-wrap: wrap; - width: 100%; - max-width: 1128px; - align-items: center; - margin: auto; - - @media (max-width: 768px) { + display: flex; + align-content: start; + min-height: 700px; + padding-bottom: 138px; + padding-top: 40px; + padding: 60px 0; + position: relative; + flex-wrap: wrap; + width: 100%; + align-items: center; margin: auto; - min-height: 0px; - } + + @media (max-width: 768px) { + margin: auto; + min-height: 0px; + } `; const Hero = styled.div` - width: 100%; - h1 { - padding-bottom: 0; - width: 55%; - font-size: 56px; - color: #2977c9; - font-weight: 200; - line-height: 70px; - @media (max-width: 768px) { - text-align: center; - font-size: 20px; - width: 100%; - line-height: 2; + width: 100%; + h1 { + padding-bottom: 0; + width: 55%; + font-size: 53px; + color: #2977c9; + font-weight: 200; + line-height: 70px; + + @media (max-width: 768px) { + text-align: center; + font-size: 20px; + width: 100%; + width: 100%; + line-height: 2; + } } - } - - img { - /* z-index: -1; */ - width: 700px; - height: 670px; - position: absolute; - bottom: -2px; - right: -150px; - @media (max-width: 768px) { - top: 230px; - width: initial; - position: initial; - height: initial; + + img { + /*z-index: -1;*/ + width: 700px; + height: 670px; + position: absolute; + bottom: -2px; + right: -150px; + + @media (max-width: 768px) { + top: 230px; + width: initial; + position: initial; + height: initial; + } } - } `; const Form = styled.div` - margin-top: 100px; - width: 408px; - @media (max-width: 768px) { - margin-top: 20px; - } + margin-top: 100px; + width: 408px; + @media (max-width: 768px) { + margin-top: 20px; + } `; const Google = styled.button` - display: flex; - justify-content: center; - background-color: #fff; - align-items: center; - height: 56px; - width: 100%; - border-radius: 28px; - box-shadow: inset 0 0 0 1px rgb(0 0 0 / 60%), - inset 0 0 0 2px rgb(0 0 0 / 0%) inset 0 0 0 1px rgb(0 0 0 / 0); - - vertical-align: middle; - z-index: 0; - transition-duration: 167ms; - font-size: 20px; - color: rgba(0, 0, 0, 0.6); - &:hover { - background-color: rgba(207, 207, 207, 0.25); - color: rgba(0, 0, 0, 0.75); - } + display: flex; + justify-content: center; + background-color: #fff; + align-items: center; + height: 56px; + width: 100%; + border-radius: 28px; + box-shadow: inset 0 0 0 1px rgba(0 0 0 / 60%), inset 0 0 0 2px rgb(0 0 0 / 0%) inset 0 0 0 1px rgb(0 0 0 / 0%); + vertical-align: middle; + z-index: 0; + transition-duration: 167ms; + font-size: 20px; + color: rgba(0, 0 , 0, 0.6); + + &:hover { + background-color: rgba(207, 207, 207, 0.25); + color: rgba(0, 0, 0, 0.75); + cursor: pointer; + } `; -export default Login; +const mapStateToProps = (state) => { + return { + user: state.userState.user, + }; +}; + +const mapDispatchToProps = (dispatch) => ({ + signIn: () => dispatch(signInAPI()), +}); + +export default connect(mapStateToProps, mapDispatchToProps)(Login); \ No newline at end of file diff --git a/src/components/Main.js b/src/components/Main.js index fd6e2d54..555a10e2 100644 --- a/src/components/Main.js +++ b/src/components/Main.js @@ -1,11 +1,406 @@ -import styled from "styled-components"; +import { useEffect, useState } from 'react'; +import styled from 'styled-components'; +import PostModal from './PostModal'; +import ReactPlayer from 'react-player'; +import { connect } from 'react-redux'; +import { getArticlesAPI } from '../actions'; const Main = (props) => { - return Main; + const [showModal, setShowModal] = useState("close"); + + useEffect(() => { + props.getArticles() + }, []); + + const handleClick = (e) => { + e.preventDefault(); + if(e.target !== e.currentTarget) { + return; + } + + switch(showModal) { + case "open": + setShowModal("close"); + break; + case "close": + setShowModal("open"); + break; + default: + setShowModal("close"); + break; + } + } + + return ( + // <> + // { props.articles.length === 0 ? ( + //

    No articles to show.

    + // ) : + // ( + + +
    + { props.user && props.user.photoURL ? + () + : + () + } + +
    + +
    + + + + + + + +
    +
    + + + { + props.loading && + } + { + props.articles.length != 0 && + props.articles.map((article, key) => ( + + + )) + } + + + +
    + // ) + // } + // + ); }; const Container = styled.div` - grid-area: main; + grid-area: main; `; -export default Main; +const CommonCard = styled.div` + text-align: center; + overflow: hidden; + margin-bottom: 8px; + background-color: #fff; + border-radius: 5px; + position: relative; + border: none; + border-radius: 0 0 0 1px rgb(0 0 0 / 15%), 0 0 0 rgb(0 0 0 / 20%); +`; + +const ShareBox = styled(CommonCard)` + display: flex; + flex-direction: column; + color: #958b7b; + margin: 0 0 8px 0; + background: #fff; + + div { + button { + outline: none; + color: rgba(0,0,0,0.6); + font-size: 14px; + line-height: 1.5; + min-height: 48px; + background: transparent; + border: none; + display: flex; + align-items: center; + font-weight: 600; + + &:hover { + background-color: rgba(0,0,0,0.07); + border-radius: 6px; + } + } + + .post-space { + box-shadow: 1px 1px 2px 1px rgba(159,156,156,0.75); + } + + .post-icon { + width: 27px; + } + + &:first-child { + display: flex; + align-items: center; + padding: 8px 16px; + + img { + width: 48px; + margin-right: 8px; + border-radius: 50%; + } + + button { + margin: 4px 0; + flex-grow: 1; + border-radius: 35px; + padding-left: 16px; + border: 1px solid rgba(0,0,0,0,15); + border-radius: 35px; + background-color: #fff; + text-align: left; + } + } + + &:nth-child(2) { + display: flex; + flex-wrap: wrap; + justify-content: space-around; + padding-bottom: 4px; + + button { + img { + margin: 0 4px 0 -2px; + } + + span { + color: #70b5f9; + } + } + } + } +`; + +const Article = styled(CommonCard)` + padding: 0; + margin: 0 0 8px; + overflow: visible; +`; + +const SharedActor = styled.div` + padding-right: 40px; + flex-wrap: nowrap; + padding: 12px 16px 0; + margin-bottom: 8px; + align-items: center; + display: flex; + + a { + margin-right: 12px; + flex-grow: 1; + overflow: hidden; + display: flex; + text-decoration: none; + + img { + width: 48px; + height: 48px; + } + + & > div { + display: flex; + flex-direction: column; + flex-grow: 1; + flex-basis: 0; + margin-left: 8px; + overflow: hidden; + + span { + text-align: left; + + &:first-child { + font-size: 14px; + font-weight: 700; + color: rgba(0, 0, 0, 1); + } + + &:nth-child(n+1) { + font-size: 12px; + color: rgba(0,0,0,0.6); + } + } + } + } + + button { + position: absolute; + right: 12px; + outline: none; + border: none; + top: 0; + background: transparent; + } +`; + +const Description = styled.div` + padding: 0 16px; + overflow: hidden; + color: rgba(0,0,0,0.9); + font-size: 14px; + text-align: left; +`; + +const SharedImage = styled.div` + margin-top: 8px; + width: 100%; + display: block; + position: relative; + background-color: #f9fafb; + + img { + object-fit: contain; + width: 100%; + height: 100%; + } +`; + +const SocialCounts = styled.ul` + line-height: 100%; + display: flex; + align-items: flex-start; + overflow: auto; + list-style: none; + margin: 0 16px; + padding: 8px 0; + border-bottom: 1px solid #e9e5df; + + li { + margin-right: 5px; + font-size: 12px; + + button { + display: flex; + border: none; + background: #fff; + } + } + + img { + width: 18px; + } +`; + +const SocialActions = styled.div` + align-items: center; + display: flex; + justify-content: center; + margin: 0; + min-height: 40px; + padding: 4px 8px; + + button { + display: inline-flex; + align-items: center; + padding: 8px; + color: #0a66c2; + border: none; + background-color: #fff; + + @media (min-width: 768px) { + span { + margin-left: 8px; + } + } + } +`; + +const Content = styled.div` + text-align: center; + & > img { + width: 30px; + } +`; + +const mapStateToProps = (state) => { + return { + loading: state.articleState.loading, + user: state.userState.user, + articles: state.articleState.articles, + } +} + +const mapDispatchToProps = (dispatch) => ({ + getArticles: () => dispatch(getArticlesAPI()), +}) + +export default connect(mapStateToProps, mapDispatchToProps) (Main); \ No newline at end of file diff --git a/src/components/PostModal.js b/src/components/PostModal.js new file mode 100644 index 00000000..8e57e3a2 --- /dev/null +++ b/src/components/PostModal.js @@ -0,0 +1,327 @@ +import { useState } from 'react'; +import styled from 'styled-components'; +import ReactPlayer from 'react-player'; +import { connect } from 'react-redux'; +import firebase from 'firebase'; +import { postArticleAPI } from '../actions'; + +const PostModal = (props) => { + const [editorText, setEditorText] = useState(''); + const [sharedImage, setSharedImage] = useState(''); + const [videoLink, setVideoLink] = useState(''); + const [assetArea, setAssetArea] = useState(''); + + const handleChange = (e) => { + const image = e.target.files[0]; + + if(image === '' || image === undefined) + { + alert(`not an image, the file is a ${typeof image}`); + return; + } + setSharedImage(image); + }; + + const switchAssetArea = (area) => { + setSharedImage(''); + setVideoLink(''); + setAssetArea(area); + }; + + const postArticle = (e) => { + e.preventDefault(); + if(e.target !== e.currentTarget) + { + return; + } + + const payload = { + image: sharedImage, + video: videoLink, + user: props.user, + description: editorText, + timestamp: firebase.firestore.Timestamp.now(), + }; + + props.postArticle(payload); + reset(e); + }; + + const reset = (e) => { + setEditorText(""); + setSharedImage(''); + setVideoLink(''); + setAssetArea(''); + props.handleClick(e); + } + + return ( + <> + { props.showModal === "open" && + + +
    +

    Create a post

    + +
    + + + + {props.user.photoURL ? ( + + ) : ( + + )} + + {props.user.displayName} + + + + +