packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from scroll-animations-1 (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.ScrollTimelineOptions
       (js_newScrollTimelineOptions, js_setSource, js_getSource, js_setAxis, js_getAxis, newScrollTimelineOptions, setSource, getSource, getSourceUnsafe, getSourceUnchecked, setAxis, getAxis, getAxisUnsafe, getAxisUnchecked, ScrollTimelineOptions(..), gTypeScrollTimelineOptions)
       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_newScrollTimelineOptions :: IO ScrollTimelineOptions
-- | <https://drafts.csswg.org/scroll-animations-1/#dictdef-scrolltimelineoptions ScrollTimelineOptions specification>
newScrollTimelineOptions :: (MonadDOM m) => m ScrollTimelineOptions
newScrollTimelineOptions = liftDOM ((js_newScrollTimelineOptions))

foreign import javascript safe "(($1, $2) => { $1[\"source\"] = $2; })"
        js_setSource :: ScrollTimelineOptions -> JSVal -> IO ()
-- | <https://drafts.csswg.org/scroll-animations-1/#dom-scrolltimelineoptions-source ScrollTimelineOptions.source specification>
setSource :: (MonadDOM m, IsElement val) => ScrollTimelineOptions -> Maybe val -> m ()
setSource self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setSource (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"source\"]; })"
        js_getSource :: ScrollTimelineOptions -> IO JSVal
-- | <https://drafts.csswg.org/scroll-animations-1/#dom-scrolltimelineoptions-source ScrollTimelineOptions.source specification>
getSource :: (MonadDOM m) => ScrollTimelineOptions -> m (Maybe Element)
getSource self = liftDOM (((js_getSource (self)) >>= fromJSValUnchecked))

-- | <https://drafts.csswg.org/scroll-animations-1/#dom-scrolltimelineoptions-source ScrollTimelineOptions.source specification>
getSourceUnsafe :: (MonadDOM m, HasCallStack) => ScrollTimelineOptions -> m Element
getSourceUnsafe self = liftDOM ((((js_getSource (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://drafts.csswg.org/scroll-animations-1/#dom-scrolltimelineoptions-source ScrollTimelineOptions.source specification>
getSourceUnchecked :: (MonadDOM m) => ScrollTimelineOptions -> m Element
getSourceUnchecked self = liftDOM ((pFromJSVal <$> (js_getSource (self))))

foreign import javascript safe "(($1, $2) => { $1[\"axis\"] = $2; })"
        js_setAxis :: ScrollTimelineOptions -> JSVal -> IO ()
-- | <https://drafts.csswg.org/scroll-animations-1/#dom-scrolltimelineoptions-axis ScrollTimelineOptions.axis specification>
setAxis :: (MonadDOM m) => ScrollTimelineOptions -> ScrollAxis -> m ()
setAxis self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setAxis (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"axis\"]; })"
        js_getAxis :: ScrollTimelineOptions -> IO JSVal
-- | <https://drafts.csswg.org/scroll-animations-1/#dom-scrolltimelineoptions-axis ScrollTimelineOptions.axis specification>
getAxis :: (MonadDOM m) => ScrollTimelineOptions -> m (Maybe ScrollAxis)
getAxis self = liftDOM (((js_getAxis (self)) >>= fromJSValUnchecked))

-- | <https://drafts.csswg.org/scroll-animations-1/#dom-scrolltimelineoptions-axis ScrollTimelineOptions.axis specification>
getAxisUnsafe :: (MonadDOM m, HasCallStack) => ScrollTimelineOptions -> m ScrollAxis
getAxisUnsafe self = liftDOM ((((js_getAxis (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://drafts.csswg.org/scroll-animations-1/#dom-scrolltimelineoptions-axis ScrollTimelineOptions.axis specification>
getAxisUnchecked :: (MonadDOM m) => ScrollTimelineOptions -> m ScrollAxis
getAxisUnchecked self = liftDOM ((pFromJSVal <$> (js_getAxis (self))))