toFlutterFlowAuthData method

FlutterFlowAuthData? toFlutterFlowAuthData()

Convert to FlutterFlow auth data

Implementation

FlutterFlowAuthData? toFlutterFlowAuthData() {
  // Check if this response has JWT tokens
  if (!hasJwt() || !hasRefreshToken()) {
    return null;
  }

  // Extract user ID from JWT
  final userId = _extractUserIdFromJWT(jwt);
  if (userId == null) {
    return null;
  }

  // Default to 1 hour expiration (VerifyAppleTokenResponse doesn't have expiresAt field)
  final expirationTime = (DateTime.now().millisecondsSinceEpoch ~/ 1000) + 3600;

  return FlutterFlowAuthData(
    accessToken: jwt,
    refreshToken: refreshToken,
    tokenExpiration: expirationTime,
    uid: userId,
    userData: null, // Can be extended to include user data if needed
  );
}