{"ast":null,"code":"var _jsxFileName = \"C:\\\\Users\\\\user\\\\Desktop\\\\05mediaSocial\\\\client\\\\src\\\\components\\\\Post\\\\CardComments.js\",\n  _s = $RefreshSig$();\n// import React, { useState } from \"react\";\n// import { useDispatch,useSelector } from \"react-redux\";\n// import { isEmpty } from \"../Utils\";\n\n// const CardComments=(post)=>{\n//     const{Text,setText}=useState(\"\");\n//     const usersData=useSelector((state)=>state.usersReducer)\n//     const userData=useSelector((state)=>state.userReducer)\n//     const dispatch=useDispatch();\n\n//     const handleComment=()=>{\n\n//     }\n\n//     return(\n//         <div className=\"comments-container\">\n//             {post.comments.map((comment)=>{\n//                 return(\n//                     <div className=\n//                     {comment.commenterId === userData._id \n//                     ? \"comment-container client\" \n//                     : \"comment-container\"\n//                      }\n//                      key={comment._id}>\n\n//                         <div className=\"left-part\">\n//                         <img\n//               src={\n//                 !isEmpty(usersData[0]) &&\n//                 usersData\n//                   .map((user) => {\n//                     if (user._id === comment.commenterId) return user.picture;\n//                     else return null;\n//                   })\n//                   .join(\"\")\n//               }\n//               alt=\"commenter-pic\"/>\n//                         </div>\n//                     </div>\n\n//                 )\n//             })}\n//         </div>\n//     )\n// };\n\n// export default CardComments\n\nimport React, { useState } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { addComment, getPosts } from \"../../actions/post.actions\";\nimport FollowHandler from \"../profil/FollowHandler\";\nimport { isEmpty, timestampParser } from \"../Utils\";\nimport EditDeleteComment from \"./EditDeleteComment\";\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nconst CardComments = _ref => {\n  _s();\n  let {\n    post\n  } = _ref;\n  const [text, setText] = useState(\"\");\n  const usersData = useSelector(state => state.usersReducer);\n  const userData = useSelector(state => state.userReducer);\n  const dispatch = useDispatch();\n  const handleComment = e => {\n    e.preventDefault();\n    if (text) {\n      dispatch(addComment(post._id, userData._id, text, userData.pseudo)).then(() => dispatch(getPosts())).then(() => setText(''));\n    }\n  };\n  return /*#__PURE__*/_jsxDEV(\"div\", {\n    className: \"comments-container\",\n    children: [post.comments.map(comment => {\n      return /*#__PURE__*/_jsxDEV(\"div\", {\n        className: comment.commenterId === userData._id ? \"comment-container client\" : \"comment-container\",\n        children: [/*#__PURE__*/_jsxDEV(\"div\", {\n          className: \"left-part\",\n          children: /*#__PURE__*/_jsxDEV(\"img\", {\n            src: !isEmpty(usersData[0]) && usersData.map(user => {\n              if (user._id === comment.commenterId) return user.picture;else return null;\n            }).join(\"\"),\n            alt: \"commenter-pic\"\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 86,\n            columnNumber: 15\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 85,\n          columnNumber: 13\n        }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n          className: \"right-part\",\n          children: [/*#__PURE__*/_jsxDEV(\"div\", {\n            className: \"comment-header\",\n            children: [/*#__PURE__*/_jsxDEV(\"div\", {\n              className: \"pseudo\",\n              children: [/*#__PURE__*/_jsxDEV(\"h3\", {\n                children: comment.commenterPseudo\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 102,\n                columnNumber: 19\n              }, this), comment.commenterId !== userData._id && /*#__PURE__*/_jsxDEV(FollowHandler, {\n                idToFollow: comment.commenterId,\n                type: \"card\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 104,\n                columnNumber: 21\n              }, this)]\n            }, void 0, true, {\n              fileName: _jsxFileName,\n              lineNumber: 101,\n              columnNumber: 17\n            }, this), /*#__PURE__*/_jsxDEV(\"span\", {\n              children: timestampParser(comment.timestamp)\n            }, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 110,\n              columnNumber: 17\n            }, this)]\n          }, void 0, true, {\n            fileName: _jsxFileName,\n            lineNumber: 100,\n            columnNumber: 15\n          }, this), /*#__PURE__*/_jsxDEV(\"p\", {\n            children: comment.text\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 112,\n            columnNumber: 15\n          }, this), /*#__PURE__*/_jsxDEV(EditDeleteComment, {\n            comment: comment,\n            postId: post._id\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 113,\n            columnNumber: 15\n          }, this)]\n        }, void 0, true, {\n          fileName: _jsxFileName,\n          lineNumber: 99,\n          columnNumber: 13\n        }, this)]\n      }, comment._id, true, {\n        fileName: _jsxFileName,\n        lineNumber: 77,\n        columnNumber: 11\n      }, this);\n    }), userData._id && /*#__PURE__*/_jsxDEV(\"form\", {\n      action: \"\",\n      onSubmit: handleComment,\n      className: \"comment-form\",\n      children: [/*#__PURE__*/_jsxDEV(\"input\", {\n        type: \"text\",\n        name: \"text\",\n        onChange: e => setText(e.target.value),\n        value: text,\n        placeholder: \"Laisser un commentaire\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 120,\n        columnNumber: 11\n      }, this), /*#__PURE__*/_jsxDEV(\"br\", {}, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 127,\n        columnNumber: 11\n      }, this), /*#__PURE__*/_jsxDEV(\"input\", {\n        type: \"submit\",\n        value: \"Envoyer\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 128,\n        columnNumber: 11\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 119,\n      columnNumber: 9\n    }, this)]\n  }, void 0, true, {\n    fileName: _jsxFileName,\n    lineNumber: 74,\n    columnNumber: 5\n  }, this);\n};\n_s(CardComments, \"ZHyW6oEmvqsEpl2vcMvFa+6fKc4=\", false, function () {\n  return [useSelector, useSelector, useDispatch];\n});\n_c = CardComments;\nexport default CardComments;\nvar _c;\n$RefreshReg$(_c, \"CardComments\");","map":{"version":3,"names":["React","useState","useDispatch","useSelector","addComment","getPosts","FollowHandler","isEmpty","timestampParser","EditDeleteComment","CardComments","post","text","setText","usersData","state","usersReducer","userData","userReducer","dispatch","handleComment","e","preventDefault","_id","pseudo","then","comments","map","comment","commenterId","user","picture","join","commenterPseudo","timestamp","target","value"],"sources":["C:/Users/user/Desktop/05mediaSocial/client/src/components/Post/CardComments.js"],"sourcesContent":["// import React, { useState } from \"react\";\r\n// import { useDispatch,useSelector } from \"react-redux\";\r\n// import { isEmpty } from \"../Utils\";\r\n\r\n\r\n// const CardComments=(post)=>{\r\n//     const{Text,setText}=useState(\"\");\r\n//     const usersData=useSelector((state)=>state.usersReducer)\r\n//     const userData=useSelector((state)=>state.userReducer)\r\n//     const dispatch=useDispatch();\r\n\r\n//     const handleComment=()=>{\r\n\r\n//     }\r\n\r\n//     return(\r\n//         <div className=\"comments-container\">\r\n//             {post.comments.map((comment)=>{\r\n//                 return(\r\n//                     <div className=\r\n//                     {comment.commenterId === userData._id \r\n//                     ? \"comment-container client\" \r\n//                     : \"comment-container\"\r\n//                      }\r\n//                      key={comment._id}>\r\n\r\n//                         <div className=\"left-part\">\r\n//                         <img\r\n//               src={\r\n//                 !isEmpty(usersData[0]) &&\r\n//                 usersData\r\n//                   .map((user) => {\r\n//                     if (user._id === comment.commenterId) return user.picture;\r\n//                     else return null;\r\n//                   })\r\n//                   .join(\"\")\r\n//               }\r\n//               alt=\"commenter-pic\"/>\r\n//                         </div>\r\n//                     </div>\r\n\r\n//                 )\r\n//             })}\r\n//         </div>\r\n//     )\r\n// };\r\n\r\n// export default CardComments\r\n\r\nimport React, { useState } from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { addComment, getPosts } from \"../../actions/post.actions\";\r\nimport FollowHandler from \"../profil/FollowHandler\";\r\nimport { isEmpty, timestampParser } from \"../Utils\";\r\nimport EditDeleteComment from \"./EditDeleteComment\";\r\n\r\nconst CardComments = ({ post }) => {\r\n  const [text, setText] = useState(\"\");\r\n  const usersData = useSelector((state) => state.usersReducer);\r\n  const userData = useSelector((state) => state.userReducer);\r\n  const dispatch = useDispatch();\r\n\r\n  const handleComment = (e) => {\r\n    e.preventDefault();\r\n\r\n    if (text) {\r\n      dispatch(addComment(post._id, userData._id, text, userData.pseudo))\r\n        .then(() => dispatch(getPosts()))\r\n        .then(() => setText(''));\r\n    }\r\n  };\r\n\r\n  return (\r\n    <div className=\"comments-container\">\r\n      {post.comments.map((comment) => {\r\n        return (\r\n          <div\r\n            className={\r\n              comment.commenterId === userData._id\r\n                ? \"comment-container client\"\r\n                : \"comment-container\"\r\n            }\r\n            key={comment._id}\r\n          >\r\n            <div className=\"left-part\">\r\n              <img\r\n                src={\r\n                  !isEmpty(usersData[0]) &&\r\n                  usersData\r\n                    .map((user) => {\r\n                      if (user._id === comment.commenterId) return user.picture;\r\n                      else return null;\r\n                    })\r\n                    .join(\"\")\r\n                }\r\n                alt=\"commenter-pic\"\r\n              />\r\n            </div>\r\n            <div className=\"right-part\">\r\n              <div className=\"comment-header\">\r\n                <div className=\"pseudo\">\r\n                  <h3>{comment.commenterPseudo}</h3>\r\n                  {comment.commenterId !== userData._id && (\r\n                    <FollowHandler\r\n                      idToFollow={comment.commenterId}\r\n                      type={\"card\"}\r\n                    />\r\n                  )}\r\n                </div>\r\n                <span>{timestampParser(comment.timestamp)}</span>\r\n              </div>\r\n              <p>{comment.text}</p>\r\n              <EditDeleteComment comment={comment} postId={post._id} />\r\n            </div>\r\n          </div>\r\n        );\r\n      })}\r\n      {userData._id && (\r\n        <form action=\"\" onSubmit={handleComment} className=\"comment-form\">\r\n          <input\r\n            type=\"text\"\r\n            name=\"text\"\r\n            onChange={(e) => setText(e.target.value)}\r\n            value={text}\r\n            placeholder=\"Laisser un commentaire\"\r\n          />\r\n          <br />\r\n          <input type=\"submit\" value=\"Envoyer\" />\r\n        </form>\r\n      )}\r\n    </div>\r\n  );\r\n};\r\n\r\nexport default CardComments;\r\n"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}