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.

13 lines (12 loc) 809 B
import { createElement, useState } from 'react'; import { buttonClass } from '../utils.js'; import { InteractionForm } from './interaction_form.js'; export function MagicLinkButton({ uid, csrfToken, basePath, channel, pendingChildren = 'Enviando…', children = 'Enviar link de login', className, disabled, ...rest }) { const [pending, setPending] = useState(false); return createElement(InteractionForm, { uid, step: 'magic', csrfToken, basePath, onSubmit: () => setPending(true) }, channel ? createElement('input', { type: 'hidden', name: 'channel', value: channel }) : null, createElement('button', { type: 'submit', disabled: disabled || pending, className: buttonClass('authkit-button--ghost', className), ...rest, }, pending ? pendingChildren : children)); }