{-# LANGUAGE TemplateHaskell #-}
module Strive.Types.Photos
( PhotoSummary (..),
)
where
import Data.Aeson.TH (deriveFromJSON)
import Data.Text (Text)
import Data.Time.Clock (UTCTime)
import Strive.Enums (PhotoType, ResourceState)
import Strive.Internal.TH (options)
data PhotoSummary = PhotoSummary
{ PhotoSummary -> Integer
photoSummary_activityId :: Integer,
PhotoSummary -> Text
photoSummary_caption :: Text,
PhotoSummary -> UTCTime
photoSummary_createdAt :: UTCTime,
PhotoSummary -> Integer
photoSummary_id :: Integer,
PhotoSummary -> Maybe (Double, Double)
photoSummary_location :: Maybe (Double, Double),
PhotoSummary -> Text
photoSummary_ref :: Text,
PhotoSummary -> ResourceState
photoSummary_resourceState :: ResourceState,
PhotoSummary -> PhotoType
photoSummary_type :: PhotoType,
PhotoSummary -> Text
photoSummary_uid :: Text,
PhotoSummary -> UTCTime
photoSummary_uploadedAt :: UTCTime
}
deriving (Int -> PhotoSummary -> ShowS
[PhotoSummary] -> ShowS
PhotoSummary -> String
(Int -> PhotoSummary -> ShowS)
-> (PhotoSummary -> String)
-> ([PhotoSummary] -> ShowS)
-> Show PhotoSummary
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> PhotoSummary -> ShowS
showsPrec :: Int -> PhotoSummary -> ShowS
$cshow :: PhotoSummary -> String
show :: PhotoSummary -> String
$cshowList :: [PhotoSummary] -> ShowS
showList :: [PhotoSummary] -> ShowS
Show)
$(deriveFromJSON options ''PhotoSummary)