jsaddle-dom-0.10.0.0: src/JSDOM/Generated/MediaImage.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from mediasession (webref). Do not edit.
module JSDOM.Generated.MediaImage
(newMediaImage, setSrc, getSrc, setSizes, getSizes, getSizesUnsafe, getSizesUnchecked, setType, getType, getTypeUnsafe, getTypeUnchecked, MediaImage(..), gTypeMediaImage)
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/mediasession/#dictdef-mediaimage MediaImage specification>
newMediaImage :: (MonadDOM m, ToJSString src) => src -> m MediaImage
newMediaImage src = liftDOM ((((new (jsg "Object") () >>= \o -> (o ^. jss "src" (toJSVal src)) P.>> P.return o)) >>= fromJSValUnchecked))
-- | <https://w3c.github.io/mediasession/#dom-mediaimage-src MediaImage.src specification>
setSrc :: (MonadDOM m, ToJSString val) => MediaImage -> val -> m ()
setSrc self val = liftDOM (void (self ^. jss "src" (toJSVal val)))
-- | <https://w3c.github.io/mediasession/#dom-mediaimage-src MediaImage.src specification>
getSrc :: (MonadDOM m, FromJSString result) => MediaImage -> m result
getSrc self = liftDOM (((self ^. js "src") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/mediasession/#dom-mediaimage-sizes MediaImage.sizes specification>
setSizes :: (MonadDOM m, ToJSString val) => MediaImage -> val -> m ()
setSizes self val = liftDOM (void (self ^. jss "sizes" (toJSVal val)))
-- | <https://w3c.github.io/mediasession/#dom-mediaimage-sizes MediaImage.sizes specification>
getSizes :: (MonadDOM m, FromJSString result) => MediaImage -> m (Maybe result)
getSizes self = liftDOM (((self ^. js "sizes") >>= fromMaybeJSString))
-- | <https://w3c.github.io/mediasession/#dom-mediaimage-sizes MediaImage.sizes specification>
getSizesUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => MediaImage -> m result
getSizesUnsafe self = liftDOM ((((self ^. js "sizes") >>= fromMaybeJSString) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/mediasession/#dom-mediaimage-sizes MediaImage.sizes specification>
getSizesUnchecked :: (MonadDOM m, FromJSString result) => MediaImage -> m result
getSizesUnchecked self = liftDOM (((self ^. js "sizes") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/mediasession/#dom-mediaimage-type MediaImage.type specification>
setType :: (MonadDOM m, ToJSString val) => MediaImage -> val -> m ()
setType self val = liftDOM (void (self ^. jss "type" (toJSVal val)))
-- | <https://w3c.github.io/mediasession/#dom-mediaimage-type MediaImage.type specification>
getType :: (MonadDOM m, FromJSString result) => MediaImage -> m (Maybe result)
getType self = liftDOM (((self ^. js "type") >>= fromMaybeJSString))
-- | <https://w3c.github.io/mediasession/#dom-mediaimage-type MediaImage.type specification>
getTypeUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => MediaImage -> m result
getTypeUnsafe self = liftDOM ((((self ^. js "type") >>= fromMaybeJSString) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/mediasession/#dom-mediaimage-type MediaImage.type specification>
getTypeUnchecked :: (MonadDOM m, FromJSString result) => MediaImage -> m result
getTypeUnchecked self = liftDOM (((self ^. js "type") >>= fromJSValUnchecked))