EmbedExternalViewLivestream constructor

const EmbedExternalViewLivestream({
  1. @Default.new('app.bsky.embed.external#viewLivestream') String $type,
  2. required String uri,
  3. required String title,
  4. required String description,
  5. @JsonKey.new(toJson: iso8601) DateTime? createdAt,
  6. @JsonKey.new(toJson: iso8601) DateTime? updatedAt,
  7. @LabelConverter() List<Label>? labels,
  8. @RepoStrongRefConverter() List<RepoStrongRef>? associatedRefs,
  9. @ProfileViewBasicConverter() List<ProfileViewBasic>? associatedProfiles,
  10. String? image,
  11. required bool active,
  12. @JsonKey.new(toJson: iso8601) DateTime? startedAt,
  13. @JsonKey.new(toJson: iso8601) DateTime? endedAt,
  14. Map<String, dynamic>? $unknown,
})

Implementation

@JsonSerializable(includeIfNull: false)
const factory EmbedExternalViewLivestream({
  @Default('app.bsky.embed.external#viewLivestream') String $type,
  required String uri,
  required String title,
  required String description,
  @JsonKey(toJson: iso8601) DateTime? createdAt,
  @JsonKey(toJson: iso8601) DateTime? updatedAt,
  @LabelConverter() List<Label>? labels,
  @RepoStrongRefConverter() List<RepoStrongRef>? associatedRefs,
  @ProfileViewBasicConverter() List<ProfileViewBasic>? associatedProfiles,
  String? image,

  /// True if the livestream is currently active at the time this view is served, false if it has ended.
  required bool active,
  @JsonKey(toJson: iso8601) DateTime? startedAt,
  @JsonKey(toJson: iso8601) DateTime? endedAt,

  Map<String, dynamic>? $unknown,
}) = _EmbedExternalViewLivestream;