jsaddle-dom-0.10.0.0: src/JSDOM/Generated/MediaCapabilitiesEncodingInfo.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from media-capabilities (webref). Do not edit.
module JSDOM.Generated.MediaCapabilitiesEncodingInfo
(newMediaCapabilitiesEncodingInfo, setConfiguration, getConfiguration, MediaCapabilitiesEncodingInfo(..), gTypeMediaCapabilitiesEncodingInfo)
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/media-capabilities/#dictdef-mediacapabilitiesencodinginfo MediaCapabilitiesEncodingInfo specification>
newMediaCapabilitiesEncodingInfo :: (MonadDOM m) => Bool -> Bool -> Bool -> MediaEncodingConfiguration -> m MediaCapabilitiesEncodingInfo
newMediaCapabilitiesEncodingInfo supported smooth powerEfficient configuration = liftDOM ((((new (jsg "Object") () >>= \o -> (o ^. jss "supported" (toJSVal supported)) P.>> (o ^. jss "smooth" (toJSVal smooth)) P.>> (o ^. jss "powerEfficient" (toJSVal powerEfficient)) P.>> (o ^. jss "configuration" (toJSVal configuration)) P.>> P.return o)) >>= fromJSValUnchecked))
-- | <https://w3c.github.io/media-capabilities/#dom-mediacapabilitiesencodinginfo-configuration MediaCapabilitiesEncodingInfo.configuration specification>
setConfiguration :: (MonadDOM m) => MediaCapabilitiesEncodingInfo -> MediaEncodingConfiguration -> m ()
setConfiguration self val = liftDOM (void (self ^. jss "configuration" (toJSVal val)))
-- | <https://w3c.github.io/media-capabilities/#dom-mediacapabilitiesencodinginfo-configuration MediaCapabilitiesEncodingInfo.configuration specification>
getConfiguration :: (MonadDOM m) => MediaCapabilitiesEncodingInfo -> m MediaEncodingConfiguration
getConfiguration self = liftDOM (((self ^. js "configuration") >>= fromJSValUnchecked))