module.exports=[19789,a=>{"use strict";var b=a.i(37936);a.i(70396);var c=a.i(73727),d=a.i(18558),e=a.i(20539),f=a.i(16349),g=a.i(31507),h=a.i(99435),i=a.i(63985),j=a.i(13095);let k="البريد الإلكتروني أو اسم المستخدم أو كلمة المرور غير صحيحة";async function l(a,b){let j,l;if(!(0,g.isSupabaseConfigured)())return{error:"تسجيل الدخول غير متاح حتى تتم إضافة مفتاح Supabase العام إلى إعدادات الخادم."};let m=h.loginSchema.safeParse({identifier:b.get("identifier"),password:b.get("password")});if(!m.success)return{error:m.error.issues[0]?.message??"بيانات الدخول غير صحيحة"};try{j=await (0,f.createServerSupabaseClient)()}catch{return{error:"إعدادات الاتصال بقاعدة البيانات غير مكتملة."}}if("email"===m.data.identifier.type)l={email:m.data.identifier.value,password:m.data.password};else if("phone"===m.data.identifier.type)l={phone:m.data.identifier.value,password:m.data.password};else try{let a=(0,e.createAdminSupabaseClient)(),{data:b,error:c}=await a.from("profiles").select("phone").eq("role","donor").eq("login_username",m.data.identifier.value).maybeSingle();if(c||!b?.phone)return{error:k};l={phone:b.phone,password:m.data.password}}catch{return{error:k}}let{data:n,error:o}=await j.auth.signInWithPassword(l);if(o||!n.user)return{error:"البريد الإلكتروني أو رقم الهاتف أو كلمة المرور غير صحيحة"};let{data:p,error:q}=await j.from("profiles").select("role, is_active, must_change_password").eq("id",n.user.id).single();return!q&&p&&["admin","donor"].includes(p.role)?p.is_active?void(await (0,i.writeAuditLog)({actorId:n.user.id,action:"auth.login",entityType:"profile",entityId:n.user.id,metadata:{role:p.role,identifierType:m.data.identifier.type}}),(0,d.revalidatePath)("/","layout"),(0,c.redirect)("admin"===p.role?"/admin":p.must_change_password?"/donor/security?required=1":"/donor")):(await j.auth.signOut(),{error:"هذا الحساب غير نشط. تواصل مع الإدارة."}):(await j.auth.signOut(),{error:"هذا الحساب غير مصرح له بالدخول."})}async function m(){let a=await (0,f.createServerSupabaseClient)(),{data:{user:b}}=await a.auth.getUser();await a.auth.signOut(),await (0,i.writeAuditLog)({actorId:b?.id,action:"auth.logout",entityType:"profile",entityId:b?.id}),(0,d.revalidatePath)("/","layout"),(0,c.redirect)("/login")}async function n(a,b){let c=String(b.get("password")??""),g=String(b.get("confirmation")??"");if(c.length<6)return{error:"يجب ألا تقل كلمة المرور عن 6 أحرف."};if(c!==g)return{error:"تأكيد كلمة المرور غير مطابق"};let h=await (0,f.createServerSupabaseClient)(),{data:{user:j}}=await h.auth.getUser();if(!j)return{error:"تعذر التحقق من الحساب الحالي"};let k=(0,e.createAdminSupabaseClient)(),{data:l,error:m}=await k.from("profiles").select("login_username,must_change_password").eq("id",j.id).maybeSingle();if(m||!l)return{error:"تعذر التحقق من حالة الحساب"};if(l.must_change_password&&l.login_username===c)return{error:"اختر كلمة مرور جديدة تختلف عن كلمة المرور الأولية"};let{error:n}=await h.auth.updateUser({password:c});if(n)return{error:"تعذر تحديث كلمة المرور"};let{error:o}=await k.from("profiles").update({must_change_password:!1}).eq("id",j.id);return o?{error:"تم تغيير كلمة المرور، لكن تعذر إكمال تحديث الحساب. أعد المحاولة بكلمة المرور الجديدة."}:(await (0,i.writeAuditLog)({actorId:j.id,action:"auth.password_changed",entityType:"profile",entityId:j.id}),(0,d.revalidatePath)("/donor","layout"),{success:"تم تحديث كلمة المرور"})}(0,j.ensureServerEntryExports)([l,m,n]),(0,b.registerServerReference)(l,"60d9ef4e5666d27358add43b675d99d16c393374f1",null),(0,b.registerServerReference)(m,"00129e6c5f1317b6a3b91c5ff6cb0623e46f0b10ba",null),(0,b.registerServerReference)(n,"608f91e66f2b12e46b90fb6e97db4b925580735f64",null),a.s(["changePasswordAction",0,n,"loginAction",0,l,"logoutAction",0,m])},43310,a=>{"use strict";var b=a.i(19789);a.s([],14429),a.i(14429),a.s(["60d9ef4e5666d27358add43b675d99d16c393374f1",()=>b.loginAction],43310)}];

//# sourceMappingURL=_0j1ulqt._.js.map