@seqyuan/annodex 0.1.1 → 0.1.2

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.
Files changed (78) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +6 -6
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/required-server-files.js +1 -1
  6. package/.next/required-server-files.json +1 -1
  7. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/.next/server/app/_global-error.html +1 -1
  9. package/.next/server/app/_global-error.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  17. package/.next/server/app/_not-found.html +1 -1
  18. package/.next/server/app/_not-found.rsc +2 -2
  19. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  20. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  21. package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  22. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  23. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  24. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  25. package/.next/server/app/api/files/[...path]/route.js +1 -1
  26. package/.next/server/app/api/files/[...path]/route.js.nft.json +1 -1
  27. package/.next/server/app/api/internal/runtime/route.js +1 -1
  28. package/.next/server/app/api/models/route.js +1 -1
  29. package/.next/server/app/api/models-config/route.js +1 -1
  30. package/.next/server/app/api/projects/route.js +1 -1
  31. package/.next/server/app/api/reports/[id]/route.js +4 -4
  32. package/.next/server/app/api/reports/[id]/route.js.nft.json +1 -1
  33. package/.next/server/app/api/search/route.js +1 -1
  34. package/.next/server/app/api/search/route.js.nft.json +1 -1
  35. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  36. package/.next/server/app/api/sessions/[id]/context/route.js.nft.json +1 -1
  37. package/.next/server/app/api/sessions/route.js +1 -1
  38. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  39. package/.next/server/app/api/settings/route.js +1 -1
  40. package/.next/server/app/api/skills/install/route.js +1 -1
  41. package/.next/server/app/api/skills/route.js +6 -1
  42. package/.next/server/app/api/version/route.js +1 -1
  43. package/.next/server/app/index.html +1 -1
  44. package/.next/server/app/index.rsc +3 -3
  45. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  46. package/.next/server/app/index.segments/_full.segment.rsc +3 -3
  47. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  48. package/.next/server/app/index.segments/_index.segment.rsc +2 -2
  49. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  50. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  51. package/.next/server/app/login.html +1 -1
  52. package/.next/server/app/login.rsc +2 -2
  53. package/.next/server/app/login.segments/_full.segment.rsc +2 -2
  54. package/.next/server/app/login.segments/_head.segment.rsc +1 -1
  55. package/.next/server/app/login.segments/_index.segment.rsc +2 -2
  56. package/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  57. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  58. package/.next/server/app/login.segments/login.segment.rsc +1 -1
  59. package/.next/server/app/page.js +4 -2
  60. package/.next/server/app/page_client-reference-manifest.js +1 -1
  61. package/.next/server/app-paths-manifest.json +6 -6
  62. package/.next/server/chunks/5582.js +2 -2
  63. package/.next/server/chunks/6429.js +11 -1
  64. package/.next/server/functions-config-manifest.json +1 -0
  65. package/.next/server/middleware-build-manifest.js +1 -1
  66. package/.next/server/next-font-manifest.js +1 -1
  67. package/.next/server/next-font-manifest.json +1 -1
  68. package/.next/server/pages/404.html +1 -1
  69. package/.next/server/pages/500.html +1 -1
  70. package/.next/server/server-reference-manifest.json +1 -1
  71. package/.next/static/chunks/app/page-ce3267b63b18748a.js +272 -0
  72. package/.next/static/css/{dc49561245206daf.css → 523acabb330ed50a.css} +1 -1
  73. package/.next/trace +74 -74
  74. package/.next/trace-build +1 -1
  75. package/package.json +1 -1
  76. package/.next/static/chunks/app/page-9e365f85e549786e.js +0 -270
  77. /package/.next/static/{MrC_PjcnTCuTz_2z6_wXx → ba8L-XmHpOUZrUOCFVvvj}/_buildManifest.js +0 -0
  78. /package/.next/static/{MrC_PjcnTCuTz_2z6_wXx → ba8L-XmHpOUZrUOCFVvvj}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
