/// Response model for the [POST api/Auth/login] endpoint. /// /// Example JSON: /// ```json /// { /// "success": true, /// "message": "Login successful", /// "data": { /// "token": "eyJhbGci…", /// "expiresAt": "2026-06-22T11:43:12.071Z" /// }, /// "errors": [] /// } /// ``` class LoginResponseModel { final bool success; final String message; final LoginDataModel? data; final List errors; const LoginResponseModel({ required this.success, required this.message, this.data, this.errors = const [], }); factory LoginResponseModel.fromJson(Map json) { return LoginResponseModel( success: json['success'] as bool? ?? false, message: json['message'] as String? ?? '', data: json['data'] != null ? LoginDataModel.fromJson(json['data'] as Map) : null, errors: (json['errors'] as List?) ?.map((e) => e.toString()) .toList() ?? const [], ); } } /// Token payload returned inside [LoginResponseModel.data]. class LoginDataModel { final String token; final String expiresAt; const LoginDataModel({ required this.token, required this.expiresAt, }); factory LoginDataModel.fromJson(Map json) { return LoginDataModel( token: json['token'] as String? ?? '', expiresAt: json['expiresAt'] as String? ?? '', ); } }