packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/PaymentDetailsModifier.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from payment-request (webref). Do not edit.
module JSDOM.Generated.PaymentDetailsModifier
       (newPaymentDetailsModifier, setSupportedMethods, getSupportedMethods, setTotal, getTotal, getTotalUnsafe, getTotalUnchecked, setAdditionalDisplayItems, getAdditionalDisplayItems, getAdditionalDisplayItemsUnsafe, getAdditionalDisplayItemsUnchecked, setData, getData, getDataUnsafe, getDataUnchecked, PaymentDetailsModifier(..), gTypePaymentDetailsModifier)
       where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import Language.Javascript.JSaddle (JSM, JSVal, JSString, toJSVal, valToBool, valToNumber, js, jss, jsf, jsg, new, function, asyncFunction, jsUndefined, jsNull)
import JSDOM.Types
import qualified JSDOM.Types as Types
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Generated.Enums

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier PaymentDetailsModifier specification>
newPaymentDetailsModifier :: (MonadDOM m, ToJSString supportedMethods) => supportedMethods -> m PaymentDetailsModifier
newPaymentDetailsModifier supportedMethods = liftDOM ((((new (jsg "Object") () >>= \o -> (o ^. jss "supportedMethods" (toJSVal supportedMethods)) P.>> P.return o)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-supportedmethods PaymentDetailsModifier.supportedMethods specification>
setSupportedMethods :: (MonadDOM m, ToJSString val) => PaymentDetailsModifier -> val -> m ()
setSupportedMethods self val = liftDOM (void (self ^. jss "supportedMethods" (toJSVal val)))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-supportedmethods PaymentDetailsModifier.supportedMethods specification>
getSupportedMethods :: (MonadDOM m, FromJSString result) => PaymentDetailsModifier -> m result
getSupportedMethods self = liftDOM (((self ^. js "supportedMethods") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-total PaymentDetailsModifier.total specification>
setTotal :: (MonadDOM m) => PaymentDetailsModifier -> PaymentItem -> m ()
setTotal self val = liftDOM (void (self ^. jss "total" (toJSVal val)))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-total PaymentDetailsModifier.total specification>
getTotal :: (MonadDOM m) => PaymentDetailsModifier -> m (Maybe PaymentItem)
getTotal self = liftDOM (((self ^. js "total") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-total PaymentDetailsModifier.total specification>
getTotalUnsafe :: (MonadDOM m, HasCallStack) => PaymentDetailsModifier -> m PaymentItem
getTotalUnsafe self = liftDOM ((((self ^. js "total") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-total PaymentDetailsModifier.total specification>
getTotalUnchecked :: (MonadDOM m) => PaymentDetailsModifier -> m PaymentItem
getTotalUnchecked self = liftDOM (((self ^. js "total") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-additionaldisplayitems PaymentDetailsModifier.additionalDisplayItems specification>
setAdditionalDisplayItems :: (MonadDOM m) => PaymentDetailsModifier -> [PaymentItem] -> m ()
setAdditionalDisplayItems self val = liftDOM (void (self ^. jss "additionalDisplayItems" (toJSVal val)))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-additionaldisplayitems PaymentDetailsModifier.additionalDisplayItems specification>
getAdditionalDisplayItems :: (MonadDOM m) => PaymentDetailsModifier -> m (Maybe [PaymentItem])
getAdditionalDisplayItems self = liftDOM (((self ^. js "additionalDisplayItems") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-additionaldisplayitems PaymentDetailsModifier.additionalDisplayItems specification>
getAdditionalDisplayItemsUnsafe :: (MonadDOM m, HasCallStack) => PaymentDetailsModifier -> m [PaymentItem]
getAdditionalDisplayItemsUnsafe self = liftDOM ((((self ^. js "additionalDisplayItems") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-additionaldisplayitems PaymentDetailsModifier.additionalDisplayItems specification>
getAdditionalDisplayItemsUnchecked :: (MonadDOM m) => PaymentDetailsModifier -> m [PaymentItem]
getAdditionalDisplayItemsUnchecked self = liftDOM (((self ^. js "additionalDisplayItems") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-data PaymentDetailsModifier.data specification>
setData :: (MonadDOM m) => PaymentDetailsModifier -> GObject -> m ()
setData self val = liftDOM (void (self ^. jss "data" (toJSVal val)))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-data PaymentDetailsModifier.data specification>
getData :: (MonadDOM m) => PaymentDetailsModifier -> m (Maybe GObject)
getData self = liftDOM (((self ^. js "data") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-data PaymentDetailsModifier.data specification>
getDataUnsafe :: (MonadDOM m, HasCallStack) => PaymentDetailsModifier -> m GObject
getDataUnsafe self = liftDOM ((((self ^. js "data") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/payment-request/#dom-paymentdetailsmodifier-data PaymentDetailsModifier.data specification>
getDataUnchecked :: (MonadDOM m) => PaymentDetailsModifier -> m GObject
getDataUnchecked self = liftDOM (((self ^. js "data") >>= fromJSValUnchecked))