- Implemented MeetingParticipantPanelComponent for displaying participant details with moderation controls.
- Created MeetingShareLinkOverlayComponent for sharing meeting links when no participants are present.
- Developed MeetingShareLinkPanelComponent for sharing links within the participant panel.
- Introduced MeetingToolbarButtonsComponent for additional toolbar actions like copying links and leaving meetings.
- Refactored MeetingComponent to utilize new components for participant management and sharing links.
- Updated styles for new components and removed redundant styles from MeetingComponent.
frontend: implement CE-specific meeting component with routing and UI elements
frontend: Enhance meeting components with plugin system
- Added alternative function inputs for event handling in MeetingLobbyComponent, MeetingParticipantPanelComponent, MeetingShareLinkOverlayComponent, MeetingShareLinkPanelComponent, and MeetingToolbarButtonsComponent.
- Introduced MeetingComponentsPlugins interface and MEETING_COMPONENTS_TOKEN for dynamic component injection.
- Updated MeetingComponent to utilize NgComponentOutlet for rendering plugins and prepare inputs for plugin components.
- Removed CE-specific MeetingCEComponent and its associated files, integrating its functionality directly into MeetingComponent.
- Created MEETING_CE_PROVIDERS to configure the plugin system using library components directly.
- Updated routing to use the new MeetingComponent with plugin support.
frontend: Update meeting component to display prejoin screen with lobby plugin
Moves meeting service to a subdirectory
Moves the meeting service to its own subdirectory for better organization.
Updates imports to reflect the new location.
frontend: Refactor dialog component to conditionally render action buttons
frontend: Implement lobby state management and enhance prejoin screen functionality
frontend: Refactor MeetingComponent to streamline service injections and constructor
frontend: Remove unused participantToken variable and add getter for lobbyState participantToken
frontend: Rename lobby.service to meeting-lobby.service
frontend: Refactor MeetingComponent to use MeetingPluginManagerService for plugin inputs and remove deprecated methods
meet.sh: launch testapp with dev command
backend: Added webhook config in .env.test
Adds web component events e2e tests
Introduces end-to-end tests for web component events, covering scenarios such as joining, leaving, and handling meeting closure.
The tests verify correct event emission and payload structure, including reason codes for leave events.
Also, add `test_localstorage_state.json` to git ignore, removing the file.
frontend: Added meeting event handler service
frontend: Enhances meeting component reactivity
Refactors the meeting component to use signals for reactive updates.
This improves performance by reducing unnecessary re-renders and simplifies state management.
- Moves event handling to a dedicated service.
- Introduces signals for participant lists and updates.
- Implements caching for participant panel inputs.
- Improves moderator control visibility logic.
webcomponent: Added moderation e2e tests
refactor(meeting): optimize participant panel item inputs handling
frontend: fix moderator badge rendering in participant panel
refactor(meeting): remove unused services and streamline constructor logic
refactor(meeting): update leave and end meeting handlers to return promises
Consolidates typings compilation scripts into a single, reusable script.
This simplifies the management of typings for different modes by using parameters instead of separate files.
It also improves script maintainability and reduces code duplication.
- Updated import paths in meeting.component.ts, room-recordings.component.ts, view-recording.component.ts, and other service files to use relative paths instead of absolute paths.
- Removed the '@openvidu-meet/shared/*' path mapping from tsconfig.json.
- Added shared-meet-components to pnpm workspace and updated pnpm-lock.yaml to reflect the changes.