{-# LANGUAGE PatternSynonyms #-}
-- For HasCallStack compatibility
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module JSDOM.Generated.Element
       (hasAttributes, hasAttributes_, getAttributeNames,
        getAttributeNames_, getAttribute, getAttribute_,
        getAttributeUnsafe, getAttributeUnchecked, getAttributeNS,
        getAttributeNS_, getAttributeNSUnsafe, getAttributeNSUnchecked,
        setAttribute, setAttributeNS, removeAttribute, removeAttributeNS,
        hasAttribute, hasAttribute_, hasAttributeNS, hasAttributeNS_,
        getAttributeNode, getAttributeNode_, getAttributeNodeUnsafe,
        getAttributeNodeUnchecked, getAttributeNodeNS, getAttributeNodeNS_,
        getAttributeNodeNSUnsafe, getAttributeNodeNSUnchecked,
        setAttributeNode, setAttributeNode_, setAttributeNodeUnsafe,
        setAttributeNodeUnchecked, setAttributeNodeNS, setAttributeNodeNS_,
        setAttributeNodeNSUnsafe, setAttributeNodeNSUnchecked,
        removeAttributeNode, removeAttributeNode_, attachShadow,
        attachShadow_, closest, closest_, closestUnsafe, closestUnchecked,
        matches, matches_, webkitMatchesSelector, webkitMatchesSelector_,
        getElementsByTagName, getElementsByTagName_,
        getElementsByTagNameNS, getElementsByTagNameNS_,
        getElementsByClassName, getElementsByClassName_,
        insertAdjacentElement, insertAdjacentElement_,
        insertAdjacentElementUnsafe, insertAdjacentElementUnchecked,
        insertAdjacentText, getClientRects, getClientRects_,
        getBoundingClientRect, getBoundingClientRect_, scrollIntoView,
        scrollOpt, scroll, scrollToOpt, scrollTo, scrollByOpt, scrollBy,
        insertAdjacentHTML, webkitRequestFullScreen,
        webkitRequestFullscreen, requestPointerLock,
        webkitGetRegionFlowRanges, webkitGetRegionFlowRanges_,
        scrollIntoViewIfNeeded, getNamespaceURI, getNamespaceURIUnsafe,
        getNamespaceURIUnchecked, getPrefix, getPrefixUnsafe,
        getPrefixUnchecked, getLocalName, getTagName, setId, getId,
        setClassName, getClassName, getClassList, setSlot, getSlot,
        getAttributes, getShadowRoot, getShadowRootUnsafe,
        getShadowRootUnchecked, setScrollTop, getScrollTop, setScrollLeft,
        getScrollLeft, getScrollWidth, getScrollHeight, getClientTop,
        getClientLeft, getClientWidth, getClientHeight, setInnerHTML,
        getInnerHTML, setOuterHTML, getOuterHTML, getWebkitRegionOverset,
        selectStart, gestureChange, gestureEnd, gestureStart,
        webKitAnimationEnd, webKitAnimationIteration, webKitAnimationStart,
        webKitTransitionEnd, webKitFullscreenChange, webKitFullscreenError,
        focusin, focusout, beforeload, webKitNeedKey,
        webKitPresentationModeChanged,
        webKitCurrentPlaybackTargetIsWirelessChanged,
        webKitPlaybackTargetAvailabilityChanged, Element(..), gTypeElement,
        IsElement, toElement)
       where
import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, realToFrac, fmap, Show, Read, Eq, Ord, Maybe(..))
import qualified Prelude (error)
import Data.Typeable (Typeable)
import Data.Traversable (mapM)
import Language.Javascript.JSaddle (JSM(..), JSVal(..), JSString, strictEqual, toJSVal, valToStr, valToNumber, valToBool, js, jss, jsf, jsg, function, asyncFunction, new, array, jsUndefined, (!), (!!))
import Data.Int (Int64)
import Data.Word (Word, Word64)
import JSDOM.Types
import Control.Applicative ((<$>))
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Enums

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.hasAttributes Mozilla Element.hasAttributes documentation> 
hasAttributes :: (MonadDOM m, IsElement self) => self -> m Bool
hasAttributes :: self -> m Bool
hasAttributes self
self
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"hasAttributes" ()) JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.hasAttributes Mozilla Element.hasAttributes documentation> 
hasAttributes_ :: (MonadDOM m, IsElement self) => self -> m ()
hasAttributes_ :: self -> m ()
hasAttributes_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"hasAttributes" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNames Mozilla Element.getAttributeNames documentation> 
getAttributeNames ::
                  (MonadDOM m, IsElement self, FromJSString result) =>
                    self -> m [result]
getAttributeNames :: self -> m [result]
getAttributeNames self
self
  = DOM [result] -> m [result]
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNames" ()) JSM JSVal -> (JSVal -> DOM [result]) -> DOM [result]
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM [result]
forall o. FromJSVal o => JSVal -> JSM [o]
fromJSArrayUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNames Mozilla Element.getAttributeNames documentation> 
getAttributeNames_ :: (MonadDOM m, IsElement self) => self -> m ()
getAttributeNames_ :: self -> m ()
getAttributeNames_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNames" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttribute Mozilla Element.getAttribute documentation> 
getAttribute ::
             (MonadDOM m, IsElement self, ToJSString qualifiedName,
              FromJSString result) =>
               self -> qualifiedName -> m (Maybe result)
getAttribute :: self -> qualifiedName -> m (Maybe result)
getAttribute self
self qualifiedName
qualifiedName
  = DOM (Maybe result) -> m (Maybe result)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttribute" [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName])
         JSM JSVal -> (JSVal -> DOM (Maybe result)) -> DOM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttribute Mozilla Element.getAttribute documentation> 
getAttribute_ ::
              (MonadDOM m, IsElement self, ToJSString qualifiedName) =>
                self -> qualifiedName -> m ()
getAttribute_ :: self -> qualifiedName -> m ()
getAttribute_ self
self qualifiedName
qualifiedName
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttribute" [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttribute Mozilla Element.getAttribute documentation> 
getAttributeUnsafe ::
                   (MonadDOM m, IsElement self, ToJSString qualifiedName,
                    HasCallStack, FromJSString result) =>
                     self -> qualifiedName -> m result
getAttributeUnsafe :: self -> qualifiedName -> m result
getAttributeUnsafe self
self qualifiedName
qualifiedName
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttribute" [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName])
          JSM JSVal -> (JSVal -> JSM (Maybe result)) -> JSM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)
         JSM (Maybe result) -> (Maybe result -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM result -> (result -> DOM result) -> Maybe result -> DOM result
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM result
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") result -> DOM result
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttribute Mozilla Element.getAttribute documentation> 
getAttributeUnchecked ::
                      (MonadDOM m, IsElement self, ToJSString qualifiedName,
                       FromJSString result) =>
                        self -> qualifiedName -> m result
getAttributeUnchecked :: self -> qualifiedName -> m result
getAttributeUnchecked self
self qualifiedName
qualifiedName
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttribute" [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName])
         JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNS Mozilla Element.getAttributeNS documentation> 
getAttributeNS ::
               (MonadDOM m, IsElement self, ToJSString namespaceURI,
                ToJSString localName, FromJSString result) =>
                 self -> Maybe namespaceURI -> localName -> m (Maybe result)
getAttributeNS :: self -> Maybe namespaceURI -> localName -> m (Maybe result)
getAttributeNS self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM (Maybe result) -> m (Maybe result)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNS"
          [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName])
         JSM JSVal -> (JSVal -> DOM (Maybe result)) -> DOM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNS Mozilla Element.getAttributeNS documentation> 
