@superinterface/server 1.1.5 → 1.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +2 -2
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/eslint/.cache_btwyo7 +1 -1
- package/.next/fallback-build-manifest.json +2 -2
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/api/workspaces/[workspaceId]/route.js +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +1 -1
- package/.next/server/chunks/[root-of-the-server]__0a426407._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0a426407._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__0c1bc5ed._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__0c1bc5ed._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__1a7a04d0._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1a7a04d0._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__2945c9e9._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__2945c9e9._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__315f084a._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__315f084a._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__42ed6203._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__42ed6203._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__4c8c04a2._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__4c8c04a2._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__4e536bc0._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__4e536bc0._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__583a7f1c._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__583a7f1c._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__5abf1160._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__5abf1160._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__5aedcd8a._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__5aedcd8a._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__62d958e7._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__62d958e7._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__630959e5._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__630959e5._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__83461316._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__83461316._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__9a611d42._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__9a611d42._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__a9fab3b2._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__a9fab3b2._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__b10ec83e._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__b10ec83e._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__c1629392._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__c1629392._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__e73543af._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__e73543af._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__e8127a36._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__e8127a36._.js.map +1 -1
- package/.next/server/chunks/c4f00_next_dist_esm_build_templates_app-route_f952d9ab.js +1 -1
- package/.next/server/chunks/c4f00_next_dist_esm_build_templates_app-route_f952d9ab.js.map +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/trace +1 -1
- package/README.md +3 -3
- package/dist/app/api/messages/buildRoute.d.ts.map +1 -1
- package/dist/app/api/messages/buildRoute.js +1 -3
- package/dist/lib/cache/cacheHeaders.d.ts.map +1 -1
- package/dist/lib/cache/cacheHeaders.js +1 -1
- package/package.json +1 -1
- /package/.next/static/{euNx_MoPmZ6Ig22d-7GLW → 25Kcgl6uIxdBmkSgq8yP-}/_buildManifest.js +0 -0
- /package/.next/static/{euNx_MoPmZ6Ig22d-7GLW → 25Kcgl6uIxdBmkSgq8yP-}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{euNx_MoPmZ6Ig22d-7GLW → 25Kcgl6uIxdBmkSgq8yP-}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},20635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},30611,e=>{"use strict";e.s(["cacheHeaders",()=>t]);let t={"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type"}},88122,e=>{"use strict";e.s(["getApiKey",()=>r]);var t=e.i(55897);let r=async({authorization:e,type:r,prisma:a})=>{if(!e)return null;let[,s]=e.split("Bearer ");return(0,t.validate)(s)?a.apiKey.findFirst({where:{type:r,value:s}}):null}},40899,74044,62666,e=>{"use strict";e.s(["serializeApiAssistant",()=>s],40899);var t=e.i(29173);e.s(["serializeAvatar",()=>r],74044);let r=({avatar:e})=>({type:e.type,imageAvatar:e.imageAvatar?(({imageAvatar:e})=>({url:e.url}))({imageAvatar:e.imageAvatar}):null,iconAvatar:e.iconAvatar?(({iconAvatar:e})=>({name:e.name}))({iconAvatar:e.iconAvatar}):null});e.s(["defaultAvatar",()=>a],62666);let a={type:t.AvatarType.ICON,iconAvatar:{name:t.IconAvatarName.LIGHTNING_BOLT},imageAvatar:null},s=({assistant:e})=>({id:e.id,storageProviderType:e.storageProviderType,storageProviderAssistantId:e.openaiAssistantId,modelProviderId:e.modelProviderId,model:e.modelSlug,name:e.name,description:e.description,instructions:e.instructions,codeInterpreterEnabled:e.tools.some(e=>e.type===t.ToolType.CODE_INTERPRETER),fileSearchEnabled:e.tools.some(e=>e.type===t.ToolType.FILE_SEARCH),createdAt:e.createdAt.toISOString(),updatedAt:e.updatedAt.toISOString(),avatar:r({avatar:e.avatar??a})})},34395,e=>{"use strict";e.s([])},7773,e=>{"use strict";e.s(["handler",()=>H,"patchFetch",()=>_,"routeModule",()=>O,"serverHooks",()=>k,"workAsyncStorage",()=>b,"workUnitAsyncStorage",()=>j],7773);var t=e.i(5865),r=e.i(43877),a=e.i(77767),s=e.i(92562),n=e.i(66256),o=e.i(5270),i=e.i(90231),l=e.i(82677),d=e.i(51081),p=e.i(89822),u=e.i(9124),c=e.i(39147),v=e.i(40568),g=e.i(87188),h=e.i(93695);e.i(57132);var A=e.i(80739);e.s(["GET",()=>w,"OPTIONS",()=>N,"POST",()=>C,"createAssistantSchema",()=>P],80489),e.s(["GET",()=>w,"OPTIONS",()=>N,"POST",()=>C],30946);var R=e.i(24493),m=e.i(11053),x=e.i(29173),E=e.i(49493),y=e.i(13669),f=e.i(30611),T=e.i(40899),I=e.i(88122);let P=y.z.object({storageProviderType:y.z.nativeEnum(x.StorageProviderType),storageProviderAssistantId:y.z.string().nullable().optional(),modelProviderId:y.z.string(),model:y.z.string(),name:y.z.string().optional(),description:y.z.string().optional().default(""),instructions:y.z.string().optional().default(""),codeInterpreterEnabled:y.z.boolean().optional().default(!1),fileSearchEnabled:y.z.boolean().optional().default(!1)}).superRefine((e,t)=>{e.storageProviderType===x.StorageProviderType.SUPERINTERFACE_CLOUD&&e.storageProviderAssistantId&&t.addIssue({code:y.z.ZodIssueCode.custom,message:"storageProviderAssistantId should not be provided for SUPERINTERFACE_CLOUD",path:["storageProviderAssistantId"]}),e.storageProviderType===x.StorageProviderType.SUPERINTERFACE_CLOUD||e.storageProviderAssistantId||t.addIssue({code:y.z.ZodIssueCode.custom,message:"storageProviderAssistantId is required for this storage provider",path:["storageProviderAssistantId"]})}),w=(({prisma:e})=>async()=>{let t=(await (0,m.headers)()).get("authorization");if(!t)return E.NextResponse.json({error:"No authorization header found"},{status:400});let r=await (0,I.getApiKey)({authorization:t,type:x.ApiKeyType.PRIVATE,prisma:e});if(!r)return E.NextResponse.json({error:"Invalid api key"},{status:400});let a=await e.assistant.findMany({where:{workspaceId:r.workspaceId},include:{tools:!0,avatar:{include:{imageAvatar:!0,iconAvatar:!0}}}});return E.NextResponse.json({assistants:a.map(e=>(0,T.serializeApiAssistant)({assistant:e}))},{headers:f.cacheHeaders})})({prisma:R.prisma}),C=(({prisma:e})=>async t=>{let r=(await (0,m.headers)()).get("authorization");if(!r)return E.NextResponse.json({error:"No authorization header found"},{status:400});let a=await (0,I.getApiKey)({authorization:r,type:x.ApiKeyType.PRIVATE,prisma:e});if(!a)return E.NextResponse.json({error:"Invalid api key"},{status:400});let s=P.safeParse(await t.json());if(!s.success)return E.NextResponse.json({error:`Missing required fields. ${JSON.stringify(s.error.format())}`},{status:400});let{storageProviderType:n,storageProviderAssistantId:o,modelProviderId:i,model:l,name:d,description:p,instructions:u,codeInterpreterEnabled:c,fileSearchEnabled:v}=s.data,g=a.workspaceId,h=await e.assistant.create({data:{workspace:{connect:{id:g}},modelProvider:{connect:{id:i}},modelSlug:l,name:d,description:p,instructions:u,storageProviderType:n,openaiAssistantId:o??null,tools:{create:[...v?[{type:x.ToolType.FILE_SEARCH,fileSearchTool:{create:{}}}]:[],...c?[{type:x.ToolType.CODE_INTERPRETER,codeInterpreterTool:{create:{}}}]:[]]}},include:{tools:!0,avatar:{include:{imageAvatar:!0,iconAvatar:!0}}}});return E.NextResponse.json({assistant:(0,T.serializeApiAssistant)({assistant:h})},{headers:f.cacheHeaders})})({prisma:R.prisma}),N=()=>E.NextResponse.json({},{headers:f.cacheHeaders});e.i(30946);var S=e.i(80489);let O=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/assistants/route",pathname:"/api/assistants",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/supercorp/superinterface/packages/server/src/app/api/assistants/route.ts",nextConfigOutput:"",userland:S}),{workAsyncStorage:b,workUnitAsyncStorage:j,serverHooks:k}=O;function _(){return(0,a.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:j})}async function H(e,t,a){var R;let m="/api/assistants/route";m=m.replace(/\/index$/,"")||"/";let x=await O.prepare(e,t,{srcPage:m,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:y,nextConfig:f,isDraftMode:T,prerenderManifest:I,routerServerContext:P,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,resolvedPathname:N}=x,S=(0,o.normalizeAppPath)(m),b=!!(I.dynamicRoutes[S]||I.routes[N]);if(b&&!T){let e=!!I.routes[N],t=I.dynamicRoutes[S];if(t&&!1===t.fallback&&!e)throw new h.NoFallbackError}let j=null;!b||O.isDev||T||(j="/index"===(j=N)?"/":j);let k=!0===O.isDev||!b,_=b&&!k,H=e.method||"GET",U=(0,n.getTracer)(),q=U.getActiveScopeSpan(),z={params:y,prerenderManifest:I,renderOpts:{experimental:{cacheComponents:!!f.experimental.cacheComponents,authInterrupts:!!f.experimental.authInterrupts},supportsDynamicResponse:k,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:null==(R=f.experimental)?void 0:R.cacheLife,isRevalidate:_,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a)=>O.onRequestError(e,t,a,P)},sharedContext:{buildId:E}},D=new i.NodeNextRequest(e),M=new i.NodeNextResponse(t),F=l.NextRequestAdapter.fromNodeNextRequest(D,(0,l.signalFromNodeResponse)(t));try{let o=async r=>O.handle(F,z).finally(()=>{if(!r)return;r.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=U.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=a.get("next.route");if(s){let e=`${H} ${s}`;r.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),r.updateName(e)}else r.updateName(`${H} ${e.url}`)}),i=async n=>{var i,l;let d=async({previousCacheEntry:r})=>{try{if(!(0,s.getRequestMeta)(e,"minimalMode")&&w&&C&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await o(n);e.fetchMetrics=z.renderOpts.fetchMetrics;let l=z.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let d=z.renderOpts.collectedTags;if(!b)return await (0,u.sendResponse)(D,M,i,z.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,c.toNodeOutgoingHttpHeaders)(i.headers);d&&(t[g.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,a=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:z.renderOpts.collectedExpire;return{value:{kind:A.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await O.onRequestError(e,t,{routerKind:"App Router",routePath:m,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isRevalidate:_,isOnDemandRevalidate:w})},P),t}},h=await O.handleResponse({req:e,nextConfig:f,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,responseGenerator:d,waitUntil:a.waitUntil});if(!b)return null;if((null==h||null==(i=h.value)?void 0:i.kind)!==A.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==h||null==(l=h.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,s.getRequestMeta)(e,"minimalMode")||t.setHeader("x-nextjs-cache",w?"REVALIDATED":h.isMiss?"MISS":h.isStale?"STALE":"HIT"),T&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let R=(0,c.fromNodeOutgoingHttpHeaders)(h.value.headers);return(0,s.getRequestMeta)(e,"minimalMode")&&b||R.delete(g.NEXT_CACHE_TAGS_HEADER),!h.cacheControl||t.getHeader("Cache-Control")||R.get("Cache-Control")||R.set("Cache-Control",(0,v.getCacheControlHeader)(h.cacheControl)),await (0,u.sendResponse)(D,M,new Response(h.value.body,{headers:R,status:h.value.status||200})),null};q?await i(q):await U.withPropagatedContext(e.headers,()=>U.trace(d.BaseServerSpan.handleRequest,{spanName:`${H} ${e.url}`,kind:n.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},i))}catch(t){if(t instanceof h.NoFallbackError||await O.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isRevalidate:_,isOnDemandRevalidate:w})}),b)throw t;return await (0,u.sendResponse)(D,M,new Response(null,{status:500})),null}}}];
|
|
1
|
+
module.exports=[18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},20635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},30611,e=>{"use strict";e.s(["cacheHeaders",()=>t]);let t={"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, X-Requested-With, Accept"}},88122,e=>{"use strict";e.s(["getApiKey",()=>r]);var t=e.i(55897);let r=async({authorization:e,type:r,prisma:a})=>{if(!e)return null;let[,s]=e.split("Bearer ");return(0,t.validate)(s)?a.apiKey.findFirst({where:{type:r,value:s}}):null}},40899,74044,62666,e=>{"use strict";e.s(["serializeApiAssistant",()=>s],40899);var t=e.i(29173);e.s(["serializeAvatar",()=>r],74044);let r=({avatar:e})=>({type:e.type,imageAvatar:e.imageAvatar?(({imageAvatar:e})=>({url:e.url}))({imageAvatar:e.imageAvatar}):null,iconAvatar:e.iconAvatar?(({iconAvatar:e})=>({name:e.name}))({iconAvatar:e.iconAvatar}):null});e.s(["defaultAvatar",()=>a],62666);let a={type:t.AvatarType.ICON,iconAvatar:{name:t.IconAvatarName.LIGHTNING_BOLT},imageAvatar:null},s=({assistant:e})=>({id:e.id,storageProviderType:e.storageProviderType,storageProviderAssistantId:e.openaiAssistantId,modelProviderId:e.modelProviderId,model:e.modelSlug,name:e.name,description:e.description,instructions:e.instructions,codeInterpreterEnabled:e.tools.some(e=>e.type===t.ToolType.CODE_INTERPRETER),fileSearchEnabled:e.tools.some(e=>e.type===t.ToolType.FILE_SEARCH),createdAt:e.createdAt.toISOString(),updatedAt:e.updatedAt.toISOString(),avatar:r({avatar:e.avatar??a})})},34395,e=>{"use strict";e.s([])},7773,e=>{"use strict";e.s(["handler",()=>H,"patchFetch",()=>_,"routeModule",()=>O,"serverHooks",()=>k,"workAsyncStorage",()=>b,"workUnitAsyncStorage",()=>j],7773);var t=e.i(5865),r=e.i(43877),a=e.i(77767),s=e.i(92562),n=e.i(66256),o=e.i(5270),i=e.i(90231),l=e.i(82677),d=e.i(51081),p=e.i(89822),u=e.i(9124),c=e.i(39147),v=e.i(40568),h=e.i(87188),g=e.i(93695);e.i(57132);var A=e.i(80739);e.s(["GET",()=>w,"OPTIONS",()=>N,"POST",()=>C,"createAssistantSchema",()=>P],80489),e.s(["GET",()=>w,"OPTIONS",()=>N,"POST",()=>C],30946);var R=e.i(24493),m=e.i(11053),x=e.i(29173),E=e.i(49493),y=e.i(13669),f=e.i(30611),T=e.i(40899),I=e.i(88122);let P=y.z.object({storageProviderType:y.z.nativeEnum(x.StorageProviderType),storageProviderAssistantId:y.z.string().nullable().optional(),modelProviderId:y.z.string(),model:y.z.string(),name:y.z.string().optional(),description:y.z.string().optional().default(""),instructions:y.z.string().optional().default(""),codeInterpreterEnabled:y.z.boolean().optional().default(!1),fileSearchEnabled:y.z.boolean().optional().default(!1)}).superRefine((e,t)=>{e.storageProviderType===x.StorageProviderType.SUPERINTERFACE_CLOUD&&e.storageProviderAssistantId&&t.addIssue({code:y.z.ZodIssueCode.custom,message:"storageProviderAssistantId should not be provided for SUPERINTERFACE_CLOUD",path:["storageProviderAssistantId"]}),e.storageProviderType===x.StorageProviderType.SUPERINTERFACE_CLOUD||e.storageProviderAssistantId||t.addIssue({code:y.z.ZodIssueCode.custom,message:"storageProviderAssistantId is required for this storage provider",path:["storageProviderAssistantId"]})}),w=(({prisma:e})=>async()=>{let t=(await (0,m.headers)()).get("authorization");if(!t)return E.NextResponse.json({error:"No authorization header found"},{status:400});let r=await (0,I.getApiKey)({authorization:t,type:x.ApiKeyType.PRIVATE,prisma:e});if(!r)return E.NextResponse.json({error:"Invalid api key"},{status:400});let a=await e.assistant.findMany({where:{workspaceId:r.workspaceId},include:{tools:!0,avatar:{include:{imageAvatar:!0,iconAvatar:!0}}}});return E.NextResponse.json({assistants:a.map(e=>(0,T.serializeApiAssistant)({assistant:e}))},{headers:f.cacheHeaders})})({prisma:R.prisma}),C=(({prisma:e})=>async t=>{let r=(await (0,m.headers)()).get("authorization");if(!r)return E.NextResponse.json({error:"No authorization header found"},{status:400});let a=await (0,I.getApiKey)({authorization:r,type:x.ApiKeyType.PRIVATE,prisma:e});if(!a)return E.NextResponse.json({error:"Invalid api key"},{status:400});let s=P.safeParse(await t.json());if(!s.success)return E.NextResponse.json({error:`Missing required fields. ${JSON.stringify(s.error.format())}`},{status:400});let{storageProviderType:n,storageProviderAssistantId:o,modelProviderId:i,model:l,name:d,description:p,instructions:u,codeInterpreterEnabled:c,fileSearchEnabled:v}=s.data,h=a.workspaceId,g=await e.assistant.create({data:{workspace:{connect:{id:h}},modelProvider:{connect:{id:i}},modelSlug:l,name:d,description:p,instructions:u,storageProviderType:n,openaiAssistantId:o??null,tools:{create:[...v?[{type:x.ToolType.FILE_SEARCH,fileSearchTool:{create:{}}}]:[],...c?[{type:x.ToolType.CODE_INTERPRETER,codeInterpreterTool:{create:{}}}]:[]]}},include:{tools:!0,avatar:{include:{imageAvatar:!0,iconAvatar:!0}}}});return E.NextResponse.json({assistant:(0,T.serializeApiAssistant)({assistant:g})},{headers:f.cacheHeaders})})({prisma:R.prisma}),N=()=>E.NextResponse.json({},{headers:f.cacheHeaders});e.i(30946);var S=e.i(80489);let O=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/assistants/route",pathname:"/api/assistants",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/supercorp/superinterface/packages/server/src/app/api/assistants/route.ts",nextConfigOutput:"",userland:S}),{workAsyncStorage:b,workUnitAsyncStorage:j,serverHooks:k}=O;function _(){return(0,a.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:j})}async function H(e,t,a){var R;let m="/api/assistants/route";m=m.replace(/\/index$/,"")||"/";let x=await O.prepare(e,t,{srcPage:m,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:y,nextConfig:f,isDraftMode:T,prerenderManifest:I,routerServerContext:P,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,resolvedPathname:N}=x,S=(0,o.normalizeAppPath)(m),b=!!(I.dynamicRoutes[S]||I.routes[N]);if(b&&!T){let e=!!I.routes[N],t=I.dynamicRoutes[S];if(t&&!1===t.fallback&&!e)throw new g.NoFallbackError}let j=null;!b||O.isDev||T||(j="/index"===(j=N)?"/":j);let k=!0===O.isDev||!b,_=b&&!k,H=e.method||"GET",q=(0,n.getTracer)(),U=q.getActiveScopeSpan(),z={params:y,prerenderManifest:I,renderOpts:{experimental:{cacheComponents:!!f.experimental.cacheComponents,authInterrupts:!!f.experimental.authInterrupts},supportsDynamicResponse:k,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:null==(R=f.experimental)?void 0:R.cacheLife,isRevalidate:_,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a)=>O.onRequestError(e,t,a,P)},sharedContext:{buildId:E}},D=new i.NodeNextRequest(e),M=new i.NodeNextResponse(t),F=l.NextRequestAdapter.fromNodeNextRequest(D,(0,l.signalFromNodeResponse)(t));try{let o=async r=>O.handle(F,z).finally(()=>{if(!r)return;r.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=q.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=a.get("next.route");if(s){let e=`${H} ${s}`;r.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),r.updateName(e)}else r.updateName(`${H} ${e.url}`)}),i=async n=>{var i,l;let d=async({previousCacheEntry:r})=>{try{if(!(0,s.getRequestMeta)(e,"minimalMode")&&w&&C&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await o(n);e.fetchMetrics=z.renderOpts.fetchMetrics;let l=z.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let d=z.renderOpts.collectedTags;if(!b)return await (0,u.sendResponse)(D,M,i,z.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,c.toNodeOutgoingHttpHeaders)(i.headers);d&&(t[h.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=h.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,a=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=h.INFINITE_CACHE?void 0:z.renderOpts.collectedExpire;return{value:{kind:A.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await O.onRequestError(e,t,{routerKind:"App Router",routePath:m,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isRevalidate:_,isOnDemandRevalidate:w})},P),t}},g=await O.handleResponse({req:e,nextConfig:f,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,responseGenerator:d,waitUntil:a.waitUntil});if(!b)return null;if((null==g||null==(i=g.value)?void 0:i.kind)!==A.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==g||null==(l=g.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,s.getRequestMeta)(e,"minimalMode")||t.setHeader("x-nextjs-cache",w?"REVALIDATED":g.isMiss?"MISS":g.isStale?"STALE":"HIT"),T&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let R=(0,c.fromNodeOutgoingHttpHeaders)(g.value.headers);return(0,s.getRequestMeta)(e,"minimalMode")&&b||R.delete(h.NEXT_CACHE_TAGS_HEADER),!g.cacheControl||t.getHeader("Cache-Control")||R.get("Cache-Control")||R.set("Cache-Control",(0,v.getCacheControlHeader)(g.cacheControl)),await (0,u.sendResponse)(D,M,new Response(g.value.body,{headers:R,status:g.value.status||200})),null};U?await i(U):await q.withPropagatedContext(e.headers,()=>q.trace(d.BaseServerSpan.handleRequest,{spanName:`${H} ${e.url}`,kind:n.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},i))}catch(t){if(t instanceof g.NoFallbackError||await O.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isRevalidate:_,isOnDemandRevalidate:w})}),b)throw t;return await (0,u.sendResponse)(D,M,new Response(null,{status:500})),null}}}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__4e536bc0._.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/cache/cacheHeaders.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/apiKeys/getApiKey.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/assistants/serializeApiAssistant.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/imageAvatars/serializeImageAvatar.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/iconAvatars/serializeIconAvatar.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/avatars/serializeAvatar.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/avatars/defaultAvatar.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/app/api/assistants/route.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/app/api/assistants/buildRoute.ts","turbopack:///[project]/supercorp/superinterface/node_modules/next/dist/esm/build/templates/app-route.js"],"sourcesContent":["export const cacheHeaders = {\n 'Access-Control-Allow-Origin': '*',\n 'Access-Control-Allow-Methods': 'GET, POST, PUT, DELETE, OPTIONS',\n 'Access-Control-Allow-Headers': 'Content-Type',\n}\n","import { ApiKeyType, ApiKey, type PrismaClient } from '@prisma/client'\nimport { validate } from 'uuid'\n\nexport const getApiKey = async ({\n authorization,\n type,\n prisma,\n}: {\n authorization: string | null\n type: ApiKeyType\n prisma: PrismaClient\n}): Promise<ApiKey | null> => {\n if (!authorization) {\n return null\n }\n\n const [, apiKeyValue] = authorization.split('Bearer ')\n\n if (!validate(apiKeyValue)) {\n return null\n }\n\n return prisma.apiKey.findFirst({\n where: { type, value: apiKeyValue },\n })\n}\n","import type { Prisma } from '@prisma/client'\nimport { ToolType } from '@prisma/client'\nimport { serializeAvatar } from '@/lib/avatars/serializeAvatar'\nimport { defaultAvatar } from '@/lib/avatars/defaultAvatar'\n\nexport const serializeApiAssistant = ({\n assistant,\n}: {\n assistant: Prisma.AssistantGetPayload<{\n include: {\n tools: true\n avatar: {\n include: {\n iconAvatar: true\n imageAvatar: true\n }\n }\n }\n }>\n}) => ({\n id: assistant.id,\n storageProviderType: assistant.storageProviderType,\n storageProviderAssistantId: assistant.openaiAssistantId,\n modelProviderId: assistant.modelProviderId,\n model: assistant.modelSlug,\n name: assistant.name,\n description: assistant.description,\n instructions: assistant.instructions,\n codeInterpreterEnabled: assistant.tools.some(\n (tool) => tool.type === ToolType.CODE_INTERPRETER,\n ),\n fileSearchEnabled: assistant.tools.some(\n (tool) => tool.type === ToolType.FILE_SEARCH,\n ),\n createdAt: assistant.createdAt.toISOString(),\n updatedAt: assistant.updatedAt.toISOString(),\n avatar: serializeAvatar({\n avatar: assistant.avatar ?? defaultAvatar,\n }),\n})\n","import { ImageAvatar } from '@prisma/client'\n\nexport const serializeImageAvatar = ({\n imageAvatar,\n}: {\n imageAvatar: ImageAvatar\n}) => ({\n url: imageAvatar.url,\n})\n","import { IconAvatar } from '@prisma/client'\n\nexport const serializeIconAvatar = ({\n iconAvatar,\n}: {\n iconAvatar: IconAvatar\n}) => ({\n name: iconAvatar.name,\n})\n","import { Prisma } from '@prisma/client'\nimport { serializeImageAvatar } from '@/lib/imageAvatars/serializeImageAvatar'\nimport { serializeIconAvatar } from '@/lib/iconAvatars/serializeIconAvatar'\n\nexport const serializeAvatar = ({\n avatar,\n}: {\n avatar: Prisma.AvatarGetPayload<{\n include: {\n imageAvatar: true\n iconAvatar: true\n }\n }>\n}) => ({\n type: avatar.type,\n imageAvatar: avatar.imageAvatar\n ? serializeImageAvatar({\n imageAvatar: avatar.imageAvatar,\n })\n : null,\n iconAvatar: avatar.iconAvatar\n ? serializeIconAvatar({\n iconAvatar: avatar.iconAvatar,\n })\n : null,\n})\n","import { Prisma } from '@prisma/client'\nimport { AvatarType, IconAvatarName } from '@prisma/client'\n\nexport const defaultAvatar = {\n type: AvatarType.ICON,\n iconAvatar: {\n name: IconAvatarName.LIGHTNING_BOLT,\n },\n imageAvatar: null,\n} as Prisma.AvatarGetPayload<{\n include: {\n imageAvatar: true\n iconAvatar: true\n }\n}>\n","import { prisma } from '@/lib/prisma'\nimport {\n buildGET,\n buildOPTIONS,\n buildPOST,\n createAssistantSchema,\n} from './buildRoute'\n\nexport { createAssistantSchema }\n\nexport const GET = buildGET({ prisma })\n\nexport const POST = buildPOST({ prisma })\n\nexport const OPTIONS = buildOPTIONS()\n","import { headers } from 'next/headers'\nimport {\n ApiKeyType,\n StorageProviderType,\n ToolType,\n type PrismaClient,\n} from '@prisma/client'\nimport { NextResponse } from 'next/server'\nimport { z } from 'zod'\nimport { cacheHeaders } from '@/lib/cache/cacheHeaders'\nimport { serializeApiAssistant } from '@/lib/assistants/serializeApiAssistant'\nimport { getApiKey } from '@/lib/apiKeys/getApiKey'\n\nconst createAssistantSchema = z\n .object({\n storageProviderType: z.nativeEnum(StorageProviderType),\n storageProviderAssistantId: z.string().nullable().optional(),\n modelProviderId: z.string(),\n model: z.string(),\n name: z.string().optional(),\n description: z.string().optional().default(''),\n instructions: z.string().optional().default(''),\n codeInterpreterEnabled: z.boolean().optional().default(false),\n fileSearchEnabled: z.boolean().optional().default(false),\n })\n .superRefine((data, ctx) => {\n if (\n data.storageProviderType === StorageProviderType.SUPERINTERFACE_CLOUD &&\n data.storageProviderAssistantId\n ) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message:\n 'storageProviderAssistantId should not be provided for SUPERINTERFACE_CLOUD',\n path: ['storageProviderAssistantId'],\n })\n }\n\n if (\n data.storageProviderType !== StorageProviderType.SUPERINTERFACE_CLOUD &&\n !data.storageProviderAssistantId\n ) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message:\n 'storageProviderAssistantId is required for this storage provider',\n path: ['storageProviderAssistantId'],\n })\n }\n })\n\nexport const buildGET =\n ({ prisma }: { prisma: PrismaClient }) =>\n async () => {\n const headersList = await headers()\n const authorization = headersList.get('authorization')\n if (!authorization) {\n return NextResponse.json(\n { error: 'No authorization header found' },\n { status: 400 },\n )\n }\n\n const privateApiKey = await getApiKey({\n authorization,\n type: ApiKeyType.PRIVATE,\n prisma,\n })\n\n if (!privateApiKey) {\n return NextResponse.json({ error: 'Invalid api key' }, { status: 400 })\n }\n\n const assistants = await prisma.assistant.findMany({\n where: {\n workspaceId: privateApiKey.workspaceId,\n },\n include: {\n tools: true,\n avatar: {\n include: {\n imageAvatar: true,\n iconAvatar: true,\n },\n },\n },\n })\n\n return NextResponse.json(\n {\n assistants: assistants.map((a) =>\n serializeApiAssistant({ assistant: a }),\n ),\n },\n { headers: cacheHeaders },\n )\n }\n\nexport const buildPOST =\n ({ prisma }: { prisma: PrismaClient }) =>\n async (request: Request) => {\n const headersList = await headers()\n const authorization = headersList.get('authorization')\n if (!authorization) {\n return NextResponse.json(\n { error: 'No authorization header found' },\n { status: 400 },\n )\n }\n\n const privateApiKey = await getApiKey({\n authorization,\n type: ApiKeyType.PRIVATE,\n prisma,\n })\n\n if (!privateApiKey) {\n return NextResponse.json({ error: 'Invalid api key' }, { status: 400 })\n }\n\n const parseResult = createAssistantSchema.safeParse(await request.json())\n\n if (!parseResult.success) {\n return NextResponse.json(\n {\n error: `Missing required fields. ${JSON.stringify(parseResult.error.format())}`,\n },\n { status: 400 },\n )\n }\n\n const {\n storageProviderType,\n storageProviderAssistantId,\n modelProviderId,\n model,\n name,\n description,\n instructions,\n codeInterpreterEnabled,\n fileSearchEnabled,\n } = parseResult.data\n\n const workspaceId = privateApiKey.workspaceId\n\n const assistant = await prisma.assistant.create({\n data: {\n workspace: { connect: { id: workspaceId } },\n modelProvider: { connect: { id: modelProviderId } },\n modelSlug: model,\n name,\n description,\n instructions,\n storageProviderType,\n openaiAssistantId: storageProviderAssistantId ?? null,\n tools: {\n create: [\n ...(fileSearchEnabled\n ? [\n {\n type: ToolType.FILE_SEARCH,\n fileSearchTool: {\n create: {},\n },\n },\n ]\n : []),\n ...(codeInterpreterEnabled\n ? [\n {\n type: ToolType.CODE_INTERPRETER,\n codeInterpreterTool: {\n create: {},\n },\n },\n ]\n : []),\n ],\n },\n },\n include: {\n tools: true,\n avatar: {\n include: {\n imageAvatar: true,\n iconAvatar: true,\n },\n },\n },\n })\n\n return NextResponse.json(\n {\n assistant: serializeApiAssistant({ assistant }),\n },\n { headers: cacheHeaders },\n )\n }\n\nexport const buildOPTIONS = () => () =>\n NextResponse.json(\n {},\n {\n headers: cacheHeaders,\n },\n )\n\nexport { createAssistantSchema }\n","import { AppRouteRouteModule } from \"next/dist/esm/server/route-modules/app-route/module.compiled\";\nimport { RouteKind } from \"next/dist/esm/server/route-kind\";\nimport { patchFetch as _patchFetch } from \"next/dist/esm/server/lib/patch-fetch\";\nimport { getRequestMeta } from \"next/dist/esm/server/request-meta\";\nimport { getTracer, SpanKind } from \"next/dist/esm/server/lib/trace/tracer\";\nimport { normalizeAppPath } from \"next/dist/esm/shared/lib/router/utils/app-paths\";\nimport { NodeNextRequest, NodeNextResponse } from \"next/dist/esm/server/base-http/node\";\nimport { NextRequestAdapter, signalFromNodeResponse } from \"next/dist/esm/server/web/spec-extension/adapters/next-request\";\nimport { BaseServerSpan } from \"next/dist/esm/server/lib/trace/constants\";\nimport { getRevalidateReason } from \"next/dist/esm/server/instrumentation/utils\";\nimport { sendResponse } from \"next/dist/esm/server/send-response\";\nimport { fromNodeOutgoingHttpHeaders, toNodeOutgoingHttpHeaders } from \"next/dist/esm/server/web/utils\";\nimport { getCacheControlHeader } from \"next/dist/esm/server/lib/cache-control\";\nimport { INFINITE_CACHE, NEXT_CACHE_TAGS_HEADER } from \"next/dist/esm/lib/constants\";\nimport { NoFallbackError } from \"next/dist/esm/shared/lib/no-fallback-error.external\";\nimport { CachedRouteKind } from \"next/dist/esm/server/response-cache\";\nimport * as userland from \"INNER_APP_ROUTE\";\n// We inject the nextConfigOutput here so that we can use them in the route\n// module.\nconst nextConfigOutput = \"\"\nconst routeModule = new AppRouteRouteModule({\n definition: {\n kind: RouteKind.APP_ROUTE,\n page: \"/api/assistants/route\",\n pathname: \"/api/assistants\",\n filename: \"route\",\n bundlePath: \"\"\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n relativeProjectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n resolvedPagePath: \"[project]/supercorp/superinterface/packages/server/src/app/api/assistants/route.ts\",\n nextConfigOutput,\n userland\n});\n// Pull out the exports that we need to expose from the module. This should\n// be eliminated when we've moved the other routes to the new format. These\n// are used to hook into the route.\nconst { workAsyncStorage, workUnitAsyncStorage, serverHooks } = routeModule;\nfunction patchFetch() {\n return _patchFetch({\n workAsyncStorage,\n workUnitAsyncStorage\n });\n}\nexport { routeModule, workAsyncStorage, workUnitAsyncStorage, serverHooks, patchFetch, };\nexport async function handler(req, res, ctx) {\n var _nextConfig_experimental;\n let srcPage = \"/api/assistants/route\";\n // turbopack doesn't normalize `/index` in the page name\n // so we need to to process dynamic routes properly\n // TODO: fix turbopack providing differing value from webpack\n if (process.env.TURBOPACK) {\n srcPage = srcPage.replace(/\\/index$/, '') || '/';\n } else if (srcPage === '/index') {\n // we always normalize /index specifically\n srcPage = '/';\n }\n const multiZoneDraftMode = process.env.__NEXT_MULTI_ZONE_DRAFT_MODE;\n const prepareResult = await routeModule.prepare(req, res, {\n srcPage,\n multiZoneDraftMode\n });\n if (!prepareResult) {\n res.statusCode = 400;\n res.end('Bad Request');\n ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());\n return null;\n }\n const { buildId, params, nextConfig, isDraftMode, prerenderManifest, routerServerContext, isOnDemandRevalidate, revalidateOnlyGenerated, resolvedPathname } = prepareResult;\n const normalizedSrcPage = normalizeAppPath(srcPage);\n let isIsr = Boolean(prerenderManifest.dynamicRoutes[normalizedSrcPage] || prerenderManifest.routes[resolvedPathname]);\n if (isIsr && !isDraftMode) {\n const isPrerendered = Boolean(prerenderManifest.routes[resolvedPathname]);\n const prerenderInfo = prerenderManifest.dynamicRoutes[normalizedSrcPage];\n if (prerenderInfo) {\n if (prerenderInfo.fallback === false && !isPrerendered) {\n throw new NoFallbackError();\n }\n }\n }\n let cacheKey = null;\n if (isIsr && !routeModule.isDev && !isDraftMode) {\n cacheKey = resolvedPathname;\n // ensure /index and / is normalized to one key\n cacheKey = cacheKey === '/index' ? '/' : cacheKey;\n }\n const supportsDynamicResponse = // If we're in development, we always support dynamic HTML\n routeModule.isDev === true || // If this is not SSG or does not have static paths, then it supports\n // dynamic HTML.\n !isIsr;\n // This is a revalidation request if the request is for a static\n // page and it is not being resumed from a postponed render and\n // it is not a dynamic RSC request then it is a revalidation\n // request.\n const isRevalidate = isIsr && !supportsDynamicResponse;\n const method = req.method || 'GET';\n const tracer = getTracer();\n const activeSpan = tracer.getActiveScopeSpan();\n const context = {\n params,\n prerenderManifest,\n renderOpts: {\n experimental: {\n cacheComponents: Boolean(nextConfig.experimental.cacheComponents),\n authInterrupts: Boolean(nextConfig.experimental.authInterrupts)\n },\n supportsDynamicResponse,\n incrementalCache: getRequestMeta(req, 'incrementalCache'),\n cacheLifeProfiles: (_nextConfig_experimental = nextConfig.experimental) == null ? void 0 : _nextConfig_experimental.cacheLife,\n isRevalidate,\n waitUntil: ctx.waitUntil,\n onClose: (cb)=>{\n res.on('close', cb);\n },\n onAfterTaskError: undefined,\n onInstrumentationRequestError: (error, _request, errorContext)=>routeModule.onRequestError(req, error, errorContext, routerServerContext)\n },\n sharedContext: {\n buildId\n }\n };\n const nodeNextReq = new NodeNextRequest(req);\n const nodeNextRes = new NodeNextResponse(res);\n const nextReq = NextRequestAdapter.fromNodeNextRequest(nodeNextReq, signalFromNodeResponse(res));\n try {\n const invokeRouteModule = async (span)=>{\n return routeModule.handle(nextReq, context).finally(()=>{\n if (!span) return;\n span.setAttributes({\n 'http.status_code': res.statusCode,\n 'next.rsc': false\n });\n const rootSpanAttributes = tracer.getRootSpanAttributes();\n // We were unable to get attributes, probably OTEL is not enabled\n if (!rootSpanAttributes) {\n return;\n }\n if (rootSpanAttributes.get('next.span_type') !== BaseServerSpan.handleRequest) {\n console.warn(`Unexpected root span type '${rootSpanAttributes.get('next.span_type')}'. Please report this Next.js issue https://github.com/vercel/next.js`);\n return;\n }\n const route = rootSpanAttributes.get('next.route');\n if (route) {\n const name = `${method} ${route}`;\n span.setAttributes({\n 'next.route': route,\n 'http.route': route,\n 'next.span_name': name\n });\n span.updateName(name);\n } else {\n span.updateName(`${method} ${req.url}`);\n }\n });\n };\n const handleResponse = async (currentSpan)=>{\n var _cacheEntry_value;\n const responseGenerator = async ({ previousCacheEntry })=>{\n try {\n if (!getRequestMeta(req, 'minimalMode') && isOnDemandRevalidate && revalidateOnlyGenerated && !previousCacheEntry) {\n res.statusCode = 404;\n // on-demand revalidate always sets this header\n res.setHeader('x-nextjs-cache', 'REVALIDATED');\n res.end('This page could not be found');\n return null;\n }\n const response = await invokeRouteModule(currentSpan);\n req.fetchMetrics = context.renderOpts.fetchMetrics;\n let pendingWaitUntil = context.renderOpts.pendingWaitUntil;\n // Attempt using provided waitUntil if available\n // if it's not we fallback to sendResponse's handling\n if (pendingWaitUntil) {\n if (ctx.waitUntil) {\n ctx.waitUntil(pendingWaitUntil);\n pendingWaitUntil = undefined;\n }\n }\n const cacheTags = context.renderOpts.collectedTags;\n // If the request is for a static response, we can cache it so long\n // as it's not edge.\n if (isIsr) {\n const blob = await response.blob();\n // Copy the headers from the response.\n const headers = toNodeOutgoingHttpHeaders(response.headers);\n if (cacheTags) {\n headers[NEXT_CACHE_TAGS_HEADER] = cacheTags;\n }\n if (!headers['content-type'] && blob.type) {\n headers['content-type'] = blob.type;\n }\n const revalidate = typeof context.renderOpts.collectedRevalidate === 'undefined' || context.renderOpts.collectedRevalidate >= INFINITE_CACHE ? false : context.renderOpts.collectedRevalidate;\n const expire = typeof context.renderOpts.collectedExpire === 'undefined' || context.renderOpts.collectedExpire >= INFINITE_CACHE ? undefined : context.renderOpts.collectedExpire;\n // Create the cache entry for the response.\n const cacheEntry = {\n value: {\n kind: CachedRouteKind.APP_ROUTE,\n status: response.status,\n body: Buffer.from(await blob.arrayBuffer()),\n headers\n },\n cacheControl: {\n revalidate,\n expire\n }\n };\n return cacheEntry;\n } else {\n // send response without caching if not ISR\n await sendResponse(nodeNextReq, nodeNextRes, response, context.renderOpts.pendingWaitUntil);\n return null;\n }\n } catch (err) {\n // if this is a background revalidate we need to report\n // the request error here as it won't be bubbled\n if (previousCacheEntry == null ? void 0 : previousCacheEntry.isStale) {\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isRevalidate,\n isOnDemandRevalidate\n })\n }, routerServerContext);\n }\n throw err;\n }\n };\n const cacheEntry = await routeModule.handleResponse({\n req,\n nextConfig,\n cacheKey,\n routeKind: RouteKind.APP_ROUTE,\n isFallback: false,\n prerenderManifest,\n isRoutePPREnabled: false,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n responseGenerator,\n waitUntil: ctx.waitUntil\n });\n // we don't create a cacheEntry for ISR\n if (!isIsr) {\n return null;\n }\n if ((cacheEntry == null ? void 0 : (_cacheEntry_value = cacheEntry.value) == null ? void 0 : _cacheEntry_value.kind) !== CachedRouteKind.APP_ROUTE) {\n var _cacheEntry_value1;\n throw Object.defineProperty(new Error(`Invariant: app-route received invalid cache entry ${cacheEntry == null ? void 0 : (_cacheEntry_value1 = cacheEntry.value) == null ? void 0 : _cacheEntry_value1.kind}`), \"__NEXT_ERROR_CODE\", {\n value: \"E701\",\n enumerable: false,\n configurable: true\n });\n }\n if (!getRequestMeta(req, 'minimalMode')) {\n res.setHeader('x-nextjs-cache', isOnDemandRevalidate ? 'REVALIDATED' : cacheEntry.isMiss ? 'MISS' : cacheEntry.isStale ? 'STALE' : 'HIT');\n }\n // Draft mode should never be cached\n if (isDraftMode) {\n res.setHeader('Cache-Control', 'private, no-cache, no-store, max-age=0, must-revalidate');\n }\n const headers = fromNodeOutgoingHttpHeaders(cacheEntry.value.headers);\n if (!(getRequestMeta(req, 'minimalMode') && isIsr)) {\n headers.delete(NEXT_CACHE_TAGS_HEADER);\n }\n // If cache control is already set on the response we don't\n // override it to allow users to customize it via next.config\n if (cacheEntry.cacheControl && !res.getHeader('Cache-Control') && !headers.get('Cache-Control')) {\n headers.set('Cache-Control', getCacheControlHeader(cacheEntry.cacheControl));\n }\n await sendResponse(nodeNextReq, nodeNextRes, new Response(cacheEntry.value.body, {\n headers,\n status: cacheEntry.value.status || 200\n }));\n return null;\n };\n // TODO: activeSpan code path is for when wrapped by\n // next-server can be removed when this is no longer used\n if (activeSpan) {\n await handleResponse(activeSpan);\n } else {\n await tracer.withPropagatedContext(req.headers, ()=>tracer.trace(BaseServerSpan.handleRequest, {\n spanName: `${method} ${req.url}`,\n kind: SpanKind.SERVER,\n attributes: {\n 'http.method': method,\n 'http.target': req.url\n }\n }, handleResponse));\n }\n } catch (err) {\n if (!(err instanceof NoFallbackError)) {\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: normalizedSrcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isRevalidate,\n isOnDemandRevalidate\n })\n });\n }\n // rethrow so that we can handle serving error page\n // If this is during static generation, throw the error again.\n if (isIsr) throw err;\n // Otherwise, send a 500 response.\n await sendResponse(nodeNextReq, nodeNextRes, new Response(null, {\n status: 500\n }));\n return null;\n }\n}\n\n//# sourceMappingURL=app-route.js.map\n"],"names":[],"mappings":"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","ignoreList":[9]}
|
|
1
|
+
{"version":3,"sources":["turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/cache/cacheHeaders.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/apiKeys/getApiKey.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/assistants/serializeApiAssistant.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/imageAvatars/serializeImageAvatar.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/iconAvatars/serializeIconAvatar.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/avatars/serializeAvatar.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/lib/avatars/defaultAvatar.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/app/api/assistants/route.ts","turbopack:///[project]/supercorp/superinterface/packages/server/src/app/api/assistants/buildRoute.ts","turbopack:///[project]/supercorp/superinterface/node_modules/next/dist/esm/build/templates/app-route.js"],"sourcesContent":["export const cacheHeaders = {\n 'Access-Control-Allow-Origin': '*',\n 'Access-Control-Allow-Methods': 'GET, POST, PUT, DELETE, OPTIONS',\n 'Access-Control-Allow-Headers':\n 'Content-Type, Authorization, X-Requested-With, Accept',\n}\n","import { ApiKeyType, ApiKey, type PrismaClient } from '@prisma/client'\nimport { validate } from 'uuid'\n\nexport const getApiKey = async ({\n authorization,\n type,\n prisma,\n}: {\n authorization: string | null\n type: ApiKeyType\n prisma: PrismaClient\n}): Promise<ApiKey | null> => {\n if (!authorization) {\n return null\n }\n\n const [, apiKeyValue] = authorization.split('Bearer ')\n\n if (!validate(apiKeyValue)) {\n return null\n }\n\n return prisma.apiKey.findFirst({\n where: { type, value: apiKeyValue },\n })\n}\n","import type { Prisma } from '@prisma/client'\nimport { ToolType } from '@prisma/client'\nimport { serializeAvatar } from '@/lib/avatars/serializeAvatar'\nimport { defaultAvatar } from '@/lib/avatars/defaultAvatar'\n\nexport const serializeApiAssistant = ({\n assistant,\n}: {\n assistant: Prisma.AssistantGetPayload<{\n include: {\n tools: true\n avatar: {\n include: {\n iconAvatar: true\n imageAvatar: true\n }\n }\n }\n }>\n}) => ({\n id: assistant.id,\n storageProviderType: assistant.storageProviderType,\n storageProviderAssistantId: assistant.openaiAssistantId,\n modelProviderId: assistant.modelProviderId,\n model: assistant.modelSlug,\n name: assistant.name,\n description: assistant.description,\n instructions: assistant.instructions,\n codeInterpreterEnabled: assistant.tools.some(\n (tool) => tool.type === ToolType.CODE_INTERPRETER,\n ),\n fileSearchEnabled: assistant.tools.some(\n (tool) => tool.type === ToolType.FILE_SEARCH,\n ),\n createdAt: assistant.createdAt.toISOString(),\n updatedAt: assistant.updatedAt.toISOString(),\n avatar: serializeAvatar({\n avatar: assistant.avatar ?? defaultAvatar,\n }),\n})\n","import { ImageAvatar } from '@prisma/client'\n\nexport const serializeImageAvatar = ({\n imageAvatar,\n}: {\n imageAvatar: ImageAvatar\n}) => ({\n url: imageAvatar.url,\n})\n","import { IconAvatar } from '@prisma/client'\n\nexport const serializeIconAvatar = ({\n iconAvatar,\n}: {\n iconAvatar: IconAvatar\n}) => ({\n name: iconAvatar.name,\n})\n","import { Prisma } from '@prisma/client'\nimport { serializeImageAvatar } from '@/lib/imageAvatars/serializeImageAvatar'\nimport { serializeIconAvatar } from '@/lib/iconAvatars/serializeIconAvatar'\n\nexport const serializeAvatar = ({\n avatar,\n}: {\n avatar: Prisma.AvatarGetPayload<{\n include: {\n imageAvatar: true\n iconAvatar: true\n }\n }>\n}) => ({\n type: avatar.type,\n imageAvatar: avatar.imageAvatar\n ? serializeImageAvatar({\n imageAvatar: avatar.imageAvatar,\n })\n : null,\n iconAvatar: avatar.iconAvatar\n ? serializeIconAvatar({\n iconAvatar: avatar.iconAvatar,\n })\n : null,\n})\n","import { Prisma } from '@prisma/client'\nimport { AvatarType, IconAvatarName } from '@prisma/client'\n\nexport const defaultAvatar = {\n type: AvatarType.ICON,\n iconAvatar: {\n name: IconAvatarName.LIGHTNING_BOLT,\n },\n imageAvatar: null,\n} as Prisma.AvatarGetPayload<{\n include: {\n imageAvatar: true\n iconAvatar: true\n }\n}>\n","import { prisma } from '@/lib/prisma'\nimport {\n buildGET,\n buildOPTIONS,\n buildPOST,\n createAssistantSchema,\n} from './buildRoute'\n\nexport { createAssistantSchema }\n\nexport const GET = buildGET({ prisma })\n\nexport const POST = buildPOST({ prisma })\n\nexport const OPTIONS = buildOPTIONS()\n","import { headers } from 'next/headers'\nimport {\n ApiKeyType,\n StorageProviderType,\n ToolType,\n type PrismaClient,\n} from '@prisma/client'\nimport { NextResponse } from 'next/server'\nimport { z } from 'zod'\nimport { cacheHeaders } from '@/lib/cache/cacheHeaders'\nimport { serializeApiAssistant } from '@/lib/assistants/serializeApiAssistant'\nimport { getApiKey } from '@/lib/apiKeys/getApiKey'\n\nconst createAssistantSchema = z\n .object({\n storageProviderType: z.nativeEnum(StorageProviderType),\n storageProviderAssistantId: z.string().nullable().optional(),\n modelProviderId: z.string(),\n model: z.string(),\n name: z.string().optional(),\n description: z.string().optional().default(''),\n instructions: z.string().optional().default(''),\n codeInterpreterEnabled: z.boolean().optional().default(false),\n fileSearchEnabled: z.boolean().optional().default(false),\n })\n .superRefine((data, ctx) => {\n if (\n data.storageProviderType === StorageProviderType.SUPERINTERFACE_CLOUD &&\n data.storageProviderAssistantId\n ) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message:\n 'storageProviderAssistantId should not be provided for SUPERINTERFACE_CLOUD',\n path: ['storageProviderAssistantId'],\n })\n }\n\n if (\n data.storageProviderType !== StorageProviderType.SUPERINTERFACE_CLOUD &&\n !data.storageProviderAssistantId\n ) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message:\n 'storageProviderAssistantId is required for this storage provider',\n path: ['storageProviderAssistantId'],\n })\n }\n })\n\nexport const buildGET =\n ({ prisma }: { prisma: PrismaClient }) =>\n async () => {\n const headersList = await headers()\n const authorization = headersList.get('authorization')\n if (!authorization) {\n return NextResponse.json(\n { error: 'No authorization header found' },\n { status: 400 },\n )\n }\n\n const privateApiKey = await getApiKey({\n authorization,\n type: ApiKeyType.PRIVATE,\n prisma,\n })\n\n if (!privateApiKey) {\n return NextResponse.json({ error: 'Invalid api key' }, { status: 400 })\n }\n\n const assistants = await prisma.assistant.findMany({\n where: {\n workspaceId: privateApiKey.workspaceId,\n },\n include: {\n tools: true,\n avatar: {\n include: {\n imageAvatar: true,\n iconAvatar: true,\n },\n },\n },\n })\n\n return NextResponse.json(\n {\n assistants: assistants.map((a) =>\n serializeApiAssistant({ assistant: a }),\n ),\n },\n { headers: cacheHeaders },\n )\n }\n\nexport const buildPOST =\n ({ prisma }: { prisma: PrismaClient }) =>\n async (request: Request) => {\n const headersList = await headers()\n const authorization = headersList.get('authorization')\n if (!authorization) {\n return NextResponse.json(\n { error: 'No authorization header found' },\n { status: 400 },\n )\n }\n\n const privateApiKey = await getApiKey({\n authorization,\n type: ApiKeyType.PRIVATE,\n prisma,\n })\n\n if (!privateApiKey) {\n return NextResponse.json({ error: 'Invalid api key' }, { status: 400 })\n }\n\n const parseResult = createAssistantSchema.safeParse(await request.json())\n\n if (!parseResult.success) {\n return NextResponse.json(\n {\n error: `Missing required fields. ${JSON.stringify(parseResult.error.format())}`,\n },\n { status: 400 },\n )\n }\n\n const {\n storageProviderType,\n storageProviderAssistantId,\n modelProviderId,\n model,\n name,\n description,\n instructions,\n codeInterpreterEnabled,\n fileSearchEnabled,\n } = parseResult.data\n\n const workspaceId = privateApiKey.workspaceId\n\n const assistant = await prisma.assistant.create({\n data: {\n workspace: { connect: { id: workspaceId } },\n modelProvider: { connect: { id: modelProviderId } },\n modelSlug: model,\n name,\n description,\n instructions,\n storageProviderType,\n openaiAssistantId: storageProviderAssistantId ?? null,\n tools: {\n create: [\n ...(fileSearchEnabled\n ? [\n {\n type: ToolType.FILE_SEARCH,\n fileSearchTool: {\n create: {},\n },\n },\n ]\n : []),\n ...(codeInterpreterEnabled\n ? [\n {\n type: ToolType.CODE_INTERPRETER,\n codeInterpreterTool: {\n create: {},\n },\n },\n ]\n : []),\n ],\n },\n },\n include: {\n tools: true,\n avatar: {\n include: {\n imageAvatar: true,\n iconAvatar: true,\n },\n },\n },\n })\n\n return NextResponse.json(\n {\n assistant: serializeApiAssistant({ assistant }),\n },\n { headers: cacheHeaders },\n )\n }\n\nexport const buildOPTIONS = () => () =>\n NextResponse.json(\n {},\n {\n headers: cacheHeaders,\n },\n )\n\nexport { createAssistantSchema }\n","import { AppRouteRouteModule } from \"next/dist/esm/server/route-modules/app-route/module.compiled\";\nimport { RouteKind } from \"next/dist/esm/server/route-kind\";\nimport { patchFetch as _patchFetch } from \"next/dist/esm/server/lib/patch-fetch\";\nimport { getRequestMeta } from \"next/dist/esm/server/request-meta\";\nimport { getTracer, SpanKind } from \"next/dist/esm/server/lib/trace/tracer\";\nimport { normalizeAppPath } from \"next/dist/esm/shared/lib/router/utils/app-paths\";\nimport { NodeNextRequest, NodeNextResponse } from \"next/dist/esm/server/base-http/node\";\nimport { NextRequestAdapter, signalFromNodeResponse } from \"next/dist/esm/server/web/spec-extension/adapters/next-request\";\nimport { BaseServerSpan } from \"next/dist/esm/server/lib/trace/constants\";\nimport { getRevalidateReason } from \"next/dist/esm/server/instrumentation/utils\";\nimport { sendResponse } from \"next/dist/esm/server/send-response\";\nimport { fromNodeOutgoingHttpHeaders, toNodeOutgoingHttpHeaders } from \"next/dist/esm/server/web/utils\";\nimport { getCacheControlHeader } from \"next/dist/esm/server/lib/cache-control\";\nimport { INFINITE_CACHE, NEXT_CACHE_TAGS_HEADER } from \"next/dist/esm/lib/constants\";\nimport { NoFallbackError } from \"next/dist/esm/shared/lib/no-fallback-error.external\";\nimport { CachedRouteKind } from \"next/dist/esm/server/response-cache\";\nimport * as userland from \"INNER_APP_ROUTE\";\n// We inject the nextConfigOutput here so that we can use them in the route\n// module.\nconst nextConfigOutput = \"\"\nconst routeModule = new AppRouteRouteModule({\n definition: {\n kind: RouteKind.APP_ROUTE,\n page: \"/api/assistants/route\",\n pathname: \"/api/assistants\",\n filename: \"route\",\n bundlePath: \"\"\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n relativeProjectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n resolvedPagePath: \"[project]/supercorp/superinterface/packages/server/src/app/api/assistants/route.ts\",\n nextConfigOutput,\n userland\n});\n// Pull out the exports that we need to expose from the module. This should\n// be eliminated when we've moved the other routes to the new format. These\n// are used to hook into the route.\nconst { workAsyncStorage, workUnitAsyncStorage, serverHooks } = routeModule;\nfunction patchFetch() {\n return _patchFetch({\n workAsyncStorage,\n workUnitAsyncStorage\n });\n}\nexport { routeModule, workAsyncStorage, workUnitAsyncStorage, serverHooks, patchFetch, };\nexport async function handler(req, res, ctx) {\n var _nextConfig_experimental;\n let srcPage = \"/api/assistants/route\";\n // turbopack doesn't normalize `/index` in the page name\n // so we need to to process dynamic routes properly\n // TODO: fix turbopack providing differing value from webpack\n if (process.env.TURBOPACK) {\n srcPage = srcPage.replace(/\\/index$/, '') || '/';\n } else if (srcPage === '/index') {\n // we always normalize /index specifically\n srcPage = '/';\n }\n const multiZoneDraftMode = process.env.__NEXT_MULTI_ZONE_DRAFT_MODE;\n const prepareResult = await routeModule.prepare(req, res, {\n srcPage,\n multiZoneDraftMode\n });\n if (!prepareResult) {\n res.statusCode = 400;\n res.end('Bad Request');\n ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());\n return null;\n }\n const { buildId, params, nextConfig, isDraftMode, prerenderManifest, routerServerContext, isOnDemandRevalidate, revalidateOnlyGenerated, resolvedPathname } = prepareResult;\n const normalizedSrcPage = normalizeAppPath(srcPage);\n let isIsr = Boolean(prerenderManifest.dynamicRoutes[normalizedSrcPage] || prerenderManifest.routes[resolvedPathname]);\n if (isIsr && !isDraftMode) {\n const isPrerendered = Boolean(prerenderManifest.routes[resolvedPathname]);\n const prerenderInfo = prerenderManifest.dynamicRoutes[normalizedSrcPage];\n if (prerenderInfo) {\n if (prerenderInfo.fallback === false && !isPrerendered) {\n throw new NoFallbackError();\n }\n }\n }\n let cacheKey = null;\n if (isIsr && !routeModule.isDev && !isDraftMode) {\n cacheKey = resolvedPathname;\n // ensure /index and / is normalized to one key\n cacheKey = cacheKey === '/index' ? '/' : cacheKey;\n }\n const supportsDynamicResponse = // If we're in development, we always support dynamic HTML\n routeModule.isDev === true || // If this is not SSG or does not have static paths, then it supports\n // dynamic HTML.\n !isIsr;\n // This is a revalidation request if the request is for a static\n // page and it is not being resumed from a postponed render and\n // it is not a dynamic RSC request then it is a revalidation\n // request.\n const isRevalidate = isIsr && !supportsDynamicResponse;\n const method = req.method || 'GET';\n const tracer = getTracer();\n const activeSpan = tracer.getActiveScopeSpan();\n const context = {\n params,\n prerenderManifest,\n renderOpts: {\n experimental: {\n cacheComponents: Boolean(nextConfig.experimental.cacheComponents),\n authInterrupts: Boolean(nextConfig.experimental.authInterrupts)\n },\n supportsDynamicResponse,\n incrementalCache: getRequestMeta(req, 'incrementalCache'),\n cacheLifeProfiles: (_nextConfig_experimental = nextConfig.experimental) == null ? void 0 : _nextConfig_experimental.cacheLife,\n isRevalidate,\n waitUntil: ctx.waitUntil,\n onClose: (cb)=>{\n res.on('close', cb);\n },\n onAfterTaskError: undefined,\n onInstrumentationRequestError: (error, _request, errorContext)=>routeModule.onRequestError(req, error, errorContext, routerServerContext)\n },\n sharedContext: {\n buildId\n }\n };\n const nodeNextReq = new NodeNextRequest(req);\n const nodeNextRes = new NodeNextResponse(res);\n const nextReq = NextRequestAdapter.fromNodeNextRequest(nodeNextReq, signalFromNodeResponse(res));\n try {\n const invokeRouteModule = async (span)=>{\n return routeModule.handle(nextReq, context).finally(()=>{\n if (!span) return;\n span.setAttributes({\n 'http.status_code': res.statusCode,\n 'next.rsc': false\n });\n const rootSpanAttributes = tracer.getRootSpanAttributes();\n // We were unable to get attributes, probably OTEL is not enabled\n if (!rootSpanAttributes) {\n return;\n }\n if (rootSpanAttributes.get('next.span_type') !== BaseServerSpan.handleRequest) {\n console.warn(`Unexpected root span type '${rootSpanAttributes.get('next.span_type')}'. Please report this Next.js issue https://github.com/vercel/next.js`);\n return;\n }\n const route = rootSpanAttributes.get('next.route');\n if (route) {\n const name = `${method} ${route}`;\n span.setAttributes({\n 'next.route': route,\n 'http.route': route,\n 'next.span_name': name\n });\n span.updateName(name);\n } else {\n span.updateName(`${method} ${req.url}`);\n }\n });\n };\n const handleResponse = async (currentSpan)=>{\n var _cacheEntry_value;\n const responseGenerator = async ({ previousCacheEntry })=>{\n try {\n if (!getRequestMeta(req, 'minimalMode') && isOnDemandRevalidate && revalidateOnlyGenerated && !previousCacheEntry) {\n res.statusCode = 404;\n // on-demand revalidate always sets this header\n res.setHeader('x-nextjs-cache', 'REVALIDATED');\n res.end('This page could not be found');\n return null;\n }\n const response = await invokeRouteModule(currentSpan);\n req.fetchMetrics = context.renderOpts.fetchMetrics;\n let pendingWaitUntil = context.renderOpts.pendingWaitUntil;\n // Attempt using provided waitUntil if available\n // if it's not we fallback to sendResponse's handling\n if (pendingWaitUntil) {\n if (ctx.waitUntil) {\n ctx.waitUntil(pendingWaitUntil);\n pendingWaitUntil = undefined;\n }\n }\n const cacheTags = context.renderOpts.collectedTags;\n // If the request is for a static response, we can cache it so long\n // as it's not edge.\n if (isIsr) {\n const blob = await response.blob();\n // Copy the headers from the response.\n const headers = toNodeOutgoingHttpHeaders(response.headers);\n if (cacheTags) {\n headers[NEXT_CACHE_TAGS_HEADER] = cacheTags;\n }\n if (!headers['content-type'] && blob.type) {\n headers['content-type'] = blob.type;\n }\n const revalidate = typeof context.renderOpts.collectedRevalidate === 'undefined' || context.renderOpts.collectedRevalidate >= INFINITE_CACHE ? false : context.renderOpts.collectedRevalidate;\n const expire = typeof context.renderOpts.collectedExpire === 'undefined' || context.renderOpts.collectedExpire >= INFINITE_CACHE ? undefined : context.renderOpts.collectedExpire;\n // Create the cache entry for the response.\n const cacheEntry = {\n value: {\n kind: CachedRouteKind.APP_ROUTE,\n status: response.status,\n body: Buffer.from(await blob.arrayBuffer()),\n headers\n },\n cacheControl: {\n revalidate,\n expire\n }\n };\n return cacheEntry;\n } else {\n // send response without caching if not ISR\n await sendResponse(nodeNextReq, nodeNextRes, response, context.renderOpts.pendingWaitUntil);\n return null;\n }\n } catch (err) {\n // if this is a background revalidate we need to report\n // the request error here as it won't be bubbled\n if (previousCacheEntry == null ? void 0 : previousCacheEntry.isStale) {\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isRevalidate,\n isOnDemandRevalidate\n })\n }, routerServerContext);\n }\n throw err;\n }\n };\n const cacheEntry = await routeModule.handleResponse({\n req,\n nextConfig,\n cacheKey,\n routeKind: RouteKind.APP_ROUTE,\n isFallback: false,\n prerenderManifest,\n isRoutePPREnabled: false,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n responseGenerator,\n waitUntil: ctx.waitUntil\n });\n // we don't create a cacheEntry for ISR\n if (!isIsr) {\n return null;\n }\n if ((cacheEntry == null ? void 0 : (_cacheEntry_value = cacheEntry.value) == null ? void 0 : _cacheEntry_value.kind) !== CachedRouteKind.APP_ROUTE) {\n var _cacheEntry_value1;\n throw Object.defineProperty(new Error(`Invariant: app-route received invalid cache entry ${cacheEntry == null ? void 0 : (_cacheEntry_value1 = cacheEntry.value) == null ? void 0 : _cacheEntry_value1.kind}`), \"__NEXT_ERROR_CODE\", {\n value: \"E701\",\n enumerable: false,\n configurable: true\n });\n }\n if (!getRequestMeta(req, 'minimalMode')) {\n res.setHeader('x-nextjs-cache', isOnDemandRevalidate ? 'REVALIDATED' : cacheEntry.isMiss ? 'MISS' : cacheEntry.isStale ? 'STALE' : 'HIT');\n }\n // Draft mode should never be cached\n if (isDraftMode) {\n res.setHeader('Cache-Control', 'private, no-cache, no-store, max-age=0, must-revalidate');\n }\n const headers = fromNodeOutgoingHttpHeaders(cacheEntry.value.headers);\n if (!(getRequestMeta(req, 'minimalMode') && isIsr)) {\n headers.delete(NEXT_CACHE_TAGS_HEADER);\n }\n // If cache control is already set on the response we don't\n // override it to allow users to customize it via next.config\n if (cacheEntry.cacheControl && !res.getHeader('Cache-Control') && !headers.get('Cache-Control')) {\n headers.set('Cache-Control', getCacheControlHeader(cacheEntry.cacheControl));\n }\n await sendResponse(nodeNextReq, nodeNextRes, new Response(cacheEntry.value.body, {\n headers,\n status: cacheEntry.value.status || 200\n }));\n return null;\n };\n // TODO: activeSpan code path is for when wrapped by\n // next-server can be removed when this is no longer used\n if (activeSpan) {\n await handleResponse(activeSpan);\n } else {\n await tracer.withPropagatedContext(req.headers, ()=>tracer.trace(BaseServerSpan.handleRequest, {\n spanName: `${method} ${req.url}`,\n kind: SpanKind.SERVER,\n attributes: {\n 'http.method': method,\n 'http.target': req.url\n }\n }, handleResponse));\n }\n } catch (err) {\n if (!(err instanceof NoFallbackError)) {\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: normalizedSrcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isRevalidate,\n isOnDemandRevalidate\n })\n });\n }\n // rethrow so that we can handle serving error page\n // If this is during static generation, throw the error again.\n if (isIsr) throw err;\n // Otherwise, send a 500 response.\n await sendResponse(nodeNextReq, nodeNextRes, new Response(null, {\n status: 500\n }));\n return null;\n }\n}\n\n//# sourceMappingURL=app-route.js.map\n"],"names":[],"mappings":"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","ignoreList":[9]}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},20635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},30611,e=>{"use strict";e.s(["cacheHeaders",()=>t]);let t={"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type"}},88122,e=>{"use strict";e.s(["getApiKey",()=>r]);var t=e.i(55897);let r=async({authorization:e,type:r,prisma:n})=>{if(!e)return null;let[,s]=e.split("Bearer ");return(0,t.validate)(s)?n.apiKey.findFirst({where:{type:r,value:s}}):null}},75247,e=>{"use strict";e.s(["isArray",()=>t,"isEmpty",()=>o,"isFunction",()=>s,"isObject",()=>r,"isPrimitive",()=>n,"isString",()=>a]);let t=Array.isArray,r=e=>!!e&&e.constructor===Object,n=e=>null==e||"object"!=typeof e&&"function"!=typeof e,s=e=>!!(e&&e.constructor&&e.call&&e.apply),a=e=>"string"==typeof e||e instanceof String,i=e=>{try{return Number(e)===e}catch{return!1}},o=e=>{if(!0===e||!1===e||null==e)return!0;if(i(e))return 0===e;if("[object Date]"===Object.prototype.toString.call(e))return isNaN(e.getTime());if(s(e)||(e=>!!e&&e.constructor===Symbol)(e))return!1;let t=e.length;if(i(t))return 0===t;let r=e.size;return i(r)?0===r:0===Object.keys(e).length}},24361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},66680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},56512,(e,t,r)=>{e.e,t.exports=function(){"use strict";var e="millisecond",t="second",r="minute",n="hour",s="week",a="month",i="quarter",o="year",u="date",l="Invalid Date",c=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,d=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,p=function(e,t,r){var n=String(e);return!n||n.length>=t?e:""+Array(t+1-n.length).join(r)+e},h="en",f={};f[h]={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],r=e%100;return"["+e+(t[(r-20)%10]||t[r]||t[0])+"]"}};var v="$isDayjsObject",y=function(e){return e instanceof x||!(!e||!e[v])},m=function e(t,r,n){var s;if(!t)return h;if("string"==typeof t){var a=t.toLowerCase();f[a]&&(s=a),r&&(f[a]=r,s=a);var i=t.split("-");if(!s&&i.length>1)return e(i[0])}else{var o=t.name;f[o]=t,s=o}return!n&&s&&(h=s),s||!n&&h},g=function(e,t){if(y(e))return e.clone();var r="object"==typeof t?t:{};return r.date=e,r.args=arguments,new x(r)},$={s:p,z:function(e){var t=-e.utcOffset(),r=Math.abs(t);return(t<=0?"+":"-")+p(Math.floor(r/60),2,"0")+":"+p(r%60,2,"0")},m:function e(t,r){if(t.date()<r.date())return-e(r,t);var n=12*(r.year()-t.year())+(r.month()-t.month()),s=t.clone().add(n,a),i=r-s<0,o=t.clone().add(n+(i?-1:1),a);return+(-(n+(r-s)/(i?s-o:o-s))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(l){return({M:a,y:o,w:s,d:"day",D:u,h:n,m:r,s:t,ms:e,Q:i})[l]||String(l||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}};$.l=m,$.i=y,$.w=function(e,t){return g(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var x=function(){function p(e){this.$L=m(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[v]=!0}var h=p.prototype;return h.parse=function(e){this.$d=function(e){var t=e.date,r=e.utc;if(null===t)return new Date(NaN);if($.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var n=t.match(c);if(n){var s=n[2]-1||0,a=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],s,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)):new Date(n[1],s,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)}}return new Date(t)}(e),this.init()},h.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},h.$utils=function(){return $},h.isValid=function(){return this.$d.toString()!==l},h.isSame=function(e,t){var r=g(e);return this.startOf(t)<=r&&r<=this.endOf(t)},h.isAfter=function(e,t){return g(e)<this.startOf(t)},h.isBefore=function(e,t){return this.endOf(t)<g(e)},h.$g=function(e,t,r){return $.u(e)?this[t]:this.set(r,e)},h.unix=function(){return Math.floor(this.valueOf()/1e3)},h.valueOf=function(){return this.$d.getTime()},h.startOf=function(e,i){var l=this,c=!!$.u(i)||i,d=$.p(e),p=function(e,t){var r=$.w(l.$u?Date.UTC(l.$y,t,e):new Date(l.$y,t,e),l);return c?r:r.endOf("day")},h=function(e,t){return $.w(l.toDate()[e].apply(l.toDate("s"),(c?[0,0,0,0]:[23,59,59,999]).slice(t)),l)},f=this.$W,v=this.$M,y=this.$D,m="set"+(this.$u?"UTC":"");switch(d){case o:return c?p(1,0):p(31,11);case a:return c?p(1,v):p(0,v+1);case s:var g=this.$locale().weekStart||0,x=(f<g?f+7:f)-g;return p(c?y-x:y+(6-x),v);case"day":case u:return h(m+"Hours",0);case n:return h(m+"Minutes",1);case r:return h(m+"Seconds",2);case t:return h(m+"Milliseconds",3);default:return this.clone()}},h.endOf=function(e){return this.startOf(e,!1)},h.$set=function(s,i){var l,c=$.p(s),d="set"+(this.$u?"UTC":""),p=((l={}).day=d+"Date",l[u]=d+"Date",l[a]=d+"Month",l[o]=d+"FullYear",l[n]=d+"Hours",l[r]=d+"Minutes",l[t]=d+"Seconds",l[e]=d+"Milliseconds",l)[c],h="day"===c?this.$D+(i-this.$W):i;if(c===a||c===o){var f=this.clone().set(u,1);f.$d[p](h),f.init(),this.$d=f.set(u,Math.min(this.$D,f.daysInMonth())).$d}else p&&this.$d[p](h);return this.init(),this},h.set=function(e,t){return this.clone().$set(e,t)},h.get=function(e){return this[$.p(e)]()},h.add=function(e,i){var u,l=this;e=Number(e);var c=$.p(i),d=function(t){var r=g(l);return $.w(r.date(r.date()+Math.round(t*e)),l)};if(c===a)return this.set(a,this.$M+e);if(c===o)return this.set(o,this.$y+e);if("day"===c)return d(1);if(c===s)return d(7);var p=((u={})[r]=6e4,u[n]=36e5,u[t]=1e3,u)[c]||1,h=this.$d.getTime()+e*p;return $.w(h,this)},h.subtract=function(e,t){return this.add(-1*e,t)},h.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return r.invalidDate||l;var n=e||"YYYY-MM-DDTHH:mm:ssZ",s=$.z(this),a=this.$H,i=this.$m,o=this.$M,u=r.weekdays,c=r.months,p=r.meridiem,h=function(e,r,s,a){return e&&(e[r]||e(t,n))||s[r].slice(0,a)},f=function(e){return $.s(a%12||12,e,"0")},v=p||function(e,t,r){var n=e<12?"AM":"PM";return r?n.toLowerCase():n};return n.replace(d,function(e,n){return n||function(e){switch(e){case"YY":return String(t.$y).slice(-2);case"YYYY":return $.s(t.$y,4,"0");case"M":return o+1;case"MM":return $.s(o+1,2,"0");case"MMM":return h(r.monthsShort,o,c,3);case"MMMM":return h(c,o);case"D":return t.$D;case"DD":return $.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return h(r.weekdaysMin,t.$W,u,2);case"ddd":return h(r.weekdaysShort,t.$W,u,3);case"dddd":return u[t.$W];case"H":return String(a);case"HH":return $.s(a,2,"0");case"h":return f(1);case"hh":return f(2);case"a":return v(a,i,!0);case"A":return v(a,i,!1);case"m":return String(i);case"mm":return $.s(i,2,"0");case"s":return String(t.$s);case"ss":return $.s(t.$s,2,"0");case"SSS":return $.s(t.$ms,3,"0");case"Z":return s}return null}(e)||s.replace(":","")})},h.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},h.diff=function(e,u,l){var c,d=this,p=$.p(u),h=g(e),f=(h.utcOffset()-this.utcOffset())*6e4,v=this-h,y=function(){return $.m(d,h)};switch(p){case o:c=y()/12;break;case a:c=y();break;case i:c=y()/3;break;case s:c=(v-f)/6048e5;break;case"day":c=(v-f)/864e5;break;case n:c=v/36e5;break;case r:c=v/6e4;break;case t:c=v/1e3;break;default:c=v}return l?c:$.a(c)},h.daysInMonth=function(){return this.endOf(a).$D},h.$locale=function(){return f[this.$L]},h.locale=function(e,t){if(!e)return this.$L;var r=this.clone(),n=m(e,t,!0);return n&&(r.$L=n),r},h.clone=function(){return $.w(this.$d,this)},h.toDate=function(){return new Date(this.valueOf())},h.toJSON=function(){return this.isValid()?this.toISOString():null},h.toISOString=function(){return this.$d.toISOString()},h.toString=function(){return this.$d.toUTCString()},p}(),w=x.prototype;return g.prototype=w,[["$ms",e],["$s",t],["$m",r],["$H",n],["$W","day"],["$M",a],["$y",o],["$D",u]].forEach(function(e){w[e[1]]=function(t){return this.$g(t,e[0],e[1])}}),g.extend=function(e,t){return e.$i||(e(t,x,g),e.$i=!0),g},g.locale=m,g.isDayjs=y,g.unix=function(e){return g(1e3*e)},g.en=f[h],g.Ls=f,g.p={},g}()},7651,e=>{"use strict";e.s(["buildOpenaiClient",()=>n]);var t=e.i(9717),r=e.i(11582);let n=({modelProvider:e})=>(0,r.supercompat)({client:(0,t.clientAdapter)({modelProvider:e})})},80382,e=>{"use strict";e.s([])},62389,e=>{"use strict";e.s(["handler",()=>N,"patchFetch",()=>P,"routeModule",()=>b,"serverHooks",()=>C,"workAsyncStorage",()=>D,"workUnitAsyncStorage",()=>T],62389);var t=e.i(5865),r=e.i(43877),n=e.i(77767),s=e.i(92562),a=e.i(66256),i=e.i(5270),o=e.i(90231),u=e.i(82677),l=e.i(51081),c=e.i(89822),d=e.i(9124),p=e.i(39147),h=e.i(40568),f=e.i(87188),v=e.i(93695);e.i(57132);var y=e.i(80739);e.s(["GET",()=>A,"OPTIONS",()=>S],74331);var m=e.i(24493),g=e.i(11053),$=e.i(29173),x=e.i(49493),w=e.i(30611),R=e.i(88122),M=e.i(7651);let O=async({modelProvider:e})=>{if(!(({modelProvider:e})=>e.type===$.ModelProviderType.OLLAMA?!!e.endpoint:!!e.apiKey&&(e.type!==$.ModelProviderType.AZURE_OPENAI||!!e.endpoint))({modelProvider:e}))return[];let t=(0,M.buildOpenaiClient)({modelProvider:e}),r=[];try{for await(let e of t.beta.assistants.list({limit:100}))r.push(e)}catch(e){console.error(e)}return r},A=(({prisma:e})=>async(t,r)=>{let{modelProviderId:n}=await r.params,s=(await (0,g.headers)()).get("authorization");if(!s)return x.NextResponse.json({error:"No authorization header found"},{status:400});let a=await (0,R.getApiKey)({type:$.ApiKeyType.PRIVATE,authorization:s,prisma:e});if(!a)return x.NextResponse.json({error:"Invalid api key"},{status:400});let i=await e.modelProvider.findUnique({where:{id:n,workspaceId:a.workspaceId}});if(!i)return x.NextResponse.json({error:"No provider found"},{status:400});let o=await (({modelProvider:e})=>(({modelProvider:e})=>e.type===$.ModelProviderType.OPENAI?$.StorageProviderType.OPENAI:e.type===$.ModelProviderType.AZURE_OPENAI?$.StorageProviderType.AZURE_OPENAI:null)({modelProvider:e})?O({modelProvider:e}):[])({modelProvider:i});return x.NextResponse.json({storageProviderAssistants:o.map(e=>(({storageProviderAssistant:e})=>({id:e.id,model:e.model,name:e.name,description:e.description,instructions:e.instructions,tools:e.tools}))({storageProviderAssistant:e}))},{headers:w.cacheHeaders})})({prisma:m.prisma}),S=()=>x.NextResponse.json({},{headers:w.cacheHeaders});var E=e.i(74331);let b=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/providers/[modelProviderId]/assistants/route",pathname:"/api/providers/[modelProviderId]/assistants",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/supercorp/superinterface/packages/server/src/app/api/providers/[modelProviderId]/assistants/route.ts",nextConfigOutput:"",userland:E}),{workAsyncStorage:D,workUnitAsyncStorage:T,serverHooks:C}=b;function P(){return(0,n.patchFetch)({workAsyncStorage:D,workUnitAsyncStorage:T})}async function N(e,t,n){var m;let g="/api/providers/[modelProviderId]/assistants/route";g=g.replace(/\/index$/,"")||"/";let $=await b.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!$)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:x,params:w,nextConfig:R,isDraftMode:M,prerenderManifest:O,routerServerContext:A,isOnDemandRevalidate:S,revalidateOnlyGenerated:E,resolvedPathname:D}=$,T=(0,i.normalizeAppPath)(g),C=!!(O.dynamicRoutes[T]||O.routes[D]);if(C&&!M){let e=!!O.routes[D],t=O.dynamicRoutes[T];if(t&&!1===t.fallback&&!e)throw new v.NoFallbackError}let P=null;!C||b.isDev||M||(P="/index"===(P=D)?"/":P);let N=!0===b.isDev||!C,_=C&&!N,k=e.method||"GET",j=(0,a.getTracer)(),I=j.getActiveScopeSpan(),H={params:w,prerenderManifest:O,renderOpts:{experimental:{cacheComponents:!!R.experimental.cacheComponents,authInterrupts:!!R.experimental.authInterrupts},supportsDynamicResponse:N,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:null==(m=R.experimental)?void 0:m.cacheLife,isRevalidate:_,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n)=>b.onRequestError(e,t,n,A)},sharedContext:{buildId:x}},U=new o.NodeNextRequest(e),q=new o.NodeNextResponse(t),L=u.NextRequestAdapter.fromNodeNextRequest(U,(0,u.signalFromNodeResponse)(t));try{let i=async r=>b.handle(L,H).finally(()=>{if(!r)return;r.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let n=j.getRootSpanAttributes();if(!n)return;if(n.get("next.span_type")!==l.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${n.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=n.get("next.route");if(s){let e=`${k} ${s}`;r.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),r.updateName(e)}else r.updateName(`${k} ${e.url}`)}),o=async a=>{var o,u;let l=async({previousCacheEntry:r})=>{try{if(!(0,s.getRequestMeta)(e,"minimalMode")&&S&&E&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await i(a);e.fetchMetrics=H.renderOpts.fetchMetrics;let u=H.renderOpts.pendingWaitUntil;u&&n.waitUntil&&(n.waitUntil(u),u=void 0);let l=H.renderOpts.collectedTags;if(!C)return await (0,d.sendResponse)(U,q,o,H.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,p.toNodeOutgoingHttpHeaders)(o.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,n=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isRevalidate:_,isOnDemandRevalidate:S})},A),t}},v=await b.handleResponse({req:e,nextConfig:R,cacheKey:P,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:E,responseGenerator:l,waitUntil:n.waitUntil});if(!C)return null;if((null==v||null==(o=v.value)?void 0:o.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==v||null==(u=v.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,s.getRequestMeta)(e,"minimalMode")||t.setHeader("x-nextjs-cache",S?"REVALIDATED":v.isMiss?"MISS":v.isStale?"STALE":"HIT"),M&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,p.fromNodeOutgoingHttpHeaders)(v.value.headers);return(0,s.getRequestMeta)(e,"minimalMode")&&C||m.delete(f.NEXT_CACHE_TAGS_HEADER),!v.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,h.getCacheControlHeader)(v.cacheControl)),await (0,d.sendResponse)(U,q,new Response(v.value.body,{headers:m,status:v.value.status||200})),null};I?await o(I):await j.withPropagatedContext(e.headers,()=>j.trace(l.BaseServerSpan.handleRequest,{spanName:`${k} ${e.url}`,kind:a.SpanKind.SERVER,attributes:{"http.method":k,"http.target":e.url}},o))}catch(t){if(t instanceof v.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isRevalidate:_,isOnDemandRevalidate:S})}),C)throw t;return await (0,d.sendResponse)(U,q,new Response(null,{status:500})),null}}},93814,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__00f22293._.js"].map(t=>e.l(t))).then(()=>t(50213)))}];
|
|
1
|
+
module.exports=[18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},20635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},30611,e=>{"use strict";e.s(["cacheHeaders",()=>t]);let t={"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, X-Requested-With, Accept"}},88122,e=>{"use strict";e.s(["getApiKey",()=>r]);var t=e.i(55897);let r=async({authorization:e,type:r,prisma:n})=>{if(!e)return null;let[,s]=e.split("Bearer ");return(0,t.validate)(s)?n.apiKey.findFirst({where:{type:r,value:s}}):null}},75247,e=>{"use strict";e.s(["isArray",()=>t,"isEmpty",()=>o,"isFunction",()=>s,"isObject",()=>r,"isPrimitive",()=>n,"isString",()=>a]);let t=Array.isArray,r=e=>!!e&&e.constructor===Object,n=e=>null==e||"object"!=typeof e&&"function"!=typeof e,s=e=>!!(e&&e.constructor&&e.call&&e.apply),a=e=>"string"==typeof e||e instanceof String,i=e=>{try{return Number(e)===e}catch{return!1}},o=e=>{if(!0===e||!1===e||null==e)return!0;if(i(e))return 0===e;if("[object Date]"===Object.prototype.toString.call(e))return isNaN(e.getTime());if(s(e)||(e=>!!e&&e.constructor===Symbol)(e))return!1;let t=e.length;if(i(t))return 0===t;let r=e.size;return i(r)?0===r:0===Object.keys(e).length}},24361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},66680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},56512,(e,t,r)=>{e.e,t.exports=function(){"use strict";var e="millisecond",t="second",r="minute",n="hour",s="week",a="month",i="quarter",o="year",u="date",l="Invalid Date",c=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,d=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,p=function(e,t,r){var n=String(e);return!n||n.length>=t?e:""+Array(t+1-n.length).join(r)+e},h="en",f={};f[h]={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],r=e%100;return"["+e+(t[(r-20)%10]||t[r]||t[0])+"]"}};var v="$isDayjsObject",y=function(e){return e instanceof x||!(!e||!e[v])},m=function e(t,r,n){var s;if(!t)return h;if("string"==typeof t){var a=t.toLowerCase();f[a]&&(s=a),r&&(f[a]=r,s=a);var i=t.split("-");if(!s&&i.length>1)return e(i[0])}else{var o=t.name;f[o]=t,s=o}return!n&&s&&(h=s),s||!n&&h},g=function(e,t){if(y(e))return e.clone();var r="object"==typeof t?t:{};return r.date=e,r.args=arguments,new x(r)},$={s:p,z:function(e){var t=-e.utcOffset(),r=Math.abs(t);return(t<=0?"+":"-")+p(Math.floor(r/60),2,"0")+":"+p(r%60,2,"0")},m:function e(t,r){if(t.date()<r.date())return-e(r,t);var n=12*(r.year()-t.year())+(r.month()-t.month()),s=t.clone().add(n,a),i=r-s<0,o=t.clone().add(n+(i?-1:1),a);return+(-(n+(r-s)/(i?s-o:o-s))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(l){return({M:a,y:o,w:s,d:"day",D:u,h:n,m:r,s:t,ms:e,Q:i})[l]||String(l||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}};$.l=m,$.i=y,$.w=function(e,t){return g(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var x=function(){function p(e){this.$L=m(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[v]=!0}var h=p.prototype;return h.parse=function(e){this.$d=function(e){var t=e.date,r=e.utc;if(null===t)return new Date(NaN);if($.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var n=t.match(c);if(n){var s=n[2]-1||0,a=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],s,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)):new Date(n[1],s,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)}}return new Date(t)}(e),this.init()},h.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},h.$utils=function(){return $},h.isValid=function(){return this.$d.toString()!==l},h.isSame=function(e,t){var r=g(e);return this.startOf(t)<=r&&r<=this.endOf(t)},h.isAfter=function(e,t){return g(e)<this.startOf(t)},h.isBefore=function(e,t){return this.endOf(t)<g(e)},h.$g=function(e,t,r){return $.u(e)?this[t]:this.set(r,e)},h.unix=function(){return Math.floor(this.valueOf()/1e3)},h.valueOf=function(){return this.$d.getTime()},h.startOf=function(e,i){var l=this,c=!!$.u(i)||i,d=$.p(e),p=function(e,t){var r=$.w(l.$u?Date.UTC(l.$y,t,e):new Date(l.$y,t,e),l);return c?r:r.endOf("day")},h=function(e,t){return $.w(l.toDate()[e].apply(l.toDate("s"),(c?[0,0,0,0]:[23,59,59,999]).slice(t)),l)},f=this.$W,v=this.$M,y=this.$D,m="set"+(this.$u?"UTC":"");switch(d){case o:return c?p(1,0):p(31,11);case a:return c?p(1,v):p(0,v+1);case s:var g=this.$locale().weekStart||0,x=(f<g?f+7:f)-g;return p(c?y-x:y+(6-x),v);case"day":case u:return h(m+"Hours",0);case n:return h(m+"Minutes",1);case r:return h(m+"Seconds",2);case t:return h(m+"Milliseconds",3);default:return this.clone()}},h.endOf=function(e){return this.startOf(e,!1)},h.$set=function(s,i){var l,c=$.p(s),d="set"+(this.$u?"UTC":""),p=((l={}).day=d+"Date",l[u]=d+"Date",l[a]=d+"Month",l[o]=d+"FullYear",l[n]=d+"Hours",l[r]=d+"Minutes",l[t]=d+"Seconds",l[e]=d+"Milliseconds",l)[c],h="day"===c?this.$D+(i-this.$W):i;if(c===a||c===o){var f=this.clone().set(u,1);f.$d[p](h),f.init(),this.$d=f.set(u,Math.min(this.$D,f.daysInMonth())).$d}else p&&this.$d[p](h);return this.init(),this},h.set=function(e,t){return this.clone().$set(e,t)},h.get=function(e){return this[$.p(e)]()},h.add=function(e,i){var u,l=this;e=Number(e);var c=$.p(i),d=function(t){var r=g(l);return $.w(r.date(r.date()+Math.round(t*e)),l)};if(c===a)return this.set(a,this.$M+e);if(c===o)return this.set(o,this.$y+e);if("day"===c)return d(1);if(c===s)return d(7);var p=((u={})[r]=6e4,u[n]=36e5,u[t]=1e3,u)[c]||1,h=this.$d.getTime()+e*p;return $.w(h,this)},h.subtract=function(e,t){return this.add(-1*e,t)},h.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return r.invalidDate||l;var n=e||"YYYY-MM-DDTHH:mm:ssZ",s=$.z(this),a=this.$H,i=this.$m,o=this.$M,u=r.weekdays,c=r.months,p=r.meridiem,h=function(e,r,s,a){return e&&(e[r]||e(t,n))||s[r].slice(0,a)},f=function(e){return $.s(a%12||12,e,"0")},v=p||function(e,t,r){var n=e<12?"AM":"PM";return r?n.toLowerCase():n};return n.replace(d,function(e,n){return n||function(e){switch(e){case"YY":return String(t.$y).slice(-2);case"YYYY":return $.s(t.$y,4,"0");case"M":return o+1;case"MM":return $.s(o+1,2,"0");case"MMM":return h(r.monthsShort,o,c,3);case"MMMM":return h(c,o);case"D":return t.$D;case"DD":return $.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return h(r.weekdaysMin,t.$W,u,2);case"ddd":return h(r.weekdaysShort,t.$W,u,3);case"dddd":return u[t.$W];case"H":return String(a);case"HH":return $.s(a,2,"0");case"h":return f(1);case"hh":return f(2);case"a":return v(a,i,!0);case"A":return v(a,i,!1);case"m":return String(i);case"mm":return $.s(i,2,"0");case"s":return String(t.$s);case"ss":return $.s(t.$s,2,"0");case"SSS":return $.s(t.$ms,3,"0");case"Z":return s}return null}(e)||s.replace(":","")})},h.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},h.diff=function(e,u,l){var c,d=this,p=$.p(u),h=g(e),f=(h.utcOffset()-this.utcOffset())*6e4,v=this-h,y=function(){return $.m(d,h)};switch(p){case o:c=y()/12;break;case a:c=y();break;case i:c=y()/3;break;case s:c=(v-f)/6048e5;break;case"day":c=(v-f)/864e5;break;case n:c=v/36e5;break;case r:c=v/6e4;break;case t:c=v/1e3;break;default:c=v}return l?c:$.a(c)},h.daysInMonth=function(){return this.endOf(a).$D},h.$locale=function(){return f[this.$L]},h.locale=function(e,t){if(!e)return this.$L;var r=this.clone(),n=m(e,t,!0);return n&&(r.$L=n),r},h.clone=function(){return $.w(this.$d,this)},h.toDate=function(){return new Date(this.valueOf())},h.toJSON=function(){return this.isValid()?this.toISOString():null},h.toISOString=function(){return this.$d.toISOString()},h.toString=function(){return this.$d.toUTCString()},p}(),w=x.prototype;return g.prototype=w,[["$ms",e],["$s",t],["$m",r],["$H",n],["$W","day"],["$M",a],["$y",o],["$D",u]].forEach(function(e){w[e[1]]=function(t){return this.$g(t,e[0],e[1])}}),g.extend=function(e,t){return e.$i||(e(t,x,g),e.$i=!0),g},g.locale=m,g.isDayjs=y,g.unix=function(e){return g(1e3*e)},g.en=f[h],g.Ls=f,g.p={},g}()},7651,e=>{"use strict";e.s(["buildOpenaiClient",()=>n]);var t=e.i(9717),r=e.i(11582);let n=({modelProvider:e})=>(0,r.supercompat)({client:(0,t.clientAdapter)({modelProvider:e})})},80382,e=>{"use strict";e.s([])},62389,e=>{"use strict";e.s(["handler",()=>N,"patchFetch",()=>P,"routeModule",()=>b,"serverHooks",()=>C,"workAsyncStorage",()=>D,"workUnitAsyncStorage",()=>T],62389);var t=e.i(5865),r=e.i(43877),n=e.i(77767),s=e.i(92562),a=e.i(66256),i=e.i(5270),o=e.i(90231),u=e.i(82677),l=e.i(51081),c=e.i(89822),d=e.i(9124),p=e.i(39147),h=e.i(40568),f=e.i(87188),v=e.i(93695);e.i(57132);var y=e.i(80739);e.s(["GET",()=>O,"OPTIONS",()=>S],74331);var m=e.i(24493),g=e.i(11053),$=e.i(29173),x=e.i(49493),w=e.i(30611),R=e.i(88122),A=e.i(7651);let M=async({modelProvider:e})=>{if(!(({modelProvider:e})=>e.type===$.ModelProviderType.OLLAMA?!!e.endpoint:!!e.apiKey&&(e.type!==$.ModelProviderType.AZURE_OPENAI||!!e.endpoint))({modelProvider:e}))return[];let t=(0,A.buildOpenaiClient)({modelProvider:e}),r=[];try{for await(let e of t.beta.assistants.list({limit:100}))r.push(e)}catch(e){console.error(e)}return r},O=(({prisma:e})=>async(t,r)=>{let{modelProviderId:n}=await r.params,s=(await (0,g.headers)()).get("authorization");if(!s)return x.NextResponse.json({error:"No authorization header found"},{status:400});let a=await (0,R.getApiKey)({type:$.ApiKeyType.PRIVATE,authorization:s,prisma:e});if(!a)return x.NextResponse.json({error:"Invalid api key"},{status:400});let i=await e.modelProvider.findUnique({where:{id:n,workspaceId:a.workspaceId}});if(!i)return x.NextResponse.json({error:"No provider found"},{status:400});let o=await (({modelProvider:e})=>(({modelProvider:e})=>e.type===$.ModelProviderType.OPENAI?$.StorageProviderType.OPENAI:e.type===$.ModelProviderType.AZURE_OPENAI?$.StorageProviderType.AZURE_OPENAI:null)({modelProvider:e})?M({modelProvider:e}):[])({modelProvider:i});return x.NextResponse.json({storageProviderAssistants:o.map(e=>(({storageProviderAssistant:e})=>({id:e.id,model:e.model,name:e.name,description:e.description,instructions:e.instructions,tools:e.tools}))({storageProviderAssistant:e}))},{headers:w.cacheHeaders})})({prisma:m.prisma}),S=()=>x.NextResponse.json({},{headers:w.cacheHeaders});var E=e.i(74331);let b=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/providers/[modelProviderId]/assistants/route",pathname:"/api/providers/[modelProviderId]/assistants",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/supercorp/superinterface/packages/server/src/app/api/providers/[modelProviderId]/assistants/route.ts",nextConfigOutput:"",userland:E}),{workAsyncStorage:D,workUnitAsyncStorage:T,serverHooks:C}=b;function P(){return(0,n.patchFetch)({workAsyncStorage:D,workUnitAsyncStorage:T})}async function N(e,t,n){var m;let g="/api/providers/[modelProviderId]/assistants/route";g=g.replace(/\/index$/,"")||"/";let $=await b.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!$)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:x,params:w,nextConfig:R,isDraftMode:A,prerenderManifest:M,routerServerContext:O,isOnDemandRevalidate:S,revalidateOnlyGenerated:E,resolvedPathname:D}=$,T=(0,i.normalizeAppPath)(g),C=!!(M.dynamicRoutes[T]||M.routes[D]);if(C&&!A){let e=!!M.routes[D],t=M.dynamicRoutes[T];if(t&&!1===t.fallback&&!e)throw new v.NoFallbackError}let P=null;!C||b.isDev||A||(P="/index"===(P=D)?"/":P);let N=!0===b.isDev||!C,_=C&&!N,k=e.method||"GET",j=(0,a.getTracer)(),I=j.getActiveScopeSpan(),H={params:w,prerenderManifest:M,renderOpts:{experimental:{cacheComponents:!!R.experimental.cacheComponents,authInterrupts:!!R.experimental.authInterrupts},supportsDynamicResponse:N,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:null==(m=R.experimental)?void 0:m.cacheLife,isRevalidate:_,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n)=>b.onRequestError(e,t,n,O)},sharedContext:{buildId:x}},U=new o.NodeNextRequest(e),q=new o.NodeNextResponse(t),L=u.NextRequestAdapter.fromNodeNextRequest(U,(0,u.signalFromNodeResponse)(t));try{let i=async r=>b.handle(L,H).finally(()=>{if(!r)return;r.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let n=j.getRootSpanAttributes();if(!n)return;if(n.get("next.span_type")!==l.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${n.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=n.get("next.route");if(s){let e=`${k} ${s}`;r.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),r.updateName(e)}else r.updateName(`${k} ${e.url}`)}),o=async a=>{var o,u;let l=async({previousCacheEntry:r})=>{try{if(!(0,s.getRequestMeta)(e,"minimalMode")&&S&&E&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await i(a);e.fetchMetrics=H.renderOpts.fetchMetrics;let u=H.renderOpts.pendingWaitUntil;u&&n.waitUntil&&(n.waitUntil(u),u=void 0);let l=H.renderOpts.collectedTags;if(!C)return await (0,d.sendResponse)(U,q,o,H.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,p.toNodeOutgoingHttpHeaders)(o.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,n=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isRevalidate:_,isOnDemandRevalidate:S})},O),t}},v=await b.handleResponse({req:e,nextConfig:R,cacheKey:P,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:M,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:E,responseGenerator:l,waitUntil:n.waitUntil});if(!C)return null;if((null==v||null==(o=v.value)?void 0:o.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==v||null==(u=v.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,s.getRequestMeta)(e,"minimalMode")||t.setHeader("x-nextjs-cache",S?"REVALIDATED":v.isMiss?"MISS":v.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,p.fromNodeOutgoingHttpHeaders)(v.value.headers);return(0,s.getRequestMeta)(e,"minimalMode")&&C||m.delete(f.NEXT_CACHE_TAGS_HEADER),!v.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,h.getCacheControlHeader)(v.cacheControl)),await (0,d.sendResponse)(U,q,new Response(v.value.body,{headers:m,status:v.value.status||200})),null};I?await o(I):await j.withPropagatedContext(e.headers,()=>j.trace(l.BaseServerSpan.handleRequest,{spanName:`${k} ${e.url}`,kind:a.SpanKind.SERVER,attributes:{"http.method":k,"http.target":e.url}},o))}catch(t){if(t instanceof v.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isRevalidate:_,isOnDemandRevalidate:S})}),C)throw t;return await (0,d.sendResponse)(U,q,new Response(null,{status:500})),null}}},93814,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__00f22293._.js"].map(t=>e.l(t))).then(()=>t(50213)))}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__583a7f1c._.js.map
|