keiro-dsl-0.18.0.0: test/conformance-id-admission-domains/Generated/IdAdmissionDomains/IdentityLedger/Domain.hs
{-# LANGUAGE TemplateHaskell #-}
-- @generated by keiro-dsl 0.18.0.0 (language keiro-dsl 6) from aggregate IdentityLedger; do not edit.
module Generated.IdAdmissionDomains.IdentityLedger.Domain where
import Data.Proxy (Proxy (..))
import GHC.Generics (Generic)
import Keiki.Core (RegFile (..))
import Generated.IdAdmissionDomains.Nominals (LegacyId, parseLegacyId)
import Conformance.IdAdmissionDomains.Domain (IdentityEnvelope)
import Keiki.Generics.TH (deriveAggregateCtorsAll, deriveWireCtorsAll)
data IdentityLedgerVertex = IdentityLedgerOpen
deriving stock (Generic, Eq, Ord, Show, Enum, Bounded)
data RecordIdentityData = RecordIdentityData
{ legacyId :: !LegacyId
, envelope :: !IdentityEnvelope
}
deriving stock (Generic, Eq, Show)
data ImportLegacyIdentityData = ImportLegacyIdentityData
{ legacyId :: !LegacyId
, envelope :: !IdentityEnvelope
}
deriving stock (Generic, Eq, Show)
data IdentityLedgerCommand = RecordIdentity !RecordIdentityData
| ImportLegacyIdentity !ImportLegacyIdentityData
deriving stock (Generic, Eq, Show)
data IdentityRecordedData = IdentityRecordedData
{ legacyId :: !LegacyId
, envelope :: !IdentityEnvelope
}
deriving stock (Generic, Eq, Show)
data IdentityAuditedData = IdentityAuditedData
{ legacyId :: !LegacyId
, envelope :: !IdentityEnvelope
}
deriving stock (Generic, Eq, Show)
data LegacyIdentityImportedData = LegacyIdentityImportedData
{ legacyId :: !LegacyId
, envelope :: !IdentityEnvelope
}
deriving stock (Generic, Eq, Show)
data IdentityLedgerEvent = IdentityRecorded !IdentityRecordedData
| IdentityAudited !IdentityAuditedData
| LegacyIdentityImported !LegacyIdentityImportedData
deriving stock (Generic, Eq, Show)
type IdentityLedgerRegs =
'[ '("current", LegacyId)
]
initialIdentityLedgerRegs :: RegFile IdentityLedgerRegs
initialIdentityLedgerRegs =
RCons (Proxy @"current") (case parseLegacyId "legacy_01h455vb4pex5vsknk084sn02q" of Right parsed -> parsed; Left _ -> error "generated valid ID sample failed to parse") RNil
$(deriveAggregateCtorsAll ''IdentityLedgerCommand ''IdentityLedgerRegs)
$(deriveWireCtorsAll ''IdentityLedgerEvent)