diff --git a/src/Simplex/Messaging/Notifications/Protocol.hs b/src/Simplex/Messaging/Notifications/Protocol.hs index d3ad6d043..3640004e0 100644 --- a/src/Simplex/Messaging/Notifications/Protocol.hs +++ b/src/Simplex/Messaging/Notifications/Protocol.hs @@ -11,6 +11,8 @@ module Simplex.Messaging.Notifications.Protocol where import Data.Aeson (FromJSON (..), ToJSON (..)) +import qualified Data.Aeson as J +import qualified Data.Aeson.Encoding as JE import qualified Data.Attoparsec.ByteString.Char8 as A import Data.ByteString.Char8 (ByteString) import qualified Data.ByteString.Char8 as B @@ -417,6 +419,10 @@ instance FromField NtfTknStatus where fromField = fromTextField_ $ either (const instance ToField NtfTknStatus where toField = toField . decodeLatin1 . smpEncode +instance ToJSON NtfTknStatus where + toEncoding = JE.text . decodeLatin1 . smpEncode + toJSON = J.String . decodeLatin1 . smpEncode + checkEntity :: forall t e e'. (NtfEntityI e, NtfEntityI e') => t e' -> Either String (t e) checkEntity c = case testEquality (sNtfEntity @e) (sNtfEntity @e') of Just Refl -> Right c