Skip to content

Commit

Permalink
Formatting
Browse files Browse the repository at this point in the history
  • Loading branch information
jy14898 committed Nov 29, 2022
1 parent b5808e6 commit 277eee0
Show file tree
Hide file tree
Showing 38 changed files with 476 additions and 345 deletions.
14 changes: 7 additions & 7 deletions src/Contract/Address.purs
Expand Up @@ -45,6 +45,13 @@ import Ctl.Internal.Address
( addressPaymentValidatorHash
, addressStakeValidatorHash
) as Address
import Ctl.Internal.Contract.Wallet
( getNetworkId
, getWalletAddresses
, getWalletCollateral
, ownPaymentPubKeyHashes
, ownStakePubKeysHashes
) as Contract
import Ctl.Internal.Plutus.Conversion
( fromPlutusAddress
, fromPlutusAddressWithNetworkTag
Expand All @@ -68,13 +75,6 @@ import Ctl.Internal.Plutus.Types.Address
import Ctl.Internal.Plutus.Types.TransactionUnspentOutput
( TransactionUnspentOutput
)
import Ctl.Internal.Contract.Wallet
( getNetworkId
, getWalletAddresses
, ownPaymentPubKeyHashes
, ownStakePubKeysHashes
, getWalletCollateral
) as Contract
import Ctl.Internal.Scripts
( typedValidatorBaseAddress
, typedValidatorEnterpriseAddress
Expand Down
13 changes: 8 additions & 5 deletions src/Contract/Config.purs
Expand Up @@ -28,7 +28,10 @@ import Prelude

import Contract.Address (NetworkId(MainnetId, TestnetId))
import Ctl.Internal.Contract.Monad (ContractParams)
import Ctl.Internal.Contract.QueryBackend (QueryBackendParams(CtlBackendParams, BlockfrostBackendParams), mkSingletonBackendParams)
import Ctl.Internal.Contract.QueryBackend
( QueryBackendParams(CtlBackendParams, BlockfrostBackendParams)
, mkSingletonBackendParams
)
import Ctl.Internal.Deserialization.Keys (privateKeyFromBytes)
import Ctl.Internal.QueryM (emptyHooks)
import Ctl.Internal.QueryM (emptyHooks) as X
Expand Down Expand Up @@ -63,10 +66,10 @@ import Data.Maybe (Maybe(Just, Nothing))
testnetConfig :: ContractParams
testnetConfig =
{ backendParams: mkSingletonBackendParams $ CtlBackendParams
{ ogmiosConfig: defaultOgmiosWsConfig
, odcConfig: defaultDatumCacheWsConfig
, kupoConfig: defaultKupoServerConfig
}
{ ogmiosConfig: defaultOgmiosWsConfig
, odcConfig: defaultDatumCacheWsConfig
, kupoConfig: defaultKupoServerConfig
}
, ctlServerConfig: Just defaultServerConfig
, networkId: TestnetId
, walletSpec: Nothing
Expand Down
10 changes: 5 additions & 5 deletions src/Contract/Monad.purs
Expand Up @@ -17,10 +17,7 @@ module Contract.Monad

import Prelude

import Ctl.Internal.Contract.Monad
( mkContractEnv
, stopContractEnv
) as Contract
import Ctl.Internal.Contract.Monad (Contract, ContractEnv, ContractParams)
import Ctl.Internal.Contract.Monad
( Contract(Contract)
, ContractEnv
Expand All @@ -29,6 +26,10 @@ import Ctl.Internal.Contract.Monad
, runContractInEnv
, withContractEnv
) as ExportContract
import Ctl.Internal.Contract.Monad
( mkContractEnv
, stopContractEnv
) as Contract
import Data.Either (Either, either, hush)
import Data.Log.Tag
( TagSet
Expand All @@ -46,7 +47,6 @@ import Effect.Aff.Class (liftAff)
import Effect.Class (liftEffect)
import Effect.Exception (throw)
import Prim.TypeError (class Warn, Text)
import Ctl.Internal.Contract.Monad (ContractParams, ContractEnv, Contract)

-- | Initializes a `Contract` environment. Does not ensure finalization.
-- | Consider using `withContractEnv` if possible - otherwise use
Expand Down
2 changes: 1 addition & 1 deletion src/Contract/Scripts.purs
Expand Up @@ -26,6 +26,7 @@ import Ctl.Internal.Cardano.Types.NativeScript
, TimelockExpiry
)
) as NativeScript
import Ctl.Internal.Contract.ApplyArgs (applyArgs) as Contract
import Ctl.Internal.NativeScripts (NativeScriptHash(NativeScriptHash)) as X
import Ctl.Internal.QueryM
( ClientError
Expand All @@ -34,7 +35,6 @@ import Ctl.Internal.QueryM
, ClientEncodingError
)
) as ExportQueryM
import Ctl.Internal.Contract.ApplyArgs (applyArgs) as Contract
import Ctl.Internal.Scripts
( mintingPolicyHash
, nativeScriptStakeValidatorHash
Expand Down
2 changes: 1 addition & 1 deletion src/Contract/Staking.purs
Expand Up @@ -7,12 +7,12 @@ module Contract.Staking

import Prelude

import Ctl.Internal.Contract.Monad (wrapQueryM)
import Contract.Monad (Contract)
import Ctl.Internal.Cardano.Types.Transaction
( PoolPubKeyHash
, PoolRegistrationParams
)
import Ctl.Internal.Contract.Monad (wrapQueryM)
import Ctl.Internal.QueryM.Pools (DelegationsAndRewards)
import Ctl.Internal.QueryM.Pools as QueryM
import Ctl.Internal.Types.PubKeyHash (StakePubKeyHash)
Expand Down
14 changes: 7 additions & 7 deletions src/Contract/Time.purs
Expand Up @@ -13,18 +13,17 @@ module Contract.Time

import Prelude

import Effect.Aff.Class (liftAff)
import Ctl.Internal.Contract.QueryHandle (getQueryHandle)
import Control.Monad.Reader.Class (asks)
import Ctl.Internal.Contract.Monad (wrapQueryM)
import Contract.Chain
( BlockHeaderHash(BlockHeaderHash)
, ChainTip(ChainTip)
, Tip(Tip, TipAtGenesis)
, getTip
) as Chain
import Contract.Monad (Contract)
import Control.Monad.Reader.Class (asks)
import Ctl.Internal.Cardano.Types.Transaction (Epoch(Epoch))
import Ctl.Internal.Contract.Monad (wrapQueryM)
import Ctl.Internal.Contract.QueryHandle (getQueryHandle)
import Ctl.Internal.Helpers (liftM)
import Ctl.Internal.QueryM.EraSummaries (getEraSummaries) as EraSummaries
import Ctl.Internal.QueryM.Ogmios
Expand All @@ -41,12 +40,12 @@ import Ctl.Internal.QueryM.Ogmios
import Ctl.Internal.QueryM.Ogmios
( CurrentEpoch(CurrentEpoch)
, EraSummaries
, SystemStart
, SlotLength
, RelativeTime
, SlotLength
, SystemStart
)
import Ctl.Internal.Serialization.Address (Slot)
import Ctl.Internal.Serialization.Address (BlockId(BlockId), Slot(Slot)) as SerializationAddress
import Ctl.Internal.Serialization.Address (Slot)
import Ctl.Internal.Types.Interval
( AbsTime(AbsTime)
, Closure
Expand Down Expand Up @@ -104,6 +103,7 @@ import Ctl.Internal.Types.Interval
) as Interval
import Data.BigInt as BigInt
import Data.UInt as UInt
import Effect.Aff.Class (liftAff)
import Effect.Exception (error)

-- | Get the current Epoch.
Expand Down
21 changes: 11 additions & 10 deletions src/Contract/Transaction.purs
Expand Up @@ -40,16 +40,15 @@ module Contract.Transaction

import Prelude

import Contract.Prelude (undefined)
import Aeson (class EncodeAeson, Aeson)
import Ctl.Internal.Contract.QueryHandle (getQueryHandle)
import Contract.Monad
( Contract
, liftContractM
, liftedE
, liftedM
, runContractInEnv
)
import Contract.Prelude (undefined)
import Control.Monad.Error.Class (catchError, throwError)
import Control.Monad.Reader (ReaderT, asks, runReaderT)
import Control.Monad.Reader.Class (ask)
Expand Down Expand Up @@ -144,6 +143,14 @@ import Ctl.Internal.Cardano.Types.Transaction
, _body
, _outputs
)
import Ctl.Internal.Contract.AwaitTxConfirmed
( awaitTxConfirmed
, awaitTxConfirmedWithTimeout
, awaitTxConfirmedWithTimeoutSlots
) as Contract
import Ctl.Internal.Contract.MinFee (calculateMinFee) as Contract
import Ctl.Internal.Contract.QueryHandle (getQueryHandle)
import Ctl.Internal.Contract.Sign (signTransaction) as Contract
import Ctl.Internal.Hashing (transactionHash) as Hashing
import Ctl.Internal.Plutus.Conversion
( fromPlutusUtxoMap
Expand Down Expand Up @@ -172,13 +179,6 @@ import Ctl.Internal.QueryM
, ClientOtherError
)
) as ExportQueryM
import Ctl.Internal.Contract.AwaitTxConfirmed
( awaitTxConfirmed
, awaitTxConfirmedWithTimeout
, awaitTxConfirmedWithTimeoutSlots
) as Contract
import Ctl.Internal.Contract.MinFee (calculateMinFee) as Contract
import Ctl.Internal.Contract.Sign (signTransaction) as Contract
import Ctl.Internal.ReindexRedeemers
( ReindexErrors(CannotGetTxOutRefIndexForRedeemer)
) as ReindexRedeemersExport
Expand Down Expand Up @@ -518,7 +518,8 @@ awaitTxConfirmedWithTimeout
:: Seconds
-> TransactionHash
-> Contract Unit
awaitTxConfirmedWithTimeout timeout = Contract.awaitTxConfirmedWithTimeout timeout <<< unwrap
awaitTxConfirmedWithTimeout timeout =
Contract.awaitTxConfirmedWithTimeout timeout <<< unwrap

