jsaddle-dom-0.10.0.0: src/JSDOM/Generated/MediaEffectInfo.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from mediacapture-extensions (webref). Do not edit.
module JSDOM.Generated.MediaEffectInfo
(newMediaEffectInfo, setEnabled, getEnabled, MediaEffectInfo(..), gTypeMediaEffectInfo, IsMediaEffectInfo, toMediaEffectInfo)
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/mediacapture-extensions/#dom-mediaeffectinfo MediaEffectInfo specification>
newMediaEffectInfo :: (MonadDOM m) => Bool -> m MediaEffectInfo
newMediaEffectInfo enabled = liftDOM ((((new (jsg "Object") () >>= \o -> (o ^. jss "enabled" (toJSVal enabled)) P.>> P.return o)) >>= fromJSValUnchecked))
-- | <https://w3c.github.io/mediacapture-extensions/#dom-mediaeffectinfo-enabled MediaEffectInfo.enabled specification>
setEnabled :: (MonadDOM m, IsMediaEffectInfo self) => self -> Bool -> m ()
setEnabled self val = liftDOM (void ((Types.toMediaEffectInfo self) ^. jss "enabled" (toJSVal val)))
-- | <https://w3c.github.io/mediacapture-extensions/#dom-mediaeffectinfo-enabled MediaEffectInfo.enabled specification>
getEnabled :: (MonadDOM m, IsMediaEffectInfo self) => self -> m Bool
getEnabled self = liftDOM ((((Types.toMediaEffectInfo self) ^. js "enabled") >>= valToBool))