packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from css-typed-om-1 (webref). Do not edit.
module JSDOM.Generated.CSSRotate
       (newCSSRotate, newCSSRotateXYZ, setX, getX, setY, getY, setZ, getZ, setAngle, getAngle, CSSRotate(..), gTypeCSSRotate)
       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/CSSRotate/CSSRotate MDN CSSRotate. documentation>
newCSSRotate :: (MonadDOM m, IsCSSNumericValue angle) => angle -> m CSSRotate
newCSSRotate angle = liftDOM (((new (jsg "CSSRotate") [toJSVal angle]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/CSSRotate/CSSRotate MDN CSSRotate. documentation>
newCSSRotateXYZ :: (MonadDOM m, IsCSSNumberish x, IsCSSNumberish y, IsCSSNumberish z, IsCSSNumericValue angle) => x -> y -> z -> angle -> m CSSRotate
newCSSRotateXYZ x y z angle = liftDOM (((new (jsg "CSSRotate") [toJSVal x, toJSVal y, toJSVal z, toJSVal angle]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/CSSRotate/x MDN CSSRotate.x documentation>
setX :: (MonadDOM m, IsCSSNumberish val) => CSSRotate -> val -> m ()
setX self val = liftDOM (void (self ^. jss "x" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/CSSRotate/x MDN CSSRotate.x documentation>
getX :: (MonadDOM m) => CSSRotate -> m CSSNumberish
getX self = liftDOM (((self ^. js "x") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/CSSRotate/y MDN CSSRotate.y documentation>
setY :: (MonadDOM m, IsCSSNumberish val) => CSSRotate -> val -> m ()
setY self val = liftDOM (void (self ^. jss "y" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/CSSRotate/y MDN CSSRotate.y documentation>
getY :: (MonadDOM m) => CSSRotate -> m CSSNumberish
getY self = liftDOM (((self ^. js "y") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/CSSRotate/z MDN CSSRotate.z documentation>
setZ :: (MonadDOM m, IsCSSNumberish val) => CSSRotate -> val -> m ()
setZ self val = liftDOM (void (self ^. jss "z" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/CSSRotate/z MDN CSSRotate.z documentation>
getZ :: (MonadDOM m) => CSSRotate -> m CSSNumberish
getZ self = liftDOM (((self ^. js "z") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/CSSRotate/angle MDN CSSRotate.angle documentation>
setAngle :: (MonadDOM m, IsCSSNumericValue val) => CSSRotate -> val -> m ()
setAngle self val = liftDOM (void (self ^. jss "angle" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/CSSRotate/angle MDN CSSRotate.angle documentation>
getAngle :: (MonadDOM m) => CSSRotate -> m CSSNumericValue
getAngle self = liftDOM (((self ^. js "angle") >>= fromJSValUnchecked))