packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/Clients.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from service-workers (webref). Do not edit.
module JSDOM.Generated.Clients
       (claim, get, get_, matchAll, matchAll_, openWindow, openWindow_, openWindowUnsafe, openWindowUnchecked, Clients(..), gTypeClients)
       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://developer.mozilla.org/docs/Web/API/Clients/claim MDN Clients.claim documentation>
claim :: (MonadDOM m) => Clients -> m ()
claim self = liftDOM (void (((self ^. jsf "claim" ()) >>= readPromise)))

-- | <https://developer.mozilla.org/docs/Web/API/Clients/get MDN Clients.get documentation>
get :: (MonadDOM m, ToJSString id) => Clients -> id -> m ClientOrUndefined
get self id = liftDOM (((((self ^. jsf "get" [toJSVal id]) >>= readPromise)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/Clients/get MDN Clients.get documentation>
get_ :: (MonadDOM m, ToJSString id) => Clients -> id -> m ()
get_ self id = liftDOM (void (((self ^. jsf "get" [toJSVal id]) >>= readPromise)))

-- | <https://developer.mozilla.org/docs/Web/API/Clients/matchAll MDN Clients.matchAll documentation>
matchAll :: (MonadDOM m) => Clients -> Maybe ClientQueryOptions -> m [Client]
matchAll self options = liftDOM (((((self ^. jsf "matchAll" [P.maybe (P.return jsUndefined) toJSVal options]) >>= readPromise)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/Clients/matchAll MDN Clients.matchAll documentation>
matchAll_ :: (MonadDOM m) => Clients -> Maybe ClientQueryOptions -> m ()
matchAll_ self options = liftDOM (void (((self ^. jsf "matchAll" [P.maybe (P.return jsUndefined) toJSVal options]) >>= readPromise)))

-- | <https://developer.mozilla.org/docs/Web/API/Clients/openWindow MDN Clients.openWindow documentation>
openWindow :: (MonadDOM m, ToJSString url) => Clients -> url -> m (Maybe WindowClient)
openWindow self url = liftDOM (((((self ^. jsf "openWindow" [toJSVal url]) >>= readPromise)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/Clients/openWindow MDN Clients.openWindow documentation>
openWindow_ :: (MonadDOM m, ToJSString url) => Clients -> url -> m ()
openWindow_ self url = liftDOM (void (((self ^. jsf "openWindow" [toJSVal url]) >>= readPromise)))

-- | <https://developer.mozilla.org/docs/Web/API/Clients/openWindow MDN Clients.openWindow documentation>
openWindowUnsafe :: (MonadDOM m, ToJSString url, HasCallStack) => Clients -> url -> m WindowClient
openWindowUnsafe self url = liftDOM ((((((self ^. jsf "openWindow" [toJSVal url]) >>= readPromise)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/Clients/openWindow MDN Clients.openWindow documentation>
openWindowUnchecked :: (MonadDOM m, ToJSString url) => Clients -> url -> m WindowClient
openWindowUnchecked self url = liftDOM (((((self ^. jsf "openWindow" [toJSVal url]) >>= readPromise)) >>= fromJSValUnchecked))