UNPKG

@adonis-agora/authkit-react

Version:

Frontend ergonomics over AuthKit for AdonisJS + Inertia + React apps: a typed useAuth() hook, role-gating hooks and gating components.

20 lines (19 loc) 750 B
import { useCallback, useState } from 'react'; import { runPasskeyAssertion } from '../passkey/sudo.js'; export function usePasskeyAssertion(options) { const { optionsUrl, actionUrl, csrfToken, returnTo } = options; const [running, setRunning] = useState(false); const [error, setError] = useState(null); const run = useCallback(async () => { setError(null); setRunning(true); try { await runPasskeyAssertion({ optionsUrl, actionUrl, csrfToken, returnTo }); } catch (err) { setError(err instanceof Error ? err : new Error(String(err))); setRunning(false); } }, [optionsUrl, actionUrl, csrfToken, returnTo]); return { run, running, error }; }