packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/TextTrackCue.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.TextTrackCue
       (getTrack, getTrackUnsafe, getTrackUnchecked, setId, getId, setStartTime, getStartTime, setEndTime, getEndTime, setPauseOnExit, getPauseOnExit, enter, exit, TextTrackCue(..), gTypeTextTrackCue, IsTextTrackCue, toTextTrackCue)
       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/TextTrackCue/track MDN TextTrackCue.track documentation>
getTrack :: (MonadDOM m, IsTextTrackCue self) => self -> m (Maybe TextTrack)
getTrack self = liftDOM ((((Types.toTextTrackCue self) ^. js "track") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/TextTrackCue/track MDN TextTrackCue.track documentation>
getTrackUnsafe :: (MonadDOM m, IsTextTrackCue self, HasCallStack) => self -> m TextTrack
getTrackUnsafe self = liftDOM (((((Types.toTextTrackCue self) ^. js "track") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/TextTrackCue/track MDN TextTrackCue.track documentation>
getTrackUnchecked :: (MonadDOM m, IsTextTrackCue self) => self -> m TextTrack
getTrackUnchecked self = liftDOM ((((Types.toTextTrackCue self) ^. js "track") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/TextTrackCue/id MDN TextTrackCue.id documentation>
setId :: (MonadDOM m, IsTextTrackCue self, ToJSString val) => self -> val -> m ()
setId self val = liftDOM (void ((Types.toTextTrackCue self) ^. jss "id" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/TextTrackCue/id MDN TextTrackCue.id documentation>
getId :: (MonadDOM m, IsTextTrackCue self, FromJSString result) => self -> m result
getId self = liftDOM ((((Types.toTextTrackCue self) ^. js "id") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/TextTrackCue/startTime MDN TextTrackCue.startTime documentation>
setStartTime :: (MonadDOM m, IsTextTrackCue self) => self -> Double -> m ()
setStartTime self val = liftDOM (void ((Types.toTextTrackCue self) ^. jss "startTime" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/TextTrackCue/startTime MDN TextTrackCue.startTime documentation>
getStartTime :: (MonadDOM m, IsTextTrackCue self) => self -> m Double
getStartTime self = liftDOM ((((Types.toTextTrackCue self) ^. js "startTime") >>= valToNumber))

-- | <https://developer.mozilla.org/docs/Web/API/TextTrackCue/endTime MDN TextTrackCue.endTime documentation>
setEndTime :: (MonadDOM m, IsTextTrackCue self) => self -> Double -> m ()
setEndTime self val = liftDOM (void ((Types.toTextTrackCue self) ^. jss "endTime" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/TextTrackCue/endTime MDN TextTrackCue.endTime documentation>
getEndTime :: (MonadDOM m, IsTextTrackCue self) => self -> m Double
getEndTime self = liftDOM ((((Types.toTextTrackCue self) ^. js "endTime") >>= valToNumber))

-- | <https://developer.mozilla.org/docs/Web/API/TextTrackCue/pauseOnExit MDN TextTrackCue.pauseOnExit documentation>
setPauseOnExit :: (MonadDOM m, IsTextTrackCue self) => self -> Bool -> m ()
setPauseOnExit self val = liftDOM (void ((Types.toTextTrackCue self) ^. jss "pauseOnExit" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/TextTrackCue/pauseOnExit MDN TextTrackCue.pauseOnExit documentation>
getPauseOnExit :: (MonadDOM m, IsTextTrackCue self) => self -> m Bool
getPauseOnExit self = liftDOM ((((Types.toTextTrackCue self) ^. js "pauseOnExit") >>= valToBool))

-- | <https://html.spec.whatwg.org/multipage/media.html#handler-texttrackcue-onenter enter event>
enter :: (IsTextTrackCue self, IsEventTarget self) => EventName self Event
enter = unsafeEventName (toJSString "enter")

-- | <https://html.spec.whatwg.org/multipage/media.html#handler-texttrackcue-onexit exit event>
exit :: (IsTextTrackCue self, IsEventTarget self) => EventName self Event
exit = unsafeEventName (toJSString "exit")