getAttributeNS_ ::
                (MonadDOM m, IsElement self, ToJSString namespaceURI,
                 ToJSString localName) =>
                  self -> Maybe namespaceURI -> localName -> m ()
getAttributeNS_ :: self -> Maybe namespaceURI -> localName -> m ()
getAttributeNS_ self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNS"
            [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNS Mozilla Element.getAttributeNS documentation> 
getAttributeNSUnsafe ::
                     (MonadDOM m, IsElement self, ToJSString namespaceURI,
                      ToJSString localName, HasCallStack, FromJSString result) =>
                       self -> Maybe namespaceURI -> localName -> m result
getAttributeNSUnsafe :: self -> Maybe namespaceURI -> localName -> m result
getAttributeNSUnsafe self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNS"
           [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName])
          JSM JSVal -> (JSVal -> JSM (Maybe result)) -> JSM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)
         JSM (Maybe result) -> (Maybe result -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM result -> (result -> DOM result) -> Maybe result -> DOM result
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM result
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") result -> DOM result
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNS Mozilla Element.getAttributeNS documentation> 
getAttributeNSUnchecked ::
                        (MonadDOM m, IsElement self, ToJSString namespaceURI,
                         ToJSString localName, FromJSString result) =>
                          self -> Maybe namespaceURI -> localName -> m result
getAttributeNSUnchecked :: self -> Maybe namespaceURI -> localName -> m result
getAttributeNSUnchecked self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNS"
          [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName])
         JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.setAttribute Mozilla Element.setAttribute documentation> 
setAttribute ::
             (MonadDOM m, IsElement self, ToJSString qualifiedName,
              ToJSString value) =>
               self -> qualifiedName -> value -> m ()
setAttribute :: self -> qualifiedName -> value -> m ()
setAttribute self
self qualifiedName
qualifiedName value
value
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"setAttribute"
            [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName, value -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal value
value]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.setAttributeNS Mozilla Element.setAttributeNS documentation> 
setAttributeNS ::
               (MonadDOM m, IsElement self, ToJSString namespaceURI,
                ToJSString qualifiedName, ToJSString value) =>
                 self -> Maybe namespaceURI -> qualifiedName -> value -> m ()
setAttributeNS :: self -> Maybe namespaceURI -> qualifiedName -> value -> m ()
setAttributeNS self
self Maybe namespaceURI
namespaceURI qualifiedName
qualifiedName value
value
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"setAttributeNS"
            [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName, value -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal value
value]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.removeAttribute Mozilla Element.removeAttribute documentation> 
removeAttribute ::
                (MonadDOM m, IsElement self, ToJSString qualifiedName) =>
                  self -> qualifiedName -> m ()
removeAttribute :: self -> qualifiedName -> m ()
removeAttribute self
self qualifiedName
qualifiedName
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"removeAttribute"
            [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.removeAttributeNS Mozilla Element.removeAttributeNS documentation> 
removeAttributeNS ::
                  (MonadDOM m, IsElement self, ToJSString namespaceURI,
                   ToJSString localName) =>
                    self -> Maybe namespaceURI -> localName -> m ()
removeAttributeNS :: self -> Maybe namespaceURI -> localName -> m ()
removeAttributeNS self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"removeAttributeNS"
            [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.hasAttribute Mozilla Element.hasAttribute documentation> 
hasAttribute ::
             (MonadDOM m, IsElement self, ToJSString qualifiedName) =>
               self -> qualifiedName -> m Bool
hasAttribute :: self -> qualifiedName -> m Bool
hasAttribute self
self qualifiedName
qualifiedName
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"hasAttribute" [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName])
         JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.hasAttribute Mozilla Element.hasAttribute documentation> 
hasAttribute_ ::
              (MonadDOM m, IsElement self, ToJSString qualifiedName) =>
                self -> qualifiedName -> m ()
hasAttribute_ :: self -> qualifiedName -> m ()
hasAttribute_ self
self qualifiedName
qualifiedName
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"hasAttribute" [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.hasAttributeNS Mozilla Element.hasAttributeNS documentation> 
hasAttributeNS ::
               (MonadDOM m, IsElement self, ToJSString namespaceURI,
                ToJSString localName) =>
                 self -> Maybe namespaceURI -> localName -> m Bool
hasAttributeNS :: self -> Maybe namespaceURI -> localName -> m Bool
hasAttributeNS self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"hasAttributeNS"
          [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName])
         JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.hasAttributeNS Mozilla Element.hasAttributeNS documentation> 
hasAttributeNS_ ::
                (MonadDOM m, IsElement self, ToJSString namespaceURI,
                 ToJSString localName) =>
                  self -> Maybe namespaceURI -> localName -> m ()
hasAttributeNS_ :: self -> Maybe namespaceURI -> localName -> m ()
hasAttributeNS_ self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"hasAttributeNS"
            [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNode Mozilla Element.getAttributeNode documentation> 
getAttributeNode ::
                 (MonadDOM m, IsElement self, ToJSString qualifiedName) =>
                   self -> qualifiedName -> m (Maybe Attr)
getAttributeNode :: self -> qualifiedName -> m (Maybe Attr)
getAttributeNode self
self qualifiedName
qualifiedName
  = DOM (Maybe Attr) -> m (Maybe Attr)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNode"
          [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName])
         JSM JSVal -> (JSVal -> DOM (Maybe Attr)) -> DOM (Maybe Attr)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe Attr)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNode Mozilla Element.getAttributeNode documentation> 
getAttributeNode_ ::
                  (MonadDOM m, IsElement self, ToJSString qualifiedName) =>
                    self -> qualifiedName -> m ()
getAttributeNode_ :: self -> qualifiedName -> m ()
getAttributeNode_ self
self qualifiedName
qualifiedName
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNode"
            [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNode Mozilla Element.getAttributeNode documentation> 
getAttributeNodeUnsafe ::
                       (MonadDOM m, IsElement self, ToJSString qualifiedName,
                        HasCallStack) =>
                         self -> qualifiedName -> m Attr
getAttributeNodeUnsafe :: self -> qualifiedName -> m Attr
getAttributeNodeUnsafe self
self qualifiedName
qualifiedName
  = DOM Attr -> m Attr
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNode"
           [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName])
          JSM JSVal -> (JSVal -> DOM (Maybe Attr)) -> DOM (Maybe Attr)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe Attr)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)
         DOM (Maybe Attr) -> (Maybe Attr -> DOM Attr) -> DOM Attr
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM Attr -> (Attr -> DOM Attr) -> Maybe Attr -> DOM Attr
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM Attr
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") Attr -> DOM Attr
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNode Mozilla Element.getAttributeNode documentation> 
getAttributeNodeUnchecked ::
                          (MonadDOM m, IsElement self, ToJSString qualifiedName) =>
                            self -> qualifiedName -> m Attr
