smsaero 0.6 → 0.6.1
raw patch · 3 files changed
+13/−4 lines, 3 files
Files
- CHANGELOG.md +4/−0
- smsaero.cabal +2/−2
- src/SMSAero/API.hs +7/−2
CHANGELOG.md view
@@ -1,3 +1,7 @@+0.6.1+---+* Fix `SmsAeroBalance` `ToJSON`/`FromJSON` instances.+ 0.6 --- * Change client function types (see [#11](https://github.com/GetShopTV/smsaero/pull/11)).
smsaero.cabal view
@@ -1,5 +1,5 @@ name: smsaero-version: 0.6+version: 0.6.1 synopsis: SMSAero API and HTTP client based on servant library. description: Please see README.md homepage: https://github.com/GetShopTV/smsaero@@ -7,7 +7,7 @@ license-file: LICENSE author: Nickolay Kudasov maintainer: nickolay@getshoptv.com-copyright: (c) 2015, GetShopTV+copyright: (c) 2015-2016, GetShopTV category: Web build-type: Simple extra-source-files:
src/SMSAero/API.hs view
@@ -61,6 +61,7 @@ import qualified Data.Map as Map import Data.Maybe (catMaybes)+import Text.Read (readEither) import Control.Applicative import Control.Arrow ((***))@@ -394,11 +395,15 @@ toJSON status = object [ "result" .= toUrlPiece status ] instance FromJSON BalanceResponse where- parseJSON (Object o) = BalanceResponse <$> o .: "balance"+ parseJSON (Object o) = do+ str <- o .: "balance"+ case readEither str of+ Left err -> fail err+ Right b -> return (BalanceResponse b) parseJSON _ = empty instance ToJSON BalanceResponse where- toJSON (BalanceResponse n) = object [ "balance" .= n ]+ toJSON (BalanceResponse n) = object [ "balance" .= show n ] instance ToHttpApiData SignResponse where toQueryParam SignApproved = "approved"