packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from screen-capture (webref). Do not edit.
module JSDOM.Generated.DisplayMediaStreamOptions
       (newDisplayMediaStreamOptions, setVideo, getVideo, getVideoUnsafe, getVideoUnchecked, setAudio, getAudio, getAudioUnsafe, getAudioUnchecked, setController, getController, getControllerUnsafe, getControllerUnchecked, setSelfBrowserSurface, getSelfBrowserSurface, getSelfBrowserSurfaceUnsafe, getSelfBrowserSurfaceUnchecked, setSystemAudio, getSystemAudio, getSystemAudioUnsafe, getSystemAudioUnchecked, setWindowAudio, getWindowAudio, getWindowAudioUnsafe, getWindowAudioUnchecked, setSurfaceSwitching, getSurfaceSwitching, getSurfaceSwitchingUnsafe, getSurfaceSwitchingUnchecked, setMonitorTypeSurfaces, getMonitorTypeSurfaces, getMonitorTypeSurfacesUnsafe, getMonitorTypeSurfacesUnchecked, setAudioSelection, getAudioSelection, getAudioSelectionUnsafe, getAudioSelectionUnchecked, DisplayMediaStreamOptions(..), gTypeDisplayMediaStreamOptions)
       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-screen-share/#dom-displaymediastreamoptions DisplayMediaStreamOptions specification>
