packages feed

ghcjs-dom-javascript-0.10.0.0: src/GHCJS/DOM/JSFFI/Generated/RTCDataChannel.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webrtc (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.RTCDataChannel
       (js_close, js_send, js_send', js_send2, js_send3, js_getLabel, js_getOrdered, js_getMaxPacketLifeTime, js_getMaxRetransmits, js_getProtocol, js_getNegotiated, js_getId, js_getReadyState, js_getBufferedAmount, js_setBufferedAmountLowThreshold, js_getBufferedAmountLowThreshold, js_setBinaryType, js_getBinaryType, close, send, send', send2, send3, getLabel, getOrdered, getMaxPacketLifeTime, getMaxPacketLifeTimeUnsafe, getMaxPacketLifeTimeUnchecked, getMaxRetransmits, getMaxRetransmitsUnsafe, getMaxRetransmitsUnchecked, getProtocol, getNegotiated, getId, getIdUnsafe, getIdUnchecked, getReadyState, getBufferedAmount, setBufferedAmountLowThreshold, getBufferedAmountLowThreshold, setBinaryType, getBinaryType, open, bufferedamountlow, error, closing, closeEvent, message, RTCDataChannel(..), gTypeRTCDataChannel)
       where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import GHCJS.Types (JSVal, JSString)
import GHCJS.Foreign (jsUndefined, jsNull)
import GHCJS.DOM.Types
import qualified GHCJS.DOM.Types as Types
import GHCJS.DOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import GHCJS.DOM.JSFFI.Generated.Enums

foreign import javascript safe "(($1) => { return $1[\"close\"](); })"
        js_close :: RTCDataChannel -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/close MDN RTCDataChannel.close documentation>
close :: (MonadDOM m) => RTCDataChannel -> m ()
close self = liftDOM (void ((js_close (self))))

foreign import javascript safe "(($1, $2) => { return $1[\"send\"]($2); })"
        js_send :: RTCDataChannel -> JSString -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/send MDN RTCDataChannel.send documentation>
send :: (MonadDOM m, ToJSString data') => RTCDataChannel -> data' -> m ()
send self data' = liftDOM (void ((js_send (self) (toJSString data'))))

foreign import javascript safe "(($1, $2) => { return $1[\"send\"]($2); })"
        js_send' :: RTCDataChannel -> Blob -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/send MDN RTCDataChannel.send documentation>
send' :: (MonadDOM m, IsBlob data') => RTCDataChannel -> data' -> m ()
send' self data' = liftDOM (void ((js_send' (self) (Types.toBlob data'))))

foreign import javascript safe "(($1, $2) => { return $1[\"send\"]($2); })"
        js_send2 :: RTCDataChannel -> ArrayBuffer -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/send MDN RTCDataChannel.send documentation>
send2 :: (MonadDOM m, IsArrayBuffer data') => RTCDataChannel -> data' -> m ()
send2 self data' = liftDOM (void ((js_send2 (self) (Types.toArrayBuffer data'))))

foreign import javascript safe "(($1, $2) => { return $1[\"send\"]($2); })"
        js_send3 :: RTCDataChannel -> ArrayBufferView -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/send MDN RTCDataChannel.send documentation>
send3 :: (MonadDOM m, IsArrayBufferView data') => RTCDataChannel -> data' -> m ()
send3 self data' = liftDOM (void ((js_send3 (self) (Types.toArrayBufferView data'))))

foreign import javascript unsafe "(($1) => { return $1[\"label\"]; })"
        js_getLabel :: RTCDataChannel -> IO JSString
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/label MDN RTCDataChannel.label documentation>
getLabel :: (MonadDOM m, FromJSString result) => RTCDataChannel -> m result
getLabel self = liftDOM ((fromJSString <$> (js_getLabel (self))))

