import 'package:uuid/uuid.dart'; import '../../models/follow_request.dart'; import '../../models/user_notification.dart'; import 'connection_mastodon_extensions.dart'; extension FollowRequestMastodonExtension on FollowRequest { static FollowRequest fromJson(Map json) { final connection = ConnectionMastodonExtensions.fromJson(json); final createdAt = DateTime.tryParse(json['created_at'] ?? '') ?? DateTime.now(); return FollowRequest(connection: connection, createdAt: createdAt); } UserNotification toUserNotification() { return UserNotification( id: Uuid().v4(), type: NotificationType.follow_request, fromId: connection.id, fromName: connection.name, fromUrl: connection.profileUrl, timestamp: createdAt.millisecondsSinceEpoch, iid: '', dismissed: false, content: '${connection.name}(${connection.handle}) submitted a follow request ', link: '', ); } }