Home / File/ user-auth-form.tsx — ui Source File

user-auth-form.tsx — ui Source File

Architecture documentation for user-auth-form.tsx, a tsx file in the ui codebase. 7 imports, 0 dependents.

File tsx DocumentationAtlas Changelog 7 imports 1 functions

Entity Profile

Dependency Diagram

graph LR
  15088849_46d5_fdf2_d36e_f9d9117ec340["user-auth-form.tsx"]
  1d141819_425e_b5fd_4c8e_32f7c6a42cf2["react"]
  15088849_46d5_fdf2_d36e_f9d9117ec340 --> 1d141819_425e_b5fd_4c8e_32f7c6a42cf2
  79081a1f_55a3_945a_fb8c_d53d6d3eab81["utils"]
  15088849_46d5_fdf2_d36e_f9d9117ec340 --> 79081a1f_55a3_945a_fb8c_d53d6d3eab81
  aae3c3f1_230a_9c11_a663_8bbc3f0ad054["icons"]
  15088849_46d5_fdf2_d36e_f9d9117ec340 --> aae3c3f1_230a_9c11_a663_8bbc3f0ad054
  57e86e45_ac6e_7278_be08_9092724e8401["button"]
  15088849_46d5_fdf2_d36e_f9d9117ec340 --> 57e86e45_ac6e_7278_be08_9092724e8401
  169af77a_46c3_8fec_4801_f34a0f1a3471["field"]
  15088849_46d5_fdf2_d36e_f9d9117ec340 --> 169af77a_46c3_8fec_4801_f34a0f1a3471
  80cf663d_a411_487c_d69e_ac9d405cd2ec["input"]
  15088849_46d5_fdf2_d36e_f9d9117ec340 --> 80cf663d_a411_487c_d69e_ac9d405cd2ec
  fbc10cc4_98a7_35a6_e46c_d9966aba9ad2["spinner"]
  15088849_46d5_fdf2_d36e_f9d9117ec340 --> fbc10cc4_98a7_35a6_e46c_d9966aba9ad2
  style 15088849_46d5_fdf2_d36e_f9d9117ec340 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

"use client"

import * as React from "react"

import { cn } from "@/lib/utils"
import { Icons } from "@/components/icons"
import { Button } from "@/registry/new-york-v4/ui/button"
import {
  Field,
  FieldGroup,
  FieldLabel,
  FieldSeparator,
} from "@/registry/new-york-v4/ui/field"
import { Input } from "@/registry/new-york-v4/ui/input"
import { Spinner } from "@/registry/new-york-v4/ui/spinner"

export function UserAuthForm({
  className,
  ...props
}: React.ComponentProps<"div">) {
  const [isLoading, setIsLoading] = React.useState<boolean>(false)

  async function onSubmit(event: React.SyntheticEvent) {
    event.preventDefault()
    setIsLoading(true)

    setTimeout(() => {
      setIsLoading(false)
    }, 3000)
  }

  return (
    <div className={cn("grid gap-6", className)} {...props}>
      <form onSubmit={onSubmit}>
        <FieldGroup>
          <Field>
            <FieldLabel className="sr-only" htmlFor="email">
              Email
            </FieldLabel>
            <Input
              id="email"
              placeholder="name@example.com"
              type="email"
              autoCapitalize="none"
              autoComplete="email"
              autoCorrect="off"
              disabled={isLoading}
            />
          </Field>
          <Field>
            <Button disabled={isLoading}>
              {isLoading && <Spinner />}
              Sign In with Email
            </Button>
          </Field>
        </FieldGroup>
      </form>
      <FieldSeparator>Or continue with</FieldSeparator>
      <Button variant="outline" type="button" disabled={isLoading}>
        {isLoading ? <Spinner /> : <Icons.gitHub className="mr-2 h-4 w-4" />}{" "}
        GitHub
      </Button>
    </div>
  )
}

Subdomains

Functions

Dependencies

  • button
  • field
  • icons
  • input
  • react
  • spinner
  • utils

Frequently Asked Questions

What does user-auth-form.tsx do?
user-auth-form.tsx is a source file in the ui codebase, written in tsx. It belongs to the DocumentationAtlas domain, Changelog subdomain.
What functions are defined in user-auth-form.tsx?
user-auth-form.tsx defines 1 function(s): UserAuthForm.
What does user-auth-form.tsx depend on?
user-auth-form.tsx imports 7 module(s): button, field, icons, input, react, spinner, utils.
Where is user-auth-form.tsx in the architecture?
user-auth-form.tsx is located at apps/v4/app/(app)/examples/authentication/components/user-auth-form.tsx (domain: DocumentationAtlas, subdomain: Changelog, directory: apps/v4/app/(app)/examples/authentication/components).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free