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.
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})
Properties
- backgroundColor → Color
-
final
- bodyBuilder → ParticipantsModalBodyBuilder?
-
final
- contentBuilder → ParticipantsModalContentBuilder?
-
final
- emptyState → Widget?
-
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- headerBuilder → ParticipantsModalHeaderBuilder?
-
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
- 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
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