EmailSignInWidget class
A widget that provides email-based authentication functionality.
The widget can manage its own authentication state, or you can provide an external controller for advanced use cases like sharing state across multiple widgets or integrating with state management solutions.
When controller is not provided, you must supply client and optionally startScreen, onAuthenticated, and onError callbacks. When controller is provided, those parameters are handled by the controller itself.
Example with managed state:
EmailSignInWidget(
client: client,
onAuthenticated: () => Navigator.push(...),
onError: (error) => showSnackBar(...),
)
Example with external controller:
final controller = EmailAuthController(
client: client,
onAuthenticated: ...,
);
EmailSignInWidget(
controller: controller,
)
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- EmailSignInWidget
Constructors
-
EmailSignInWidget({EmailAuthController? controller, ServerpodClientShared? client, EmailFlowScreen startScreen = EmailFlowScreen.startRegistration, VerificationCodeConfig verificationCodeConfig = const VerificationCodeConfig(), void emailValidation(String email)?, List<
PasswordRequirement> ? passwordRequirements, VoidCallback? onAuthenticated, dynamic onError(Object error)?, VoidCallback? onTermsAndConditionsPressed, VoidCallback? onPrivacyPolicyPressed, Key? key}) -
Creates an email sign-in widget.
const
Properties
- client → ServerpodClientShared?
-
The Serverpod client instance.
final
- controller → EmailAuthController?
-
Controls the authentication state and behavior.
final
- emailValidation → void Function(String email)?
-
The validation function to use for email validation.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- onAuthenticated → VoidCallback?
-
Callback when authentication is successful.
final
- onError → dynamic Function(Object error)?
-
Callback when an error occurs during authentication.
final
- onPrivacyPolicyPressed → VoidCallback?
-
Optional callback to call when the privacy policy button is pressed.
final
- onTermsAndConditionsPressed → VoidCallback?
-
Optional callback to call when the terms and conditions button is pressed.
final
-
passwordRequirements
→ List<
PasswordRequirement> ? -
Optional list of password requirements to display to the user.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- startScreen → EmailFlowScreen
-
The initial screen to display.
final
- verificationCodeConfig → VerificationCodeConfig
-
Configuration for the verification code input.
final
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< EmailSignInWidget> -
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