@@ -15,9 +15,9 @@ import Data.Aeson (FromJSON (..), ToJSON (..), object, withObject, (.:
15
15
import qualified Data.Aeson as Aeson
16
16
import Data.Aeson.Encoding (unsafeToEncoding )
17
17
import qualified Data.Aeson.Types ()
18
+ import qualified Data.ByteString.Builder as BSB
18
19
import qualified Data.ByteString.Lazy as LBS
19
20
import Data.Swagger (NamedSchema (.. ), ToParamSchema (.. ), ToSchema (.. ))
20
- import qualified Data.Text.Encoding as Text
21
21
import Data.Time.Clock (UTCTime )
22
22
import qualified Data.Time.Clock.POSIX as Time
23
23
import Data.Time.Format (defaultTimeLocale , formatTime , parseTimeM )
@@ -315,19 +315,20 @@ instance ToSchema PoolIdBlockNumber
315
315
316
316
-- | The stake pool metadata in JSON format. This type represents it in
317
317
-- its raw original form. The hash of this content is the 'PoolMetadataHash'.
318
- newtype PoolMetadataRaw = PoolMetadataRaw { getPoolMetadata :: Text }
318
+ newtype PoolMetadataRaw = PoolMetadataRaw { getPoolMetadata :: ByteString }
319
319
deriving stock (Eq , Show , Ord , Generic )
320
320
321
321
instance MimeUnrender OctetStream PoolMetadataRaw where
322
- mimeUnrender _ = Right . PoolMetadataRaw . Text. decodeUtf8 . LBS. toStrict
322
+ mimeUnrender _ = Right . PoolMetadataRaw . LBS. toStrict
323
323
324
324
-- Here we are usingg the unsafe encoding since we already have the JSON format
325
325
-- from the database.
326
326
instance ToJSON PoolMetadataRaw where
327
327
toJSON (PoolMetadataRaw metadata) = toJSON metadata
328
- toEncoding (PoolMetadataRaw metadata) = unsafeToEncoding $ Text. encodeUtf8Builder metadata
328
+ toEncoding (PoolMetadataRaw metadata) = unsafeToEncoding $ BSB. byteString metadata
329
329
330
- instance ToSchema PoolMetadataRaw
330
+ instance ToSchema PoolMetadataRaw where
331
+ declareNamedSchema _ = pure (NamedSchema (Just " RawPoolMetadata" ) mempty )
331
332
332
333
-- | Specific time string format.
333
334
newtype TimeStringFormat = TimeStringFormat { unTimeStringFormat :: UTCTime }
0 commit comments