getAttributeNodeUnchecked :: self -> qualifiedName -> m Attr
getAttributeNodeUnchecked self
self qualifiedName
qualifiedName
  = DOM Attr -> m Attr
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNode"
          [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName])
         JSM JSVal -> (JSVal -> DOM Attr) -> DOM Attr
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Attr
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNodeNS Mozilla Element.getAttributeNodeNS documentation> 
getAttributeNodeNS ::
                   (MonadDOM m, IsElement self, ToJSString namespaceURI,
                    ToJSString localName) =>
                     self -> Maybe namespaceURI -> localName -> m (Maybe Attr)
getAttributeNodeNS :: self -> Maybe namespaceURI -> localName -> m (Maybe Attr)
getAttributeNodeNS self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM (Maybe Attr) -> m (Maybe Attr)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNodeNS"
          [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName])
         JSM JSVal -> (JSVal -> DOM (Maybe Attr)) -> DOM (Maybe Attr)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe Attr)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNodeNS Mozilla Element.getAttributeNodeNS documentation> 
getAttributeNodeNS_ ::
                    (MonadDOM m, IsElement self, ToJSString namespaceURI,
                     ToJSString localName) =>
                      self -> Maybe namespaceURI -> localName -> m ()
getAttributeNodeNS_ :: self -> Maybe namespaceURI -> localName -> m ()
getAttributeNodeNS_ self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNodeNS"
            [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNodeNS Mozilla Element.getAttributeNodeNS documentation> 
getAttributeNodeNSUnsafe ::
                         (MonadDOM m, IsElement self, ToJSString namespaceURI,
                          ToJSString localName, HasCallStack) =>
                           self -> Maybe namespaceURI -> localName -> m Attr
getAttributeNodeNSUnsafe :: self -> Maybe namespaceURI -> localName -> m Attr
getAttributeNodeNSUnsafe self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM Attr -> m Attr
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNodeNS"
           [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName])
          JSM JSVal -> (JSVal -> DOM (Maybe Attr)) -> DOM (Maybe Attr)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe Attr)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)
         DOM (Maybe Attr) -> (Maybe Attr -> DOM Attr) -> DOM Attr
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM Attr -> (Attr -> DOM Attr) -> Maybe Attr -> DOM Attr
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM Attr
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") Attr -> DOM Attr
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getAttributeNodeNS Mozilla Element.getAttributeNodeNS documentation> 
getAttributeNodeNSUnchecked ::
                            (MonadDOM m, IsElement self, ToJSString namespaceURI,
                             ToJSString localName) =>
                              self -> Maybe namespaceURI -> localName -> m Attr
getAttributeNodeNSUnchecked :: self -> Maybe namespaceURI -> localName -> m Attr
getAttributeNodeNSUnchecked self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM Attr -> m Attr
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttributeNodeNS"
          [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName])
         JSM JSVal -> (JSVal -> DOM Attr) -> DOM Attr
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Attr
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.setAttributeNode Mozilla Element.setAttributeNode documentation> 
setAttributeNode ::
                 (MonadDOM m, IsElement self) => self -> Attr -> m (Maybe Attr)
setAttributeNode :: self -> Attr -> m (Maybe Attr)
setAttributeNode self
self Attr
attr
  = DOM (Maybe Attr) -> m (Maybe Attr)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"setAttributeNode" [Attr -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Attr
attr]) JSM JSVal -> (JSVal -> DOM (Maybe Attr)) -> DOM (Maybe Attr)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM (Maybe Attr)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.setAttributeNode Mozilla Element.setAttributeNode documentation> 
setAttributeNode_ ::
                  (MonadDOM m, IsElement self) => self -> Attr -> m ()
setAttributeNode_ :: self -> Attr -> m ()
setAttributeNode_ self
self Attr
attr
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"setAttributeNode" [Attr -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Attr
attr]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.setAttributeNode Mozilla Element.setAttributeNode documentation> 
setAttributeNodeUnsafe ::
                       (MonadDOM m, IsElement self, HasCallStack) =>
                         self -> Attr -> m Attr
setAttributeNodeUnsafe :: self -> Attr -> m Attr
setAttributeNodeUnsafe self
self Attr
attr
  = DOM Attr -> m Attr
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"setAttributeNode" [Attr -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Attr
attr]) JSM JSVal -> (JSVal -> DOM (Maybe Attr)) -> DOM (Maybe Attr)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
          JSVal -> DOM (Maybe Attr)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)
         DOM (Maybe Attr) -> (Maybe Attr -> DOM Attr) -> DOM Attr
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM Attr -> (Attr -> DOM Attr) -> Maybe Attr -> DOM Attr
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM Attr
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") Attr -> DOM Attr
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.setAttributeNode Mozilla Element.setAttributeNode documentation> 
setAttributeNodeUnchecked ::
                          (MonadDOM m, IsElement self) => self -> Attr -> m Attr
setAttributeNodeUnchecked :: self -> Attr -> m Attr
setAttributeNodeUnchecked self
self Attr
attr
  = DOM Attr -> m Attr
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"setAttributeNode" [Attr -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Attr
attr]) JSM JSVal -> (JSVal -> DOM Attr) -> DOM Attr
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM Attr
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.setAttributeNodeNS Mozilla Element.setAttributeNodeNS documentation> 
setAttributeNodeNS ::
                   (MonadDOM m, IsElement self) => self -> Attr -> m (Maybe Attr)
setAttributeNodeNS :: self -> Attr -> m (Maybe Attr)
setAttributeNodeNS self
self Attr
attr
  = DOM (Maybe Attr) -> m (Maybe Attr)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"setAttributeNodeNS" [Attr -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Attr
attr]) JSM JSVal -> (JSVal -> DOM (Maybe Attr)) -> DOM (Maybe Attr)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM (Maybe Attr)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.setAttributeNodeNS Mozilla Element.setAttributeNodeNS documentation> 
setAttributeNodeNS_ ::
                    (MonadDOM m, IsElement self) => self -> Attr -> m ()
setAttributeNodeNS_ :: self -> Attr -> m ()
setAttributeNodeNS_ self
self Attr
attr
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"setAttributeNodeNS" [Attr -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Attr
attr]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.setAttributeNodeNS Mozilla Element.setAttributeNodeNS documentation> 
setAttributeNodeNSUnsafe ::
                         (MonadDOM m, IsElement self, HasCallStack) =>
                           self -> Attr -> m Attr
setAttributeNodeNSUnsafe :: self -> Attr -> m Attr
setAttributeNodeNSUnsafe self
self Attr
attr
  = DOM Attr -> m Attr
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"setAttributeNodeNS" [Attr -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Attr
attr]) JSM JSVal -> (JSVal -> DOM (Maybe Attr)) -> DOM (Maybe Attr)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
          JSVal -> DOM (Maybe Attr)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)
         DOM (Maybe Attr) -> (Maybe Attr -> DOM Attr) -> DOM Attr
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM Attr -> (Attr -> DOM Attr) -> Maybe Attr -> DOM Attr
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM Attr
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") Attr -> DOM Attr
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.setAttributeNodeNS Mozilla Element.setAttributeNodeNS documentation> 
setAttributeNodeNSUnchecked ::
                            (MonadDOM m, IsElement self) => self -> Attr -> m Attr