-- | Same as `awaitTxConfirmed`, but allows to specify a timeout in slots for waiting.
-- | Throws an exception on timeout.
Expand Down
4 changes: 2 additions & 2 deletions src/Contract/Utxos.purs
Expand Up @@ -16,7 +16,7 @@ import Contract.Prelude (for)
import Contract.Transaction (TransactionInput, TransactionOutput)
import Control.Monad.Reader.Class (asks)
import Ctl.Internal.Contract.QueryHandle (getQueryHandle)
import Effect.Aff.Class (liftAff)
import Ctl.Internal.Contract.Wallet (getWalletBalance, getWalletUtxos) as Utxos
import Ctl.Internal.Plutus.Conversion
( fromPlutusAddress
, toPlutusTxOutput
Expand All @@ -27,8 +27,8 @@ import Ctl.Internal.Plutus.Types.Address (class PlutusAddress, getAddress)
import Ctl.Internal.Plutus.Types.Transaction (UtxoMap)
import Ctl.Internal.Plutus.Types.Transaction (UtxoMap) as X
import Ctl.Internal.Plutus.Types.Value (Value)
import Ctl.Internal.Contract.Wallet (getWalletBalance, getWalletUtxos) as Utxos
import Data.Maybe (Maybe)
import Effect.Aff.Class (liftAff)

-- | Queries for utxos at the given Plutus `Address`.
utxosAt
Expand Down
2 changes: 1 addition & 1 deletion src/Contract/Wallet.purs
Expand Up @@ -24,14 +24,14 @@ import Contract.Monad (Contract)
import Contract.Utxos (getWalletUtxos) as Contract.Utxos
import Control.Monad.Reader (local)
import Control.Monad.Reader.Class (asks)
import Ctl.Internal.Deserialization.Keys (privateKeyFromBytes) as Deserialization.Keys
import Ctl.Internal.Contract.Wallet
( getChangeAddress
, getRewardAddresses
, getUnusedAddresses
, getWallet
, signData
) as Contract
import Ctl.Internal.Deserialization.Keys (privateKeyFromBytes) as Deserialization.Keys
import Ctl.Internal.Serialization.Address (Address, NetworkId)
import Ctl.Internal.Types.RawBytes (RawBytes)
import Ctl.Internal.Wallet
Expand Down
2 changes: 1 addition & 1 deletion src/Contract/Wallet/KeyFile.purs
Expand Up @@ -7,7 +7,6 @@ module Contract.Wallet.KeyFile
import Prelude

import Control.Monad.Reader.Class (asks)
import Effect.Aff.Class (liftAff)
import Ctl.Internal.Contract.Monad (Contract)
import Ctl.Internal.Wallet.Key (KeyWallet) as Wallet
import Ctl.Internal.Wallet.Key (privateKeysToKeyWallet)
Expand All @@ -21,6 +20,7 @@ import Ctl.Internal.Wallet.KeyFile
)
import Data.Maybe (Maybe)
import Data.Traversable (traverse)
import Effect.Aff.Class (liftAff)
import Node.Path (FilePath)

