jsaddle-dom-0.10.0.0: src/JSDOM/Generated/AudioTrack.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.AudioTrack
(getId, getKind, getLabel, getLanguage, setEnabled, getEnabled, getSourceBuffer, getSourceBufferUnsafe, getSourceBufferUnchecked, AudioTrack(..), gTypeAudioTrack)
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/AudioTrack/id MDN AudioTrack.id documentation>
getId :: (MonadDOM m, FromJSString result) => AudioTrack -> m result
getId self = liftDOM (((self ^. js "id") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/AudioTrack/kind MDN AudioTrack.kind documentation>
getKind :: (MonadDOM m, FromJSString result) => AudioTrack -> m result
getKind self = liftDOM (((self ^. js "kind") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/AudioTrack/label MDN AudioTrack.label documentation>
getLabel :: (MonadDOM m, FromJSString result) => AudioTrack -> m result
getLabel self = liftDOM (((self ^. js "label") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/AudioTrack/language MDN AudioTrack.language documentation>
getLanguage :: (MonadDOM m, FromJSString result) => AudioTrack -> m result
getLanguage self = liftDOM (((self ^. js "language") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/AudioTrack/enabled MDN AudioTrack.enabled documentation>
setEnabled :: (MonadDOM m) => AudioTrack -> Bool -> m ()
setEnabled self val = liftDOM (void (self ^. jss "enabled" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/AudioTrack/enabled MDN AudioTrack.enabled documentation>
getEnabled :: (MonadDOM m) => AudioTrack -> m Bool
getEnabled self = liftDOM (((self ^. js "enabled") >>= valToBool))
-- | <https://developer.mozilla.org/docs/Web/API/AudioTrack/sourceBuffer MDN AudioTrack.sourceBuffer documentation>
getSourceBuffer :: (MonadDOM m) => AudioTrack -> m (Maybe SourceBuffer)
getSourceBuffer self = liftDOM (((self ^. js "sourceBuffer") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/AudioTrack/sourceBuffer MDN AudioTrack.sourceBuffer documentation>
getSourceBufferUnsafe :: (MonadDOM m, HasCallStack) => AudioTrack -> 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/AudioTrack/sourceBuffer MDN AudioTrack.sourceBuffer documentation>
getSourceBufferUnchecked :: (MonadDOM m) => AudioTrack -> m SourceBuffer
getSourceBufferUnchecked self = liftDOM (((self ^. js "sourceBuffer") >>= fromJSValUnchecked))