module JSDOM.Generated.MessageEvent
(newMessageEvent, initMessageEvent, webkitInitMessageEvent,
getOrigin, getLastEventId, getSource, getSourceUnsafe,
getSourceUnchecked, getData, getPorts, MessageEvent(..),
gTypeMessageEvent)
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, 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)
import JSDOM.Enums
newMessageEvent ::
(MonadDOM m, ToJSString type') =>
type' -> Maybe MessageEventInit -> m MessageEvent
newMessageEvent type' eventInitDict
= liftDOM
(MessageEvent <$>
new (jsg "MessageEvent") [toJSVal type', toJSVal eventInitDict])
initMessageEvent ::
(MonadDOM m, ToJSString type', ToJSVal data', ToJSString originArg,
ToJSString lastEventId, IsMessageEventSource source) =>
MessageEvent ->
type' ->
Bool ->
Bool ->
Maybe data' ->
Maybe originArg ->
Maybe lastEventId -> Maybe source -> [MessagePort] -> m ()
initMessageEvent self type' bubbles cancelable data' originArg
lastEventId source messagePorts
= liftDOM
(void
(self ^. jsf "initMessageEvent"
[toJSVal type', toJSVal bubbles, toJSVal cancelable, toJSVal data',
toJSVal originArg, toJSVal lastEventId, toJSVal source,
toJSVal (array messagePorts)]))
webkitInitMessageEvent ::
(MonadDOM m, ToJSString typeArg, ToJSVal dataArg,
ToJSString originArg, ToJSString lastEventIdArg,
IsMessageEventSource sourceArg) =>
MessageEvent ->
Maybe typeArg ->
Bool ->
Bool ->
Maybe dataArg ->
Maybe originArg ->
Maybe lastEventIdArg ->
Maybe sourceArg -> [MessagePort] -> m ()
webkitInitMessageEvent self typeArg canBubbleArg cancelableArg
dataArg originArg lastEventIdArg sourceArg messagePorts
= liftDOM
(void
(self ^. jsf "webkitInitMessageEvent"
[toJSVal typeArg, toJSVal canBubbleArg, toJSVal cancelableArg,
toJSVal dataArg, toJSVal originArg, toJSVal lastEventIdArg,
toJSVal sourceArg, toJSVal (array messagePorts)]))
getOrigin ::
(MonadDOM m, FromJSString result) => MessageEvent -> m result
getOrigin self
= liftDOM ((self ^. js "origin") >>= fromJSValUnchecked)
getLastEventId ::
(MonadDOM m, FromJSString result) => MessageEvent -> m result
getLastEventId self
= liftDOM ((self ^. js "lastEventId") >>= fromJSValUnchecked)
getSource :: (MonadDOM m) => MessageEvent -> m (Maybe EventTarget)
getSource self = liftDOM ((self ^. js "source") >>= fromJSVal)
getSourceUnsafe ::
(MonadDOM m, HasCallStack) => MessageEvent -> m EventTarget
getSourceUnsafe self
= liftDOM
(((self ^. js "source") >>= fromJSVal) >>=
maybe (Prelude.error "Nothing to return") return)
getSourceUnchecked :: (MonadDOM m) => MessageEvent -> m EventTarget
getSourceUnchecked self
= liftDOM ((self ^. js "source") >>= fromJSValUnchecked)
getData :: (MonadDOM m) => MessageEvent -> m JSVal
getData self = liftDOM ((self ^. js "data") >>= toJSVal)
getPorts :: (MonadDOM m) => MessageEvent -> m [MessagePort]
getPorts self
= liftDOM ((self ^. js "ports") >>= fromJSArrayUnchecked)