packages feed

keiro-dsl-0.10.0.0: test/conformance-router-full/Generated/IncidentPaging/Page/Domain.hs

{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE TemplateHaskell #-}
-- @generated by keiro-dsl 0.9.0.0 (language keiro-dsl 4) from aggregate Page; do not edit.
module Generated.IncidentPaging.Page.Domain where

import Data.Proxy (Proxy (..))
import Data.Text (Text)
import GHC.Generics (Generic)
import Keiki.Core (RegFile (..))
import Keiki.Generics.TH (deriveAggregateCtorsAll, deriveWireCtorsAll)

data PageVertex = PagePending | PageDelivered
  deriving stock (Generic, Eq, Ord, Show, Enum, Bounded)

data SendPageData = SendPageData
  { incidentId :: !Text
  , responderId :: !Text
  }
  deriving stock (Generic, Eq, Show)

data PageCommand = SendPage !SendPageData
  deriving stock (Generic, Eq, Show)

data PageSentData = PageSentData
  { incidentId :: !Text
  , responderId :: !Text
  }
  deriving stock (Generic, Eq, Show)

data PageEvent = PageSent !PageSentData
  deriving stock (Generic, Eq, Show)

type PageRegs =
  '[]

initialPageRegs :: RegFile PageRegs
initialPageRegs =
  RNil

$(deriveAggregateCtorsAll ''PageCommand ''PageRegs)



$(deriveWireCtorsAll ''PageEvent)