"use strict";(()=>{var e={};e.id=3605,e.ids=[3605],e.modules={72934:e=>{e.exports=require("next/dist/client/components/action-async-storage.external.js")},54580:e=>{e.exports=require("next/dist/client/components/request-async-storage.external.js")},45869:e=>{e.exports=require("next/dist/client/components/static-generation-async-storage.external.js")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},78893:e=>{e.exports=require("buffer")},84770:e=>{e.exports=require("crypto")},76162:e=>{e.exports=require("stream")},21764:e=>{e.exports=require("util")},11542:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>f,patchFetch:()=>h,requestAsyncStorage:()=>c,routeModule:()=>p,serverHooks:()=>w,staticGenerationAsyncStorage:()=>m});var a={};r.r(a),r.d(a,{GET:()=>l});var s=r(49303),n=r(88716),i=r(60670),d=r(87070),u=r(8194),o=r(73218);async function l(e){try{let{superAdmin:t,error:r}=await (0,o.WC)("withdrawals:read");if(r)return r;let{searchParams:a}=new URL(e.url),s=a.get("status"),n=parseInt(a.get("page")||"1"),i=parseInt(a.get("limit")||"20"),l=(n-1)*i,p={};s&&"all"!==s&&(p.status=s);let[c,m,w]=await Promise.all([u._.withdrawalRequest.findMany({where:p,orderBy:{createdAt:"desc"},include:{tenant:{select:{name:!0,slug:!0}}},take:i,skip:l}),u._.withdrawalRequest.count({where:p}),u._.withdrawalRequest.groupBy({by:["status"],_count:!0,_sum:{amount:!0}})]),f={};return w.forEach(e=>{f[e.status]={count:e._count,total:Number(e._sum.amount||0)}}),d.NextResponse.json({withdrawals:c.map(e=>({id:e.id,tenantName:e.tenant.name,tenantSlug:e.tenant.slug,amount:Number(e.amount),bankName:e.bankName,bankAccount:e.bankAccount,bankHolder:e.bankHolder,status:e.status,notes:e.notes,adminNotes:e.adminNotes,processedAt:e.processedAt,processedBy:e.processedBy,createdAt:e.createdAt})),stats:f,pagination:{page:n,limit:i,total:m,totalPages:Math.ceil(m/i)}})}catch{return d.NextResponse.json({error:"Server error"},{status:500})}}let p=new s.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/superadmin/withdrawals/route",pathname:"/api/superadmin/withdrawals",filename:"route",bundlePath:"app/api/superadmin/withdrawals/route"},resolvedPagePath:"D:\\PROJECT\\resto-saas\\src\\app\\api\\superadmin\\withdrawals\\route.ts",nextConfigOutput:"",userland:a}),{requestAsyncStorage:c,staticGenerationAsyncStorage:m,serverHooks:w}=p,f="/api/superadmin/withdrawals/route";function h(){return(0,i.patchFetch)({serverHooks:w,staticGenerationAsyncStorage:m})}},8194:(e,t,r)=>{r.d(t,{_:()=>s});let a=require("@prisma/client"),s=globalThis.prisma??new a.PrismaClient},73218:(e,t,r)=>{r.d(t,{KV:()=>p,TM:()=>l,WC:()=>c});var a=r(41482),s=r.n(a),n=r(71615),i=r(87070),d=r(8194),u=r(579);let o=process.env.JWT_SECRET||"fallback-secret-change-me";function l(e){return s().sign({...e,isSuperAdmin:!0},o,{expiresIn:"7d"})}async function p(){let e=await (0,n.cookies)(),t=e.get("sa_token")?.value;if(!t)return null;let r=function(e){try{let t=s().verify(e,o);if(!t.isSuperAdmin)return null;return t}catch{return null}}(t);if(!r)return null;let a=await d._.superAdmin.findUnique({where:{id:r.superAdminId}});return a&&a.isActive?a:null}async function c(e){let t=await p();return t?(0,u.Fs)(t.role,e)?{superAdmin:t,error:null}:{superAdmin:null,error:i.NextResponse.json({error:"Anda tidak memiliki akses untuk fitur ini"},{status:403})}:{superAdmin:null,error:i.NextResponse.json({error:"Tidak terautentikasi"},{status:401})}}},579:(e,t,r)=>{r.d(t,{Fs:()=>n,j$:()=>a});let a=Object.values({SUPERADMIN:"superadmin",ADMIN:"admin",FINANCE:"finance",SUPPORT:"support",CONTENT:"content",VIEWER:"viewer"}),s={superadmin:["dashboard:read","plans:read","plans:write","tenants:read","tenants:write","subscriptions:read","subscriptions:write","payment_settings:read","payment_settings:write","withdrawals:read","withdrawals:write","tickets:read","tickets:write","cms:read","cms:write","staff:read","staff:write","affiliates:read","affiliates:write","email_settings:read","email_settings:write"],admin:["dashboard:read","plans:read","plans:write","tenants:read","tenants:write","subscriptions:read","subscriptions:write","payment_settings:read","payment_settings:write","withdrawals:read","withdrawals:write","tickets:read","tickets:write","cms:read","cms:write","affiliates:read","affiliates:write","email_settings:read","email_settings:write"],finance:["dashboard:read","subscriptions:read","payment_settings:read","payment_settings:write","withdrawals:read","withdrawals:write","affiliates:read"],support:["dashboard:read","tenants:read","tickets:read","tickets:write"],content:["dashboard:read","cms:read","cms:write"],viewer:["dashboard:read"]};function n(e,t){let r=s[e];return!!r&&r.includes(t)}}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),a=t.X(0,[8948,5972,4261],()=>r(11542));module.exports=a})();