Skip to content

Commit

Permalink
Merge pull request #185 from Asymtode712/ChatEnhFeat
Browse files Browse the repository at this point in the history
FEAT: Enhanced chat interface UI
  • Loading branch information
anshulsoni4 committed Jun 11, 2024
2 parents 5ac2ea3 + 0355cb0 commit dc743e5
Show file tree
Hide file tree
Showing 3 changed files with 80 additions and 19 deletions.
22 changes: 14 additions & 8 deletions src/Components/ChatPage.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -421,18 +421,24 @@ const ChatPage = ({ darkMode, setDarkMode }) => {
onChange={handleTyping}
required
/>
{!micHide && (
<FaMicrophone
<div>
{!micHide && (
<button
type="button"
className="bg-[#6674cc] text-white rounded-full hover:bg-[#4e5ba6] focus:outline-none"
onClick={startListening}
>
<FaMicrophone
size={40}
className={`m-2 mr-3 ${
darkMode ? "text-white" : "text-pure-greys-600"
}`}
className="m-2 mr-3 text-white"
onClick={startListening}
/>
)}
</button>
)}
</div>
<button
type="submit"
className="focus:outline-none focus:ring-2 focus:ring-brand focus:ring-offset-2 cursor-pointer rounded-md bg-brand text-[#fff] bg-[#6674cc] border-brand font-rubik xl:text-lg border xl:px-6 lg:px-6 md:px-6 sm:px-6 h-12 py-2 flex items-center gap-3 text-lg lg:h-[4rem]"
className="focus:outline-none focus:ring-2 focus:ring-brand focus:ring-offset-2 cursor-pointer rounded-md ml-4 bg-brand text-[#fff] bg-[#6674cc] hover:bg-[#4e5ba6] border-brand font-rubik xl:text-lg border xl:px-6 lg:px-6 md:px-6 sm:px-6 h-12 py-2 flex items-center gap-3 text-lg lg:h-[4rem]"
>
Send
<svg
Expand All @@ -456,7 +462,7 @@ const ChatPage = ({ darkMode, setDarkMode }) => {
<button
id="send-location"
onClick={handleSendLocation}
className="focus:outline-none focus:ring-2 focus:ring-brand focus:ring-offset-2 cursor-pointer rounded-md bg-brand text-[#fff] bg-[#6674cc] border-brand font-rubik xl:text-lg border xl:px-6 lg:px-6 md:px-6 sm:px-6 h-12 py-2 flex items-center gap-3 text-lg lg:h-[4rem]"
className="focus:outline-none focus:ring-2 focus:ring-brand focus:ring-offset-2 cursor-pointer rounded-md bg-brand text-[#fff] bg-[#6674cc] hover:bg-[#4e5ba6] border-brand font-rubik xl:text-lg border xl:px-6 lg:px-6 md:px-6 sm:px-6 h-12 py-2 flex items-center gap-3 text-lg lg:h-[4rem]"
>
Send location
<svg
Expand Down
51 changes: 51 additions & 0 deletions src/Components/MessageTemplate.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
.message-container {
position: relative;
margin-top: 20px;
}

.message-box {
position: relative;
max-width: 50%;
padding: 10px;
background-color: #f1f1f1;
border-radius: 10px;
color: white;
}

.message-box .message-info {
font-size: 0.8rem;
margin-bottom: 5px;
}

.message-box .message-text {
font-size: 1rem;
}

.message-box .message-arrow {
position: absolute;
left: -10px;
top: 10px;
width: 0;
height: 0;
border-top: 10px solid transparent;
border-bottom: 10px solid transparent;
border-right: 10px solid #6674cc;
}

.message-container.light .message-box {
background-color: #f1f1f1;
color: #333;
}

.message-container.light .message-box .message-arrow {
border-right: 10px solid #f1f1f1;
}

.message-container.dark .message-box {
background-color: #6674cc;
}

.message-container.dark .message-box .message-arrow {
border-right: 10px solid #6674cc;
}

26 changes: 15 additions & 11 deletions src/Components/MessageTemplate.jsx
Original file line number Diff line number Diff line change
@@ -1,16 +1,20 @@
import React from 'react'
import React from 'react';
import './MessageTemplate.css'
const MessageTemplate = ({ username, createdAt, message, darkMode }) => {
const limitedUsername = username.length > 10 ? username.slice(0, 10) + '...' : username;

const MessageTemplate = ({ username, createdAt, message,darkMode }) => {
const limitedUsername = username.length> 10 ? username.slice(0, 10) + '...' : username;
return (
<div className="message">
<p>
<div className={`message-container ${darkMode ? 'dark' : 'light'}`}>
<div className="message-box">
<p>
<span className={`${darkMode ? 'text-white' : ' text-black'} message__name`}>{limitedUsername}</span>
<span className="message__meta">{createdAt}</span>
<span className={`${darkMode ? 'text-white' : ' text-gray'} message__meta`}>{createdAt}</span>
</p>
<p className={`${darkMode ? 'text-white' : ' text-black'}`}>{message}</p>
</div>
)
}
<p className="message-text">{message}</p>
<div className="message-arrow"></div>
</div>
</div>
);
};

export default MessageTemplate
export default MessageTemplate;

0 comments on commit dc743e5

Please sign in to comment.