All Downloads are FREE. Search and download functionalities are using the official Maven repository.

scala.lucuma.schemas.odb.GcalStepConfigSubquery.scala Maven / Gradle / Ivy

There is a newer version: 0.100.0
Show newest version
// Copyright (c) 2016-2023 Association of Universities for Research in Astronomy, Inc. (AURA)
// For license information see LICENSE or https://opensource.org/licenses/BSD-3-Clause

package lucuma.schemas.odb

import clue.GraphQLSubquery
import lucuma.schemas.ObservationDB


object GcalStepConfigSubquery extends GraphQLSubquery[ObservationDB]("Gcal") {
  import ObservationDB.Scalars._
  ignoreUnusedImportScalars()
  import ObservationDB.Enums._
  ignoreUnusedImportEnums()
  import ObservationDB.Types._
  ignoreUnusedImportTypes()
  override val subquery: String = """
        {
          continuum
          arcs
          filter
          diffuser
          shutter
        }
      """
  case class Data(val continuum: Option[GcalContinuum] = None, val arcs: List[GcalArc], val filter: GcalFilter, val diffuser: GcalDiffuser, val shutter: GcalShutter)
  object Data {
    val continuum: monocle.Lens[Data, Option[GcalContinuum]] = monocle.macros.GenLens[Data](_.continuum)
    val arcs: monocle.Lens[Data, List[GcalArc]] = monocle.macros.GenLens[Data](_.arcs)
    val filter: monocle.Lens[Data, GcalFilter] = monocle.macros.GenLens[Data](_.filter)
    val diffuser: monocle.Lens[Data, GcalDiffuser] = monocle.macros.GenLens[Data](_.diffuser)
    val shutter: monocle.Lens[Data, GcalShutter] = monocle.macros.GenLens[Data](_.shutter)
    implicit val eqData: cats.Eq[Data] = cats.Eq.fromUniversalEquals
    implicit val showData: cats.Show[Data] = cats.Show.fromToString
    implicit val jsonDecoderData: io.circe.Decoder[Data] = io.circe.generic.semiauto.deriveDecoder[Data]
  }
  val dataDecoder: io.circe.Decoder[Data] = Data.jsonDecoderData
}






© 2015 - 2024 Weber Informatics LLC | Privacy Policy