the-algorithm/product-mixer/core/src/main/scala/com/twitter/product_mixer/core/model/marshalling/response/urt/cover/CoverContent.scala
twitter-team ef4c5eb65e Twitter Recommendation Algorithm
Please note we have force-pushed a new initial commit in order to remove some publicly-available Twitter user information. Note that this process may be required in the future.
2023-03-31 17:36:31 -05:00

35 lines
1.3 KiB
Scala

package com.twitter.product_mixer.core.model.marshalling.response.urt.cover
import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.Callback
import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.DismissInfo
import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.ImageDisplayType
import com.twitter.product_mixer.core.model.marshalling.response.urt.metadata.ImageVariant
import com.twitter.product_mixer.core.model.marshalling.response.urt.richtext.RichText
sealed trait CoverContent
case class FullCoverContent(
displayType: FullCoverDisplayType,
primaryText: RichText,
primaryCoverCta: CoverCta,
secondaryCoverCta: Option[CoverCta],
secondaryText: Option[RichText],
imageVariant: Option[ImageVariant],
details: Option[RichText],
dismissInfo: Option[DismissInfo],
imageDisplayType: Option[ImageDisplayType],
impressionCallbacks: Option[List[Callback]])
extends CoverContent
case class HalfCoverContent(
displayType: HalfCoverDisplayType,
primaryText: RichText,
primaryCoverCta: CoverCta,
secondaryCoverCta: Option[CoverCta],
secondaryText: Option[RichText],
impressionCallbacks: Option[List[Callback]],
dismissible: Option[Boolean],
coverImage: Option[CoverImage],
dismissInfo: Option[DismissInfo])
extends CoverContent