jsaddle-dom-0.10.0.0: src/JSDOM/Generated/AnimationEffect.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from web-animations-1 (webref). Do not edit.
module JSDOM.Generated.AnimationEffect
(getComputedTiming, getComputedTiming_, getTiming, getTiming_, updateTiming, AnimationEffect(..), gTypeAnimationEffect, IsAnimationEffect, toAnimationEffect)
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/AnimationEffect/getComputedTiming MDN AnimationEffect.getComputedTiming documentation>
getComputedTiming :: (MonadDOM m, IsAnimationEffect self) => self -> m ComputedEffectTiming
getComputedTiming self = liftDOM ((((Types.toAnimationEffect self) ^. jsf "getComputedTiming" ()) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/AnimationEffect/getComputedTiming MDN AnimationEffect.getComputedTiming documentation>
getComputedTiming_ :: (MonadDOM m, IsAnimationEffect self) => self -> m ()
getComputedTiming_ self = liftDOM (void ((Types.toAnimationEffect self) ^. jsf "getComputedTiming" ()))
-- | <https://developer.mozilla.org/docs/Web/API/AnimationEffect/getTiming MDN AnimationEffect.getTiming documentation>
getTiming :: (MonadDOM m, IsAnimationEffect self) => self -> m EffectTiming
getTiming self = liftDOM ((((Types.toAnimationEffect self) ^. jsf "getTiming" ()) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/AnimationEffect/getTiming MDN AnimationEffect.getTiming documentation>
getTiming_ :: (MonadDOM m, IsAnimationEffect self) => self -> m ()
getTiming_ self = liftDOM (void ((Types.toAnimationEffect self) ^. jsf "getTiming" ()))
-- | <https://developer.mozilla.org/docs/Web/API/AnimationEffect/updateTiming MDN AnimationEffect.updateTiming documentation>
updateTiming :: (MonadDOM m, IsAnimationEffect self) => self -> Maybe OptionalEffectTiming -> m ()
updateTiming self timing = liftDOM (void ((Types.toAnimationEffect self) ^. jsf "updateTiming" [P.maybe (P.return jsUndefined) toJSVal timing]))