import 'package:openapi/api.dart'; class ServerVersion { final int major; final int minor; final int patch; const ServerVersion({ required this.major, required this.minor, required this.patch, }); ServerVersion copyWith({ int? major, int? minor, int? patch, }) { return ServerVersion( major: major ?? this.major, minor: minor ?? this.minor, patch: patch ?? this.patch, ); } @override String toString() { return 'ServerVersion(major: $major, minor: $minor, patch: $patch)'; } ServerVersion.fromDto(ServerVersionResponseDto dto) : major = dto.major, minor = dto.minor, patch = dto.patch_; @override bool operator ==(Object other) { if (identical(this, other)) return true; return other is ServerVersion && other.major == major && other.minor == minor && other.patch == patch; } @override int get hashCode { return major.hashCode ^ minor.hashCode ^ patch.hashCode; } }