setAttributeNodeNSUnchecked :: self -> Attr -> m Attr
setAttributeNodeNSUnchecked self
self Attr
attr
  = DOM Attr -> m Attr
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"setAttributeNodeNS" [Attr -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Attr
attr]) JSM JSVal -> (JSVal -> DOM Attr) -> DOM Attr
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM Attr
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.removeAttributeNode Mozilla Element.removeAttributeNode documentation> 
removeAttributeNode ::
                    (MonadDOM m, IsElement self) => self -> Attr -> m Attr
removeAttributeNode :: self -> Attr -> m Attr
removeAttributeNode self
self Attr
attr
  = DOM Attr -> m Attr
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"removeAttributeNode" [Attr -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Attr
attr]) JSM JSVal -> (JSVal -> DOM Attr) -> DOM Attr
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM Attr
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.removeAttributeNode Mozilla Element.removeAttributeNode documentation> 
removeAttributeNode_ ::
                     (MonadDOM m, IsElement self) => self -> Attr -> m ()
removeAttributeNode_ :: self -> Attr -> m ()
removeAttributeNode_ self
self Attr
attr
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"removeAttributeNode" [Attr -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Attr
attr]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.attachShadow Mozilla Element.attachShadow documentation> 
attachShadow ::
             (MonadDOM m, IsElement self) =>
               self -> ShadowRootInit -> m ShadowRoot
attachShadow :: self -> ShadowRootInit -> m ShadowRoot
attachShadow self
self ShadowRootInit
init
  = DOM ShadowRoot -> m ShadowRoot
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"attachShadow" [ShadowRootInit -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal ShadowRootInit
init]) JSM JSVal -> (JSVal -> DOM ShadowRoot) -> DOM ShadowRoot
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM ShadowRoot
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.attachShadow Mozilla Element.attachShadow documentation> 
attachShadow_ ::
              (MonadDOM m, IsElement self) => self -> ShadowRootInit -> m ()
attachShadow_ :: self -> ShadowRootInit -> m ()
attachShadow_ self
self ShadowRootInit
init
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"attachShadow" [ShadowRootInit -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal ShadowRootInit
init]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.closest Mozilla Element.closest documentation> 
closest ::
        (MonadDOM m, IsElement self, ToJSString selectors) =>
          self -> selectors -> m (Maybe Element)
closest :: self -> selectors -> m (Maybe Element)
closest self
self selectors
selectors
  = DOM (Maybe Element) -> m (Maybe Element)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"closest" [selectors -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal selectors
selectors]) JSM JSVal -> (JSVal -> DOM (Maybe Element)) -> DOM (Maybe Element)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM (Maybe Element)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.closest Mozilla Element.closest documentation> 
closest_ ::
         (MonadDOM m, IsElement self, ToJSString selectors) =>
           self -> selectors -> m ()
closest_ :: self -> selectors -> m ()
closest_ self
self selectors
selectors
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"closest" [selectors -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal selectors
selectors]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.closest Mozilla Element.closest documentation> 
closestUnsafe ::
              (MonadDOM m, IsElement self, ToJSString selectors, HasCallStack) =>
                self -> selectors -> m Element
closestUnsafe :: self -> selectors -> m Element
closestUnsafe self
self selectors
selectors
  = DOM Element -> m Element
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"closest" [selectors -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal selectors
selectors]) JSM JSVal -> (JSVal -> DOM (Maybe Element)) -> DOM (Maybe Element)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
          JSVal -> DOM (Maybe Element)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)
         DOM (Maybe Element)
-> (Maybe Element -> DOM Element) -> DOM Element
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM Element
-> (Element -> DOM Element) -> Maybe Element -> DOM Element
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM Element
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") Element -> DOM Element
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.closest Mozilla Element.closest documentation> 
closestUnchecked ::
                 (MonadDOM m, IsElement self, ToJSString selectors) =>
                   self -> selectors -> m Element
closestUnchecked :: self -> selectors -> m Element
closestUnchecked self
self selectors
selectors
  = DOM Element -> m Element
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"closest" [selectors -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal selectors
selectors]) JSM JSVal -> (JSVal -> DOM Element) -> DOM Element
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM Element
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.matches Mozilla Element.matches documentation> 
matches ::
        (MonadDOM m, IsElement self, ToJSString selectors) =>
          self -> selectors -> m Bool
matches :: self -> selectors -> m Bool
matches self
self selectors
selectors
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"matches" [selectors -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal selectors
selectors]) JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.matches Mozilla Element.matches documentation> 
matches_ ::
         (MonadDOM m, IsElement self, ToJSString selectors) =>
           self -> selectors -> m ()
matches_ :: self -> selectors -> m ()
matches_ self
self selectors
selectors
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"matches" [selectors -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal selectors
selectors]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.webkitMatchesSelector Mozilla Element.webkitMatchesSelector documentation> 
webkitMatchesSelector ::
                      (MonadDOM m, IsElement self, ToJSString selectors) =>
                        self -> selectors -> m Bool
webkitMatchesSelector :: self -> selectors -> m Bool
webkitMatchesSelector self
self selectors
selectors
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"webkitMatchesSelector"
          [selectors -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal selectors
selectors])
         JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.webkitMatchesSelector Mozilla Element.webkitMatchesSelector documentation> 
webkitMatchesSelector_ ::
                       (MonadDOM m, IsElement self, ToJSString selectors) =>
                         self -> selectors -> m ()
webkitMatchesSelector_ :: self -> selectors -> m ()
webkitMatchesSelector_ self
self selectors
selectors
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"webkitMatchesSelector"
            [selectors -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal selectors
selectors]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getElementsByTagName Mozilla Element.getElementsByTagName documentation> 
getElementsByTagName ::
                     (MonadDOM m, IsElement self, ToJSString qualifiedName) =>
                       self -> qualifiedName -> m HTMLCollection
getElementsByTagName :: self -> qualifiedName -> m HTMLCollection
getElementsByTagName self
self qualifiedName
qualifiedName
  = DOM HTMLCollection -> m HTMLCollection
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getElementsByTagName"
          [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName])
         JSM JSVal -> (JSVal -> DOM HTMLCollection) -> DOM HTMLCollection
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM HTMLCollection
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getElementsByTagName Mozilla Element.getElementsByTagName documentation> 
getElementsByTagName_ ::
                      (MonadDOM m, IsElement self, ToJSString qualifiedName) =>
                        self -> qualifiedName -> m ()
getElementsByTagName_ :: self -> qualifiedName -> m ()
getElementsByTagName_ self
self qualifiedName
qualifiedName
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getElementsByTagName"
            [qualifiedName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal qualifiedName
qualifiedName]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getElementsByTagNameNS Mozilla Element.getElementsByTagNameNS documentation> 
getElementsByTagNameNS ::
                       (MonadDOM m, IsElement self, ToJSString namespaceURI,
                        ToJSString localName) =>
                         self -> Maybe namespaceURI -> localName -> m HTMLCollection
getElementsByTagNameNS :: self -> Maybe namespaceURI -> localName -> m HTMLCollection
getElementsByTagNameNS self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM HTMLCollection -> m HTMLCollection
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getElementsByTagNameNS"
          [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName])
         JSM JSVal -> (JSVal -> DOM HTMLCollection) -> DOM HTMLCollection
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM HTMLCollection
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getElementsByTagNameNS Mozilla Element.getElementsByTagNameNS documentation> 
getElementsByTagNameNS_ ::
                        (MonadDOM m, IsElement self, ToJSString namespaceURI,
                         ToJSString localName) =>
                          self -> Maybe namespaceURI -> localName -> m ()
