packages feed

ghcjs-dom-javascript-0.10.0.0: src/GHCJS/DOM/JSFFI/Generated/HMACGetSecretInput.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from fido-client-to-authenticator-protocol-v2.3 (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.HMACGetSecretInput
       (js_newHMACGetSecretInput, js_setSalt1, js_getSalt1, js_setSalt2, js_getSalt2, newHMACGetSecretInput, setSalt1, getSalt1, setSalt2, getSalt2, getSalt2Unsafe, getSalt2Unchecked, HMACGetSecretInput(..), gTypeHMACGetSecretInput)
       where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import GHCJS.Types (JSVal, JSString)
import GHCJS.Foreign (jsUndefined, jsNull)
import GHCJS.DOM.Types
import qualified GHCJS.DOM.Types as Types
import GHCJS.DOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import GHCJS.DOM.JSFFI.Generated.Enums

foreign import javascript safe "(($1) => { return ({\"salt1\": $1}); })"
        js_newHMACGetSecretInput :: ArrayBuffer -> IO HMACGetSecretInput
-- | <https://fidoalliance.org/specs/fido-v2.3-ps-20260226/fido-client-to-authenticator-protocol-v2.3-ps-20260226.html#dictdef-hmacgetsecretinput HMACGetSecretInput specification>
newHMACGetSecretInput :: (MonadDOM m, IsArrayBuffer salt1) => salt1 -> m HMACGetSecretInput
newHMACGetSecretInput salt1 = liftDOM ((js_newHMACGetSecretInput (Types.toArrayBuffer salt1)))

foreign import javascript safe "(($1, $2) => { $1[\"salt1\"] = $2; })"
        js_setSalt1 :: HMACGetSecretInput -> ArrayBuffer -> IO ()
-- | <https://fidoalliance.org/specs/fido-v2.3-ps-20260226/fido-client-to-authenticator-protocol-v2.3-ps-20260226.html#dom-hmacgetsecretinput-salt1 HMACGetSecretInput.salt1 specification>
setSalt1 :: (MonadDOM m, IsArrayBuffer val) => HMACGetSecretInput -> val -> m ()
setSalt1 self val = liftDOM (void ((js_setSalt1 (self) (Types.toArrayBuffer val))))

foreign import javascript unsafe "(($1) => { return $1[\"salt1\"]; })"
        js_getSalt1 :: HMACGetSecretInput -> IO ArrayBuffer
-- | <https://fidoalliance.org/specs/fido-v2.3-ps-20260226/fido-client-to-authenticator-protocol-v2.3-ps-20260226.html#dom-hmacgetsecretinput-salt1 HMACGetSecretInput.salt1 specification>
getSalt1 :: (MonadDOM m) => HMACGetSecretInput -> m ArrayBuffer
getSalt1 self = liftDOM ((js_getSalt1 (self)))

foreign import javascript safe "(($1, $2) => { $1[\"salt2\"] = $2; })"
        js_setSalt2 :: HMACGetSecretInput -> ArrayBuffer -> IO ()
-- | <https://fidoalliance.org/specs/fido-v2.3-ps-20260226/fido-client-to-authenticator-protocol-v2.3-ps-20260226.html#dom-hmacgetsecretinput-salt2 HMACGetSecretInput.salt2 specification>
setSalt2 :: (MonadDOM m, IsArrayBuffer val) => HMACGetSecretInput -> val -> m ()
setSalt2 self val = liftDOM (void ((js_setSalt2 (self) (Types.toArrayBuffer val))))

foreign import javascript unsafe "(($1) => { return $1[\"salt2\"]; })"
        js_getSalt2 :: HMACGetSecretInput -> IO JSVal
-- | <https://fidoalliance.org/specs/fido-v2.3-ps-20260226/fido-client-to-authenticator-protocol-v2.3-ps-20260226.html#dom-hmacgetsecretinput-salt2 HMACGetSecretInput.salt2 specification>
getSalt2 :: (MonadDOM m) => HMACGetSecretInput -> m (Maybe ArrayBuffer)
getSalt2 self = liftDOM (((js_getSalt2 (self)) >>= fromJSValUnchecked))

-- | <https://fidoalliance.org/specs/fido-v2.3-ps-20260226/fido-client-to-authenticator-protocol-v2.3-ps-20260226.html#dom-hmacgetsecretinput-salt2 HMACGetSecretInput.salt2 specification>
getSalt2Unsafe :: (MonadDOM m, HasCallStack) => HMACGetSecretInput -> m ArrayBuffer
getSalt2Unsafe self = liftDOM ((((js_getSalt2 (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://fidoalliance.org/specs/fido-v2.3-ps-20260226/fido-client-to-authenticator-protocol-v2.3-ps-20260226.html#dom-hmacgetsecretinput-salt2 HMACGetSecretInput.salt2 specification>
getSalt2Unchecked :: (MonadDOM m) => HMACGetSecretInput -> m ArrayBuffer
getSalt2Unchecked self = liftDOM ((pFromJSVal <$> (js_getSalt2 (self))))