worldhopper/lib/models/opds_link.dart

26 lines
638 B
Dart

import 'package:freezed_annotation/freezed_annotation.dart';
part 'opds_link.freezed.dart';
part 'opds_link.g.dart';
/// Represents a link in an OPDS feed
@freezed
class OPDSLink with _$OPDSLink {
const factory OPDSLink({
/// Link relation type (e.g., 'self', 'start', 'subsection', 'http://opds-spec.org/acquisition')
required String rel,
/// Link URL
required String href,
/// MIME type of the linked resource
String? type,
/// Link title
String? title,
}) = _OPDSLink;
/// Create OPDSLink from JSON
factory OPDSLink.fromJson(Map<String, dynamic> json) =>
_$OPDSLinkFromJson(json);
}