foreign import javascript unsafe "(($1) => { return $1[\"ordered\"]; })"
        js_getOrdered :: RTCDataChannel -> IO Bool
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/ordered MDN RTCDataChannel.ordered documentation>
getOrdered :: (MonadDOM m) => RTCDataChannel -> m Bool
getOrdered self = liftDOM ((js_getOrdered (self)))

foreign import javascript unsafe "(($1) => { return $1[\"maxPacketLifeTime\"]; })"
        js_getMaxPacketLifeTime :: RTCDataChannel -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/maxPacketLifeTime MDN RTCDataChannel.maxPacketLifeTime documentation>
getMaxPacketLifeTime :: (MonadDOM m) => RTCDataChannel -> m (Maybe Word)
getMaxPacketLifeTime self = liftDOM (((js_getMaxPacketLifeTime (self)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/maxPacketLifeTime MDN RTCDataChannel.maxPacketLifeTime documentation>
getMaxPacketLifeTimeUnsafe :: (MonadDOM m, HasCallStack) => RTCDataChannel -> m Word
getMaxPacketLifeTimeUnsafe self = liftDOM ((((js_getMaxPacketLifeTime (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/maxPacketLifeTime MDN RTCDataChannel.maxPacketLifeTime documentation>
getMaxPacketLifeTimeUnchecked :: (MonadDOM m) => RTCDataChannel -> m Word
getMaxPacketLifeTimeUnchecked self = liftDOM ((pFromJSVal <$> (js_getMaxPacketLifeTime (self))))

foreign import javascript unsafe "(($1) => { return $1[\"maxRetransmits\"]; })"
        js_getMaxRetransmits :: RTCDataChannel -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/maxRetransmits MDN RTCDataChannel.maxRetransmits documentation>
getMaxRetransmits :: (MonadDOM m) => RTCDataChannel -> m (Maybe Word)
getMaxRetransmits self = liftDOM (((js_getMaxRetransmits (self)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/maxRetransmits MDN RTCDataChannel.maxRetransmits documentation>
getMaxRetransmitsUnsafe :: (MonadDOM m, HasCallStack) => RTCDataChannel -> m Word
getMaxRetransmitsUnsafe self = liftDOM ((((js_getMaxRetransmits (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/maxRetransmits MDN RTCDataChannel.maxRetransmits documentation>
getMaxRetransmitsUnchecked :: (MonadDOM m) => RTCDataChannel -> m Word
getMaxRetransmitsUnchecked self = liftDOM ((pFromJSVal <$> (js_getMaxRetransmits (self))))

foreign import javascript unsafe "(($1) => { return $1[\"protocol\"]; })"
        js_getProtocol :: RTCDataChannel -> IO JSString
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/protocol MDN RTCDataChannel.protocol documentation>
getProtocol :: (MonadDOM m, FromJSString result) => RTCDataChannel -> m result
getProtocol self = liftDOM ((fromJSString <$> (js_getProtocol (self))))

foreign import javascript unsafe "(($1) => { return $1[\"negotiated\"]; })"
        js_getNegotiated :: RTCDataChannel -> IO Bool
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/negotiated MDN RTCDataChannel.negotiated documentation>
getNegotiated :: (MonadDOM m) => RTCDataChannel -> m Bool
getNegotiated self = liftDOM ((js_getNegotiated (self)))

foreign import javascript unsafe "(($1) => { return $1[\"id\"]; })"
        js_getId :: RTCDataChannel -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/id MDN RTCDataChannel.id documentation>
getId :: (MonadDOM m) => RTCDataChannel -> m (Maybe Word)
getId self = liftDOM (((js_getId (self)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/id MDN RTCDataChannel.id documentation>
getIdUnsafe :: (MonadDOM m, HasCallStack) => RTCDataChannel -> m Word
getIdUnsafe self = liftDOM ((((js_getId (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/id MDN RTCDataChannel.id documentation>
getIdUnchecked :: (MonadDOM m) => RTCDataChannel -> m Word
getIdUnchecked self = liftDOM ((pFromJSVal <$> (js_getId (self))))

foreign import javascript unsafe "(($1) => { return $1[\"readyState\"]; })"
        js_getReadyState :: RTCDataChannel -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/readyState MDN RTCDataChannel.readyState documentation>
getReadyState :: (MonadDOM m) => RTCDataChannel -> m RTCDataChannelState
getReadyState self = liftDOM (((js_getReadyState (self)) >>= fromJSValUnchecked))

foreign import javascript unsafe "(($1) => { return $1[\"bufferedAmount\"]; })"
        js_getBufferedAmount :: RTCDataChannel -> IO Word
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/bufferedAmount MDN RTCDataChannel.bufferedAmount documentation>
getBufferedAmount :: (MonadDOM m) => RTCDataChannel -> m Word
getBufferedAmount self = liftDOM ((js_getBufferedAmount (self)))

foreign import javascript safe "(($1, $2) => { $1[\"bufferedAmountLowThreshold\"] = $2; })"
        js_setBufferedAmountLowThreshold :: RTCDataChannel -> Word -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/bufferedAmountLowThreshold MDN RTCDataChannel.bufferedAmountLowThreshold documentation>
setBufferedAmountLowThreshold :: (MonadDOM m) => RTCDataChannel -> Word -> m ()
setBufferedAmountLowThreshold self val = liftDOM (void ((js_setBufferedAmountLowThreshold (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"bufferedAmountLowThreshold\"]; })"
        js_getBufferedAmountLowThreshold :: RTCDataChannel -> IO Word
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/bufferedAmountLowThreshold MDN RTCDataChannel.bufferedAmountLowThreshold documentation>
getBufferedAmountLowThreshold :: (MonadDOM m) => RTCDataChannel -> m Word
getBufferedAmountLowThreshold self = liftDOM ((js_getBufferedAmountLowThreshold (self)))

foreign import javascript safe "(($1, $2) => { $1[\"binaryType\"] = $2; })"
        js_setBinaryType :: RTCDataChannel -> JSVal -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/binaryType MDN RTCDataChannel.binaryType documentation>
setBinaryType :: (MonadDOM m) => RTCDataChannel -> BinaryType -> m ()
setBinaryType self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setBinaryType (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"binaryType\"]; })"
        js_getBinaryType :: RTCDataChannel -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/RTCDataChannel/binaryType MDN RTCDataChannel.binaryType documentation>
getBinaryType :: (MonadDOM m) => RTCDataChannel -> m BinaryType
getBinaryType self = liftDOM (((js_getBinaryType (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webrtc-pc/#dom-rtcdatachannel-onopen open event>
open :: EventName RTCDataChannel Event
open = unsafeEventNameAsync (toJSString "open")

-- | <https://w3c.github.io/webrtc-pc/#dom-rtcdatachannel-onbufferedamountlow bufferedamountlow event>
bufferedamountlow :: EventName RTCDataChannel Event
bufferedamountlow = unsafeEventName (toJSString "bufferedamountlow")

-- | <https://w3c.github.io/webrtc-pc/#dom-rtcdatachannel-onerror error event>
error :: EventName RTCDataChannel RTCErrorEvent
error = unsafeEventNameAsync (toJSString "error")

-- | <https://w3c.github.io/webrtc-pc/#dom-rtcdatachannel-onclosing closing event>
closing :: EventName RTCDataChannel Event
closing = unsafeEventName (toJSString "closing")

-- | <https://w3c.github.io/webrtc-pc/#dom-rtcdatachannel-onclose close event>
closeEvent :: EventName RTCDataChannel Event
closeEvent = unsafeEventNameAsync (toJSString "close")

-- | <https://w3c.github.io/webrtc-pc/#dom-rtcdatachannel-onmessage message event>
message :: EventName RTCDataChannel MessageEvent
message = unsafeEventNameAsync (toJSString "message")