packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/VideoFrameInit.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webcodecs (webref). Do not edit.
module JSDOM.Generated.VideoFrameInit
       (newVideoFrameInit, setDuration, getDuration, getDurationUnsafe, getDurationUnchecked, setTimestamp, getTimestamp, getTimestampUnsafe, getTimestampUnchecked, setAlpha, getAlpha, getAlphaUnsafe, getAlphaUnchecked, setVisibleRect, getVisibleRect, getVisibleRectUnsafe, getVisibleRectUnchecked, setRotation, getRotation, getRotationUnsafe, getRotationUnchecked, setFlip, getFlip, getFlipUnsafe, getFlipUnchecked, setDisplayWidth, getDisplayWidth, getDisplayWidthUnsafe, getDisplayWidthUnchecked, setDisplayHeight, getDisplayHeight, getDisplayHeightUnsafe, getDisplayHeightUnchecked, setMetadata, getMetadata, getMetadataUnsafe, getMetadataUnchecked, VideoFrameInit(..), gTypeVideoFrameInit)
       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://w3c.github.io/webcodecs/#dictdef-videoframeinit VideoFrameInit specification>
newVideoFrameInit :: (MonadDOM m) => m VideoFrameInit
newVideoFrameInit = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-duration VideoFrameInit.duration specification>
setDuration :: (MonadDOM m) => VideoFrameInit -> Word53 -> m ()
setDuration self val = liftDOM (void (self ^. jss "duration" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-duration VideoFrameInit.duration specification>
getDuration :: (MonadDOM m) => VideoFrameInit -> m (Maybe Word53)
getDuration self = liftDOM (((self ^. js "duration") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-duration VideoFrameInit.duration specification>
getDurationUnsafe :: (MonadDOM m, HasCallStack) => VideoFrameInit -> m Word53
getDurationUnsafe self = liftDOM ((((self ^. js "duration") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-duration VideoFrameInit.duration specification>
getDurationUnchecked :: (MonadDOM m) => VideoFrameInit -> m Word53
getDurationUnchecked self = liftDOM (((self ^. js "duration") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-timestamp VideoFrameInit.timestamp specification>
setTimestamp :: (MonadDOM m) => VideoFrameInit -> Int53 -> m ()
setTimestamp self val = liftDOM (void (self ^. jss "timestamp" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-timestamp VideoFrameInit.timestamp specification>
getTimestamp :: (MonadDOM m) => VideoFrameInit -> m (Maybe Int53)
getTimestamp self = liftDOM (((self ^. js "timestamp") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-timestamp VideoFrameInit.timestamp specification>
getTimestampUnsafe :: (MonadDOM m, HasCallStack) => VideoFrameInit -> m Int53
getTimestampUnsafe self = liftDOM ((((self ^. js "timestamp") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-timestamp VideoFrameInit.timestamp specification>
getTimestampUnchecked :: (MonadDOM m) => VideoFrameInit -> m Int53
getTimestampUnchecked self = liftDOM (((self ^. js "timestamp") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-alpha VideoFrameInit.alpha specification>
setAlpha :: (MonadDOM m) => VideoFrameInit -> AlphaOption -> m ()
setAlpha self val = liftDOM (void (self ^. jss "alpha" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-alpha VideoFrameInit.alpha specification>
getAlpha :: (MonadDOM m) => VideoFrameInit -> m (Maybe AlphaOption)
getAlpha self = liftDOM (((self ^. js "alpha") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-alpha VideoFrameInit.alpha specification>
getAlphaUnsafe :: (MonadDOM m, HasCallStack) => VideoFrameInit -> m AlphaOption
getAlphaUnsafe self = liftDOM ((((self ^. js "alpha") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-alpha VideoFrameInit.alpha specification>
getAlphaUnchecked :: (MonadDOM m) => VideoFrameInit -> m AlphaOption
getAlphaUnchecked self = liftDOM (((self ^. js "alpha") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-visiblerect VideoFrameInit.visibleRect specification>
setVisibleRect :: (MonadDOM m) => VideoFrameInit -> DOMRectInit -> m ()
setVisibleRect self val = liftDOM (void (self ^. jss "visibleRect" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-visiblerect VideoFrameInit.visibleRect specification>
getVisibleRect :: (MonadDOM m) => VideoFrameInit -> m (Maybe DOMRectInit)
getVisibleRect self = liftDOM (((self ^. js "visibleRect") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-visiblerect VideoFrameInit.visibleRect specification>
getVisibleRectUnsafe :: (MonadDOM m, HasCallStack) => VideoFrameInit -> m DOMRectInit
getVisibleRectUnsafe self = liftDOM ((((self ^. js "visibleRect") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-visiblerect VideoFrameInit.visibleRect specification>
getVisibleRectUnchecked :: (MonadDOM m) => VideoFrameInit -> m DOMRectInit
getVisibleRectUnchecked self = liftDOM (((self ^. js "visibleRect") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-rotation VideoFrameInit.rotation specification>
setRotation :: (MonadDOM m) => VideoFrameInit -> Double -> m ()
setRotation self val = liftDOM (void (self ^. jss "rotation" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-rotation VideoFrameInit.rotation specification>
getRotation :: (MonadDOM m) => VideoFrameInit -> m (Maybe Double)
getRotation self = liftDOM (((self ^. js "rotation") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-rotation VideoFrameInit.rotation specification>
getRotationUnsafe :: (MonadDOM m, HasCallStack) => VideoFrameInit -> m Double
getRotationUnsafe self = liftDOM ((((self ^. js "rotation") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-rotation VideoFrameInit.rotation specification>
getRotationUnchecked :: (MonadDOM m) => VideoFrameInit -> m Double
getRotationUnchecked self = liftDOM (((self ^. js "rotation") >>= valToNumber))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-flip VideoFrameInit.flip specification>
setFlip :: (MonadDOM m) => VideoFrameInit -> Bool -> m ()
setFlip self val = liftDOM (void (self ^. jss "flip" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-flip VideoFrameInit.flip specification>
getFlip :: (MonadDOM m) => VideoFrameInit -> m (Maybe Bool)
getFlip self = liftDOM (((self ^. js "flip") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-flip VideoFrameInit.flip specification>
getFlipUnsafe :: (MonadDOM m, HasCallStack) => VideoFrameInit -> m Bool
getFlipUnsafe self = liftDOM ((((self ^. js "flip") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-flip VideoFrameInit.flip specification>
getFlipUnchecked :: (MonadDOM m) => VideoFrameInit -> m Bool
getFlipUnchecked self = liftDOM (((self ^. js "flip") >>= valToBool))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-displaywidth VideoFrameInit.displayWidth specification>
setDisplayWidth :: (MonadDOM m) => VideoFrameInit -> Word -> m ()
setDisplayWidth self val = liftDOM (void (self ^. jss "displayWidth" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-displaywidth VideoFrameInit.displayWidth specification>
getDisplayWidth :: (MonadDOM m) => VideoFrameInit -> m (Maybe Word)
getDisplayWidth self = liftDOM (((self ^. js "displayWidth") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-displaywidth VideoFrameInit.displayWidth specification>
getDisplayWidthUnsafe :: (MonadDOM m, HasCallStack) => VideoFrameInit -> m Word
getDisplayWidthUnsafe self = liftDOM ((((self ^. js "displayWidth") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-displaywidth VideoFrameInit.displayWidth specification>
getDisplayWidthUnchecked :: (MonadDOM m) => VideoFrameInit -> m Word
getDisplayWidthUnchecked self = liftDOM ((P.round <$> ((self ^. js "displayWidth") >>= valToNumber)))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-displayheight VideoFrameInit.displayHeight specification>
setDisplayHeight :: (MonadDOM m) => VideoFrameInit -> Word -> m ()
setDisplayHeight self val = liftDOM (void (self ^. jss "displayHeight" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-displayheight VideoFrameInit.displayHeight specification>
getDisplayHeight :: (MonadDOM m) => VideoFrameInit -> m (Maybe Word)
getDisplayHeight self = liftDOM (((self ^. js "displayHeight") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-displayheight VideoFrameInit.displayHeight specification>
getDisplayHeightUnsafe :: (MonadDOM m, HasCallStack) => VideoFrameInit -> m Word
getDisplayHeightUnsafe self = liftDOM ((((self ^. js "displayHeight") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-displayheight VideoFrameInit.displayHeight specification>
getDisplayHeightUnchecked :: (MonadDOM m) => VideoFrameInit -> m Word
getDisplayHeightUnchecked self = liftDOM ((P.round <$> ((self ^. js "displayHeight") >>= valToNumber)))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-metadata VideoFrameInit.metadata specification>
setMetadata :: (MonadDOM m) => VideoFrameInit -> VideoFrameMetadata -> m ()
setMetadata self val = liftDOM (void (self ^. jss "metadata" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-metadata VideoFrameInit.metadata specification>
getMetadata :: (MonadDOM m) => VideoFrameInit -> m (Maybe VideoFrameMetadata)
getMetadata self = liftDOM (((self ^. js "metadata") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-metadata VideoFrameInit.metadata specification>
getMetadataUnsafe :: (MonadDOM m, HasCallStack) => VideoFrameInit -> m VideoFrameMetadata
getMetadataUnsafe self = liftDOM ((((self ^. js "metadata") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-videoframeinit-metadata VideoFrameInit.metadata specification>
getMetadataUnchecked :: (MonadDOM m) => VideoFrameInit -> m VideoFrameMetadata
getMetadataUnchecked self = liftDOM (((self ^. js "metadata") >>= fromJSValUnchecked))