Conversation
goeunpark
left a comment
There was a problem hiding this comment.
Great work, Tori! ✨
Love the additional CSS touches here! 💯 Great job going above and beyond the required features! Your tests pass, your prop and state variables look solid, and your JS looks squeaky clean! This is a well-deserved Green. 🟢
Keep up the great work!
| import './App.css'; | ||
| import chatMessages from './data/messages.json'; | ||
| import messages from './data/messages.json'; | ||
| import { useState } from 'react'; |
There was a problem hiding this comment.
We can combine L1 and L4 into one line because they're both imported from the react library:
import React, { useState } from 'react';
| }; | ||
|
|
||
| ChatLog.propTypes = { | ||
| entries: PropTypes.array.isRequired, |
There was a problem hiding this comment.
We should also add likeCallback as a required prop type.
|
|
||
| const ChatEntry = (props) => { | ||
|
|
||
| const chatEntryClassType = props.sender === 'Vladimir' ? 'local' : 'remote'; |
There was a problem hiding this comment.
Wonderful implementation of the ternary here!
| entries: PropTypes.array.isRequired, | ||
| }; | ||
|
|
||
| export default ChatLog; No newline at end of file |
There was a problem hiding this comment.
Nit: JS wants a new line at the end of the file!
| import React from 'react'; | ||
| import './ChatEntry.css'; | ||
| import PropTypes from 'prop-types'; | ||
| import TimeStamp from './TimeStamp'; |
There was a problem hiding this comment.
Great job using the provided TimeStamp component ✨
No description provided.