newDisplayMediaStreamOptions :: (MonadDOM m) => m DisplayMediaStreamOptions
newDisplayMediaStreamOptions = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-video DisplayMediaStreamOptions.video specification>
setVideo :: (MonadDOM m, IsBoolOrMediaTrackConstraints val) => DisplayMediaStreamOptions -> val -> m ()
setVideo self val = liftDOM (void (self ^. jss "video" (toJSVal val)))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-video DisplayMediaStreamOptions.video specification>
getVideo :: (MonadDOM m) => DisplayMediaStreamOptions -> m (Maybe BoolOrMediaTrackConstraints)
getVideo self = liftDOM (((self ^. js "video") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-video DisplayMediaStreamOptions.video specification>
getVideoUnsafe :: (MonadDOM m, HasCallStack) => DisplayMediaStreamOptions -> m BoolOrMediaTrackConstraints
getVideoUnsafe self = liftDOM ((((self ^. js "video") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-video DisplayMediaStreamOptions.video specification>
getVideoUnchecked :: (MonadDOM m) => DisplayMediaStreamOptions -> m BoolOrMediaTrackConstraints
getVideoUnchecked self = liftDOM (((self ^. js "video") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-audio DisplayMediaStreamOptions.audio specification>
setAudio :: (MonadDOM m, IsBoolOrMediaTrackConstraints val) => DisplayMediaStreamOptions -> val -> m ()
setAudio self val = liftDOM (void (self ^. jss "audio" (toJSVal val)))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-audio DisplayMediaStreamOptions.audio specification>
getAudio :: (MonadDOM m) => DisplayMediaStreamOptions -> m (Maybe BoolOrMediaTrackConstraints)
getAudio self = liftDOM (((self ^. js "audio") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-audio DisplayMediaStreamOptions.audio specification>
getAudioUnsafe :: (MonadDOM m, HasCallStack) => DisplayMediaStreamOptions -> m BoolOrMediaTrackConstraints
getAudioUnsafe self = liftDOM ((((self ^. js "audio") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-audio DisplayMediaStreamOptions.audio specification>
getAudioUnchecked :: (MonadDOM m) => DisplayMediaStreamOptions -> m BoolOrMediaTrackConstraints
getAudioUnchecked self = liftDOM (((self ^. js "audio") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-controller DisplayMediaStreamOptions.controller specification>
setController :: (MonadDOM m) => DisplayMediaStreamOptions -> CaptureController -> m ()
setController self val = liftDOM (void (self ^. jss "controller" (toJSVal val)))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-controller DisplayMediaStreamOptions.controller specification>
getController :: (MonadDOM m) => DisplayMediaStreamOptions -> m (Maybe CaptureController)
getController self = liftDOM (((self ^. js "controller") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-controller DisplayMediaStreamOptions.controller specification>
getControllerUnsafe :: (MonadDOM m, HasCallStack) => DisplayMediaStreamOptions -> m CaptureController
getControllerUnsafe self = liftDOM ((((self ^. js "controller") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-controller DisplayMediaStreamOptions.controller specification>
getControllerUnchecked :: (MonadDOM m) => DisplayMediaStreamOptions -> m CaptureController
getControllerUnchecked self = liftDOM (((self ^. js "controller") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-selfbrowsersurface DisplayMediaStreamOptions.selfBrowserSurface specification>
setSelfBrowserSurface :: (MonadDOM m) => DisplayMediaStreamOptions -> SelfCapturePreferenceEnum -> m ()
setSelfBrowserSurface self val = liftDOM (void (self ^. jss "selfBrowserSurface" (toJSVal val)))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-selfbrowsersurface DisplayMediaStreamOptions.selfBrowserSurface specification>
getSelfBrowserSurface :: (MonadDOM m) => DisplayMediaStreamOptions -> m (Maybe SelfCapturePreferenceEnum)
getSelfBrowserSurface self = liftDOM (((self ^. js "selfBrowserSurface") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-selfbrowsersurface DisplayMediaStreamOptions.selfBrowserSurface specification>
getSelfBrowserSurfaceUnsafe :: (MonadDOM m, HasCallStack) => DisplayMediaStreamOptions -> m SelfCapturePreferenceEnum
getSelfBrowserSurfaceUnsafe self = liftDOM ((((self ^. js "selfBrowserSurface") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-selfbrowsersurface DisplayMediaStreamOptions.selfBrowserSurface specification>
getSelfBrowserSurfaceUnchecked :: (MonadDOM m) => DisplayMediaStreamOptions -> m SelfCapturePreferenceEnum
getSelfBrowserSurfaceUnchecked self = liftDOM (((self ^. js "selfBrowserSurface") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-systemaudio DisplayMediaStreamOptions.systemAudio specification>
setSystemAudio :: (MonadDOM m) => DisplayMediaStreamOptions -> SystemAudioPreferenceEnum -> m ()
setSystemAudio self val = liftDOM (void (self ^. jss "systemAudio" (toJSVal val)))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-systemaudio DisplayMediaStreamOptions.systemAudio specification>
getSystemAudio :: (MonadDOM m) => DisplayMediaStreamOptions -> m (Maybe SystemAudioPreferenceEnum)
getSystemAudio self = liftDOM (((self ^. js "systemAudio") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-systemaudio DisplayMediaStreamOptions.systemAudio specification>
getSystemAudioUnsafe :: (MonadDOM m, HasCallStack) => DisplayMediaStreamOptions -> m SystemAudioPreferenceEnum
getSystemAudioUnsafe self = liftDOM ((((self ^. js "systemAudio") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-systemaudio DisplayMediaStreamOptions.systemAudio specification>
getSystemAudioUnchecked :: (MonadDOM m) => DisplayMediaStreamOptions -> m SystemAudioPreferenceEnum
getSystemAudioUnchecked self = liftDOM (((self ^. js "systemAudio") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-windowaudio DisplayMediaStreamOptions.windowAudio specification>
setWindowAudio :: (MonadDOM m) => DisplayMediaStreamOptions -> WindowAudioPreferenceEnum -> m ()
setWindowAudio self val = liftDOM (void (self ^. jss "windowAudio" (toJSVal val)))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-windowaudio DisplayMediaStreamOptions.windowAudio specification>
getWindowAudio :: (MonadDOM m) => DisplayMediaStreamOptions -> m (Maybe WindowAudioPreferenceEnum)
getWindowAudio self = liftDOM (((self ^. js "windowAudio") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-windowaudio DisplayMediaStreamOptions.windowAudio specification>
getWindowAudioUnsafe :: (MonadDOM m, HasCallStack) => DisplayMediaStreamOptions -> m WindowAudioPreferenceEnum
getWindowAudioUnsafe self = liftDOM ((((self ^. js "windowAudio") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-windowaudio DisplayMediaStreamOptions.windowAudio specification>
getWindowAudioUnchecked :: (MonadDOM m) => DisplayMediaStreamOptions -> m WindowAudioPreferenceEnum
getWindowAudioUnchecked self = liftDOM (((self ^. js "windowAudio") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-surfaceswitching DisplayMediaStreamOptions.surfaceSwitching specification>
setSurfaceSwitching :: (MonadDOM m) => DisplayMediaStreamOptions -> SurfaceSwitchingPreferenceEnum -> m ()
setSurfaceSwitching self val = liftDOM (void (self ^. jss "surfaceSwitching" (toJSVal val)))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-surfaceswitching DisplayMediaStreamOptions.surfaceSwitching specification>
getSurfaceSwitching :: (MonadDOM m) => DisplayMediaStreamOptions -> m (Maybe SurfaceSwitchingPreferenceEnum)
getSurfaceSwitching self = liftDOM (((self ^. js "surfaceSwitching") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-surfaceswitching DisplayMediaStreamOptions.surfaceSwitching specification>
getSurfaceSwitchingUnsafe :: (MonadDOM m, HasCallStack) => DisplayMediaStreamOptions -> m SurfaceSwitchingPreferenceEnum
getSurfaceSwitchingUnsafe self = liftDOM ((((self ^. js "surfaceSwitching") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-surfaceswitching DisplayMediaStreamOptions.surfaceSwitching specification>
getSurfaceSwitchingUnchecked :: (MonadDOM m) => DisplayMediaStreamOptions -> m SurfaceSwitchingPreferenceEnum
getSurfaceSwitchingUnchecked self = liftDOM (((self ^. js "surfaceSwitching") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-monitortypesurfaces DisplayMediaStreamOptions.monitorTypeSurfaces specification>
setMonitorTypeSurfaces :: (MonadDOM m) => DisplayMediaStreamOptions -> MonitorTypeSurfacesEnum -> m ()
setMonitorTypeSurfaces self val = liftDOM (void (self ^. jss "monitorTypeSurfaces" (toJSVal val)))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-monitortypesurfaces DisplayMediaStreamOptions.monitorTypeSurfaces specification>
getMonitorTypeSurfaces :: (MonadDOM m) => DisplayMediaStreamOptions -> m (Maybe MonitorTypeSurfacesEnum)
getMonitorTypeSurfaces self = liftDOM (((self ^. js "monitorTypeSurfaces") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-monitortypesurfaces DisplayMediaStreamOptions.monitorTypeSurfaces specification>
getMonitorTypeSurfacesUnsafe :: (MonadDOM m, HasCallStack) => DisplayMediaStreamOptions -> m MonitorTypeSurfacesEnum
getMonitorTypeSurfacesUnsafe self = liftDOM ((((self ^. js "monitorTypeSurfaces") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-monitortypesurfaces DisplayMediaStreamOptions.monitorTypeSurfaces specification>
getMonitorTypeSurfacesUnchecked :: (MonadDOM m) => DisplayMediaStreamOptions -> m MonitorTypeSurfacesEnum
getMonitorTypeSurfacesUnchecked self = liftDOM (((self ^. js "monitorTypeSurfaces") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-audioselection DisplayMediaStreamOptions.audioSelection specification>
setAudioSelection :: (MonadDOM m) => DisplayMediaStreamOptions -> AudioSelectionPreferenceEnum -> m ()
setAudioSelection self val = liftDOM (void (self ^. jss "audioSelection" (toJSVal val)))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-audioselection DisplayMediaStreamOptions.audioSelection specification>
getAudioSelection :: (MonadDOM m) => DisplayMediaStreamOptions -> m (Maybe AudioSelectionPreferenceEnum)
getAudioSelection self = liftDOM (((self ^. js "audioSelection") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-audioselection DisplayMediaStreamOptions.audioSelection specification>
getAudioSelectionUnsafe :: (MonadDOM m, HasCallStack) => DisplayMediaStreamOptions -> m AudioSelectionPreferenceEnum
getAudioSelectionUnsafe self = liftDOM ((((self ^. js "audioSelection") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-audioselection DisplayMediaStreamOptions.audioSelection specification>
getAudioSelectionUnchecked :: (MonadDOM m) => DisplayMediaStreamOptions -> m AudioSelectionPreferenceEnum
getAudioSelectionUnchecked self = liftDOM (((self ^. js "audioSelection") >>= fromJSValUnchecked))