/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.0.6-dev * User agent: apibuilder app.apibuilder.io/danitest/competition-api/0.0.6-dev/flow_erm_schema */ package namespace.erm import io.flow.event.relation.mapper.schema.ErmSpec import io.apibuilder.spec.v0.models.{Enum, EnumValue, Field, Model, Union, UnionType} import namespace.models.Competition import namespace.models.CompetitionParticipant import namespace.models.CompetitionStatus import namespace.models.Competitor import namespace.models.Vote import namespace.models.Voter object GeneratedErmSchema { implicit lazy val ermSpecCompetition: ErmSpec[Competition] = ErmSpec.model( qualifiedName = "namespace.models.competition", spec = Model(name = "competition", plural = "competitions", fields = Seq( Field(name = "guid", `type` = "uuid", required = true), Field(name = "name", `type` = "string", required = true), Field(name = "status", `type` = "competition_status", required = true), Field(name = "start_at", `type` = "date-time-iso8601", required = true), Field(name = "end_at", `type` = "date-time-iso8601", required = true), Field(name = "created_at", `type` = "date-time-iso8601", required = true), Field(name = "updated_at", `type` = "date-time-iso8601", required = true), )), resolved = Map[String, ErmSpec[_]]( "namespace.enums.competition_status" -> ermSpecCompetitionStatus, ), ) implicit lazy val ermSpecCompetitionParticipant: ErmSpec[CompetitionParticipant] = ErmSpec.model( qualifiedName = "namespace.models.competition_participant", spec = Model(name = "competition_participant", plural = "competition_participants", fields = Seq( Field(name = "guid", `type` = "uuid", required = true), Field(name = "competition_id", `type` = "uuid", required = true), Field(name = "competitor_id", `type` = "uuid", required = true), )), ) implicit lazy val ermSpecCompetitor: ErmSpec[Competitor] = ErmSpec.model( qualifiedName = "namespace.models.competitor", spec = Model(name = "competitor", plural = "competitors", fields = Seq( Field(name = "guid", `type` = "uuid", required = true), Field(name = "name", `type` = "string", required = true), )), ) implicit lazy val ermSpecVote: ErmSpec[Vote] = ErmSpec.model( qualifiedName = "namespace.models.vote", spec = Model(name = "vote", plural = "votes", fields = Seq( Field(name = "guid", `type` = "uuid", required = true), Field(name = "competition_participant_id", `type` = "uuid", required = true), Field(name = "voter_id", `type` = "uuid", required = true), Field(name = "type", `type` = "string", required = true), Field(name = "points", `type` = "integer", required = true), )), ) implicit lazy val ermSpecVoter: ErmSpec[Voter] = ErmSpec.model( qualifiedName = "namespace.models.voter", spec = Model(name = "voter", plural = "voters", fields = Seq( Field(name = "guid", `type` = "uuid", required = true), Field(name = "name", `type` = "string", required = true), Field(name = "asdf", `type` = "string", required = true), )), ) implicit lazy val ermSpecCompetitionStatus: ErmSpec[CompetitionStatus] = ErmSpec.`enum`( qualifiedName = "namespace.enums.competition_status", spec = Enum(name = "competition_status", plural = "competition_statuses", values = Seq( EnumValue(name = "pending"), EnumValue(name = "active"), EnumValue(name = "closed"), )), ) val all: Seq[ErmSpec[_]] = Seq( ermSpecCompetition, ermSpecCompetitionParticipant, ermSpecCompetitor, ermSpecVote, ermSpecVoter, ermSpecCompetitionStatus, ) }