getElementsByTagNameNS_ :: self -> Maybe namespaceURI -> localName -> m ()
getElementsByTagNameNS_ self
self Maybe namespaceURI
namespaceURI localName
localName
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getElementsByTagNameNS"
            [Maybe namespaceURI -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe namespaceURI
namespaceURI, localName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal localName
localName]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getElementsByClassName Mozilla Element.getElementsByClassName documentation> 
getElementsByClassName ::
                       (MonadDOM m, IsElement self, ToJSString name) =>
                         self -> name -> m HTMLCollection
getElementsByClassName :: self -> name -> m HTMLCollection
getElementsByClassName self
self name
name
  = DOM HTMLCollection -> m HTMLCollection
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getElementsByClassName" [name -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal name
name])
         JSM JSVal -> (JSVal -> DOM HTMLCollection) -> DOM HTMLCollection
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM HTMLCollection
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getElementsByClassName Mozilla Element.getElementsByClassName documentation> 
getElementsByClassName_ ::
                        (MonadDOM m, IsElement self, ToJSString name) =>
                          self -> name -> m ()
getElementsByClassName_ :: self -> name -> m ()
getElementsByClassName_ self
self name
name
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getElementsByClassName" [name -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal name
name]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.insertAdjacentElement Mozilla Element.insertAdjacentElement documentation> 
insertAdjacentElement ::
                      (MonadDOM m, IsElement self, ToJSString where',
                       IsElement element) =>
                        self -> where' -> element -> m (Maybe Element)
insertAdjacentElement :: self -> where' -> element -> m (Maybe Element)
insertAdjacentElement self
self where'
where' element
element
  = DOM (Maybe Element) -> m (Maybe Element)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"insertAdjacentElement"
          [where' -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal where'
where', element -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal element
element])
         JSM JSVal -> (JSVal -> DOM (Maybe Element)) -> DOM (Maybe Element)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe Element)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.insertAdjacentElement Mozilla Element.insertAdjacentElement documentation> 
insertAdjacentElement_ ::
                       (MonadDOM m, IsElement self, ToJSString where',
                        IsElement element) =>
                         self -> where' -> element -> m ()
insertAdjacentElement_ :: self -> where' -> element -> m ()
insertAdjacentElement_ self
self where'
where' element
element
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"insertAdjacentElement"
            [where' -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal where'
where', element -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal element
element]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.insertAdjacentElement Mozilla Element.insertAdjacentElement documentation> 
insertAdjacentElementUnsafe ::
                            (MonadDOM m, IsElement self, ToJSString where', IsElement element,
                             HasCallStack) =>
                              self -> where' -> element -> m Element
insertAdjacentElementUnsafe :: self -> where' -> element -> m Element
insertAdjacentElementUnsafe self
self where'
where' element
element
  = DOM Element -> m Element
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"insertAdjacentElement"
           [where' -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal where'
where', element -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal element
element])
          JSM JSVal -> (JSVal -> DOM (Maybe Element)) -> DOM (Maybe Element)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe Element)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)
         DOM (Maybe Element)
-> (Maybe Element -> DOM Element) -> DOM Element
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM Element
-> (Element -> DOM Element) -> Maybe Element -> DOM Element
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM Element
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") Element -> DOM Element
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.insertAdjacentElement Mozilla Element.insertAdjacentElement documentation> 
insertAdjacentElementUnchecked ::
                               (MonadDOM m, IsElement self, ToJSString where',
                                IsElement element) =>
                                 self -> where' -> element -> m Element
insertAdjacentElementUnchecked :: self -> where' -> element -> m Element
insertAdjacentElementUnchecked self
self where'
where' element
element
  = DOM Element -> m Element
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"insertAdjacentElement"
          [where' -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal where'
where', element -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal element
element])
         JSM JSVal -> (JSVal -> DOM Element) -> DOM Element
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Element
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.insertAdjacentText Mozilla Element.insertAdjacentText documentation> 
insertAdjacentText ::
                   (MonadDOM m, IsElement self, ToJSString where',
                    ToJSString data') =>
                     self -> where' -> data' -> m ()
insertAdjacentText :: self -> where' -> data' -> m ()
insertAdjacentText self
self where'
where' data'
data'
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"insertAdjacentText"
            [where' -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal where'
where', data' -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal data'
data']))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getClientRects Mozilla Element.getClientRects documentation> 
getClientRects ::
               (MonadDOM m, IsElement self) => self -> m [DOMRect]
getClientRects :: self -> m [DOMRect]
getClientRects self
self
  = DOM [DOMRect] -> m [DOMRect]
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getClientRects" ()) JSM JSVal -> (JSVal -> DOM [DOMRect]) -> DOM [DOMRect]
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM [DOMRect]
forall o. FromJSVal o => JSVal -> JSM [o]
fromJSArrayUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getClientRects Mozilla Element.getClientRects documentation> 
getClientRects_ :: (MonadDOM m, IsElement self) => self -> m ()
getClientRects_ :: self -> m ()
getClientRects_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getClientRects" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getBoundingClientRect Mozilla Element.getBoundingClientRect documentation> 
getBoundingClientRect ::
                      (MonadDOM m, IsElement self) => self -> m DOMRect
getBoundingClientRect :: self -> m DOMRect
getBoundingClientRect self
self
  = DOM DOMRect -> m DOMRect
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getBoundingClientRect" ()) JSM JSVal -> (JSVal -> DOM DOMRect) -> DOM DOMRect
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM DOMRect
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.getBoundingClientRect Mozilla Element.getBoundingClientRect documentation> 
getBoundingClientRect_ ::
                       (MonadDOM m, IsElement self) => self -> m ()
getBoundingClientRect_ :: self -> m ()
getBoundingClientRect_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getBoundingClientRect" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollIntoView Mozilla Element.scrollIntoView documentation> 
scrollIntoView ::
               (MonadDOM m, IsElement self) => self -> Bool -> m ()
scrollIntoView :: self -> Bool -> m ()
scrollIntoView self
self Bool
alignWithTop
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"scrollIntoView" [Bool -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Bool
alignWithTop]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scroll Mozilla Element.scroll documentation> 
scrollOpt ::
          (MonadDOM m, IsElement self) =>
            self -> Maybe ScrollToOptions -> m ()
scrollOpt :: self -> Maybe ScrollToOptions -> m ()
scrollOpt self
self Maybe ScrollToOptions
options
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"scroll" [Maybe ScrollToOptions -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe ScrollToOptions
options]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scroll Mozilla Element.scroll documentation> 
scroll ::
       (MonadDOM m, IsElement self) => self -> Double -> Double -> m ()
scroll :: self -> Double -> Double -> m ()
scroll self
self Double
x Double
y
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"scroll" [Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Double
x, Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Double
y]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollTo Mozilla Element.scrollTo documentation> 
scrollToOpt ::
            (MonadDOM m, IsElement self) =>
              self -> Maybe ScrollToOptions -> m ()
scrollToOpt :: self -> Maybe ScrollToOptions -> m ()
scrollToOpt self
self Maybe ScrollToOptions
options
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"scrollTo" [Maybe ScrollToOptions -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe ScrollToOptions
options]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollTo Mozilla Element.scrollTo documentation> 
scrollTo ::
         (MonadDOM m, IsElement self) => self -> Double -> Double -> m ()
scrollTo :: self -> Double -> Double -> m ()
scrollTo self
self Double
x Double
y
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"scrollTo" [Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Double
x, Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Double
y]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollBy Mozilla Element.scrollBy documentation> 
scrollByOpt ::
            (MonadDOM m, IsElement self) =>
              self -> Maybe ScrollToOptions -> m ()
scrollByOpt :: self -> Maybe ScrollToOptions -> m ()
scrollByOpt self
self Maybe ScrollToOptions
option
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"scrollBy" [Maybe ScrollToOptions -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe ScrollToOptions
option]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollBy Mozilla Element.scrollBy documentation> 
scrollBy ::
         (MonadDOM m, IsElement self) => self -> Double -> Double -> m ()
scrollBy :: self -> Double -> Double -> m ()
scrollBy self
self Double
x Double
y
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"scrollBy" [Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Double
x, Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Double
y]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.insertAdjacentHTML Mozilla Element.insertAdjacentHTML documentation> 
insertAdjacentHTML ::
                   (MonadDOM m, IsElement self, ToJSString position,
                    ToJSString text) =>
                     self -> position -> text -> m ()
insertAdjacentHTML :: self -> position -> text -> m ()
insertAdjacentHTML self
self position
position text
text
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"insertAdjacentHTML"
            [position -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal position
position, text -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal text
text]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.webkitRequestFullScreen Mozilla Element.webkitRequestFullScreen documentation> 
webkitRequestFullScreen ::
                        (MonadDOM m, IsElement self) => self -> m ()
webkitRequestFullScreen :: self -> m ()
webkitRequestFullScreen self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"webkitRequestFullScreen" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.webkitRequestFullscreen Mozilla Element.webkitRequestFullscreen documentation> 
webkitRequestFullscreen ::
                        (MonadDOM m, IsElement self) => self -> m ()
webkitRequestFullscreen :: self -> m ()
webkitRequestFullscreen self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"webkitRequestFullscreen" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.requestPointerLock Mozilla Element.requestPointerLock documentation> 
requestPointerLock :: (MonadDOM m, IsElement self) => self -> m ()
requestPointerLock :: self -> m ()
requestPointerLock self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"requestPointerLock" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.webkitGetRegionFlowRanges Mozilla Element.webkitGetRegionFlowRanges documentation> 
webkitGetRegionFlowRanges ::
                          (MonadDOM m, IsElement self) => self -> m (Maybe [Range])
webkitGetRegionFlowRanges :: self -> m (Maybe [Range])
webkitGetRegionFlowRanges self
self
  = DOM (Maybe [Range]) -> m (Maybe [Range])
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"webkitGetRegionFlowRanges" ()) JSM JSVal -> (JSVal -> DOM (Maybe [Range])) -> DOM (Maybe [Range])
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         (JSVal -> JSM [Range]) -> JSVal -> DOM (Maybe [Range])
forall value a.
ToJSVal value =>
(JSVal -> JSM a) -> value -> JSM (Maybe a)
maybeNullOrUndefined' JSVal -> JSM [Range]
forall o. FromJSVal o => JSVal -> JSM [o]
fromJSArrayUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.webkitGetRegionFlowRanges Mozilla Element.webkitGetRegionFlowRanges documentation> 
webkitGetRegionFlowRanges_ ::
                           (MonadDOM m, IsElement self) => self -> m ()
webkitGetRegionFlowRanges_ :: self -> m ()
webkitGetRegionFlowRanges_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"webkitGetRegionFlowRanges" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollIntoViewIfNeeded Mozilla Element.scrollIntoViewIfNeeded documentation> 
scrollIntoViewIfNeeded ::
                       (MonadDOM m, IsElement self) => self -> Bool -> m ()
scrollIntoViewIfNeeded :: self -> Bool -> m ()
scrollIntoViewIfNeeded self
self Bool
centerIfNeeded
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"scrollIntoViewIfNeeded"
            [Bool -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Bool
centerIfNeeded]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.namespaceURI Mozilla Element.namespaceURI documentation> 
getNamespaceURI ::
                (MonadDOM m, IsElement self, FromJSString result) =>
                  self -> m (Maybe result)
getNamespaceURI :: self -> m (Maybe result)
getNamespaceURI self
self
  = DOM (Maybe result) -> m (Maybe result)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"namespaceURI") JSM JSVal -> (JSVal -> DOM (Maybe result)) -> DOM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.namespaceURI Mozilla Element.namespaceURI documentation> 
getNamespaceURIUnsafe ::
                      (MonadDOM m, IsElement self, HasCallStack, FromJSString result) =>
                        self -> m result
getNamespaceURIUnsafe :: self -> m result
getNamespaceURIUnsafe self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"namespaceURI") JSM JSVal -> (JSVal -> JSM (Maybe result)) -> JSM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)
         JSM (Maybe result) -> (Maybe result -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM result -> (result -> DOM result) -> Maybe result -> DOM result
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM result
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") result -> DOM result
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.namespaceURI Mozilla Element.namespaceURI documentation> 
getNamespaceURIUnchecked ::
                         (MonadDOM m, IsElement self, FromJSString result) =>
                           self -> m result
getNamespaceURIUnchecked :: self -> m result
getNamespaceURIUnchecked self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"namespaceURI") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.prefix Mozilla Element.prefix documentation> 
getPrefix ::
          (MonadDOM m, IsElement self, FromJSString result) =>
            self -> m (Maybe result)
getPrefix :: self -> m (Maybe result)
getPrefix self
self
  = DOM (Maybe result) -> m (Maybe result)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"prefix") JSM JSVal -> (JSVal -> DOM (Maybe result)) -> DOM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.prefix Mozilla Element.prefix documentation> 
getPrefixUnsafe ::
                (MonadDOM m, IsElement self, HasCallStack, FromJSString result) =>
                  self -> m result
getPrefixUnsafe :: self -> m result
getPrefixUnsafe self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"prefix") JSM JSVal -> (JSVal -> JSM (Maybe result)) -> JSM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString) JSM (Maybe result) -> (Maybe result -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         DOM result -> (result -> DOM result) -> Maybe result -> DOM result
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM result
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") result -> DOM result
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.prefix Mozilla Element.prefix documentation> 
getPrefixUnchecked ::
                   (MonadDOM m, IsElement self, FromJSString result) =>
                     self -> m result
getPrefixUnchecked :: self -> m result
getPrefixUnchecked self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"prefix") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.localName Mozilla Element.localName documentation> 
getLocalName ::
             (MonadDOM m, IsElement self, FromJSString result) =>
               self -> m result
getLocalName :: self -> m result
getLocalName self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"localName") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.tagName Mozilla Element.tagName documentation> 
getTagName ::
           (MonadDOM m, IsElement self, FromJSString result) =>
             self -> m result
getTagName :: self -> m result
getTagName self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"tagName") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.id Mozilla Element.id documentation> 
setId ::
      (MonadDOM m, IsElement self, ToJSString val) => self -> val -> m ()
setId :: self -> val -> m ()
setId self
self val
val
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (DOM ()) Element (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. [Char]
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss [Char]
"id" (val -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal val
val))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.id Mozilla Element.id documentation> 
getId ::
      (MonadDOM m, IsElement self, FromJSString result) =>
        self -> m result
getId :: self -> m result
getId self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"id") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.className Mozilla Element.className documentation> 
setClassName ::
             (MonadDOM m, IsElement self, ToJSString val) => self -> val -> m ()
setClassName :: self -> val -> m ()
setClassName self
self val
val
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (DOM ()) Element (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. [Char]
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss [Char]
"className" (val -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal val
val))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.className Mozilla Element.className documentation> 
getClassName ::
             (MonadDOM m, IsElement self, FromJSString result) =>
               self -> m result
getClassName :: self -> m result
getClassName self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"className") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.classList Mozilla Element.classList documentation> 
getClassList ::
             (MonadDOM m, IsElement self) => self -> m DOMTokenList
getClassList :: self -> m DOMTokenList
getClassList self
self
  = DOM DOMTokenList -> m DOMTokenList
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"classList") JSM JSVal -> (JSVal -> DOM DOMTokenList) -> DOM DOMTokenList
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM DOMTokenList
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.slot Mozilla Element.slot documentation> 
setSlot ::
        (MonadDOM m, IsElement self, ToJSString val) => self -> val -> m ()
setSlot :: self -> val -> m ()
setSlot self
self val
val
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (DOM ()) Element (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. [Char]
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss [Char]
"slot" (val -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal val
val))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.slot Mozilla Element.slot documentation> 
getSlot ::
        (MonadDOM m, IsElement self, FromJSString result) =>
          self -> m result
getSlot :: self -> m result
getSlot self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"slot") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.attributes Mozilla Element.attributes documentation> 
getAttributes ::
              (MonadDOM m, IsElement self) => self -> m NamedNodeMap
getAttributes :: self -> m NamedNodeMap
getAttributes self
self
  = DOM NamedNodeMap -> m NamedNodeMap
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"attributes") JSM JSVal -> (JSVal -> DOM NamedNodeMap) -> DOM NamedNodeMap
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM NamedNodeMap
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.shadowRoot Mozilla Element.shadowRoot documentation> 
getShadowRoot ::
              (MonadDOM m, IsElement self) => self -> m (Maybe ShadowRoot)
getShadowRoot :: self -> m (Maybe ShadowRoot)
getShadowRoot self
self
  = DOM (Maybe ShadowRoot) -> m (Maybe ShadowRoot)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"shadowRoot") JSM JSVal
-> (JSVal -> DOM (Maybe ShadowRoot)) -> DOM (Maybe ShadowRoot)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe ShadowRoot)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.shadowRoot Mozilla Element.shadowRoot documentation> 
getShadowRootUnsafe ::
                    (MonadDOM m, IsElement self, HasCallStack) => self -> m ShadowRoot
getShadowRootUnsafe :: self -> m ShadowRoot
getShadowRootUnsafe self
self
  = DOM ShadowRoot -> m ShadowRoot
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"shadowRoot") JSM JSVal
-> (JSVal -> DOM (Maybe ShadowRoot)) -> DOM (Maybe ShadowRoot)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe ShadowRoot)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal) DOM (Maybe ShadowRoot)
-> (Maybe ShadowRoot -> DOM ShadowRoot) -> DOM ShadowRoot
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         DOM ShadowRoot
-> (ShadowRoot -> DOM ShadowRoot)
-> Maybe ShadowRoot
-> DOM ShadowRoot
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM ShadowRoot
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") ShadowRoot -> DOM ShadowRoot
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.shadowRoot Mozilla Element.shadowRoot documentation> 
getShadowRootUnchecked ::
                       (MonadDOM m, IsElement self) => self -> m ShadowRoot
getShadowRootUnchecked :: self -> m ShadowRoot
getShadowRootUnchecked self
self
  = DOM ShadowRoot -> m ShadowRoot
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"shadowRoot") JSM JSVal -> (JSVal -> DOM ShadowRoot) -> DOM ShadowRoot
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM ShadowRoot
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollTop Mozilla Element.scrollTop documentation> 
setScrollTop :: (MonadDOM m, IsElement self) => self -> Int -> m ()
setScrollTop :: self -> Int -> m ()
setScrollTop self
self Int
val
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (DOM ()) Element (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. [Char]
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss [Char]
"scrollTop" (Int -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Int
val))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollTop Mozilla Element.scrollTop documentation> 
getScrollTop :: (MonadDOM m, IsElement self) => self -> m Int
getScrollTop :: self -> m Int
getScrollTop self
self
  = DOM Int -> m Int
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (Double -> Int
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Int) -> JSM Double -> DOM Int
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"scrollTop") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollLeft Mozilla Element.scrollLeft documentation> 
setScrollLeft ::
              (MonadDOM m, IsElement self) => self -> Int -> m ()
setScrollLeft :: self -> Int -> m ()
setScrollLeft self
self Int
val
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (DOM ()) Element (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. [Char]
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss [Char]
"scrollLeft" (Int -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Int
val))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollLeft Mozilla Element.scrollLeft documentation> 
getScrollLeft :: (MonadDOM m, IsElement self) => self -> m Int
getScrollLeft :: self -> m Int
getScrollLeft self
self
  = DOM Int -> m Int
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (Double -> Int
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Int) -> JSM Double -> DOM Int
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"scrollLeft") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollWidth Mozilla Element.scrollWidth documentation> 
getScrollWidth :: (MonadDOM m, IsElement self) => self -> m Int
getScrollWidth :: self -> m Int
getScrollWidth self
self
  = DOM Int -> m Int
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (Double -> Int
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Int) -> JSM Double -> DOM Int
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$>
         (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"scrollWidth") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.scrollHeight Mozilla Element.scrollHeight documentation> 
getScrollHeight :: (MonadDOM m, IsElement self) => self -> m Int
getScrollHeight :: self -> m Int
getScrollHeight self
self
  = DOM Int -> m Int
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (Double -> Int
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Int) -> JSM Double -> DOM Int
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$>
         (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"scrollHeight") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.clientTop Mozilla Element.clientTop documentation> 
getClientTop :: (MonadDOM m, IsElement self) => self -> m Double
getClientTop :: self -> m Double
getClientTop self
self
  = JSM Double -> m Double
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"clientTop") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.clientLeft Mozilla Element.clientLeft documentation> 
getClientLeft :: (MonadDOM m, IsElement self) => self -> m Double
getClientLeft :: self -> m Double
getClientLeft self
self
  = JSM Double -> m Double
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"clientLeft") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.clientWidth Mozilla Element.clientWidth documentation> 
getClientWidth :: (MonadDOM m, IsElement self) => self -> m Double
getClientWidth :: self -> m Double
getClientWidth self
self
  = JSM Double -> m Double
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"clientWidth") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.clientHeight Mozilla Element.clientHeight documentation> 
getClientHeight :: (MonadDOM m, IsElement self) => self -> m Double
getClientHeight :: self -> m Double
getClientHeight self
self
  = JSM Double -> m Double
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"clientHeight") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.innerHTML Mozilla Element.innerHTML documentation> 
setInnerHTML ::
             (MonadDOM m, IsElement self, ToJSString val) => self -> val -> m ()
setInnerHTML :: self -> val -> m ()
setInnerHTML self
self val
val
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (DOM ()) Element (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. [Char]
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss [Char]
"innerHTML" (val -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal val
val))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.innerHTML Mozilla Element.innerHTML documentation> 
getInnerHTML ::
             (MonadDOM m, IsElement self, FromJSString result) =>
               self -> m result
