def fromTrail()

in common/app/layout/SnapStuff.scala [24:54]


  def fromTrail(faciaContent: PressedContent): Option[SnapStuff] = {
    val snapData = SnapData(faciaContent)

    // This val may exist if the facia press has pre-fetched the embed html. Currently only for CuratedContent or LinkSnap.
    val embedHtml = faciaContent match {
      case curated: CuratedContent => curated.enriched.flatMap(_.embedHtml)
      case link: LinkSnap          => link.enriched.flatMap(_.embedHtml)
      case _                       => None
    }

    val embedCss = faciaContent match {
      case curated: CuratedContent => curated.enriched.flatMap(_.embedCss)
      case link: LinkSnap          => link.enriched.flatMap(_.embedCss)
      case _                       => None
    }

    val embedJs = faciaContent match {
      case curated: CuratedContent => curated.enriched.flatMap(_.embedJs)
      case link: LinkSnap          => link.enriched.flatMap(_.embedJs)
      case _                       => None
    }

    faciaContent.properties.embedType match {
      case Some("latest") => Some(SnapStuff(snapData, faciaContent.properties.embedCss, FrontendLatestSnap, embedHtml))
      case Some("link")   => Some(SnapStuff(snapData, faciaContent.properties.embedCss, FrontendLinkSnap, embedHtml))
      case Some("interactive") =>
        Some(SnapStuff(snapData, faciaContent.properties.embedCss, FrontendLinkSnap, embedHtml, embedCss, embedJs))
      case Some(_) => Some(SnapStuff(snapData, faciaContent.properties.embedCss, FrontendOtherSnap, embedHtml))
      case None    => None
    }
  }