jsaddle-dom-0.10.0.0: src/JSDOM/Generated/SourceBuffer.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from media-source-2 (webref). Do not edit.
module JSDOM.Generated.SourceBuffer
(abort, appendBuffer, changeType, remove, setMode, getMode, getUpdating, getBuffered, setTimestampOffset, getTimestampOffset, getAudioTracks, getVideoTracks, getTextTracks, setAppendWindowStart, getAppendWindowStart, setAppendWindowEnd, getAppendWindowEnd, updatestart, update, updateend, error, abortEvent, SourceBuffer(..), gTypeSourceBuffer)
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/SourceBuffer/abort MDN SourceBuffer.abort documentation>
abort :: (MonadDOM m) => SourceBuffer -> m ()
abort self = liftDOM (void (self ^. jsf "abort" ()))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendBuffer MDN SourceBuffer.appendBuffer documentation>
appendBuffer :: (MonadDOM m, IsBufferSource data') => SourceBuffer -> data' -> m ()
appendBuffer self data' = liftDOM (void (self ^. jsf "appendBuffer" [toJSVal data']))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/changeType MDN SourceBuffer.changeType documentation>
changeType :: (MonadDOM m, ToJSString type') => SourceBuffer -> type' -> m ()
changeType self type' = liftDOM (void (self ^. jsf "changeType" [toJSVal type']))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/remove MDN SourceBuffer.remove documentation>
remove :: (MonadDOM m) => SourceBuffer -> Double -> Double -> m ()
remove self start end = liftDOM (void (self ^. jsf "remove" [toJSVal start, toJSVal end]))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/mode MDN SourceBuffer.mode documentation>
setMode :: (MonadDOM m) => SourceBuffer -> AppendMode -> m ()
setMode self val = liftDOM (void (self ^. jss "mode" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/mode MDN SourceBuffer.mode documentation>
getMode :: (MonadDOM m) => SourceBuffer -> m AppendMode
getMode self = liftDOM (((self ^. js "mode") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/updating MDN SourceBuffer.updating documentation>
getUpdating :: (MonadDOM m) => SourceBuffer -> m Bool
getUpdating self = liftDOM (((self ^. js "updating") >>= valToBool))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/buffered MDN SourceBuffer.buffered documentation>
getBuffered :: (MonadDOM m) => SourceBuffer -> m TimeRanges
getBuffered self = liftDOM (((self ^. js "buffered") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/timestampOffset MDN SourceBuffer.timestampOffset documentation>
setTimestampOffset :: (MonadDOM m) => SourceBuffer -> Double -> m ()
setTimestampOffset self val = liftDOM (void (self ^. jss "timestampOffset" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/timestampOffset MDN SourceBuffer.timestampOffset documentation>
getTimestampOffset :: (MonadDOM m) => SourceBuffer -> m Double
getTimestampOffset self = liftDOM (((self ^. js "timestampOffset") >>= valToNumber))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/audioTracks MDN SourceBuffer.audioTracks documentation>
getAudioTracks :: (MonadDOM m) => SourceBuffer -> m AudioTrackList
getAudioTracks self = liftDOM (((self ^. js "audioTracks") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/videoTracks MDN SourceBuffer.videoTracks documentation>
getVideoTracks :: (MonadDOM m) => SourceBuffer -> m VideoTrackList
getVideoTracks self = liftDOM (((self ^. js "videoTracks") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/textTracks MDN SourceBuffer.textTracks documentation>
getTextTracks :: (MonadDOM m) => SourceBuffer -> m TextTrackList
getTextTracks self = liftDOM (((self ^. js "textTracks") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendWindowStart MDN SourceBuffer.appendWindowStart documentation>
setAppendWindowStart :: (MonadDOM m) => SourceBuffer -> Double -> m ()
setAppendWindowStart self val = liftDOM (void (self ^. jss "appendWindowStart" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendWindowStart MDN SourceBuffer.appendWindowStart documentation>
getAppendWindowStart :: (MonadDOM m) => SourceBuffer -> m Double
getAppendWindowStart self = liftDOM (((self ^. js "appendWindowStart") >>= valToNumber))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendWindowEnd MDN SourceBuffer.appendWindowEnd documentation>
setAppendWindowEnd :: (MonadDOM m) => SourceBuffer -> Double -> m ()
setAppendWindowEnd self val = liftDOM (void (self ^. jss "appendWindowEnd" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendWindowEnd MDN SourceBuffer.appendWindowEnd documentation>
getAppendWindowEnd :: (MonadDOM m) => SourceBuffer -> m Double
getAppendWindowEnd self = liftDOM (((self ^. js "appendWindowEnd") >>= valToNumber))
-- | <https://w3c.github.io/media-source/#dom-sourcebuffer-onupdatestart updatestart event>
updatestart :: EventName SourceBuffer Event
updatestart = unsafeEventName (toJSString "updatestart")
-- | <https://w3c.github.io/media-source/#dom-sourcebuffer-onupdate update event>
update :: EventName SourceBuffer Event
update = unsafeEventName (toJSString "update")
-- | <https://w3c.github.io/media-source/#dom-sourcebuffer-onupdateend updateend event>
updateend :: EventName SourceBuffer Event
updateend = unsafeEventName (toJSString "updateend")
-- | <https://w3c.github.io/media-source/#dom-sourcebuffer-onerror error event>
error :: EventName SourceBuffer Event
error = unsafeEventNameAsync (toJSString "error")
-- | <https://w3c.github.io/media-source/#dom-sourcebuffer-onabort abort event>
abortEvent :: EventName SourceBuffer Event
abortEvent = unsafeEventNameAsync (toJSString "abort")