jsaddle-dom-0.10.0.0: src/JSDOM/Generated/VideoTrack.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from html (webref). Do not edit.
module JSDOM.Generated.VideoTrack
(getId, getKind, getLabel, getLanguage, setSelected, getSelected, getSourceBuffer, getSourceBufferUnsafe, getSourceBufferUnchecked, VideoTrack(..), gTypeVideoTrack)
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/VideoTrack/id MDN VideoTrack.id documentation>
getId :: (MonadDOM m, FromJSString result) => VideoTrack -> m result
getId self = liftDOM (((self ^. js "id") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/VideoTrack/kind MDN VideoTrack.kind documentation>
getKind :: (MonadDOM m, FromJSString result) => VideoTrack -> m result
getKind self = liftDOM (((self ^. js "kind") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/VideoTrack/label MDN VideoTrack.label documentation>
getLabel :: (MonadDOM m, FromJSString result) => VideoTrack -> m result
getLabel self = liftDOM (((self ^. js "label") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/VideoTrack/language MDN VideoTrack.language documentation>
getLanguage :: (MonadDOM m, FromJSString result) => VideoTrack -> m result
getLanguage self = liftDOM (((self ^. js "language") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/VideoTrack/selected MDN VideoTrack.selected documentation>
setSelected :: (MonadDOM m) => VideoTrack -> Bool -> m ()
setSelected self val = liftDOM (void (self ^. jss "selected" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/VideoTrack/selected MDN VideoTrack.selected documentation>
getSelected :: (MonadDOM m) => VideoTrack -> m Bool
getSelected self = liftDOM (((self ^. js "selected") >>= valToBool))
-- | <https://developer.mozilla.org/docs/Web/API/VideoTrack/sourceBuffer MDN VideoTrack.sourceBuffer documentation>
getSourceBuffer :: (MonadDOM m) => VideoTrack -> m (Maybe SourceBuffer)
getSourceBuffer self = liftDOM (((self ^. js "sourceBuffer") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/VideoTrack/sourceBuffer MDN VideoTrack.sourceBuffer documentation>
getSourceBufferUnsafe :: (MonadDOM m, HasCallStack) => VideoTrack -> m SourceBuffer
getSourceBufferUnsafe self = liftDOM ((((self ^. js "sourceBuffer") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://developer.mozilla.org/docs/Web/API/VideoTrack/sourceBuffer MDN VideoTrack.sourceBuffer documentation>
getSourceBufferUnchecked :: (MonadDOM m) => VideoTrack -> m SourceBuffer
getSourceBufferUnchecked self = liftDOM (((self ^. js "sourceBuffer") >>= fromJSValUnchecked))