plutus-use-cases-1.2.0.0: Collection of smart contracts to develop the plutus/wallet interface
Safe HaskellNone
LanguageHaskell2010

Plutus.Contracts.Prism

Synopsis

Unlock (STO)

data STOSubscriber Source #

Constructors

STOSubscriber 

Fields

Instances

Instances details
Eq STOSubscriber Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

Show STOSubscriber Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

Generic STOSubscriber Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

Associated Types

type Rep STOSubscriber :: Type -> Type Source #

FromJSON STOSubscriber Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

Methods

parseJSON :: Value -> Parser STOSubscriber

parseJSONList :: Value -> Parser [STOSubscriber]

ToJSON STOSubscriber Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

Methods

toJSON :: STOSubscriber -> Value

toEncoding :: STOSubscriber -> Encoding

toJSONList :: [STOSubscriber] -> Value

toEncodingList :: [STOSubscriber] -> Encoding

type Rep STOSubscriber Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

type Rep STOSubscriber = D1 ('MetaData "STOSubscriber" "Plutus.Contracts.Prism.Unlock" "plutus-use-cases-1.2.0.0-BuYOLXrynPcLosE012cowc" 'False) (C1 ('MetaCons "STOSubscriber" 'PrefixI 'True) ((S1 ('MetaSel ('Just "wCredential") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Credential) :*: S1 ('MetaSel ('Just "wSTOIssuer") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PaymentPubKeyHash)) :*: (S1 ('MetaSel ('Just "wSTOTokenName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TokenName) :*: S1 ('MetaSel ('Just "wSTOAmount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer))))

data UnlockError Source #

Instances

Instances details
Eq UnlockError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

Show UnlockError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

Generic UnlockError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

Associated Types

type Rep UnlockError :: Type -> Type Source #

FromJSON UnlockError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

Methods

parseJSON :: Value -> Parser UnlockError

parseJSONList :: Value -> Parser [UnlockError]

ToJSON UnlockError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

Methods

toJSON :: UnlockError -> Value

toEncoding :: UnlockError -> Encoding

toJSONList :: [UnlockError] -> Value

toEncodingList :: [UnlockError] -> Encoding

AsContractError UnlockError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

Methods

_ContractError :: Prism' UnlockError ContractError

_WalletContractError :: Prism' UnlockError WalletAPIError

_ChainIndexContractError :: Prism' UnlockError (Text, ChainIndexResponse)

_ConstraintResolutionContractError :: Prism' UnlockError MkTxError

_ToCardanoConvertContractError :: Prism' UnlockError ToCardanoError

_ResumableContractError :: Prism' UnlockError MatchingError

_CCheckpointContractError :: Prism' UnlockError CheckpointError

_EndpointDecodeContractError :: Prism' UnlockError (EndpointDescription, EndpointValue Value, Text)

_OtherContractError :: Prism' UnlockError Text

type Rep UnlockError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Unlock

type Rep UnlockError = D1 ('MetaData "UnlockError" "Plutus.Contracts.Prism.Unlock" "plutus-use-cases-1.2.0.0-BuYOLXrynPcLosE012cowc" 'False) ((C1 ('MetaCons "WithdrawEndpointError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ContractError)) :+: (C1 ('MetaCons "WithdrawTxError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ContractError)) :+: C1 ('MetaCons "WithdrawPkError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ContractError)))) :+: ((C1 ('MetaCons "GetCredentialStateMachineError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SMContractError)) :+: C1 ('MetaCons "GetCredentialTransitionError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InvalidTransition IDState IDAction)))) :+: (C1 ('MetaCons "UnlockExchangeTokenAccError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TokenAccountError)) :+: C1 ('MetaCons "UnlockMkTxError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MkTxError)))))

subscribeSTO :: forall w s. HasEndpoint "sto" STOSubscriber s => Contract w s UnlockError () Source #

Obtain a token from the credential manager app, then participate in the STO

Unlock (exchange)

type UnlockExchangeSchema = Endpoint "unlock from exchange" Credential Source #

unlockExchange :: forall w s. HasEndpoint "unlock from exchange" Credential s => Contract w s UnlockError () Source #

Obtain a token from the credential manager app, then use it to unlock funds that were locked by an exchange.

Mirror app

type MirrorSchema = Endpoint "issue" CredentialOwnerReference .\/ Endpoint "revoke" CredentialOwnerReference Source #

data CredentialOwnerReference Source #

Reference to a credential tied to a specific owner (public key address). From this, and the public key of the Mirror instance, we can compute the address of the state machine script that locks the token for the owner.

Constructors

CredentialOwnerReference 

Fields

Instances

Instances details
Eq CredentialOwnerReference Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Ord CredentialOwnerReference Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Show CredentialOwnerReference Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Generic CredentialOwnerReference Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Associated Types

type Rep CredentialOwnerReference :: Type -> Type Source #

FromJSON CredentialOwnerReference Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Methods

parseJSON :: Value -> Parser CredentialOwnerReference

parseJSONList :: Value -> Parser [CredentialOwnerReference]

ToJSON CredentialOwnerReference Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

type Rep CredentialOwnerReference Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

type Rep CredentialOwnerReference = D1 ('MetaData "CredentialOwnerReference" "Plutus.Contracts.Prism.Mirror" "plutus-use-cases-1.2.0.0-BuYOLXrynPcLosE012cowc" 'False) (C1 ('MetaCons "CredentialOwnerReference" 'PrefixI 'True) (S1 ('MetaSel ('Just "coTokenName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TokenName) :*: S1 ('MetaSel ('Just "coOwner") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Wallet)))

data MirrorError Source #

Constructors

StateNotFound TokenName PaymentPubKeyHash 
SetupError ContractError 
MirrorEndpointError ContractError 
CreateTokenTxError ContractError 
StateMachineError SMContractError 

Instances

Instances details
Eq MirrorError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Show MirrorError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Generic MirrorError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Associated Types

type Rep MirrorError :: Type -> Type Source #

FromJSON MirrorError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Methods

parseJSON :: Value -> Parser MirrorError

parseJSONList :: Value -> Parser [MirrorError]

ToJSON MirrorError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Methods

toJSON :: MirrorError -> Value

toEncoding :: MirrorError -> Encoding

toJSONList :: [MirrorError] -> Value

toEncodingList :: [MirrorError] -> Encoding

AsContractError MirrorError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Methods

_ContractError :: Prism' MirrorError ContractError

_WalletContractError :: Prism' MirrorError WalletAPIError

_ChainIndexContractError :: Prism' MirrorError (Text, ChainIndexResponse)

_ConstraintResolutionContractError :: Prism' MirrorError MkTxError

_ToCardanoConvertContractError :: Prism' MirrorError ToCardanoError

_ResumableContractError :: Prism' MirrorError MatchingError

_CCheckpointContractError :: Prism' MirrorError CheckpointError

_EndpointDecodeContractError :: Prism' MirrorError (EndpointDescription, EndpointValue Value, Text)

_OtherContractError :: Prism' MirrorError Text

AsSMContractError MirrorError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

Methods

_SMContractError :: Prism' MirrorError SMContractError

_ChooserError :: Prism' MirrorError Text

_UnableToExtractTransition :: Prism' MirrorError ()

_SMCContractError :: Prism' MirrorError ContractError

type Rep MirrorError Source # 
Instance details

Defined in Plutus.Contracts.Prism.Mirror

type Rep MirrorError = D1 ('MetaData "MirrorError" "Plutus.Contracts.Prism.Mirror" "plutus-use-cases-1.2.0.0-BuYOLXrynPcLosE012cowc" 'False) ((C1 ('MetaCons "StateNotFound" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TokenName) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PaymentPubKeyHash)) :+: C1 ('MetaCons "SetupError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ContractError))) :+: (C1 ('MetaCons "MirrorEndpointError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ContractError)) :+: (C1 ('MetaCons "CreateTokenTxError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ContractError)) :+: C1 ('MetaCons "StateMachineError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SMContractError)))))

mirror :: (HasEndpoint "revoke" CredentialOwnerReference s, HasEndpoint "issue" CredentialOwnerReference s) => Contract w s MirrorError () Source #

Credential manager app

data Credential Source #

Named credential issued by a credential authority

Constructors

Credential 

Fields

Instances

Instances details
Eq Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Ord Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Show Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Generic Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Associated Types

type Rep Credential :: Type -> Type Source #

FromJSON Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

parseJSON :: Value -> Parser Credential

parseJSONList :: Value -> Parser [Credential]

ToJSON Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

toJSON :: Credential -> Value

toEncoding :: Credential -> Encoding

toJSONList :: [Credential] -> Value

toEncodingList :: [Credential] -> Encoding

ToData Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

toBuiltinData :: Credential -> BuiltinData

FromData Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

fromBuiltinData :: BuiltinData -> Maybe Credential

UnsafeFromData Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

unsafeFromBuiltinData :: BuiltinData -> Credential

Hashable Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Lift DefaultUni Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

lift :: Credential -> RTCompile DefaultUni fun (Term TyName Name DefaultUni fun ())

Typeable DefaultUni Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

typeRep :: Proxy Credential -> RTCompile DefaultUni fun (Type TyName DefaultUni ())

type Rep Credential Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

type Rep Credential = D1 ('MetaData "Credential" "Plutus.Contracts.Prism.Credential" "plutus-use-cases-1.2.0.0-BuYOLXrynPcLosE012cowc" 'False) (C1 ('MetaCons "Credential" 'PrefixI 'True) (S1 ('MetaSel ('Just "credAuthority") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CredentialAuthority) :*: S1 ('MetaSel ('Just "credName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TokenName)))

data UserCredential Source #

A Credential issued to a user (public key address)

Constructors

UserCredential 

Fields

  • ucAddress :: PaymentPubKeyHash

    Address of the credential holder

  • ucCredential :: Credential

    The credential

  • ucToken :: Value

    The Value containing a token of the credential (this needs to be included here because token is not available in on-chain code)

Instances

Instances details
Eq UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Show UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Generic UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Associated Types

type Rep UserCredential :: Type -> Type Source #

FromJSON UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Methods

parseJSON :: Value -> Parser UserCredential

parseJSONList :: Value -> Parser [UserCredential]

ToJSON UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Methods

toJSON :: UserCredential -> Value

toEncoding :: UserCredential -> Encoding

toJSONList :: [UserCredential] -> Value

toEncodingList :: [UserCredential] -> Encoding

Hashable UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Lift DefaultUni UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Methods

lift :: UserCredential -> RTCompile DefaultUni fun (Term TyName Name DefaultUni fun ())

Typeable DefaultUni UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

Methods

typeRep :: Proxy UserCredential -> RTCompile DefaultUni fun (Type TyName DefaultUni ())

type Rep UserCredential Source # 
Instance details

Defined in Plutus.Contracts.Prism.StateMachine

type Rep UserCredential = D1 ('MetaData "UserCredential" "Plutus.Contracts.Prism.StateMachine" "plutus-use-cases-1.2.0.0-BuYOLXrynPcLosE012cowc" 'False) (C1 ('MetaCons "UserCredential" 'PrefixI 'True) (S1 ('MetaSel ('Just "ucAddress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PaymentPubKeyHash) :*: (S1 ('MetaSel ('Just "ucCredential") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Credential) :*: S1 ('MetaSel ('Just "ucToken") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Value))))

newtype CredentialAuthority Source #

Entity that is authorised to mint credential tokens

Constructors

CredentialAuthority 

Fields

Instances

Instances details
Eq CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Ord CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Show CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Generic CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Associated Types

type Rep CredentialAuthority :: Type -> Type Source #

FromJSON CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

parseJSON :: Value -> Parser CredentialAuthority

parseJSONList :: Value -> Parser [CredentialAuthority]

ToJSON CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

ToData CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

toBuiltinData :: CredentialAuthority -> BuiltinData

FromData CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

fromBuiltinData :: BuiltinData -> Maybe CredentialAuthority

UnsafeFromData CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Hashable CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Lift DefaultUni CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

lift :: CredentialAuthority -> RTCompile DefaultUni fun (Term TyName Name DefaultUni fun ())

Typeable DefaultUni CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

Methods

typeRep :: Proxy CredentialAuthority -> RTCompile DefaultUni fun (Type TyName DefaultUni ())

type Rep CredentialAuthority Source # 
Instance details

Defined in Plutus.Contracts.Prism.Credential

type Rep CredentialAuthority = D1 ('MetaData "CredentialAuthority" "Plutus.Contracts.Prism.Credential" "plutus-use-cases-1.2.0.0-BuYOLXrynPcLosE012cowc" 'True) (C1 ('MetaCons "CredentialAuthority" 'PrefixI 'True) (S1 ('MetaSel ('Just "unCredentialAuthority") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PaymentPubKeyHash)))

all-in-one

data Role Source #

The roles that we pass to contract.

Constructors

Mirror

The mirror contract

UnlockSTO

The subscribeSTO contract

UnlockExchange

The unlockExchange contract

Instances

Instances details
Eq Role Source # 
Instance details

Defined in Plutus.Contracts.Prism

Methods

(==) :: Role -> Role -> Bool Source #

(/=) :: Role -> Role -> Bool Source #

Show Role Source # 
Instance details

Defined in Plutus.Contracts.Prism

Generic Role Source # 
Instance details

Defined in Plutus.Contracts.Prism

Associated Types

type Rep Role :: Type -> Type Source #

Methods

from :: Role -> Rep Role x Source #

to :: Rep Role x -> Role Source #

FromJSON Role Source # 
Instance details

Defined in Plutus.Contracts.Prism

Methods

parseJSON :: Value -> Parser Role

parseJSONList :: Value -> Parser [Role]

ToJSON Role Source # 
Instance details

Defined in Plutus.Contracts.Prism

Methods

toJSON :: Role -> Value

toEncoding :: Role -> Encoding

toJSONList :: [Role] -> Value

toEncodingList :: [Role] -> Encoding

type Rep Role Source # 
Instance details

Defined in Plutus.Contracts.Prism

type Rep Role = D1 ('MetaData "Role" "Plutus.Contracts.Prism" "plutus-use-cases-1.2.0.0-BuYOLXrynPcLosE012cowc" 'False) (C1 ('MetaCons "Mirror" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "UnlockSTO" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "UnlockExchange" 'PrefixI 'False) (U1 :: Type -> Type)))

data PrismError Source #

Instances

Instances details
Eq PrismError Source # 
Instance details

Defined in Plutus.Contracts.Prism

Show PrismError Source # 
Instance details

Defined in Plutus.Contracts.Prism

Generic PrismError Source # 
Instance details

Defined in Plutus.Contracts.Prism

Associated Types

type Rep PrismError :: Type -> Type Source #

FromJSON PrismError Source # 
Instance details

Defined in Plutus.Contracts.Prism

Methods

parseJSON :: Value -> Parser PrismError

parseJSONList :: Value -> Parser [PrismError]

ToJSON PrismError Source # 
Instance details

Defined in Plutus.Contracts.Prism

Methods

toJSON :: PrismError -> Value

toEncoding :: PrismError -> Encoding

toJSONList :: [PrismError] -> Value

toEncodingList :: [PrismError] -> Encoding

AsContractError PrismError Source # 
Instance details

Defined in Plutus.Contracts.Prism

Methods

_ContractError :: Prism' PrismError ContractError

_WalletContractError :: Prism' PrismError WalletAPIError

_ChainIndexContractError :: Prism' PrismError (Text, ChainIndexResponse)

_ConstraintResolutionContractError :: Prism' PrismError MkTxError

_ToCardanoConvertContractError :: Prism' PrismError ToCardanoError

_ResumableContractError :: Prism' PrismError MatchingError

_CCheckpointContractError :: Prism' PrismError CheckpointError

_EndpointDecodeContractError :: Prism' PrismError (EndpointDescription, EndpointValue Value, Text)

_OtherContractError :: Prism' PrismError Text

type Rep PrismError Source # 
Instance details

Defined in Plutus.Contracts.Prism

type Rep PrismError = D1 ('MetaData "PrismError" "Plutus.Contracts.Prism" "plutus-use-cases-1.2.0.0-BuYOLXrynPcLosE012cowc" 'False) ((C1 ('MetaCons "UnlockSTOErr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnlockError)) :+: C1 ('MetaCons "MirrorErr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MirrorError))) :+: (C1 ('MetaCons "EPError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ContractError)) :+: C1 ('MetaCons "UnlockExchangeErr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnlockError))))

contract :: Contract () PrismSchema PrismError () Source #

A wrapper around the four prism contracts. This is just a workaround for the emulator, where we can only ever run a single Contract. In the PAB we could simply start all four contracts (credentialManager, mirror, subscribeSTO, subscribeExchange) separately.