Account for missing response fields in Zebra response (#43)

This PR adds code to account for the missing `time` field in the Zebra response for blocks and raw transactions.

Reviewed-on: #43
Co-authored-by: pitmutt <rene@vergara.network>
Co-committed-by: pitmutt <rene@vergara.network>
This commit is contained in:
pitmutt 2024-03-22 18:04:04 +00:00 committed by Vergara Technologies LLC
parent aa10e09595
commit f099544162
Signed by: Vergara Technologies LLC
GPG key ID: 99DB473BB4715618

View file

@ -7,7 +7,7 @@
-- Copyright : 2022-2024 Vergara Technologies
-- License : MIT
--
-- Maintainer : pitmut@vergara.tech
-- Maintainer : pitmutt@vergara.tech
-- Stability : experimental
-- Portability : unknown
--
@ -31,6 +31,7 @@ import qualified Data.ByteString as BS
import qualified Data.ByteString.Char8 as C
import Data.HexString
import Data.Int
import Data.Maybe (fromMaybe)
import Data.Structured
import qualified Data.Text as T
import qualified Data.Text.Encoding as E
@ -199,9 +200,9 @@ instance FromJSON BlockResponse where
withObject "BlockResponse" $ \obj -> do
c <- obj .: "confirmations"
h <- obj .: "height"
t <- obj .: "time"
t <- obj .:? "time"
txs <- obj .: "tx"
pure $ BlockResponse c h t txs
pure $ BlockResponse c h (fromMaybe 0 t) txs
-- | Type to represent response from the `zcashd` RPC `getrawtransaction`
data RawTxResponse = RawTxResponse