1
  "use strict";(()=>{var a={};a.id=4037,a.ids=[4037],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1304:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>u,POST:()=>w,PUT:()=>v});var e=c(23211),f=c(29021),g=c.n(f),h=c(33873),i=c.n(h),j=c(40402),k=a([j]);j=(k.then?(await k)():k)[0];let x=new Set(["node_modules",".git",".next","dist","build","__pycache__",".turbo",".cache","coverage",".pytest_cache",".mypy_cache","target","vendor",".DS_Store",".git"]),y=[".pyc"],z={png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",bmp:"image/bmp",ico:"image/x-icon",avif:"image/avif"},A={mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg",oga:"audio/ogg",opus:"audio/ogg",m4a:"audio/mp4",aac:"audio/aac",flac:"audio/flac",weba:"audio/webm",webm:"audio/webm"},B={pdf:"application/pdf",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",pptx:"application/vnd.openxmlformats-officedocument.presentationml.presentation",xls:"application/vnd.ms-excel",doc:"application/msword",ppt:"application/vnd.ms-powerpoint"};function l(a){return i().basename(a).toLowerCase().split(".").pop()??""}let C={ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",mjs:"javascript",cjs:"javascript",py:"python",rb:"ruby",go:"go",rs:"rust",java:"java",kt:"kotlin",swift:"swift",c:"c",cpp:"cpp",h:"c",hpp:"cpp",cs:"csharp",html:"html",htm:"html",css:"css",scss:"css",less:"css",json:"json",jsonl:"json",yaml:"yaml",yml:"yaml",toml:"toml",xml:"xml",md:"markdown",mdx:"markdown",csv:"csv",tsv:"tsv",log:"text",sh:"bash",bash:"bash",zsh:"bash",fish:"bash",sql:"sql",graphql:"graphql",gql:"graphql",dockerfile:"dockerfile",tf:"hcl",hcl:"hcl",env:"bash",gitignore:"bash",txt:"text"};function m(a){let b=l(a);return"csv"===b||"tsv"===b||"md"===b||"mdx"===b||"txt"===b||"log"===b?2097152:262144}function n(a){return"object"==typeof a&&null!==a&&"name"in a&&"size"in a&&"arrayBuffer"in a}let D=/^[a-zA-Z]:[\\/]/;function o(a){return D.test(a)||a.startsWith("\\\\")||a.startsWith("//")}function p(a){let b=a.join("/"),c=b.replace(/\\/g,"/");return o(c)?c:"/"+b.replace(/^\/+/,"")}async function q(){let a=Date.now(),b=globalThis.__annodexAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let d=await (0,j.dQ)(),e=new Set;for(let a of d)a.cwd&&e.add(a.cwd);let f=(await Promise.resolve().then(c.t.bind(c,21820,23))).homedir(),{existsSync:g,readFileSync:h,readdirSync:k}=await Promise.resolve().then(c.t.bind(c,29021,23));for(let a of[i().join(f,".config","annodex","annodex-projects.json"),i().join(f,".config","annodex","annovibe-projects.json")])if(g(a))try{let b=JSON.parse(h(a,"utf8"));for(let[a,c]of Object.entries(b.projects??{})){if(c?.hidden===!0)continue;let b="string"==typeof c?.cwd?c.cwd:a;b&&e.add(b)}}catch{}for(let a of[i().join(f,"annodex","workspace"),i().join(f,"annovibe","workspace")])g(a)&&e.add(a);try{for(let a of k(f))/^pi-cwd-\d{8}$/.test(a)&&e.add(i().join(f,a))}catch{}return globalThis.__annodexAllowedRootsCache={roots:e,expiresAt:a+5e3},e}function r(a,b){for(let c of b){let b=o(a)||o(c),d=b?i().win32:i(),e=b?"\\":i().sep,f=d.resolve(a),g=d.resolve(c),h=b?f.toLowerCase():f,j=b?g.toLowerCase():g,k=j.endsWith(e)?j:j+e;if(h===j||h.startsWith(k))return!0}return!1}function s(a,b){let c=g().createReadStream(a,b),d=!1;return new ReadableStream({start(a){c.on("data",b=>{if(!d)try{a.enqueue(new Uint8Array(b))}catch{d=!0,c.destroy()}}),c.once("end",()=>{if(!d){d=!0;try{a.close()}catch{}}}),c.once("error",b=>{if(!d){d=!0;try{a.error(b)}catch{}}})},cancel(){d=!0,c.destroy()}})}function t(a,b,c,d){let e={"Content-Type":c,"Cache-Control":"no-cache","Accept-Ranges":"bytes"};if(!d)return new Response(s(a),{headers:{...e,"Content-Length":String(b.size)}});let f=/^bytes=(\d*)-(\d*)$/.exec(d);if(!f)return new Response(null,{status:416,headers:{...e,"Content-Range":`bytes */${b.size}`}});let g=f[1]?Number(f[1]):0,h=f[2]?Number(f[2]):b.size-1;if(!f[1]&&f[2]){let a=Number(f[2]);g=Math.max(b.size-a,0),h=b.size-1}if(!Number.isFinite(g)||!Number.isFinite(h)||g<0||h<g||g>=b.size)return new Response(null,{status:416,headers:{...e,"Content-Range":`bytes */${b.size}`}});let i=(h=Math.min(h,b.size-1))-g+1;return new Response(s(a,{start:g,end:h}),{status:206,headers:{...e,"Content-Length":String(i),"Content-Range":`bytes ${g}-${h}/${b.size}`}})}async function u(a,{params:b}){try{let c,{path:d}=await b,f=p(d),h=a.nextUrl.searchParams.get("type")??"list",j=await q();if(!r(f,j))return e.NextResponse.json({error:"Access denied"},{status:403});try{c=g().statSync(f)}catch{return e.NextResponse.json({error:"Not found"},{status:404})}if("read"===h){let b;if(!c.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let d=z[l(f)]??null;if(d){if(c.size>0xa00000)return e.NextResponse.json({error:"Image too large (>10MB)"},{status:413});return t(f,c,d,a.headers.get("range"))}let h=A[l(f)]??null;if(h)return t(f,c,h,a.headers.get("range"));let j=B[l(f)]??null;if(j){if(c.size>0x3200000)return e.NextResponse.json({error:"Document too large (>50MB)"},{status:413});return t(f,c,j,a.headers.get("range"))}let k=m(f);if(c.size>k)return e.NextResponse.json({error:`File too large for preview (>${Math.round(k/1024/1024*10)/10}MB)`},{status:413});let n=g().readFileSync(f,"utf-8"),o=(b=i().basename(f).toLowerCase(),"dockerfile"===b||b.startsWith("dockerfile.")?"dockerfile":".env"===b||b.startsWith(".env.")?"bash":"makefile"===b||"gnumakefile"===b?"makefile":C[b.split(".").pop()??""]??"text");return e.NextResponse.json({content:n,language:o,size:c.size,mtime:c.mtime.toISOString()})}if("watch"===h){if(!c.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let a=null,b=new ReadableStream({start(b){let c=(a,c)=>{let d=`event: ${a}
2
2
  data: ${JSON.stringify(c)}
3
3
 
4
- `;try{b.enqueue(new TextEncoder().encode(d))}catch{}};c("connected",{filePath:f});try{(a=g().watch(f,()=>{try{let a=g().statSync(f);c("change",{mtime:a.mtime.toISOString(),size:a.size})}catch{c("change",{mtime:new Date().toISOString(),size:0})}})).on("error",()=>{try{b.close()}catch{}})}catch{c("error",{message:"Failed to watch file"}),b.close()}},cancel(){try{a?.close()}catch{}}});return new Response(b,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive","X-Accel-Buffering":"no"}})}if(!c.isDirectory())return e.NextResponse.json({error:"Not a directory"},{status:400});let k=g().readdirSync(f).filter(a=>!x.has(a)&&!y.some(b=>a.endsWith(b))).map(a=>{let b=i().join(f,a);try{let c=g().statSync(b);return{name:a,isDir:c.isDirectory(),size:c.isFile()?c.size:0,modified:c.mtime.toISOString()}}catch{return null}}).filter(Boolean).sort((a,b)=>a.isDir!==b.isDir?a.isDir?-1:1:a.name.localeCompare(b.name));return e.NextResponse.json({entries:k,path:f})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function v(a,{params:b}){try{let c,{path:d}=await b,f=p(d),h=await q();if(!r(f,h))return e.NextResponse.json({error:"Access denied"},{status:403});try{c=g().statSync(f)}catch{return e.NextResponse.json({error:"Not found"},{status:404})}if(!c.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let i=await a.json();if("string"!=typeof i.content)return e.NextResponse.json({error:"Missing 'content' field"},{status:400});if(i.baseMtime&&i.baseMtime!==c.mtime.toISOString())return e.NextResponse.json({error:"File changed on disk since it was opened",conflict:!0,mtime:c.mtime.toISOString()},{status:409});let j=m(f);if(Buffer.byteLength(i.content,"utf-8")>j){let a;return e.NextResponse.json({error:`Content too large (>${(a=j/1024/1024)>=1?`${Math.round(10*a)/10}MB`:`${Math.round(j/1024)}KB`})`},{status:413})}return g().writeFileSync(f,i.content,"utf-8"),e.NextResponse.json({success:!0,mtime:g().statSync(f).mtime.toISOString()})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function w(a,{params:b}){try{let c,{path:d}=await b,f=p(d),h=a.nextUrl.searchParams.get("type");if("upload"!==h)return e.NextResponse.json({error:"Unsupported operation"},{status:400});let j=await q();if(!r(f,j))return e.NextResponse.json({error:"Access denied"},{status:403});try{c=g().statSync(f)}catch{return e.NextResponse.json({error:"Target directory not found"},{status:404})}if(!c.isDirectory())return e.NextResponse.json({error:"Target is not a directory"},{status:400});try{g().accessSync(f,g().constants.W_OK)}catch{return e.NextResponse.json({error:"No write permission for target directory"},{status:403})}let k=(await a.formData()).getAll("files").filter(n);if(0===k.length)return e.NextResponse.json({error:"No files uploaded"},{status:400});if(k.reduce((a,b)=>a+b.size,0)>0xc800000)return e.NextResponse.json({error:"Upload batch too large (>200MB)"},{status:413});let l=[],m=[];for(let a of k){let b=a.name||"untitled",c=function(a){let b=a.replace(/\0/g,"").trim();return!b||"."===b||".."===b||b.includes("/")||b.includes("\\")?null:b}(b);if(!c){m.push({name:b,error:"Invalid file name"});continue}if(a.size>0x3200000){m.push({name:b,error:"File too large (>50MB)"});continue}try{let d=Buffer.from(await a.arrayBuffer()),e=!1;for(let h=0;h<1e3;h+=1){let j=function(a,b,c){let d=i().extname(b),e=b.slice(0,b.length-d.length)||b,f=0===c?b:`${e} (${c})${d}`;return{name:f,path:i().join(a,f)}}(f,c,h);try{g().writeFileSync(j.path,d,{flag:"wx"}),l.push({originalName:b,name:j.name,path:j.path,size:a.size}),e=!0;break}catch(a){if("object"==typeof a&&null!==a&&"code"in a&&"EEXIST"===a.code)continue;throw a}}e||m.push({name:b,error:"Could not find an available file name"})}catch(c){let a=c instanceof Error?c.message:String(c);a.includes("EACCES")||a.includes("EPERM")?m.push({name:b,error:"No write permission"}):m.push({name:b,error:a})}}return e.NextResponse.json({success:0===m.length,uploaded:l,failed:m},{status:l.length>0?200:400})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}d()}catch(a){d(a)}})},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},6118:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(1304),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/files/[...path]/route",pathname:"/api/files/[...path]",filename:"route",bundlePath:"app/api/files/[...path]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/files/[...path]/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/files/[...path]/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},56220:a=>{a.exports=import("ws")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},79646:a=>{a.exports=require("child_process")},81630:a=>{a.exports=require("http")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,8477,5582],()=>b(b.s=6118));module.exports=c})();
4
+ `;try{b.enqueue(new TextEncoder().encode(d))}catch{}};c("connected",{filePath:f});try{(a=g().watch(f,()=>{try{let a=g().statSync(f);c("change",{mtime:a.mtime.toISOString(),size:a.size})}catch{c("change",{mtime:new Date().toISOString(),size:0})}})).on("error",()=>{try{b.close()}catch{}})}catch{c("error",{message:"Failed to watch file"}),b.close()}},cancel(){try{a?.close()}catch{}}});return new Response(b,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive","X-Accel-Buffering":"no"}})}if(!c.isDirectory())return e.NextResponse.json({error:"Not a directory"},{status:400});let k=g().readdirSync(f).filter(a=>!x.has(a)&&!y.some(b=>a.endsWith(b))).map(a=>{let b=i().join(f,a);try{let c=g().statSync(b);return{name:a,isDir:c.isDirectory(),size:c.isFile()?c.size:0,modified:c.mtime.toISOString()}}catch{return null}}).filter(Boolean).sort((a,b)=>a.isDir!==b.isDir?a.isDir?-1:1:a.name.localeCompare(b.name));return e.NextResponse.json({entries:k,path:f})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function v(a,{params:b}){try{let c,{path:d}=await b,f=p(d),h=await q();if(!r(f,h))return e.NextResponse.json({error:"Access denied"},{status:403});try{c=g().statSync(f)}catch{return e.NextResponse.json({error:"Not found"},{status:404})}if(!c.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let i=await a.json();if("string"!=typeof i.content)return e.NextResponse.json({error:"Missing 'content' field"},{status:400});if(i.baseMtime&&i.baseMtime!==c.mtime.toISOString())return e.NextResponse.json({error:"File changed on disk since it was opened",conflict:!0,mtime:c.mtime.toISOString()},{status:409});let j=m(f);if(Buffer.byteLength(i.content,"utf-8")>j){let a;return e.NextResponse.json({error:`Content too large (>${(a=j/1024/1024)>=1?`${Math.round(10*a)/10}MB`:`${Math.round(j/1024)}KB`})`},{status:413})}return g().writeFileSync(f,i.content,"utf-8"),e.NextResponse.json({success:!0,mtime:g().statSync(f).mtime.toISOString()})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function w(a,{params:b}){try{let c,{path:d}=await b,f=p(d),h=a.nextUrl.searchParams.get("type");if("upload"!==h)return e.NextResponse.json({error:"Unsupported operation"},{status:400});let j=await q();if(!r(f,j))return e.NextResponse.json({error:"Access denied"},{status:403});try{c=g().statSync(f)}catch{return e.NextResponse.json({error:"Target directory not found"},{status:404})}if(!c.isDirectory())return e.NextResponse.json({error:"Target is not a directory"},{status:400});try{g().accessSync(f,g().constants.W_OK)}catch{return e.NextResponse.json({error:"No write permission for target directory"},{status:403})}let k=(await a.formData()).getAll("files").filter(n);if(0===k.length)return e.NextResponse.json({error:"No files uploaded"},{status:400});if(k.reduce((a,b)=>a+b.size,0)>0xc800000)return e.NextResponse.json({error:"Upload batch too large (>200MB)"},{status:413});let l=[],m=[];for(let a of k){let b=a.name||"untitled",c=function(a){let b=a.replace(/\0/g,"").trim();return!b||"."===b||".."===b||b.includes("/")||b.includes("\\")?null:b}(b);if(!c){m.push({name:b,error:"Invalid file name"});continue}if(a.size>0x3200000){m.push({name:b,error:"File too large (>50MB)"});continue}try{let d=Buffer.from(await a.arrayBuffer()),e=!1;for(let h=0;h<1e3;h+=1){let j=function(a,b,c){let d=i().extname(b),e=b.slice(0,b.length-d.length)||b,f=0===c?b:`${e} (${c})${d}`;return{name:f,path:i().join(a,f)}}(f,c,h);try{g().writeFileSync(j.path,d,{flag:"wx"}),l.push({originalName:b,name:j.name,path:j.path,size:a.size}),e=!0;break}catch(a){if("object"==typeof a&&null!==a&&"code"in a&&"EEXIST"===a.code)continue;throw a}}e||m.push({name:b,error:"Could not find an available file name"})}catch(c){let a=c instanceof Error?c.message:String(c);a.includes("EACCES")||a.includes("EPERM")?m.push({name:b,error:"No write permission"}):m.push({name:b,error:a})}}return e.NextResponse.json({success:0===m.length,uploaded:l,failed:m},{status:l.length>0?200:400})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}d()}catch(a){d(a)}})},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},6118:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(1304),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/files/[...path]/route",pathname:"/api/files/[...path]",filename:"route",bundlePath:"app/api/files/[...path]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/files/[...path]/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/files/[...path]/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},56220:a=>{a.exports=import("ws")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},79646:a=>{a.exports=require("child_process")},81630:a=>{a.exports=require("http")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,5582],()=>b(b.s=6118));module.exports=c})();
@@ -1 +1 @@
1
- {"version":1,"files":["../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../node_modules/@swc/helpers/package.json","../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/package.json","../../../../../../node_modules/react/cjs/react.development.js","../../../../../../node_modules/react/cjs/react.production.js","../../../../../../node_modules/react/index.js","../../../../../../node_modules/react/package.json","../../../../../../node_modules/ws/index.js","../../../../../../node_modules/ws/lib/buffer-util.js","../../../../../../node_modules/ws/lib/constants.js","../../../../../../node_modules/ws/lib/event-target.js","../../../../../../node_modules/ws/lib/extension.js","../../../../../../node_modules/ws/lib/limiter.js","../../../../../../node_modules/ws/lib/permessage-deflate.js","../../../../../../node_modules/ws/lib/receiver.js","../../../../../../node_modules/ws/lib/sender.js","../../../../../../node_modules/ws/lib/stream.js","../../../../../../node_modules/ws/lib/subprotocol.js","../../../../../../node_modules/ws/lib/validation.js","../../../../../../node_modules/ws/lib/websocket-server.js","../../../../../../node_modules/ws/lib/websocket.js","../../../../../../node_modules/ws/package.json","../../../../../../node_modules/ws/wrapper.mjs","../../../../../../package.json","../../../../../package.json","../../../../chunks/1813.js","../../../../chunks/4741.js","../../../../chunks/5582.js","../../../../chunks/8477.js","../../../../webpack-runtime.js","route_client-reference-manifest.js"]}
1
+ {"version":1,"files":["../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../node_modules/@swc/helpers/package.json","../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/package.json","../../../../../../node_modules/react/cjs/react.development.js","../../../../../../node_modules/react/cjs/react.production.js","../../../../../../node_modules/react/index.js","../../../../../../node_modules/react/package.json","../../../../../../node_modules/ws/index.js","../../../../../../node_modules/ws/lib/buffer-util.js","../../../../../../node_modules/ws/lib/constants.js","../../../../../../node_modules/ws/lib/event-target.js","../../../../../../node_modules/ws/lib/extension.js","../../../../../../node_modules/ws/lib/limiter.js","../../../../../../node_modules/ws/lib/permessage-deflate.js","../../../../../../node_modules/ws/lib/receiver.js","../../../../../../node_modules/ws/lib/sender.js","../../../../../../node_modules/ws/lib/stream.js","../../../../../../node_modules/ws/lib/subprotocol.js","../../../../../../node_modules/ws/lib/validation.js","../../../../../../node_modules/ws/lib/websocket-server.js","../../../../../../node_modules/ws/lib/websocket.js","../../../../../../node_modules/ws/package.json","../../../../../../node_modules/ws/wrapper.mjs","../../../../../../package.json","../../../../../package.json","../../../../chunks/1813.js","../../../../chunks/4741.js","../../../../chunks/5582.js","../../../../webpack-runtime.js","route_client-reference-manifest.js"]}
@@ -1 +1 @@
1
- "use strict";(()=>{var a={};a.id=4368,a.ids=[4368],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44767:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>h,dynamic:()=>i});var e=c(23211),f=c(56429),g=a([f]);f=(g.then?(await g)():g)[0];let i="force-dynamic";async function h(a){let b;return(b=process.env.ANNODEX_INTERNAL_TOKEN??process.env.ANNOVIBE_INTERNAL_TOKEN)&&(a.headers.get("x-annodex-internal-token")===b||a.headers.get("x-annovibe-internal-token")===b)?e.NextResponse.json({runningVersion:"0.1.1",pid:process.pid,uptimeSeconds:Math.round(process.uptime()),...(0,f.Bj)()}):e.NextResponse.json({error:"Forbidden"},{status:403})}d()}catch(a){d(a)}})},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},56220:a=>{a.exports=import("ws")},59984:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(44767),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/internal/runtime/route",pathname:"/api/internal/runtime",filename:"route",bundlePath:"app/api/internal/runtime/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/internal/runtime/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/internal/runtime/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},79646:a=>{a.exports=require("child_process")},81630:a=>{a.exports=require("http")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,8477,5582,6429],()=>b(b.s=59984));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=4368,a.ids=[4368],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44767:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>h,dynamic:()=>i});var e=c(23211),f=c(56429),g=a([f]);f=(g.then?(await g)():g)[0];let i="force-dynamic";async function h(a){let b;return(b=process.env.ANNODEX_INTERNAL_TOKEN??process.env.ANNOVIBE_INTERNAL_TOKEN)&&(a.headers.get("x-annodex-internal-token")===b||a.headers.get("x-annovibe-internal-token")===b)?e.NextResponse.json({runningVersion:"0.1.2",pid:process.pid,uptimeSeconds:Math.round(process.uptime()),...(0,f.Bj)()}):e.NextResponse.json({error:"Forbidden"},{status:403})}d()}catch(a){d(a)}})},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},56220:a=>{a.exports=import("ws")},59984:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(44767),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/internal/runtime/route",pathname:"/api/internal/runtime",filename:"route",bundlePath:"app/api/internal/runtime/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/internal/runtime/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/internal/runtime/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},79646:a=>{a.exports=require("child_process")},81630:a=>{a.exports=require("http")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,8477,5582,6429],()=>b(b.s=59984));module.exports=c})();
@@ -1 +1 @@
1
- (()=>{var a={};a.id=552,a.ids=[552],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12236:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{GET:()=>x,dynamic:()=>w});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(55132);let w="force-dynamic";async function x(){try{let a=(0,v.Dw)(),b=(0,v.KR)(a),c=(0,v.fZ)(a),d={},e=[];for(let a of b)d[`${a.provider}:${a.modelId}`]=a.name,e.push({id:a.modelId,name:a.name,provider:a.provider,contextWindow:a.contextWindow,maxTokens:a.maxTokens,input:a.input});let f={},g={};for(let a of b){let b=`${a.provider}:${a.modelId}`;f[b]=["off","minimal","low","medium","high","xhigh"],g[b]={auto:null,off:"off",minimal:"minimal",low:"low",medium:"medium",high:"high",xhigh:"xhigh"}}return Response.json({models:d,modelList:e,defaultModel:c,thinkingLevels:f,thinkingLevelMaps:g})}catch{return Response.json({models:{},modelList:[],defaultModel:null,thinkingLevels:{},thinkingLevelMaps:{}})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/models/route",pathname:"/api/models",filename:"route",bundlePath:"app/api/models/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/models/route.ts",nextConfigOutput:"",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/models/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},21820:a=>{"use strict";a.exports=require("os")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55132:(a,b,c)=>{"use strict";c.d(b,{AX:()=>q,Dw:()=>p,HO:()=>n,KR:()=>r,fZ:()=>s,u_:()=>o});var d=c(29021),e=c(33873),f=c(21820),g=c(18477);function h(){return(0,e.join)((0,f.homedir)(),".config","annodex")}function i(){return(0,e.join)(h(),"providers.json")}let j={"gpt-5-codex":{contextWindow:1048576,maxTokens:128e3},"gpt-5.1-codex-max":{contextWindow:1048576,maxTokens:128e3},"gpt-5.1-codex-mini":{contextWindow:1048576,maxTokens:128e3},"gpt-4.1-codex-max":{contextWindow:1048576,maxTokens:32768},"gpt-4.1-codex-mini":{contextWindow:1048576,maxTokens:32768},"deepseek-chat":{contextWindow:1048576,maxTokens:8192},"deepseek-reasoner":{contextWindow:1048576,maxTokens:8192},"deepseek-v3":{contextWindow:1048576,maxTokens:8192},"kimi-k2":{contextWindow:1048576,maxTokens:8192},"moonshot-v1-auto":{contextWindow:1048576,maxTokens:8192},"glm-4-plus":{contextWindow:128e3,maxTokens:4096},"glm-4-flash":{contextWindow:128e3,maxTokens:4096},"qwen-max":{contextWindow:1048576,maxTokens:8192},"qwen-plus":{contextWindow:1048576,maxTokens:8192},"qwen-turbo":{contextWindow:1048576,maxTokens:8192},"qwen3-235b-a22b":{contextWindow:131072,maxTokens:8192}},k=[{id:"gpt-5-codex",name:"GPT-5 Codex",contextWindow:1048576,maxTokens:128e3,input:["text","image"]},{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:1048576,maxTokens:128e3,input:["text","image"]},{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini",contextWindow:1048576,maxTokens:128e3,input:["text","image"]}];function l(){return{providers:[{id:"openai",name:"OpenAI",baseUrl:"https://api.openai.com/v1",apiKey:"",models:[...k]}],defaultProvider:"openai",defaultModel:"gpt-5.1-codex-max"}}function m(){let a=(0,e.join)((0,f.homedir)(),".codex","config.toml");if(!(0,d.existsSync)(a))return null;try{let b=(0,d.readFileSync)(a,"utf-8");return(0,g.qg)(b)}catch{return null}}function n(){let a=i();if(!(0,d.existsSync)(a))return l();try{let b=JSON.parse((0,d.readFileSync)(a,"utf-8"));return{providers:Array.isArray(b.providers)?b.providers.filter(a=>"string"==typeof a.id&&"string"==typeof a.baseUrl):l().providers,defaultProvider:"string"==typeof b.defaultProvider?b.defaultProvider:void 0,defaultModel:"string"==typeof b.defaultModel?b.defaultModel:void 0}}catch{return l()}}function o(a){let b=h();return(0,d.existsSync)(b)||(0,d.mkdirSync)(b,{recursive:!0}),(0,d.writeFileSync)(i(),JSON.stringify(a,null,2),"utf-8"),a}function p(){let a,b=n(),c=(a=m(),a?.model_providers?Object.entries(a.model_providers).filter(([,a])=>"string"==typeof a.base_url).map(([a,b])=>({id:a,name:b.name??a,baseUrl:(b.base_url??"").replace(/\/+$/,""),apiKey:"",models:[]})):[]),d=function(){let a=m();if(!a)return{};let b=a.model_provider,c=a.model_providers?.[b??""]?.name??b;return{model:a.model,providerId:b,providerName:c}}(),e=new Set(b.providers.map(a=>a.id)),f=[...b.providers];for(let a of c)e.has(a.id)||(f.push(a),e.add(a.id));let g=b.defaultModel??d.model??f[0]?.models[0]?.id;return{providers:f,defaultModel:g,defaultProvider:b.defaultProvider??d.providerId,generativeUI:!1!==b.generativeUI,codexDefaults:d}}function q(a,b){let c=b||a.defaultModel;if(!c)return null;let d=function(a,b){for(let c of a.providers)if(c.models.some(a=>a.id===b))return c}(a,c);if(!d&&a.providers.length>0){let b=a.providers[0],c=b.models[0];return c?{provider:b,modelId:c.id}:null}return d?{provider:d,modelId:c}:null}function r(a){let b=[];for(let c of a.providers)for(let a of c.models){let d=j[a.id];b.push({provider:c.id,modelId:a.id,name:a.name||a.id,contextWindow:a.contextWindow??d?.contextWindow,maxTokens:a.maxTokens??d?.maxTokens,input:a.input})}return b}function s(a){let b=q(a,a.defaultModel);if(!b){for(let b of a.providers)if(b.models.length>0)return{provider:b.id,modelId:b.models[0].id};return null}return{provider:b.provider.id,modelId:b.modelId}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,8477],()=>b(b.s=12236));module.exports=c})();
1
+ (()=>{var a={};a.id=552,a.ids=[552],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12236:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{GET:()=>x,dynamic:()=>w});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(55132);let w="force-dynamic";async function x(){try{let a=(0,v.Dw)(),b=(0,v.KR)(a),c=(0,v.fZ)(a),d={},e=[];for(let a of b)d[`${a.provider}:${a.modelId}`]=a.name,e.push({id:a.modelId,name:a.name,provider:a.provider,contextWindow:a.contextWindow,maxTokens:a.maxTokens,input:a.input});let f={},g={};for(let a of b){let b=`${a.provider}:${a.modelId}`;f[b]=["off","minimal","low","medium","high","xhigh"],g[b]={auto:null,off:"off",minimal:"minimal",low:"low",medium:"medium",high:"high",xhigh:"xhigh"}}return Response.json({models:d,modelList:e,defaultModel:c,thinkingLevels:f,thinkingLevelMaps:g})}catch{return Response.json({models:{},modelList:[],defaultModel:null,thinkingLevels:{},thinkingLevelMaps:{}})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/models/route",pathname:"/api/models",filename:"route",bundlePath:"app/api/models/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/models/route.ts",nextConfigOutput:"",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/models/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},21820:a=>{"use strict";a.exports=require("os")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55132:(a,b,c)=>{"use strict";c.d(b,{AX:()=>q,Dw:()=>p,HO:()=>n,KR:()=>r,fZ:()=>s,u_:()=>o});var d=c(29021),e=c(33873),f=c(21820),g=c(18477);function h(){return process.env.ANNODEX_CONFIG_DIR??process.env.ANNOVIBE_CONFIG_DIR??(0,e.join)((0,f.homedir)(),".config","annodex")}function i(){return(0,e.join)(h(),"providers.json")}let j={"gpt-5-codex":{contextWindow:1048576,maxTokens:128e3},"gpt-5.1-codex-max":{contextWindow:1048576,maxTokens:128e3},"gpt-5.1-codex-mini":{contextWindow:1048576,maxTokens:128e3},"gpt-4.1-codex-max":{contextWindow:1048576,maxTokens:32768},"gpt-4.1-codex-mini":{contextWindow:1048576,maxTokens:32768},"deepseek-chat":{contextWindow:1048576,maxTokens:8192},"deepseek-reasoner":{contextWindow:1048576,maxTokens:8192},"deepseek-v3":{contextWindow:1048576,maxTokens:8192},"kimi-k2":{contextWindow:1048576,maxTokens:8192},"moonshot-v1-auto":{contextWindow:1048576,maxTokens:8192},"glm-4-plus":{contextWindow:128e3,maxTokens:4096},"glm-4-flash":{contextWindow:128e3,maxTokens:4096},"qwen-max":{contextWindow:1048576,maxTokens:8192},"qwen-plus":{contextWindow:1048576,maxTokens:8192},"qwen-turbo":{contextWindow:1048576,maxTokens:8192},"qwen3-235b-a22b":{contextWindow:131072,maxTokens:8192}},k=[{id:"gpt-5-codex",name:"GPT-5 Codex",contextWindow:1048576,maxTokens:128e3,input:["text","image"]},{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:1048576,maxTokens:128e3,input:["text","image"]},{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini",contextWindow:1048576,maxTokens:128e3,input:["text","image"]}];function l(){return{providers:[{id:"openai",name:"OpenAI",baseUrl:"https://api.openai.com/v1",apiKey:"",api:"openai-responses",models:[...k]}],defaultProvider:"openai",defaultModel:"gpt-5.1-codex-max",exists:!1}}function m(){let a=(0,e.join)((0,f.homedir)(),".codex","config.toml");if(!(0,d.existsSync)(a))return null;try{let b=(0,d.readFileSync)(a,"utf-8");return(0,g.qg)(b)}catch{return null}}function n(){let a=i();if(!(0,d.existsSync)(a))return l();try{let b=JSON.parse((0,d.readFileSync)(a,"utf-8"));return{providers:Array.isArray(b.providers)?b.providers.filter(a=>"string"==typeof a.id&&"string"==typeof a.baseUrl).map(a=>({...a,name:"string"==typeof a.name?a.name:a.id,apiKey:"string"==typeof a.apiKey?a.apiKey:"",api:"string"==typeof a.api?a.api:void 0,models:Array.isArray(a.models)?a.models:[]})):l().providers,defaultProvider:"string"==typeof b.defaultProvider?b.defaultProvider:void 0,defaultModel:"string"==typeof b.defaultModel?b.defaultModel:void 0,generativeUI:"boolean"==typeof b.generativeUI?b.generativeUI:void 0,exists:!0}}catch{return l()}}function o(a){let b=h();(0,d.existsSync)(b)||(0,d.mkdirSync)(b,{recursive:!0});let{exists:c,...e}=a;return(0,d.writeFileSync)(i(),JSON.stringify(e,null,2),"utf-8"),a}function p(){let a=n(),b=function(){let a=m();if(!a?.model_providers)return[];let b="string"==typeof a.model?a.model:"",c="string"==typeof a.model_provider?a.model_provider:"";return Object.entries(a.model_providers).filter(([,a])=>"string"==typeof a.base_url).map(([a,d])=>{var e;return{id:a,name:d.name??a,baseUrl:(d.base_url??"").replace(/\/+$/,""),apiKey:"",api:"responses"===(e=d.wire_api)?"openai-responses":"chat"===e||"chat_completions"===e||"chat-completions"===e?"openai-completions":void 0,models:a===c&&b?[{id:b,name:b}]:[]}})}(),c=function(){let a=m();if(!a)return{};let b=a.model_provider,c=a.model_providers?.[b??""]?.name??b;return{model:a.model,providerId:b,providerName:c}}(),d=new Set(a.providers.map(a=>a.id)),e=[...a.providers];for(let a of b)d.has(a.id)||(e.push(a),d.add(a.id));let f=a.exists?a.defaultModel:void 0,g=a.exists?a.defaultProvider:void 0,h=f??c.model??a.defaultModel??e[0]?.models[0]?.id;return{providers:e,defaultModel:h,defaultProvider:g??c.providerId??a.defaultProvider,generativeUI:!1!==a.generativeUI,codexDefaults:c}}function q(a,b){let c=b||a.defaultModel;if(!c)return null;let d=function(a,b){for(let c of a.providers)if(c.models.some(a=>a.id===b))return c}(a,c);if(!d&&a.providers.length>0){let b=a.providers[0],c=b.models[0];return c?{provider:b,modelId:c.id}:null}return d?{provider:d,modelId:c}:null}function r(a){let b=[];for(let c of a.providers)for(let a of c.models){let d=j[a.id];b.push({provider:c.id,modelId:a.id,name:a.name||a.id,contextWindow:a.contextWindow??d?.contextWindow,maxTokens:a.maxTokens??d?.maxTokens,input:a.input})}return b}function s(a){let b=q(a,a.defaultModel);if(!b){for(let b of a.providers)if(b.models.length>0)return{provider:b.id,modelId:b.models[0].id};return null}return{provider:b.provider.id,modelId:b.modelId}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,8477],()=>b(b.s=12236));module.exports=c})();
@@ -1 +1 @@
1
- (()=>{var a={};a.id=7483,a.ids=[7483],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{"use strict";a.exports=require("os")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55132:(a,b,c)=>{"use strict";c.d(b,{AX:()=>q,Dw:()=>p,HO:()=>n,KR:()=>r,fZ:()=>s,u_:()=>o});var d=c(29021),e=c(33873),f=c(21820),g=c(18477);function h(){return(0,e.join)((0,f.homedir)(),".config","annodex")}function i(){return(0,e.join)(h(),"providers.json")}let j={"gpt-5-codex":{contextWindow:1048576,maxTokens:128e3},"gpt-5.1-codex-max":{contextWindow:1048576,maxTokens:128e3},"gpt-5.1-codex-mini":{contextWindow:1048576,maxTokens:128e3},"gpt-4.1-codex-max":{contextWindow:1048576,maxTokens:32768},"gpt-4.1-codex-mini":{contextWindow:1048576,maxTokens:32768},"deepseek-chat":{contextWindow:1048576,maxTokens:8192},"deepseek-reasoner":{contextWindow:1048576,maxTokens:8192},"deepseek-v3":{contextWindow:1048576,maxTokens:8192},"kimi-k2":{contextWindow:1048576,maxTokens:8192},"moonshot-v1-auto":{contextWindow:1048576,maxTokens:8192},"glm-4-plus":{contextWindow:128e3,maxTokens:4096},"glm-4-flash":{contextWindow:128e3,maxTokens:4096},"qwen-max":{contextWindow:1048576,maxTokens:8192},"qwen-plus":{contextWindow:1048576,maxTokens:8192},"qwen-turbo":{contextWindow:1048576,maxTokens:8192},"qwen3-235b-a22b":{contextWindow:131072,maxTokens:8192}},k=[{id:"gpt-5-codex",name:"GPT-5 Codex",contextWindow:1048576,maxTokens:128e3,input:["text","image"]},{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:1048576,maxTokens:128e3,input:["text","image"]},{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini",contextWindow:1048576,maxTokens:128e3,input:["text","image"]}];function l(){return{providers:[{id:"openai",name:"OpenAI",baseUrl:"https://api.openai.com/v1",apiKey:"",models:[...k]}],defaultProvider:"openai",defaultModel:"gpt-5.1-codex-max"}}function m(){let a=(0,e.join)((0,f.homedir)(),".codex","config.toml");if(!(0,d.existsSync)(a))return null;try{let b=(0,d.readFileSync)(a,"utf-8");return(0,g.qg)(b)}catch{return null}}function n(){let a=i();if(!(0,d.existsSync)(a))return l();try{let b=JSON.parse((0,d.readFileSync)(a,"utf-8"));return{providers:Array.isArray(b.providers)?b.providers.filter(a=>"string"==typeof a.id&&"string"==typeof a.baseUrl):l().providers,defaultProvider:"string"==typeof b.defaultProvider?b.defaultProvider:void 0,defaultModel:"string"==typeof b.defaultModel?b.defaultModel:void 0}}catch{return l()}}function o(a){let b=h();return(0,d.existsSync)(b)||(0,d.mkdirSync)(b,{recursive:!0}),(0,d.writeFileSync)(i(),JSON.stringify(a,null,2),"utf-8"),a}function p(){let a,b=n(),c=(a=m(),a?.model_providers?Object.entries(a.model_providers).filter(([,a])=>"string"==typeof a.base_url).map(([a,b])=>({id:a,name:b.name??a,baseUrl:(b.base_url??"").replace(/\/+$/,""),apiKey:"",models:[]})):[]),d=function(){let a=m();if(!a)return{};let b=a.model_provider,c=a.model_providers?.[b??""]?.name??b;return{model:a.model,providerId:b,providerName:c}}(),e=new Set(b.providers.map(a=>a.id)),f=[...b.providers];for(let a of c)e.has(a.id)||(f.push(a),e.add(a.id));let g=b.defaultModel??d.model??f[0]?.models[0]?.id;return{providers:f,defaultModel:g,defaultProvider:b.defaultProvider??d.providerId,generativeUI:!1!==b.generativeUI,codexDefaults:d}}function q(a,b){let c=b||a.defaultModel;if(!c)return null;let d=function(a,b){for(let c of a.providers)if(c.models.some(a=>a.id===b))return c}(a,c);if(!d&&a.providers.length>0){let b=a.providers[0],c=b.models[0];return c?{provider:b,modelId:c.id}:null}return d?{provider:d,modelId:c}:null}function r(a){let b=[];for(let c of a.providers)for(let a of c.models){let d=j[a.id];b.push({provider:c.id,modelId:a.id,name:a.name||a.id,contextWindow:a.contextWindow??d?.contextWindow,maxTokens:a.maxTokens??d?.maxTokens,input:a.input})}return b}function s(a){let b=q(a,a.defaultModel);if(!b){for(let b of a.providers)if(b.models.length>0)return{provider:b.id,modelId:b.models[0].id};return null}return{provider:b.provider.id,modelId:b.modelId}}},56899:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{GET:()=>y,PUT:()=>z,dynamic:()=>x});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(55132);let x="force-dynamic";async function y(){let a=(0,w.HO)();return v.NextResponse.json({providers:Object.fromEntries(a.providers.map(a=>[a.id,{baseUrl:a.baseUrl,apiKey:a.apiKey,api:"openai-completions",models:a.models.map(a=>({id:a.id,name:a.name,input:a.input}))}])),defaultProvider:a.defaultProvider,defaultModel:a.defaultModel})}async function z(a){try{let b=await a.json(),c=(0,w.HO)();return b.providers&&(c.providers=Object.entries(b.providers).filter(([,a])=>"string"==typeof a.baseUrl).map(([a,b])=>({id:a,name:a,baseUrl:(b.baseUrl??"").replace(/\/+$/,""),apiKey:"string"==typeof b.apiKey?b.apiKey:"",models:Array.isArray(b.models)?b.models.filter(a=>"string"==typeof a.id).map(a=>({id:a.id,name:a.name||a.id,input:a.input})):[]}))),"string"==typeof b.defaultProvider&&(c.defaultProvider=b.defaultProvider),"string"==typeof b.defaultModel&&(c.defaultModel=b.defaultModel),(0,w.u_)(c),v.NextResponse.json({success:!0})}catch(a){return v.NextResponse.json({error:String(a)},{status:500})}}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/models-config/route",pathname:"/api/models-config",filename:"route",bundlePath:"app/api/models-config/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/models-config/route.ts",nextConfigOutput:"",userland:d}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/models-config/route";"/index"===d&&(d="/");let e=await A.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:z,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(z.dynamicRoutes[H]||z.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!z.routes[E],b=z.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||A.isDev||y||(K="/index"===(K=E)?"/":K);let L=!0===A.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await A.getIncrementalCache(a,w,z,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:z.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>A.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await A.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:z,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await A.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,8477],()=>b(b.s=56899));module.exports=c})();
1
+ (()=>{var a={};a.id=7483,a.ids=[7483],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{"use strict";a.exports=require("os")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55132:(a,b,c)=>{"use strict";c.d(b,{AX:()=>q,Dw:()=>p,HO:()=>n,KR:()=>r,fZ:()=>s,u_:()=>o});var d=c(29021),e=c(33873),f=c(21820),g=c(18477);function h(){return process.env.ANNODEX_CONFIG_DIR??process.env.ANNOVIBE_CONFIG_DIR??(0,e.join)((0,f.homedir)(),".config","annodex")}function i(){return(0,e.join)(h(),"providers.json")}let j={"gpt-5-codex":{contextWindow:1048576,maxTokens:128e3},"gpt-5.1-codex-max":{contextWindow:1048576,maxTokens:128e3},"gpt-5.1-codex-mini":{contextWindow:1048576,maxTokens:128e3},"gpt-4.1-codex-max":{contextWindow:1048576,maxTokens:32768},"gpt-4.1-codex-mini":{contextWindow:1048576,maxTokens:32768},"deepseek-chat":{contextWindow:1048576,maxTokens:8192},"deepseek-reasoner":{contextWindow:1048576,maxTokens:8192},"deepseek-v3":{contextWindow:1048576,maxTokens:8192},"kimi-k2":{contextWindow:1048576,maxTokens:8192},"moonshot-v1-auto":{contextWindow:1048576,maxTokens:8192},"glm-4-plus":{contextWindow:128e3,maxTokens:4096},"glm-4-flash":{contextWindow:128e3,maxTokens:4096},"qwen-max":{contextWindow:1048576,maxTokens:8192},"qwen-plus":{contextWindow:1048576,maxTokens:8192},"qwen-turbo":{contextWindow:1048576,maxTokens:8192},"qwen3-235b-a22b":{contextWindow:131072,maxTokens:8192}},k=[{id:"gpt-5-codex",name:"GPT-5 Codex",contextWindow:1048576,maxTokens:128e3,input:["text","image"]},{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:1048576,maxTokens:128e3,input:["text","image"]},{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini",contextWindow:1048576,maxTokens:128e3,input:["text","image"]}];function l(){return{providers:[{id:"openai",name:"OpenAI",baseUrl:"https://api.openai.com/v1",apiKey:"",api:"openai-responses",models:[...k]}],defaultProvider:"openai",defaultModel:"gpt-5.1-codex-max",exists:!1}}function m(){let a=(0,e.join)((0,f.homedir)(),".codex","config.toml");if(!(0,d.existsSync)(a))return null;try{let b=(0,d.readFileSync)(a,"utf-8");return(0,g.qg)(b)}catch{return null}}function n(){let a=i();if(!(0,d.existsSync)(a))return l();try{let b=JSON.parse((0,d.readFileSync)(a,"utf-8"));return{providers:Array.isArray(b.providers)?b.providers.filter(a=>"string"==typeof a.id&&"string"==typeof a.baseUrl).map(a=>({...a,name:"string"==typeof a.name?a.name:a.id,apiKey:"string"==typeof a.apiKey?a.apiKey:"",api:"string"==typeof a.api?a.api:void 0,models:Array.isArray(a.models)?a.models:[]})):l().providers,defaultProvider:"string"==typeof b.defaultProvider?b.defaultProvider:void 0,defaultModel:"string"==typeof b.defaultModel?b.defaultModel:void 0,generativeUI:"boolean"==typeof b.generativeUI?b.generativeUI:void 0,exists:!0}}catch{return l()}}function o(a){let b=h();(0,d.existsSync)(b)||(0,d.mkdirSync)(b,{recursive:!0});let{exists:c,...e}=a;return(0,d.writeFileSync)(i(),JSON.stringify(e,null,2),"utf-8"),a}function p(){let a=n(),b=function(){let a=m();if(!a?.model_providers)return[];let b="string"==typeof a.model?a.model:"",c="string"==typeof a.model_provider?a.model_provider:"";return Object.entries(a.model_providers).filter(([,a])=>"string"==typeof a.base_url).map(([a,d])=>{var e;return{id:a,name:d.name??a,baseUrl:(d.base_url??"").replace(/\/+$/,""),apiKey:"",api:"responses"===(e=d.wire_api)?"openai-responses":"chat"===e||"chat_completions"===e||"chat-completions"===e?"openai-completions":void 0,models:a===c&&b?[{id:b,name:b}]:[]}})}(),c=function(){let a=m();if(!a)return{};let b=a.model_provider,c=a.model_providers?.[b??""]?.name??b;return{model:a.model,providerId:b,providerName:c}}(),d=new Set(a.providers.map(a=>a.id)),e=[...a.providers];for(let a of b)d.has(a.id)||(e.push(a),d.add(a.id));let f=a.exists?a.defaultModel:void 0,g=a.exists?a.defaultProvider:void 0,h=f??c.model??a.defaultModel??e[0]?.models[0]?.id;return{providers:e,defaultModel:h,defaultProvider:g??c.providerId??a.defaultProvider,generativeUI:!1!==a.generativeUI,codexDefaults:c}}function q(a,b){let c=b||a.defaultModel;if(!c)return null;let d=function(a,b){for(let c of a.providers)if(c.models.some(a=>a.id===b))return c}(a,c);if(!d&&a.providers.length>0){let b=a.providers[0],c=b.models[0];return c?{provider:b,modelId:c.id}:null}return d?{provider:d,modelId:c}:null}function r(a){let b=[];for(let c of a.providers)for(let a of c.models){let d=j[a.id];b.push({provider:c.id,modelId:a.id,name:a.name||a.id,contextWindow:a.contextWindow??d?.contextWindow,maxTokens:a.maxTokens??d?.maxTokens,input:a.input})}return b}function s(a){let b=q(a,a.defaultModel);if(!b){for(let b of a.providers)if(b.models.length>0)return{provider:b.id,modelId:b.models[0].id};return null}return{provider:b.provider.id,modelId:b.modelId}}},56899:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{GET:()=>y,PUT:()=>z,dynamic:()=>x});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(55132);let x="force-dynamic";async function y(){let a=(0,w.Dw)();return v.NextResponse.json({providers:Object.fromEntries(a.providers.map(a=>[a.id,{baseUrl:a.baseUrl,apiKey:a.apiKey,api:a.api??"openai-responses",models:a.models.map(a=>({id:a.id,name:a.name,input:a.input,contextWindow:a.contextWindow,maxTokens:a.maxTokens}))}])),defaultProvider:a.defaultProvider,defaultModel:a.defaultModel})}async function z(a){try{let b=await a.json(),c=(0,w.HO)();return b.providers&&(c.providers=Object.entries(b.providers).filter(([,a])=>"string"==typeof a.baseUrl).map(([a,b])=>({id:a,name:a,baseUrl:(b.baseUrl??"").replace(/\/+$/,""),api:"string"==typeof b.api?b.api:void 0,apiKey:"string"==typeof b.apiKey?b.apiKey:"",models:Array.isArray(b.models)?b.models.filter(a=>"string"==typeof a.id).map(a=>({id:a.id.trim(),name:a.name||a.id.trim(),input:a.input,contextWindow:"number"==typeof a.contextWindow?a.contextWindow:void 0,maxTokens:"number"==typeof a.maxTokens?a.maxTokens:void 0})).filter(a=>a.id):[]}))),"string"==typeof b.defaultProvider?c.defaultProvider=b.defaultProvider:c.exists||delete c.defaultProvider,"string"==typeof b.defaultModel?c.defaultModel=b.defaultModel:c.exists||delete c.defaultModel,(0,w.u_)(c),v.NextResponse.json({success:!0})}catch(a){return v.NextResponse.json({error:String(a)},{status:500})}}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/models-config/route",pathname:"/api/models-config",filename:"route",bundlePath:"app/api/models-config/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/models-config/route.ts",nextConfigOutput:"",userland:d}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/models-config/route";"/index"===d&&(d="/");let e=await A.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:z,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(z.dynamicRoutes[H]||z.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!z.routes[E],b=z.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||A.isDev||y||(K="/index"===(K=E)?"/":K);let L=!0===A.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await A.getIncrementalCache(a,w,z,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:z.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>A.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await A.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:z,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await A.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,8477],()=>b(b.s=56899));module.exports=c})();
@@ -1 +1 @@
1
- "use strict";(()=>{var a={};a.id=64,a.ids=[64],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11460:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{H5:()=>s,RD:()=>p,hF:()=>o,oB:()=>q,oE:()=>r});var e=c(29021),f=c(33873),g=c(40402),h=a([g]);function i(){return(0,f.join)((0,g.$M)(),"annodex-projects.json")}function j(a){return a.trim().replace(/[\\/]+$/,"")||a.trim()}function k(a){let b=j(a);return(0,f.basename)(b)||b||"No Project"}function l(){let a=[i(),(0,f.join)((0,g.$M)(),"annovibe-projects.json")],b={},c=!1;for(let d of a)(0,e.existsSync)(d)&&(c=!0,function(a,b){try{let c=JSON.parse((0,e.readFileSync)(a,"utf8")),d=c.projects&&"object"==typeof c.projects?c.projects:{};for(let[a,c]of Object.entries(d)){if(!c||"object"!=typeof c)continue;let d=j("string"==typeof c.cwd?c.cwd:a);d&&(b[d]||(b[d]={cwd:d,..."string"==typeof c.name?{name:c.name}:{},..."boolean"==typeof c.hidden?{hidden:c.hidden}:{},..."string"==typeof c.addedAt?{addedAt:c.addedAt}:{},..."string"==typeof c.lastAccessed?{lastAccessed:c.lastAccessed}:{}}))}}catch{}}(d,b));return c?{version:1,projects:b}:{version:1,projects:{}}}function m(a){let b=i();(0,e.mkdirSync)((0,f.dirname)(b),{recursive:!0}),(0,e.writeFileSync)(b,JSON.stringify(a,null,2),"utf8")}function n(a){try{return(0,e.statSync)(a).isDirectory()}catch{return!1}}async function o(a={}){let[b,c]=await Promise.all([(0,g.dQ)(),Promise.resolve(l())]),d=function(a){let b=new Map;for(let c of a){let a=j(c.cwd||"");if(!a)continue;let d=b.get(a)??{count:0,last:null,created:null};d.count+=1,(!d.last||c.modified>d.last)&&(d.last=c.modified),(!d.created||c.created<d.created)&&(d.created=c.created),b.set(a,d)}return b}(b),f=new Set([...d.keys(),...Object.keys(c.projects)]),h=[];for(let b of f){let f=c.projects[b];if(f?.hidden&&!a.includeHidden)continue;let g=d.get(b),i=g&&f?"both":g?"session":"manual",j=f?.lastAccessed&&(!g?.last||f.lastAccessed>g.last)?f.lastAccessed:g?.last??f?.lastAccessed??null;h.push({cwd:b,name:f?.name,displayName:f?.name?.trim()||k(b),chatCount:g?.count??0,lastAccessed:j,created:g?.created??f?.addedAt??null,hidden:f?.hidden,exists:!!(0,e.existsSync)(b)&&n(b),source:i})}return h.sort((a,b)=>{let c=a.lastAccessed??a.created??"",d=b.lastAccessed??b.created??"";return c!==d?d.localeCompare(c):a.displayName.localeCompare(b.displayName)}),h}function p(a,b={}){let c=j(a);if(!c)throw Error("cwd is required");let d=l(),e=new Date().toISOString(),f=d.projects[c],g={cwd:c,addedAt:f?.addedAt??e,lastAccessed:e,...f?.name?{name:f.name}:{},hidden:b.hidden??!1};if(void 0!==b.name){let a=b.name?.trim()??"";a&&(g.name=a)}return d.projects[c]=g,m(d),{cwd:c,name:g.name,displayName:g.name?.trim()||k(c),chatCount:0,lastAccessed:g.lastAccessed??null,created:g.addedAt??null,hidden:g.hidden,exists:n(c),source:"manual"}}function q(a,b){let c=j(a),d=b.trim();if(!c)throw Error("cwd is required");let e=l(),f=e.projects[c];e.projects[c]={cwd:c,addedAt:f?.addedAt??new Date().toISOString(),lastAccessed:new Date().toISOString(),...d?{name:d}:{},hidden:f?.hidden??!1},m(e)}function r(a){let b=j(a);if(!b)throw Error("cwd is required");let c=l(),d=c.projects[b];c.projects[b]={cwd:b,addedAt:d?.addedAt??new Date().toISOString(),lastAccessed:new Date().toISOString(),...d?.name?{name:d.name}:{},hidden:!0},m(c)}function s(a){let b=j(a);if(!b)return;let c=l(),d=c.projects[b];c.projects[b]={cwd:b,addedAt:d?.addedAt??new Date().toISOString(),lastAccessed:new Date().toISOString(),...d?.name?{name:d.name}:{},hidden:!1},m(c)}g=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},56220:a=>{a.exports=import("ws")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},78976:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(84187),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/projects/route",pathname:"/api/projects",filename:"route",bundlePath:"app/api/projects/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/projects/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/projects/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},79646:a=>{a.exports=require("child_process")},81630:a=>{a.exports=require("http")},84187:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>l,GET:()=>i,PATCH:()=>k,POST:()=>j});var e=c(23211),f=c(29021),g=c(11460),h=a([g]);async function i(a){try{let b=new URL(a.url),c="1"===b.searchParams.get("includeHidden"),d=await (0,g.hF)({includeHidden:c});return e.NextResponse.json({projects:d})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function j(a){try{let b=await a.json();if("string"!=typeof b.cwd||!b.cwd.trim())return e.NextResponse.json({error:"cwd is required"},{status:400});let c=b.cwd.trim();if(!0===b.create&&(0,f.mkdirSync)(c,{recursive:!0}),!function(a){try{return(0,f.statSync)(a).isDirectory()}catch{return!1}}(c))return e.NextResponse.json({error:"Project path must be an existing directory"},{status:400});let d=(0,g.RD)(c,{name:"string"==typeof b.name?b.name:void 0,hidden:!1});return e.NextResponse.json({ok:!0,project:d})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function k(a){try{let b=await a.json();if("string"!=typeof b.cwd||!b.cwd.trim())return e.NextResponse.json({error:"cwd is required"},{status:400});if(!0===b.touch)(0,g.H5)(b.cwd);else{if("string"!=typeof b.name)return e.NextResponse.json({error:"name is required"},{status:400});(0,g.oB)(b.cwd,b.name)}let c=await (0,g.hF)();return e.NextResponse.json({ok:!0,projects:c})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function l(a){try{let b=await a.json();if("string"!=typeof b.cwd||!b.cwd.trim())return e.NextResponse.json({error:"cwd is required"},{status:400});(0,g.oE)(b.cwd);let c=await (0,g.hF)();return e.NextResponse.json({ok:!0,projects:c})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}g=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,8477,5582],()=>b(b.s=78976));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=64,a.ids=[64],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11460:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Fy:()=>q,H5:()=>v,RD:()=>s,hF:()=>r,oB:()=>t,oE:()=>u});var e=c(29021),f=c(33873),g=c(21820),h=c(18477),i=c(40402),j=a([i]);function k(){return(0,f.join)((0,i.$M)(),"annodex-projects.json")}function l(a){return a.trim().replace(/[\\/]+$/,"")||a.trim()}function m(a){let b=l(a);return(0,f.basename)(b)||b||"No Project"}function n(){let a=[k(),(0,f.join)((0,i.$M)(),"annovibe-projects.json")],b={},c=!1;for(let d of a)(0,e.existsSync)(d)&&(c=!0,function(a,b){try{let c=JSON.parse((0,e.readFileSync)(a,"utf8")),d=c.projects&&"object"==typeof c.projects?c.projects:{};for(let[a,c]of Object.entries(d)){if(!c||"object"!=typeof c)continue;let d=l("string"==typeof c.cwd?c.cwd:a);d&&(b[d]||(b[d]={cwd:d,..."string"==typeof c.name?{name:c.name}:{},..."boolean"==typeof c.hidden?{hidden:c.hidden}:{},..."string"==typeof c.addedAt?{addedAt:c.addedAt}:{},..."string"==typeof c.lastAccessed?{lastAccessed:c.lastAccessed}:{}}))}}catch{}}(d,b));return c?{version:1,projects:b}:{version:1,projects:{}}}function o(a){let b=k();(0,e.mkdirSync)((0,f.dirname)(b),{recursive:!0}),(0,e.writeFileSync)(b,JSON.stringify(a,null,2),"utf8")}function p(a){try{return(0,e.statSync)(a).isDirectory()}catch{return!1}}function q(a={}){let b=n(),c=new Set([...function(){let a=new Set,b=(0,f.join)((0,g.homedir)(),".codex","config.toml");if(!(0,e.existsSync)(b))return a;try{let c=(0,e.readFileSync)(b,"utf-8"),d=(0,h.qg)(c).projects;if(!d)return a;for(let b of Object.keys(d)){let c=l(b.replace(/^"|"$/g,""));c&&a.add(c)}}catch{}return a}(),...Object.keys(b.projects)]),d=[];for(let f of c){let c=b.projects[f];(!c?.hidden||a.includeHidden)&&d.push({cwd:f,name:c?.name,displayName:c?.name?.trim()||m(f),chatCount:0,lastAccessed:c?.lastAccessed??null,created:c?.addedAt??null,hidden:c?.hidden,exists:!!(0,e.existsSync)(f)&&p(f),source:c?"manual":"session"})}return d.sort((a,b)=>{let c=a.lastAccessed??a.created??"",d=b.lastAccessed??b.created??"";return c!==d?d.localeCompare(c):a.displayName.localeCompare(b.displayName)}),d}async function r(a={}){let[b,c]=await Promise.all([(0,i.dQ)(),Promise.resolve(n())]),d=function(a){let b=new Map;for(let c of a){let a=l(c.cwd||"");if(!a)continue;let d=b.get(a)??{count:0,last:null,created:null};d.count+=1,(!d.last||c.modified>d.last)&&(d.last=c.modified),(!d.created||c.created<d.created)&&(d.created=c.created),b.set(a,d)}return b}(b),f=new Set([...d.keys(),...Object.keys(c.projects)]),g=[];for(let b of f){let f=c.projects[b];if(f?.hidden&&!a.includeHidden)continue;let h=d.get(b),i=h&&f?"both":h?"session":"manual",j=f?.lastAccessed&&(!h?.last||f.lastAccessed>h.last)?f.lastAccessed:h?.last??f?.lastAccessed??null;g.push({cwd:b,name:f?.name,displayName:f?.name?.trim()||m(b),chatCount:h?.count??0,lastAccessed:j,created:h?.created??f?.addedAt??null,hidden:f?.hidden,exists:!!(0,e.existsSync)(b)&&p(b),source:i})}return g.sort((a,b)=>{let c=a.lastAccessed??a.created??"",d=b.lastAccessed??b.created??"";return c!==d?d.localeCompare(c):a.displayName.localeCompare(b.displayName)}),g}function s(a,b={}){let c=l(a);if(!c)throw Error("cwd is required");let d=n(),e=new Date().toISOString(),f=d.projects[c],g={cwd:c,addedAt:f?.addedAt??e,lastAccessed:e,...f?.name?{name:f.name}:{},hidden:b.hidden??!1};if(void 0!==b.name){let a=b.name?.trim()??"";a&&(g.name=a)}return d.projects[c]=g,o(d),{cwd:c,name:g.name,displayName:g.name?.trim()||m(c),chatCount:0,lastAccessed:g.lastAccessed??null,created:g.addedAt??null,hidden:g.hidden,exists:p(c),source:"manual"}}function t(a,b){let c=l(a),d=b.trim();if(!c)throw Error("cwd is required");let e=n(),f=e.projects[c];e.projects[c]={cwd:c,addedAt:f?.addedAt??new Date().toISOString(),lastAccessed:new Date().toISOString(),...d?{name:d}:{},hidden:f?.hidden??!1},o(e)}function u(a){let b=l(a);if(!b)throw Error("cwd is required");let c=n(),d=c.projects[b];c.projects[b]={cwd:b,addedAt:d?.addedAt??new Date().toISOString(),lastAccessed:new Date().toISOString(),...d?.name?{name:d.name}:{},hidden:!0},o(c)}function v(a){let b=l(a);if(!b)return;let c=n(),d=c.projects[b];c.projects[b]={cwd:b,addedAt:d?.addedAt??new Date().toISOString(),lastAccessed:new Date().toISOString(),...d?.name?{name:d.name}:{},hidden:!1},o(c)}i=(j.then?(await j)():j)[0],d()}catch(a){d(a)}})},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},56220:a=>{a.exports=import("ws")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},78976:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(84187),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/projects/route",pathname:"/api/projects",filename:"route",bundlePath:"app/api/projects/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/projects/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/projects/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},79646:a=>{a.exports=require("child_process")},81630:a=>{a.exports=require("http")},84187:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>l,GET:()=>i,PATCH:()=>k,POST:()=>j});var e=c(23211),f=c(29021),g=c(11460),h=a([g]);async function i(a){try{let b=new URL(a.url),c="1"===b.searchParams.get("includeHidden"),d="1"===b.searchParams.get("sessionStats")?await (0,g.hF)({includeHidden:c}):(0,g.Fy)({includeHidden:c});return e.NextResponse.json({projects:d})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function j(a){try{let b=await a.json();if("string"!=typeof b.cwd||!b.cwd.trim())return e.NextResponse.json({error:"cwd is required"},{status:400});let c=b.cwd.trim();if(!0===b.create&&(0,f.mkdirSync)(c,{recursive:!0}),!function(a){try{return(0,f.statSync)(a).isDirectory()}catch{return!1}}(c))return e.NextResponse.json({error:"Project path must be an existing directory"},{status:400});let d=(0,g.RD)(c,{name:"string"==typeof b.name?b.name:void 0,hidden:!1});return e.NextResponse.json({ok:!0,project:d})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function k(a){try{let b=await a.json();if("string"!=typeof b.cwd||!b.cwd.trim())return e.NextResponse.json({error:"cwd is required"},{status:400});if(!0===b.touch)(0,g.H5)(b.cwd);else{if("string"!=typeof b.name)return e.NextResponse.json({error:"name is required"},{status:400});(0,g.oB)(b.cwd,b.name)}let c=await (0,g.hF)();return e.NextResponse.json({ok:!0,projects:c})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function l(a){try{let b=await a.json();if("string"!=typeof b.cwd||!b.cwd.trim())return e.NextResponse.json({error:"cwd is required"},{status:400});(0,g.oE)(b.cwd);let c=await (0,g.hF)();return e.NextResponse.json({ok:!0,projects:c})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}g=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,8477,5582],()=>b(b.s=78976));module.exports=c})();
@@ -1,10 +1,10 @@
1
- "use strict";(()=>{var a={};a.id=1635,a.ids=[1635],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},51830:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(88742),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/reports/[id]/route",pathname:"/api/reports/[id]",filename:"route",bundlePath:"app/api/reports/[id]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/reports/[id]/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/reports/[id]/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},56220:a=>{a.exports=import("ws")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73196:(a,b,c)=>{c.d(b,{c3:()=>G,tL:()=>u,u5:()=>w,wr:()=>F});var d=c(29021),e=c(33873);let f=[{id:"objective",title:"Objective"},{id:"input_data",title:"Input Data"},{id:"methods",title:"Methods"},{id:"quality_control",title:"Quality Control"},{id:"results",title:"Results"},{id:"interpretation",title:"Biological Interpretation"},{id:"outputs",title:"Output Files"},{id:"reproducibility",title:"Reproducibility"}],g=/(?:^|[\s(["'`])((?:\.{1,2}\/|\/|~\/)?[A-Za-z0-9_.@+\-/\\]+?\.(?:csv|tsv|txt|xlsx|xls|pdf|png|jpg|jpeg|svg|html|htm|r|R|py|ipynb|qmd|md|rds|h5ad|loom|mtx|tsv\.gz|csv\.gz))(?:$|[\s)\]"'`,;:])/g,h=/(?:^|[\s(["'`])((?:\.{1,2}\/|\/|~\/)?[A-Za-z0-9_.@+\-/\\]+\/)(?=\s*(?:[::-]|[0-9]+|含|共|files?|个文件|PDFs?|PNGs?|CSVs?|TSVs?|输出|output|results?))/gim,i=/\b(seurat|scanpy|single[- ]cell|scrna|qc|quality control|normalize|normalization|pca|umap|tsne|cluster|clustering|resolution|marker|differential expression|deg|go enrichment|kegg|reactome|pathway|cell type|annotation|doublet|batch|integration|harmony|scvi)\b/i,j=/\b(result|found|identified|showed|observed|enriched|upregulated|downregulated|marker|cluster|cell type|figure|plot|table|significant|p\s*[<>=]|fdr|padj|logfc|auc)\b/i,k=/\b(suggest|indicate|imply|consistent with|biological|interpret|likely|may reflect|supports|driven by|associated with)\b/i,l=/\b(qc|quality control|filter|filtered|mitochondrial|percent\.mt|nfeature|ncount|doublet|ambient|low[- ]quality)\b/i,m=/\b(seurat|scanpy|single[- ]cell|scrna|sc[- ]rna|rna[- ]seq|transcriptom|gene|genes|marker|cell type|cluster|clustering|umap|tsne|pca|qc|mitochondrial|percent\.mt|nfeature|ncount|deg|differential expression|go enrichment|kegg|reactome|pathway|gsea|volcano|heatmap|h5ad|rds|loom|mtx|fastq|bam|vcf|counts?|expression|annotation|doublet|batch|integration|harmony|scvi)\b|生信|单细胞|转录组|基因|表达矩阵|差异表达|富集|通路|聚类|细胞类型|细胞注释|质控|线粒体|标记基因|火山图|热图/i,n=new Set(["_No curated content yet._","_No analysis objective detected yet._","_No input data paths detected yet._","_No output files detected yet._","_No reproducibility notes detected yet._"]);function o(){return new Date().toISOString()}function p(a){let b;return(0,e.join)((b=process.env.HOME??process.env.USERPROFILE??"/tmp",(0,e.join)(b,".config","annodex")),"reports",`${Buffer.from(a).toString("base64url")}.json`)}function q(a,b){return{id:a,title:b,markdown:"",status:"draft",updatedAt:null,sources:[]}}function r(a){let b=a.trim();return n.has(b)?"":b}function s(a){return a.some(a=>r(a.markdown).length>0)}function t(a,b,c){let d=o();return{schemaVersion:1,sessionId:a,cwd:b,title:c||"Analysis Report",createdAt:d,updatedAt:d,markdown:"",sections:f.map(a=>q(a.id,a.title)),sources:[],changes:[],appliedUpdateKeys:[]}}function u(a,b="",c){let e=p(a);if(!(0,d.existsSync)(e))return t(a,b,c);try{let g=JSON.parse((0,d.readFileSync)(e,"utf8")),h=t(a,b,c),i=Array.isArray(g.sections)?g.sections:[],j=f.map(a=>{let b=i.find(b=>b?.id===a.id),c=r("string"==typeof b?.markdown?b.markdown:"");return{...q(a.id,a.title),...b&&"object"==typeof b?b:{},id:a.id,title:a.title,markdown:c,status:c?b?.status??"draft":"draft",updatedAt:c?b?.updatedAt??null:null,sources:c&&Array.isArray(b?.sources)?b.sources:[]}}),k="string"==typeof g.title&&g.title.trim()?g.title:h.title;return{...h,...g,schemaVersion:1,sessionId:a,cwd:"string"==typeof g.cwd?g.cwd:b,title:k,createdAt:"string"==typeof g.createdAt?g.createdAt:h.createdAt,updatedAt:"string"==typeof g.updatedAt?g.updatedAt:h.updatedAt,sections:j,markdown:H(k,j),sources:s(j)&&Array.isArray(g.sources)?g.sources:[],changes:s(j)&&Array.isArray(g.changes)?g.changes:[],appliedUpdateKeys:Array.isArray(g.appliedUpdateKeys)?g.appliedUpdateKeys.filter(a=>"string"==typeof a):[]}}catch{return t(a,b,c)}}function v(a){let b=0x811c9dc5;for(let c=0;c<a.length;c++)b^=a.charCodeAt(c),b=Math.imul(b,0x1000193);return(b>>>0).toString(36)}function w(a){let b=o(),c={...a,updatedAt:b,markdown:H(a.title,a.sections)},f=p(a.sessionId);(0,d.mkdirSync)((0,e.dirname)(f),{recursive:!0});let g=`${f}.tmp`;return(0,d.writeFileSync)(g,JSON.stringify(c,null,2),"utf8"),(0,d.renameSync)(g,f),c}function x(a){return a.replace(/\s+/g," ").trim()}function y(a,b){let c=a.trim();if(!c)return"";let d=x(b??"").slice(0,120);if(!d)return c;let e=`### ${d}`;return c===e||c.startsWith(`${e}
1
+ "use strict";(()=>{var a={};a.id=1635,a.ids=[1635],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},51830:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(88742),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/reports/[id]/route",pathname:"/api/reports/[id]",filename:"route",bundlePath:"app/api/reports/[id]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annodex/annodex/app/api/reports/[id]/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/reports/[id]/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},56220:a=>{a.exports=import("ws")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73196:(a,b,c)=>{c.d(b,{c3:()=>H,tL:()=>u,u5:()=>w,wr:()=>G});var d=c(29021),e=c(33873);let f=[{id:"objective",title:"Objective"},{id:"input_data",title:"Input Data"},{id:"methods",title:"Methods"},{id:"quality_control",title:"Quality Control"},{id:"results",title:"Results"},{id:"interpretation",title:"Biological Interpretation"},{id:"outputs",title:"Output Files"},{id:"reproducibility",title:"Reproducibility"}],g=/(?:^|[\s(["'`])((?:\.{1,2}\/|\/|~\/)?[A-Za-z0-9_.@+\-/\\]+?\.(?:csv|tsv|txt|xlsx|xls|pdf|png|jpg|jpeg|svg|html|htm|r|R|py|ipynb|qmd|md|rds|h5ad|loom|mtx|tsv\.gz|csv\.gz))(?:$|[\s)\]"'`,;:])/g,h=/(?:^|[\s(["'`])((?:\.{1,2}\/|\/|~\/)?[A-Za-z0-9_.@+\-/\\]+\/)(?=\s*(?:[::-]|[0-9]+|含|共|files?|个文件|PDFs?|PNGs?|CSVs?|TSVs?|输出|output|results?))/gim,i=/\b(seurat|scanpy|single[- ]cell|scrna|qc|quality control|normalize|normalization|pca|umap|tsne|cluster|clustering|resolution|marker|differential expression|deg|go enrichment|kegg|reactome|pathway|cell type|annotation|doublet|batch|integration|harmony|scvi)\b/i,j=/\b(result|found|identified|showed|observed|enriched|upregulated|downregulated|marker|cluster|cell type|figure|plot|table|significant|p\s*[<>=]|fdr|padj|logfc|auc)\b/i,k=/\b(suggest|indicate|imply|consistent with|biological|interpret|likely|may reflect|supports|driven by|associated with)\b/i,l=/\b(qc|quality control|filter|filtered|mitochondrial|percent\.mt|nfeature|ncount|doublet|ambient|low[- ]quality)\b/i,m=/\b(seurat|scanpy|single[- ]cell|scrna|sc[- ]rna|rna[- ]seq|transcriptom|gene|genes|marker|cell type|cluster|clustering|umap|tsne|pca|qc|mitochondrial|percent\.mt|nfeature|ncount|deg|differential expression|go enrichment|kegg|reactome|pathway|gsea|volcano|heatmap|h5ad|rds|loom|mtx|fastq|bam|vcf|counts?|expression|annotation|doublet|batch|integration|harmony|scvi)\b|生信|单细胞|转录组|基因|表达矩阵|差异表达|富集|通路|聚类|细胞类型|细胞注释|质控|线粒体|标记基因|火山图|热图/i,n=new Set(["_No curated content yet._","_No analysis objective detected yet._","_No input data paths detected yet._","_No output files detected yet._","_No reproducibility notes detected yet._"]);function o(){return new Date().toISOString()}function p(a){let b;return(0,e.join)((b=process.env.HOME??process.env.USERPROFILE??"/tmp",(0,e.join)(b,".config","annodex")),"reports",`${Buffer.from(a).toString("base64url")}.json`)}function q(a,b){return{id:a,title:b,markdown:"",status:"draft",updatedAt:null,sources:[]}}function r(a){let b=a.trim();return n.has(b)?"":b}function s(a){return a.some(a=>r(a.markdown).length>0)}function t(a,b,c){let d=o();return{schemaVersion:1,sessionId:a,cwd:b,title:c||"Analysis Report",createdAt:d,updatedAt:d,markdown:"",sections:f.map(a=>q(a.id,a.title)),sources:[],changes:[],appliedUpdateKeys:[]}}function u(a,b="",c){let e=p(a);if(!(0,d.existsSync)(e))return t(a,b,c);try{let g=JSON.parse((0,d.readFileSync)(e,"utf8")),h=t(a,b,c),i=Array.isArray(g.sections)?g.sections:[],j=f.map(a=>{let b=i.find(b=>b?.id===a.id),c=r("string"==typeof b?.markdown?b.markdown:"");return{...q(a.id,a.title),...b&&"object"==typeof b?b:{},id:a.id,title:a.title,markdown:c,status:c?b?.status??"draft":"draft",updatedAt:c?b?.updatedAt??null:null,sources:c&&Array.isArray(b?.sources)?b.sources:[]}}),k="string"==typeof g.title&&g.title.trim()?g.title:h.title;return{...h,...g,schemaVersion:1,sessionId:a,cwd:"string"==typeof g.cwd?g.cwd:b,title:k,createdAt:"string"==typeof g.createdAt?g.createdAt:h.createdAt,updatedAt:"string"==typeof g.updatedAt?g.updatedAt:h.updatedAt,sections:j,markdown:I(k,j),sources:s(j)&&Array.isArray(g.sources)?g.sources:[],changes:s(j)&&Array.isArray(g.changes)?g.changes:[],appliedUpdateKeys:Array.isArray(g.appliedUpdateKeys)?g.appliedUpdateKeys.filter(a=>"string"==typeof a):[]}}catch{return t(a,b,c)}}function v(a){let b=0x811c9dc5;for(let c=0;c<a.length;c++)b^=a.charCodeAt(c),b=Math.imul(b,0x1000193);return(b>>>0).toString(36)}function w(a){let b=o(),c={...a,updatedAt:b,markdown:I(a.title,a.sections)},f=p(a.sessionId);(0,d.mkdirSync)((0,e.dirname)(f),{recursive:!0});let g=`${f}.tmp`;return(0,d.writeFileSync)(g,JSON.stringify(c,null,2),"utf8"),(0,d.renameSync)(g,f),c}function x(a){return a.replace(/\s+/g," ").trim()}function y(a){return/\.(png|jpe?g|svg)$/i.test(a)}function z(a,b){let c=a.trim();if(!c)return"";let d=x(b??"").slice(0,120);if(!d)return c;let e=`### ${d}`;return c===e||c.startsWith(`${e}
2
2
  `)?c:`${e}
3
3
 
4
- ${c}`}function z(a){let b=a.content;return"string"==typeof b?x(b):Array.isArray(b)?x(b.map(a=>"text"===a.type?a.text:"toolCall"===a.type?`${a.toolName} ${JSON.stringify(a.input)}`:"").join(" ")):""}function A(a,b,c){let d=x(b);!(!d||a.includes(d))&&(a.push(d),a.length>c&&(a.length=c))}function B(a,b="_No curated content yet._"){return 0===a.length?b:a.map(a=>`- ${a}`).join("\n")}function C(a){return 0===a.length?"":["| File or Directory | Notes |","| --- | --- |",...a.map(a=>`| \`${a.replace(/\|/g,"\\|")}\` | Detected from session output. |`)].join("\n")}function D(a,b,c,d="draft",e=[]){let f=a.sections.find(a=>a.id===b);f&&(f.markdown=c.trim(),f.status=d,f.updatedAt=o(),f.sources=e)}function E(a){if(!a)return null;let b=a.trim().toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"");return f.some(a=>a.id===b)?b:b.includes("objective")||b.includes("goal")?"objective":b.includes("input")||b.includes("sample")||b.includes("data")?"input_data":b.includes("method")||b.includes("parameter")||b.includes("workflow")?"methods":b.includes("qc")||b.includes("quality")||b.includes("filter")?"quality_control":b.includes("result")||b.includes("marker")||b.includes("deg")||b.includes("enrichment")?"results":b.includes("interpret")||b.includes("biology")||b.includes("biological")?"interpretation":b.includes("output")||b.includes("file")||b.includes("figure")?"outputs":b.includes("reproduc")?"reproducibility":null}function F(a,b,c){let d=E(b.section),e="string"==typeof b.markdown?y(b.markdown,b.topic):"";if(!d||!e)return a;let f=c?v(c):null;if(f&&a.appliedUpdateKeys?.includes(f))return a;let g=o(),h={...a,sections:a.sections.map(a=>({...a,sources:[...a.sources]})),sources:[...a.sources],changes:[...a.changes],appliedUpdateKeys:[...a.appliedUpdateKeys??[]]},i=h.sections.find(a=>a.id===d);if(!i)return a;i.markdown="replace"!==b.action&&i.markdown.trim()?`${i.markdown.trim()}
4
+ ${c}`}function A(a){let b=a.content;return"string"==typeof b?x(b):Array.isArray(b)?x(b.map(a=>"text"===a.type?a.text:"toolCall"===a.type?`${a.toolName} ${JSON.stringify(a.input)}`:"").join(" ")):""}function B(a,b,c){let d=x(b);!(!d||a.includes(d))&&(a.push(d),a.length>c&&(a.length=c))}function C(a,b="_No curated content yet._"){return 0===a.length?b:a.map(a=>`- ${a}`).join("\n")}function D(a){return 0===a.length?"":["| File or Directory | Notes |","| --- | --- |",...a.map(a=>{let b;return`| \`${a.replace(/\|/g,"\\|")}\` | ${b=a.toLowerCase(),/\.(png|jpe?g|svg)$/.test(b)?"Representative image/figure.":/\.pdf$/.test(b)?"PDF figure or report.":/\.(csv|tsv|csv\.gz|tsv\.gz|xlsx?|mtx)$/.test(b)?"Result table or matrix.":/\.(r|py|ipynb|qmd|md)$/.test(b)?"Analysis script or document.":/\.(rds|h5ad|loom)$/.test(b)?"Analysis object or dataset.":/\.(html?|svg)$/.test(b)?"Browser-renderable output.":"Detected from session output."} |`})].join("\n")}function E(a,b,c,d="draft",e=[]){let f=a.sections.find(a=>a.id===b);f&&(f.markdown=c.trim(),f.status=d,f.updatedAt=o(),f.sources=e)}function F(a){if(!a)return null;let b=a.trim().toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"");return f.some(a=>a.id===b)?b:b.includes("objective")||b.includes("goal")?"objective":b.includes("input")||b.includes("sample")||b.includes("data")?"input_data":b.includes("method")||b.includes("parameter")||b.includes("workflow")?"methods":b.includes("qc")||b.includes("quality")||b.includes("filter")?"quality_control":b.includes("result")||b.includes("marker")||b.includes("deg")||b.includes("enrichment")?"results":b.includes("interpret")||b.includes("biology")||b.includes("biological")?"interpretation":b.includes("output")||b.includes("file")||b.includes("figure")?"outputs":b.includes("reproduc")?"reproducibility":null}function G(a,b,c){let d=F(b.section),e="string"==typeof b.markdown?z(b.markdown,b.topic):"";if(!d||!e)return a;let f=c?v(c):null;if(f&&a.appliedUpdateKeys?.includes(f))return a;let g=o(),h={...a,sections:a.sections.map(a=>({...a,sources:[...a.sources]})),sources:[...a.sources],changes:[...a.changes],appliedUpdateKeys:[...a.appliedUpdateKeys??[]]},i=h.sections.find(a=>a.id===d);if(!i)return a;i.markdown="replace"!==b.action&&i.markdown.trim()?`${i.markdown.trim()}
5
5
 
6
- ${e}`:e,i.status=b.status??"draft",i.updatedAt=g;let j=function(a){if(!Array.isArray(a))return[];let b=[];for(let c of a)"string"==typeof c?b.push({type:"file",path:c,label:c}):c&&"object"==typeof c&&"string"==typeof c.label&&b.push({type:"session"===c.type?"session":"file",id:"string"==typeof c.id?c.id:void 0,path:"string"==typeof c.path?c.path:void 0,label:c.label});return b}(b.sources);for(let a of(i.sources=j.length>0?j:i.sources,Array.isArray(b.invalidates)?b.invalidates.map(E).filter(Boolean):[])){let b=h.sections.find(b=>b.id===a);b&&b.id!==i.id&&(b.status="outdated",b.updatedAt=g)}return h.sources=[...h.sources,...j].filter((a,b,c)=>{let d=`${a.type}:${a.id??""}:${a.path??""}:${a.label}`;return c.findIndex(a=>`${a.type}:${a.id??""}:${a.path??""}:${a.label}`===d)===b}),h.changes=[{id:`change-${Date.now()}`,timestamp:g,title:`Updated ${i.title}`,detail:b.note||"Applied a structured analysis report update from the assistant."},...h.changes].slice(0,50),f&&(h.appliedUpdateKeys=[f,...h.appliedUpdateKeys??[]].slice(0,500)),h}function G(a){let b,c,d={...a.report,title:a.report.title||a.sessionTitle||"Analysis Report",sections:a.report.sections.map(a=>({...a,sources:[...a.sources]})),sources:[...a.report.sources],changes:[...a.report.changes],appliedUpdateKeys:[...a.report.appliedUpdateKeys??[]]},e={type:"session",id:d.sessionId,label:"Current conversation"};if(!a.context.messages.some(a=>m.test(z(a))))return s(d.sections)?{...d,markdown:H(d.title,d.sections)}:{...d,sections:f.map(a=>q(a.id,a.title)),sources:[],changes:[],markdown:""};let n=((b=a.context.messages.find(a=>"user"===a.role&&m.test(z(a))))?z(b).slice(0,900):"")||((c=a.context.messages.find(a=>"user"===a.role))?z(c).slice(0,900):""),p=function(a){let b=[];for(let c of a.messages){let a=z(c);if(a){for(let c of a.matchAll(g)){let a=c[1]?.replace(/[.,;:)]+$/,"");a&&A(b,a,30)}for(let c of a.matchAll(h)){let a=c[1]?.replace(/[.,;:)]+$/,"");a&&A(b,a,30)}}}return b}(a.context),r=function(a){let b=[],c=[],d=[],e=[],f=[];for(let g of a.messages){let a=z(g);if(!a||a.length<12)continue;let h=a.length>500?`${a.slice(0,500).trim()}...`:a;"assistant"===g.role&&(l.test(h)&&A(c,h,8),i.test(h)&&A(b,h,10),j.test(h)&&A(d,h,12),k.test(h)&&A(e,h,8)),"toolResult"===g.role&&/saved|wrote|created|exported|generated|output|success/i.test(h)&&A(f,h,8)}return{methods:b,qc:c,results:d,interpretation:e,reproducibility:f}}(a.context),t=a.topic??(n?x(n).slice(0,80):"");if(a.topic){let a=d,b=(b,c,e=[])=>{let f=c.trim();f&&(a=F(a,{topic:t,section:b,action:"append",status:"draft",markdown:f,sources:e,note:`Added current-topic summary for ${t}.`},`${d.sessionId}:${t}:${b}:${v(f)}`))};return b("objective",n?`- ${n}`:"",n?[e]:[]),b("input_data",p.length>0?["Detected data or result paths mentioned in this topic:\n",C(p.slice(0,12))].join("\n"):"",p.length>0?[e]:[]),b("methods",r.methods.length>0?B(r.methods):"",r.methods.length>0?[e]:[]),b("quality_control",r.qc.length>0?B(r.qc):"",r.qc.length>0?[e]:[]),b("results",r.results.length>0?B(r.results):"",r.results.length>0?[e]:[]),b("interpretation",r.interpretation.length>0?B(r.interpretation):"",r.interpretation.length>0?[e]:[]),b("outputs",p.length>0?C(p):"",p.length>0?[e]:[]),b("reproducibility",r.reproducibility.length>0?B(r.reproducibility):"",r.reproducibility.length>0?[e]:[]),a}return D(d,"objective",n?y(`- ${n}`,t):"","draft",n?[e]:[]),D(d,"input_data",p.length>0?y(["Detected data or result paths mentioned in this session:\n",C(p.slice(0,12))].join("\n"),t):"",(p.length,"draft"),p.length>0?[e]:[]),D(d,"methods",r.methods.length>0?y(B(r.methods),t):"",(r.methods.length,"draft"),r.methods.length>0?[e]:[]),D(d,"quality_control",r.qc.length>0?y(B(r.qc),t):"",(r.qc.length,"draft"),r.qc.length>0?[e]:[]),D(d,"results",r.results.length>0?y(B(r.results),t):"",(r.results.length,"draft"),r.results.length>0?[e]:[]),D(d,"interpretation",r.interpretation.length>0?y(B(r.interpretation),t):"",(r.interpretation.length,"draft"),r.interpretation.length>0?[e]:[]),D(d,"outputs",p.length>0?y(C(p),t):"",(p.length,"draft"),p.length>0?[e]:[]),D(d,"reproducibility",r.reproducibility.length>0?y(B(r.reproducibility),t):"",(r.reproducibility.length,"draft"),r.reproducibility.length>0?[e]:[]),s(d.sections)&&(d.sources=[e],d.changes=[{id:`change-${Date.now()}`,timestamp:o(),title:"Generated from conversation",detail:"Refreshed the analysis report from the current session, keeping only analysis objectives, methods, results, interpretations, outputs, and reproducibility notes."},...d.changes].slice(0,50)),d}function H(a,b){let c=b.filter(a=>r(a.markdown).length>0);return 0===c.length?"":[`# ${a||"Analysis Report"}`,...c.map(a=>{let b="verified"===a.status?"verified":"outdated"===a.status?"outdated":"needs_review"===a.status?"needs review":"draft",c=r(a.markdown);return`## ${a.title}
6
+ ${e}`:e,i.status=b.status??"draft",i.updatedAt=g;let j=function(a){if(!Array.isArray(a))return[];let b=[];for(let c of a)"string"==typeof c?b.push({type:"file",path:c,label:c}):c&&"object"==typeof c&&"string"==typeof c.label&&b.push({type:"session"===c.type?"session":"file",id:"string"==typeof c.id?c.id:void 0,path:"string"==typeof c.path?c.path:void 0,label:c.label});return b}(b.sources);for(let a of(i.sources=j.length>0?j:i.sources,Array.isArray(b.invalidates)?b.invalidates.map(F).filter(Boolean):[])){let b=h.sections.find(b=>b.id===a);b&&b.id!==i.id&&(b.status="outdated",b.updatedAt=g)}return h.sources=[...h.sources,...j].filter((a,b,c)=>{let d=`${a.type}:${a.id??""}:${a.path??""}:${a.label}`;return c.findIndex(a=>`${a.type}:${a.id??""}:${a.path??""}:${a.label}`===d)===b}),h.changes=[{id:`change-${Date.now()}`,timestamp:g,title:`Updated ${i.title}`,detail:b.note||"Applied a structured analysis report update from the assistant."},...h.changes].slice(0,50),f&&(h.appliedUpdateKeys=[f,...h.appliedUpdateKeys??[]].slice(0,500)),h}function H(a){let b,c,d={...a.report,title:a.report.title||a.sessionTitle||"Analysis Report",sections:a.report.sections.map(a=>({...a,sources:[...a.sources]})),sources:[...a.report.sources],changes:[...a.report.changes],appliedUpdateKeys:[...a.report.appliedUpdateKeys??[]]},e={type:"session",id:d.sessionId,label:"Current conversation"};if(!a.context.messages.some(a=>m.test(A(a))))return s(d.sections)?{...d,markdown:I(d.title,d.sections)}:{...d,sections:f.map(a=>q(a.id,a.title)),sources:[],changes:[],markdown:""};let n=((b=a.context.messages.find(a=>"user"===a.role&&m.test(A(a))))?A(b).slice(0,900):"")||((c=a.context.messages.find(a=>"user"===a.role))?A(c).slice(0,900):""),p=function(a){let b=[];for(let c of a.messages){let a=A(c);if(a){for(let c of a.matchAll(g)){let a=c[1]?.replace(/[.,;:)]+$/,"");a&&B(b,a,30)}for(let c of a.matchAll(h)){let a=c[1]?.replace(/[.,;:)]+$/,"");a&&B(b,a,30)}}}return b}(a.context),r=function(a){let b=[],c=[],d=[],e=[],f=[];for(let g of a.messages){let a=A(g);if(!a||a.length<12)continue;let h=a.length>500?`${a.slice(0,500).trim()}...`:a;"assistant"===g.role&&(l.test(h)&&B(c,h,8),i.test(h)&&B(b,h,10),j.test(h)&&B(d,h,12),k.test(h)&&B(e,h,8)),"toolResult"===g.role&&/saved|wrote|created|exported|generated|output|success/i.test(h)&&B(f,h,8)}return{methods:b,qc:c,results:d,interpretation:e,reproducibility:f}}(a.context),t=a.topic??(n?x(n).slice(0,80):""),u=function(a,b=4){let c=a.filter(y).slice(0,b);return 0===c.length?"":["#### Representative Figures","",...c.flatMap(a=>{let b=a.split(/[\\/]/).filter(Boolean).pop()??a;return[`![${b}](${a.replace(/\\/g,"/").replace(/([()\s])/g,"\\$1")})`,"",`_Figure: ${b}. Representative visual output detected from this analysis topic._`,""]})].join("\n").trim()}(p),w=[r.results.length>0?C(r.results):"",u].map(a=>a.trim()).filter(Boolean).join("\n\n");if(a.topic){let a=d,b=(b,c,e=[])=>{let f=c.trim();f&&(a=G(a,{topic:t,section:b,action:"append",status:"draft",markdown:f,sources:e,note:`Added current-topic summary for ${t}.`},`${d.sessionId}:${t}:${b}:${v(f)}`))};return b("objective",n?`- ${n}`:"",n?[e]:[]),b("input_data",p.length>0?["Detected data or result paths mentioned in this topic:\n",D(p.slice(0,12))].join("\n"):"",p.length>0?[e]:[]),b("methods",r.methods.length>0?C(r.methods):"",r.methods.length>0?[e]:[]),b("quality_control",r.qc.length>0?C(r.qc):"",r.qc.length>0?[e]:[]),b("results",w,w?[e]:[]),b("interpretation",r.interpretation.length>0?C(r.interpretation):"",r.interpretation.length>0?[e]:[]),b("outputs",p.length>0?D(p):"",p.length>0?[e]:[]),b("reproducibility",r.reproducibility.length>0?C(r.reproducibility):"",r.reproducibility.length>0?[e]:[]),a}return E(d,"objective",n?z(`- ${n}`,t):"","draft",n?[e]:[]),E(d,"input_data",p.length>0?z(["Detected data or result paths mentioned in this session:\n",D(p.slice(0,12))].join("\n"),t):"",(p.length,"draft"),p.length>0?[e]:[]),E(d,"methods",r.methods.length>0?z(C(r.methods),t):"",(r.methods.length,"draft"),r.methods.length>0?[e]:[]),E(d,"quality_control",r.qc.length>0?z(C(r.qc),t):"",(r.qc.length,"draft"),r.qc.length>0?[e]:[]),E(d,"results",w?z(w,t):"","draft",w?[e]:[]),E(d,"interpretation",r.interpretation.length>0?z(C(r.interpretation),t):"",(r.interpretation.length,"draft"),r.interpretation.length>0?[e]:[]),E(d,"outputs",p.length>0?z(D(p),t):"",(p.length,"draft"),p.length>0?[e]:[]),E(d,"reproducibility",r.reproducibility.length>0?z(C(r.reproducibility),t):"",(r.reproducibility.length,"draft"),r.reproducibility.length>0?[e]:[]),s(d.sections)&&(d.sources=[e],d.changes=[{id:`change-${Date.now()}`,timestamp:o(),title:"Generated from conversation",detail:"Refreshed the analysis report from the current session, keeping only analysis objectives, methods, results, interpretations, outputs, and reproducibility notes."},...d.changes].slice(0,50)),d}function I(a,b){let c=b.filter(a=>r(a.markdown).length>0);return 0===c.length?"":[`# ${a||"Analysis Report"}`,...c.map(a=>{let b="verified"===a.status?"verified":"outdated"===a.status?"outdated":"needs_review"===a.status?"needs review":"draft",c=r(a.markdown);return`## ${a.title}
7
7
 
8
8
  _Status: ${b}_
9
9
 
10
- ${c}`})].join("\n\n")}},79646:a=>{a.exports=require("child_process")},81630:a=>{a.exports=require("http")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88742:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>j,POST:()=>l,PUT:()=>k,dynamic:()=>m});var e=c(23211),f=c(73196),g=c(40402),h=a([g]);g=(h.then?(await h)():h)[0];let m="force-dynamic";async function i(a){let b=await (0,g.os)(a);if(!b)throw Error("Session not found");let c="Analysis Report",d=(0,f.tL)(a,b,c),e=(await (0,g.T0)(a,b).catch(()=>null))?.context;return{cwd:b,title:c,report:d,context:e}}async function j(a,{params:b}){let{id:c}=await b;try{let{report:a}=await i(c);return e.NextResponse.json({report:a})}catch(b){let a=b instanceof Error?b.message:String(b);return e.NextResponse.json({error:a},{status:"Session not found"===a?404:500})}}async function k(a,{params:b}){let{id:c}=await b;try{let b=await a.json();if(!b.report||"object"!=typeof b.report)return e.NextResponse.json({error:"report is required"},{status:400});let{cwd:d,title:g}=await i(c),h=(0,f.u5)({...b.report,schemaVersion:1,sessionId:c,cwd:d,title:b.report.title||g});return e.NextResponse.json({report:h})}catch(b){let a=b instanceof Error?b.message:String(b);return e.NextResponse.json({error:a},{status:"Session not found"===a?404:500})}}async function l(a,{params:b}){let{id:c}=await b;try{let b=await a.json().catch(()=>({})),{title:d,report:g,context:h}=await i(c),j=b.action??"generate";if("apply_update"===j){if(!b.update||"object"!=typeof b.update)return e.NextResponse.json({error:"update is required"},{status:400});let a=(0,f.u5)((0,f.wr)(g,b.update,"string"==typeof b.updateKey?b.updateKey:void 0));return e.NextResponse.json({report:a})}if("generate"!==j)return e.NextResponse.json({error:"Unsupported action"},{status:400});if(!h||0===h.messages.length)return e.NextResponse.json({report:g});let k=(0,f.c3)({report:g,context:h,sessionTitle:d,topic:b.topic}),l=(0,f.u5)(k);return e.NextResponse.json({report:l})}catch(b){let a=b instanceof Error?b.message:String(b);return e.NextResponse.json({error:a},{status:"Session not found"===a?404:500})}}d()}catch(a){d(a)}})}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,8477,5582],()=>b(b.s=51830));module.exports=c})();
10
+ ${c}`})].join("\n\n")}},79646:a=>{a.exports=require("child_process")},81630:a=>{a.exports=require("http")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88742:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>j,POST:()=>l,PUT:()=>k,dynamic:()=>m});var e=c(23211),f=c(73196),g=c(40402),h=a([g]);g=(h.then?(await h)():h)[0];let m="force-dynamic";async function i(a){let b=await (0,g.os)(a);if(!b)throw Error("Session not found");let c="Analysis Report",d=(0,f.tL)(a,b,c),e=(await (0,g.T0)(a,b).catch(()=>null))?.context;return{cwd:b,title:c,report:d,context:e}}async function j(a,{params:b}){let{id:c}=await b;try{let{report:a}=await i(c);return e.NextResponse.json({report:a})}catch(b){let a=b instanceof Error?b.message:String(b);return e.NextResponse.json({error:a},{status:"Session not found"===a?404:500})}}async function k(a,{params:b}){let{id:c}=await b;try{let b=await a.json();if(!b.report||"object"!=typeof b.report)return e.NextResponse.json({error:"report is required"},{status:400});let{cwd:d,title:g}=await i(c),h=(0,f.u5)({...b.report,schemaVersion:1,sessionId:c,cwd:d,title:b.report.title||g});return e.NextResponse.json({report:h})}catch(b){let a=b instanceof Error?b.message:String(b);return e.NextResponse.json({error:a},{status:"Session not found"===a?404:500})}}async function l(a,{params:b}){let{id:c}=await b;try{let b=await a.json().catch(()=>({})),{title:d,report:g,context:h}=await i(c),j=b.action??"generate";if("apply_update"===j){if(!b.update||"object"!=typeof b.update)return e.NextResponse.json({error:"update is required"},{status:400});let a=(0,f.u5)((0,f.wr)(g,b.update,"string"==typeof b.updateKey?b.updateKey:void 0));return e.NextResponse.json({report:a})}if("generate"!==j)return e.NextResponse.json({error:"Unsupported action"},{status:400});if(!h||0===h.messages.length)return e.NextResponse.json({report:g});let k=(0,f.c3)({report:g,context:h,sessionTitle:d,topic:b.topic}),l=(0,f.u5)(k);return e.NextResponse.json({report:l})}catch(b){let a=b instanceof Error?b.message:String(b);return e.NextResponse.json({error:a},{status:"Session not found"===a?404:500})}}d()}catch(a){d(a)}})}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,5582],()=>b(b.s=51830));module.exports=c})();