module JSDOM.Generated.CSSSupportsRule
(insertRule, insertRule_, deleteRule, getCssRules,
getCssRulesUnsafe, getCssRulesUnchecked, getConditionText,
CSSSupportsRule(..), gTypeCSSSupportsRule)
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 Language.Javascript.JSaddle (JSM(..), JSVal(..), JSString, strictEqual, toJSVal, valToStr, valToNumber, valToBool, js, jss, jsf, jsg, function, new, array)
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)
import JSDOM.Enums
#if MIN_VERSION_base(4,9,0)
import GHC.Stack (HasCallStack)
#elif MIN_VERSION_base(4,8,0)
import GHC.Stack (CallStack)
import GHC.Exts (Constraint)
type HasCallStack = ((?callStack :: CallStack) :: Constraint)
#else
import GHC.Exts (Constraint)
type HasCallStack = (() :: Constraint)
#endif
insertRule ::
(MonadDOM m, ToJSString rule) =>
CSSSupportsRule -> rule -> Word -> m Word
insertRule self rule index
= liftDOM
(round <$>
((self ^. jsf "insertRule" [toJSVal rule, toJSVal index]) >>=
valToNumber))
insertRule_ ::
(MonadDOM m, ToJSString rule) =>
CSSSupportsRule -> rule -> Word -> m ()
insertRule_ self rule index
= liftDOM
(void (self ^. jsf "insertRule" [toJSVal rule, toJSVal index]))
deleteRule :: (MonadDOM m) => CSSSupportsRule -> Word -> m ()
deleteRule self index
= liftDOM (void (self ^. jsf "deleteRule" [toJSVal index]))
getCssRules ::
(MonadDOM m) => CSSSupportsRule -> m (Maybe CSSRuleList)
getCssRules self = liftDOM ((self ^. js "cssRules") >>= fromJSVal)
getCssRulesUnsafe ::
(MonadDOM m, HasCallStack) => CSSSupportsRule -> m CSSRuleList
getCssRulesUnsafe self
= liftDOM
(((self ^. js "cssRules") >>= fromJSVal) >>=
maybe (Prelude.error "Nothing to return") return)
getCssRulesUnchecked ::
(MonadDOM m) => CSSSupportsRule -> m CSSRuleList
getCssRulesUnchecked self
= liftDOM ((self ^. js "cssRules") >>= fromJSValUnchecked)
getConditionText ::
(MonadDOM m, FromJSString result) => CSSSupportsRule -> m result
getConditionText self
= liftDOM ((self ^. js "conditionText") >>= fromJSValUnchecked)