jsaddle-dom-0.10.0.0: src/JSDOM/Generated/SchedulerPostTaskOptions.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from scheduling-apis (webref). Do not edit.
module JSDOM.Generated.SchedulerPostTaskOptions
(newSchedulerPostTaskOptions, setSignal, getSignal, getSignalUnsafe, getSignalUnchecked, setPriority, getPriority, getPriorityUnsafe, getPriorityUnchecked, setDelay, getDelay, getDelayUnsafe, getDelayUnchecked, SchedulerPostTaskOptions(..), gTypeSchedulerPostTaskOptions)
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://wicg.github.io/scheduling-apis/#dictdef-schedulerposttaskoptions SchedulerPostTaskOptions specification>
newSchedulerPostTaskOptions :: (MonadDOM m) => m SchedulerPostTaskOptions
newSchedulerPostTaskOptions = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-signal SchedulerPostTaskOptions.signal specification>
setSignal :: (MonadDOM m, IsAbortSignal val) => SchedulerPostTaskOptions -> val -> m ()
setSignal self val = liftDOM (void (self ^. jss "signal" (toJSVal val)))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-signal SchedulerPostTaskOptions.signal specification>
getSignal :: (MonadDOM m) => SchedulerPostTaskOptions -> m (Maybe AbortSignal)
getSignal self = liftDOM (((self ^. js "signal") >>= fromJSValUnchecked))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-signal SchedulerPostTaskOptions.signal specification>
getSignalUnsafe :: (MonadDOM m, HasCallStack) => SchedulerPostTaskOptions -> m AbortSignal
getSignalUnsafe self = liftDOM ((((self ^. js "signal") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-signal SchedulerPostTaskOptions.signal specification>
getSignalUnchecked :: (MonadDOM m) => SchedulerPostTaskOptions -> m AbortSignal
getSignalUnchecked self = liftDOM (((self ^. js "signal") >>= fromJSValUnchecked))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-priority SchedulerPostTaskOptions.priority specification>
setPriority :: (MonadDOM m) => SchedulerPostTaskOptions -> TaskPriority -> m ()
setPriority self val = liftDOM (void (self ^. jss "priority" (toJSVal val)))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-priority SchedulerPostTaskOptions.priority specification>
getPriority :: (MonadDOM m) => SchedulerPostTaskOptions -> m (Maybe TaskPriority)
getPriority self = liftDOM (((self ^. js "priority") >>= fromJSValUnchecked))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-priority SchedulerPostTaskOptions.priority specification>
getPriorityUnsafe :: (MonadDOM m, HasCallStack) => SchedulerPostTaskOptions -> m TaskPriority
getPriorityUnsafe self = liftDOM ((((self ^. js "priority") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-priority SchedulerPostTaskOptions.priority specification>
getPriorityUnchecked :: (MonadDOM m) => SchedulerPostTaskOptions -> m TaskPriority
getPriorityUnchecked self = liftDOM (((self ^. js "priority") >>= fromJSValUnchecked))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-delay SchedulerPostTaskOptions.delay specification>
setDelay :: (MonadDOM m) => SchedulerPostTaskOptions -> Word53 -> m ()
setDelay self val = liftDOM (void (self ^. jss "delay" (toJSVal val)))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-delay SchedulerPostTaskOptions.delay specification>
getDelay :: (MonadDOM m) => SchedulerPostTaskOptions -> m (Maybe Word53)
getDelay self = liftDOM (((self ^. js "delay") >>= fromJSValUnchecked))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-delay SchedulerPostTaskOptions.delay specification>
getDelayUnsafe :: (MonadDOM m, HasCallStack) => SchedulerPostTaskOptions -> m Word53
getDelayUnsafe self = liftDOM ((((self ^. js "delay") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://wicg.github.io/scheduling-apis/#dom-schedulerposttaskoptions-delay SchedulerPostTaskOptions.delay specification>
getDelayUnchecked :: (MonadDOM m) => SchedulerPostTaskOptions -> m Word53
getDelayUnchecked self = liftDOM (((self ^. js "delay") >>= fromJSValUnchecked))