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.

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})

Properties

backgroundColor Color
final
bodyBuilder WaitingRoomModalBodyBuilder?
final
contentBuilder WaitingRoomModalContentBuilder?
final
emptyState Widget?
final
hashCode int
The hash code for this object.
no setterinherited
headerBuilder WaitingRoomModalHeaderBuilder?
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
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