SignInForm class

A multi-step sign-in form wrapped in an AuthCard.

Supports social login, email/password authentication, and passkey (visual only). Social providers are auto-discovered from the server's ClientConfig unless explicitly overridden via socialProviders.

Inheritance

Constructors

SignInForm({AuthNotifier? auth, VoidCallback? onSuccess, VoidCallback? onSignUpTap, String? signUpUrl, VoidCallback? onForgotPasswordTap, String? forgotPasswordUrl, List<SocialProvider>? socialProviders, ValueChanged<String>? onSocialLogin, SocialButtonLayout socialLayout = SocialButtonLayout.grid, bool? showPasskey, PasskeyAuthenticator? passkeyAuthenticator, String titleText = 'Sign in', String descriptionText = 'Enter your email to continue', String emailLabel = 'Email', String continueLabel = 'Continue', String signInLabel = 'Sign in', String forgotPasswordLabel = 'Forgot password?', String signUpLabel = "Don't have an account? Sign up", AuthCardAlign align = AuthCardAlign.center, Key? key})
const

Properties

align AuthCardAlign
Title + description text alignment within the AuthCard. Defaults to AuthCardAlign.center; pass AuthCardAlign.left for a flush-left layout that matches a product-style sign-in (e.g. shadcn).
final
auth AuthNotifier?
Optional injected AuthNotifier. When null, the form resolves the notifier from the surrounding AuthProvider. Primarily a testing seam so widget tests can drive the form without mounting an AuthProvider.
final
continueLabel String
Continue button label (default: "Continue").
final
descriptionText String
Card description (default: "Enter your email to continue").
final
emailLabel String
Email field label (default: "Email").
final
forgotPasswordLabel String
Forgot-password link label (default: "Forgot password?").
final
forgotPasswordUrl String?
URL to navigate to for forgot password (used if onForgotPasswordTap is null).
final
hashCode int
The hash code for this object.
no setterinherited
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
Optional logo widget displayed above the title.
final
onForgotPasswordTap VoidCallback?
Called when the user taps "Forgot password?".
final
onSignUpTap VoidCallback?
Called when the user taps the "Sign up" link.
final
onSocialLogin ValueChanged<String>?
Called when a social login button is tapped.
final
onSuccess VoidCallback?
Called when sign-in completes successfully.
final
passkeyAuthenticator PasskeyAuthenticator?
Authenticator used for the passkey ceremony. Defaults to defaultPasskeyAuthenticator (Web-only at the moment).
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
showPasskey bool?
Whether to show the passkey option.
final
signInLabel String
Sign-in button label (default: "Sign in").
final
signUpLabel String
Sign-up link label (default: "Don't have an account? Sign up").
final
signUpUrl String?
URL to navigate to for sign-up (used if onSignUpTap is null).
final
socialLayout SocialButtonLayout
Layout for social buttons (default: SocialButtonLayout.grid).
final
socialProviders List<SocialProvider>?
Override auto-detected social providers.
final
titleText String
Card title (default: "Sign in").
final

Methods

createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() State<SignInForm>
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited