ConfirmHereModalOptions class

Configuration for the presence-confirmation modal with countdown timer and dismissal logic.

  • countdownDuration - Duration in seconds before auto-dismiss (default: 120s).
  • socket - Socket.IO client for emitting updateConsumingDomains event (server-side presence tracking).
  • localSocket - Local socket for emitting updateConsumingDomains event (local presence tracking).
  • roomName - Session identifier for socket events.
  • member - Current user's name; sent in socket event.
  • backgroundColor - Background color for modal container.
  • displayColor - Text color for message and countdown.
  • position - Modal placement via getModalPosition (e.g., 'center').
  • styles - Optional ConfirmHereModalStyleOptions for advanced theming.
  • heading / description / loader / countdownLabel / confirmButton - Custom widgets for sections.
  • loaderBuilder / messageBuilder / countdownBuilder / buttonBuilder / bodyBuilder / contentBuilder / overlayBuilder - Builder hooks for granular customization.

Usage

  1. Modal displays "Confirm you are still active" message with countdown timer.
  2. Countdown starts at countdownDuration seconds, decrements every second.
  3. "Confirm" button emits updateConsumingDomains socket event with {roomName, member, alt: true}, then closes modal.
  4. If countdown reaches 0, modal auto-dismisses via onConfirmHereClose.
  5. Override via MediasfuUICustomOverrides.confirmHereModal to inject custom inactivity logic, biometric checks, or analytics tracking.

Constructors

ConfirmHereModalOptions({required bool isConfirmHereModalVisible, required VoidCallback onConfirmHereClose, Socket? socket, Socket? localSocket, required String roomName, required String member, Color backgroundColor = const Color(0xFF83c0e9), Color displayColor = Colors.black, int countdownDuration = 120, String position = 'center', ConfirmHereModalStyleOptions? styles, Widget? heading, Widget? description, Widget? loader, Widget? countdownLabel, Widget? confirmButton, ConfirmHereModalLoaderBuilder? loaderBuilder, ConfirmHereModalMessageBuilder? messageBuilder, ConfirmHereModalCountdownBuilder? countdownBuilder, ConfirmHereModalButtonBuilder? buttonBuilder, ConfirmHereModalBodyBuilder? bodyBuilder, ConfirmHereModalContentBuilder? contentBuilder, ConfirmHereModalOverlayBuilder? overlayBuilder})

Properties

backgroundColor Color
final
bodyBuilder ConfirmHereModalBodyBuilder?
final
buttonBuilder ConfirmHereModalButtonBuilder?
final
confirmButton Widget?
final
contentBuilder ConfirmHereModalContentBuilder?
final
countdownBuilder ConfirmHereModalCountdownBuilder?
final
countdownDuration int
final
countdownLabel Widget?
final
description Widget?
final
displayColor Color
final
hashCode int
The hash code for this object.
no setterinherited
heading Widget?
final
isConfirmHereModalVisible bool
final
loader Widget?
final
loaderBuilder ConfirmHereModalLoaderBuilder?
final
localSocket → Socket?
final
member String
final
messageBuilder ConfirmHereModalMessageBuilder?
final
onConfirmHereClose VoidCallback
final
overlayBuilder ConfirmHereModalOverlayBuilder?
final
position String
final
roomName String
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
socket → Socket?
final
styles ConfirmHereModalStyleOptions?
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