permissionUpdated function

Future<void> permissionUpdated(
  1. PermissionUpdatedOptions options
)

Handles the permissionUpdated socket event. Called when the host changes a participant's permission level.

Example:

socket.on("permissionUpdated", (data) async {
  await permissionUpdated(PermissionUpdatedOptions(
    data: PermissionUpdatedData.fromMap(data),
    showAlert: showAlert,
    updateIslevel: (level) => setState(() => islevel = level),
  ));
});

Implementation

Future<void> permissionUpdated(PermissionUpdatedOptions options) async {
  try {
    final data = options.data;

    // Update local permission level
    options.updateIslevel?.call(data.newLevel);

    // Show notification
    if (options.showAlert != null && data.message != null) {
      options.showAlert!(
        message: data.message!,
        type: data.newLevel == "1" ? "success" : "info",
        duration: 3000,
      );
    }
  } catch (e) {
    debugPrint('Error handling permissionUpdated: $e');
  }
}