WaitingRoomModalOptions class

Configuration for the waiting-room modal enabling host to accept/reject participants queued for entry.

  • waitingRoomList - Array of WaitingRoomParticipant objects; displayed in scrollable list.
  • waitingRoomCounter - Count of participants in queue; shown in modal header.
  • onWaitingRoomItemPress - Override for respondToWaiting; receives {participantId, participantName, updateWaitingList, waitingList, type, roomName, socket}. type is 'accepted' (admit) or 'rejected' (deny); emits updateWaiting socket event with action.
  • onWaitingRoomFilterChange - Callback when search input changes; filters waitingRoomList by name.
  • updateWaitingList - Updates waitingRoomList in parent state after admit/reject.
  • roomName - Session identifier for socket event.
  • socket - Socket.IO client for emitting updateWaiting event.
  • position - Modal placement via getModalPosition (e.g., 'topRight').
  • backgroundColor - Background color for modal container.
  • parameters - Must expose waitingRoomList, filteredWaitingRoomList, waitingRoomCounter, roomName, socket, updateWaitingRoomList, getUpdatedAllParams.
  • styles - Optional WaitingRoomModalStyleOptions for advanced theming.
  • title / emptyState - Custom widgets for header and empty list placeholder.
  • headerBuilder / searchBuilder / listBuilder / itemBuilder / bodyBuilder / contentBuilder - Builder hooks for granular customization.

Compatible with ModernWaitingRoomModalOptions from the modern component.

Usage

  1. Modal displays header with "Waiting Room" title and counter badge.
  2. Search input filters waitingRoomList by participant name.
  3. Each participant row shows name with "Accept" (green) and "Reject" (red) buttons.
  4. "Accept" button calls onWaitingRoomItemPress with type: 'accepted', emitting updateWaiting socket event with {participantId, participantName, action: 'accepted', roomName}.
  5. "Reject" button calls onWaitingRoomItemPress with type: 'rejected', emitting updateWaiting socket event with {participantId, participantName, action: 'rejected', roomName}.
  6. After admit/reject, updateWaitingList removes participant from queue.
  7. Override via MediasfuUICustomOverrides.waitingRoomModal to inject custom admission logic, pre-admission surveys, or analytics tracking.

Constructors

WaitingRoomModalOptions({required bool isWaitingModalVisible, required VoidCallback onWaitingRoomClose, required int waitingRoomCounter, required dynamic onWaitingRoomFilterChange(String), required List<WaitingRoomParticipant> waitingRoomList, required dynamic updateWaitingList(List<WaitingRoomParticipant>), required String roomName, Socket? socket, RespondToWaitingType onWaitingRoomItemPress = respondToWaiting, String position = "topRight", Color backgroundColor = const Color(0xFF83C0E9), required WaitingRoomModalParameters parameters, WaitingRoomModalStyleOptions? styles, Widget? title, Widget? emptyState, WaitingRoomModalHeaderBuilder? headerBuilder, WaitingRoomModalSearchBuilder? searchBuilder, WaitingRoomModalListBuilder? listBuilder, WaitingRoomModalItemBuilder? itemBuilder, WaitingRoomModalBodyBuilder? bodyBuilder, WaitingRoomModalContentBuilder? contentBuilder, bool isDarkMode = false, bool enableGlassmorphism = false, ModalRenderMode renderMode = ModalRenderMode.modal})

Properties

backgroundColor Color
final
bodyBuilder WaitingRoomModalBodyBuilder?
final
contentBuilder WaitingRoomModalContentBuilder?
final
emptyState Widget?
final
enableGlassmorphism bool
Enable glassmorphism effects for modern styling. Note: Pending modern implementation - placeholder for future glassmorphic UI.
final
hashCode int
The hash code for this object.
no setterinherited
headerBuilder WaitingRoomModalHeaderBuilder?
final
isDarkMode bool
Dark mode toggle for modern styling. Note: Pending modern implementation - placeholder for future glassmorphic UI.
final
isWaitingModalVisible bool
final
itemBuilder WaitingRoomModalItemBuilder?
final
listBuilder WaitingRoomModalListBuilder?
final
onWaitingRoomClose VoidCallback
final
onWaitingRoomFilterChange → dynamic Function(String)
final
onWaitingRoomItemPress RespondToWaitingType
getter/setter pair
parameters WaitingRoomModalParameters
final
position String
final
renderMode ModalRenderMode
Render mode for embedding in different contexts.
final
roomName String
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
searchBuilder WaitingRoomModalSearchBuilder?
final
socket → Socket?
final
styles WaitingRoomModalStyleOptions?
final
title Widget?
final
updateWaitingList → dynamic Function(List<WaitingRoomParticipant>)
final
waitingRoomCounter int
final
waitingRoomList List<WaitingRoomParticipant>
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited