{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module JSDOM.Generated.CSSStyleDeclaration
(getPropertyValue, getPropertyValue_, getPropertyCSSValue,
getPropertyCSSValue_, getPropertyCSSValueUnsafe,
getPropertyCSSValueUnchecked, removeProperty, removeProperty_,
getPropertyPriority, getPropertyPriority_,
getPropertyPriorityUnsafe, getPropertyPriorityUnchecked,
setProperty, item, item_, getPropertyShorthand,
getPropertyShorthand_, getPropertyShorthandUnsafe,
getPropertyShorthandUnchecked, isPropertyImplicit,
isPropertyImplicit_, setCssText, getCssText, getLength,
getParentRule, getParentRuleUnsafe, getParentRuleUnchecked,
CSSStyleDeclaration(..), gTypeCSSStyleDeclaration)
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
getPropertyValue ::
(MonadDOM m, ToJSString propertyName, FromJSString result) =>
CSSStyleDeclaration -> propertyName -> m result
getPropertyValue :: CSSStyleDeclaration -> propertyName -> m result
getPropertyValue CSSStyleDeclaration
self propertyName
propertyName
= DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyValue" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]) 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)
getPropertyValue_ ::
(MonadDOM m, ToJSString propertyName) =>
CSSStyleDeclaration -> propertyName -> m ()
getPropertyValue_ :: CSSStyleDeclaration -> propertyName -> m ()
getPropertyValue_ CSSStyleDeclaration
self propertyName
propertyName
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyValue" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]))
getPropertyCSSValue ::
(MonadDOM m, ToJSString propertyName) =>
CSSStyleDeclaration -> propertyName -> m (Maybe CSSValue)
getPropertyCSSValue :: CSSStyleDeclaration -> propertyName -> m (Maybe CSSValue)
getPropertyCSSValue CSSStyleDeclaration
self propertyName
propertyName
= DOM (Maybe CSSValue) -> m (Maybe CSSValue)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyCSSValue" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]) JSM JSVal
-> (JSVal -> DOM (Maybe CSSValue)) -> DOM (Maybe CSSValue)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
JSVal -> DOM (Maybe CSSValue)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)
getPropertyCSSValue_ ::
(MonadDOM m, ToJSString propertyName) =>
CSSStyleDeclaration -> propertyName -> m ()
getPropertyCSSValue_ :: CSSStyleDeclaration -> propertyName -> m ()
getPropertyCSSValue_ CSSStyleDeclaration
self propertyName
propertyName
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyCSSValue" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]))
getPropertyCSSValueUnsafe ::
(MonadDOM m, ToJSString propertyName, HasCallStack) =>
CSSStyleDeclaration -> propertyName -> m CSSValue
getPropertyCSSValueUnsafe :: CSSStyleDeclaration -> propertyName -> m CSSValue
getPropertyCSSValueUnsafe CSSStyleDeclaration
self propertyName
propertyName
= DOM CSSValue -> m CSSValue
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyCSSValue" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]) JSM JSVal
-> (JSVal -> DOM (Maybe CSSValue)) -> DOM (Maybe CSSValue)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
JSVal -> DOM (Maybe CSSValue)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)
DOM (Maybe CSSValue)
-> (Maybe CSSValue -> DOM CSSValue) -> DOM CSSValue
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM CSSValue
-> (CSSValue -> DOM CSSValue) -> Maybe CSSValue -> DOM CSSValue
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM CSSValue
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") CSSValue -> DOM CSSValue
forall (m :: * -> *) a. Monad m => a -> m a
return)
getPropertyCSSValueUnchecked ::
(MonadDOM m, ToJSString propertyName) =>
CSSStyleDeclaration -> propertyName -> m CSSValue
getPropertyCSSValueUnchecked :: CSSStyleDeclaration -> propertyName -> m CSSValue
getPropertyCSSValueUnchecked CSSStyleDeclaration
self propertyName
propertyName
= DOM CSSValue -> m CSSValue
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyCSSValue" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]) JSM JSVal -> (JSVal -> DOM CSSValue) -> DOM CSSValue
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
JSVal -> DOM CSSValue
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)
removeProperty ::
(MonadDOM m, ToJSString propertyName, FromJSString result) =>
CSSStyleDeclaration -> propertyName -> m result
removeProperty :: CSSStyleDeclaration -> propertyName -> m result
removeProperty CSSStyleDeclaration
self propertyName
propertyName
= DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"removeProperty" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]) 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)
removeProperty_ ::
(MonadDOM m, ToJSString propertyName) =>
CSSStyleDeclaration -> propertyName -> m ()
removeProperty_ :: CSSStyleDeclaration -> propertyName -> m ()
removeProperty_ CSSStyleDeclaration
self propertyName
propertyName
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"removeProperty" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]))
getPropertyPriority ::
(MonadDOM m, ToJSString propertyName, FromJSString result) =>
CSSStyleDeclaration -> propertyName -> m (Maybe result)
getPropertyPriority :: CSSStyleDeclaration -> propertyName -> m (Maybe result)
getPropertyPriority CSSStyleDeclaration
self propertyName
propertyName
= DOM (Maybe result) -> m (Maybe result)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyPriority" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]) 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)
getPropertyPriority_ ::
(MonadDOM m, ToJSString propertyName) =>
CSSStyleDeclaration -> propertyName -> m ()
getPropertyPriority_ :: CSSStyleDeclaration -> propertyName -> m ()
getPropertyPriority_ CSSStyleDeclaration
self propertyName
propertyName
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyPriority" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]))
getPropertyPriorityUnsafe ::
(MonadDOM m, ToJSString propertyName, HasCallStack,
FromJSString result) =>
CSSStyleDeclaration -> propertyName -> m result
getPropertyPriorityUnsafe :: CSSStyleDeclaration -> propertyName -> m result
getPropertyPriorityUnsafe CSSStyleDeclaration
self propertyName
propertyName
= DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyPriority" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]) 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)
getPropertyPriorityUnchecked ::
(MonadDOM m, ToJSString propertyName, FromJSString result) =>
CSSStyleDeclaration -> propertyName -> m result
getPropertyPriorityUnchecked :: CSSStyleDeclaration -> propertyName -> m result
getPropertyPriorityUnchecked CSSStyleDeclaration
self propertyName
propertyName
= DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyPriority" [propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName]) 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)
setProperty ::
(MonadDOM m, ToJSString propertyName, ToJSString value,
ToJSString priority) =>
CSSStyleDeclaration ->
propertyName -> value -> Maybe priority -> m ()
setProperty :: CSSStyleDeclaration
-> propertyName -> value -> Maybe priority -> m ()
setProperty CSSStyleDeclaration
self propertyName
propertyName value
value Maybe priority
priority
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
(CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"setProperty"
[propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal propertyName
propertyName, value -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal value
value, Maybe priority -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe priority
priority]))
item ::
(MonadDOM m, FromJSString result) =>
CSSStyleDeclaration -> Word -> m result
item :: CSSStyleDeclaration -> Word -> m result
item CSSStyleDeclaration
self Word
index
= DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"item" [Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
index]) 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)
item_ :: (MonadDOM m) => CSSStyleDeclaration -> Word -> m ()
item_ :: CSSStyleDeclaration -> Word -> m ()
item_ CSSStyleDeclaration
self Word
index
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"item" [Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
index]))
getPropertyShorthand ::
(MonadDOM m, ToJSString propertyName, FromJSString result) =>
CSSStyleDeclaration -> Maybe propertyName -> m (Maybe result)
getPropertyShorthand :: CSSStyleDeclaration -> Maybe propertyName -> m (Maybe result)
getPropertyShorthand CSSStyleDeclaration
self Maybe propertyName
propertyName
= DOM (Maybe result) -> m (Maybe result)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyShorthand" [Maybe propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe propertyName
propertyName]) 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)
getPropertyShorthand_ ::
(MonadDOM m, ToJSString propertyName) =>
CSSStyleDeclaration -> Maybe propertyName -> m ()
getPropertyShorthand_ :: CSSStyleDeclaration -> Maybe propertyName -> m ()
getPropertyShorthand_ CSSStyleDeclaration
self Maybe propertyName
propertyName
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyShorthand" [Maybe propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe propertyName
propertyName]))
getPropertyShorthandUnsafe ::
(MonadDOM m, ToJSString propertyName, HasCallStack,
FromJSString result) =>
CSSStyleDeclaration -> Maybe propertyName -> m result
getPropertyShorthandUnsafe :: CSSStyleDeclaration -> Maybe propertyName -> m result
getPropertyShorthandUnsafe CSSStyleDeclaration
self Maybe propertyName
propertyName
= DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyShorthand" [Maybe propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe propertyName
propertyName]) 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)
getPropertyShorthandUnchecked ::
(MonadDOM m, ToJSString propertyName, FromJSString result) =>
CSSStyleDeclaration -> Maybe propertyName -> m result
getPropertyShorthandUnchecked :: CSSStyleDeclaration -> Maybe propertyName -> m result
getPropertyShorthandUnchecked CSSStyleDeclaration
self Maybe propertyName
propertyName
= DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"getPropertyShorthand" [Maybe propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe propertyName
propertyName]) 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)
isPropertyImplicit ::
(MonadDOM m, ToJSString propertyName) =>
CSSStyleDeclaration -> Maybe propertyName -> m Bool
isPropertyImplicit :: CSSStyleDeclaration -> Maybe propertyName -> m Bool
isPropertyImplicit CSSStyleDeclaration
self Maybe propertyName
propertyName
= DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"isPropertyImplicit" [Maybe propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe propertyName
propertyName]) 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)
isPropertyImplicit_ ::
(MonadDOM m, ToJSString propertyName) =>
CSSStyleDeclaration -> Maybe propertyName -> m ()
isPropertyImplicit_ :: CSSStyleDeclaration -> Maybe propertyName -> m ()
isPropertyImplicit_ CSSStyleDeclaration
self Maybe propertyName
propertyName
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (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]
"isPropertyImplicit" [Maybe propertyName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe propertyName
propertyName]))
setCssText ::
(MonadDOM m, ToJSString val) => CSSStyleDeclaration -> val -> m ()
setCssText :: CSSStyleDeclaration -> val -> m ()
setCssText CSSStyleDeclaration
self val
val = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (DOM ()) CSSStyleDeclaration (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]
"cssText" (val -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal val
val))
getCssText ::
(MonadDOM m, FromJSString result) =>
CSSStyleDeclaration -> m result
getCssText :: CSSStyleDeclaration -> m result
getCssText CSSStyleDeclaration
self
= DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter CSSStyleDeclaration (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"cssText") 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)
getLength :: (MonadDOM m) => CSSStyleDeclaration -> m Word
getLength :: CSSStyleDeclaration -> m Word
getLength CSSStyleDeclaration
self
= DOM Word -> m Word
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (Double -> Word
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Word) -> JSM Double -> DOM Word
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter CSSStyleDeclaration (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"length") 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))
getParentRule ::
(MonadDOM m) => CSSStyleDeclaration -> m (Maybe CSSRule)
getParentRule :: CSSStyleDeclaration -> m (Maybe CSSRule)
getParentRule CSSStyleDeclaration
self
= DOM (Maybe CSSRule) -> m (Maybe CSSRule)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter CSSStyleDeclaration (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"parentRule") JSM JSVal -> (JSVal -> DOM (Maybe CSSRule)) -> DOM (Maybe CSSRule)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe CSSRule)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)
getParentRuleUnsafe ::
(MonadDOM m, HasCallStack) => CSSStyleDeclaration -> m CSSRule
getParentRuleUnsafe :: CSSStyleDeclaration -> m CSSRule
getParentRuleUnsafe CSSStyleDeclaration
self
= DOM CSSRule -> m CSSRule
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter CSSStyleDeclaration (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"parentRule") JSM JSVal -> (JSVal -> DOM (Maybe CSSRule)) -> DOM (Maybe CSSRule)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe CSSRule)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal) DOM (Maybe CSSRule)
-> (Maybe CSSRule -> DOM CSSRule) -> DOM CSSRule
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
DOM CSSRule
-> (CSSRule -> DOM CSSRule) -> Maybe CSSRule -> DOM CSSRule
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM CSSRule
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") CSSRule -> DOM CSSRule
forall (m :: * -> *) a. Monad m => a -> m a
return)
getParentRuleUnchecked ::
(MonadDOM m) => CSSStyleDeclaration -> m CSSRule
getParentRuleUnchecked :: CSSStyleDeclaration -> m CSSRule
getParentRuleUnchecked CSSStyleDeclaration
self
= DOM CSSRule -> m CSSRule
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((CSSStyleDeclaration
self CSSStyleDeclaration
-> Getting (JSM JSVal) CSSStyleDeclaration (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> IndexPreservingGetter CSSStyleDeclaration (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"parentRule") JSM JSVal -> (JSVal -> DOM CSSRule) -> DOM CSSRule
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM CSSRule
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)