packages feed

ghcjs-dom-javascript-0.10.0.0: src/GHCJS/DOM/JSFFI/Generated/EffectTiming.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from web-animations-1 (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.EffectTiming
       (js_newEffectTiming, js_setFill, js_getFill, js_setIterationStart, js_getIterationStart, js_setIterations, js_getIterations, js_setDirection, js_getDirection, js_setEasing, js_getEasing, js_setDelay, js_getDelay, js_setEndDelay, js_getEndDelay, js_setPlaybackRate, js_getPlaybackRate, js_setDuration, js_getDuration, newEffectTiming, setFill, getFill, getFillUnsafe, getFillUnchecked, setIterationStart, getIterationStart, getIterationStartUnsafe, getIterationStartUnchecked, setIterations, getIterations, getIterationsUnsafe, getIterationsUnchecked, setDirection, getDirection, getDirectionUnsafe, getDirectionUnchecked, setEasing, getEasing, getEasingUnsafe, getEasingUnchecked, setDelay, getDelay, getDelayUnsafe, getDelayUnchecked, setEndDelay, getEndDelay, getEndDelayUnsafe, getEndDelayUnchecked, setPlaybackRate, getPlaybackRate, getPlaybackRateUnsafe, getPlaybackRateUnchecked, setDuration, getDuration, getDurationUnsafe, getDurationUnchecked, EffectTiming(..), gTypeEffectTiming, IsEffectTiming, toEffectTiming)
       where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import GHCJS.Types (JSVal, JSString)
import GHCJS.Foreign (jsUndefined, jsNull)
import GHCJS.DOM.Types
import qualified GHCJS.DOM.Types as Types
import GHCJS.DOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import GHCJS.DOM.JSFFI.Generated.Enums

foreign import javascript safe "(() => { return ({}); })"
        js_newEffectTiming :: IO EffectTiming
-- | <https://drafts.csswg.org/web-animations-1/#dictdef-effecttiming EffectTiming specification>
newEffectTiming :: (MonadDOM m) => m EffectTiming
newEffectTiming = liftDOM ((js_newEffectTiming))

foreign import javascript safe "(($1, $2) => { $1[\"fill\"] = $2; })"
        js_setFill :: EffectTiming -> JSVal -> IO ()
-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-fill EffectTiming.fill specification>
setFill :: (MonadDOM m, IsEffectTiming self) => self -> FillMode -> m ()
setFill self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setFill ((Types.toEffectTiming self)) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"fill\"]; })"
        js_getFill :: EffectTiming -> IO JSVal
-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-fill EffectTiming.fill specification>
getFill :: (MonadDOM m, IsEffectTiming self) => self -> m (Maybe FillMode)
getFill self = liftDOM (((js_getFill ((Types.toEffectTiming self))) >>= fromJSValUnchecked))

-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-fill EffectTiming.fill specification>
getFillUnsafe :: (MonadDOM m, IsEffectTiming self, HasCallStack) => self -> m FillMode
getFillUnsafe self = liftDOM ((((js_getFill ((Types.toEffectTiming self))) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-fill EffectTiming.fill specification>
getFillUnchecked :: (MonadDOM m, IsEffectTiming self) => self -> m FillMode
getFillUnchecked self = liftDOM ((pFromJSVal <$> (js_getFill ((Types.toEffectTiming self)))))

foreign import javascript safe "(($1, $2) => { $1[\"iterationStart\"] = $2; })"
        js_setIterationStart :: EffectTiming -> Double -> IO ()
-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-iterationstart EffectTiming.iterationStart specification>
setIterationStart :: (MonadDOM m, IsEffectTiming self) => self -> Double -> m ()
setIterationStart self val = liftDOM (void ((js_setIterationStart ((Types.toEffectTiming self)) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"iterationStart\"]; })"
        js_getIterationStart :: EffectTiming -> IO JSVal
-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-iterationstart EffectTiming.iterationStart specification>
getIterationStart :: (MonadDOM m, IsEffectTiming self) => self -> m (Maybe Double)
getIterationStart self = liftDOM (((js_getIterationStart ((Types.toEffectTiming self))) >>= fromJSValUnchecked))

-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-iterationstart EffectTiming.iterationStart specification>
getIterationStartUnsafe :: (MonadDOM m, IsEffectTiming self, HasCallStack) => self -> m Double
getIterationStartUnsafe self = liftDOM ((((js_getIterationStart ((Types.toEffectTiming self))) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-iterationstart EffectTiming.iterationStart specification>
getIterationStartUnchecked :: (MonadDOM m, IsEffectTiming self) => self -> m Double
getIterationStartUnchecked self = liftDOM ((pFromJSVal <$> (js_getIterationStart ((Types.toEffectTiming self)))))

foreign import javascript safe "(($1, $2) => { $1[\"iterations\"] = $2; })"
        js_setIterations :: EffectTiming -> Double -> IO ()
-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-iterations EffectTiming.iterations specification>
setIterations :: (MonadDOM m, IsEffectTiming self) => self -> Double -> m ()
setIterations self val = liftDOM (void ((js_setIterations ((Types.toEffectTiming self)) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"iterations\"]; })"
        js_getIterations :: EffectTiming -> IO JSVal
-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-iterations EffectTiming.iterations specification>
getIterations :: (MonadDOM m, IsEffectTiming self) => self -> m (Maybe Double)
getIterations self = liftDOM (((js_getIterations ((Types.toEffectTiming self))) >>= fromJSValUnchecked))

-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-iterations EffectTiming.iterations specification>
getIterationsUnsafe :: (MonadDOM m, IsEffectTiming self, HasCallStack) => self -> m Double
getIterationsUnsafe self = liftDOM ((((js_getIterations ((Types.toEffectTiming self))) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-iterations EffectTiming.iterations specification>
getIterationsUnchecked :: (MonadDOM m, IsEffectTiming self) => self -> m Double
getIterationsUnchecked self = liftDOM ((pFromJSVal <$> (js_getIterations ((Types.toEffectTiming self)))))

foreign import javascript safe "(($1, $2) => { $1[\"direction\"] = $2; })"
        js_setDirection :: EffectTiming -> JSVal -> IO ()
-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-direction EffectTiming.direction specification>
setDirection :: (MonadDOM m, IsEffectTiming self) => self -> PlaybackDirection -> m ()
setDirection self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setDirection ((Types.toEffectTiming self)) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"direction\"]; })"
        js_getDirection :: EffectTiming -> IO JSVal
-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-direction EffectTiming.direction specification>
getDirection :: (MonadDOM m, IsEffectTiming self) => self -> m (Maybe PlaybackDirection)
getDirection self = liftDOM (((js_getDirection ((Types.toEffectTiming self))) >>= fromJSValUnchecked))

-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-direction EffectTiming.direction specification>
getDirectionUnsafe :: (MonadDOM m, IsEffectTiming self, HasCallStack) => self -> m PlaybackDirection
getDirectionUnsafe self = liftDOM ((((js_getDirection ((Types.toEffectTiming self))) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-direction EffectTiming.direction specification>
getDirectionUnchecked :: (MonadDOM m, IsEffectTiming self) => self -> m PlaybackDirection
getDirectionUnchecked self = liftDOM ((pFromJSVal <$> (js_getDirection ((Types.toEffectTiming self)))))

foreign import javascript safe "(($1, $2) => { $1[\"easing\"] = $2; })"
        js_setEasing :: EffectTiming -> JSString -> IO ()
-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-easing EffectTiming.easing specification>
setEasing :: (MonadDOM m, IsEffectTiming self, ToJSString val) => self -> val -> m ()
setEasing self val = liftDOM (void ((js_setEasing ((Types.toEffectTiming self)) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"easing\"]; })"
        js_getEasing :: EffectTiming -> IO JSVal
-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-easing EffectTiming.easing specification>
getEasing :: (MonadDOM m, IsEffectTiming self, FromJSString result) => self -> m (Maybe result)
getEasing self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getEasing ((Types.toEffectTiming self)))))

-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-easing EffectTiming.easing specification>
getEasingUnsafe :: (MonadDOM m, IsEffectTiming self, HasCallStack, FromJSString result) => self -> m result
getEasingUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getEasing ((Types.toEffectTiming self)))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://drafts.csswg.org/web-animations-1/#dom-effecttiming-easing EffectTiming.easing specification>
getEasingUnchecked :: (MonadDOM m, IsEffectTiming self, FromJSString result) => self -> m result
getEasingUnchecked self = liftDOM ((pFromJSVal <$> (js_getEasing ((Types.toEffectTiming self)))))

foreign import javascript safe "(($1, $2) => { $1[\"delay\"] = $2; })"
        js_setDelay :: EffectTiming -> Double -> IO ()
-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-delay EffectTiming.delay specification>
setDelay :: (MonadDOM m, IsEffectTiming self) => self -> Double -> m ()
setDelay self val = liftDOM (void ((js_setDelay ((Types.toEffectTiming self)) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"delay\"]; })"
        js_getDelay :: EffectTiming -> IO JSVal
-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-delay EffectTiming.delay specification>
getDelay :: (MonadDOM m, IsEffectTiming self) => self -> m (Maybe Double)
getDelay self = liftDOM (((js_getDelay ((Types.toEffectTiming self))) >>= fromJSValUnchecked))

-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-delay EffectTiming.delay specification>
getDelayUnsafe :: (MonadDOM m, IsEffectTiming self, HasCallStack) => self -> m Double
getDelayUnsafe self = liftDOM ((((js_getDelay ((Types.toEffectTiming self))) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-delay EffectTiming.delay specification>
getDelayUnchecked :: (MonadDOM m, IsEffectTiming self) => self -> m Double
getDelayUnchecked self = liftDOM ((pFromJSVal <$> (js_getDelay ((Types.toEffectTiming self)))))

foreign import javascript safe "(($1, $2) => { $1[\"endDelay\"] = $2; })"
        js_setEndDelay :: EffectTiming -> Double -> IO ()
-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-enddelay EffectTiming.endDelay specification>
setEndDelay :: (MonadDOM m, IsEffectTiming self) => self -> Double -> m ()
setEndDelay self val = liftDOM (void ((js_setEndDelay ((Types.toEffectTiming self)) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"endDelay\"]; })"
        js_getEndDelay :: EffectTiming -> IO JSVal
-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-enddelay EffectTiming.endDelay specification>
getEndDelay :: (MonadDOM m, IsEffectTiming self) => self -> m (Maybe Double)
getEndDelay self = liftDOM (((js_getEndDelay ((Types.toEffectTiming self))) >>= fromJSValUnchecked))

-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-enddelay EffectTiming.endDelay specification>
getEndDelayUnsafe :: (MonadDOM m, IsEffectTiming self, HasCallStack) => self -> m Double
getEndDelayUnsafe self = liftDOM ((((js_getEndDelay ((Types.toEffectTiming self))) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-enddelay EffectTiming.endDelay specification>
getEndDelayUnchecked :: (MonadDOM m, IsEffectTiming self) => self -> m Double
getEndDelayUnchecked self = liftDOM ((pFromJSVal <$> (js_getEndDelay ((Types.toEffectTiming self)))))

foreign import javascript safe "(($1, $2) => { $1[\"playbackRate\"] = $2; })"
        js_setPlaybackRate :: EffectTiming -> Double -> IO ()
-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-playbackrate EffectTiming.playbackRate specification>
setPlaybackRate :: (MonadDOM m, IsEffectTiming self) => self -> Double -> m ()
setPlaybackRate self val = liftDOM (void ((js_setPlaybackRate ((Types.toEffectTiming self)) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"playbackRate\"]; })"
        js_getPlaybackRate :: EffectTiming -> IO JSVal
-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-playbackrate EffectTiming.playbackRate specification>
getPlaybackRate :: (MonadDOM m, IsEffectTiming self) => self -> m (Maybe Double)
getPlaybackRate self = liftDOM (((js_getPlaybackRate ((Types.toEffectTiming self))) >>= fromJSValUnchecked))

-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-playbackrate EffectTiming.playbackRate specification>
getPlaybackRateUnsafe :: (MonadDOM m, IsEffectTiming self, HasCallStack) => self -> m Double
getPlaybackRateUnsafe self = liftDOM ((((js_getPlaybackRate ((Types.toEffectTiming self))) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-playbackrate EffectTiming.playbackRate specification>
getPlaybackRateUnchecked :: (MonadDOM m, IsEffectTiming self) => self -> m Double
getPlaybackRateUnchecked self = liftDOM ((pFromJSVal <$> (js_getPlaybackRate ((Types.toEffectTiming self)))))

foreign import javascript safe "(($1, $2) => { $1[\"duration\"] = $2; })"
        js_setDuration :: EffectTiming -> DoubleOrCSSNumericValueOrString -> IO ()
-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-duration EffectTiming.duration specification>
setDuration :: (MonadDOM m, IsEffectTiming self, IsDoubleOrCSSNumericValueOrString val) => self -> val -> m ()
setDuration self val = liftDOM (void ((js_setDuration ((Types.toEffectTiming self)) (Types.toDoubleOrCSSNumericValueOrString val))))

foreign import javascript unsafe "(($1) => { return $1[\"duration\"]; })"
        js_getDuration :: EffectTiming -> IO JSVal
-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-duration EffectTiming.duration specification>
getDuration :: (MonadDOM m, IsEffectTiming self) => self -> m (Maybe DoubleOrCSSNumericValueOrString)
getDuration self = liftDOM (((js_getDuration ((Types.toEffectTiming self))) >>= fromJSValUnchecked))

-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-duration EffectTiming.duration specification>
getDurationUnsafe :: (MonadDOM m, IsEffectTiming self, HasCallStack) => self -> m DoubleOrCSSNumericValueOrString
getDurationUnsafe self = liftDOM ((((js_getDuration ((Types.toEffectTiming self))) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://drafts.csswg.org/web-animations-2/#dom-effecttiming-duration EffectTiming.duration specification>
getDurationUnchecked :: (MonadDOM m, IsEffectTiming self) => self -> m DoubleOrCSSNumericValueOrString
getDurationUnchecked self = liftDOM ((pFromJSVal <$> (js_getDuration ((Types.toEffectTiming self)))))