jsaddle-dom-0.10.0.0: src/JSDOM/Generated/IDBIndexParameters.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from IndexedDB-3 (webref). Do not edit.
module JSDOM.Generated.IDBIndexParameters
(newIDBIndexParameters, setUnique, getUnique, getUniqueUnsafe, getUniqueUnchecked, setMultiEntry, getMultiEntry, getMultiEntryUnsafe, getMultiEntryUnchecked, IDBIndexParameters(..), gTypeIDBIndexParameters)
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/IndexedDB/#dictdef-idbindexparameters IDBIndexParameters specification>
newIDBIndexParameters :: (MonadDOM m) => m IDBIndexParameters
newIDBIndexParameters = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))
-- | <https://w3c.github.io/IndexedDB/#dom-idbindexparameters-unique IDBIndexParameters.unique specification>
setUnique :: (MonadDOM m) => IDBIndexParameters -> Bool -> m ()
setUnique self val = liftDOM (void (self ^. jss "unique" (toJSVal val)))
-- | <https://w3c.github.io/IndexedDB/#dom-idbindexparameters-unique IDBIndexParameters.unique specification>
getUnique :: (MonadDOM m) => IDBIndexParameters -> m (Maybe Bool)
getUnique self = liftDOM (((self ^. js "unique") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/IndexedDB/#dom-idbindexparameters-unique IDBIndexParameters.unique specification>
getUniqueUnsafe :: (MonadDOM m, HasCallStack) => IDBIndexParameters -> m Bool
getUniqueUnsafe self = liftDOM ((((self ^. js "unique") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/IndexedDB/#dom-idbindexparameters-unique IDBIndexParameters.unique specification>
getUniqueUnchecked :: (MonadDOM m) => IDBIndexParameters -> m Bool
getUniqueUnchecked self = liftDOM (((self ^. js "unique") >>= valToBool))
-- | <https://w3c.github.io/IndexedDB/#dom-idbindexparameters-multientry IDBIndexParameters.multiEntry specification>
setMultiEntry :: (MonadDOM m) => IDBIndexParameters -> Bool -> m ()
setMultiEntry self val = liftDOM (void (self ^. jss "multiEntry" (toJSVal val)))
-- | <https://w3c.github.io/IndexedDB/#dom-idbindexparameters-multientry IDBIndexParameters.multiEntry specification>
getMultiEntry :: (MonadDOM m) => IDBIndexParameters -> m (Maybe Bool)
getMultiEntry self = liftDOM (((self ^. js "multiEntry") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/IndexedDB/#dom-idbindexparameters-multientry IDBIndexParameters.multiEntry specification>
getMultiEntryUnsafe :: (MonadDOM m, HasCallStack) => IDBIndexParameters -> m Bool
getMultiEntryUnsafe self = liftDOM ((((self ^. js "multiEntry") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/IndexedDB/#dom-idbindexparameters-multientry IDBIndexParameters.multiEntry specification>
getMultiEntryUnchecked :: (MonadDOM m) => IDBIndexParameters -> m Bool
getMultiEntryUnchecked self = liftDOM (((self ^. js "multiEntry") >>= valToBool))