app/models/ClientConfig.scala (28 lines of code) (raw):

package models import io.circe.{Decoder, Encoder} import io.circe.generic.semiauto._ case class User(firstName: String, lastName: String, email: String) object User { implicit val userEncoder: Encoder[User] = deriveEncoder implicit val userDecoder: Decoder[User] = deriveDecoder } case class ClientConfig( user: User, gridUrl: String, composerUrl: String, viewerUrl: String, capiLiveUrl: String, targetingUrl: String, workflowUrl: String, isEmbedded: Boolean, embeddedMode: Option[String], atomEditorGutoolsDomain: String, presenceEnabled: Boolean, presenceDomain: String, permissions: Map[String, Boolean], stage: String ) object ClientConfig { implicit val clientConfigEncoder: Encoder[ClientConfig] = deriveEncoder implicit val clientConfigDecoder: Decoder[ClientConfig] = deriveDecoder }