packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from intersection-observer (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.IntersectionObserverInit
       (js_newIntersectionObserverInit, js_setRoot, js_getRoot, js_setRootMargin, js_getRootMargin, js_setScrollMargin, js_getScrollMargin, js_setThreshold, js_getThreshold, js_setDelay, js_getDelay, js_setTrackVisibility, js_getTrackVisibility, newIntersectionObserverInit, setRoot, getRoot, getRootUnsafe, getRootUnchecked, setRootMargin, getRootMargin, getRootMarginUnsafe, getRootMarginUnchecked, setScrollMargin, getScrollMargin, getScrollMarginUnsafe, getScrollMarginUnchecked, setThreshold, getThreshold, getThresholdUnsafe, getThresholdUnchecked, setDelay, getDelay, getDelayUnsafe, getDelayUnchecked, setTrackVisibility, getTrackVisibility, getTrackVisibilityUnsafe, getTrackVisibilityUnchecked, IntersectionObserverInit(..), gTypeIntersectionObserverInit)
       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_newIntersectionObserverInit :: IO IntersectionObserverInit
-- | <https://w3c.github.io/IntersectionObserver/#dictdef-intersectionobserverinit IntersectionObserverInit specification>
newIntersectionObserverInit :: (MonadDOM m) => m IntersectionObserverInit
newIntersectionObserverInit = liftDOM ((js_newIntersectionObserverInit))

foreign import javascript safe "(($1, $2) => { $1[\"root\"] = $2; })"
        js_setRoot :: IntersectionObserverInit -> JSVal -> IO ()
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-root IntersectionObserverInit.root specification>
setRoot :: (MonadDOM m, IsElementOrDocument val) => IntersectionObserverInit -> Maybe val -> m ()
setRoot self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setRoot (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"root\"]; })"
        js_getRoot :: IntersectionObserverInit -> IO JSVal
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-root IntersectionObserverInit.root specification>
getRoot :: (MonadDOM m) => IntersectionObserverInit -> m (Maybe ElementOrDocument)
getRoot self = liftDOM (((js_getRoot (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-root IntersectionObserverInit.root specification>
getRootUnsafe :: (MonadDOM m, HasCallStack) => IntersectionObserverInit -> m ElementOrDocument
getRootUnsafe self = liftDOM ((((js_getRoot (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-root IntersectionObserverInit.root specification>
getRootUnchecked :: (MonadDOM m) => IntersectionObserverInit -> m ElementOrDocument
getRootUnchecked self = liftDOM ((pFromJSVal <$> (js_getRoot (self))))

foreign import javascript safe "(($1, $2) => { $1[\"rootMargin\"] = $2; })"
        js_setRootMargin :: IntersectionObserverInit -> JSString -> IO ()
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-rootmargin IntersectionObserverInit.rootMargin specification>
setRootMargin :: (MonadDOM m, ToJSString val) => IntersectionObserverInit -> val -> m ()
setRootMargin self val = liftDOM (void ((js_setRootMargin (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"rootMargin\"]; })"
        js_getRootMargin :: IntersectionObserverInit -> IO JSVal
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-rootmargin IntersectionObserverInit.rootMargin specification>
getRootMargin :: (MonadDOM m, FromJSString result) => IntersectionObserverInit -> m (Maybe result)
getRootMargin self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getRootMargin (self))))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-rootmargin IntersectionObserverInit.rootMargin specification>
getRootMarginUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => IntersectionObserverInit -> m result
getRootMarginUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getRootMargin (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-rootmargin IntersectionObserverInit.rootMargin specification>
getRootMarginUnchecked :: (MonadDOM m, FromJSString result) => IntersectionObserverInit -> m result
getRootMarginUnchecked self = liftDOM ((pFromJSVal <$> (js_getRootMargin (self))))

foreign import javascript safe "(($1, $2) => { $1[\"scrollMargin\"] = $2; })"
        js_setScrollMargin :: IntersectionObserverInit -> JSString -> IO ()
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-scrollmargin IntersectionObserverInit.scrollMargin specification>
setScrollMargin :: (MonadDOM m, ToJSString val) => IntersectionObserverInit -> val -> m ()
setScrollMargin self val = liftDOM (void ((js_setScrollMargin (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"scrollMargin\"]; })"
        js_getScrollMargin :: IntersectionObserverInit -> IO JSVal
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-scrollmargin IntersectionObserverInit.scrollMargin specification>
getScrollMargin :: (MonadDOM m, FromJSString result) => IntersectionObserverInit -> m (Maybe result)
getScrollMargin self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getScrollMargin (self))))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-scrollmargin IntersectionObserverInit.scrollMargin specification>
getScrollMarginUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => IntersectionObserverInit -> m result
getScrollMarginUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getScrollMargin (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-scrollmargin IntersectionObserverInit.scrollMargin specification>
getScrollMarginUnchecked :: (MonadDOM m, FromJSString result) => IntersectionObserverInit -> m result
getScrollMarginUnchecked self = liftDOM ((pFromJSVal <$> (js_getScrollMargin (self))))

foreign import javascript safe "(($1, $2) => { $1[\"threshold\"] = $2; })"
        js_setThreshold :: IntersectionObserverInit -> DoubleOrSequenceDouble -> IO ()
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-threshold IntersectionObserverInit.threshold specification>
setThreshold :: (MonadDOM m, IsDoubleOrSequenceDouble val) => IntersectionObserverInit -> val -> m ()
setThreshold self val = liftDOM (void ((js_setThreshold (self) (Types.toDoubleOrSequenceDouble val))))

foreign import javascript unsafe "(($1) => { return $1[\"threshold\"]; })"
        js_getThreshold :: IntersectionObserverInit -> IO JSVal
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-threshold IntersectionObserverInit.threshold specification>
getThreshold :: (MonadDOM m) => IntersectionObserverInit -> m (Maybe DoubleOrSequenceDouble)
getThreshold self = liftDOM (((js_getThreshold (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-threshold IntersectionObserverInit.threshold specification>
getThresholdUnsafe :: (MonadDOM m, HasCallStack) => IntersectionObserverInit -> m DoubleOrSequenceDouble
getThresholdUnsafe self = liftDOM ((((js_getThreshold (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-threshold IntersectionObserverInit.threshold specification>
getThresholdUnchecked :: (MonadDOM m) => IntersectionObserverInit -> m DoubleOrSequenceDouble
getThresholdUnchecked self = liftDOM ((pFromJSVal <$> (js_getThreshold (self))))

foreign import javascript safe "(($1, $2) => { $1[\"delay\"] = $2; })"
        js_setDelay :: IntersectionObserverInit -> Int -> IO ()
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-delay IntersectionObserverInit.delay specification>
setDelay :: (MonadDOM m) => IntersectionObserverInit -> Int -> m ()
setDelay self val = liftDOM (void ((js_setDelay (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"delay\"]; })"
        js_getDelay :: IntersectionObserverInit -> IO JSVal
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-delay IntersectionObserverInit.delay specification>
getDelay :: (MonadDOM m) => IntersectionObserverInit -> m (Maybe Int)
getDelay self = liftDOM (((js_getDelay (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-delay IntersectionObserverInit.delay specification>
getDelayUnsafe :: (MonadDOM m, HasCallStack) => IntersectionObserverInit -> m Int
getDelayUnsafe self = liftDOM ((((js_getDelay (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-delay IntersectionObserverInit.delay specification>
getDelayUnchecked :: (MonadDOM m) => IntersectionObserverInit -> m Int
getDelayUnchecked self = liftDOM ((pFromJSVal <$> (js_getDelay (self))))

foreign import javascript safe "(($1, $2) => { $1[\"trackVisibility\"] = $2; })"
        js_setTrackVisibility :: IntersectionObserverInit -> Bool -> IO ()
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-trackvisibility IntersectionObserverInit.trackVisibility specification>
setTrackVisibility :: (MonadDOM m) => IntersectionObserverInit -> Bool -> m ()
setTrackVisibility self val = liftDOM (void ((js_setTrackVisibility (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"trackVisibility\"]; })"
        js_getTrackVisibility :: IntersectionObserverInit -> IO JSVal
-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-trackvisibility IntersectionObserverInit.trackVisibility specification>
getTrackVisibility :: (MonadDOM m) => IntersectionObserverInit -> m (Maybe Bool)
getTrackVisibility self = liftDOM (((js_getTrackVisibility (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-trackvisibility IntersectionObserverInit.trackVisibility specification>
getTrackVisibilityUnsafe :: (MonadDOM m, HasCallStack) => IntersectionObserverInit -> m Bool
getTrackVisibilityUnsafe self = liftDOM ((((js_getTrackVisibility (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/IntersectionObserver/#dom-intersectionobserverinit-trackvisibility IntersectionObserverInit.trackVisibility specification>
getTrackVisibilityUnchecked :: (MonadDOM m) => IntersectionObserverInit -> m Bool
getTrackVisibilityUnchecked self = liftDOM ((pFromJSVal <$> (js_getTrackVisibility (self))))