-- | Load `PrivateKey`s from `skey` files (the files should be in JSON format as
Expand Down
19 changes: 10 additions & 9 deletions src/Internal/BalanceTx/BalanceTx.purs
Expand Up @@ -11,8 +11,6 @@ import Control.Monad.Except.Trans (ExceptT(ExceptT), except, runExceptT)
import Control.Monad.Logger.Class (class MonadLogger)
import Control.Monad.Logger.Class as Logger
import Control.Monad.Reader.Class (asks)
import Effect.Aff.Class (liftAff)
import Ctl.Internal.Contract.QueryHandle (getQueryHandle)
import Ctl.Internal.BalanceTx.Collateral
( addTxCollateral
, addTxCollateralReturn
Expand Down Expand Up @@ -71,8 +69,8 @@ import Ctl.Internal.BalanceTx.Types
, askCoinsPerUtxoUnit
, askNetworkId
, asksConstraints
, liftEitherContract
, liftContract
, liftEitherContract
, withBalanceTxConstraints
)
import Ctl.Internal.BalanceTx.Types (FinalizedTransaction(FinalizedTransaction)) as FinalizedTransaction
Expand Down Expand Up @@ -106,11 +104,12 @@ import Ctl.Internal.Cardano.Types.Value
, valueToCoin'
)
import Ctl.Internal.Contract.Monad (Contract)
import Ctl.Internal.Contract.Wallet (getChangeAddress, getWalletAddresses) as Contract
import Ctl.Internal.Contract.QueryHandle (getQueryHandle)
import Ctl.Internal.Contract.Wallet
( getWalletCollateral
, filterLockedUtxos
( filterLockedUtxos
, getWalletCollateral
)
import Ctl.Internal.Contract.Wallet (getChangeAddress, getWalletAddresses) as Contract
import Ctl.Internal.Serialization.Address
( Address
, addressPaymentCred
Expand All @@ -136,6 +135,7 @@ import Data.Set (Set)
import Data.Set as Set
import Data.Traversable (traverse, traverse_)
import Data.Tuple.Nested (type (/\), (/\))
import Effect.Aff.Class (liftAff)
import Effect.Class (class MonadEffect, liftEffect)

-- | Balances an unbalanced transaction using the specified balancer
Expand All @@ -160,10 +160,11 @@ balanceTxWithConstraints unbalancedTx constraintsBuilder = do

changeAddr <- getChangeAddress

utxos <- liftEitherContract $ traverse (queryHandle.utxosAt >>> liftAff >>> map hush) srcAddrs <#>
traverse (note CouldNotGetUtxos) -- Maybe -> Either and unwrap UtxoM
utxos <- liftEitherContract $
traverse (queryHandle.utxosAt >>> liftAff >>> map hush) srcAddrs <#>
traverse (note CouldNotGetUtxos) -- Maybe -> Either and unwrap UtxoM

>>> map (foldr Map.union Map.empty) -- merge all utxos into one map
>>> map (foldr Map.union Map.empty) -- merge all utxos into one map

unbalancedCollTx <-
case Array.null (unbalancedTx ^. _redeemersTxIns) of
Expand Down
9 changes: 5 additions & 4 deletions src/Internal/BalanceTx/ExUnitsAndMinFee.purs
Expand Up @@ -6,8 +6,6 @@ module Ctl.Internal.BalanceTx.ExUnitsAndMinFee
import Prelude

import Control.Monad.Error.Class (liftEither, throwError)
import Effect.Aff.Class (liftAff)
import Ctl.Internal.Contract.QueryHandle (getQueryHandle)
import Control.Monad.Except.Trans (except)
import Ctl.Internal.BalanceTx.Constraints (_additionalUtxos) as Constraints
import Ctl.Internal.BalanceTx.Error
Expand Down Expand Up @@ -43,8 +41,9 @@ import Ctl.Internal.Cardano.Types.Transaction
, _redeemers
, _witnessSet
)
import Ctl.Internal.Plutus.Conversion (fromPlutusUtxoMap)
import Ctl.Internal.Contract.MinFee (calculateMinFee) as Contract
import Ctl.Internal.Contract.QueryHandle (getQueryHandle)
import Ctl.Internal.Plutus.Conversion (fromPlutusUtxoMap)
import Ctl.Internal.QueryM.Ogmios
( AdditionalUtxoSet
, TxEvaluationResult(TxEvaluationResult)
Expand Down Expand Up @@ -82,6 +81,7 @@ import Data.Set as Set
import Data.Traversable (for)
import Data.Tuple (fst, snd)
import Data.Tuple.Nested (type (/\), (/\))
import Effect.Aff.Class (liftAff)
import Effect.Class (liftEffect)

evalTxExecutionUnits
Expand All @@ -92,7 +92,8 @@ evalTxExecutionUnits tx unattachedTx = do
queryHandle <- liftContract getQueryHandle
additionalUtxos <- getOgmiosAdditionalUtxoSet
evalResult <-
unwrap <$> liftContract (liftAff $ queryHandle.evaluateTx tx additionalUtxos)
unwrap <$> liftContract
(liftAff $ queryHandle.evaluateTx tx additionalUtxos)

case evalResult of
Right a -> pure a
Expand Down
5 changes: 3 additions & 2 deletions src/Internal/BalanceTx/Types.purs
Expand Up @@ -28,7 +28,7 @@ import Ctl.Internal.BalanceTx.Constraints
) as Constraints
import Ctl.Internal.BalanceTx.Error (BalanceTxError)
import Ctl.Internal.Cardano.Types.Transaction (Costmdls(Costmdls), Transaction)
import Ctl.Internal.Contract.Monad (ContractEnv, Contract)
import Ctl.Internal.Contract.Monad (Contract, ContractEnv)
import Ctl.Internal.QueryM.Ogmios (CoinsPerUtxoUnit)
import Ctl.Internal.Serialization.Address (NetworkId)
import Ctl.Internal.Types.ScriptLookups (UnattachedUnbalancedTx)
Expand Down Expand Up @@ -66,7 +66,8 @@ asksContractEnv = lift <<< lift <<< asks

askCoinsPerUtxoUnit :: BalanceTxM CoinsPerUtxoUnit
askCoinsPerUtxoUnit =
asksContractEnv (_.coinsPerUtxoUnit <<< unwrap <<< _.pparams <<< _.ledgerConstants)
asksContractEnv
(_.coinsPerUtxoUnit <<< unwrap <<< _.pparams <<< _.ledgerConstants)

askCip30Wallet :: BalanceTxM (Maybe Cip30Wallet)
askCip30Wallet = asksContractEnv (cip30Wallet <=< _.wallet)
Expand Down

0 comments on commit 277eee0

Please sign in to comment.