packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from fedcm-1 (webref). Do not edit.
module JSDOM.Generated.IdentityCredentialRequestOptions
       (newIdentityCredentialRequestOptions, setProviders, getProviders, setContext, getContext, getContextUnsafe, getContextUnchecked, setMode, getMode, getModeUnsafe, getModeUnchecked, IdentityCredentialRequestOptions(..), gTypeIdentityCredentialRequestOptions)
       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-fedid.github.io/FedCM/#dictdef-identitycredentialrequestoptions IdentityCredentialRequestOptions specification>
newIdentityCredentialRequestOptions :: (MonadDOM m) => [IdentityProviderRequestOptions] -> m IdentityCredentialRequestOptions
newIdentityCredentialRequestOptions providers = liftDOM ((((new (jsg "Object") () >>= \o -> (o ^. jss "providers" (toJSVal providers)) P.>> P.return o)) >>= fromJSValUnchecked))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identitycredentialrequestoptions-providers IdentityCredentialRequestOptions.providers specification>
setProviders :: (MonadDOM m) => IdentityCredentialRequestOptions -> [IdentityProviderRequestOptions] -> m ()
setProviders self val = liftDOM (void (self ^. jss "providers" (toJSVal val)))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identitycredentialrequestoptions-providers IdentityCredentialRequestOptions.providers specification>
getProviders :: (MonadDOM m) => IdentityCredentialRequestOptions -> m [IdentityProviderRequestOptions]
getProviders self = liftDOM (((self ^. js "providers") >>= fromJSValUnchecked))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identitycredentialrequestoptions-context IdentityCredentialRequestOptions.context specification>
setContext :: (MonadDOM m) => IdentityCredentialRequestOptions -> IdentityCredentialRequestOptionsContext -> m ()
setContext self val = liftDOM (void (self ^. jss "context" (toJSVal val)))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identitycredentialrequestoptions-context IdentityCredentialRequestOptions.context specification>
getContext :: (MonadDOM m) => IdentityCredentialRequestOptions -> m (Maybe IdentityCredentialRequestOptionsContext)
getContext self = liftDOM (((self ^. js "context") >>= fromJSValUnchecked))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identitycredentialrequestoptions-context IdentityCredentialRequestOptions.context specification>
getContextUnsafe :: (MonadDOM m, HasCallStack) => IdentityCredentialRequestOptions -> m IdentityCredentialRequestOptionsContext
getContextUnsafe self = liftDOM ((((self ^. js "context") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identitycredentialrequestoptions-context IdentityCredentialRequestOptions.context specification>
getContextUnchecked :: (MonadDOM m) => IdentityCredentialRequestOptions -> m IdentityCredentialRequestOptionsContext
getContextUnchecked self = liftDOM (((self ^. js "context") >>= fromJSValUnchecked))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identitycredentialrequestoptions-mode IdentityCredentialRequestOptions.mode specification>
setMode :: (MonadDOM m) => IdentityCredentialRequestOptions -> IdentityCredentialRequestOptionsMode -> m ()
setMode self val = liftDOM (void (self ^. jss "mode" (toJSVal val)))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identitycredentialrequestoptions-mode IdentityCredentialRequestOptions.mode specification>
getMode :: (MonadDOM m) => IdentityCredentialRequestOptions -> m (Maybe IdentityCredentialRequestOptionsMode)
getMode self = liftDOM (((self ^. js "mode") >>= fromJSValUnchecked))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identitycredentialrequestoptions-mode IdentityCredentialRequestOptions.mode specification>
getModeUnsafe :: (MonadDOM m, HasCallStack) => IdentityCredentialRequestOptions -> m IdentityCredentialRequestOptionsMode
getModeUnsafe self = liftDOM ((((self ^. js "mode") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identitycredentialrequestoptions-mode IdentityCredentialRequestOptions.mode specification>
getModeUnchecked :: (MonadDOM m) => IdentityCredentialRequestOptions -> m IdentityCredentialRequestOptionsMode
getModeUnchecked self = liftDOM (((self ^. js "mode") >>= fromJSValUnchecked))