{-# LANGUAGE PatternSynonyms #-} module Language.Javascript.JSaddle.DOM.Generated.CSSStyleSheet (insertRule, deleteRule, addRule, removeRule, getOwnerRule, getCssRules, getRules, CSSStyleSheet, castToCSSStyleSheet, gTypeCSSStyleSheet) where import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, realToFrac, fmap, Show, Read, Eq, Ord, Maybe(..)) 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 Language.Javascript.JSaddle.DOM.Types import Control.Applicative ((<$>)) import Control.Monad (void) import Control.Lens.Operators ((^.)) import Language.Javascript.JSaddle.DOM.EventTargetClosures (EventName, unsafeEventName) import Language.Javascript.JSaddle.DOM.Enums -- | insertRule :: (MonadDOM m, ToJSString rule) => CSSStyleSheet -> rule -> Word -> m Word insertRule self rule index = liftDOM (round <$> ((self ^. jsf "insertRule" [toJSVal rule, toJSVal index]) >>= valToNumber)) -- | deleteRule :: (MonadDOM m) => CSSStyleSheet -> Word -> m () deleteRule self index = liftDOM (void (self ^. jsf "deleteRule" [toJSVal index])) -- | addRule :: (MonadDOM m, ToJSString selector, ToJSString style) => CSSStyleSheet -> selector -> style -> Word -> m Int addRule self selector style index = liftDOM (round <$> ((self ^. jsf "addRule" [toJSVal selector, toJSVal style, toJSVal index]) >>= valToNumber)) -- | removeRule :: (MonadDOM m) => CSSStyleSheet -> Word -> m () removeRule self index = liftDOM (void (self ^. jsf "removeRule" [toJSVal index])) -- | getOwnerRule :: (MonadDOM m) => CSSStyleSheet -> m (Maybe CSSRule) getOwnerRule self = liftDOM ((self ^. js "ownerRule") >>= fromJSVal) -- | getCssRules :: (MonadDOM m) => CSSStyleSheet -> m (Maybe CSSRuleList) getCssRules self = liftDOM ((self ^. js "cssRules") >>= fromJSVal) -- | getRules :: (MonadDOM m) => CSSStyleSheet -> m (Maybe CSSRuleList) getRules self = liftDOM ((self ^. js "rules") >>= fromJSVal)