jsaddle-dom-0.10.0.0: src/JSDOM/Generated/CacheStorage.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.CacheStorage
(delete, delete_, has, has_, keys, keys_, match, match_, open, open_, CacheStorage(..), gTypeCacheStorage)
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/CacheStorage/delete MDN CacheStorage.delete documentation>
delete :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m Bool
delete self cacheName = liftDOM (((((self ^. jsf "delete" [toJSVal cacheName]) >>= readPromise)) >>= valToBool))
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/delete MDN CacheStorage.delete documentation>
delete_ :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m ()
delete_ self cacheName = liftDOM (void (((self ^. jsf "delete" [toJSVal cacheName]) >>= readPromise)))
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/has MDN CacheStorage.has documentation>
has :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m Bool
has self cacheName = liftDOM (((((self ^. jsf "has" [toJSVal cacheName]) >>= readPromise)) >>= valToBool))
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/has MDN CacheStorage.has documentation>
has_ :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m ()
has_ self cacheName = liftDOM (void (((self ^. jsf "has" [toJSVal cacheName]) >>= readPromise)))
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/keys MDN CacheStorage.keys documentation>
keys :: (MonadDOM m, FromJSString result) => CacheStorage -> m [result]
keys self = liftDOM (((((self ^. jsf "keys" ()) >>= readPromise)) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/keys MDN CacheStorage.keys documentation>
keys_ :: (MonadDOM m) => CacheStorage -> m ()
keys_ self = liftDOM (void (((self ^. jsf "keys" ()) >>= readPromise)))
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/match MDN CacheStorage.match documentation>
match :: (MonadDOM m, IsRequestInfo request) => CacheStorage -> request -> Maybe MultiCacheQueryOptions -> m ResponseOrUndefined
match self request options = liftDOM (((((self ^. jsf "match" [toJSVal request, P.maybe (P.return jsUndefined) toJSVal options]) >>= readPromise)) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/match MDN CacheStorage.match documentation>
match_ :: (MonadDOM m, IsRequestInfo request) => CacheStorage -> request -> Maybe MultiCacheQueryOptions -> m ()
match_ self request options = liftDOM (void (((self ^. jsf "match" [toJSVal request, P.maybe (P.return jsUndefined) toJSVal options]) >>= readPromise)))
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/open MDN CacheStorage.open documentation>
open :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m Cache
open self cacheName = liftDOM (((((self ^. jsf "open" [toJSVal cacheName]) >>= readPromise)) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/open MDN CacheStorage.open documentation>
open_ :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m ()
open_ self cacheName = liftDOM (void (((self ^. jsf "open" [toJSVal cacheName]) >>= readPromise)))