diff --git a/resources/js/components/two-factor-setup-modal.tsx b/resources/js/components/two-factor-setup-modal.tsx index 317149ea1..3481f2d85 100644 --- a/resources/js/components/two-factor-setup-modal.tsx +++ b/resources/js/components/two-factor-setup-modal.tsx @@ -17,9 +17,10 @@ import { OTP_MAX_LENGTH } from '@/hooks/use-two-factor-auth'; import { confirm } from '@/routes/two-factor'; import { Form } from '@inertiajs/react'; import { REGEXP_ONLY_DIGITS } from 'input-otp'; -import { Check, Copy, Loader2, ScanLine } from 'lucide-react'; +import { Check, Copy, ScanLine } from 'lucide-react'; import { useCallback, useEffect, useMemo, useRef, useState } from 'react'; import AlertError from './alert-error'; +import { Spinner } from './ui/spinner'; function GridScanIcon() { return ( @@ -79,7 +80,7 @@ function TwoFactorSetupStep({ }} /> ) : ( - + )} @@ -102,7 +103,7 @@ function TwoFactorSetupStep({
{!manualSetupKey ? (
- +
) : ( <> diff --git a/resources/js/components/ui/spinner.tsx b/resources/js/components/ui/spinner.tsx new file mode 100644 index 000000000..a70e713c5 --- /dev/null +++ b/resources/js/components/ui/spinner.tsx @@ -0,0 +1,16 @@ +import { Loader2Icon } from "lucide-react" + +import { cn } from "@/lib/utils" + +function Spinner({ className, ...props }: React.ComponentProps<"svg">) { + return ( + + ) +} + +export { Spinner } diff --git a/resources/js/pages/auth/confirm-password.tsx b/resources/js/pages/auth/confirm-password.tsx index fe0ebc5aa..b9ae2690d 100644 --- a/resources/js/pages/auth/confirm-password.tsx +++ b/resources/js/pages/auth/confirm-password.tsx @@ -2,10 +2,10 @@ import InputError from '@/components/input-error'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; +import { Spinner } from '@/components/ui/spinner'; import AuthLayout from '@/layouts/auth-layout'; import { store } from '@/routes/password/confirm'; import { Form, Head } from '@inertiajs/react'; -import { LoaderCircle } from 'lucide-react'; export default function ConfirmPassword() { return ( @@ -38,9 +38,7 @@ export default function ConfirmPassword() { disabled={processing} data-test="confirm-password-button" > - {processing && ( - - )} + {processing && } Confirm password
diff --git a/resources/js/pages/auth/login.tsx b/resources/js/pages/auth/login.tsx index d52765bd4..44084d1a5 100644 --- a/resources/js/pages/auth/login.tsx +++ b/resources/js/pages/auth/login.tsx @@ -5,11 +5,11 @@ import { Button } from '@/components/ui/button'; import { Checkbox } from '@/components/ui/checkbox'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; +import { Spinner } from '@/components/ui/spinner'; import AuthLayout from '@/layouts/auth-layout'; import { register } from '@/routes'; import { request } from '@/routes/password'; import { Form, Head } from '@inertiajs/react'; -import { LoaderCircle } from 'lucide-react'; interface LoginProps { status?: string; @@ -88,9 +88,7 @@ export default function Login({ status, canResetPassword }: LoginProps) { disabled={processing} data-test="login-button" > - {processing && ( - - )} + {processing && } Log in diff --git a/resources/js/pages/auth/register.tsx b/resources/js/pages/auth/register.tsx index 4015acae3..77746f2c3 100644 --- a/resources/js/pages/auth/register.tsx +++ b/resources/js/pages/auth/register.tsx @@ -1,13 +1,13 @@ import RegisteredUserController from '@/actions/App/Http/Controllers/Auth/RegisteredUserController'; import { login } from '@/routes'; import { Form, Head } from '@inertiajs/react'; -import { LoaderCircle } from 'lucide-react'; import InputError from '@/components/input-error'; import TextLink from '@/components/text-link'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; +import { Spinner } from '@/components/ui/spinner'; import AuthLayout from '@/layouts/auth-layout'; export default function Register() { @@ -96,9 +96,7 @@ export default function Register() { tabIndex={5} data-test="register-user-button" > - {processing && ( - - )} + {processing && } Create account diff --git a/resources/js/pages/auth/reset-password.tsx b/resources/js/pages/auth/reset-password.tsx index c779977c4..d8a60d11a 100644 --- a/resources/js/pages/auth/reset-password.tsx +++ b/resources/js/pages/auth/reset-password.tsx @@ -1,11 +1,11 @@ import NewPasswordController from '@/actions/App/Http/Controllers/Auth/NewPasswordController'; import { Form, Head } from '@inertiajs/react'; -import { LoaderCircle } from 'lucide-react'; import InputError from '@/components/input-error'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; +import { Spinner } from '@/components/ui/spinner'; import AuthLayout from '@/layouts/auth-layout'; interface ResetPasswordProps { @@ -83,9 +83,7 @@ export default function ResetPassword({ token, email }: ResetPasswordProps) { disabled={processing} data-test="reset-password-button" > - {processing && ( - - )} + {processing && } Reset password diff --git a/resources/js/pages/auth/verify-email.tsx b/resources/js/pages/auth/verify-email.tsx index 050c05563..0dbc2af3c 100644 --- a/resources/js/pages/auth/verify-email.tsx +++ b/resources/js/pages/auth/verify-email.tsx @@ -2,10 +2,10 @@ import EmailVerificationNotificationController from '@/actions/App/Http/Controllers/Auth/EmailVerificationNotificationController'; import { logout } from '@/routes'; import { Form, Head } from '@inertiajs/react'; -import { LoaderCircle } from 'lucide-react'; import TextLink from '@/components/text-link'; import { Button } from '@/components/ui/button'; +import { Spinner } from '@/components/ui/spinner'; import AuthLayout from '@/layouts/auth-layout'; export default function VerifyEmail({ status }: { status?: string }) { @@ -30,9 +30,7 @@ export default function VerifyEmail({ status }: { status?: string }) { {({ processing }) => ( <>