packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from mediacapture-streams (webref). Do not edit.
module JSDOM.Generated.MediaStreamTrack
       (applyConstraints, clone, clone_, getCapabilities, getCapabilities_, getConstraints, getConstraints_, getSettings, getSettings_, stop, getKind, getId, getLabel, setEnabled, getEnabled, getMuted, getReadyState, setContentHint, getContentHint, mute, unmute, ended, MediaStreamTrack(..), gTypeMediaStreamTrack, IsMediaStreamTrack, toMediaStreamTrack)
       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://developer.mozilla.org/docs/Web/API/MediaStreamTrack/applyConstraints MDN MediaStreamTrack.applyConstraints documentation>
applyConstraints :: (MonadDOM m, IsMediaStreamTrack self) => self -> Maybe MediaTrackConstraints -> m ()
applyConstraints self constraints = liftDOM (void ((((Types.toMediaStreamTrack self) ^. jsf "applyConstraints" [P.maybe (P.return jsUndefined) toJSVal constraints]) >>= readPromise)))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/clone MDN MediaStreamTrack.clone documentation>
clone :: (MonadDOM m, IsMediaStreamTrack self) => self -> m MediaStreamTrack
clone self = liftDOM ((((Types.toMediaStreamTrack self) ^. jsf "clone" ()) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/clone MDN MediaStreamTrack.clone documentation>
clone_ :: (MonadDOM m, IsMediaStreamTrack self) => self -> m ()
clone_ self = liftDOM (void ((Types.toMediaStreamTrack self) ^. jsf "clone" ()))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/getCapabilities MDN MediaStreamTrack.getCapabilities documentation>
getCapabilities :: (MonadDOM m, IsMediaStreamTrack self) => self -> m MediaTrackCapabilities
getCapabilities self = liftDOM ((((Types.toMediaStreamTrack self) ^. jsf "getCapabilities" ()) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/getCapabilities MDN MediaStreamTrack.getCapabilities documentation>
getCapabilities_ :: (MonadDOM m, IsMediaStreamTrack self) => self -> m ()
getCapabilities_ self = liftDOM (void ((Types.toMediaStreamTrack self) ^. jsf "getCapabilities" ()))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/getConstraints MDN MediaStreamTrack.getConstraints documentation>
getConstraints :: (MonadDOM m, IsMediaStreamTrack self) => self -> m MediaTrackConstraints
getConstraints self = liftDOM ((((Types.toMediaStreamTrack self) ^. jsf "getConstraints" ()) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/getConstraints MDN MediaStreamTrack.getConstraints documentation>
getConstraints_ :: (MonadDOM m, IsMediaStreamTrack self) => self -> m ()
getConstraints_ self = liftDOM (void ((Types.toMediaStreamTrack self) ^. jsf "getConstraints" ()))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/getSettings MDN MediaStreamTrack.getSettings documentation>
getSettings :: (MonadDOM m, IsMediaStreamTrack self) => self -> m MediaTrackSettings
getSettings self = liftDOM ((((Types.toMediaStreamTrack self) ^. jsf "getSettings" ()) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/getSettings MDN MediaStreamTrack.getSettings documentation>
getSettings_ :: (MonadDOM m, IsMediaStreamTrack self) => self -> m ()
getSettings_ self = liftDOM (void ((Types.toMediaStreamTrack self) ^. jsf "getSettings" ()))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/stop MDN MediaStreamTrack.stop documentation>
stop :: (MonadDOM m, IsMediaStreamTrack self) => self -> m ()
stop self = liftDOM (void ((Types.toMediaStreamTrack self) ^. jsf "stop" ()))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/kind MDN MediaStreamTrack.kind documentation>
getKind :: (MonadDOM m, IsMediaStreamTrack self, FromJSString result) => self -> m result
getKind self = liftDOM ((((Types.toMediaStreamTrack self) ^. js "kind") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/id MDN MediaStreamTrack.id documentation>
getId :: (MonadDOM m, IsMediaStreamTrack self, FromJSString result) => self -> m result
getId self = liftDOM ((((Types.toMediaStreamTrack self) ^. js "id") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/label MDN MediaStreamTrack.label documentation>
getLabel :: (MonadDOM m, IsMediaStreamTrack self, FromJSString result) => self -> m result
getLabel self = liftDOM ((((Types.toMediaStreamTrack self) ^. js "label") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/enabled MDN MediaStreamTrack.enabled documentation>
setEnabled :: (MonadDOM m, IsMediaStreamTrack self) => self -> Bool -> m ()
setEnabled self val = liftDOM (void ((Types.toMediaStreamTrack self) ^. jss "enabled" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/enabled MDN MediaStreamTrack.enabled documentation>
getEnabled :: (MonadDOM m, IsMediaStreamTrack self) => self -> m Bool
getEnabled self = liftDOM ((((Types.toMediaStreamTrack self) ^. js "enabled") >>= valToBool))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/muted MDN MediaStreamTrack.muted documentation>
getMuted :: (MonadDOM m, IsMediaStreamTrack self) => self -> m Bool
getMuted self = liftDOM ((((Types.toMediaStreamTrack self) ^. js "muted") >>= valToBool))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/readyState MDN MediaStreamTrack.readyState documentation>
getReadyState :: (MonadDOM m, IsMediaStreamTrack self) => self -> m MediaStreamTrackState
getReadyState self = liftDOM ((((Types.toMediaStreamTrack self) ^. js "readyState") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/contentHint MDN MediaStreamTrack.contentHint documentation>
setContentHint :: (MonadDOM m, IsMediaStreamTrack self, ToJSString val) => self -> val -> m ()
setContentHint self val = liftDOM (void ((Types.toMediaStreamTrack self) ^. jss "contentHint" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/contentHint MDN MediaStreamTrack.contentHint documentation>
getContentHint :: (MonadDOM m, IsMediaStreamTrack self, FromJSString result) => self -> m result
getContentHint self = liftDOM ((((Types.toMediaStreamTrack self) ^. js "contentHint") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-main/#dom-mediastreamtrack-onmute mute event>
mute :: (IsMediaStreamTrack self, IsEventTarget self) => EventName self Event
mute = unsafeEventName (toJSString "mute")

-- | <https://w3c.github.io/mediacapture-main/#dom-mediastreamtrack-onunmute unmute event>
unmute :: (IsMediaStreamTrack self, IsEventTarget self) => EventName self Event
unmute = unsafeEventName (toJSString "unmute")

-- | <https://w3c.github.io/mediacapture-main/#dom-mediastreamtrack-onended ended event>
ended :: (IsMediaStreamTrack self, IsEventTarget self) => EventName self Event
ended = unsafeEventName (toJSString "ended")