Files
Shifted/.next/server/app/api/cart/get/route.js
2026-02-10 01:14:19 +00:00

1 line
4.5 KiB
JavaScript

"use strict";(()=>{var e={};e.id=9138,e.ids=[9138],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")},27790:e=>{e.exports=require("assert")},78893:e=>{e.exports=require("buffer")},84770:e=>{e.exports=require("crypto")},17702:e=>{e.exports=require("events")},32615:e=>{e.exports=require("http")},35240:e=>{e.exports=require("https")},86624:e=>{e.exports=require("querystring")},17360:e=>{e.exports=require("url")},21764:e=>{e.exports=require("util")},71568:e=>{e.exports=require("zlib")},41209:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>q,patchFetch:()=>f,requestAsyncStorage:()=>w,routeModule:()=>m,serverHooks:()=>h,staticGenerationAsyncStorage:()=>x});var a={};r.r(a),r.d(a,{GET:()=>c});var i=r(49303),s=r(88716),n=r(60670),o=r(87070),d=r(83493),u=r(71615),l=r(75571),p=r(90455);async function c(e){try{let{searchParams:t}=new URL(e.url),r=t.get("slug");if(!r)return o.NextResponse.json({error:"slug is required."},{status:400});let a=await d._.store.findUnique({where:{slug:r}});if(!a)return o.NextResponse.json({error:"Store not found."},{status:404});let i=await (0,l.getServerSession)(p.L),s=(0,u.cookies)(),n=s.get("sf_session")?.value,c=!n;n||(n=crypto.randomUUID());let m=n?await d._.cart.findUnique({where:{storeId_sessionId:{storeId:a.id,sessionId:n}},include:{items:!0}}):null;if(i?.user?.email){let e=await d._.user.findUnique({where:{email:i.user.email}});if(!e)return o.NextResponse.json({error:"User not found."},{status:404});let t=await d._.cart.findUnique({where:{storeId_userId:{storeId:a.id,userId:e.id}},include:{items:!0}});if(t){if(m&&m.id!==t.id){for(let e of m.items){let r=await d._.cartItem.findFirst({where:{cartId:t.id,priceId:e.priceId}});r?await d._.cartItem.update({where:{id:r.id},data:{quantity:r.quantity+e.quantity}}):await d._.cartItem.create({data:{cartId:t.id,productId:e.productId,priceId:e.priceId,name:e.name,unitAmount:e.unitAmount,currency:e.currency,quantity:e.quantity}})}await d._.cart.delete({where:{id:m.id}}),t=await d._.cart.update({where:{id:t.id},data:{sessionId:n},include:{items:!0}})}else t.sessionId!==n&&(t=await d._.cart.update({where:{id:t.id},data:{sessionId:n},include:{items:!0}}))}else t=m?await d._.cart.update({where:{id:m.id},data:{userId:e.id},include:{items:!0}}):await d._.cart.create({data:{storeId:a.id,userId:e.id,sessionId:n},include:{items:!0}});let r=o.NextResponse.json({cart:t});return c&&r.cookies.set("sf_session",n,{httpOnly:!0,sameSite:"lax",path:"/"}),r}let w=m??await d._.cart.create({data:{storeId:a.id,sessionId:n},include:{items:!0}}),x=o.NextResponse.json({cart:w});return c&&x.cookies.set("sf_session",n,{httpOnly:!0,sameSite:"lax",path:"/"}),x}catch(e){return o.NextResponse.json({error:e?.message||"Failed to load cart."},{status:500})}}let m=new i.AppRouteRouteModule({definition:{kind:s.x.APP_ROUTE,page:"/api/cart/get/route",pathname:"/api/cart/get",filename:"route",bundlePath:"app/api/cart/get/route"},resolvedPagePath:"/root/ShiftedOffRoad/app/api/cart/get/route.ts",nextConfigOutput:"",userland:a}),{requestAsyncStorage:w,staticGenerationAsyncStorage:x,serverHooks:h}=m,q="/api/cart/get/route";function f(){return(0,n.patchFetch)({serverHooks:h,staticGenerationAsyncStorage:x})}},90455:(e,t,r)=>{r.d(t,{L:()=>d});var a=r(13539),i=r(53797),s=r(42023),n=r.n(s),o=r(83493);let d={adapter:(0,a.N)(o._),session:{strategy:"jwt"},pages:{signIn:"/login"},callbacks:{jwt:async({token:e,user:t})=>(t&&(e.id=t.id),e.id||(e.id=e.sub??""),e),session:async({session:e,token:t})=>(e.user&&(e.user.id=t.id||""),e)},providers:[(0,i.Z)({name:"Credentials",credentials:{email:{label:"Email",type:"email"},password:{label:"Password",type:"password"}},async authorize(e){let t=e?.email?.toLowerCase().trim(),r=e?.password;if(!t||!r)return null;let a=await o._.user.findUnique({where:{email:t}});return a&&a.passwordHash&&await n().compare(r,a.passwordHash)?{id:a.id,name:a.name,email:a.email}:null}})]}},83493:(e,t,r)=>{r.d(t,{_:()=>i});let a=require("@prisma/client"),i=globalThis.prisma??new a.PrismaClient({log:["warn","error"]})}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),a=t.X(0,[9276,5972,2023,9637],()=>r(41209));module.exports=a})();