jsaddle-dom-0.10.0.0: src/JSDOM/Generated/CloseEventInit.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from websockets (webref). Do not edit.
module JSDOM.Generated.CloseEventInit
(newCloseEventInit, setWasClean, getWasClean, getWasCleanUnsafe, getWasCleanUnchecked, setCode, getCode, getCodeUnsafe, getCodeUnchecked, setReason, getReason, getReasonUnsafe, getReasonUnchecked, CloseEventInit(..), gTypeCloseEventInit)
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://websockets.spec.whatwg.org/#dictdef-closeeventinit CloseEventInit specification>
newCloseEventInit :: (MonadDOM m) => m CloseEventInit
newCloseEventInit = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-wasclean CloseEventInit.wasClean specification>
setWasClean :: (MonadDOM m) => CloseEventInit -> Bool -> m ()
setWasClean self val = liftDOM (void (self ^. jss "wasClean" (toJSVal val)))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-wasclean CloseEventInit.wasClean specification>
getWasClean :: (MonadDOM m) => CloseEventInit -> m (Maybe Bool)
getWasClean self = liftDOM (((self ^. js "wasClean") >>= fromJSValUnchecked))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-wasclean CloseEventInit.wasClean specification>
getWasCleanUnsafe :: (MonadDOM m, HasCallStack) => CloseEventInit -> m Bool
getWasCleanUnsafe self = liftDOM ((((self ^. js "wasClean") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-wasclean CloseEventInit.wasClean specification>
getWasCleanUnchecked :: (MonadDOM m) => CloseEventInit -> m Bool
getWasCleanUnchecked self = liftDOM (((self ^. js "wasClean") >>= valToBool))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-code CloseEventInit.code specification>
setCode :: (MonadDOM m) => CloseEventInit -> Word -> m ()
setCode self val = liftDOM (void (self ^. jss "code" (toJSVal val)))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-code CloseEventInit.code specification>
getCode :: (MonadDOM m) => CloseEventInit -> m (Maybe Word)
getCode self = liftDOM (((self ^. js "code") >>= fromJSValUnchecked))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-code CloseEventInit.code specification>
getCodeUnsafe :: (MonadDOM m, HasCallStack) => CloseEventInit -> m Word
getCodeUnsafe self = liftDOM ((((self ^. js "code") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-code CloseEventInit.code specification>
getCodeUnchecked :: (MonadDOM m) => CloseEventInit -> m Word
getCodeUnchecked self = liftDOM ((P.round <$> ((self ^. js "code") >>= valToNumber)))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-reason CloseEventInit.reason specification>
setReason :: (MonadDOM m, ToJSString val) => CloseEventInit -> val -> m ()
setReason self val = liftDOM (void (self ^. jss "reason" (toJSVal val)))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-reason CloseEventInit.reason specification>
getReason :: (MonadDOM m, FromJSString result) => CloseEventInit -> m (Maybe result)
getReason self = liftDOM (((self ^. js "reason") >>= fromMaybeJSString))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-reason CloseEventInit.reason specification>
getReasonUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => CloseEventInit -> m result
getReasonUnsafe self = liftDOM ((((self ^. js "reason") >>= fromMaybeJSString) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://websockets.spec.whatwg.org/#dom-closeeventinit-reason CloseEventInit.reason specification>
getReasonUnchecked :: (MonadDOM m, FromJSString result) => CloseEventInit -> m result
getReasonUnchecked self = liftDOM (((self ^. js "reason") >>= fromJSValUnchecked))