StreamPhoto

final class StreamPhoto : Model, @unchecked Sendable
extension StreamPhoto: Reportable

A photo to be shown in the photo stream. Currently, photo stream photos:

  • are non-editable and non-deletable by the author
  • may be deleted by moderators. The ‘locked’ state may be applied as well, but does nothing.

Properties

  • id

    Declaration

    Swift

    @StreamPhoto
    .ID var id: Int? { get set }
  • The filename for the image. Use with the ImageController methods in /api/v3/images/**

    Declaration

    Swift

    @StreamPhoto
    .Field var image: String { get set }
  • Where on the boat the photo was taken. Optional. One of boatLocation or atEvent should be non-nil.

    Declaration

    Swift

    @StreamPhoto
    .OptionalField var boatLocation: PhotoStreamBoatLocation? { get set }
  • The time the image was taken, as reported by the client upon upload. Should be within a minute of createdAt, but maybe not if we allow photo capture while ashore?

    Declaration

    Swift

    @StreamPhoto
    .Field var captureTime: Date { get set }
  • Moderators can set several statuses on streamPhotos that modify visibility.

    Declaration

    Swift

    @StreamPhoto
    .Enum var moderationStatus: ContentModerationStatus { get set }
  • Timestamp of the model’s creation, set automatically.

    Declaration

    Swift

    @StreamPhoto
    .Timestamp var createdAt: Date? { get set }
  • Timestamp of the model’s soft-deletion, set automatically.

    Declaration

    Swift

    @StreamPhoto
    .Timestamp var deletedAt: Date? { get set }

Relations