in common/app/model/Formats.scala [190:212]
override def reads(json: JsValue): JsResult[DesignType] =
json match {
case JsString("Article") => JsSuccess(com.gu.contentapi.client.utils.Article)
case JsString("Immersive") => JsSuccess(com.gu.contentapi.client.utils.Immersive)
case JsString("Media") => JsSuccess(com.gu.contentapi.client.utils.Media)
case JsString("Review") => JsSuccess(com.gu.contentapi.client.utils.Review)
case JsString("Analysis") => JsSuccess(com.gu.contentapi.client.utils.Analysis)
case JsString("Comment") => JsSuccess(com.gu.contentapi.client.utils.Comment)
case JsString("Feature") => JsSuccess(com.gu.contentapi.client.utils.Feature)
case JsString("Live") => JsSuccess(com.gu.contentapi.client.utils.Live)
case JsString("SpecialReport") => JsSuccess(com.gu.contentapi.client.utils.SpecialReport)
case JsString("Recipe") => JsSuccess(com.gu.contentapi.client.utils.Recipe)
case JsString("MatchReport") => JsSuccess(com.gu.contentapi.client.utils.MatchReport)
case JsString("Interview") => JsSuccess(com.gu.contentapi.client.utils.Interview)
case JsString("GuardianView") => JsSuccess(com.gu.contentapi.client.utils.GuardianView)
case JsString("Quiz") => JsSuccess(com.gu.contentapi.client.utils.Quiz)
case JsString("GuardianLabs") => JsSuccess(com.gu.contentapi.client.utils.GuardianLabs)
case JsString("AdvertisementFeature") => JsSuccess(com.gu.contentapi.client.utils.AdvertisementFeature)
case JsString("Newsletter") => JsSuccess(com.gu.contentapi.client.utils.Newsletter)
case JsString("Profile") => JsSuccess(com.gu.contentapi.client.utils.Profile)
case JsString("Timeline") => JsSuccess(com.gu.contentapi.client.utils.Timeline)
case _ => JsError(s"Unknown design type: '$json'")
}