packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from orientation-event (webref). Do not edit.
module JSDOM.Generated.DeviceOrientationEvent
       (newDeviceOrientationEvent, getAlpha, getAlphaUnsafe, getAlphaUnchecked, getBeta, getBetaUnsafe, getBetaUnchecked, getGamma, getGammaUnsafe, getGammaUnchecked, getAbsolute, DeviceOrientationEvent(..), gTypeDeviceOrientationEvent)
       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/DeviceOrientationEvent/DeviceOrientationEvent MDN DeviceOrientationEvent. documentation>
newDeviceOrientationEvent :: (MonadDOM m, ToJSString type') => type' -> Maybe DeviceOrientationEventInit -> m DeviceOrientationEvent
newDeviceOrientationEvent type' eventInitDict = liftDOM (((new (jsg "DeviceOrientationEvent") [toJSVal type', P.maybe (P.return jsUndefined) toJSVal eventInitDict]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/alpha MDN DeviceOrientationEvent.alpha documentation>
getAlpha :: (MonadDOM m) => DeviceOrientationEvent -> m (Maybe Double)
getAlpha self = liftDOM (((self ^. js "alpha") >>= fromJSValUnchecked))

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

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

-- | <https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/beta MDN DeviceOrientationEvent.beta documentation>
getBeta :: (MonadDOM m) => DeviceOrientationEvent -> m (Maybe Double)
getBeta self = liftDOM (((self ^. js "beta") >>= fromJSValUnchecked))

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

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

-- | <https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/gamma MDN DeviceOrientationEvent.gamma documentation>
getGamma :: (MonadDOM m) => DeviceOrientationEvent -> m (Maybe Double)
getGamma self = liftDOM (((self ^. js "gamma") >>= fromJSValUnchecked))

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

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

-- | <https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/absolute MDN DeviceOrientationEvent.absolute documentation>
getAbsolute :: (MonadDOM m) => DeviceOrientationEvent -> m Bool
getAbsolute self = liftDOM (((self ^. js "absolute") >>= valToBool))