From de593dadd534cdef72dc5e107db53c64489c0464 Mon Sep 17 00:00:00 2001 From: Joseph Young Date: Mon, 23 May 2022 21:14:16 +0100 Subject: [PATCH] Revert "Make publicKeyFromBech32 an Effect" This reverts commit 9c806beecda713edd475c785237168ffe4c0fe46. --- src/Serialization.purs | 4 ++-- src/Types/ScriptLookups.purs | 4 ++-- src/Types/UnbalancedTransaction.purs | 5 ++--- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/Serialization.purs b/src/Serialization.purs index c9a83c3132..497d6745cd 100644 --- a/src/Serialization.purs +++ b/src/Serialization.purs @@ -197,7 +197,7 @@ foreign import newVkeywitness :: Vkey -> Ed25519Signature -> Effect Vkeywitness foreign import addVkeywitness :: Vkeywitnesses -> Vkeywitness -> Effect Unit foreign import newVkeyFromPublicKey :: PublicKey -> Effect Vkey foreign import _publicKeyFromBech32 - :: MaybeFfiHelper -> Bech32String -> Effect (Maybe PublicKey) + :: MaybeFfiHelper -> Bech32String -> Maybe PublicKey foreign import publicKeyHash :: PublicKey -> Ed25519KeyHash foreign import newEd25519Signature :: Bech32String -> Effect Ed25519Signature @@ -568,7 +568,7 @@ convertWithdrawals mp = Tuple k <$> fromJustEff "convertWithdrawals: Failed to convert BigNum" (bigNumFromBigInt v) -publicKeyFromBech32 :: Bech32String -> Effect (Maybe PublicKey) +publicKeyFromBech32 :: Bech32String -> Maybe PublicKey publicKeyFromBech32 = _publicKeyFromBech32 maybeFfiHelper convertCerts :: Array T.Certificate -> Effect Certificates diff --git a/src/Types/ScriptLookups.purs b/src/Types/ScriptLookups.purs index fbc5acacc7..475be5c6cd 100644 --- a/src/Types/ScriptLookups.purs +++ b/src/Types/ScriptLookups.purs @@ -851,9 +851,9 @@ processConstraint mpsMap osMap = do MustBeSignedBy pkh -> runExceptT do ppkh <- use _lookups <#> unwrap >>> _.paymentPubKeyHashes sigs <- for (lookup pkh ppkh) $ - payPubKeyRequiredSigner >>> liftEffect >=> + payPubKeyRequiredSigner >>> maybe (throwError (CannotConvertPaymentPubKeyHash pkh)) - (pure <<< Array.singleton) + (pure <<< Array.singleton) _cpsToTxBody <<< _requiredSigners <>= sigs MustSpendAtLeast plutusValue -> do let value = unwrap $ fromPlutusType plutusValue diff --git a/src/Types/UnbalancedTransaction.purs b/src/Types/UnbalancedTransaction.purs index e4b3774325..d0d93ca86c 100644 --- a/src/Types/UnbalancedTransaction.purs +++ b/src/Types/UnbalancedTransaction.purs @@ -25,7 +25,6 @@ import Data.Maybe (Maybe) import Data.Newtype (class Newtype) import Data.Show.Generic (genericShow) import Data.Tuple (Tuple(Tuple)) -import Effect (Effect) import Serialization ( publicKeyFromBech32 , publicKeyHash @@ -63,9 +62,9 @@ instance Show ScriptOutput where payPubKeyVkey :: PaymentPubKey -> Vkey payPubKeyVkey (PaymentPubKey pk) = Vkey pk -payPubKeyRequiredSigner :: PaymentPubKey -> Effect (Maybe RequiredSigner) +payPubKeyRequiredSigner :: PaymentPubKey -> Maybe RequiredSigner payPubKeyRequiredSigner (PaymentPubKey (PublicKey bech32)) = - map (RequiredSigner <<< publicKeyHash) <$> publicKeyFromBech32 bech32 + RequiredSigner <<< publicKeyHash <$> publicKeyFromBech32 bech32 -- | An unbalanced transaction. It needs to be balanced and signed before it -- | can be submitted to the ledger.