app/models/Ticker.scala (21 lines of code) (raw):

package models import io.circe.generic.extras.Configuration import io.circe.generic.extras.semiauto.{deriveEnumerationDecoder, deriveEnumerationEncoder} sealed trait TickerName object TickerName { case object US extends TickerName case object AU extends TickerName case object global extends TickerName implicit val customConfig: Configuration = Configuration.default.withDefaults implicit val encoder = deriveEnumerationEncoder[TickerName] implicit val decoder = deriveEnumerationDecoder[TickerName] } case class TickerCopy( countLabel: String, goalCopy: String = "goal" , ) case class TickerSettings( currencySymbol: String, copy: TickerCopy, name: TickerName )