53 lines
1.4 KiB
Dart
53 lines
1.4 KiB
Dart
import 'package:freezed_annotation/freezed_annotation.dart';
|
|
|
|
part 'auth.freezed.dart';
|
|
part 'auth.g.dart';
|
|
|
|
@freezed
|
|
abstract class AppTokenPair with _$AppTokenPair {
|
|
const factory AppTokenPair({
|
|
required String accessToken,
|
|
required String refreshToken,
|
|
}) = _AppTokenPair;
|
|
|
|
factory AppTokenPair.fromJson(Map<String, dynamic> json) =>
|
|
_$AppTokenPairFromJson(json);
|
|
}
|
|
|
|
@freezed
|
|
abstract class SnAuthChallenge with _$SnAuthChallenge {
|
|
const factory SnAuthChallenge({
|
|
required String id,
|
|
required DateTime expiredAt,
|
|
required int stepRemain,
|
|
required int stepTotal,
|
|
required List<String> blacklistFactors,
|
|
required List<String> audiences,
|
|
required List<String> scopes,
|
|
required String ipAddress,
|
|
required String userAgent,
|
|
required String? deviceId,
|
|
required String? nonce,
|
|
required DateTime createdAt,
|
|
required DateTime updatedAt,
|
|
required DateTime? deletedAt,
|
|
}) = _SnAuthChallenge;
|
|
|
|
factory SnAuthChallenge.fromJson(Map<String, dynamic> json) =>
|
|
_$SnAuthChallengeFromJson(json);
|
|
}
|
|
|
|
@freezed
|
|
abstract class SnAuthFactor with _$SnAuthFactor {
|
|
const factory SnAuthFactor({
|
|
required String id,
|
|
required int type,
|
|
required DateTime createdAt,
|
|
required DateTime updatedAt,
|
|
required DateTime? deletedAt,
|
|
}) = _SnAuthFactor;
|
|
|
|
factory SnAuthFactor.fromJson(Map<String, dynamic> json) =>
|
|
_$SnAuthFactorFromJson(json);
|
|
}
|