Skip to content

Conversation

@TheLonelyOtaku315
Copy link
Collaborator

Pull Request: Enhance Chat Features – URLs, GIFs, Previews, and More

Summary

This pull request includes several updates to improve the chat experience, with a focus on media handling, message parsing, UI updates, and usability enhancements.


Key Changes

URL Handling and Link Previews

  • Added functionality to detect and extract URLs from chat messages.
  • Implemented OpenGraph-based link previews for supported URLs.

GIF Support

  • Integrated Giphy API for searching and displaying GIFs.
  • Improved layout and result loading in the GIF picker.

Quick Messages

  • Introduced a reusable component for sending quick preset messages in chat.

Message Search

  • Added message search with command parsing and input validation.

Sidebar Enhancements

  • Conditionally rendered the information sidebar based on state.
  • Improved handling of user invites and display logic.

UI and Styling Updates

  • Refined layout and responsiveness of various components.
  • Updated light theme colors for better consistency.
  • Applied overflow handling and visual polish to chat cards and previews.

Bug Fixes

  • Fixed incorrect user status display on sign-out.
  • Resolved an issue where all users initially appeared online.

Code and Dependency Updates

  • Removed unused packages such as ngx-linkifyjs and OpenAI.
  • Updated Angular dev dependencies.
  • Refactored chat component logic and styles.

Documentation

  • Added API and class diagrams for:
    • User authentication
    • Team management
    • Chat features

Contributors

  • @TheLonelyOtaku315
  • @likeblossom
  • @francesca-sison

TheLonelyOtaku315 and others added 30 commits March 21, 2025 23:15
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 31 out of 42 changed files in this pull request and generated 1 comment.

Files not reviewed (11)
  • chathaven/architecture/api_diagram.puml: Language not supported
  • chathaven/architecture/class_diagram.puml: Language not supported
  • chathaven/architecture/overall_architecture_sequence_diagram.puml: Language not supported
  • chathaven/frontend/package.json: Language not supported
  • chathaven/frontend/src/app/components/chat/chat.component.css: Language not supported
  • chathaven/frontend/src/app/components/chat/chat.component.html: Language not supported
  • chathaven/frontend/src/app/components/chat/component/channelSideBar/channelSideBar.component.css: Language not supported
  • chathaven/frontend/src/app/components/chat/component/channelSideBar/channelSideBar.component.html: Language not supported
  • chathaven/frontend/src/app/components/chat/component/chatLog/chatLog.component.css: Language not supported
  • chathaven/frontend/src/app/components/chat/component/chatLog/chatLog.component.html: Language not supported
  • chathaven/frontend/src/app/components/chat/component/informationSideBar/informationSideBar.component.css: Language not supported
Comments suppressed due to low confidence (2)

chathaven/backend/src/controllers/urlPreviewController.ts:34

  • Ensure that the Node.js environment supports the global fetch API or consider importing a fetch polyfill, as the import is commented out.
const response = await fetch(apiUrl);

chathaven/frontend/src/app/components/chat/component/chatLog/chatLog.module.ts:6

  • [nitpick] Add a space before the closing brace for consistency, e.g., change to "{ QuickMessagesComponent }".
import { QuickMessagesComponent} from '../../dialogue/quick-messages/quick-messages.component';

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 31 out of 42 changed files in this pull request and generated 1 comment.

Files not reviewed (11)
  • chathaven/architecture/api_diagram.puml: Language not supported
  • chathaven/architecture/class_diagram.puml: Language not supported
  • chathaven/architecture/overall_architecture_sequence_diagram.puml: Language not supported
  • chathaven/frontend/package.json: Language not supported
  • chathaven/frontend/src/app/components/chat/chat.component.css: Language not supported
  • chathaven/frontend/src/app/components/chat/chat.component.html: Language not supported
  • chathaven/frontend/src/app/components/chat/component/channelSideBar/channelSideBar.component.css: Language not supported
  • chathaven/frontend/src/app/components/chat/component/channelSideBar/channelSideBar.component.html: Language not supported
  • chathaven/frontend/src/app/components/chat/component/chatLog/chatLog.component.css: Language not supported
  • chathaven/frontend/src/app/components/chat/component/chatLog/chatLog.component.html: Language not supported
  • chathaven/frontend/src/app/components/chat/component/informationSideBar/informationSideBar.component.css: Language not supported
Comments suppressed due to low confidence (1)

chathaven/frontend/src/app/components/chat/chat.component.ts:92

  • Removing the resize event listener using a new bound function instance may fail to deregister the original listener. Consider storing the bound function in a variable and using that same reference in both addEventListener and removeEventListener.
window.removeEventListener('resize', this.handleResize.bind(this));

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 31 out of 42 changed files in this pull request and generated 2 comments.

Files not reviewed (11)
  • chathaven/architecture/api_diagram.puml: Language not supported
  • chathaven/architecture/class_diagram.puml: Language not supported
  • chathaven/architecture/overall_architecture_sequence_diagram.puml: Language not supported
  • chathaven/frontend/package.json: Language not supported
  • chathaven/frontend/src/app/components/chat/chat.component.css: Language not supported
  • chathaven/frontend/src/app/components/chat/chat.component.html: Language not supported
  • chathaven/frontend/src/app/components/chat/component/channelSideBar/channelSideBar.component.css: Language not supported
  • chathaven/frontend/src/app/components/chat/component/channelSideBar/channelSideBar.component.html: Language not supported
  • chathaven/frontend/src/app/components/chat/component/chatLog/chatLog.component.css: Language not supported
  • chathaven/frontend/src/app/components/chat/component/chatLog/chatLog.component.html: Language not supported
  • chathaven/frontend/src/app/components/chat/component/informationSideBar/informationSideBar.component.css: Language not supported
Comments suppressed due to low confidence (1)

chathaven/backend/src/controllers/urlPreviewController.ts:34

  • Ensure that the runtime environment supports the global fetch API or consider importing a polyfill such as 'node-fetch' if needed.
const response = await fetch(apiUrl);

TheLonelyOtaku315 and others added 15 commits April 9, 2025 21:09
--> auto-login after registration now sends required fields instead of all fields found in sign-up form
…ature

# Conflicts:
#	chathaven/backend/package-lock.json
@francesca-sison
Copy link
Collaborator

login and signup are fixed again!

Copy link
Collaborator

@annniiieee annniiieee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great job on fixing the bug guys! Really enhances the user experience!

@TheLonelyOtaku315 TheLonelyOtaku315 merged commit f05d109 into main Apr 11, 2025
2 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

BUG 0.2 - Direct messages list doesn't display the latest message preview properly

5 participants