{-# LANGUAGE MultiWayIf #-}
{-# LANGUAGE OverloadedStrings #-}
module StripeAPI.Types.IssuingTransactionPurchaseDetails where
import qualified Control.Monad.Fail
import qualified Data.Aeson
import qualified Data.Aeson as Data.Aeson.Encoding.Internal
import qualified Data.Aeson as Data.Aeson.Types
import qualified Data.Aeson as Data.Aeson.Types.FromJSON
import qualified Data.Aeson as Data.Aeson.Types.Internal
import qualified Data.Aeson as Data.Aeson.Types.ToJSON
import qualified Data.ByteString.Char8
import qualified Data.ByteString.Char8 as Data.ByteString.Internal
import qualified Data.Functor
import qualified Data.Scientific
import qualified Data.Text
import qualified Data.Text.Internal
import qualified Data.Time.Calendar as Data.Time.Calendar.Days
import qualified Data.Time.LocalTime as Data.Time.LocalTime.Internal.ZonedTime
import qualified GHC.Base
import qualified GHC.Classes
import qualified GHC.Int
import qualified GHC.Show
import qualified GHC.Types
import qualified StripeAPI.Common
import StripeAPI.TypeAlias
import {-# SOURCE #-} StripeAPI.Types.IssuingTransactionFlightData
import {-# SOURCE #-} StripeAPI.Types.IssuingTransactionFlightDataLeg
import {-# SOURCE #-} StripeAPI.Types.IssuingTransactionFuelData
import {-# SOURCE #-} StripeAPI.Types.IssuingTransactionLodgingData
import {-# SOURCE #-} StripeAPI.Types.IssuingTransactionReceiptData
import qualified Prelude as GHC.Integer.Type
import qualified Prelude as GHC.Maybe
data IssuingTransactionPurchaseDetails = IssuingTransactionPurchaseDetails
{
IssuingTransactionPurchaseDetails
-> Maybe IssuingTransactionPurchaseDetailsFlight'
issuingTransactionPurchaseDetailsFlight :: (GHC.Maybe.Maybe IssuingTransactionPurchaseDetailsFlight'),
IssuingTransactionPurchaseDetails
-> Maybe IssuingTransactionPurchaseDetailsFuel'
issuingTransactionPurchaseDetailsFuel :: (GHC.Maybe.Maybe IssuingTransactionPurchaseDetailsFuel'),
IssuingTransactionPurchaseDetails
-> Maybe IssuingTransactionPurchaseDetailsLodging'
issuingTransactionPurchaseDetailsLodging :: (GHC.Maybe.Maybe IssuingTransactionPurchaseDetailsLodging'),
IssuingTransactionPurchaseDetails
-> Maybe [IssuingTransactionReceiptData]
issuingTransactionPurchaseDetailsReceipt :: (GHC.Maybe.Maybe ([IssuingTransactionReceiptData])),
IssuingTransactionPurchaseDetails -> Maybe Text
issuingTransactionPurchaseDetailsReference :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
}
deriving
( Int -> IssuingTransactionPurchaseDetails -> ShowS
[IssuingTransactionPurchaseDetails] -> ShowS
IssuingTransactionPurchaseDetails -> String
(Int -> IssuingTransactionPurchaseDetails -> ShowS)
-> (IssuingTransactionPurchaseDetails -> String)
-> ([IssuingTransactionPurchaseDetails] -> ShowS)
-> Show IssuingTransactionPurchaseDetails
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [IssuingTransactionPurchaseDetails] -> ShowS
$cshowList :: [IssuingTransactionPurchaseDetails] -> ShowS
show :: IssuingTransactionPurchaseDetails -> String
$cshow :: IssuingTransactionPurchaseDetails -> String
showsPrec :: Int -> IssuingTransactionPurchaseDetails -> ShowS
$cshowsPrec :: Int -> IssuingTransactionPurchaseDetails -> ShowS
GHC.Show.Show,
IssuingTransactionPurchaseDetails
-> IssuingTransactionPurchaseDetails -> Bool
(IssuingTransactionPurchaseDetails
-> IssuingTransactionPurchaseDetails -> Bool)
-> (IssuingTransactionPurchaseDetails
-> IssuingTransactionPurchaseDetails -> Bool)
-> Eq IssuingTransactionPurchaseDetails
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: IssuingTransactionPurchaseDetails
-> IssuingTransactionPurchaseDetails -> Bool
$c/= :: IssuingTransactionPurchaseDetails
-> IssuingTransactionPurchaseDetails -> Bool
== :: IssuingTransactionPurchaseDetails
-> IssuingTransactionPurchaseDetails -> Bool
$c== :: IssuingTransactionPurchaseDetails
-> IssuingTransactionPurchaseDetails -> Bool
GHC.Classes.Eq
)
instance Data.Aeson.Types.ToJSON.ToJSON IssuingTransactionPurchaseDetails where
toJSON :: IssuingTransactionPurchaseDetails -> Value
toJSON IssuingTransactionPurchaseDetails
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"flight" Text -> Maybe IssuingTransactionPurchaseDetailsFlight' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetails
-> Maybe IssuingTransactionPurchaseDetailsFlight'
issuingTransactionPurchaseDetailsFlight IssuingTransactionPurchaseDetails
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"fuel" Text -> Maybe IssuingTransactionPurchaseDetailsFuel' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetails
-> Maybe IssuingTransactionPurchaseDetailsFuel'
issuingTransactionPurchaseDetailsFuel IssuingTransactionPurchaseDetails
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"lodging" Text -> Maybe IssuingTransactionPurchaseDetailsLodging' -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetails
-> Maybe IssuingTransactionPurchaseDetailsLodging'
issuingTransactionPurchaseDetailsLodging IssuingTransactionPurchaseDetails
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"receipt" Text -> Maybe [IssuingTransactionReceiptData] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetails
-> Maybe [IssuingTransactionReceiptData]
issuingTransactionPurchaseDetailsReceipt IssuingTransactionPurchaseDetails
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"reference" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetails -> Maybe Text
issuingTransactionPurchaseDetailsReference IssuingTransactionPurchaseDetails
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
toEncoding :: IssuingTransactionPurchaseDetails -> Encoding
toEncoding IssuingTransactionPurchaseDetails
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"flight" Text -> Maybe IssuingTransactionPurchaseDetailsFlight' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetails
-> Maybe IssuingTransactionPurchaseDetailsFlight'
issuingTransactionPurchaseDetailsFlight IssuingTransactionPurchaseDetails
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"fuel" Text -> Maybe IssuingTransactionPurchaseDetailsFuel' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetails
-> Maybe IssuingTransactionPurchaseDetailsFuel'
issuingTransactionPurchaseDetailsFuel IssuingTransactionPurchaseDetails
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"lodging" Text -> Maybe IssuingTransactionPurchaseDetailsLodging' -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetails
-> Maybe IssuingTransactionPurchaseDetailsLodging'
issuingTransactionPurchaseDetailsLodging IssuingTransactionPurchaseDetails
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"receipt" Text -> Maybe [IssuingTransactionReceiptData] -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetails
-> Maybe [IssuingTransactionReceiptData]
issuingTransactionPurchaseDetailsReceipt IssuingTransactionPurchaseDetails
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"reference" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetails -> Maybe Text
issuingTransactionPurchaseDetailsReference IssuingTransactionPurchaseDetails
obj)))))
instance Data.Aeson.Types.FromJSON.FromJSON IssuingTransactionPurchaseDetails where
parseJSON :: Value -> Parser IssuingTransactionPurchaseDetails
parseJSON = String
-> (Object -> Parser IssuingTransactionPurchaseDetails)
-> Value
-> Parser IssuingTransactionPurchaseDetails
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"IssuingTransactionPurchaseDetails" (\Object
obj -> (((((Maybe IssuingTransactionPurchaseDetailsFlight'
-> Maybe IssuingTransactionPurchaseDetailsFuel'
-> Maybe IssuingTransactionPurchaseDetailsLodging'
-> Maybe [IssuingTransactionReceiptData]
-> Maybe Text
-> IssuingTransactionPurchaseDetails)
-> Parser
(Maybe IssuingTransactionPurchaseDetailsFlight'
-> Maybe IssuingTransactionPurchaseDetailsFuel'
-> Maybe IssuingTransactionPurchaseDetailsLodging'
-> Maybe [IssuingTransactionReceiptData]
-> Maybe Text
-> IssuingTransactionPurchaseDetails)
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe IssuingTransactionPurchaseDetailsFlight'
-> Maybe IssuingTransactionPurchaseDetailsFuel'
-> Maybe IssuingTransactionPurchaseDetailsLodging'
-> Maybe [IssuingTransactionReceiptData]
-> Maybe Text
-> IssuingTransactionPurchaseDetails
IssuingTransactionPurchaseDetails Parser
(Maybe IssuingTransactionPurchaseDetailsFlight'
-> Maybe IssuingTransactionPurchaseDetailsFuel'
-> Maybe IssuingTransactionPurchaseDetailsLodging'
-> Maybe [IssuingTransactionReceiptData]
-> Maybe Text
-> IssuingTransactionPurchaseDetails)
-> Parser (Maybe IssuingTransactionPurchaseDetailsFlight')
-> Parser
(Maybe IssuingTransactionPurchaseDetailsFuel'
-> Maybe IssuingTransactionPurchaseDetailsLodging'
-> Maybe [IssuingTransactionReceiptData]
-> Maybe Text
-> IssuingTransactionPurchaseDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text -> Parser (Maybe IssuingTransactionPurchaseDetailsFlight')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"flight")) Parser
(Maybe IssuingTransactionPurchaseDetailsFuel'
-> Maybe IssuingTransactionPurchaseDetailsLodging'
-> Maybe [IssuingTransactionReceiptData]
-> Maybe Text
-> IssuingTransactionPurchaseDetails)
-> Parser (Maybe IssuingTransactionPurchaseDetailsFuel')
-> Parser
(Maybe IssuingTransactionPurchaseDetailsLodging'
-> Maybe [IssuingTransactionReceiptData]
-> Maybe Text
-> IssuingTransactionPurchaseDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text -> Parser (Maybe IssuingTransactionPurchaseDetailsFuel')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"fuel")) Parser
(Maybe IssuingTransactionPurchaseDetailsLodging'
-> Maybe [IssuingTransactionReceiptData]
-> Maybe Text
-> IssuingTransactionPurchaseDetails)
-> Parser (Maybe IssuingTransactionPurchaseDetailsLodging')
-> Parser
(Maybe [IssuingTransactionReceiptData]
-> Maybe Text -> IssuingTransactionPurchaseDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object
-> Text -> Parser (Maybe IssuingTransactionPurchaseDetailsLodging')
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"lodging")) Parser
(Maybe [IssuingTransactionReceiptData]
-> Maybe Text -> IssuingTransactionPurchaseDetails)
-> Parser (Maybe [IssuingTransactionReceiptData])
-> Parser (Maybe Text -> IssuingTransactionPurchaseDetails)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe [IssuingTransactionReceiptData])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"receipt")) Parser (Maybe Text -> IssuingTransactionPurchaseDetails)
-> Parser (Maybe Text) -> Parser IssuingTransactionPurchaseDetails
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"reference"))
mkIssuingTransactionPurchaseDetails :: IssuingTransactionPurchaseDetails
mkIssuingTransactionPurchaseDetails :: IssuingTransactionPurchaseDetails
mkIssuingTransactionPurchaseDetails =
IssuingTransactionPurchaseDetails :: Maybe IssuingTransactionPurchaseDetailsFlight'
-> Maybe IssuingTransactionPurchaseDetailsFuel'
-> Maybe IssuingTransactionPurchaseDetailsLodging'
-> Maybe [IssuingTransactionReceiptData]
-> Maybe Text
-> IssuingTransactionPurchaseDetails
IssuingTransactionPurchaseDetails
{ issuingTransactionPurchaseDetailsFlight :: Maybe IssuingTransactionPurchaseDetailsFlight'
issuingTransactionPurchaseDetailsFlight = Maybe IssuingTransactionPurchaseDetailsFlight'
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsFuel :: Maybe IssuingTransactionPurchaseDetailsFuel'
issuingTransactionPurchaseDetailsFuel = Maybe IssuingTransactionPurchaseDetailsFuel'
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsLodging :: Maybe IssuingTransactionPurchaseDetailsLodging'
issuingTransactionPurchaseDetailsLodging = Maybe IssuingTransactionPurchaseDetailsLodging'
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsReceipt :: Maybe [IssuingTransactionReceiptData]
issuingTransactionPurchaseDetailsReceipt = Maybe [IssuingTransactionReceiptData]
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsReference :: Maybe Text
issuingTransactionPurchaseDetailsReference = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
}
data IssuingTransactionPurchaseDetailsFlight' = IssuingTransactionPurchaseDetailsFlight'
{
IssuingTransactionPurchaseDetailsFlight' -> Maybe Int
issuingTransactionPurchaseDetailsFlight'DepartureAt :: (GHC.Maybe.Maybe GHC.Types.Int),
IssuingTransactionPurchaseDetailsFlight' -> Maybe Text
issuingTransactionPurchaseDetailsFlight'PassengerName :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
IssuingTransactionPurchaseDetailsFlight' -> Maybe Bool
issuingTransactionPurchaseDetailsFlight'Refundable :: (GHC.Maybe.Maybe GHC.Types.Bool),
IssuingTransactionPurchaseDetailsFlight'
-> Maybe [IssuingTransactionFlightDataLeg]
issuingTransactionPurchaseDetailsFlight'Segments :: (GHC.Maybe.Maybe ([IssuingTransactionFlightDataLeg])),
IssuingTransactionPurchaseDetailsFlight' -> Maybe Text
issuingTransactionPurchaseDetailsFlight'TravelAgency :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
}
deriving
( Int -> IssuingTransactionPurchaseDetailsFlight' -> ShowS
[IssuingTransactionPurchaseDetailsFlight'] -> ShowS
IssuingTransactionPurchaseDetailsFlight' -> String
(Int -> IssuingTransactionPurchaseDetailsFlight' -> ShowS)
-> (IssuingTransactionPurchaseDetailsFlight' -> String)
-> ([IssuingTransactionPurchaseDetailsFlight'] -> ShowS)
-> Show IssuingTransactionPurchaseDetailsFlight'
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [IssuingTransactionPurchaseDetailsFlight'] -> ShowS
$cshowList :: [IssuingTransactionPurchaseDetailsFlight'] -> ShowS
show :: IssuingTransactionPurchaseDetailsFlight' -> String
$cshow :: IssuingTransactionPurchaseDetailsFlight' -> String
showsPrec :: Int -> IssuingTransactionPurchaseDetailsFlight' -> ShowS
$cshowsPrec :: Int -> IssuingTransactionPurchaseDetailsFlight' -> ShowS
GHC.Show.Show,
IssuingTransactionPurchaseDetailsFlight'
-> IssuingTransactionPurchaseDetailsFlight' -> Bool
(IssuingTransactionPurchaseDetailsFlight'
-> IssuingTransactionPurchaseDetailsFlight' -> Bool)
-> (IssuingTransactionPurchaseDetailsFlight'
-> IssuingTransactionPurchaseDetailsFlight' -> Bool)
-> Eq IssuingTransactionPurchaseDetailsFlight'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: IssuingTransactionPurchaseDetailsFlight'
-> IssuingTransactionPurchaseDetailsFlight' -> Bool
$c/= :: IssuingTransactionPurchaseDetailsFlight'
-> IssuingTransactionPurchaseDetailsFlight' -> Bool
== :: IssuingTransactionPurchaseDetailsFlight'
-> IssuingTransactionPurchaseDetailsFlight' -> Bool
$c== :: IssuingTransactionPurchaseDetailsFlight'
-> IssuingTransactionPurchaseDetailsFlight' -> Bool
GHC.Classes.Eq
)
instance Data.Aeson.Types.ToJSON.ToJSON IssuingTransactionPurchaseDetailsFlight' where
toJSON :: IssuingTransactionPurchaseDetailsFlight' -> Value
toJSON IssuingTransactionPurchaseDetailsFlight'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"departure_at" Text -> Maybe Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFlight' -> Maybe Int
issuingTransactionPurchaseDetailsFlight'DepartureAt IssuingTransactionPurchaseDetailsFlight'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"passenger_name" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFlight' -> Maybe Text
issuingTransactionPurchaseDetailsFlight'PassengerName IssuingTransactionPurchaseDetailsFlight'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"refundable" Text -> Maybe Bool -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFlight' -> Maybe Bool
issuingTransactionPurchaseDetailsFlight'Refundable IssuingTransactionPurchaseDetailsFlight'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"segments" Text -> Maybe [IssuingTransactionFlightDataLeg] -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFlight'
-> Maybe [IssuingTransactionFlightDataLeg]
issuingTransactionPurchaseDetailsFlight'Segments IssuingTransactionPurchaseDetailsFlight'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"travel_agency" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFlight' -> Maybe Text
issuingTransactionPurchaseDetailsFlight'TravelAgency IssuingTransactionPurchaseDetailsFlight'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
toEncoding :: IssuingTransactionPurchaseDetailsFlight' -> Encoding
toEncoding IssuingTransactionPurchaseDetailsFlight'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"departure_at" Text -> Maybe Int -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFlight' -> Maybe Int
issuingTransactionPurchaseDetailsFlight'DepartureAt IssuingTransactionPurchaseDetailsFlight'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"passenger_name" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFlight' -> Maybe Text
issuingTransactionPurchaseDetailsFlight'PassengerName IssuingTransactionPurchaseDetailsFlight'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"refundable" Text -> Maybe Bool -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFlight' -> Maybe Bool
issuingTransactionPurchaseDetailsFlight'Refundable IssuingTransactionPurchaseDetailsFlight'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"segments" Text -> Maybe [IssuingTransactionFlightDataLeg] -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFlight'
-> Maybe [IssuingTransactionFlightDataLeg]
issuingTransactionPurchaseDetailsFlight'Segments IssuingTransactionPurchaseDetailsFlight'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"travel_agency" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFlight' -> Maybe Text
issuingTransactionPurchaseDetailsFlight'TravelAgency IssuingTransactionPurchaseDetailsFlight'
obj)))))
instance Data.Aeson.Types.FromJSON.FromJSON IssuingTransactionPurchaseDetailsFlight' where
parseJSON :: Value -> Parser IssuingTransactionPurchaseDetailsFlight'
parseJSON = String
-> (Object -> Parser IssuingTransactionPurchaseDetailsFlight')
-> Value
-> Parser IssuingTransactionPurchaseDetailsFlight'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"IssuingTransactionPurchaseDetailsFlight'" (\Object
obj -> (((((Maybe Int
-> Maybe Text
-> Maybe Bool
-> Maybe [IssuingTransactionFlightDataLeg]
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFlight')
-> Parser
(Maybe Int
-> Maybe Text
-> Maybe Bool
-> Maybe [IssuingTransactionFlightDataLeg]
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFlight')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Int
-> Maybe Text
-> Maybe Bool
-> Maybe [IssuingTransactionFlightDataLeg]
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFlight'
IssuingTransactionPurchaseDetailsFlight' Parser
(Maybe Int
-> Maybe Text
-> Maybe Bool
-> Maybe [IssuingTransactionFlightDataLeg]
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFlight')
-> Parser (Maybe Int)
-> Parser
(Maybe Text
-> Maybe Bool
-> Maybe [IssuingTransactionFlightDataLeg]
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFlight')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"departure_at")) Parser
(Maybe Text
-> Maybe Bool
-> Maybe [IssuingTransactionFlightDataLeg]
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFlight')
-> Parser (Maybe Text)
-> Parser
(Maybe Bool
-> Maybe [IssuingTransactionFlightDataLeg]
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFlight')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"passenger_name")) Parser
(Maybe Bool
-> Maybe [IssuingTransactionFlightDataLeg]
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFlight')
-> Parser (Maybe Bool)
-> Parser
(Maybe [IssuingTransactionFlightDataLeg]
-> Maybe Text -> IssuingTransactionPurchaseDetailsFlight')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"refundable")) Parser
(Maybe [IssuingTransactionFlightDataLeg]
-> Maybe Text -> IssuingTransactionPurchaseDetailsFlight')
-> Parser (Maybe [IssuingTransactionFlightDataLeg])
-> Parser (Maybe Text -> IssuingTransactionPurchaseDetailsFlight')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe [IssuingTransactionFlightDataLeg])
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"segments")) Parser (Maybe Text -> IssuingTransactionPurchaseDetailsFlight')
-> Parser (Maybe Text)
-> Parser IssuingTransactionPurchaseDetailsFlight'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"travel_agency"))
mkIssuingTransactionPurchaseDetailsFlight' :: IssuingTransactionPurchaseDetailsFlight'
mkIssuingTransactionPurchaseDetailsFlight' :: IssuingTransactionPurchaseDetailsFlight'
mkIssuingTransactionPurchaseDetailsFlight' =
IssuingTransactionPurchaseDetailsFlight' :: Maybe Int
-> Maybe Text
-> Maybe Bool
-> Maybe [IssuingTransactionFlightDataLeg]
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFlight'
IssuingTransactionPurchaseDetailsFlight'
{ issuingTransactionPurchaseDetailsFlight'DepartureAt :: Maybe Int
issuingTransactionPurchaseDetailsFlight'DepartureAt = Maybe Int
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsFlight'PassengerName :: Maybe Text
issuingTransactionPurchaseDetailsFlight'PassengerName = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsFlight'Refundable :: Maybe Bool
issuingTransactionPurchaseDetailsFlight'Refundable = Maybe Bool
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsFlight'Segments :: Maybe [IssuingTransactionFlightDataLeg]
issuingTransactionPurchaseDetailsFlight'Segments = Maybe [IssuingTransactionFlightDataLeg]
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsFlight'TravelAgency :: Maybe Text
issuingTransactionPurchaseDetailsFlight'TravelAgency = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
}
data IssuingTransactionPurchaseDetailsFuel' = IssuingTransactionPurchaseDetailsFuel'
{
IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'Type :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'Unit :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'UnitCostDecimal :: (GHC.Maybe.Maybe Data.Text.Internal.Text),
IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'VolumeDecimal :: (GHC.Maybe.Maybe Data.Text.Internal.Text)
}
deriving
( Int -> IssuingTransactionPurchaseDetailsFuel' -> ShowS
[IssuingTransactionPurchaseDetailsFuel'] -> ShowS
IssuingTransactionPurchaseDetailsFuel' -> String
(Int -> IssuingTransactionPurchaseDetailsFuel' -> ShowS)
-> (IssuingTransactionPurchaseDetailsFuel' -> String)
-> ([IssuingTransactionPurchaseDetailsFuel'] -> ShowS)
-> Show IssuingTransactionPurchaseDetailsFuel'
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [IssuingTransactionPurchaseDetailsFuel'] -> ShowS
$cshowList :: [IssuingTransactionPurchaseDetailsFuel'] -> ShowS
show :: IssuingTransactionPurchaseDetailsFuel' -> String
$cshow :: IssuingTransactionPurchaseDetailsFuel' -> String
showsPrec :: Int -> IssuingTransactionPurchaseDetailsFuel' -> ShowS
$cshowsPrec :: Int -> IssuingTransactionPurchaseDetailsFuel' -> ShowS
GHC.Show.Show,
IssuingTransactionPurchaseDetailsFuel'
-> IssuingTransactionPurchaseDetailsFuel' -> Bool
(IssuingTransactionPurchaseDetailsFuel'
-> IssuingTransactionPurchaseDetailsFuel' -> Bool)
-> (IssuingTransactionPurchaseDetailsFuel'
-> IssuingTransactionPurchaseDetailsFuel' -> Bool)
-> Eq IssuingTransactionPurchaseDetailsFuel'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: IssuingTransactionPurchaseDetailsFuel'
-> IssuingTransactionPurchaseDetailsFuel' -> Bool
$c/= :: IssuingTransactionPurchaseDetailsFuel'
-> IssuingTransactionPurchaseDetailsFuel' -> Bool
== :: IssuingTransactionPurchaseDetailsFuel'
-> IssuingTransactionPurchaseDetailsFuel' -> Bool
$c== :: IssuingTransactionPurchaseDetailsFuel'
-> IssuingTransactionPurchaseDetailsFuel' -> Bool
GHC.Classes.Eq
)
instance Data.Aeson.Types.ToJSON.ToJSON IssuingTransactionPurchaseDetailsFuel' where
toJSON :: IssuingTransactionPurchaseDetailsFuel' -> Value
toJSON IssuingTransactionPurchaseDetailsFuel'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"type" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'Type IssuingTransactionPurchaseDetailsFuel'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"unit" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'Unit IssuingTransactionPurchaseDetailsFuel'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"unit_cost_decimal" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'UnitCostDecimal IssuingTransactionPurchaseDetailsFuel'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"volume_decimal" Text -> Maybe Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'VolumeDecimal IssuingTransactionPurchaseDetailsFuel'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
toEncoding :: IssuingTransactionPurchaseDetailsFuel' -> Encoding
toEncoding IssuingTransactionPurchaseDetailsFuel'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"type" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'Type IssuingTransactionPurchaseDetailsFuel'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"unit" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'Unit IssuingTransactionPurchaseDetailsFuel'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> ((Text
"unit_cost_decimal" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'UnitCostDecimal IssuingTransactionPurchaseDetailsFuel'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"volume_decimal" Text -> Maybe Text -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsFuel' -> Maybe Text
issuingTransactionPurchaseDetailsFuel'VolumeDecimal IssuingTransactionPurchaseDetailsFuel'
obj))))
instance Data.Aeson.Types.FromJSON.FromJSON IssuingTransactionPurchaseDetailsFuel' where
parseJSON :: Value -> Parser IssuingTransactionPurchaseDetailsFuel'
parseJSON = String
-> (Object -> Parser IssuingTransactionPurchaseDetailsFuel')
-> Value
-> Parser IssuingTransactionPurchaseDetailsFuel'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"IssuingTransactionPurchaseDetailsFuel'" (\Object
obj -> ((((Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFuel')
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFuel')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFuel'
IssuingTransactionPurchaseDetailsFuel' Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFuel')
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFuel')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"type")) Parser
(Maybe Text
-> Maybe Text
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFuel')
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text -> IssuingTransactionPurchaseDetailsFuel')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"unit")) Parser
(Maybe Text
-> Maybe Text -> IssuingTransactionPurchaseDetailsFuel')
-> Parser (Maybe Text)
-> Parser (Maybe Text -> IssuingTransactionPurchaseDetailsFuel')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"unit_cost_decimal")) Parser (Maybe Text -> IssuingTransactionPurchaseDetailsFuel')
-> Parser (Maybe Text)
-> Parser IssuingTransactionPurchaseDetailsFuel'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"volume_decimal"))
mkIssuingTransactionPurchaseDetailsFuel' :: IssuingTransactionPurchaseDetailsFuel'
mkIssuingTransactionPurchaseDetailsFuel' :: IssuingTransactionPurchaseDetailsFuel'
mkIssuingTransactionPurchaseDetailsFuel' =
IssuingTransactionPurchaseDetailsFuel' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> IssuingTransactionPurchaseDetailsFuel'
IssuingTransactionPurchaseDetailsFuel'
{ issuingTransactionPurchaseDetailsFuel'Type :: Maybe Text
issuingTransactionPurchaseDetailsFuel'Type = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsFuel'Unit :: Maybe Text
issuingTransactionPurchaseDetailsFuel'Unit = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsFuel'UnitCostDecimal :: Maybe Text
issuingTransactionPurchaseDetailsFuel'UnitCostDecimal = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsFuel'VolumeDecimal :: Maybe Text
issuingTransactionPurchaseDetailsFuel'VolumeDecimal = Maybe Text
forall a. Maybe a
GHC.Maybe.Nothing
}
data IssuingTransactionPurchaseDetailsLodging' = IssuingTransactionPurchaseDetailsLodging'
{
IssuingTransactionPurchaseDetailsLodging' -> Maybe Int
issuingTransactionPurchaseDetailsLodging'CheckInAt :: (GHC.Maybe.Maybe GHC.Types.Int),
IssuingTransactionPurchaseDetailsLodging' -> Maybe Int
issuingTransactionPurchaseDetailsLodging'Nights :: (GHC.Maybe.Maybe GHC.Types.Int)
}
deriving
( Int -> IssuingTransactionPurchaseDetailsLodging' -> ShowS
[IssuingTransactionPurchaseDetailsLodging'] -> ShowS
IssuingTransactionPurchaseDetailsLodging' -> String
(Int -> IssuingTransactionPurchaseDetailsLodging' -> ShowS)
-> (IssuingTransactionPurchaseDetailsLodging' -> String)
-> ([IssuingTransactionPurchaseDetailsLodging'] -> ShowS)
-> Show IssuingTransactionPurchaseDetailsLodging'
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [IssuingTransactionPurchaseDetailsLodging'] -> ShowS
$cshowList :: [IssuingTransactionPurchaseDetailsLodging'] -> ShowS
show :: IssuingTransactionPurchaseDetailsLodging' -> String
$cshow :: IssuingTransactionPurchaseDetailsLodging' -> String
showsPrec :: Int -> IssuingTransactionPurchaseDetailsLodging' -> ShowS
$cshowsPrec :: Int -> IssuingTransactionPurchaseDetailsLodging' -> ShowS
GHC.Show.Show,
IssuingTransactionPurchaseDetailsLodging'
-> IssuingTransactionPurchaseDetailsLodging' -> Bool
(IssuingTransactionPurchaseDetailsLodging'
-> IssuingTransactionPurchaseDetailsLodging' -> Bool)
-> (IssuingTransactionPurchaseDetailsLodging'
-> IssuingTransactionPurchaseDetailsLodging' -> Bool)
-> Eq IssuingTransactionPurchaseDetailsLodging'
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: IssuingTransactionPurchaseDetailsLodging'
-> IssuingTransactionPurchaseDetailsLodging' -> Bool
$c/= :: IssuingTransactionPurchaseDetailsLodging'
-> IssuingTransactionPurchaseDetailsLodging' -> Bool
== :: IssuingTransactionPurchaseDetailsLodging'
-> IssuingTransactionPurchaseDetailsLodging' -> Bool
$c== :: IssuingTransactionPurchaseDetailsLodging'
-> IssuingTransactionPurchaseDetailsLodging' -> Bool
GHC.Classes.Eq
)
instance Data.Aeson.Types.ToJSON.ToJSON IssuingTransactionPurchaseDetailsLodging' where
toJSON :: IssuingTransactionPurchaseDetailsLodging' -> Value
toJSON IssuingTransactionPurchaseDetailsLodging'
obj = [Pair] -> Value
Data.Aeson.Types.Internal.object (Text
"check_in_at" Text -> Maybe Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsLodging' -> Maybe Int
issuingTransactionPurchaseDetailsLodging'CheckInAt IssuingTransactionPurchaseDetailsLodging'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: Text
"nights" Text -> Maybe Int -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsLodging' -> Maybe Int
issuingTransactionPurchaseDetailsLodging'Nights IssuingTransactionPurchaseDetailsLodging'
obj Pair -> [Pair] -> [Pair]
forall a. a -> [a] -> [a]
: [Pair]
forall a. Monoid a => a
GHC.Base.mempty)
toEncoding :: IssuingTransactionPurchaseDetailsLodging' -> Encoding
toEncoding IssuingTransactionPurchaseDetailsLodging'
obj = Series -> Encoding
Data.Aeson.Encoding.Internal.pairs ((Text
"check_in_at" Text -> Maybe Int -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsLodging' -> Maybe Int
issuingTransactionPurchaseDetailsLodging'CheckInAt IssuingTransactionPurchaseDetailsLodging'
obj) Series -> Series -> Series
forall a. Semigroup a => a -> a -> a
GHC.Base.<> (Text
"nights" Text -> Maybe Int -> Series
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Data.Aeson.Types.ToJSON..= IssuingTransactionPurchaseDetailsLodging' -> Maybe Int
issuingTransactionPurchaseDetailsLodging'Nights IssuingTransactionPurchaseDetailsLodging'
obj))
instance Data.Aeson.Types.FromJSON.FromJSON IssuingTransactionPurchaseDetailsLodging' where
parseJSON :: Value -> Parser IssuingTransactionPurchaseDetailsLodging'
parseJSON = String
-> (Object -> Parser IssuingTransactionPurchaseDetailsLodging')
-> Value
-> Parser IssuingTransactionPurchaseDetailsLodging'
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.Aeson.Types.FromJSON.withObject String
"IssuingTransactionPurchaseDetailsLodging'" (\Object
obj -> ((Maybe Int
-> Maybe Int -> IssuingTransactionPurchaseDetailsLodging')
-> Parser
(Maybe Int
-> Maybe Int -> IssuingTransactionPurchaseDetailsLodging')
forall (f :: * -> *) a. Applicative f => a -> f a
GHC.Base.pure Maybe Int -> Maybe Int -> IssuingTransactionPurchaseDetailsLodging'
IssuingTransactionPurchaseDetailsLodging' Parser
(Maybe Int
-> Maybe Int -> IssuingTransactionPurchaseDetailsLodging')
-> Parser (Maybe Int)
-> Parser (Maybe Int -> IssuingTransactionPurchaseDetailsLodging')
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"check_in_at")) Parser (Maybe Int -> IssuingTransactionPurchaseDetailsLodging')
-> Parser (Maybe Int)
-> Parser IssuingTransactionPurchaseDetailsLodging'
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
GHC.Base.<*> (Object
obj Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Data.Aeson.Types.FromJSON..:? Text
"nights"))
mkIssuingTransactionPurchaseDetailsLodging' :: IssuingTransactionPurchaseDetailsLodging'
mkIssuingTransactionPurchaseDetailsLodging' :: IssuingTransactionPurchaseDetailsLodging'
mkIssuingTransactionPurchaseDetailsLodging' =
IssuingTransactionPurchaseDetailsLodging' :: Maybe Int -> Maybe Int -> IssuingTransactionPurchaseDetailsLodging'
IssuingTransactionPurchaseDetailsLodging'
{ issuingTransactionPurchaseDetailsLodging'CheckInAt :: Maybe Int
issuingTransactionPurchaseDetailsLodging'CheckInAt = Maybe Int
forall a. Maybe a
GHC.Maybe.Nothing,
issuingTransactionPurchaseDetailsLodging'Nights :: Maybe Int
issuingTransactionPurchaseDetailsLodging'Nights = Maybe Int
forall a. Maybe a
GHC.Maybe.Nothing
}