Chepuhagram/lib/data/models/session_model.dart

24 lines
847 B
Dart

import 'package:freezed_annotation/freezed_annotation.dart';
part 'session_model.freezed.dart';
part 'session_model.g.dart';
@freezed
class Session with _$Session {
const factory Session({
required int id,
@JsonKey(name: 'user_id') int? userId,
@JsonKey(name: 'session_token') String? sessionToken,
@JsonKey(name: 'device_name') required String deviceName,
@JsonKey(name: 'ip_address') required String ipAddress,
@JsonKey(name: 'app_name') String? appName,
@JsonKey(name: 'app_version') String? appVersion,
String? platform,
@JsonKey(name: 'created_at') required DateTime createdAt,
@JsonKey(name: 'last_active') required DateTime lastActive,
@JsonKey(name: 'is_current') required bool isCurrent,
}) = _Session;
factory Session.fromJson(Map<String, dynamic> json) => _$SessionFromJson(json);
}