jsaddle-dom-0.10.0.0: src/JSDOM/Generated/MediaKeyMessageEventInit.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from encrypted-media-2 (webref). Do not edit.
module JSDOM.Generated.MediaKeyMessageEventInit
(newMediaKeyMessageEventInit, setMessageType, getMessageType, setMessage, getMessage, MediaKeyMessageEventInit(..), gTypeMediaKeyMessageEventInit)
where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import Language.Javascript.JSaddle (JSM, JSVal, JSString, toJSVal, valToBool, valToNumber, js, jss, jsf, jsg, new, function, asyncFunction, jsUndefined, jsNull)
import JSDOM.Types
import qualified JSDOM.Types as Types
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Generated.Enums
-- | <https://w3c.github.io/encrypted-media/#dom-mediakeymessageeventinit MediaKeyMessageEventInit specification>
newMediaKeyMessageEventInit :: (MonadDOM m, IsArrayBuffer message) => MediaKeyMessageType -> message -> m MediaKeyMessageEventInit
newMediaKeyMessageEventInit messageType message = liftDOM ((((new (jsg "Object") () >>= \o -> (o ^. jss "messageType" (toJSVal messageType)) P.>> (o ^. jss "message" (toJSVal message)) P.>> P.return o)) >>= fromJSValUnchecked))
-- | <https://w3c.github.io/encrypted-media/#dom-mediakeymessageeventinit-messagetype MediaKeyMessageEventInit.messageType specification>
setMessageType :: (MonadDOM m) => MediaKeyMessageEventInit -> MediaKeyMessageType -> m ()
setMessageType self val = liftDOM (void (self ^. jss "messageType" (toJSVal val)))
-- | <https://w3c.github.io/encrypted-media/#dom-mediakeymessageeventinit-messagetype MediaKeyMessageEventInit.messageType specification>
getMessageType :: (MonadDOM m) => MediaKeyMessageEventInit -> m MediaKeyMessageType
getMessageType self = liftDOM (((self ^. js "messageType") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/encrypted-media/#dom-mediakeymessageeventinit-message MediaKeyMessageEventInit.message specification>
setMessage :: (MonadDOM m, IsArrayBuffer val) => MediaKeyMessageEventInit -> val -> m ()
setMessage self val = liftDOM (void (self ^. jss "message" (toJSVal val)))
-- | <https://w3c.github.io/encrypted-media/#dom-mediakeymessageeventinit-message MediaKeyMessageEventInit.message specification>
getMessage :: (MonadDOM m) => MediaKeyMessageEventInit -> m ArrayBuffer
getMessage self = liftDOM (((self ^. js "message") >>= fromJSValUnchecked))