packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from largest-contentful-paint (webref). Do not edit.
module JSDOM.Generated.LargestContentfulPaint
       (toJSON, toJSON_, getLoadTime, getRenderTime, getSize, getId, getUrl, getElement, getElementUnsafe, getElementUnchecked, LargestContentfulPaint(..), gTypeLargestContentfulPaint)
       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/LargestContentfulPaint/toJSON MDN LargestContentfulPaint.toJSON documentation>
toJSON :: (MonadDOM m) => LargestContentfulPaint -> m GObject
toJSON self = liftDOM (((self ^. jsf "toJSON" ()) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/toJSON MDN LargestContentfulPaint.toJSON documentation>
toJSON_ :: (MonadDOM m) => LargestContentfulPaint -> m ()
toJSON_ self = liftDOM (void (self ^. jsf "toJSON" ()))

-- | <https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/loadTime MDN LargestContentfulPaint.loadTime documentation>
getLoadTime :: (MonadDOM m) => LargestContentfulPaint -> m Double
getLoadTime self = liftDOM (((self ^. js "loadTime") >>= valToNumber))

-- | <https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/renderTime MDN LargestContentfulPaint.renderTime documentation>
getRenderTime :: (MonadDOM m) => LargestContentfulPaint -> m Double
getRenderTime self = liftDOM (((self ^. js "renderTime") >>= valToNumber))

-- | <https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/size MDN LargestContentfulPaint.size documentation>
getSize :: (MonadDOM m) => LargestContentfulPaint -> m Word
getSize self = liftDOM ((P.round <$> ((self ^. js "size") >>= valToNumber)))

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

-- | <https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/url MDN LargestContentfulPaint.url documentation>
getUrl :: (MonadDOM m, FromJSString result) => LargestContentfulPaint -> m result
getUrl self = liftDOM (((self ^. js "url") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/element MDN LargestContentfulPaint.element documentation>
getElement :: (MonadDOM m) => LargestContentfulPaint -> m (Maybe Element)
getElement self = liftDOM (((self ^. js "element") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/element MDN LargestContentfulPaint.element documentation>
getElementUnsafe :: (MonadDOM m, HasCallStack) => LargestContentfulPaint -> m Element
getElementUnsafe self = liftDOM ((((self ^. js "element") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/element MDN LargestContentfulPaint.element documentation>
getElementUnchecked :: (MonadDOM m) => LargestContentfulPaint -> m Element
getElementUnchecked self = liftDOM (((self ^. js "element") >>= fromJSValUnchecked))