- AuthService, AuthRemoteDataSource 구현 - JWT 토큰 관리 (SecureStorage 사용) - 로그인 화면 API 연동 및 에러 처리 - freezed 패키지로 Auth 관련 DTO 모델 생성 - 의존성 주입 설정 업데이트
19 lines
638 B
Dart
19 lines
638 B
Dart
import 'package:freezed_annotation/freezed_annotation.dart';
|
|
import 'auth_user.dart';
|
|
|
|
part 'login_response.freezed.dart';
|
|
part 'login_response.g.dart';
|
|
|
|
@freezed
|
|
class LoginResponse with _$LoginResponse {
|
|
const factory LoginResponse({
|
|
@JsonKey(name: 'access_token') required String accessToken,
|
|
@JsonKey(name: 'refresh_token') required String refreshToken,
|
|
@JsonKey(name: 'token_type') required String tokenType,
|
|
@JsonKey(name: 'expires_in') required int expiresIn,
|
|
required AuthUser user,
|
|
}) = _LoginResponse;
|
|
|
|
factory LoginResponse.fromJson(Map<String, dynamic> json) =>
|
|
_$LoginResponseFromJson(json);
|
|
} |