jsaddle-dom-0.10.0.0: src/JSDOM/Generated/RTCRtpSender.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webrtc (webref). Do not edit.
module JSDOM.Generated.RTCRtpSender
(getParameters, getParameters_, getStats, getStats_, replaceTrack, setParameters, setStreams, getCapabilities, getCapabilities_, getCapabilitiesUnsafe, getCapabilitiesUnchecked, getTrack, getTrackUnsafe, getTrackUnchecked, getTransport, getTransportUnsafe, getTransportUnchecked, getDtmf, getDtmfUnsafe, getDtmfUnchecked, setTransform, getTransform, getTransformUnsafe, getTransformUnchecked, RTCRtpSender(..), gTypeRTCRtpSender)
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/RTCRtpSender/getParameters MDN RTCRtpSender.getParameters documentation>
getParameters :: (MonadDOM m) => RTCRtpSender -> m RTCRtpSendParameters
getParameters self = liftDOM (((self ^. jsf "getParameters" ()) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getParameters MDN RTCRtpSender.getParameters documentation>
getParameters_ :: (MonadDOM m) => RTCRtpSender -> m ()
getParameters_ self = liftDOM (void (self ^. jsf "getParameters" ()))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getStats MDN RTCRtpSender.getStats documentation>
getStats :: (MonadDOM m) => RTCRtpSender -> m RTCStatsReport
getStats self = liftDOM (((((self ^. jsf "getStats" ()) >>= readPromise)) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getStats MDN RTCRtpSender.getStats documentation>
getStats_ :: (MonadDOM m) => RTCRtpSender -> m ()
getStats_ self = liftDOM (void (((self ^. jsf "getStats" ()) >>= readPromise)))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/replaceTrack MDN RTCRtpSender.replaceTrack documentation>
replaceTrack :: (MonadDOM m, IsMediaStreamTrack withTrack) => RTCRtpSender -> Maybe withTrack -> m ()
replaceTrack self withTrack = liftDOM (void (((self ^. jsf "replaceTrack" [toJSVal withTrack]) >>= readPromise)))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/setParameters MDN RTCRtpSender.setParameters documentation>
setParameters :: (MonadDOM m) => RTCRtpSender -> RTCRtpSendParameters -> Maybe RTCSetParameterOptions -> m ()
setParameters self parameters setParameterOptions = liftDOM (void (((self ^. jsf "setParameters" [toJSVal parameters, P.maybe (P.return jsUndefined) toJSVal setParameterOptions]) >>= readPromise)))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/setStreams MDN RTCRtpSender.setStreams documentation>
setStreams :: (MonadDOM m) => RTCRtpSender -> [MediaStream] -> m ()
setStreams self streams = liftDOM (void (self ^. jsf "setStreams" ([] ++ P.map toJSVal streams)))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getCapabilities_static MDN RTCRtpSender.getCapabilities documentation>
getCapabilities :: (MonadDOM m, ToJSString kind) => kind -> m (Maybe RTCRtpCapabilities)
getCapabilities kind = liftDOM ((((jsg "RTCRtpSender") ^. jsf "getCapabilities" [toJSVal kind]) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getCapabilities_static MDN RTCRtpSender.getCapabilities documentation>
getCapabilities_ :: (MonadDOM m, ToJSString kind) => kind -> m ()
getCapabilities_ kind = liftDOM (void ((jsg "RTCRtpSender") ^. jsf "getCapabilities" [toJSVal kind]))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getCapabilities_static MDN RTCRtpSender.getCapabilities documentation>
getCapabilitiesUnsafe :: (MonadDOM m, ToJSString kind, HasCallStack) => kind -> m RTCRtpCapabilities
getCapabilitiesUnsafe kind = liftDOM (((((jsg "RTCRtpSender") ^. jsf "getCapabilities" [toJSVal kind]) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getCapabilities_static MDN RTCRtpSender.getCapabilities documentation>
getCapabilitiesUnchecked :: (MonadDOM m, ToJSString kind) => kind -> m RTCRtpCapabilities
getCapabilitiesUnchecked kind = liftDOM ((((jsg "RTCRtpSender") ^. jsf "getCapabilities" [toJSVal kind]) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/track MDN RTCRtpSender.track documentation>
getTrack :: (MonadDOM m) => RTCRtpSender -> m (Maybe MediaStreamTrack)
getTrack self = liftDOM (((self ^. js "track") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/track MDN RTCRtpSender.track documentation>
getTrackUnsafe :: (MonadDOM m, HasCallStack) => RTCRtpSender -> m MediaStreamTrack
getTrackUnsafe self = liftDOM ((((self ^. js "track") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/track MDN RTCRtpSender.track documentation>
getTrackUnchecked :: (MonadDOM m) => RTCRtpSender -> m MediaStreamTrack
getTrackUnchecked self = liftDOM (((self ^. js "track") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/transport MDN RTCRtpSender.transport documentation>
getTransport :: (MonadDOM m) => RTCRtpSender -> m (Maybe RTCDtlsTransport)
getTransport self = liftDOM (((self ^. js "transport") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/transport MDN RTCRtpSender.transport documentation>
getTransportUnsafe :: (MonadDOM m, HasCallStack) => RTCRtpSender -> m RTCDtlsTransport
getTransportUnsafe self = liftDOM ((((self ^. js "transport") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/transport MDN RTCRtpSender.transport documentation>
getTransportUnchecked :: (MonadDOM m) => RTCRtpSender -> m RTCDtlsTransport
getTransportUnchecked self = liftDOM (((self ^. js "transport") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/dtmf MDN RTCRtpSender.dtmf documentation>
getDtmf :: (MonadDOM m) => RTCRtpSender -> m (Maybe RTCDTMFSender)
getDtmf self = liftDOM (((self ^. js "dtmf") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/dtmf MDN RTCRtpSender.dtmf documentation>
getDtmfUnsafe :: (MonadDOM m, HasCallStack) => RTCRtpSender -> m RTCDTMFSender
getDtmfUnsafe self = liftDOM ((((self ^. js "dtmf") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/dtmf MDN RTCRtpSender.dtmf documentation>
getDtmfUnchecked :: (MonadDOM m) => RTCRtpSender -> m RTCDTMFSender
getDtmfUnchecked self = liftDOM (((self ^. js "dtmf") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/transform MDN RTCRtpSender.transform documentation>
setTransform :: (MonadDOM m, IsRTCRtpSenderTransform val) => RTCRtpSender -> Maybe val -> m ()
setTransform self val = liftDOM (void (self ^. jss "transform" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/transform MDN RTCRtpSender.transform documentation>
getTransform :: (MonadDOM m) => RTCRtpSender -> m (Maybe RTCRtpSenderTransform)
getTransform self = liftDOM (((self ^. js "transform") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/transform MDN RTCRtpSender.transform documentation>
getTransformUnsafe :: (MonadDOM m, HasCallStack) => RTCRtpSender -> m RTCRtpSenderTransform
getTransformUnsafe self = liftDOM ((((self ^. js "transform") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://developer.mozilla.org/docs/Web/API/RTCRtpSender/transform MDN RTCRtpSender.transform documentation>
getTransformUnchecked :: (MonadDOM m) => RTCRtpSender -> m RTCRtpSenderTransform
getTransformUnchecked self = liftDOM (((self ^. js "transform") >>= fromJSValUnchecked))