{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "forgot-password-page",
  "title": "Forgot Password Page",
  "description": "A forgot password recovery page with email submission and confirmation state, including helpful tips and support contact.",
  "dependencies": [
    "lucide-react"
  ],
  "registryDependencies": [
    "https://ui.eindev.ir/r/glass-card.json",
    "https://ui.eindev.ir/r/glass-button.json",
    "https://ui.eindev.ir/r/glass-input.json"
  ],
  "files": [
    {
      "path": "registry/blocks/auth/forgot-password-page.tsx",
      "content": "\"use client\"\n\nimport { useState } from \"react\"\nimport { Mail, ArrowLeft, Send } from \"lucide-react\"\nimport { GlassCard, GlassCardContent, GlassCardDescription, GlassCardHeader, GlassCardTitle } from \"@/registry/liquid-glass/glass-card\"\nimport { GlassInput } from \"@/registry/liquid-glass/glass-input\"\nimport { GlassButton } from \"@/registry/liquid-glass/glass-button\"\nimport { Label } from \"@/components/ui/label\"\n\nexport default function ForgotPasswordPageBlock() {\n  const [email, setEmail] = useState(\"\")\n  const [isSubmitted, setIsSubmitted] = useState(false)\n  const [isLoading, setIsLoading] = useState(false)\n\n  const handleSubmit = async (e: React.FormEvent) => {\n    e.preventDefault()\n    setIsLoading(true)\n    // Simulate API call\n    await new Promise((resolve) => setTimeout(resolve, 2000))\n    setIsLoading(false)\n    setIsSubmitted(true)\n  }\n\n  const handleBack = () => {\n    setIsSubmitted(false)\n    setEmail(\"\")\n  }\n\n  return (\n    <div className=\"h-full flex py-14 items-center justify-center bg-linear-to-br from-slate-950 via-purple-900 to-slate-950 px-4\">\n      <GlassCard className=\"w-full max-w-md\">\n        {!isSubmitted ? (\n          <>\n            <GlassCardHeader className=\"space-y-2 text-center\">\n              <div className=\"flex justify-center mb-4\">\n                <div className=\"p-3 rounded-lg bg-linear-to-br from-orange-400 to-red-500\">\n                  <Mail className=\"h-6 w-6 text-white\" />\n                </div>\n              </div>\n              <GlassCardTitle className=\"text-2xl\">Forgot Password?</GlassCardTitle>\n              <GlassCardDescription>\n                No problem! Enter your email and we&apos;ll send you a link to reset your password.\n              </GlassCardDescription>\n            </GlassCardHeader>\n\n            <GlassCardContent>\n              <form onSubmit={handleSubmit} className=\"space-y-5\">\n                {/* Email Input */}\n                <div className=\"space-y-2\">\n                  <Label htmlFor=\"email\" className=\"text-white/80\">\n                    Email Address\n                  </Label>\n                  <GlassInput\n                    id=\"email\"\n                    type=\"email\"\n                    placeholder=\"you@example.com\"\n                    value={email}\n                    onChange={(e) => setEmail(e.target.value)}\n                    required\n                    className=\"bg-white/5\"\n                  />\n                  <p className=\"text-xs text-white/50 mt-1\">\n                    We&apos;ll send a password reset link to this email address.\n                  </p>\n                </div>\n\n                {/* Submit Button */}\n                <GlassButton type=\"submit\" variant=\"primary\" className=\"w-full\" disabled={isLoading}>\n                  {isLoading ? (\n                    <>\n                      <div className=\"h-4 w-4 rounded-full border-2 border-white/30 border-t-white animate-spin mr-2\" />\n                      Sending...\n                    </>\n                  ) : (\n                    <>\n                      <Send className=\"h-4 w-4 mr-2\" />\n                      Send Reset Link\n                    </>\n                  )}\n                </GlassButton>\n\n                {/* Back to Login */}\n                <button\n                  type=\"button\"\n                  onClick={handleBack}\n                  className=\"w-full flex items-center justify-center text-sm text-cyan-400 hover:text-cyan-300 transition-colors\"\n                >\n                  <ArrowLeft className=\"h-4 w-4 mr-2\" />\n                  Back to Sign In\n                </button>\n              </form>\n            </GlassCardContent>\n          </>\n        ) : (\n          <>\n            <GlassCardHeader className=\"space-y-2 text-center\">\n              <div className=\"flex justify-center mb-4\">\n                <div className=\"p-3 rounded-lg bg-linear-to-br from-green-400 to-emerald-500\">\n                  <Mail className=\"h-6 w-6 text-white\" />\n                </div>\n              </div>\n              <GlassCardTitle className=\"text-2xl\">Check Your Email</GlassCardTitle>\n              <GlassCardDescription>\n                We&apos;ve sent a password reset link to{\" \"}\n                <span className=\"font-medium text-white/90\">{email}</span>\n              </GlassCardDescription>\n            </GlassCardHeader>\n\n            <GlassCardContent className=\"space-y-6\">\n              {/* Success Message */}\n              <div className=\"p-4 rounded-lg bg-green-500/10 border border-green-500/20\">\n                <p className=\"text-sm text-green-400\">\n                  Please check your email and follow the instructions to reset your password. The link expires in 24 hours.\n                </p>\n              </div>\n\n              {/* Helpful Tips */}\n              <div className=\"space-y-3\">\n                <h3 className=\"text-sm font-medium text-white/80\">Didn&apos;t receive the email?</h3>\n                <ul className=\"space-y-2 text-xs text-white/60\">\n                  <li className=\"flex gap-2\">\n                    <span className=\"text-cyan-400\">•</span>\n                    <span>Check your spam or junk folder</span>\n                  </li>\n                  <li className=\"flex gap-2\">\n                    <span className=\"text-cyan-400\">•</span>\n                    <span>Make sure you entered the correct email address</span>\n                  </li>\n                  <li className=\"flex gap-2\">\n                    <span className=\"text-cyan-400\">•</span>\n                    <span>Try using a different email address if you have one on file</span>\n                  </li>\n                </ul>\n              </div>\n\n              {/* Resend Option */}\n              <div className=\"flex gap-2\">\n                <GlassButton\n                  type=\"button\"\n                  variant=\"outline\"\n                  className=\"flex-1\"\n                  onClick={handleBack}\n                >\n                  Try Different Email\n                </GlassButton>\n                <GlassButton\n                  type=\"button\"\n                  variant=\"primary\"\n                  className=\"flex-1\"\n                  disabled={isLoading}\n                  onClick={handleSubmit}\n                >\n                  {isLoading ? (\n                    <div className=\"h-4 w-4 rounded-full border-2 border-white/30 border-t-white animate-spin\" />\n                  ) : (\n                    \"Resend Email\"\n                  )}\n                </GlassButton>\n              </div>\n\n              {/* Contact Support */}\n              <p className=\"text-center text-xs text-white/50 pt-4 border-t border-white/10\">\n                Still need help?{\" \"}\n                <a href=\"#\" className=\"text-cyan-400 hover:text-cyan-300 transition-colors\">\n                  Contact support\n                </a>\n              </p>\n            </GlassCardContent>\n          </>\n        )}\n      </GlassCard>\n    </div>\n  )\n}\n",
      "type": "registry:block",
      "target": "app/auth/forgot-password/page.tsx"
    }
  ],
  "type": "registry:block"
}