Props interface for search form components

Used by components that implement GitHub username search functionality. Provides consistent prop structure for search-related components.

SearchFormProps

interface SearchFormProps {
    className?: string;
    dataTestId?: string;
    isLoading?: boolean;
    onSubmit: (e: FormEvent) => void;
    onSuggestionSelect: (username: string) => void;
    onUsernameChange: (username: string) => void;
    placeholder?: string;
    username: string;
}

Properties

className?: string

Optional CSS class names for styling

dataTestId?: string

Optional data-testid for testing

isLoading?: boolean

Optional loading state indicator

onSubmit: (e: FormEvent) => void

Form submission handler

Type declaration

    • (e: FormEvent): void
    • Parameters

      • e: FormEvent

        React form event

      Returns void

onSuggestionSelect: (username: string) => void

Callback function triggered when suggestion is selected

Type declaration

    • (username: string): void
    • Parameters

      • username: string

        The selected username

      Returns void

onUsernameChange: (username: string) => void

Callback function triggered when username input changes

Type declaration

    • (username: string): void
    • Parameters

      • username: string

        The new username value

      Returns void

placeholder?: string

Placeholder text for the search input

username: string

Current username value in the search input