jsaddle-dom-0.10.0.0: src/JSDOM/Generated/WebTransportSendOptions.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webtransport (webref). Do not edit.
module JSDOM.Generated.WebTransportSendOptions
(newWebTransportSendOptions, setSendGroup, getSendGroup, getSendGroupUnsafe, getSendGroupUnchecked, setSendOrder, getSendOrder, getSendOrderUnsafe, getSendOrderUnchecked, WebTransportSendOptions(..), gTypeWebTransportSendOptions, IsWebTransportSendOptions, toWebTransportSendOptions)
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/webtransport/#dictdef-webtransportsendoptions WebTransportSendOptions specification>
newWebTransportSendOptions :: (MonadDOM m) => m WebTransportSendOptions
newWebTransportSendOptions = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webtransport/#dom-webtransportsendoptions-sendgroup WebTransportSendOptions.sendGroup specification>
setSendGroup :: (MonadDOM m, IsWebTransportSendOptions self) => self -> Maybe WebTransportSendGroup -> m ()
setSendGroup self val = liftDOM (void ((Types.toWebTransportSendOptions self) ^. jss "sendGroup" (toJSVal val)))
-- | <https://w3c.github.io/webtransport/#dom-webtransportsendoptions-sendgroup WebTransportSendOptions.sendGroup specification>
getSendGroup :: (MonadDOM m, IsWebTransportSendOptions self) => self -> m (Maybe WebTransportSendGroup)
getSendGroup self = liftDOM ((((Types.toWebTransportSendOptions self) ^. js "sendGroup") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webtransport/#dom-webtransportsendoptions-sendgroup WebTransportSendOptions.sendGroup specification>
getSendGroupUnsafe :: (MonadDOM m, IsWebTransportSendOptions self, HasCallStack) => self -> m WebTransportSendGroup
getSendGroupUnsafe self = liftDOM (((((Types.toWebTransportSendOptions self) ^. js "sendGroup") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/webtransport/#dom-webtransportsendoptions-sendgroup WebTransportSendOptions.sendGroup specification>
getSendGroupUnchecked :: (MonadDOM m, IsWebTransportSendOptions self) => self -> m WebTransportSendGroup
getSendGroupUnchecked self = liftDOM ((((Types.toWebTransportSendOptions self) ^. js "sendGroup") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webtransport/#dom-webtransportsendoptions-sendorder WebTransportSendOptions.sendOrder specification>
setSendOrder :: (MonadDOM m, IsWebTransportSendOptions self) => self -> Int53 -> m ()
setSendOrder self val = liftDOM (void ((Types.toWebTransportSendOptions self) ^. jss "sendOrder" (toJSVal val)))
-- | <https://w3c.github.io/webtransport/#dom-webtransportsendoptions-sendorder WebTransportSendOptions.sendOrder specification>
getSendOrder :: (MonadDOM m, IsWebTransportSendOptions self) => self -> m (Maybe Int53)
getSendOrder self = liftDOM ((((Types.toWebTransportSendOptions self) ^. js "sendOrder") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webtransport/#dom-webtransportsendoptions-sendorder WebTransportSendOptions.sendOrder specification>
getSendOrderUnsafe :: (MonadDOM m, IsWebTransportSendOptions self, HasCallStack) => self -> m Int53
getSendOrderUnsafe self = liftDOM (((((Types.toWebTransportSendOptions self) ^. js "sendOrder") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/webtransport/#dom-webtransportsendoptions-sendorder WebTransportSendOptions.sendOrder specification>
getSendOrderUnchecked :: (MonadDOM m, IsWebTransportSendOptions self) => self -> m Int53
getSendOrderUnchecked self = liftDOM ((((Types.toWebTransportSendOptions self) ^. js "sendOrder") >>= fromJSValUnchecked))