getInnerHTML :: self -> m result
getInnerHTML self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"innerHTML") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.outerHTML Mozilla Element.outerHTML documentation> 
setOuterHTML ::
             (MonadDOM m, IsElement self, ToJSString val) => self -> val -> m ()
setOuterHTML :: self -> val -> m ()
setOuterHTML self
self val
val
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (DOM ()) Element (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. [Char]
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss [Char]
"outerHTML" (val -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal val
val))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.outerHTML Mozilla Element.outerHTML documentation> 
getOuterHTML ::
             (MonadDOM m, IsElement self, FromJSString result) =>
               self -> m result
getOuterHTML :: self -> m result
getOuterHTML self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"outerHTML") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.webkitRegionOverset Mozilla Element.webkitRegionOverset documentation> 
getWebkitRegionOverset ::
                       (MonadDOM m, IsElement self, FromJSString result) =>
                         self -> m result
getWebkitRegionOverset :: self -> m result
getWebkitRegionOverset self
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> Element
forall o. IsElement o => o -> Element
toElement self
self) Element -> Getting (JSM JSVal) Element (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter Element (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"webkitRegionOverset") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onselectstart Mozilla Element.onselectstart documentation> 
selectStart ::
            (IsElement self, IsEventTarget self) => EventName self Event
selectStart :: EventName self Event
selectStart = DOMString -> EventName self Event
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"selectstart")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.ongesturechange Mozilla Element.ongesturechange documentation> 
gestureChange ::
              (IsElement self, IsEventTarget self) => EventName self UIEvent
gestureChange :: EventName self UIEvent
gestureChange = DOMString -> EventName self UIEvent
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"gesturechange")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.ongestureend Mozilla Element.ongestureend documentation> 
gestureEnd ::
           (IsElement self, IsEventTarget self) => EventName self UIEvent
gestureEnd :: EventName self UIEvent
gestureEnd = DOMString -> EventName self UIEvent
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"gestureend")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.ongesturestart Mozilla Element.ongesturestart documentation> 
gestureStart ::
             (IsElement self, IsEventTarget self) => EventName self UIEvent
gestureStart :: EventName self UIEvent
gestureStart = DOMString -> EventName self UIEvent
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"gesturestart")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onwebkitanimationend Mozilla Element.onwebkitanimationend documentation> 
webKitAnimationEnd ::
                   (IsElement self, IsEventTarget self) =>
                     EventName self AnimationEvent
webKitAnimationEnd :: EventName self AnimationEvent
webKitAnimationEnd
  = DOMString -> EventName self AnimationEvent
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"webkitanimationend")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onwebkitanimationiteration Mozilla Element.onwebkitanimationiteration documentation> 
webKitAnimationIteration ::
                         (IsElement self, IsEventTarget self) =>
                           EventName self AnimationEvent
webKitAnimationIteration :: EventName self AnimationEvent
webKitAnimationIteration
  = DOMString -> EventName self AnimationEvent
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"webkitanimationiteration")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onwebkitanimationstart Mozilla Element.onwebkitanimationstart documentation> 
webKitAnimationStart ::
                     (IsElement self, IsEventTarget self) =>
                       EventName self AnimationEvent
webKitAnimationStart :: EventName self AnimationEvent
webKitAnimationStart
  = DOMString -> EventName self AnimationEvent
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"webkitanimationstart")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onwebkittransitionend Mozilla Element.onwebkittransitionend documentation> 
webKitTransitionEnd ::
                    (IsElement self, IsEventTarget self) =>
                      EventName self TransitionEvent
webKitTransitionEnd :: EventName self TransitionEvent
webKitTransitionEnd
  = DOMString -> EventName self TransitionEvent
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"webkittransitionend")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onwebkitfullscreenchange Mozilla Element.onwebkitfullscreenchange documentation> 
webKitFullscreenChange ::
                       (IsElement self, IsEventTarget self) => EventName self Event
webKitFullscreenChange :: EventName self Event
webKitFullscreenChange
  = DOMString -> EventName self Event
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"webkitfullscreenchange")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onwebkitfullscreenerror Mozilla Element.onwebkitfullscreenerror documentation> 
webKitFullscreenError ::
                      (IsElement self, IsEventTarget self) => EventName self Event
webKitFullscreenError :: EventName self Event
webKitFullscreenError
  = DOMString -> EventName self Event
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"webkitfullscreenerror")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onfocusin Mozilla Element.onfocusin documentation> 
focusin ::
        (IsElement self, IsEventTarget self) => EventName self onfocusin
focusin :: EventName self onfocusin
focusin = DOMString -> EventName self onfocusin
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"focusin")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onfocusout Mozilla Element.onfocusout documentation> 
focusout ::
         (IsElement self, IsEventTarget self) => EventName self onfocusout
focusout :: EventName self onfocusout
focusout = DOMString -> EventName self onfocusout
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"focusout")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onbeforeload Mozilla Element.onbeforeload documentation> 
beforeload ::
           (IsElement self, IsEventTarget self) => EventName self onbeforeload
beforeload :: EventName self onbeforeload
beforeload = DOMString -> EventName self onbeforeload
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"beforeload")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onwebkitneedkey Mozilla Element.onwebkitneedkey documentation> 
webKitNeedKey ::
              (IsElement self, IsEventTarget self) => EventName self Event
webKitNeedKey :: EventName self Event
webKitNeedKey = DOMString -> EventName self Event
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"webkitneedkey")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onwebkitpresentationmodechanged Mozilla Element.onwebkitpresentationmodechanged documentation> 
webKitPresentationModeChanged ::
                              (IsElement self, IsEventTarget self) => EventName self Event
webKitPresentationModeChanged :: EventName self Event
webKitPresentationModeChanged
  = DOMString -> EventName self Event
forall t e. DOMString -> EventName t e
unsafeEventName ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"webkitpresentationmodechanged")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onwebkitcurrentplaybacktargetiswirelesschanged Mozilla Element.onwebkitcurrentplaybacktargetiswirelesschanged documentation> 
webKitCurrentPlaybackTargetIsWirelessChanged ::
                                             (IsElement self, IsEventTarget self) =>
                                               EventName self Event
webKitCurrentPlaybackTargetIsWirelessChanged :: EventName self Event
webKitCurrentPlaybackTargetIsWirelessChanged
  = DOMString -> EventName self Event
forall t e. DOMString -> EventName t e
unsafeEventName
      ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"webkitcurrentplaybacktargetiswirelesschanged")

-- | <https://developer.mozilla.org/en-US/docs/Web/API/Element.onwebkitplaybacktargetavailabilitychanged Mozilla Element.onwebkitplaybacktargetavailabilitychanged documentation> 
webKitPlaybackTargetAvailabilityChanged ::
                                        (IsElement self, IsEventTarget self) => EventName self Event
webKitPlaybackTargetAvailabilityChanged :: EventName self Event
webKitPlaybackTargetAvailabilityChanged
  = DOMString -> EventName self Event
forall t e. DOMString -> EventName t e
unsafeEventName
      ([Char] -> DOMString
forall a. ToJSString a => a -> DOMString
toJSString [Char]
"webkitplaybacktargetavailabilitychanged")