packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/IdentityProviderRequestOptions.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.IdentityProviderRequestOptions
       (newIdentityProviderRequestOptions, setLoginHint, getLoginHint, getLoginHintUnsafe, getLoginHintUnchecked, setDomainHint, getDomainHint, getDomainHintUnsafe, getDomainHintUnchecked, setFields, getFields, getFieldsUnsafe, getFieldsUnchecked, setParams, getParams, IdentityProviderRequestOptions(..), gTypeIdentityProviderRequestOptions)
       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-identityproviderrequestoptions IdentityProviderRequestOptions specification>
newIdentityProviderRequestOptions :: (MonadDOM m, ToJSString configURL, ToJSString clientId) => configURL -> clientId -> m IdentityProviderRequestOptions
newIdentityProviderRequestOptions configURL clientId = liftDOM ((((new (jsg "Object") () >>= \o -> (o ^. jss "configURL" (toJSVal configURL)) P.>> (o ^. jss "clientId" (toJSVal clientId)) P.>> P.return o)) >>= fromJSValUnchecked))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-loginhint IdentityProviderRequestOptions.loginHint specification>
setLoginHint :: (MonadDOM m, ToJSString val) => IdentityProviderRequestOptions -> val -> m ()
setLoginHint self val = liftDOM (void (self ^. jss "loginHint" (toJSVal val)))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-loginhint IdentityProviderRequestOptions.loginHint specification>
getLoginHint :: (MonadDOM m, FromJSString result) => IdentityProviderRequestOptions -> m (Maybe result)
getLoginHint self = liftDOM (((self ^. js "loginHint") >>= fromMaybeJSString))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-loginhint IdentityProviderRequestOptions.loginHint specification>
getLoginHintUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => IdentityProviderRequestOptions -> m result
getLoginHintUnsafe self = liftDOM ((((self ^. js "loginHint") >>= fromMaybeJSString) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-loginhint IdentityProviderRequestOptions.loginHint specification>
getLoginHintUnchecked :: (MonadDOM m, FromJSString result) => IdentityProviderRequestOptions -> m result
getLoginHintUnchecked self = liftDOM (((self ^. js "loginHint") >>= fromJSValUnchecked))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-domainhint IdentityProviderRequestOptions.domainHint specification>
setDomainHint :: (MonadDOM m, ToJSString val) => IdentityProviderRequestOptions -> val -> m ()
setDomainHint self val = liftDOM (void (self ^. jss "domainHint" (toJSVal val)))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-domainhint IdentityProviderRequestOptions.domainHint specification>
getDomainHint :: (MonadDOM m, FromJSString result) => IdentityProviderRequestOptions -> m (Maybe result)
getDomainHint self = liftDOM (((self ^. js "domainHint") >>= fromMaybeJSString))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-domainhint IdentityProviderRequestOptions.domainHint specification>
getDomainHintUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => IdentityProviderRequestOptions -> m result
getDomainHintUnsafe self = liftDOM ((((self ^. js "domainHint") >>= fromMaybeJSString) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-domainhint IdentityProviderRequestOptions.domainHint specification>
getDomainHintUnchecked :: (MonadDOM m, FromJSString result) => IdentityProviderRequestOptions -> m result
getDomainHintUnchecked self = liftDOM (((self ^. js "domainHint") >>= fromJSValUnchecked))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-fields IdentityProviderRequestOptions.fields specification>
setFields :: (MonadDOM m, ToJSString val) => IdentityProviderRequestOptions -> [val] -> m ()
setFields self val = liftDOM (void (self ^. jss "fields" (toJSVal val)))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-fields IdentityProviderRequestOptions.fields specification>
getFields :: (MonadDOM m, FromJSString result) => IdentityProviderRequestOptions -> m (Maybe [result])
getFields self = liftDOM (((self ^. js "fields") >>= fromJSValUnchecked))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-fields IdentityProviderRequestOptions.fields specification>
getFieldsUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => IdentityProviderRequestOptions -> m [result]
getFieldsUnsafe self = liftDOM ((((self ^. js "fields") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-fields IdentityProviderRequestOptions.fields specification>
getFieldsUnchecked :: (MonadDOM m, FromJSString result) => IdentityProviderRequestOptions -> m [result]
getFieldsUnchecked self = liftDOM (((self ^. js "fields") >>= fromJSValUnchecked))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-params IdentityProviderRequestOptions.params specification>
setParams :: (MonadDOM m) => IdentityProviderRequestOptions -> JSVal -> m ()
setParams self val = liftDOM (void (self ^. jss "params" (toJSVal val)))

-- | <https://w3c-fedid.github.io/FedCM/#dom-identityproviderrequestoptions-params IdentityProviderRequestOptions.params specification>
getParams :: (MonadDOM m) => IdentityProviderRequestOptions -> m JSVal
getParams self = liftDOM (self ^. js "params")