ParticipantsModalOptions class
Configuration payload for ParticipantsModal.
Powers the participants list modal used throughout MediaSFU experiences, exposing hooks for moderation actions and custom rendering layers:
isParticipantsModalVisible/onParticipantsClose: control visibility and handle dismissal.onMuteParticipants,onMessageParticipants,onRemoveParticipants: optional function overrides for custom moderation workflows, analytics, or permission checks before invoking the default handlers.RenderParticipantList/RenderParticipantListOthers: swap the default participant list widgets to apply custom styling, sorting, or additional columns.position: string (e.g.,'topRight','center') controlling modal placement viagetModalPosition.styles: optional ParticipantsModalStyleOptions for width, height, decorations, and badge theming.- Builder hooks (
headerBuilder,searchBuilder,listsBuilder,bodyBuilder,contentBuilder) let you wrap or replace individual sections without reimplementing permission logic.
Use this options object via MediasfuUICustomOverrides.participantsModal to
deliver branded UX, integrate advanced filtering, or add participant notes.
Compatible with ModernParticipantsModalOptions from the modern component.
Constructors
-
ParticipantsModalOptions({required bool isParticipantsModalVisible, required VoidCallback onParticipantsClose, required ValueChanged<
String> onParticipantsFilterChange, required int participantsCounter, MuteParticipantsType onMuteParticipants = muteParticipants, MessageParticipantsType onMessageParticipants = messageParticipants, RemoveParticipantsType onRemoveParticipants = removeParticipants, ParticipantListType RenderParticipantList = defaultParticipantList, ParticipantListOthersType RenderParticipantListOthers = defaultParticipantListOthers, Color backgroundColor = const Color(0xFF83C0E9), String position = 'topRight', required ParticipantsModalParameters parameters, ParticipantsModalStyleOptions? styles, Widget? title, Widget? emptyState, ParticipantsModalHeaderBuilder? headerBuilder, ParticipantsModalSearchBuilder? searchBuilder, ParticipantsModalListsBuilder? listsBuilder, ParticipantsModalBodyBuilder? bodyBuilder, ParticipantsModalContentBuilder? contentBuilder, bool isDarkMode = false, bool enableGlassmorphism = false, bool useModernParticipantList = false, ModalRenderMode renderMode = ModalRenderMode.modal})
Properties
- backgroundColor → Color
-
final
- bodyBuilder → ParticipantsModalBodyBuilder?
-
final
- contentBuilder → ParticipantsModalContentBuilder?
-
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 → ParticipantsModalHeaderBuilder?
-
final
- isDarkMode → bool
-
Dark mode toggle for modern styling.
Note: Pending modern implementation - placeholder for future glassmorphic UI.
final
- isParticipantsModalVisible → bool
-
final
- listsBuilder → ParticipantsModalListsBuilder?
-
final
- onMessageParticipants → MessageParticipantsType
-
final
- onMuteParticipants → MuteParticipantsType
-
final
- onParticipantsClose → VoidCallback
-
final
-
onParticipantsFilterChange
→ ValueChanged<
String> -
final
- onRemoveParticipants → RemoveParticipantsType
-
final
- parameters → ParticipantsModalParameters
-
final
- participantsCounter → int
-
final
- position → String
-
final
- renderMode → ModalRenderMode
-
Render mode for embedding in different contexts.
final
- RenderParticipantList → ParticipantListType
-
final
- RenderParticipantListOthers → ParticipantListOthersType
-
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- searchBuilder → ParticipantsModalSearchBuilder?
-
final
- styles → ParticipantsModalStyleOptions?
-
final
- title → Widget?
-
final
- useModernParticipantList → bool
-
Whether to use the modern participant list component.
Note: Pending modern implementation - placeholder for future glassmorphic UI.
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
Static Methods
-
defaultParticipantList(
{required ParticipantListOptions options}) → Widget -
defaultParticipantListOthers(
{required ParticipantListOthersOptions options}) → Widget