import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import '../auth_provider.dart'; class ForgotPasswordScreen extends StatefulWidget { @override State createState() => _ForgotPasswordScreenState(); } class _ForgotPasswordScreenState extends State { final _formKey = GlobalKey(); String email = ''; String message = ''; @override Widget build(BuildContext context) { final auth = Provider.of(context); return Scaffold( appBar: AppBar(title: Text("Forgot Password")), body: Padding( padding: const EdgeInsets.all(24), child: Form( key: _formKey, child: ListView( children: [ Text("Reset Password", style: TextStyle(fontSize: 24, fontWeight: FontWeight.bold)), SizedBox(height: 32), TextFormField( decoration: InputDecoration(labelText: "Email"), keyboardType: TextInputType.emailAddress, onChanged: (val) => email = val, validator: (val) => val == null || val.isEmpty ? "Enter your email" : null, ), SizedBox(height: 24), ElevatedButton( onPressed: () { if (_formKey.currentState!.validate()) { auth.resetPassword(email); setState(() => message = "Reset link sent to $email"); } }, child: Text("Send Reset Link"), ), if (message.isNotEmpty) Padding( padding: const EdgeInsets.only(top: 12), child: Text(message, style: TextStyle(color: Colors.green)), ), SizedBox(height: 24), TextButton( onPressed: () => Navigator.pushReplacementNamed(context, '/'), child: Text("Back to Login"), ), ], ), ), ), ); } }