@synapse-research/synapse 0.2.3 → 0.2.5

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 (69) hide show
  1. package/bin/synapse.mjs +3 -6
  2. package/dist/.next/BUILD_ID +1 -1
  3. package/dist/.next/app-build-manifest.json +116 -116
  4. package/dist/.next/app-path-routes-manifest.json +32 -32
  5. package/dist/.next/build-manifest.json +2 -2
  6. package/dist/.next/cache/.gitkeep +0 -0
  7. package/dist/.next/prerender-manifest.json +9 -9
  8. package/dist/.next/server/app/(dashboard)/research-projects/[uuid]/activity/page.js +1 -1
  9. package/dist/.next/server/app/(dashboard)/research-projects/[uuid]/dashboard/page.js +1 -1
  10. package/dist/.next/server/app/(dashboard)/research-projects/[uuid]/documents/[documentUuid]/page.js +1 -1
  11. package/dist/.next/server/app/(dashboard)/research-projects/[uuid]/documents/page.js +1 -1
  12. package/dist/.next/server/app/(dashboard)/research-projects/[uuid]/experiment-designs/[designUuid]/page.js +1 -1
  13. package/dist/.next/server/app/(dashboard)/research-projects/[uuid]/experiment-designs/new/page.js +1 -1
  14. package/dist/.next/server/app/(dashboard)/research-projects/[uuid]/experiment-runs/[runUuid]/page.js +1 -1
  15. package/dist/.next/server/app/(dashboard)/research-projects/[uuid]/experiments/new/page.js +1 -1
  16. package/dist/.next/server/app/(dashboard)/research-projects/[uuid]/experiments/page.js +1 -1
  17. package/dist/.next/server/app/(dashboard)/research-projects/[uuid]/insights/page.js +1 -1
  18. package/dist/.next/server/app/(dashboard)/research-projects/[uuid]/research-questions/page.js +1 -1
  19. package/dist/.next/server/app/_not-found.html +1 -1
  20. package/dist/.next/server/app/_not-found.rsc +1 -1
  21. package/dist/.next/server/app/admin/companies/new.html +1 -1
  22. package/dist/.next/server/app/admin/companies/new.rsc +1 -1
  23. package/dist/.next/server/app/admin/companies.html +1 -1
  24. package/dist/.next/server/app/admin/companies.rsc +1 -1
  25. package/dist/.next/server/app/admin.html +1 -1
  26. package/dist/.next/server/app/admin.rsc +1 -1
  27. package/dist/.next/server/app/api/mcp/route.js +3 -3
  28. package/dist/.next/server/app/api/research-projects/[uuid]/activity/route.js +1 -1
  29. package/dist/.next/server/app/api/research-projects/[uuid]/available/route.js +1 -1
  30. package/dist/.next/server/app/api/research-projects/[uuid]/documents/route.js +1 -1
  31. package/dist/.next/server/app/api/research-projects/[uuid]/experiment-designs/route.js +1 -1
  32. package/dist/.next/server/app/api/research-projects/[uuid]/experiment-designs/summary/route.js +1 -1
  33. package/dist/.next/server/app/api/research-projects/[uuid]/experiment-runs/dependencies/route.js +1 -1
  34. package/dist/.next/server/app/api/research-projects/[uuid]/experiment-runs/route.js +1 -1
  35. package/dist/.next/server/app/api/research-projects/[uuid]/experiments/route.js +1 -1
  36. package/dist/.next/server/app/api/research-projects/[uuid]/related-works/route.js +1 -1
  37. package/dist/.next/server/app/api/research-projects/[uuid]/research-questions/route.js +1 -1
  38. package/dist/.next/server/app/api/research-projects/[uuid]/route.js +1 -1
  39. package/dist/.next/server/app/api/research-projects/route.js +1 -1
  40. package/dist/.next/server/app/index.html +1 -1
  41. package/dist/.next/server/app/index.rsc +1 -1
  42. package/dist/.next/server/app/login/admin.html +1 -1
  43. package/dist/.next/server/app/login/admin.rsc +1 -1
  44. package/dist/.next/server/app/login/callback.html +1 -1
  45. package/dist/.next/server/app/login/callback.rsc +1 -1
  46. package/dist/.next/server/app/login/silent-refresh.html +1 -1
  47. package/dist/.next/server/app/login/silent-refresh.rsc +1 -1
  48. package/dist/.next/server/app/login.html +1 -1
  49. package/dist/.next/server/app/login.rsc +1 -1
  50. package/dist/.next/server/app/research-projects/new.html +1 -1
  51. package/dist/.next/server/app/research-projects/new.rsc +1 -1
  52. package/dist/.next/server/app/research-projects.html +1 -1
  53. package/dist/.next/server/app/research-projects.rsc +1 -1
  54. package/dist/.next/server/app/settings.html +1 -1
  55. package/dist/.next/server/app/settings.rsc +1 -1
  56. package/dist/.next/server/app-paths-manifest.json +32 -32
  57. package/dist/.next/server/chunks/1512.js +1 -1
  58. package/dist/.next/server/chunks/2653.js +1 -1
  59. package/dist/.next/server/chunks/759.js +1 -1
  60. package/dist/.next/server/chunks/7878.js +1 -1
  61. package/dist/.next/server/chunks/8322.js +4 -4
  62. package/dist/.next/server/chunks/8481.js +2 -2
  63. package/dist/.next/server/chunks/9993.js +1 -1
  64. package/dist/.next/server/middleware-manifest.json +1 -1
  65. package/dist/.next/server/pages/404.html +1 -1
  66. package/dist/.next/server/pages/500.html +1 -1
  67. package/package.json +3 -2
  68. /package/dist/.next/static/{JSDpzmO29w6Ket-Y2K6Nw → xy1xzFROYVkXmtmnxjoAM}/_buildManifest.js +0 -0
  69. /package/dist/.next/static/{JSDpzmO29w6Ket-Y2K6Nw → xy1xzFROYVkXmtmnxjoAM}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
1
  (()=>{var a={};a.id=5386,a.ids=[2653,5386],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1461:(a,b,c)=>{"use strict";c.d(b,{u:()=>t});var d=c(10837),e=c(21968),f=c(41074),g=c(93555),h=c(34971),i=c(86196),j=c(23702),k=c(61848),l=c(89291),m=c(52840),n=c(85063),o=c(21345),p=c(65665),q=c(95921);let r=["hsl(var(--primary))","#22c55e","#3b82f6","#f59e0b","#ef4444","#8b5cf6","#ec4899","#14b8a6"];function s({raw:a,chartType:b}){let c=(0,e.useMemo)(()=>(function(a){let b=a.trim().split("\n").filter(Boolean);if(b.length<2)return null;let c=b[0].includes(" ")?" ":",",d=b[0].split(c).map(a=>a.trim());if(d.length<2)return null;let e=b.slice(1).map(a=>{let b=a.split(c).map(a=>a.trim()),e={};return d.forEach((a,c)=>{let d=b[c]??"",f=Number(d);e[a]=isNaN(f)?d:f}),e}),f=d.slice(1);return e.every(a=>f.every(b=>"number"==typeof a[b]))?{type:"bar",data:e,keys:f}:null})(a),[a]);if(!c)return(0,d.jsx)("pre",{className:"overflow-x-auto rounded-lg bg-secondary p-4 text-sm",children:a});let f="line"===b?"line":c.type,g=Object.keys(c.data[0]??{})[0]??"label";return(0,d.jsx)("div",{className:"my-4 rounded-lg border border-border bg-card p-4",children:(0,d.jsx)(i.u,{width:"100%",height:300,children:"line"===f?(0,d.jsxs)(j.b,{data:c.data,children:[(0,d.jsx)(k.d,{strokeDasharray:"3 3",stroke:"hsl(var(--border))"}),(0,d.jsx)(l.W,{dataKey:g,tick:{fontSize:12},stroke:"hsl(var(--muted-foreground))"}),(0,d.jsx)(m.h,{tick:{fontSize:12},stroke:"hsl(var(--muted-foreground))"}),(0,d.jsx)(n.m,{contentStyle:{background:"hsl(var(--card))",border:"1px solid hsl(var(--border))",borderRadius:8,fontSize:12}}),c.keys.map((a,b)=>(0,d.jsx)(o.N1,{type:"monotone",dataKey:a,stroke:r[b%r.length],strokeWidth:2,dot:{r:3}},a))]}):(0,d.jsxs)(p.E,{data:c.data,children:[(0,d.jsx)(k.d,{strokeDasharray:"3 3",stroke:"hsl(var(--border))"}),(0,d.jsx)(l.W,{dataKey:g,tick:{fontSize:12},stroke:"hsl(var(--muted-foreground))"}),(0,d.jsx)(m.h,{tick:{fontSize:12},stroke:"hsl(var(--muted-foreground))"}),(0,d.jsx)(n.m,{contentStyle:{background:"hsl(var(--card))",border:"1px solid hsl(var(--border))",borderRadius:8,fontSize:12}}),c.keys.map((a,b)=>(0,d.jsx)(q.yP,{dataKey:a,fill:r[b%r.length],radius:[4,4,0,0]},a))]})})})}function t({children:a}){return(0,d.jsx)(f.oz,{remarkPlugins:[g.A],rehypePlugins:[h.A],components:{h1:({children:a})=>(0,d.jsx)("h1",{className:"mt-6 mb-4 text-2xl font-bold text-foreground",children:a}),h2:({children:a})=>(0,d.jsx)("h2",{className:"mt-5 mb-3 text-xl font-semibold text-foreground",children:a}),h3:({children:a})=>(0,d.jsx)("h3",{className:"mt-4 mb-2 text-lg font-semibold text-foreground",children:a}),h4:({children:a})=>(0,d.jsx)("h4",{className:"mt-3 mb-2 text-base font-semibold text-foreground",children:a}),p:({children:a})=>(0,d.jsx)("p",{className:"my-2 leading-7",children:a}),ul:({children:a})=>(0,d.jsx)("ul",{className:"my-2 ml-6 list-disc space-y-1",children:a}),ol:({children:a})=>(0,d.jsx)("ol",{className:"my-2 ml-6 list-decimal space-y-1",children:a}),li:({children:a})=>(0,d.jsx)("li",{className:"leading-7",children:a}),blockquote:({children:a})=>(0,d.jsx)("blockquote",{className:"my-3 border-l-4 border-primary/30 pl-4 italic text-muted-foreground",children:a}),hr:()=>(0,d.jsx)("hr",{className:"my-6 border-border"}),a:({href:a,children:b})=>(0,d.jsx)("a",{href:a,className:"text-primary underline underline-offset-2 hover:text-primary/80",target:"_blank",rel:"noopener noreferrer",children:b}),strong:({children:a})=>(0,d.jsx)("strong",{className:"font-semibold text-foreground",children:a}),code({className:a,children:b,...c}){let e=/language-chart(?::(\w+))?/.exec(a||"");return e?(0,d.jsx)(s,{raw:String(b).replace(/\n$/,""),chartType:e[1]}):a?(0,d.jsx)("code",{className:a,...c,children:b}):(0,d.jsx)("code",{className:"rounded bg-secondary px-1.5 py-0.5 text-sm font-mono",...c,children:b})},pre:({children:a})=>(0,d.jsx)("pre",{className:"overflow-x-auto rounded-lg bg-secondary/80 p-4 text-sm",children:a}),table:({children:a})=>(0,d.jsx)("div",{className:"my-4 overflow-x-auto rounded-lg border border-border",children:(0,d.jsx)("table",{className:"min-w-full text-sm",children:a})}),thead:({children:a})=>(0,d.jsx)("thead",{className:"border-b border-border bg-secondary/50",children:a}),th:({children:a})=>(0,d.jsx)("th",{className:"whitespace-nowrap px-4 py-2.5 text-left text-xs font-semibold text-muted-foreground",children:a}),td:({children:a})=>(0,d.jsx)("td",{className:"px-4 py-2.5 text-foreground border-b border-border/30",children:a}),img:({src:a,alt:b})=>(0,d.jsxs)("span",{className:"my-4 block",children:[(0,d.jsx)("img",{src:a,alt:b||"",className:"max-w-full rounded-lg border border-border",loading:"lazy"}),b&&(0,d.jsx)("span",{className:"mt-1 block text-center text-xs text-muted-foreground",children:b})]})},children:a})}},1708:a=>{"use strict";a.exports=require("node:process")},2654:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(91533).A)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]])},2852:(a,b,c)=>{"use strict";c.d(b,{J:()=>g});var d=c(10837);c(21968);var e=c(13277),f=c(96307);function g({className:a,...b}){return(0,d.jsx)(e.Root,{"data-slot":"label",className:(0,f.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...b})}},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4573:a=>{"use strict";a.exports=require("node:buffer")},7046:(a,b,c)=>{"use strict";c.d(b,{kX:()=>e,od:()=>f,sO:()=>j});var d=c(70936);function e(a,b){return d.NextResponse.json({success:!0,data:a,meta:b})}function f(a,b,c,e){return d.NextResponse.json({success:!0,data:a,meta:{page:b,pageSize:c,total:e}})}let g={BAD_REQUEST:"BAD_REQUEST",UNAUTHORIZED:"UNAUTHORIZED",FORBIDDEN:"FORBIDDEN",NOT_FOUND:"NOT_FOUND",CONFLICT:"CONFLICT",VALIDATION_ERROR:"VALIDATION_ERROR",ALREADY_CLAIMED:"ALREADY_CLAIMED",NOT_CLAIMED:"NOT_CLAIMED",INVALID_STATUS_TRANSITION:"INVALID_STATUS_TRANSITION",PERMISSION_DENIED:"PERMISSION_DENIED",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR"},h={[g.BAD_REQUEST]:400,[g.UNAUTHORIZED]:401,[g.FORBIDDEN]:403,[g.NOT_FOUND]:404,[g.CONFLICT]:409,[g.VALIDATION_ERROR]:422,[g.ALREADY_CLAIMED]:409,[g.NOT_CLAIMED]:400,[g.INVALID_STATUS_TRANSITION]:400,[g.PERMISSION_DENIED]:403,[g.INTERNAL_ERROR]:500,[g.DATABASE_ERROR]:500};function i(a,b,c){let e=h[a]||500;return d.NextResponse.json({success:!1,error:{code:a,message:b,details:c}},{status:e})}let j={badRequest:(a,b)=>i(g.BAD_REQUEST,a,b),unauthorized:(a="Authentication required")=>i(g.UNAUTHORIZED,a),forbidden:(a="Access denied")=>i(g.FORBIDDEN,a),notFound:(a="Resource")=>i(g.NOT_FOUND,`${a} not found`),conflict:a=>i(g.CONFLICT,a),validationError:a=>i(g.VALIDATION_ERROR,"Validation failed",a),alreadyClaimed:()=>i(g.ALREADY_CLAIMED,"Resource is already claimed"),notClaimed:()=>i(g.NOT_CLAIMED,"Resource is not claimed"),invalidStatusTransition:(a,b)=>i(g.INVALID_STATUS_TRANSITION,`Invalid status transition from ${a} to ${b}`),permissionDenied:a=>i(g.PERMISSION_DENIED,`Permission denied: ${a}`),internal:(a="Internal server error")=>i(g.INTERNAL_ERROR,a),database:(a="Database error")=>i(g.DATABASE_ERROR,a)}},8086:a=>{"use strict";a.exports=require("module")},8145:(a,b,c)=>{"use strict";c.d(b,{EditProjectDialog:()=>d});let d=(0,c(37143).registerClientReference)(function(){throw Error("Attempted to call EditProjectDialog() from the server but EditProjectDialog is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/dashboard/edit-project-dialog.tsx","EditProjectDialog")},9994:(a,b,c)=>{"use strict";c.d(b,{p:()=>f});var d=c(10837);c(21968);var e=c(96307);function f({className:a,type:b,...c}){return(0,d.jsx)("input",{type:b,"data-slot":"input",className:(0,e.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",a),...c})}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11568:(a,b,c)=>{"use strict";c.d(b,{Cf:()=>m,Es:()=>o,L3:()=>p,c7:()=>n,lG:()=>i,rr:()=>q,zM:()=>j});var d=c(10837);c(21968);var e=c(10694),f=c(14220),g=c(96307),h=c(42424);function i({...a}){return(0,d.jsx)(f.Root,{"data-slot":"dialog",...a})}function j({...a}){return(0,d.jsx)(f.Trigger,{"data-slot":"dialog-trigger",...a})}function k({...a}){return(0,d.jsx)(f.Portal,{"data-slot":"dialog-portal",...a})}function l({className:a,...b}){return(0,d.jsx)(f.Overlay,{"data-slot":"dialog-overlay",className:(0,g.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",a),...b})}function m({className:a,children:b,showCloseButton:c=!0,...h}){return(0,d.jsxs)(k,{"data-slot":"dialog-portal",children:[(0,d.jsx)(l,{}),(0,d.jsxs)(f.Content,{"data-slot":"dialog-content",className:(0,g.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 outline-none sm:max-w-lg",a),...h,children:[b,c&&(0,d.jsxs)(f.Close,{"data-slot":"dialog-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[(0,d.jsx)(e.A,{}),(0,d.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function n({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"dialog-header",className:(0,g.cn)("flex flex-col gap-2 text-center sm:text-left",a),...b})}function o({className:a,showCloseButton:b=!1,children:c,...e}){return(0,d.jsxs)("div",{"data-slot":"dialog-footer",className:(0,g.cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",a),...e,children:[c,b&&(0,d.jsx)(f.Close,{asChild:!0,children:(0,d.jsx)(h.$,{variant:"outline",children:"Close"})})]})}function p({className:a,...b}){return(0,d.jsx)(f.Title,{"data-slot":"dialog-title",className:(0,g.cn)("text-lg leading-none font-semibold",a),...b})}function q({className:a,...b}){return(0,d.jsx)(f.Description,{"data-slot":"dialog-description",className:(0,g.cn)("text-muted-foreground text-sm",a),...b})}},11716:(a,b,c)=>{"use strict";function d(a){return{httpOnly:!0,secure:"false"!==process.env.COOKIE_SECURE,sameSite:"lax",path:"/",maxAge:a}}c.d(b,{f:()=>d})},12412:a=>{"use strict";a.exports=require("assert")},13277:(a,b,c)=>{"use strict";c.r(b),c.d(b,{Label:()=>g,Root:()=>h});var d=c(21968),e=c(16551),f=c(10837),g=d.forwardRef((a,b)=>(0,f.jsx)(e.sG.label,{...a,ref:b,onMouseDown:b=>{b.target.closest("button, input, select, textarea")||(a.onMouseDown?.(b),!b.defaultPrevented&&b.detail>1&&b.preventDefault())}}));g.displayName="Label";var h=g},14985:a=>{"use strict";a.exports=require("dns")},15264:(a,b,c)=>{"use strict";c.d(b,{$Y:()=>l,Bz:()=>o,En:()=>m,Iu:()=>p,NE:()=>j,VM:()=>n,ev:()=>k,wL:()=>q});var d=c(73365),e=c(3548),f=c(11716);let g="user_session",h="user_refresh";function i(){let a=process.env.NEXTAUTH_SECRET;if(!a)throw Error("NEXTAUTH_SECRET is not set");return new TextEncoder().encode(a)}async function j(a){return new d.P({...a,tokenType:"access"}).setProtectedHeader({alg:"HS256"}).setIssuedAt().setExpirationTime("1h").sign(i())}async function k(a){return new d.P({userUuid:a.userUuid,companyUuid:a.companyUuid,tokenType:"refresh"}).setProtectedHeader({alg:"HS256"}).setIssuedAt().setExpirationTime("7d").sign(i())}async function l(a){try{let{payload:b}=await (0,e.V)(a,i());if("user"===b.type&&"access"===b.tokenType)return{type:"user",userUuid:b.userUuid,companyUuid:b.companyUuid,email:b.email,name:b.name,oidcSub:b.oidcSub,oidcAccessToken:b.oidcAccessToken,oidcRefreshToken:b.oidcRefreshToken,oidcExpiresAt:b.oidcExpiresAt};return null}catch{return null}}async function m(a){try{let{payload:b}=await (0,e.V)(a,i());if("refresh"===b.tokenType)return{userUuid:b.userUuid,companyUuid:b.companyUuid};return null}catch{return null}}async function n(a){let b=function(a){if(!a)return null;let b=a.match(/^Bearer\s+(.+)$/i);return b?b[1]:null}(a.headers.get("authorization"));if(b){let a=await l(b);if(a)return{type:"user",companyUuid:a.companyUuid,actorUuid:a.userUuid,email:a.email,name:a.name}}let c=a.cookies.get(g)?.value;if(!c)return null;let d=await l(c);return d?{type:"user",companyUuid:d.companyUuid,actorUuid:d.userUuid,email:d.email,name:d.name}:null}function o(a,b,c){a.cookies.set(g,b,(0,f.f)(3600)),a.cookies.set(h,c,(0,f.f)(604800))}function p(a){a.cookies.set(g,"",(0,f.f)(0)),a.cookies.set(h,"",(0,f.f)(0))}function q(a){return a.cookies.get(h)?.value||null}},17350:(a,b,c)=>{Promise.resolve().then(c.bind(c,43775)),Promise.resolve().then(c.bind(c,92851)),Promise.resolve().then(c.bind(c,11226)),Promise.resolve().then(c.bind(c,13065)),Promise.resolve().then(c.bind(c,64098)),Promise.resolve().then(c.bind(c,49442)),Promise.resolve().then(c.bind(c,66542)),Promise.resolve().then(c.bind(c,87827)),Promise.resolve().then(c.bind(c,81448)),Promise.resolve().then(c.bind(c,53392)),Promise.resolve().then(c.bind(c,97271)),Promise.resolve().then(c.bind(c,73814)),Promise.resolve().then(c.bind(c,62329)),Promise.resolve().then(c.bind(c,2768)),Promise.resolve().then(c.bind(c,1159)),Promise.resolve().then(c.bind(c,69757)),Promise.resolve().then(c.bind(c,92521)),Promise.resolve().then(c.bind(c,6873)),Promise.resolve().then(c.bind(c,10375)),Promise.resolve().then(c.bind(c,4176)),Promise.resolve().then(c.bind(c,33914)),Promise.resolve().then(c.bind(c,19868)),Promise.resolve().then(c.bind(c,32886)),Promise.resolve().then(c.bind(c,20294)),Promise.resolve().then(c.bind(c,94733)),Promise.resolve().then(c.bind(c,61298)),Promise.resolve().then(c.bind(c,8013)),Promise.resolve().then(c.bind(c,44236)),Promise.resolve().then(c.bind(c,5699)),Promise.resolve().then(c.t.bind(c,18198,23)),Promise.resolve().then(c.bind(c,31533)),Promise.resolve().then(c.bind(c,99418)),Promise.resolve().then(c.bind(c,8145))},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},20170:(a,b,c)=>{"use strict";c.d(b,{T:()=>f});var d=c(10837);c(21968);var e=c(96307);function f({className:a,...b}){return(0,d.jsx)("textarea",{"data-slot":"textarea",className:(0,e.cn)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",a),...b})}},21820:a=>{"use strict";a.exports=require("os")},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},26849:a=>{"use strict";a.exports=require("@prisma/client/runtime/client")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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")},29662:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{d:()=>i});var e=c(50117),f=c(74438),g=c(15264),h=a([f]);async function i(){let a=await (0,e.UL)(),b=a.get("user_session")?.value;if(b){let a=await (0,g.$Y)(b);if(a)return{type:"user",companyUuid:a.companyUuid,actorUuid:a.userUuid,email:a.email,name:a.name}}let c=a.get("oidc_access_token")?.value;return c?(0,f.Q)(c):null}f=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},31533:(a,b,c)=>{"use strict";c.d(b,{CollapsibleDescription:()=>d});let d=(0,c(37143).registerClientReference)(function(){throw Error("Attempted to call CollapsibleDescription() from the server but CollapsibleDescription is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/dashboard/collapsible-description.tsx","CollapsibleDescription")},33873:a=>{"use strict";a.exports=require("path")},34631:a=>{"use strict";a.exports=require("tls")},35198:(a,b,c)=>{"use strict";c.d(b,{BT:()=>i,Wu:()=>j,ZB:()=>h,Zp:()=>f,aR:()=>g});var d=c(10837);c(21968);var e=c(96307);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-description",className:(0,e.cn)("text-muted-foreground text-sm",a),...b})}function j({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}},36174:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>D.a,__next_app__:()=>J,handler:()=>L,pages:()=>I,routeModule:()=>K,tree:()=>H});var d=c(76929),e=c(30630),f=c(59862),g=c(91959),h=c(8877),i=c(57717),j=c(85532),k=c(38317),l=c(80605),m=c(41431),n=c(28259),o=c(40740),p=c(16002),q=c(66271),r=c(261),s=c(81958),t=c(26331),u=c(26713),v=c(39959),w=c(76644),x=c(23640),y=c(68249),z=c(30143),A=c(47653),B=c(86439),C=c(29723),D=c.n(C),E=c(39303),F=c(79254),G={};for(let a in E)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(G[a]=()=>E[a]);c.d(b,G);let H={children:["",{children:["(dashboard)",{children:["research-projects",{children:["[uuid]",{children:["dashboard",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,50475)),"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/dashboard/page.tsx"]}]},{loading:[()=>Promise.resolve().then(c.bind(c,38960)),"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/dashboard/loading.tsx"]}]},{loading:[()=>Promise.resolve().then(c.bind(c,42733)),"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/loading.tsx"]}]},{}]},{layout:[()=>Promise.resolve().then(c.bind(c,16352)),"/home/ubuntu/Synapse/src/app/(dashboard)/layout.tsx"],loading:[()=>Promise.resolve().then(c.bind(c,69436)),"/home/ubuntu/Synapse/src/app/(dashboard)/loading.tsx"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,3155,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,37942,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,1537,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,33367))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(c.bind(c,40340)),"/home/ubuntu/Synapse/src/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,29723,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,3155,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,37942,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,1537,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,33367))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]}.children,I=["/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/dashboard/page.tsx"],J={require:c,loadChunk:()=>Promise.resolve()},K=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/(dashboard)/research-projects/[uuid]/dashboard/page",pathname:"/research-projects/[uuid]/dashboard",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:H},distDir:".next",relativeProjectDir:""});async function L(a,b,d){var C;let G="/(dashboard)/research-projects/[uuid]/dashboard/page";"/index"===G&&(G="/");let M=(0,h.getRequestMeta)(a,"postponed"),N=(0,h.getRequestMeta)(a,"minimalMode"),O=await K.prepare(a,b,{srcPage:G,multiZoneDraftMode:!1});if(!O)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:P,query:Q,params:R,parsedUrl:S,pageIsDynamic:T,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,serverActionsManifest:X,clientReferenceManifest:Y,subresourceIntegrityManifest:Z,prerenderManifest:$,isDraftMode:_,resolvedPathname:aa,revalidateOnlyGenerated:ab,routerServerContext:ac,nextConfig:ad,interceptionRoutePatterns:ae}=O,af=S.pathname||"/",ag=(0,r.normalizeAppPath)(G),{isOnDemandRevalidate:ah}=O,ai=K.match(af,$),aj=!!$.routes[aa],ak=!!(ai||aj||$.routes[ag]),al=a.headers["user-agent"]||"",am=(0,u.getBotType)(al),an=(0,p.isHtmlBotRequest)(a),ao=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[t.NEXT_ROUTER_PREFETCH_HEADER],ap=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[t.RSC_HEADER],aq=(0,s.getIsPossibleServerAction)(a),ar=(0,m.checkIsAppPPREnabled)(ad.experimental.ppr)&&(null==(C=$.routes[ag]??$.dynamicRoutes[ag])?void 0:C.renderingMode)==="PARTIALLY_STATIC",as=!1,at=!1,au=ar?M:void 0,av=ar&&ap&&!ao,aw=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ax=!al||(0,p.shouldServeStreamingMetadata)(al,ad.htmlLimitedBots);an&&ar&&(ak=!1,ax=!1);let ay=!0===K.isDev||!ak||"string"==typeof M||av,az=an&&ar,aA=null;_||!ak||ay||aq||au||av||(aA=aa);let aB=aA;!aB&&K.isDev&&(aB=aa),K.isDev||_||!ak||!ap||av||(0,k.d)(a.headers);let aC={...E,tree:H,pages:I,GlobalError:D(),handler:L,routeModule:K,__next_app__:J};X&&Y&&(0,o.setReferenceManifestsSingleton)({page:G,clientReferenceManifest:Y,serverActionsManifest:X,serverModuleMap:(0,q.createServerModuleMap)({serverActionsManifest:X})});let aD=a.method||"GET",aE=(0,g.getTracer)(),aF=aE.getActiveScopeSpan();try{let f=K.getVaryHeader(aa,ae);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return K.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aE.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aD} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aD} ${a.url}`)})},m=async({span:e,postponed:f,fallbackRouteParams:g})=>{let i={query:Q,params:R,page:ag,sharedContext:{buildId:P},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aC,Component:(0,j.T)(aC),params:R,routeModule:K,page:G,postponed:f,shouldWaitOnAllReady:az,serveStreamingMetadata:ax,supportsDynamicResponse:"string"==typeof f||ay,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,subresourceIntegrityManifest:Z,serverActionsManifest:X,clientReferenceManifest:Y,setIsrStatus:null==ac?void 0:ac.setIsrStatus,dir:c(33873).join(process.cwd(),K.relativeProjectDir),isDraftMode:_,isRevalidate:ak&&!f&&!av,botType:am,isOnDemandRevalidate:ah,isPossibleServerAction:aq,assetPrefix:ad.assetPrefix,nextConfigOutput:ad.output,crossOrigin:ad.crossOrigin,trailingSlash:ad.trailingSlash,previewProps:$.preview,deploymentId:ad.deploymentId,enableTainting:ad.experimental.taint,htmlLimitedBots:ad.htmlLimitedBots,devtoolSegmentExplorer:ad.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:ad.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:ad.experimental.cacheLife,basePath:ad.basePath,serverActions:ad.experimental.serverActions,...as?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:as}:{},experimental:{isRoutePPREnabled:ar,expireTime:ad.expireTime,staleTimes:ad.experimental.staleTimes,cacheComponents:!!ad.experimental.cacheComponents,clientSegmentCache:!!ad.experimental.clientSegmentCache,clientParamParsing:!!ad.experimental.clientParamParsing,dynamicOnHover:!!ad.experimental.dynamicOnHover,inlineCss:!!ad.experimental.inlineCss,authInterrupts:!!ad.experimental.authInterrupts,clientTraceMetadata:ad.experimental.clientTraceMetadata||[]},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>K.onRequestError(a,b,d,ac),err:(0,h.getRequestMeta)(a,"invokeError"),dev:K.isDev}},l=await k(e,i),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[y.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,ak&&(null==n?void 0:n.revalidate)===0&&!K.isDev&&!ar){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${aa}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
- see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},o=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===K.isDev,l=c||b.writableEnded;if(ah&&ab&&!f&&!N)return(null==ac?void 0:ac.render404)?await ac.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(j=(0,w.parseFallbackField)(ai.fallback)),j===w.FallbackMode.PRERENDER&&(0,u.isBot)(al)&&(!ar||an)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ah=!0),ah&&(j!==w.FallbackMode.NOT_FOUND||f)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),!N&&j!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aB&&!l&&!_&&T&&(k||!aj)){let b;if((k||ai)&&j===w.FallbackMode.NOT_FOUND)throw new B.NoFallbackError;if(ar&&!ap){let c="string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:k?ag:null;if(b=await K.handleResponse({cacheKey:c,req:a,nextConfig:ad,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:$,isRoutePPREnabled:ar,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||at?(0,n.u)(ag):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let o=ah||g||!au?void 0:au;if(as&&void 0!==o)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=T&&ar&&((0,h.getRequestMeta)(a,"renderFallbackShell")||at)?(0,n.u)(af):null;return m({span:i,postponed:o,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,n=await K.handleResponse({cacheKey:aA,responseGenerator:a=>o({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ad,prerenderManifest:$,waitUntil:d.waitUntil});if(_&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),K.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!n){if(aA)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof n.value.postponed;ak&&!av&&(!p||ao)&&(N||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=n;if(au)l={revalidate:0,expire:void 0};else if(N&&ap&&!ao&&ar)l={revalidate:0,expire:void 0};else if(!K.isDev)if(_)l={revalidate:0,expire:void 0};else if(ak){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??ad.expireTime}}else l={revalidate:y.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(n.cacheControl=l,"string"==typeof aw&&(null==q?void 0:q.kind)===v.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];N&&ak&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(aw);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...n,value:{...n.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&au)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(N&&ak||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(N&&ak&&s&&"string"==typeof s&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,s),!q.status||ap&&ar||(b.statusCode=q.status),!N&&q.status&&F.RedirectStatusCode[q.status]&&ap&&(b.statusCode=200),p&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),ap&&!_){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:q.html,cacheControl:av?{revalidate:0,expire:void 0}:n.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(q.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let u=q.html;if(!p||N||ap)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:n.cacheControl});if(as)return u.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}});let w=new TransformStream;return u.push(w.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(w.writable)}).catch(a=>{w.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}})};if(!aF)return await aE.withPropagatedContext(a.headers,()=>aE.trace(i.BaseServerSpan.handleRequest,{spanName:`${aD} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aD,"http.target":a.url}},p));await p(aF)}catch(b){throw b instanceof B.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:G,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:ak,isOnDemandRevalidate:ah})},ac),b}}},37066:(a,b,c)=>{"use strict";c.d(b,{A:()=>g});var d=c(55211),e=c(50117);let f=["en","zh"],g=(0,d.A)(async()=>{let a=await (0,e.UL)(),b=a.get("synapse-locale")?.value,d=b&&f.includes(b)?b:"en";return{locale:d,messages:(await c(76565)(`./${d}.json`)).default}})},38960:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(10023),e=c(31805);function f(){return(0,d.jsx)(e.j,{})}},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},41204:a=>{"use strict";a.exports=require("string_decoder")},42733:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(10023),e=c(31805);function f(){return(0,d.jsx)(e.j,{showBoard:!0})}},44865:a=>{"use strict";a.exports=import("@prisma/client/runtime/query_compiler_fast_bg.postgresql.wasm-base64.mjs")},48161:a=>{"use strict";a.exports=require("node:os")},50475:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{default:()=>s});var e=c(10023),f=c(18198),g=c.n(f),h=c(66530),i=c(67706),j=c(2654),k=c(74236),l=c(85394),m=c(29662),n=c(62653),o=c(8145),p=c(31533),q=c(99418),r=a([m,n]);async function s({params:a}){let b=await (0,m.d)();b||(0,h.redirect)("/login");let{uuid:c}=await a,d=await (0,i.A)(),f=await (0,n.Rq)(b.companyUuid,c);f||(0,h.redirect)("/research-projects");let{project:r,stats:s,recentExperiments:w,recentQuestions:x,relatedWorksCount:y}=f,z=[{title:d("dashboard.relatedWorks"),value:y,helper:d("dashboard.relatedWorksHelper"),href:`/research-projects/${c}/related-works`,icon:"relatedWorks",iconBg:"bg-amber-100 dark:bg-amber-500/15",iconColor:"text-amber-700 dark:text-amber-300"},{title:d("dashboard.questions"),value:s.researchQuestions.total,helper:d("dashboard.questionsHelper",{count:s.researchQuestions.open}),href:`/research-projects/${c}/research-questions`,icon:"researchQuestions",iconBg:"bg-orange-100 dark:bg-orange-500/15",iconColor:"text-orange-700 dark:text-orange-300"},{title:d("dashboard.experiments"),value:s.experiments.total,helper:d("dashboard.experimentsHelper",{count:s.experiments.inProgress}),href:`/research-projects/${c}/experiments`,icon:"experiments",iconBg:"bg-emerald-100 dark:bg-emerald-500/15",iconColor:"text-emerald-700 dark:text-emerald-300"},{title:d("dashboard.documents"),value:s.documents.total,helper:d("dashboard.documentsHelper"),href:`/research-projects/${c}/documents`,icon:"documents",iconBg:"bg-sky-100 dark:bg-sky-500/15",iconColor:"text-sky-700 dark:text-sky-300"}];return(0,e.jsxs)("div",{className:"space-y-6 p-4 md:p-8",children:[(0,e.jsxs)("div",{className:"rounded-[32px] border border-border bg-card p-7 shadow-sm",children:[(0,e.jsxs)("div",{className:"flex flex-col gap-5 xl:flex-row xl:items-start xl:justify-between",children:[(0,e.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,e.jsx)("p",{className:"text-lg font-semibold tracking-[0.08em] text-muted-foreground",children:d("dashboard.brief")}),(0,e.jsx)("h1",{className:"mt-3 text-[28px] font-semibold tracking-tight text-foreground",children:r.name}),(0,e.jsx)(p.CollapsibleDescription,{text:r.description||d("dashboard.noDescription"),maxLines:3})]}),(0,e.jsxs)("div",{className:"flex flex-wrap gap-3",children:[(0,e.jsx)(l.$,{asChild:!0,className:"bg-primary text-primary-foreground hover:bg-primary/90",children:(0,e.jsx)(g(),{href:`/research-projects/${c}/experiments/new`,children:d("dashboard.newExperiment")})}),(0,e.jsx)(l.$,{asChild:!0,variant:"outline",className:"border-border bg-background",children:(0,e.jsx)(g(),{href:`/research-projects/${c}/insights`,children:d("nav.insights")})}),(0,e.jsx)(o.EditProjectDialog,{projectUuid:c,initialData:{name:r.name,description:r.description,datasets:Array.isArray(r.datasets)?r.datasets:null,evaluationMethods:Array.isArray(r.evaluationMethods)?r.evaluationMethods:null,repoUrl:r.repoUrl??null,githubUsername:r.githubUsername??null,githubConfigured:!!r.githubToken}})]})]}),(0,e.jsxs)("div",{className:"mt-6 grid gap-4 lg:grid-cols-3",children:[(0,e.jsx)(t,{title:d("dashboard.goal"),body:r.goal||d("dashboard.noGoal")}),(0,e.jsx)(u,{title:d("dashboard.datasets"),items:Array.isArray(r.datasets)?r.datasets:[],empty:d("dashboard.noDatasets")}),(0,e.jsx)(u,{title:d("dashboard.evaluation"),items:Array.isArray(r.evaluationMethods)?r.evaluationMethods:[],empty:d("dashboard.noEvaluation")})]})]}),(0,e.jsx)("div",{className:"grid gap-4 md:grid-cols-2 xl:grid-cols-4",children:z.map(a=>(0,e.jsx)(q.DashboardStatCard,{projectUuid:c,href:a.href,title:a.title,value:a.value,helper:a.helper,icon:a.icon,iconBg:a.iconBg,iconColor:a.iconColor},a.title))}),(0,e.jsxs)("div",{className:"grid gap-6 xl:grid-cols-[1fr_1.2fr]",children:[(0,e.jsxs)(k.Zp,{className:"rounded-[28px] border-border bg-card p-6",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("h2",{className:"text-lg font-semibold text-foreground",children:d("dashboard.researchQuestionsTitle")}),(0,e.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:d("dashboard.researchQuestionsSubtitle")})]}),(0,e.jsx)(g(),{href:`/research-projects/${c}/research-questions`,className:"text-sm text-primary",children:d("common.viewAll")})]}),(0,e.jsx)("div",{className:"mt-5 space-y-3",children:0===x.length?(0,e.jsx)("p",{className:"text-sm text-muted-foreground",children:d("dashboard.noQuestions")}):x.map(a=>(0,e.jsx)("div",{className:"rounded-2xl bg-secondary/60 px-4 py-4",children:(0,e.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,e.jsx)("p",{className:"text-sm font-medium text-foreground",children:a.title}),(0,e.jsx)("span",{className:"rounded-full bg-background px-2.5 py-1 text-xs text-muted-foreground",children:"pending"===a.reviewStatus?d("ideas.pendingReview"):d(`ideas.columns.${function(a){switch(a){case"proposal_created":case"experiment_created":return"experimentCreated";default:return a}}(a.status)}`)})]})},a.uuid))}),(0,e.jsxs)(g(),{href:`/research-projects/${c}/insights`,className:"mt-6 flex items-center justify-between rounded-2xl border border-border bg-background px-4 py-4 transition hover:border-primary/30",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("p",{className:"text-sm font-medium text-foreground",children:d("dashboard.latestInsight")}),(0,e.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:r.latestSynthesisSummary||d("dashboard.insightsHelper")})]}),(0,e.jsx)(j.A,{className:"h-4 w-4 text-primary"})]})]}),(0,e.jsxs)(k.Zp,{className:"rounded-[28px] border-border bg-card p-6",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("h2",{className:"text-lg font-semibold text-foreground",children:d("dashboard.pipelineTitle")}),(0,e.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:d("dashboard.pipelineSubtitle")})]}),(0,e.jsx)(g(),{href:`/research-projects/${c}/experiments`,className:"text-sm text-primary",children:d("common.viewAll")})]}),(0,e.jsxs)("div",{className:"mt-5 grid gap-3 md:grid-cols-5",children:[(0,e.jsx)(v,{title:d("experiments.columns.draft"),value:s.experiments.draft}),(0,e.jsx)(v,{title:d("experiments.columns.pendingReview"),value:s.experiments.pendingReview}),(0,e.jsx)(v,{title:d("experiments.columns.pendingStart"),value:s.experiments.pendingStart}),(0,e.jsx)(v,{title:d("experiments.columns.inProgress"),value:s.experiments.inProgress}),(0,e.jsx)(v,{title:d("experiments.columns.completed"),value:s.experiments.completed})]}),(0,e.jsx)("div",{className:"mt-5 space-y-3",children:0===w.length?(0,e.jsx)("p",{className:"text-sm text-muted-foreground",children:d("dashboard.noExperiments")}):w.map(a=>(0,e.jsxs)("div",{className:"flex items-center justify-between rounded-2xl bg-secondary/60 px-4 py-3",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("p",{className:"text-sm font-medium text-foreground",children:a.title}),a.outcome?(0,e.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:a.outcome}):null]}),(0,e.jsx)("span",{className:"rounded-full bg-background px-2.5 py-1 text-xs text-muted-foreground",children:d(`experiments.columns.${function(a){switch(a){case"pending_review":return"pendingReview";case"pending_start":return"pendingStart";case"in_progress":return"inProgress";default:return a}}(a.status)}`)})]},a.uuid))})]})]})]})}function t({title:a,body:b}){return(0,e.jsxs)("div",{className:"rounded-[20px] bg-secondary/60 p-4",children:[(0,e.jsx)("p",{className:"text-base font-semibold text-foreground",children:a}),(0,e.jsx)("p",{className:"mt-2 text-sm leading-6 text-foreground",children:b})]})}function u({title:a,items:b,empty:c}){return(0,e.jsxs)("div",{className:"rounded-[20px] bg-secondary/60 p-4",children:[(0,e.jsx)("p",{className:"text-base font-semibold text-foreground",children:a}),(0,e.jsx)("div",{className:"mt-2 space-y-1.5 text-sm leading-6 text-foreground",children:b.length>0?b.map(a=>(0,e.jsxs)("p",{children:["• ",a]},a)):(0,e.jsx)("p",{children:c})})]})}function v({title:a,value:b}){return(0,e.jsxs)("div",{className:"rounded-[20px] bg-secondary/60 p-4 text-center",children:[(0,e.jsx)("p",{className:"text-base font-medium text-muted-foreground",children:a}),(0,e.jsx)("p",{className:"mt-2 text-2xl font-semibold text-foreground",children:b})]})}[m,n]=r.then?(await r)():r,d()}catch(a){d(a)}})},53053:a=>{"use strict";a.exports=require("node:diagnostics_channel")},55511:a=>{"use strict";a.exports=require("crypto")},59175:(a,b,c)=>{"use strict";c.d(b,{EditProjectDialog:()=>n});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(87461),i=c(42424),j=c(11568),k=c(9994),l=c(2852),m=c(20170);function n({projectUuid:a,initialData:b}){let c=(0,g.c)(),n=(0,f.useRouter)(),[o,p]=(0,e.useState)(!1),[q,r]=(0,e.useTransition)(),[s,t]=(0,e.useState)(b.name),[u,v]=(0,e.useState)(b.description||""),[w,x]=(0,e.useState)((b.datasets||[]).join("\n")),[y,z]=(0,e.useState)((b.evaluationMethods||[]).join("\n")),[A,B]=(0,e.useState)(b.repoUrl||""),[C,D]=(0,e.useState)(b.githubUsername||""),[E,F]=(0,e.useState)("");async function G(){let b={name:s.trim(),description:u.trim()||null,datasets:w.split("\n").map(a=>a.trim()).filter(Boolean),evaluationMethods:y.split("\n").map(a=>a.trim()).filter(Boolean),repoUrl:A.trim()||null,githubUsername:C.trim()||null};E.trim()&&(b.githubToken=E.trim()),(await fetch(`/api/research-projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)})).ok&&(p(!1),n.refresh())}function H(a){a&&(t(b.name),v(b.description||""),x((b.datasets||[]).join("\n")),z((b.evaluationMethods||[]).join("\n")),B(b.repoUrl||""),D(b.githubUsername||""),F("")),p(a)}return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(i.$,{variant:"outline",size:"sm",onClick:()=>H(!0),children:[(0,d.jsx)(h.A,{className:"mr-2 h-4 w-4"}),c("common.edit")]}),(0,d.jsx)(j.lG,{open:o,onOpenChange:H,children:(0,d.jsxs)(j.Cf,{className:"max-w-lg max-h-[85vh] overflow-y-auto",children:[(0,d.jsx)(j.c7,{children:(0,d.jsx)(j.L3,{children:c("researchProjects.editProject")})}),(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("researchProjects.projectName")}),(0,d.jsx)(k.p,{value:s,onChange:a=>t(a.target.value)})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("researchProjects.description")}),(0,d.jsx)(m.T,{value:u,onChange:a=>v(a.target.value),rows:3})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("researchProjects.datasets")}),(0,d.jsx)(m.T,{value:w,onChange:a=>x(a.target.value),rows:3,placeholder:c("projectGroups.datasetsPlaceholder")})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("researchProjects.evaluationMethods")}),(0,d.jsx)(m.T,{value:y,onChange:a=>z(a.target.value),rows:3,placeholder:c("projectGroups.evaluationMethodsPlaceholder")})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("projectSettings.repoUrl")}),(0,d.jsx)(k.p,{value:A,onChange:a=>B(a.target.value),placeholder:c("projectSettings.repoUrlPlaceholder")})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("projectSettings.githubUsername")}),(0,d.jsx)(k.p,{value:C,onChange:a=>D(a.target.value)})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("projectSettings.githubToken")}),(0,d.jsx)(k.p,{type:"password",value:E,onChange:a=>F(a.target.value),placeholder:b.githubConfigured?"••••••••":c("projectSettings.githubTokenPlaceholder")}),(0,d.jsxs)("p",{className:"text-xs text-muted-foreground",children:[b.githubConfigured?c("projectSettings.githubConfigured")+". ":c("projectSettings.githubNotConfigured")+". ",c("projectSettings.githubTokenHint")]})]})]}),(0,d.jsxs)(j.Es,{children:[(0,d.jsx)(i.$,{variant:"outline",onClick:()=>p(!1),children:c("common.cancel")}),(0,d.jsx)(i.$,{onClick:()=>r(()=>{G()}),disabled:q||!s.trim(),children:c(q?"common.saving":"common.save")})]})]})})]})}},62653:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{AM:()=>i,Fn:()=>j,Rq:()=>t,T0:()=>n,Wr:()=>p,_8:()=>q,et:()=>u,j5:()=>m,l:()=>o,np:()=>r,t3:()=>k,vP:()=>l});var e=c(18818),f=c(52618),g=c(91997),h=a([f,g]);async function i({companyUuid:a,skip:b,take:c}){let[d,e]=await Promise.all([f.prisma.researchProject.findMany({where:{companyUuid:a},skip:b,take:c,orderBy:{updatedAt:"desc"},select:{uuid:!0,name:!0,description:!0,goal:!0,datasets:!0,evaluationMethods:!0,latestSynthesisAt:!0,latestSynthesisIdeaCount:!0,latestSynthesisSummary:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{researchQuestions:!0,documents:!0,experiments:!0,activities:!0}}}}),f.prisma.researchProject.count({where:{companyUuid:a}})]);return{projects:d,total:e}}async function j(a,b){return f.prisma.researchProject.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0,description:!0,goal:!0,datasets:!0,evaluationMethods:!0,repoUrl:!0,githubUsername:!0,githubToken:!0,latestSynthesisAt:!0,latestSynthesisIdeaCount:!0,latestSynthesisSummary:!0,createdAt:!0,updatedAt:!0,_count:{select:{researchQuestions:!0,documents:!0,experiments:!0,activities:!0}}}})}async function k(a,b){return f.prisma.researchProject.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}})}async function l(a,b){return!!await k(a,b)}async function m(a,b){return f.prisma.researchProject.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0,description:!0,goal:!0,datasets:!0,evaluationMethods:!0,latestSynthesisAt:!0,latestSynthesisIdeaCount:!0,latestSynthesisSummary:!0,repoUrl:!0,githubUsername:!0,githubToken:!0}})}async function n(a,b){return(await f.prisma.researchProject.findMany({where:{companyUuid:a,groupUuid:b},select:{uuid:!0}})).map(a=>a.uuid)}async function o({companyUuid:a,name:b,description:c,goal:d,datasets:e,evaluationMethods:g,groupUuid:h,computePoolUuid:i}){return f.prisma.researchProject.create({data:{companyUuid:a,name:b,description:c,goal:d??null,datasets:e??[],evaluationMethods:g??[],groupUuid:h??null,computePoolUuid:i??null},select:{uuid:!0,name:!0,description:!0,goal:!0,datasets:!0,evaluationMethods:!0,groupUuid:!0,computePoolUuid:!0,createdAt:!0,updatedAt:!0}})}async function p(a,b){let c={...b};return void 0!==b.datasets&&(c.datasets=null===b.datasets?e.D1.Fj:b.datasets),void 0!==b.evaluationMethods&&(c.evaluationMethods=null===b.evaluationMethods?e.D1.Fj:b.evaluationMethods),void 0!==b.computePoolUuid&&(c.computePoolUuid=b.computePoolUuid??null),void 0!==b.autonomousLoopAgentUuid&&(c.autonomousLoopAgentUuid=b.autonomousLoopAgentUuid??null),void 0!==b.autoSearchAgentUuid&&(c.autoSearchAgentUuid=b.autoSearchAgentUuid??null),void 0!==b.deepResearchDocUuid&&(c.deepResearchDocUuid=b.deepResearchDocUuid??null),void 0!==b.repoUrl&&(c.repoUrl=b.repoUrl??null),void 0!==b.githubUsername&&(c.githubUsername=b.githubUsername??null),b.githubToken&&""!==b.githubToken.trim()&&(c.githubToken=b.githubToken.trim()),f.prisma.researchProject.update({where:{uuid:a},data:c,select:{uuid:!0,name:!0,description:!0,goal:!0,datasets:!0,evaluationMethods:!0,computePoolUuid:!0,autonomousLoopEnabled:!0,autonomousLoopAgentUuid:!0,autoSearchEnabled:!0,autoSearchAgentUuid:!0,deepResearchDocUuid:!0,repoUrl:!0,githubUsername:!0,latestSynthesisAt:!0,latestSynthesisIdeaCount:!0,latestSynthesisSummary:!0,createdAt:!0,updatedAt:!0}})}async function q(a){return await f.prisma.researchQuestion.updateMany({where:{researchProjectUuid:a,parentQuestionUuid:{not:null}},data:{parentQuestionUuid:null}}),f.prisma.researchProject.delete({where:{uuid:a}})}async function r({companyUuid:a,skip:b,take:c}){let{projects:d,total:e}=await i({companyUuid:a,skip:b,take:c}),f=d.map(a=>a.uuid),h=await (0,g.c8)(a,f);return{projects:d.map(a=>{let b=h.get(a.uuid)??{researchProjectUuid:a.uuid,researchQuestions:{total:0,open:0,elaborating:0,proposalCreated:0,completed:0,closed:0},experiments:{total:0,draft:0,pendingReview:0,pendingStart:0,inProgress:0,completed:0},experimentDesigns:{total:0,draft:0,pending:0,approved:0,rejected:0,closed:0,active:0},experimentRuns:{total:0,open:0,assigned:0,inProgress:0,toVerify:0,done:0,closed:0,completed:0},documents:{total:0},completionRate:0};return{...a,experimentRunsDone:b.experiments.completed,metrics:b}}),total:e}}async function s(a,b){let c=await (0,g.bF)(a,b);return{researchQuestions:{total:c.researchQuestions.total,open:c.researchQuestions.open+c.researchQuestions.elaborating,elaborating:c.researchQuestions.elaborating,proposalCreated:c.researchQuestions.proposalCreated,completed:c.researchQuestions.completed},experimentRuns:{total:c.experiments.total,inProgress:c.experiments.inProgress,todo:c.experiments.draft,toVerify:c.experiments.pendingReview+c.experiments.pendingStart,done:c.experiments.completed},experimentDesigns:{total:c.experiments.total,pending:c.experiments.pendingReview},experiments:{total:c.experiments.total,draft:c.experiments.draft,pendingReview:c.experiments.pendingReview,pendingStart:c.experiments.pendingStart,inProgress:c.experiments.inProgress,completed:c.experiments.completed},documents:{total:c.documents.total},completionRate:c.completionRate}}async function t(a,b){let[c,d,e,g,h]=await Promise.all([j(a,b),s(a,b),f.prisma.experiment.findMany({where:{companyUuid:a,researchProjectUuid:b},orderBy:{updatedAt:"desc"},take:5,select:{uuid:!0,title:!0,status:!0,outcome:!0}}),f.prisma.researchQuestion.findMany({where:{companyUuid:a,researchProjectUuid:b,reviewStatus:{not:"rejected"}},orderBy:{updatedAt:"desc"},take:5,select:{uuid:!0,title:!0,status:!0,reviewStatus:!0}}),f.prisma.relatedWork.count({where:{companyUuid:a,researchProjectUuid:b}})]);return c?{project:c,stats:d,recentExperiments:e,recentQuestions:g,relatedWorksCount:h}:null}async function u(a,b){let[c,d]=await Promise.all([f.prisma.researchProject.findFirst({where:{uuid:b,companyUuid:a},select:{latestSynthesisAt:!0,latestSynthesisIdeaCount:!0,latestSynthesisSummary:!0}}),f.prisma.experiment.findMany({where:{companyUuid:a,researchProjectUuid:b,status:"completed"},orderBy:{completedAt:"desc"},take:8,select:{uuid:!0,title:!0,outcome:!0,completedAt:!0,researchQuestion:{select:{title:!0}}}})]);return c?{project:c,completedExperiments:d}:null}[f,g]=h.then?(await h)():h,d()}catch(a){d(a)}})},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64939:a=>{"use strict";a.exports=import("pg")},67706:(a,b,c)=>{"use strict";c.d(b,{A:()=>i});var d=c(73426),e=c(67904),f=c(47684),g=c(34637),h=(0,d.cache)(function(a,b){return function({_cache:a=(0,f.b)(),_formatters:b=(0,f.c)(a),getMessageFallback:c=g.d,messages:d,namespace:e,onError:h=g.b,...i}){return function({messages:a,namespace:b,...c},d){return a=a["!"],b=(0,g.r)(b,"!"),(0,g.a)({...c,messages:a,namespace:b})}({...i,onError:h,cache:a,formatters:b,getMessageFallback:c,messages:{"!":d},namespace:e?`!.${e}`:"!"},"!")}({...a,namespace:b})}),i=(0,d.cache)(async function(a){let b,c;return"string"==typeof a?b=a:a&&(c=a.locale,b=a.namespace),h(await (0,e.A)(c),b)})},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},73566:a=>{"use strict";a.exports=require("worker_threads")},74236:(a,b,c)=>{"use strict";c.d(b,{Wu:()=>i,ZB:()=>h,Zp:()=>f,aR:()=>g});var d=c(10023);c(73426);var e=c(63413);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}},74438:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Q:()=>j,t:()=>k});var e=c(41195),f=c(3548),g=c(52618),h=c(65582),i=a([g]);g=(i.then?(await i)():i)[0];let l=h.vF.child({module:"auth"}),m=new Map;async function j(a){try{let b=a.split(".");if(3!==b.length)return null;let c=JSON.parse(Buffer.from(b[1],"base64url").toString("utf-8")).iss;if(!c)return null;let d=function(a){if(!m.has(a)){let b=new URL(`${a.replace(/\/$/,"")}/.well-known/jwks.json`);m.set(a,(0,e.RD)(b))}return m.get(a)}(c),{payload:h}=await (0,f.V)(a,d,{issuer:c});if(h.token_use&&"access"!==h.token_use)return null;let i=await g.prisma.company.findFirst({where:{oidcEnabled:!0,oidcIssuer:c}});if(!i)return null;let j=await g.prisma.user.findFirst({where:{companyUuid:i.uuid,oidcSub:h.sub}});if(!j)return null;return{type:"user",companyUuid:i.uuid,actorUuid:j.uuid,email:j.email||h.email,name:j.name||h.name}}catch(a){return l.error({err:a},"OIDC token verification failed"),null}}function k(a){if(a.startsWith("syn_"))return!1;let b=a.split(".");if(3!==b.length)return!1;try{let a=JSON.parse(Buffer.from(b[0],"base64url").toString("utf-8"));return a.alg&&(a.alg.startsWith("RS")||a.alg.startsWith("ES"))}catch{return!1}}d()}catch(a){d(a)}})},75811:a=>{"use strict";a.exports=import("@prisma/client/runtime/query_compiler_fast_bg.postgresql.mjs")},76565:(a,b,c)=>{var d={"./en.json":[87368,7368],"./zh.json":[72961,2961]};function e(a){if(!c.o(d,a))return Promise.resolve().then(()=>{var b=Error("Cannot find module '"+a+"'");throw b.code="MODULE_NOT_FOUND",b});var b=d[a],e=b[0];return c.e(b[1]).then(()=>c.t(e,19))}e.keys=()=>Object.keys(d),e.id=76565,a.exports=e},76760:a=>{"use strict";a.exports=require("node:path")},78474:a=>{"use strict";a.exports=require("node:events")},79428:a=>{"use strict";a.exports=require("buffer")},79551:a=>{"use strict";a.exports=require("url")},83997:a=>{"use strict";a.exports=require("tty")},84297:a=>{"use strict";a.exports=require("async_hooks")},85394:(a,b,c)=>{"use strict";c.d(b,{$:()=>i});var d=c(10023);c(73426);var e=c(89571),f=c(15362),g=c(63413);let h=(0,e.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function i({className:a,variant:b="default",size:c="default",asChild:e=!1,...i}){let j=e?f.bL:"button";return(0,d.jsx)(j,{"data-slot":"button","data-variant":b,"data-size":c,className:(0,g.cn)(h({variant:b,size:c,className:a})),...i})}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87086:(a,b,c)=>{Promise.resolve().then(c.bind(c,13753)),Promise.resolve().then(c.bind(c,81093)),Promise.resolve().then(c.bind(c,14672)),Promise.resolve().then(c.bind(c,25711)),Promise.resolve().then(c.bind(c,70952)),Promise.resolve().then(c.bind(c,98556)),Promise.resolve().then(c.bind(c,14220)),Promise.resolve().then(c.bind(c,5989)),Promise.resolve().then(c.bind(c,15906)),Promise.resolve().then(c.bind(c,45106)),Promise.resolve().then(c.bind(c,13277)),Promise.resolve().then(c.bind(c,55212)),Promise.resolve().then(c.bind(c,73935)),Promise.resolve().then(c.bind(c,50382)),Promise.resolve().then(c.bind(c,66529)),Promise.resolve().then(c.bind(c,41335)),Promise.resolve().then(c.bind(c,66619)),Promise.resolve().then(c.bind(c,53187)),Promise.resolve().then(c.bind(c,28121)),Promise.resolve().then(c.bind(c,63658)),Promise.resolve().then(c.bind(c,95556)),Promise.resolve().then(c.bind(c,28386)),Promise.resolve().then(c.bind(c,15644)),Promise.resolve().then(c.bind(c,25400)),Promise.resolve().then(c.bind(c,93319)),Promise.resolve().then(c.bind(c,31284)),Promise.resolve().then(c.bind(c,2807)),Promise.resolve().then(c.bind(c,59782)),Promise.resolve().then(c.bind(c,80501)),Promise.resolve().then(c.t.bind(c,81512,23)),Promise.resolve().then(c.bind(c,91935)),Promise.resolve().then(c.bind(c,89494)),Promise.resolve().then(c.bind(c,59175))},87461:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]])},89494:(a,b,c)=>{"use strict";c.d(b,{DashboardStatCard:()=>o});var d=c(10837),e=c(81512),f=c.n(e),g=c(26346),h=c(5797),i=c(93801),j=c(65956),k=c(35198),l=c(66668),m=c(39854);let n={relatedWorks:g.A,researchQuestions:h.A,experiments:i.A,documents:j.A};function o({projectUuid:a,href:b,title:c,value:e,helper:g,icon:h,iconBg:i,iconColor:j}){let o=(0,m.k)(a),p=b.endsWith("/related-works")?o.relatedWorks:b.endsWith("/research-questions")?o.researchQuestions:b.endsWith("/experiments")?o.experiments:b.endsWith("/documents")?o.documents:[],q=n[h];return(0,d.jsx)(l.z,{agents:p,appearance:"glow",className:"h-full rounded-[28px]",children:(0,d.jsx)(f(),{href:b,className:"block h-full",children:(0,d.jsx)(k.Zp,{className:`h-full rounded-[28px] bg-card p-5 transition hover:border-primary/30 hover:shadow-sm ${p.length>0?"border-transparent":"border-border"}`,children:(0,d.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("p",{className:"text-base font-semibold text-foreground",children:c}),(0,d.jsx)("p",{className:"mt-3 text-[30px] font-semibold leading-none text-foreground",children:e}),(0,d.jsx)("p",{className:"mt-3 line-clamp-2 text-sm leading-6 text-muted-foreground",children:g})]}),(0,d.jsx)("div",{className:`rounded-2xl p-3 ${i}`,children:(0,d.jsx)(q,{className:`h-5 w-5 ${j}`})})]})})})})}},91645:a=>{"use strict";a.exports=require("net")},91935:(a,b,c)=>{"use strict";c.d(b,{CollapsibleDescription:()=>h});var d=c(10837),e=c(21968),f=c(9222),g=c(97450);function h({text:a,maxLines:b=3}){let c=(0,f.c)("dashboard"),[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!1),l=(0,e.useRef)(null),m=a.replace(/\r\n/g,"\n").replace(/(?:\n[ \t]*){2,}/g,a=>{let b=Math.max(1,(a.match(/\n/g)??[]).length-1);return`
2
+ see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},o=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===K.isDev,l=c||b.writableEnded;if(ah&&ab&&!f&&!N)return(null==ac?void 0:ac.render404)?await ac.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(j=(0,w.parseFallbackField)(ai.fallback)),j===w.FallbackMode.PRERENDER&&(0,u.isBot)(al)&&(!ar||an)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ah=!0),ah&&(j!==w.FallbackMode.NOT_FOUND||f)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),!N&&j!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aB&&!l&&!_&&T&&(k||!aj)){let b;if((k||ai)&&j===w.FallbackMode.NOT_FOUND)throw new B.NoFallbackError;if(ar&&!ap){let c="string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:k?ag:null;if(b=await K.handleResponse({cacheKey:c,req:a,nextConfig:ad,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:$,isRoutePPREnabled:ar,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||at?(0,n.u)(ag):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let o=ah||g||!au?void 0:au;if(as&&void 0!==o)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=T&&ar&&((0,h.getRequestMeta)(a,"renderFallbackShell")||at)?(0,n.u)(af):null;return m({span:i,postponed:o,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,n=await K.handleResponse({cacheKey:aA,responseGenerator:a=>o({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ad,prerenderManifest:$,waitUntil:d.waitUntil});if(_&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),K.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!n){if(aA)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof n.value.postponed;ak&&!av&&(!p||ao)&&(N||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=n;if(au)l={revalidate:0,expire:void 0};else if(N&&ap&&!ao&&ar)l={revalidate:0,expire:void 0};else if(!K.isDev)if(_)l={revalidate:0,expire:void 0};else if(ak){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??ad.expireTime}}else l={revalidate:y.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(n.cacheControl=l,"string"==typeof aw&&(null==q?void 0:q.kind)===v.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];N&&ak&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(aw);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...n,value:{...n.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&au)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(N&&ak||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(N&&ak&&s&&"string"==typeof s&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,s),!q.status||ap&&ar||(b.statusCode=q.status),!N&&q.status&&F.RedirectStatusCode[q.status]&&ap&&(b.statusCode=200),p&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),ap&&!_){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:q.html,cacheControl:av?{revalidate:0,expire:void 0}:n.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(q.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let u=q.html;if(!p||N||ap)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:n.cacheControl});if(as)return u.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}});let w=new TransformStream;return u.push(w.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(w.writable)}).catch(a=>{w.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}})};if(!aF)return await aE.withPropagatedContext(a.headers,()=>aE.trace(i.BaseServerSpan.handleRequest,{spanName:`${aD} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aD,"http.target":a.url}},p));await p(aF)}catch(b){throw b instanceof B.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:G,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:ak,isOnDemandRevalidate:ah})},ac),b}}},37066:(a,b,c)=>{"use strict";c.d(b,{A:()=>g});var d=c(55211),e=c(50117);let f=["en","zh"],g=(0,d.A)(async()=>{let a=await (0,e.UL)(),b=a.get("synapse-locale")?.value,d=b&&f.includes(b)?b:"en";return{locale:d,messages:(await c(76565)(`./${d}.json`)).default}})},38960:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(10023),e=c(31805);function f(){return(0,d.jsx)(e.j,{})}},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},41204:a=>{"use strict";a.exports=require("string_decoder")},42733:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(10023),e=c(31805);function f(){return(0,d.jsx)(e.j,{showBoard:!0})}},44865:a=>{"use strict";a.exports=import("@prisma/client/runtime/query_compiler_fast_bg.postgresql.wasm-base64.mjs")},48161:a=>{"use strict";a.exports=require("node:os")},50475:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{default:()=>s});var e=c(10023),f=c(18198),g=c.n(f),h=c(66530),i=c(67706),j=c(2654),k=c(74236),l=c(85394),m=c(29662),n=c(85034),o=c(8145),p=c(31533),q=c(99418),r=a([m,n]);async function s({params:a}){let b=await (0,m.d)();b||(0,h.redirect)("/login");let{uuid:c}=await a,d=await (0,i.A)(),f=await (0,n.Rq)(b.companyUuid,c);f||(0,h.redirect)("/research-projects");let{project:r,stats:s,recentExperiments:w,recentQuestions:x,relatedWorksCount:y}=f,z=[{title:d("dashboard.relatedWorks"),value:y,helper:d("dashboard.relatedWorksHelper"),href:`/research-projects/${c}/related-works`,icon:"relatedWorks",iconBg:"bg-amber-100 dark:bg-amber-500/15",iconColor:"text-amber-700 dark:text-amber-300"},{title:d("dashboard.questions"),value:s.researchQuestions.total,helper:d("dashboard.questionsHelper",{count:s.researchQuestions.open}),href:`/research-projects/${c}/research-questions`,icon:"researchQuestions",iconBg:"bg-orange-100 dark:bg-orange-500/15",iconColor:"text-orange-700 dark:text-orange-300"},{title:d("dashboard.experiments"),value:s.experiments.total,helper:d("dashboard.experimentsHelper",{count:s.experiments.inProgress}),href:`/research-projects/${c}/experiments`,icon:"experiments",iconBg:"bg-emerald-100 dark:bg-emerald-500/15",iconColor:"text-emerald-700 dark:text-emerald-300"},{title:d("dashboard.documents"),value:s.documents.total,helper:d("dashboard.documentsHelper"),href:`/research-projects/${c}/documents`,icon:"documents",iconBg:"bg-sky-100 dark:bg-sky-500/15",iconColor:"text-sky-700 dark:text-sky-300"}];return(0,e.jsxs)("div",{className:"space-y-6 p-4 md:p-8",children:[(0,e.jsxs)("div",{className:"rounded-[32px] border border-border bg-card p-7 shadow-sm",children:[(0,e.jsxs)("div",{className:"flex flex-col gap-5 xl:flex-row xl:items-start xl:justify-between",children:[(0,e.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,e.jsx)("p",{className:"text-lg font-semibold tracking-[0.08em] text-muted-foreground",children:d("dashboard.brief")}),(0,e.jsx)("h1",{className:"mt-3 text-[28px] font-semibold tracking-tight text-foreground",children:r.name}),(0,e.jsx)(p.CollapsibleDescription,{text:r.description||d("dashboard.noDescription"),maxLines:3})]}),(0,e.jsxs)("div",{className:"flex flex-wrap gap-3",children:[(0,e.jsx)(l.$,{asChild:!0,className:"bg-primary text-primary-foreground hover:bg-primary/90",children:(0,e.jsx)(g(),{href:`/research-projects/${c}/experiments/new`,children:d("dashboard.newExperiment")})}),(0,e.jsx)(l.$,{asChild:!0,variant:"outline",className:"border-border bg-background",children:(0,e.jsx)(g(),{href:`/research-projects/${c}/insights`,children:d("nav.insights")})}),(0,e.jsx)(o.EditProjectDialog,{projectUuid:c,initialData:{name:r.name,description:r.description,datasets:Array.isArray(r.datasets)?r.datasets:null,evaluationMethods:Array.isArray(r.evaluationMethods)?r.evaluationMethods:null,repoUrl:r.repoUrl??null,githubUsername:r.githubUsername??null,githubConfigured:!!r.githubToken}})]})]}),(0,e.jsxs)("div",{className:"mt-6 grid gap-4 lg:grid-cols-3",children:[(0,e.jsx)(t,{title:d("dashboard.goal"),body:r.goal||d("dashboard.noGoal")}),(0,e.jsx)(u,{title:d("dashboard.datasets"),items:Array.isArray(r.datasets)?r.datasets:[],empty:d("dashboard.noDatasets")}),(0,e.jsx)(u,{title:d("dashboard.evaluation"),items:Array.isArray(r.evaluationMethods)?r.evaluationMethods:[],empty:d("dashboard.noEvaluation")})]})]}),(0,e.jsx)("div",{className:"grid gap-4 md:grid-cols-2 xl:grid-cols-4",children:z.map(a=>(0,e.jsx)(q.DashboardStatCard,{projectUuid:c,href:a.href,title:a.title,value:a.value,helper:a.helper,icon:a.icon,iconBg:a.iconBg,iconColor:a.iconColor},a.title))}),(0,e.jsxs)("div",{className:"grid gap-6 xl:grid-cols-[1fr_1.2fr]",children:[(0,e.jsxs)(k.Zp,{className:"rounded-[28px] border-border bg-card p-6",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("h2",{className:"text-lg font-semibold text-foreground",children:d("dashboard.researchQuestionsTitle")}),(0,e.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:d("dashboard.researchQuestionsSubtitle")})]}),(0,e.jsx)(g(),{href:`/research-projects/${c}/research-questions`,className:"text-sm text-primary",children:d("common.viewAll")})]}),(0,e.jsx)("div",{className:"mt-5 space-y-3",children:0===x.length?(0,e.jsx)("p",{className:"text-sm text-muted-foreground",children:d("dashboard.noQuestions")}):x.map(a=>(0,e.jsx)("div",{className:"rounded-2xl bg-secondary/60 px-4 py-4",children:(0,e.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,e.jsx)("p",{className:"text-sm font-medium text-foreground",children:a.title}),(0,e.jsx)("span",{className:"rounded-full bg-background px-2.5 py-1 text-xs text-muted-foreground",children:"pending"===a.reviewStatus?d("ideas.pendingReview"):d(`ideas.columns.${function(a){switch(a){case"proposal_created":case"experiment_created":return"experimentCreated";default:return a}}(a.status)}`)})]})},a.uuid))}),(0,e.jsxs)(g(),{href:`/research-projects/${c}/insights`,className:"mt-6 flex items-center justify-between rounded-2xl border border-border bg-background px-4 py-4 transition hover:border-primary/30",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("p",{className:"text-sm font-medium text-foreground",children:d("dashboard.latestInsight")}),(0,e.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:r.latestSynthesisSummary||d("dashboard.insightsHelper")})]}),(0,e.jsx)(j.A,{className:"h-4 w-4 text-primary"})]})]}),(0,e.jsxs)(k.Zp,{className:"rounded-[28px] border-border bg-card p-6",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("h2",{className:"text-lg font-semibold text-foreground",children:d("dashboard.pipelineTitle")}),(0,e.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:d("dashboard.pipelineSubtitle")})]}),(0,e.jsx)(g(),{href:`/research-projects/${c}/experiments`,className:"text-sm text-primary",children:d("common.viewAll")})]}),(0,e.jsxs)("div",{className:"mt-5 grid gap-3 md:grid-cols-5",children:[(0,e.jsx)(v,{title:d("experiments.columns.draft"),value:s.experiments.draft}),(0,e.jsx)(v,{title:d("experiments.columns.pendingReview"),value:s.experiments.pendingReview}),(0,e.jsx)(v,{title:d("experiments.columns.pendingStart"),value:s.experiments.pendingStart}),(0,e.jsx)(v,{title:d("experiments.columns.inProgress"),value:s.experiments.inProgress}),(0,e.jsx)(v,{title:d("experiments.columns.completed"),value:s.experiments.completed})]}),(0,e.jsx)("div",{className:"mt-5 space-y-3",children:0===w.length?(0,e.jsx)("p",{className:"text-sm text-muted-foreground",children:d("dashboard.noExperiments")}):w.map(a=>(0,e.jsxs)("div",{className:"flex items-center justify-between rounded-2xl bg-secondary/60 px-4 py-3",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("p",{className:"text-sm font-medium text-foreground",children:a.title}),a.outcome?(0,e.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:a.outcome}):null]}),(0,e.jsx)("span",{className:"rounded-full bg-background px-2.5 py-1 text-xs text-muted-foreground",children:d(`experiments.columns.${function(a){switch(a){case"pending_review":return"pendingReview";case"pending_start":return"pendingStart";case"in_progress":return"inProgress";default:return a}}(a.status)}`)})]},a.uuid))})]})]})]})}function t({title:a,body:b}){return(0,e.jsxs)("div",{className:"rounded-[20px] bg-secondary/60 p-4",children:[(0,e.jsx)("p",{className:"text-base font-semibold text-foreground",children:a}),(0,e.jsx)("p",{className:"mt-2 text-sm leading-6 text-foreground",children:b})]})}function u({title:a,items:b,empty:c}){return(0,e.jsxs)("div",{className:"rounded-[20px] bg-secondary/60 p-4",children:[(0,e.jsx)("p",{className:"text-base font-semibold text-foreground",children:a}),(0,e.jsx)("div",{className:"mt-2 space-y-1.5 text-sm leading-6 text-foreground",children:b.length>0?b.map(a=>(0,e.jsxs)("p",{children:["• ",a]},a)):(0,e.jsx)("p",{children:c})})]})}function v({title:a,value:b}){return(0,e.jsxs)("div",{className:"rounded-[20px] bg-secondary/60 p-4 text-center",children:[(0,e.jsx)("p",{className:"text-base font-medium text-muted-foreground",children:a}),(0,e.jsx)("p",{className:"mt-2 text-2xl font-semibold text-foreground",children:b})]})}[m,n]=r.then?(await r)():r,d()}catch(a){d(a)}})},53053:a=>{"use strict";a.exports=require("node:diagnostics_channel")},55511:a=>{"use strict";a.exports=require("crypto")},59175:(a,b,c)=>{"use strict";c.d(b,{EditProjectDialog:()=>n});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(87461),i=c(42424),j=c(11568),k=c(9994),l=c(2852),m=c(20170);function n({projectUuid:a,initialData:b}){let c=(0,g.c)(),n=(0,f.useRouter)(),[o,p]=(0,e.useState)(!1),[q,r]=(0,e.useTransition)(),[s,t]=(0,e.useState)(b.name),[u,v]=(0,e.useState)(b.description||""),[w,x]=(0,e.useState)((b.datasets||[]).join("\n")),[y,z]=(0,e.useState)((b.evaluationMethods||[]).join("\n")),[A,B]=(0,e.useState)(b.repoUrl||""),[C,D]=(0,e.useState)(b.githubUsername||""),[E,F]=(0,e.useState)("");async function G(){let b={name:s.trim(),description:u.trim()||null,datasets:w.split("\n").map(a=>a.trim()).filter(Boolean),evaluationMethods:y.split("\n").map(a=>a.trim()).filter(Boolean),repoUrl:A.trim()||null,githubUsername:C.trim()||null};E.trim()&&(b.githubToken=E.trim()),(await fetch(`/api/research-projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)})).ok&&(p(!1),n.refresh())}function H(a){a&&(t(b.name),v(b.description||""),x((b.datasets||[]).join("\n")),z((b.evaluationMethods||[]).join("\n")),B(b.repoUrl||""),D(b.githubUsername||""),F("")),p(a)}return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(i.$,{variant:"outline",size:"sm",onClick:()=>H(!0),children:[(0,d.jsx)(h.A,{className:"mr-2 h-4 w-4"}),c("common.edit")]}),(0,d.jsx)(j.lG,{open:o,onOpenChange:H,children:(0,d.jsxs)(j.Cf,{className:"max-w-lg max-h-[85vh] overflow-y-auto",children:[(0,d.jsx)(j.c7,{children:(0,d.jsx)(j.L3,{children:c("researchProjects.editProject")})}),(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("researchProjects.projectName")}),(0,d.jsx)(k.p,{value:s,onChange:a=>t(a.target.value)})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("researchProjects.description")}),(0,d.jsx)(m.T,{value:u,onChange:a=>v(a.target.value),rows:3})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("researchProjects.datasets")}),(0,d.jsx)(m.T,{value:w,onChange:a=>x(a.target.value),rows:3,placeholder:c("projectGroups.datasetsPlaceholder")})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("researchProjects.evaluationMethods")}),(0,d.jsx)(m.T,{value:y,onChange:a=>z(a.target.value),rows:3,placeholder:c("projectGroups.evaluationMethodsPlaceholder")})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("projectSettings.repoUrl")}),(0,d.jsx)(k.p,{value:A,onChange:a=>B(a.target.value),placeholder:c("projectSettings.repoUrlPlaceholder")})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("projectSettings.githubUsername")}),(0,d.jsx)(k.p,{value:C,onChange:a=>D(a.target.value)})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(l.J,{children:c("projectSettings.githubToken")}),(0,d.jsx)(k.p,{type:"password",value:E,onChange:a=>F(a.target.value),placeholder:b.githubConfigured?"••••••••":c("projectSettings.githubTokenPlaceholder")}),(0,d.jsxs)("p",{className:"text-xs text-muted-foreground",children:[b.githubConfigured?c("projectSettings.githubConfigured")+". ":c("projectSettings.githubNotConfigured")+". ",c("projectSettings.githubTokenHint")]})]})]}),(0,d.jsxs)(j.Es,{children:[(0,d.jsx)(i.$,{variant:"outline",onClick:()=>p(!1),children:c("common.cancel")}),(0,d.jsx)(i.$,{onClick:()=>r(()=>{G()}),disabled:q||!s.trim(),children:c(q?"common.saving":"common.save")})]})]})})]})}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64939:a=>{"use strict";a.exports=import("pg")},67706:(a,b,c)=>{"use strict";c.d(b,{A:()=>i});var d=c(73426),e=c(67904),f=c(47684),g=c(34637),h=(0,d.cache)(function(a,b){return function({_cache:a=(0,f.b)(),_formatters:b=(0,f.c)(a),getMessageFallback:c=g.d,messages:d,namespace:e,onError:h=g.b,...i}){return function({messages:a,namespace:b,...c},d){return a=a["!"],b=(0,g.r)(b,"!"),(0,g.a)({...c,messages:a,namespace:b})}({...i,onError:h,cache:a,formatters:b,getMessageFallback:c,messages:{"!":d},namespace:e?`!.${e}`:"!"},"!")}({...a,namespace:b})}),i=(0,d.cache)(async function(a){let b,c;return"string"==typeof a?b=a:a&&(c=a.locale,b=a.namespace),h(await (0,e.A)(c),b)})},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},73566:a=>{"use strict";a.exports=require("worker_threads")},74236:(a,b,c)=>{"use strict";c.d(b,{Wu:()=>i,ZB:()=>h,Zp:()=>f,aR:()=>g});var d=c(10023);c(73426);var e=c(63413);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}},74438:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Q:()=>j,t:()=>k});var e=c(41195),f=c(3548),g=c(52618),h=c(65582),i=a([g]);g=(i.then?(await i)():i)[0];let l=h.vF.child({module:"auth"}),m=new Map;async function j(a){try{let b=a.split(".");if(3!==b.length)return null;let c=JSON.parse(Buffer.from(b[1],"base64url").toString("utf-8")).iss;if(!c)return null;let d=function(a){if(!m.has(a)){let b=new URL(`${a.replace(/\/$/,"")}/.well-known/jwks.json`);m.set(a,(0,e.RD)(b))}return m.get(a)}(c),{payload:h}=await (0,f.V)(a,d,{issuer:c});if(h.token_use&&"access"!==h.token_use)return null;let i=await g.prisma.company.findFirst({where:{oidcEnabled:!0,oidcIssuer:c}});if(!i)return null;let j=await g.prisma.user.findFirst({where:{companyUuid:i.uuid,oidcSub:h.sub}});if(!j)return null;return{type:"user",companyUuid:i.uuid,actorUuid:j.uuid,email:j.email||h.email,name:j.name||h.name}}catch(a){return l.error({err:a},"OIDC token verification failed"),null}}function k(a){if(a.startsWith("syn_"))return!1;let b=a.split(".");if(3!==b.length)return!1;try{let a=JSON.parse(Buffer.from(b[0],"base64url").toString("utf-8"));return a.alg&&(a.alg.startsWith("RS")||a.alg.startsWith("ES"))}catch{return!1}}d()}catch(a){d(a)}})},75811:a=>{"use strict";a.exports=import("@prisma/client/runtime/query_compiler_fast_bg.postgresql.mjs")},76565:(a,b,c)=>{var d={"./en.json":[87368,7368],"./zh.json":[72961,2961]};function e(a){if(!c.o(d,a))return Promise.resolve().then(()=>{var b=Error("Cannot find module '"+a+"'");throw b.code="MODULE_NOT_FOUND",b});var b=d[a],e=b[0];return c.e(b[1]).then(()=>c.t(e,19))}e.keys=()=>Object.keys(d),e.id=76565,a.exports=e},76760:a=>{"use strict";a.exports=require("node:path")},78474:a=>{"use strict";a.exports=require("node:events")},79428:a=>{"use strict";a.exports=require("buffer")},79551:a=>{"use strict";a.exports=require("url")},83997:a=>{"use strict";a.exports=require("tty")},84297:a=>{"use strict";a.exports=require("async_hooks")},85034:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{AM:()=>i,Fn:()=>j,Rq:()=>t,T0:()=>n,Wr:()=>p,_8:()=>q,et:()=>u,j5:()=>m,l:()=>o,np:()=>r,t3:()=>k,vP:()=>l});var e=c(18818),f=c(52618),g=c(91997),h=a([f,g]);async function i({companyUuid:a,skip:b,take:c}){let[d,e]=await Promise.all([f.prisma.researchProject.findMany({where:{companyUuid:a},skip:b,take:c,orderBy:{updatedAt:"desc"},select:{uuid:!0,name:!0,description:!0,goal:!0,datasets:!0,evaluationMethods:!0,latestSynthesisAt:!0,latestSynthesisIdeaCount:!0,latestSynthesisSummary:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{researchQuestions:!0,documents:!0,experiments:!0,activities:!0}}}}),f.prisma.researchProject.count({where:{companyUuid:a}})]);return{projects:d,total:e}}async function j(a,b){return f.prisma.researchProject.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0,description:!0,goal:!0,datasets:!0,evaluationMethods:!0,repoUrl:!0,githubUsername:!0,githubToken:!0,latestSynthesisAt:!0,latestSynthesisIdeaCount:!0,latestSynthesisSummary:!0,createdAt:!0,updatedAt:!0,_count:{select:{researchQuestions:!0,documents:!0,experiments:!0,activities:!0}}}})}async function k(a,b){return f.prisma.researchProject.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}})}async function l(a,b){return!!await k(a,b)}async function m(a,b){return f.prisma.researchProject.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0,description:!0,goal:!0,datasets:!0,evaluationMethods:!0,latestSynthesisAt:!0,latestSynthesisIdeaCount:!0,latestSynthesisSummary:!0,repoUrl:!0,githubUsername:!0,githubToken:!0}})}async function n(a,b){return(await f.prisma.researchProject.findMany({where:{companyUuid:a,groupUuid:b},select:{uuid:!0}})).map(a=>a.uuid)}async function o({companyUuid:a,name:b,description:c,goal:d,datasets:e,evaluationMethods:g,groupUuid:h,computePoolUuid:i}){return f.prisma.researchProject.create({data:{companyUuid:a,name:b,description:c,goal:d??null,datasets:e??[],evaluationMethods:g??[],groupUuid:h??null,computePoolUuid:i??null},select:{uuid:!0,name:!0,description:!0,goal:!0,datasets:!0,evaluationMethods:!0,groupUuid:!0,computePoolUuid:!0,createdAt:!0,updatedAt:!0}})}async function p(a,b){let c={...b};return void 0!==b.datasets&&(c.datasets=null===b.datasets?e.D1.Fj:b.datasets),void 0!==b.evaluationMethods&&(c.evaluationMethods=null===b.evaluationMethods?e.D1.Fj:b.evaluationMethods),void 0!==b.computePoolUuid&&(c.computePoolUuid=b.computePoolUuid??null),void 0!==b.autonomousLoopAgentUuid&&(c.autonomousLoopAgentUuid=b.autonomousLoopAgentUuid??null),void 0!==b.autoSearchAgentUuid&&(c.autoSearchAgentUuid=b.autoSearchAgentUuid??null),void 0!==b.deepResearchDocUuid&&(c.deepResearchDocUuid=b.deepResearchDocUuid??null),void 0!==b.repoUrl&&(c.repoUrl=b.repoUrl??null),void 0!==b.githubUsername&&(c.githubUsername=b.githubUsername??null),b.githubToken&&""!==b.githubToken.trim()&&(c.githubToken=b.githubToken.trim()),f.prisma.researchProject.update({where:{uuid:a},data:c,select:{uuid:!0,name:!0,description:!0,goal:!0,datasets:!0,evaluationMethods:!0,computePoolUuid:!0,autonomousLoopEnabled:!0,autonomousLoopAgentUuid:!0,autoSearchEnabled:!0,autoSearchAgentUuid:!0,deepResearchDocUuid:!0,repoUrl:!0,githubUsername:!0,latestSynthesisAt:!0,latestSynthesisIdeaCount:!0,latestSynthesisSummary:!0,createdAt:!0,updatedAt:!0}})}async function q(a){return await f.prisma.researchQuestion.updateMany({where:{researchProjectUuid:a,parentQuestionUuid:{not:null}},data:{parentQuestionUuid:null}}),f.prisma.researchProject.delete({where:{uuid:a}})}async function r({companyUuid:a,skip:b,take:c}){let{projects:d,total:e}=await i({companyUuid:a,skip:b,take:c}),f=d.map(a=>a.uuid),h=await (0,g.c8)(a,f);return{projects:d.map(a=>{let b=h.get(a.uuid)??{researchProjectUuid:a.uuid,researchQuestions:{total:0,open:0,elaborating:0,proposalCreated:0,completed:0,closed:0},experiments:{total:0,draft:0,pendingReview:0,pendingStart:0,inProgress:0,completed:0},experimentDesigns:{total:0,draft:0,pending:0,approved:0,rejected:0,closed:0,active:0},experimentRuns:{total:0,open:0,assigned:0,inProgress:0,toVerify:0,done:0,closed:0,completed:0},documents:{total:0},completionRate:0};return{...a,experimentRunsDone:b.experiments.completed,metrics:b}}),total:e}}async function s(a,b){let c=await (0,g.bF)(a,b);return{researchQuestions:{total:c.researchQuestions.total,open:c.researchQuestions.open+c.researchQuestions.elaborating,elaborating:c.researchQuestions.elaborating,proposalCreated:c.researchQuestions.proposalCreated,completed:c.researchQuestions.completed},experimentRuns:{total:c.experiments.total,inProgress:c.experiments.inProgress,todo:c.experiments.draft,toVerify:c.experiments.pendingReview+c.experiments.pendingStart,done:c.experiments.completed},experimentDesigns:{total:c.experiments.total,pending:c.experiments.pendingReview},experiments:{total:c.experiments.total,draft:c.experiments.draft,pendingReview:c.experiments.pendingReview,pendingStart:c.experiments.pendingStart,inProgress:c.experiments.inProgress,completed:c.experiments.completed},documents:{total:c.documents.total},completionRate:c.completionRate}}async function t(a,b){let[c,d,e,g,h]=await Promise.all([j(a,b),s(a,b),f.prisma.experiment.findMany({where:{companyUuid:a,researchProjectUuid:b},orderBy:{updatedAt:"desc"},take:5,select:{uuid:!0,title:!0,status:!0,outcome:!0}}),f.prisma.researchQuestion.findMany({where:{companyUuid:a,researchProjectUuid:b,reviewStatus:{not:"rejected"}},orderBy:{updatedAt:"desc"},take:5,select:{uuid:!0,title:!0,status:!0,reviewStatus:!0}}),f.prisma.relatedWork.count({where:{companyUuid:a,researchProjectUuid:b}})]);return c?{project:c,stats:d,recentExperiments:e,recentQuestions:g,relatedWorksCount:h}:null}async function u(a,b){let[c,d]=await Promise.all([f.prisma.researchProject.findFirst({where:{uuid:b,companyUuid:a},select:{latestSynthesisAt:!0,latestSynthesisIdeaCount:!0,latestSynthesisSummary:!0}}),f.prisma.experiment.findMany({where:{companyUuid:a,researchProjectUuid:b,status:"completed"},orderBy:{completedAt:"desc"},take:8,select:{uuid:!0,title:!0,outcome:!0,completedAt:!0,researchQuestion:{select:{title:!0}}}})]);return c?{project:c,completedExperiments:d}:null}[f,g]=h.then?(await h)():h,d()}catch(a){d(a)}})},85394:(a,b,c)=>{"use strict";c.d(b,{$:()=>i});var d=c(10023);c(73426);var e=c(89571),f=c(15362),g=c(63413);let h=(0,e.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function i({className:a,variant:b="default",size:c="default",asChild:e=!1,...i}){let j=e?f.bL:"button";return(0,d.jsx)(j,{"data-slot":"button","data-variant":b,"data-size":c,className:(0,g.cn)(h({variant:b,size:c,className:a})),...i})}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87086:(a,b,c)=>{Promise.resolve().then(c.bind(c,13753)),Promise.resolve().then(c.bind(c,81093)),Promise.resolve().then(c.bind(c,14672)),Promise.resolve().then(c.bind(c,25711)),Promise.resolve().then(c.bind(c,70952)),Promise.resolve().then(c.bind(c,98556)),Promise.resolve().then(c.bind(c,14220)),Promise.resolve().then(c.bind(c,5989)),Promise.resolve().then(c.bind(c,15906)),Promise.resolve().then(c.bind(c,45106)),Promise.resolve().then(c.bind(c,13277)),Promise.resolve().then(c.bind(c,55212)),Promise.resolve().then(c.bind(c,73935)),Promise.resolve().then(c.bind(c,50382)),Promise.resolve().then(c.bind(c,66529)),Promise.resolve().then(c.bind(c,41335)),Promise.resolve().then(c.bind(c,66619)),Promise.resolve().then(c.bind(c,53187)),Promise.resolve().then(c.bind(c,28121)),Promise.resolve().then(c.bind(c,63658)),Promise.resolve().then(c.bind(c,95556)),Promise.resolve().then(c.bind(c,28386)),Promise.resolve().then(c.bind(c,15644)),Promise.resolve().then(c.bind(c,25400)),Promise.resolve().then(c.bind(c,93319)),Promise.resolve().then(c.bind(c,31284)),Promise.resolve().then(c.bind(c,2807)),Promise.resolve().then(c.bind(c,59782)),Promise.resolve().then(c.bind(c,80501)),Promise.resolve().then(c.t.bind(c,81512,23)),Promise.resolve().then(c.bind(c,91935)),Promise.resolve().then(c.bind(c,89494)),Promise.resolve().then(c.bind(c,59175))},87461:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]])},89494:(a,b,c)=>{"use strict";c.d(b,{DashboardStatCard:()=>o});var d=c(10837),e=c(81512),f=c.n(e),g=c(26346),h=c(5797),i=c(93801),j=c(65956),k=c(35198),l=c(66668),m=c(39854);let n={relatedWorks:g.A,researchQuestions:h.A,experiments:i.A,documents:j.A};function o({projectUuid:a,href:b,title:c,value:e,helper:g,icon:h,iconBg:i,iconColor:j}){let o=(0,m.k)(a),p=b.endsWith("/related-works")?o.relatedWorks:b.endsWith("/research-questions")?o.researchQuestions:b.endsWith("/experiments")?o.experiments:b.endsWith("/documents")?o.documents:[],q=n[h];return(0,d.jsx)(l.z,{agents:p,appearance:"glow",className:"h-full rounded-[28px]",children:(0,d.jsx)(f(),{href:b,className:"block h-full",children:(0,d.jsx)(k.Zp,{className:`h-full rounded-[28px] bg-card p-5 transition hover:border-primary/30 hover:shadow-sm ${p.length>0?"border-transparent":"border-border"}`,children:(0,d.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("p",{className:"text-base font-semibold text-foreground",children:c}),(0,d.jsx)("p",{className:"mt-3 text-[30px] font-semibold leading-none text-foreground",children:e}),(0,d.jsx)("p",{className:"mt-3 line-clamp-2 text-sm leading-6 text-muted-foreground",children:g})]}),(0,d.jsx)("div",{className:`rounded-2xl p-3 ${i}`,children:(0,d.jsx)(q,{className:`h-5 w-5 ${j}`})})]})})})})}},91645:a=>{"use strict";a.exports=require("net")},91935:(a,b,c)=>{"use strict";c.d(b,{CollapsibleDescription:()=>h});var d=c(10837),e=c(21968),f=c(9222),g=c(97450);function h({text:a,maxLines:b=3}){let c=(0,f.c)("dashboard"),[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!1),l=(0,e.useRef)(null),m=a.replace(/\r\n/g,"\n").replace(/(?:\n[ \t]*){2,}/g,a=>{let b=Math.max(1,(a.match(/\n/g)??[]).length-1);return`
3
3
 
4
4
  ${"&nbsp;\n\n".repeat(b)}`});return(0,d.jsxs)("div",{className:"mt-2",children:[(0,d.jsx)("div",{ref:l,className:"text-sm leading-6 text-muted-foreground prose prose-sm dark:prose-invert max-w-none prose-headings:text-muted-foreground prose-headings:text-sm prose-headings:font-semibold prose-headings:mt-4 prose-headings:mb-1.5 prose-p:my-2 prose-ul:my-2 prose-li:my-0.5",style:!h&&j?{display:"-webkit-box",WebkitLineClamp:b,WebkitBoxOrient:"vertical",overflow:"hidden"}:void 0,children:(0,d.jsx)(g.MarkdownContent,{children:m})}),j&&(0,d.jsx)("button",{onClick:()=>i(!h),className:"mt-1 text-xs text-primary hover:text-primary/80 transition-colors",children:c(h?"showLess":"showMore")})]})}},91997:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{PM:()=>j,bF:()=>l,c8:()=>k});var e=c(52618),f=c(90136),g=a([e,f]);function h(a){return{researchProjectUuid:a,researchQuestions:{total:0,open:0,elaborating:0,proposalCreated:0,completed:0,closed:0},experiments:{total:0,draft:0,pendingReview:0,pendingStart:0,inProgress:0,completed:0},experimentDesigns:{total:0,draft:0,pending:0,approved:0,rejected:0,closed:0,active:0},experimentRuns:{total:0,open:0,assigned:0,inProgress:0,toVerify:0,done:0,closed:0,completed:0},documents:{total:0},completionRate:0}}function i(a){let b=new Map;for(let c of a){let a=b.get(c.researchProjectUuid)??new Map;a.set(c.status??"",c._count._all),b.set(c.researchProjectUuid,a)}return b}function j(a){return{researchQuestions:a.researchQuestions.total,openResearchQuestions:a.researchQuestions.open,documents:a.documents.total,experiments:a.experiments.total,doneExperiments:a.experiments.completed,experimentDesigns:a.experimentDesigns.total,activeExperimentDesigns:a.experimentDesigns.active,experimentRuns:a.experimentRuns.total,doneExperimentRuns:a.experimentRuns.completed,ideas:a.researchQuestions.total,tasks:a.experiments.total,doneTasks:a.experiments.completed,proposals:a.experimentDesigns.total}}async function k(a,b){let c=new Map(b.map(a=>[a,h(a)]));if(0===b.length)return c;let[d,g,j,k,l]=await Promise.all([e.prisma.researchQuestion.groupBy({by:["researchProjectUuid","status"],where:{companyUuid:a,researchProjectUuid:{in:b}},_count:{_all:!0}}),e.prisma.experiment.groupBy({by:["researchProjectUuid","status"],where:{companyUuid:a,researchProjectUuid:{in:b}},_count:{_all:!0}}),e.prisma.experimentDesign.groupBy({by:["researchProjectUuid","status"],where:{companyUuid:a,researchProjectUuid:{in:b}},_count:{_all:!0}}),e.prisma.experimentRun.groupBy({by:["researchProjectUuid","status"],where:{companyUuid:a,researchProjectUuid:{in:b}},_count:{_all:!0}}),e.prisma.document.groupBy({by:["researchProjectUuid"],where:{companyUuid:a,researchProjectUuid:{in:b}},_count:{_all:!0}})]),m=i(d),n=i(g),o=i(j),p=i(k),q=new Map(l.map(a=>[a.researchProjectUuid,a._count._all]));for(let a of b){let b=h(a);b.researchQuestions=function(a,b){let c=b.get(a)??new Map,d=new Map;for(let[a,b]of c.entries()){let c=(0,f.Zv)(a);d.set(c,(d.get(c)??0)+b)}return{total:Array.from(d.values()).reduce((a,b)=>a+b,0),open:d.get("open")??0,elaborating:d.get("elaborating")??0,proposalCreated:d.get("proposal_created")??0,completed:d.get("completed")??0,closed:d.get("closed")??0}}(a,m),b.experiments=function(a,b){let c=b.get(a)??new Map,d=Array.from(c.values()).reduce((a,b)=>a+b,0),e=c.get("draft")??0,f=c.get("pending_review")??0,g=c.get("pending_start")??0,h=c.get("in_progress")??0,i=c.get("completed")??0;return{total:d,draft:e,pendingReview:f,pendingStart:g,inProgress:h,completed:i}}(a,n),b.experimentDesigns=function(a,b){let c=b.get(a)??new Map,d=Array.from(c.values()).reduce((a,b)=>a+b,0),e=c.get("draft")??0,f=c.get("pending")??0,g=c.get("approved")??0,h=c.get("rejected")??0,i=c.get("closed")??0;return{total:d,draft:e,pending:f,approved:g,rejected:h,closed:i,active:e+f}}(a,o),b.experimentRuns=function(a,b){let c=b.get(a)??new Map,d=Array.from(c.values()).reduce((a,b)=>a+b,0),e=c.get("open")??0,f=c.get("assigned")??0,g=c.get("in_progress")??0,h=c.get("to_verify")??0,i=c.get("done")??0,j=c.get("closed")??0;return{total:d,open:e,assigned:f,inProgress:g,toVerify:h,done:i,closed:j,completed:i+j}}(a,p),b.documents.total=q.get(a)??0,b.completionRate=b.experiments.total>0?Math.round(b.experiments.completed/b.experiments.total*100):b.experimentRuns.total>0?Math.round(b.experimentRuns.completed/b.experimentRuns.total*100):0,c.set(a,b)}return c}async function l(a,b){return(await k(a,[b])).get(b)??h(b)}[e,f]=g.then?(await g)():g,d()}catch(a){d(a)}})},93801:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("flask-conical",[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]])},94735:a=>{"use strict";a.exports=require("events")},97450:(a,b,c)=>{"use strict";c.d(b,{MarkdownContent:()=>f});var d=c(10837),e=c(1461);function f({children:a}){return(0,d.jsx)(e.u,{children:a})}},99418:(a,b,c)=>{"use strict";c.d(b,{DashboardStatCard:()=>d});let d=(0,c(37143).registerClientReference)(function(){throw Error("Attempted to call DashboardStatCard() from the server but DashboardStatCard is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/dashboard/dashboard-stat-card.tsx","DashboardStatCard")}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[8843,7352,936,9833,3548,8481,8322,9516,1512,7201,7878,865,5826,117,9642,2956,9865,2411,2914,5248,1539,6088,5628,314,7943,4742,136,3791],()=>b(b.s=36174));module.exports=c})();
@@ -1,2 +1,2 @@
1
1
  (()=>{var a={};a.id=4175,a.ids=[136,4175,4742],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1461:(a,b,c)=>{"use strict";c.d(b,{u:()=>t});var d=c(10837),e=c(21968),f=c(41074),g=c(93555),h=c(34971),i=c(86196),j=c(23702),k=c(61848),l=c(89291),m=c(52840),n=c(85063),o=c(21345),p=c(65665),q=c(95921);let r=["hsl(var(--primary))","#22c55e","#3b82f6","#f59e0b","#ef4444","#8b5cf6","#ec4899","#14b8a6"];function s({raw:a,chartType:b}){let c=(0,e.useMemo)(()=>(function(a){let b=a.trim().split("\n").filter(Boolean);if(b.length<2)return null;let c=b[0].includes(" ")?" ":",",d=b[0].split(c).map(a=>a.trim());if(d.length<2)return null;let e=b.slice(1).map(a=>{let b=a.split(c).map(a=>a.trim()),e={};return d.forEach((a,c)=>{let d=b[c]??"",f=Number(d);e[a]=isNaN(f)?d:f}),e}),f=d.slice(1);return e.every(a=>f.every(b=>"number"==typeof a[b]))?{type:"bar",data:e,keys:f}:null})(a),[a]);if(!c)return(0,d.jsx)("pre",{className:"overflow-x-auto rounded-lg bg-secondary p-4 text-sm",children:a});let f="line"===b?"line":c.type,g=Object.keys(c.data[0]??{})[0]??"label";return(0,d.jsx)("div",{className:"my-4 rounded-lg border border-border bg-card p-4",children:(0,d.jsx)(i.u,{width:"100%",height:300,children:"line"===f?(0,d.jsxs)(j.b,{data:c.data,children:[(0,d.jsx)(k.d,{strokeDasharray:"3 3",stroke:"hsl(var(--border))"}),(0,d.jsx)(l.W,{dataKey:g,tick:{fontSize:12},stroke:"hsl(var(--muted-foreground))"}),(0,d.jsx)(m.h,{tick:{fontSize:12},stroke:"hsl(var(--muted-foreground))"}),(0,d.jsx)(n.m,{contentStyle:{background:"hsl(var(--card))",border:"1px solid hsl(var(--border))",borderRadius:8,fontSize:12}}),c.keys.map((a,b)=>(0,d.jsx)(o.N1,{type:"monotone",dataKey:a,stroke:r[b%r.length],strokeWidth:2,dot:{r:3}},a))]}):(0,d.jsxs)(p.E,{data:c.data,children:[(0,d.jsx)(k.d,{strokeDasharray:"3 3",stroke:"hsl(var(--border))"}),(0,d.jsx)(l.W,{dataKey:g,tick:{fontSize:12},stroke:"hsl(var(--muted-foreground))"}),(0,d.jsx)(m.h,{tick:{fontSize:12},stroke:"hsl(var(--muted-foreground))"}),(0,d.jsx)(n.m,{contentStyle:{background:"hsl(var(--card))",border:"1px solid hsl(var(--border))",borderRadius:8,fontSize:12}}),c.keys.map((a,b)=>(0,d.jsx)(q.yP,{dataKey:a,fill:r[b%r.length],radius:[4,4,0,0]},a))]})})})}function t({children:a}){return(0,d.jsx)(f.oz,{remarkPlugins:[g.A],rehypePlugins:[h.A],components:{h1:({children:a})=>(0,d.jsx)("h1",{className:"mt-6 mb-4 text-2xl font-bold text-foreground",children:a}),h2:({children:a})=>(0,d.jsx)("h2",{className:"mt-5 mb-3 text-xl font-semibold text-foreground",children:a}),h3:({children:a})=>(0,d.jsx)("h3",{className:"mt-4 mb-2 text-lg font-semibold text-foreground",children:a}),h4:({children:a})=>(0,d.jsx)("h4",{className:"mt-3 mb-2 text-base font-semibold text-foreground",children:a}),p:({children:a})=>(0,d.jsx)("p",{className:"my-2 leading-7",children:a}),ul:({children:a})=>(0,d.jsx)("ul",{className:"my-2 ml-6 list-disc space-y-1",children:a}),ol:({children:a})=>(0,d.jsx)("ol",{className:"my-2 ml-6 list-decimal space-y-1",children:a}),li:({children:a})=>(0,d.jsx)("li",{className:"leading-7",children:a}),blockquote:({children:a})=>(0,d.jsx)("blockquote",{className:"my-3 border-l-4 border-primary/30 pl-4 italic text-muted-foreground",children:a}),hr:()=>(0,d.jsx)("hr",{className:"my-6 border-border"}),a:({href:a,children:b})=>(0,d.jsx)("a",{href:a,className:"text-primary underline underline-offset-2 hover:text-primary/80",target:"_blank",rel:"noopener noreferrer",children:b}),strong:({children:a})=>(0,d.jsx)("strong",{className:"font-semibold text-foreground",children:a}),code({className:a,children:b,...c}){let e=/language-chart(?::(\w+))?/.exec(a||"");return e?(0,d.jsx)(s,{raw:String(b).replace(/\n$/,""),chartType:e[1]}):a?(0,d.jsx)("code",{className:a,...c,children:b}):(0,d.jsx)("code",{className:"rounded bg-secondary px-1.5 py-0.5 text-sm font-mono",...c,children:b})},pre:({children:a})=>(0,d.jsx)("pre",{className:"overflow-x-auto rounded-lg bg-secondary/80 p-4 text-sm",children:a}),table:({children:a})=>(0,d.jsx)("div",{className:"my-4 overflow-x-auto rounded-lg border border-border",children:(0,d.jsx)("table",{className:"min-w-full text-sm",children:a})}),thead:({children:a})=>(0,d.jsx)("thead",{className:"border-b border-border bg-secondary/50",children:a}),th:({children:a})=>(0,d.jsx)("th",{className:"whitespace-nowrap px-4 py-2.5 text-left text-xs font-semibold text-muted-foreground",children:a}),td:({children:a})=>(0,d.jsx)("td",{className:"px-4 py-2.5 text-foreground border-b border-border/30",children:a}),img:({src:a,alt:b})=>(0,d.jsxs)("span",{className:"my-4 block",children:[(0,d.jsx)("img",{src:a,alt:b||"",className:"max-w-full rounded-lg border border-border",loading:"lazy"}),b&&(0,d.jsx)("span",{className:"mt-1 block text-center text-xs text-muted-foreground",children:b})]})},children:a})}},1708:a=>{"use strict";a.exports=require("node:process")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4573:a=>{"use strict";a.exports=require("node:buffer")},8086:a=>{"use strict";a.exports=require("module")},10768:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(91533).A)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]])},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12412:a=>{"use strict";a.exports=require("assert")},14985:a=>{"use strict";a.exports=require("dns")},15980:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>D.a,__next_app__:()=>J,handler:()=>L,pages:()=>I,routeModule:()=>K,tree:()=>H});var d=c(76929),e=c(30630),f=c(59862),g=c(91959),h=c(8877),i=c(57717),j=c(85532),k=c(38317),l=c(80605),m=c(41431),n=c(28259),o=c(40740),p=c(16002),q=c(66271),r=c(261),s=c(81958),t=c(26331),u=c(26713),v=c(39959),w=c(76644),x=c(23640),y=c(68249),z=c(30143),A=c(47653),B=c(86439),C=c(29723),D=c.n(C),E=c(39303),F=c(79254),G={};for(let a in E)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(G[a]=()=>E[a]);c.d(b,G);let H={children:["",{children:["(dashboard)",{children:["research-projects",{children:["[uuid]",{children:["documents",{children:["[documentUuid]",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,99386)),"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/documents/[documentUuid]/page.tsx"]}]},{}]},{loading:[()=>Promise.resolve().then(c.bind(c,69770)),"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/documents/loading.tsx"]}]},{loading:[()=>Promise.resolve().then(c.bind(c,42733)),"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/loading.tsx"]}]},{}]},{layout:[()=>Promise.resolve().then(c.bind(c,16352)),"/home/ubuntu/Synapse/src/app/(dashboard)/layout.tsx"],loading:[()=>Promise.resolve().then(c.bind(c,69436)),"/home/ubuntu/Synapse/src/app/(dashboard)/loading.tsx"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,3155,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,37942,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,1537,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,33367))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(c.bind(c,40340)),"/home/ubuntu/Synapse/src/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,29723,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,3155,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,37942,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,1537,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,33367))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]}.children,I=["/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/documents/[documentUuid]/page.tsx"],J={require:c,loadChunk:()=>Promise.resolve()},K=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/(dashboard)/research-projects/[uuid]/documents/[documentUuid]/page",pathname:"/research-projects/[uuid]/documents/[documentUuid]",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:H},distDir:".next",relativeProjectDir:""});async function L(a,b,d){var C;let G="/(dashboard)/research-projects/[uuid]/documents/[documentUuid]/page";"/index"===G&&(G="/");let M=(0,h.getRequestMeta)(a,"postponed"),N=(0,h.getRequestMeta)(a,"minimalMode"),O=await K.prepare(a,b,{srcPage:G,multiZoneDraftMode:!1});if(!O)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:P,query:Q,params:R,parsedUrl:S,pageIsDynamic:T,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,serverActionsManifest:X,clientReferenceManifest:Y,subresourceIntegrityManifest:Z,prerenderManifest:$,isDraftMode:_,resolvedPathname:aa,revalidateOnlyGenerated:ab,routerServerContext:ac,nextConfig:ad,interceptionRoutePatterns:ae}=O,af=S.pathname||"/",ag=(0,r.normalizeAppPath)(G),{isOnDemandRevalidate:ah}=O,ai=K.match(af,$),aj=!!$.routes[aa],ak=!!(ai||aj||$.routes[ag]),al=a.headers["user-agent"]||"",am=(0,u.getBotType)(al),an=(0,p.isHtmlBotRequest)(a),ao=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[t.NEXT_ROUTER_PREFETCH_HEADER],ap=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[t.RSC_HEADER],aq=(0,s.getIsPossibleServerAction)(a),ar=(0,m.checkIsAppPPREnabled)(ad.experimental.ppr)&&(null==(C=$.routes[ag]??$.dynamicRoutes[ag])?void 0:C.renderingMode)==="PARTIALLY_STATIC",as=!1,at=!1,au=ar?M:void 0,av=ar&&ap&&!ao,aw=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ax=!al||(0,p.shouldServeStreamingMetadata)(al,ad.htmlLimitedBots);an&&ar&&(ak=!1,ax=!1);let ay=!0===K.isDev||!ak||"string"==typeof M||av,az=an&&ar,aA=null;_||!ak||ay||aq||au||av||(aA=aa);let aB=aA;!aB&&K.isDev&&(aB=aa),K.isDev||_||!ak||!ap||av||(0,k.d)(a.headers);let aC={...E,tree:H,pages:I,GlobalError:D(),handler:L,routeModule:K,__next_app__:J};X&&Y&&(0,o.setReferenceManifestsSingleton)({page:G,clientReferenceManifest:Y,serverActionsManifest:X,serverModuleMap:(0,q.createServerModuleMap)({serverActionsManifest:X})});let aD=a.method||"GET",aE=(0,g.getTracer)(),aF=aE.getActiveScopeSpan();try{let f=K.getVaryHeader(aa,ae);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return K.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aE.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aD} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aD} ${a.url}`)})},m=async({span:e,postponed:f,fallbackRouteParams:g})=>{let i={query:Q,params:R,page:ag,sharedContext:{buildId:P},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aC,Component:(0,j.T)(aC),params:R,routeModule:K,page:G,postponed:f,shouldWaitOnAllReady:az,serveStreamingMetadata:ax,supportsDynamicResponse:"string"==typeof f||ay,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,subresourceIntegrityManifest:Z,serverActionsManifest:X,clientReferenceManifest:Y,setIsrStatus:null==ac?void 0:ac.setIsrStatus,dir:c(33873).join(process.cwd(),K.relativeProjectDir),isDraftMode:_,isRevalidate:ak&&!f&&!av,botType:am,isOnDemandRevalidate:ah,isPossibleServerAction:aq,assetPrefix:ad.assetPrefix,nextConfigOutput:ad.output,crossOrigin:ad.crossOrigin,trailingSlash:ad.trailingSlash,previewProps:$.preview,deploymentId:ad.deploymentId,enableTainting:ad.experimental.taint,htmlLimitedBots:ad.htmlLimitedBots,devtoolSegmentExplorer:ad.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:ad.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:ad.experimental.cacheLife,basePath:ad.basePath,serverActions:ad.experimental.serverActions,...as?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:as}:{},experimental:{isRoutePPREnabled:ar,expireTime:ad.expireTime,staleTimes:ad.experimental.staleTimes,cacheComponents:!!ad.experimental.cacheComponents,clientSegmentCache:!!ad.experimental.clientSegmentCache,clientParamParsing:!!ad.experimental.clientParamParsing,dynamicOnHover:!!ad.experimental.dynamicOnHover,inlineCss:!!ad.experimental.inlineCss,authInterrupts:!!ad.experimental.authInterrupts,clientTraceMetadata:ad.experimental.clientTraceMetadata||[]},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>K.onRequestError(a,b,d,ac),err:(0,h.getRequestMeta)(a,"invokeError"),dev:K.isDev}},l=await k(e,i),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[y.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,ak&&(null==n?void 0:n.revalidate)===0&&!K.isDev&&!ar){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${aa}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
- see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},o=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===K.isDev,l=c||b.writableEnded;if(ah&&ab&&!f&&!N)return(null==ac?void 0:ac.render404)?await ac.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(j=(0,w.parseFallbackField)(ai.fallback)),j===w.FallbackMode.PRERENDER&&(0,u.isBot)(al)&&(!ar||an)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ah=!0),ah&&(j!==w.FallbackMode.NOT_FOUND||f)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),!N&&j!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aB&&!l&&!_&&T&&(k||!aj)){let b;if((k||ai)&&j===w.FallbackMode.NOT_FOUND)throw new B.NoFallbackError;if(ar&&!ap){let c="string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:k?ag:null;if(b=await K.handleResponse({cacheKey:c,req:a,nextConfig:ad,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:$,isRoutePPREnabled:ar,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||at?(0,n.u)(ag):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let o=ah||g||!au?void 0:au;if(as&&void 0!==o)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=T&&ar&&((0,h.getRequestMeta)(a,"renderFallbackShell")||at)?(0,n.u)(af):null;return m({span:i,postponed:o,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,n=await K.handleResponse({cacheKey:aA,responseGenerator:a=>o({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ad,prerenderManifest:$,waitUntil:d.waitUntil});if(_&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),K.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!n){if(aA)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof n.value.postponed;ak&&!av&&(!p||ao)&&(N||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=n;if(au)l={revalidate:0,expire:void 0};else if(N&&ap&&!ao&&ar)l={revalidate:0,expire:void 0};else if(!K.isDev)if(_)l={revalidate:0,expire:void 0};else if(ak){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??ad.expireTime}}else l={revalidate:y.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(n.cacheControl=l,"string"==typeof aw&&(null==q?void 0:q.kind)===v.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];N&&ak&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(aw);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...n,value:{...n.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&au)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(N&&ak||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(N&&ak&&s&&"string"==typeof s&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,s),!q.status||ap&&ar||(b.statusCode=q.status),!N&&q.status&&F.RedirectStatusCode[q.status]&&ap&&(b.statusCode=200),p&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),ap&&!_){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:q.html,cacheControl:av?{revalidate:0,expire:void 0}:n.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(q.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let u=q.html;if(!p||N||ap)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:n.cacheControl});if(as)return u.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}});let w=new TransformStream;return u.push(w.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(w.writable)}).catch(a=>{w.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}})};if(!aF)return await aE.withPropagatedContext(a.headers,()=>aE.trace(i.BaseServerSpan.handleRequest,{spanName:`${aD} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aD,"http.target":a.url}},p));await p(aF)}catch(b){throw b instanceof B.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:G,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:ak,isOnDemandRevalidate:ah})},ac),b}}},16038:(a,b,c)=>{"use strict";c.d(b,{DocumentActions:()=>d});let d=(0,c(37143).registerClientReference)(function(){throw Error("Attempted to call DocumentActions() from the server but DocumentActions is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/documents/[documentUuid]/document-actions.tsx","DocumentActions")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},21820:a=>{"use strict";a.exports=require("os")},24009:(a,b,c)=>{"use strict";c.d(b,{FB:()=>i,OG:()=>j,YB:()=>l,hD:()=>g,mA:()=>k});var d=c(70936),e=c(7046),f=c(65582);class g extends Error{constructor(a,b,c=400,d){super(b),this.code=a,this.status=c,this.details=d,this.name="ApiError"}}let h={P2002:"Unique constraint violation",P2025:"Record not found",P2003:"Foreign key constraint violation"};function i(a){return async(b,c)=>{try{return await a(b,c)}catch(a){if((0,f.M9)().error({err:a},"API error"),a instanceof g)return d.NextResponse.json({success:!1,error:{code:a.code,message:a.message,details:a.details}},{status:a.status});if(a&&"object"==typeof a&&"code"in a){let b=h[a.code];if(b){if("P2025"===a.code)return e.sO.notFound();if("P2002"===a.code)return e.sO.conflict(b);return e.sO.database(b)}}if(a instanceof Error)return e.sO.internal("Internal server error");return e.sO.internal()}}}async function j(a){try{return await a.json()}catch{throw new g("BAD_REQUEST","Invalid JSON body",400)}}function k(a){let b=new URL(a.url),c={};return b.searchParams.forEach((a,b)=>{c[b]=a}),c}function l(a){let b=k(a),c=Math.max(1,parseInt(b.page||"1",10)),d=Math.min(100,Math.max(1,parseInt(b.pageSize||"20",10)));return{page:c,pageSize:d,skip:(c-1)*d,take:d}}},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},26849:a=>{"use strict";a.exports=require("@prisma/client/runtime/client")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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")},34631:a=>{"use strict";a.exports=require("tls")},35198:(a,b,c)=>{"use strict";c.d(b,{BT:()=>i,Wu:()=>j,ZB:()=>h,Zp:()=>f,aR:()=>g});var d=c(10837);c(21968);var e=c(96307);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-description",className:(0,e.cn)("text-muted-foreground text-sm",a),...b})}function j({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}},40751:(a,b,c)=>{Promise.resolve().then(c.bind(c,43775)),Promise.resolve().then(c.bind(c,92851)),Promise.resolve().then(c.bind(c,11226)),Promise.resolve().then(c.bind(c,13065)),Promise.resolve().then(c.bind(c,64098)),Promise.resolve().then(c.bind(c,49442)),Promise.resolve().then(c.bind(c,66542)),Promise.resolve().then(c.bind(c,87827)),Promise.resolve().then(c.bind(c,81448)),Promise.resolve().then(c.bind(c,53392)),Promise.resolve().then(c.bind(c,97271)),Promise.resolve().then(c.bind(c,73814)),Promise.resolve().then(c.bind(c,62329)),Promise.resolve().then(c.bind(c,2768)),Promise.resolve().then(c.bind(c,1159)),Promise.resolve().then(c.bind(c,69757)),Promise.resolve().then(c.bind(c,92521)),Promise.resolve().then(c.bind(c,6873)),Promise.resolve().then(c.bind(c,10375)),Promise.resolve().then(c.bind(c,4176)),Promise.resolve().then(c.bind(c,33914)),Promise.resolve().then(c.bind(c,19868)),Promise.resolve().then(c.bind(c,32886)),Promise.resolve().then(c.bind(c,20294)),Promise.resolve().then(c.bind(c,94733)),Promise.resolve().then(c.bind(c,61298)),Promise.resolve().then(c.bind(c,8013)),Promise.resolve().then(c.bind(c,44236)),Promise.resolve().then(c.bind(c,5699)),Promise.resolve().then(c.t.bind(c,18198,23)),Promise.resolve().then(c.bind(c,16038)),Promise.resolve().then(c.bind(c,83736))},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},41204:a=>{"use strict";a.exports=require("string_decoder")},44865:a=>{"use strict";a.exports=import("@prisma/client/runtime/query_compiler_fast_bg.postgresql.wasm-base64.mjs")},48161:a=>{"use strict";a.exports=require("node:os")},48873:(a,b,c)=>{"use strict";c.d(b,{Ik:()=>f,Yy:()=>d,nm:()=>e});class d extends Error{constructor(a){super(`${a} is already claimed`),this.name="AlreadyClaimedError"}}class e extends Error{constructor(a){super(`${a} is not currently claimed`),this.name="NotClaimedError"}}function f(a){return"object"==typeof a&&null!==a&&"code"in a&&"P2025"===a.code}},48999:(a,b,c)=>{Promise.resolve().then(c.bind(c,13753)),Promise.resolve().then(c.bind(c,81093)),Promise.resolve().then(c.bind(c,14672)),Promise.resolve().then(c.bind(c,25711)),Promise.resolve().then(c.bind(c,70952)),Promise.resolve().then(c.bind(c,98556)),Promise.resolve().then(c.bind(c,14220)),Promise.resolve().then(c.bind(c,5989)),Promise.resolve().then(c.bind(c,15906)),Promise.resolve().then(c.bind(c,45106)),Promise.resolve().then(c.bind(c,13277)),Promise.resolve().then(c.bind(c,55212)),Promise.resolve().then(c.bind(c,73935)),Promise.resolve().then(c.bind(c,50382)),Promise.resolve().then(c.bind(c,66529)),Promise.resolve().then(c.bind(c,41335)),Promise.resolve().then(c.bind(c,66619)),Promise.resolve().then(c.bind(c,53187)),Promise.resolve().then(c.bind(c,28121)),Promise.resolve().then(c.bind(c,63658)),Promise.resolve().then(c.bind(c,95556)),Promise.resolve().then(c.bind(c,28386)),Promise.resolve().then(c.bind(c,15644)),Promise.resolve().then(c.bind(c,25400)),Promise.resolve().then(c.bind(c,93319)),Promise.resolve().then(c.bind(c,31284)),Promise.resolve().then(c.bind(c,2807)),Promise.resolve().then(c.bind(c,59782)),Promise.resolve().then(c.bind(c,80501)),Promise.resolve().then(c.t.bind(c,81512,23)),Promise.resolve().then(c.bind(c,92980)),Promise.resolve().then(c.bind(c,74418))},50123:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"7013bf4f1d9add21d7edcac920f5b3dd71058c9744":()=>e.l});var e=c(53123),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},53053:a=>{"use strict";a.exports=require("node:diagnostics_channel")},53123:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{l:()=>l});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(53870),i=c(97307),j=c(12217),k=a([g,h]);[g,h]=k.then?(await k)():k;let m=i.vF.child({module:"document"});async function l(a,b,c){let d=await (0,g.d)();if(!d)return{success:!1,error:"Unauthorized"};try{if(!await (0,h.Cs)(d.companyUuid,a))return{success:!1,error:"Document not found"};return await (0,h.lU)(a,{content:c}),(0,f.revalidatePath)(`/research-projects/${b}/documents/${a}`),(0,f.revalidatePath)(`/research-projects/${b}/documents`),{success:!0}}catch(a){return m.error({err:a},"Failed to update document"),{success:!1,error:"Failed to update document"}}}(0,j.D)([l]),(0,e.A)(l,"7013bf4f1d9add21d7edcac920f5b3dd71058c9744",null),d()}catch(a){d(a)}})},53870:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Cs:()=>j,hG:()=>m,lU:()=>l,ui:()=>k});var e=c(71255),f=c(92633),g=c(62729),h=a([e,f]);async function i(a,b=!1){let c=await (0,f.LS)(a.createdByUuid),d={uuid:a.uuid,type:a.type,title:a.title,version:a.version,experimentDesignUuid:a.experimentDesignUuid,createdBy:c,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()};return b&&void 0!==a.content&&(d.content=a.content),a.researchProject&&(d.project=a.researchProject),d}async function j(a,b){return e.z.document.findFirst({where:{uuid:b,companyUuid:a}})}async function k(a){let b=await e.z.document.create({data:{companyUuid:a.companyUuid,researchProjectUuid:a.researchProjectUuid,type:a.type,title:a.title,content:a.content,version:1,experimentDesignUuid:a.experimentDesignUuid,createdByUuid:a.createdByUuid},select:{uuid:!0,type:!0,title:!0,content:!0,version:!0,experimentDesignUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}});return g.B.emitChange({companyUuid:a.companyUuid,researchProjectUuid:a.researchProjectUuid,entityType:"document",entityUuid:b.uuid,action:"created"}),i(b,!0)}async function l(a,{title:b,content:c,incrementVersion:d}){let f={};void 0!==b&&(f.title=b),void 0!==c&&(f.content=c),d&&(f.version={increment:1});let g=await e.z.document.update({where:{uuid:a},data:f,include:{researchProject:{select:{uuid:!0,name:!0}}}});return i(g,!0)}async function m(a,b,c,d,f){let g=await e.z.document.create({data:{companyUuid:a,researchProjectUuid:b,type:f.type||"prd",title:f.title,content:f.content||null,version:1,experimentDesignUuid:c,createdByUuid:d},select:{uuid:!0,type:!0,title:!0,content:!0,version:!0,experimentDesignUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}});return i(g,!0)}[e,f]=h.then?(await h)():h,d()}catch(a){d(a)}})},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64939:a=>{"use strict";a.exports=import("pg")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},73566:a=>{"use strict";a.exports=require("worker_threads")},74418:(a,b,c)=>{"use strict";c.d(b,{DocumentContent:()=>n});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(35198),i=c(1461),j=c(42424),k=c(42377);let l=(0,k.createServerReference)("7013bf4f1d9add21d7edcac920f5b3dd71058c9744",k.callServer,void 0,k.findSourceMapURL,"updateDocumentAction");function m({headers:a,rows:b}){return(0,d.jsx)("div",{className:"overflow-x-auto rounded-lg border border-border",children:(0,d.jsxs)("table",{className:"min-w-full text-sm",children:[(0,d.jsx)("thead",{children:(0,d.jsx)("tr",{className:"border-b border-border bg-secondary/50",children:a.map((a,b)=>(0,d.jsx)("th",{className:"whitespace-nowrap px-4 py-2.5 text-left text-xs font-semibold text-muted-foreground",children:a},b))})}),(0,d.jsx)("tbody",{children:b.map((a,b)=>(0,d.jsx)("tr",{className:"border-b border-border/50 last:border-0 hover:bg-secondary/30 transition-colors",children:a.map((a,b)=>(0,d.jsx)("td",{className:"max-w-[300px] truncate px-4 py-2.5 text-foreground",children:a||(0,d.jsx)("span",{className:"text-muted-foreground",children:"—"})},b))},b))})]})})}function n({documentUuid:a,projectUuid:b,initialContent:c,documentType:k}){let n=(0,g.c)(),o=(0,f.useRouter)(),[p,q]=(0,e.useState)(!1),[r,s]=(0,e.useState)(c),[t,u]=(0,e.useTransition)(),v=(0,e.useMemo)(()=>{let a=c.trim().split("\n").filter(Boolean);if(a.length<2)return null;let b=a[0].includes(" ")?" ":null;if(!b)return null;let d=a[0].split(b).map(a=>a.trim());if(d.length<2)return null;let e=a.slice(1).map(a=>{let c=a.split(b).map(a=>a.trim());for(;c.length<d.length;)c.push("");return c.slice(0,d.length)});return{headers:d,rows:e}},[c,k]);return(0,d.jsxs)(h.Zp,{className:"flex-1 overflow-auto border-border p-6",children:[(0,d.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,d.jsx)("h2",{className:"text-lg font-medium text-foreground",children:n("common.content")}),p?(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(j.$,{variant:"outline",onClick:()=>{s(c),q(!1)},disabled:t,className:"border-border text-muted-foreground",children:n("common.cancel")}),(0,d.jsx)(j.$,{onClick:()=>{u(async()=>{(await l(a,b,r)).success&&(q(!1),o.refresh())})},disabled:t,className:"bg-emerald-600 hover:bg-emerald-700 text-white dark:bg-emerald-600 dark:hover:bg-emerald-700",children:n(t?"common.processing":"documents.saveChanges")})]}):(0,d.jsxs)(j.$,{onClick:()=>q(!0),className:"bg-primary hover:bg-primary/90 text-primary-foreground",children:[(0,d.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"mr-2 h-4 w-4",children:(0,d.jsx)("path",{d:"M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z"})}),n("common.edit")]})]}),p?(0,d.jsx)("textarea",{value:r,onChange:a=>s(a.target.value),className:"h-full w-full resize-none rounded-lg border border-border bg-background p-4 font-mono text-sm text-foreground focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary",placeholder:n("documents.documentContent")}):v?(0,d.jsx)(m,{headers:v.headers,rows:v.rows}):(0,d.jsx)("div",{className:"max-w-none text-sm text-foreground",children:c?(0,d.jsx)(i.u,{children:c}):(0,d.jsx)("span",{className:"text-muted-foreground italic",children:n("common.noContent")})})]})}},75811:a=>{"use strict";a.exports=import("@prisma/client/runtime/query_compiler_fast_bg.postgresql.mjs")},76760:a=>{"use strict";a.exports=require("node:path")},76872:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{LS:()=>i,SJ:()=>k,Uo:()=>l,Xx:()=>m,Z_:()=>h,_9:()=>n,ir:()=>j,lR:()=>g});var e=c(52618),f=a([e]);async function g(a,b){if("user"===a){let a=await e.prisma.user.findUnique({where:{uuid:b},select:{name:!0,email:!0}});return a&&(a.name||a.email)||"Unknown"}if("agent"===a){let a=await e.prisma.agent.findUnique({where:{uuid:b},select:{name:!0}});return a?.name??null}return null}async function h(a,b){if(!a||!b)return null;let c=await g(a,b);return c?{type:a,uuid:b,name:c}:null}async function i(a,b){if(b){let c=await g(b,a);return c?{type:b,uuid:a,name:c}:null}let c=await e.prisma.user.findUnique({where:{uuid:a},select:{name:!0,email:!0}});if(c)return{type:"user",uuid:a,name:c.name||c.email||"Unknown"};let d=await e.prisma.agent.findUnique({where:{uuid:a},select:{name:!0}});return d?{type:"agent",uuid:a,name:d.name}:null}async function j(a,b,c,d){if(!a||!b)return null;let f=await g(a,b);if(!f)return null;let h=null;if("agent"===a){let a=await e.prisma.agent.findUnique({where:{uuid:b},select:{color:!0}});h=a?.color??null}let i=null;if(d){let a=await g("user",d);a&&(i={type:"user",uuid:d,name:a})}return{type:a,uuid:b,name:f,color:h,assignedAt:c?.toISOString()??null,assignedBy:i}}async function k(a,b,c){if(!a)return null;let d=await g("user",a);return d?{reviewedBy:{type:"user",uuid:a,name:d},reviewNote:b,reviewedAt:c?.toISOString()??null}:null}async function l(a){let b=new Map;if(0===a.length)return b;let c=[...new Set(a.filter(a=>"user"===a.type).map(a=>a.uuid))],d=[...new Set(a.filter(a=>"agent"===a.type).map(a=>a.uuid))],[f,g]=await Promise.all([c.length>0?e.prisma.user.findMany({where:{uuid:{in:c}},select:{uuid:!0,name:!0,email:!0}}):[],d.length>0?e.prisma.agent.findMany({where:{uuid:{in:d}},select:{uuid:!0,name:!0}}):[]]);for(let a of f)b.set(a.uuid,a.name||a.email||"Unknown");for(let a of g)b.set(a.uuid,a.name);return b}async function m(a){let b=new Map;if(0===a.length)return b;let c=[...new Set(a)],d=await e.prisma.user.findMany({where:{uuid:{in:c}},select:{uuid:!0,name:!0,email:!0}}),f=new Set;for(let a of d)f.add(a.uuid),b.set(a.uuid,{type:"user",uuid:a.uuid,name:a.name||a.email||"Unknown"});let g=c.filter(a=>!f.has(a));if(g.length>0)for(let a of(await e.prisma.agent.findMany({where:{uuid:{in:g}},select:{uuid:!0,name:!0}})))b.set(a.uuid,{type:"agent",uuid:a.uuid,name:a.name});return b}async function n(a,b,c){let d={uuid:b,companyUuid:c};switch(a){case"research_question":return!!await e.prisma.researchQuestion.findFirst({where:d,select:{uuid:!0}});case"experiment":return!!await e.prisma.experiment.findFirst({where:d,select:{uuid:!0}});case"experiment_design":return!!await e.prisma.experimentDesign.findFirst({where:d,select:{uuid:!0}});case"experiment_run":return!!await e.prisma.experimentRun.findFirst({where:d,select:{uuid:!0}});case"document":return!!await e.prisma.document.findFirst({where:d,select:{uuid:!0}});default:return!1}}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},78474:a=>{"use strict";a.exports=require("node:events")},79428:a=>{"use strict";a.exports=require("buffer")},79551:a=>{"use strict";a.exports=require("url")},83736:(a,b,c)=>{"use strict";c.d(b,{DocumentContent:()=>d});let d=(0,c(37143).registerClientReference)(function(){throw Error("Attempted to call DocumentContent() from the server but DocumentContent is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/documents/[documentUuid]/document-content.tsx","DocumentContent")},83997:a=>{"use strict";a.exports=require("tty")},84297:a=>{"use strict";a.exports=require("async_hooks")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88437:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{E1:()=>k,nG:()=>j,s3:()=>i});var e=c(52618),f=c(911),g=c(76872),h=a([e,g]);async function i({companyUuid:a,researchProjectUuid:b,skip:c,take:d,targetType:f,targetUuid:g}){let h={researchProjectUuid:b,companyUuid:a,...f&&{targetType:f},...g&&{targetUuid:g}},[i,j]=await Promise.all([e.prisma.activity.findMany({where:h,skip:c,take:d,orderBy:{createdAt:"desc"},select:{uuid:!0,targetType:!0,targetUuid:!0,actorType:!0,actorUuid:!0,action:!0,value:!0,sessionUuid:!0,sessionName:!0,createdAt:!0}}),e.prisma.activity.count({where:h})]);return{activities:i,total:j}}async function j(a){let{activities:b,total:c}=await i(a),d=await (0,g.Uo)(b.map(a=>({type:a.actorType,uuid:a.actorUuid})));return{activities:b.map(a=>({uuid:a.uuid,targetType:a.targetType,targetUuid:a.targetUuid,action:a.action,actorType:a.actorType,actorName:d.get(a.actorUuid)||"Unknown",value:a.value,sessionUuid:a.sessionUuid,sessionName:a.sessionName,createdAt:a.createdAt.toISOString()})),total:c}}async function k({companyUuid:a,researchProjectUuid:b,targetType:c,targetUuid:d,actorType:g,actorUuid:h,action:i,value:j,sessionUuid:k,sessionName:l}){let m=await e.prisma.activity.create({data:{companyUuid:a,researchProjectUuid:b,targetType:c,targetUuid:d,actorType:g,actorUuid:h,action:i,value:j||void 0,sessionUuid:k||void 0,sessionName:l||void 0}});return f.B.emit("activity",{companyUuid:a,researchProjectUuid:b,targetType:c,targetUuid:d,actorType:g,actorUuid:h,action:i,value:j,sessionUuid:k,sessionName:l,uuid:m.uuid}),m}[e,g]=h.then?(await h)():h,d()}catch(a){d(a)}})},90136:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$V:()=>o,Ae:()=>v,Be:()=>A,Rd:()=>w,Zv:()=>n,_W:()=>s,e0:()=>x,ok:()=>r,pg:()=>u,ph:()=>z,q0:()=>t,vp:()=>q});var e=c(52618),f=c(76872),g=c(911),h=c(24009),i=c(48873),j=c(65582),k=c(90494),l=c(88437),m=a([e,f,k,l]);[e,f,k,l]=m.then?(await m)():m;let B=j.vF.child({module:"research_question"}),C={open:["elaborating","closed"],elaborating:["proposal_created","closed"],proposal_created:["completed","elaborating","closed"],completed:["closed"],closed:[]};function n(a){switch(a){case"assigned":case"in_progress":return"elaborating";case"pending_review":case"experiment_created":return"proposal_created";default:return a}}function o(a,b){let c=n(a),d=n(b);return(C[c]||[]).includes(d)}async function p(a){let[b,c]=await Promise.all([(0,f.ir)(a.assigneeType,a.assigneeUuid,a.assignedAt,a.assignedByUuid),(0,f.LS)(a.createdByUuid)]);return{uuid:a.uuid,title:a.title,content:a.content,attachments:a.attachments,parentQuestionUuid:a.parentQuestionUuid,childQuestionUuids:a.childQuestions?.map(a=>a.uuid)??[],experimentCount:a._count?.experiments??0,sourceType:a.sourceType,sourceLabel:a.sourceLabel,generatedByAgentUuid:a.generatedByAgentUuid,reviewStatus:a.reviewStatus,reviewedByUuid:a.reviewedByUuid,reviewNote:a.reviewNote,reviewedAt:a.reviewedAt?.toISOString()??null,status:n(a.status),assignee:b,...a.researchProject&&{project:a.researchProject},...null!=a.elaborationStatus&&{elaborationStatus:a.elaborationStatus},...null!=a.elaborationDepth&&{elaborationDepth:a.elaborationDepth},createdBy:c,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()}}async function q({companyUuid:a,researchProjectUuid:b,skip:c,take:d,status:f,assignedToMe:g,actorUuid:h,actorType:i}){let j={researchProjectUuid:b,companyUuid:a,...f&&{status:f}};g&&h&&i&&(j.assigneeUuid=h,j.assigneeType=i);let[k,l]=await Promise.all([e.prisma.researchQuestion.findMany({where:j,skip:c,take:d,orderBy:{createdAt:"desc"},select:{uuid:!0,title:!0,content:!0,attachments:!0,parentQuestionUuid:!0,childQuestions:{select:{uuid:!0},orderBy:{createdAt:"asc"}},_count:{select:{experiments:!0}},sourceType:!0,sourceLabel:!0,generatedByAgentUuid:!0,reviewStatus:!0,reviewedByUuid:!0,reviewNote:!0,reviewedAt:!0,status:!0,elaborationStatus:!0,elaborationDepth:!0,assigneeType:!0,assigneeUuid:!0,assignedAt:!0,assignedByUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}}),e.prisma.researchQuestion.count({where:j})]);return{researchQuestions:await Promise.all(k.map(p)),total:l}}async function r(a,b){let c=await e.prisma.researchQuestion.findFirst({where:{uuid:b,companyUuid:a},include:{researchProject:{select:{uuid:!0,name:!0}},childQuestions:{select:{uuid:!0},orderBy:{createdAt:"asc"}},_count:{select:{experiments:!0}}}});return c?p(c):null}async function s(a,b){return e.prisma.researchQuestion.findFirst({where:{uuid:b,companyUuid:a},include:{parentQuestion:{select:{uuid:!0,researchProjectUuid:!0}},childQuestions:{select:{uuid:!0},orderBy:{createdAt:"asc"}},_count:{select:{experiments:!0}}}})}async function t(a){if(a.parentQuestionUuid&&!await e.prisma.researchQuestion.findFirst({where:{uuid:a.parentQuestionUuid,companyUuid:a.companyUuid,researchProjectUuid:a.researchProjectUuid},select:{uuid:!0}}))throw Error("Parent research question not found");let b=await e.prisma.researchQuestion.create({data:{companyUuid:a.companyUuid,researchProjectUuid:a.researchProjectUuid,title:a.title,content:a.content,attachments:a.attachments||void 0,parentQuestionUuid:a.parentQuestionUuid??null,sourceType:a.sourceType??"human",sourceLabel:a.sourceLabel??null,generatedByAgentUuid:a.generatedByAgentUuid??null,reviewStatus:"agent"===a.sourceType?"pending":"accepted",status:"open",createdByUuid:a.createdByUuid},select:{uuid:!0,title:!0,content:!0,attachments:!0,parentQuestionUuid:!0,childQuestions:{select:{uuid:!0},orderBy:{createdAt:"asc"}},_count:{select:{experiments:!0}},sourceType:!0,sourceLabel:!0,generatedByAgentUuid:!0,reviewStatus:!0,reviewedByUuid:!0,reviewNote:!0,reviewedAt:!0,status:!0,elaborationStatus:!0,elaborationDepth:!0,assigneeType:!0,assigneeUuid:!0,assignedAt:!0,assignedByUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}});return g.B.emitChange({companyUuid:a.companyUuid,researchProjectUuid:a.researchProjectUuid,entityType:"research_question",entityUuid:b.uuid,action:"created"}),p(b)}async function u(a,b,c,d){let f=void 0!==c.parentQuestionUuid?await e.prisma.researchQuestion.findFirst({where:{uuid:a,companyUuid:b},select:{uuid:!0,researchProjectUuid:!0}}):null;if(void 0!==c.parentQuestionUuid&&f){if(c.parentQuestionUuid===a)throw Error("A research question cannot be its own parent");if(c.parentQuestionUuid){let d=await e.prisma.researchQuestion.findFirst({where:{uuid:c.parentQuestionUuid,companyUuid:b,researchProjectUuid:f.researchProjectUuid},select:{uuid:!0,parentQuestionUuid:!0}});if(!d)throw Error("Parent research question not found");let g=d.uuid;for(;g;){if(g===a)throw Error("Cannot move a research question under one of its descendants");let b=await e.prisma.researchQuestion.findUnique({where:{uuid:g},select:{parentQuestionUuid:!0}});g=b?.parentQuestionUuid}}}let h=null;if(void 0!==c.content&&d){let b=await e.prisma.researchQuestion.findUnique({where:{uuid:a},select:{content:!0}});h=b?.content??null}let i=await e.prisma.researchQuestion.update({where:{uuid:a},data:c,include:{researchProject:{select:{uuid:!0,name:!0}},childQuestions:{select:{uuid:!0},orderBy:{createdAt:"asc"}},_count:{select:{experiments:!0}}}});return g.B.emitChange({companyUuid:i.companyUuid,researchProjectUuid:i.researchProject.uuid,entityType:"research_question",entityUuid:i.uuid,action:"updated"}),void 0!==c.content&&d&&c.content&&y(i.companyUuid,i.researchProject.uuid,i.uuid,i.title,h,c.content,d.actorType,d.actorUuid).catch(a=>B.error({err:a},"failed to process mentions")),p(i)}async function v({researchQuestionUuid:a,companyUuid:b,assigneeType:c,assigneeUuid:d,assignedByUuid:f}){let h=await e.prisma.researchQuestion.findFirst({where:{uuid:a,companyUuid:b}});if(!h||h.assigneeUuid)throw new i.Yy("Idea");if("completed"===h.status||"closed"===h.status)throw Error("Cannot claim a completed or closed ResearchQuestion");if("rejected"===h.reviewStatus)throw Error("Cannot claim a rejected ResearchQuestion");let j=await e.prisma.researchQuestion.update({where:{uuid:a},data:{status:"elaborating",assigneeType:c,assigneeUuid:d,assignedAt:new Date,assignedByUuid:f},include:{researchProject:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:j.companyUuid,researchProjectUuid:j.researchProject.uuid,entityType:"research_question",entityUuid:j.uuid,action:"updated"}),p(j)}async function w(a){let b=await e.prisma.researchQuestion.findUnique({where:{uuid:a}});if(!b)throw Error("ResearchQuestion not found");if("completed"===b.status||"closed"===b.status)throw Error("Cannot release a completed or closed ResearchQuestion");let c=await e.prisma.researchQuestion.update({where:{uuid:a},data:{status:"open",assigneeType:null,assigneeUuid:null,assignedAt:null,assignedByUuid:null,elaborationDepth:null,elaborationStatus:null},include:{researchProject:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:c.companyUuid,researchProjectUuid:c.researchProject.uuid,entityType:"research_question",entityUuid:c.uuid,action:"updated"}),p(c)}async function x(a,b,c,d,f){let h=await e.prisma.researchQuestion.update({where:{uuid:b},data:{reviewStatus:c,reviewedByUuid:d,reviewNote:f??null,reviewedAt:new Date,status:"rejected"===c?"closed":"open",assigneeType:"rejected"===c?null:void 0,assigneeUuid:"rejected"===c?null:void 0,assignedAt:"rejected"===c?null:void 0,assignedByUuid:"rejected"===c?null:void 0},include:{researchProject:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:a,researchProjectUuid:h.researchProject.uuid,entityType:"research_question",entityUuid:h.uuid,action:"updated"}),p(h)}async function y(a,b,c,d,e,f,g,h){let i=e?k.Xs(e):[],j=k.Xs(f),m=new Set(i.map(a=>`${a.type}:${a.uuid}`)),n=j.filter(a=>!m.has(`${a.type}:${a.uuid}`));if(0!==n.length)for(let e of(await k.AM({companyUuid:a,sourceType:"research_question",sourceUuid:c,content:f,actorType:g,actorUuid:h,researchProjectUuid:b,entityTitle:d}),n))(e.type!==g||e.uuid!==h)&&await l.E1({companyUuid:a,researchProjectUuid:b,targetType:"research_question",targetUuid:c,actorType:g,actorUuid:h,action:"mentioned",value:{mentionedType:e.type,mentionedUuid:e.uuid,mentionedName:e.displayName,sourceType:"research_question",sourceUuid:c}})}async function z(a){let b=await e.prisma.researchQuestion.findUnique({where:{uuid:a},select:{uuid:!0,companyUuid:!0,researchProjectUuid:!0}});if(!b)throw Error("ResearchQuestion not found");let c=await e.prisma.researchQuestion.findMany({where:{companyUuid:b.companyUuid,researchProjectUuid:b.researchProjectUuid},select:{uuid:!0,parentQuestionUuid:!0}}),d=new Map;for(let a of c){let b=d.get(a.parentQuestionUuid??null)??[];b.push(a.uuid),d.set(a.parentQuestionUuid??null,b)}let f=[],h=[{uuid:a,depth:0}];for(;h.length>0;){let a=h.shift();for(let b of(f.push(a),d.get(a.uuid)??[]))h.push({uuid:b,depth:a.depth+1})}let i=f.map(a=>a.uuid),j=(await e.prisma.experiment.findMany({where:{companyUuid:b.companyUuid,researchQuestionUuid:{in:i}},select:{uuid:!0}})).map(a=>a.uuid);for(let a of(await e.prisma.$transaction(async a=>{j.length>0&&(await a.experimentGpuReservation.deleteMany({where:{companyUuid:b.companyUuid,experimentUuid:{in:j}}}),await a.experiment.deleteMany({where:{companyUuid:b.companyUuid,uuid:{in:j}}}));let c=new Map;for(let a of f){let b=c.get(a.depth)??[];b.push(a.uuid),c.set(a.depth,b)}for(let b of[...c.keys()].sort((a,b)=>b-a))await a.researchQuestion.deleteMany({where:{uuid:{in:c.get(b)??[]}}})}),j))g.B.emitChange({companyUuid:b.companyUuid,researchProjectUuid:b.researchProjectUuid,entityType:"experiment",entityUuid:a,action:"deleted"});for(let a of f)g.B.emitChange({companyUuid:b.companyUuid,researchProjectUuid:b.researchProjectUuid,entityType:"research_question",entityUuid:a.uuid,action:"deleted"});return b}async function A(a,b,c,d,f="user"){let i=await e.prisma.researchQuestion.findFirst({where:{uuid:b,companyUuid:a},include:{researchProject:{select:{uuid:!0,name:!0}}}});if(!i)throw new h.hD("NOT_FOUND","ResearchQuestion not found",404);let j=await e.prisma.researchProject.findFirst({where:{uuid:c,companyUuid:a},select:{uuid:!0,name:!0}});if(!j)throw new h.hD("NOT_FOUND","Target project not found",404);if(i.researchProjectUuid===c)throw new h.hD("BAD_REQUEST","ResearchQuestion is already in the target project",400);let k=i.researchProjectUuid;await e.prisma.$transaction(async d=>{await d.researchQuestion.update({where:{uuid:b},data:{researchProjectUuid:c}}),await d.experimentDesign.updateMany({where:{companyUuid:a,inputType:"research_question",inputUuids:{array_contains:[b]},status:{in:["draft","pending"]}},data:{researchProjectUuid:c}})}),await l.E1({companyUuid:a,researchProjectUuid:c,targetType:"research_question",targetUuid:b,actorType:f,actorUuid:d,action:"moved",value:{fromProjectUuid:k,fromProjectName:i.researchProject.name,toProjectUuid:c,toProjectName:j.name}}),g.B.emitChange({companyUuid:a,researchProjectUuid:k,entityType:"research_question",entityUuid:b,action:"updated"}),g.B.emitChange({companyUuid:a,researchProjectUuid:c,entityType:"research_question",entityUuid:b,action:"updated"});let m=await e.prisma.researchQuestion.findFirst({where:{uuid:b,companyUuid:a},include:{researchProject:{select:{uuid:!0,name:!0}}}});return p(m)}d()}catch(a){d(a)}})},90494:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{AM:()=>j,Xs:()=>i,_L:()=>k});var e=c(52618),f=c(76872),g=c(37943),h=a([e,f,g]);[e,f,g]=h.then?(await h)():h;let m=/@\[([^\]]+)\]\((user|agent):([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})\)/gi;function i(a){let b,c=[],d=new Set;for(m.lastIndex=0;null!==(b=m.exec(a))&&!(c.length>=10);){let a=b[1],e=b[2].toLowerCase(),f=b[3].toLowerCase(),g=`${e}:${f}`;d.has(g)||(d.add(g),c.push({type:e,uuid:f,displayName:a}))}return c}async function j(a){let{companyUuid:b,sourceType:c,sourceUuid:d,content:h,actorType:j,actorUuid:k,researchProjectUuid:n,entityTitle:o}=a,p=i(h);if(0===p.length)return;let q=p.filter(a=>a.type!==j||a.uuid!==k);if(0===q.length)return;let r=[];for(let a of q)await l(b,a.type,a.uuid)&&r.push(a);if(0===r.length)return;await e.prisma.mention.createMany({data:r.map(a=>({companyUuid:b,sourceType:c,sourceUuid:d,mentionedType:a.type,mentionedUuid:a.uuid,actorType:j,actorUuid:k}))});let s=await (0,f.lR)(j,k)??"Someone",t=await e.prisma.researchProject.findUnique({where:{uuid:n},select:{name:!0}}),u=t?.name??"Unknown Project",v=function(a){let b=a.replace(m,"@$1");return b.length<=120?b:b.substring(0,117)+"..."}(h),w=c,x=d;if("comment"===c){let a=await e.prisma.comment.findUnique({where:{uuid:d},select:{targetType:!0,targetUuid:!0}});a&&(w=a.targetType,x=a.targetUuid)}let y=[];for(let a of r){if(!(await g.lX(b,a.type,a.uuid)).mentioned)continue;let c=`${s} mentioned you: "${v}"`;y.push({companyUuid:b,researchProjectUuid:n,recipientType:a.type,recipientUuid:a.uuid,entityType:w,entityUuid:x,entityTitle:o,projectName:u,action:"mentioned",message:c,actorType:j,actorUuid:k,actorName:s})}y.length>0&&await g.Xm(y)}async function k(a){let b,{companyUuid:c,query:d,actorType:f,actorUuid:g,ownerUuid:h,limit:i=10}=a,j=Math.min(i,50),k=[];if("user"===f?b=g:"agent"===f&&h&&(b=h),!d){if(b)for(let a of(await e.prisma.agent.findMany({where:{companyUuid:c,ownerUuid:b},select:{uuid:!0,name:!0,roles:!0},orderBy:{createdAt:"desc"},take:Math.min(5,j)})))k.push({type:"agent",uuid:a.uuid,name:a.name,roles:a.roles});return k}for(let a of(await e.prisma.user.findMany({where:{companyUuid:c,OR:[{name:{contains:d,mode:"insensitive"}},{email:{contains:d,mode:"insensitive"}}]},select:{uuid:!0,name:!0,email:!0,avatarUrl:!0},take:j})))k.push({type:"user",uuid:a.uuid,name:a.name??a.email??"Unknown",email:a.email,avatarUrl:a.avatarUrl});let l={companyUuid:c,name:{contains:d,mode:"insensitive"}};for(let a of(b&&(l.ownerUuid=b),await e.prisma.agent.findMany({where:l,select:{uuid:!0,name:!0,roles:!0},take:j-k.length>0?j-k.length:j})))k.push({type:"agent",uuid:a.uuid,name:a.name,roles:a.roles});return k.slice(0,j)}async function l(a,b,c){return"user"===b?!!await e.prisma.user.findFirst({where:{uuid:c,companyUuid:a},select:{uuid:!0}}):!!await e.prisma.agent.findFirst({where:{uuid:c,companyUuid:a},select:{uuid:!0}})}d()}catch(a){d(a)}})},91645:a=>{"use strict";a.exports=require("net")},92980:(a,b,c)=>{"use strict";c.d(b,{DocumentActions:()=>j});var d=c(10837),e=c(21968),f=c(1007),g=c(9222);let h=(0,c(56556).A)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);var i=c(42424);function j({documentTitle:a,documentContent:b,documentType:c}){let j=(0,g.c)(),k=(0,f.useRouter)(),l=(0,e.useCallback)(()=>{let d="experiment_results_log"===c,e=new Blob([b],{type:d?"text/tab-separated-values;charset=utf-8":"text/markdown;charset=utf-8"}),f=URL.createObjectURL(e),g=document.createElement("a");g.href=f;let h=a.replace(/[/\\?%*:|"<>]/g,"-").slice(0,80);g.download=`${h}${d?".tsv":".md"}`,document.body.appendChild(g),g.click(),document.body.removeChild(g),URL.revokeObjectURL(f)},[a,b,c]);return(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsxs)(i.$,{variant:"outline",className:"border-border text-muted-foreground",onClick:l,children:[(0,d.jsx)(h,{className:"mr-2 h-4 w-4"}),j("common.download")]}),(0,d.jsx)(i.$,{variant:"outline",className:"border-border text-muted-foreground",onClick:()=>k.back(),children:j("common.back")})]})}},94735:a=>{"use strict";a.exports=require("events")},99386:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{default:()=>w});var e=c(10023),f=c(66530),g=c(18198),h=c.n(g),i=c(67706),j=c(74236),k=c(57609),l=c(89628),m=c(19720),n=c(66867),o=c(12102),p=c(10768),q=c(29662),r=c(8777),s=c(62653),t=c(16038),u=c(83736),v=a([q,r,s]);[q,r,s]=v.then?(await v)():v;let x={experiment_result:{labelKey:"documents.typeExperimentResult",color:"bg-rose-100 text-rose-700 dark:bg-rose-500/15 dark:text-rose-300",icon:l.A},literature_review:{labelKey:"documents.typeLiteratureReview",color:"bg-emerald-100 text-emerald-700 dark:bg-emerald-500/15 dark:text-emerald-300",icon:m.A},analysis:{labelKey:"documents.typeAnalysis",color:"bg-indigo-100 text-indigo-700 dark:bg-indigo-500/15 dark:text-indigo-300",icon:n.A},methodology:{labelKey:"documents.typeMethodology",color:"bg-sky-100 text-sky-700 dark:bg-sky-500/15 dark:text-sky-300",icon:n.A},rdr:{labelKey:"documents.typeRdr",color:"bg-amber-100 text-amber-700 dark:bg-amber-500/15 dark:text-amber-300",icon:o.A},results_report:{labelKey:"documents.typeResultsReport",color:"bg-violet-100 text-violet-700 dark:bg-violet-500/15 dark:text-violet-300",icon:l.A},other:{labelKey:"documents.typeOther",color:"bg-secondary text-muted-foreground",icon:o.A}};async function w({params:a}){let b=await (0,q.d)();b||(0,f.redirect)("/login");let{uuid:c,documentUuid:d}=await a,g=await (0,i.A)();await (0,s.vP)(b.companyUuid,c)||(0,f.redirect)("/research-projects");let l=await (0,r.YE)(b.companyUuid,d);return l?(0,e.jsxs)("div",{className:"flex h-full flex-col p-4 md:p-8",children:[(0,e.jsxs)("div",{className:"mb-6 flex items-center gap-2 text-sm",children:[(0,e.jsx)(h(),{href:`/research-projects/${c}/documents`,className:"text-muted-foreground hover:text-foreground",children:g("nav.documents")}),(0,e.jsx)(p.A,{className:"h-4 w-4 text-muted-foreground"}),(0,e.jsx)("span",{className:"text-foreground",children:l.title})]}),(0,e.jsxs)("div",{className:"mb-6 flex flex-col gap-3 md:flex-row md:items-start md:justify-between",children:[(0,e.jsxs)("div",{className:"flex items-start gap-3 md:gap-4",children:[(0,e.jsx)("div",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-lg bg-secondary md:h-12 md:w-12",children:(()=>{let a=x[l.type]?.icon||o.A;return(0,e.jsx)(a,{className:"h-5 w-5 text-muted-foreground md:h-6 md:w-6"})})()}),(0,e.jsxs)("div",{className:"min-w-0",children:[(0,e.jsxs)("div",{className:"mb-1 flex items-center gap-2 md:gap-3",children:[(0,e.jsx)(k.E,{className:x[l.type]?.color||"",children:g(x[l.type]?.labelKey||"documents.typeOther")}),(0,e.jsxs)("span",{className:"rounded bg-secondary px-2 py-0.5 text-xs font-medium text-muted-foreground",children:["v",l.version]})]}),(0,e.jsx)("h1",{className:"text-xl font-semibold text-foreground md:text-2xl",children:l.title}),(0,e.jsx)("div",{className:"mt-1 flex items-center gap-3 text-sm text-muted-foreground md:mt-2",children:(0,e.jsxs)("span",{children:[g("common.updated")," ",new Date(l.updatedAt).toLocaleDateString()]})})]})]}),(0,e.jsx)(t.DocumentActions,{documentUuid:d,projectUuid:c,documentTitle:l.title,documentContent:l.content||"",documentType:l.type})]}),(0,e.jsxs)("div",{className:"flex flex-1 flex-col gap-6 overflow-hidden lg:flex-row",children:[(0,e.jsx)(u.DocumentContent,{documentUuid:d,projectUuid:c,initialContent:l.content||"",documentType:l.type}),(0,e.jsxs)("div",{className:"w-full space-y-4 lg:w-64 lg:flex-shrink-0",children:[l.experimentDesignUuid&&(0,e.jsxs)(j.Zp,{className:"border-border p-4",children:[(0,e.jsx)("h3",{className:"mb-3 text-sm font-medium text-muted-foreground",children:g("documents.sourceProposal")}),(0,e.jsxs)(h(),{href:`/research-projects/${c}/experiment-designs/${l.experimentDesignUuid}`,className:"flex items-center gap-2 text-sm text-primary hover:underline",children:[(0,e.jsx)(o.A,{className:"h-4 w-4"}),g("documents.viewProposal")]})]}),(0,e.jsxs)(j.Zp,{className:"border-border p-4",children:[(0,e.jsx)("h3",{className:"mb-3 text-sm font-medium text-muted-foreground",children:g("common.details")}),(0,e.jsxs)("dl",{className:"space-y-2",children:[(0,e.jsxs)("div",{className:"flex justify-between text-sm",children:[(0,e.jsx)("dt",{className:"text-muted-foreground",children:g("common.type")}),(0,e.jsx)("dd",{className:"font-medium text-foreground",children:g(x[l.type]?.labelKey||"documents.typeOther")})]}),(0,e.jsxs)("div",{className:"flex justify-between text-sm",children:[(0,e.jsx)("dt",{className:"text-muted-foreground",children:g("common.version")}),(0,e.jsxs)("dd",{className:"font-medium text-foreground",children:["v",l.version]})]}),(0,e.jsxs)("div",{className:"flex justify-between text-sm",children:[(0,e.jsx)("dt",{className:"text-muted-foreground",children:g("common.created")}),(0,e.jsx)("dd",{className:"font-medium text-foreground",children:new Date(l.createdAt).toLocaleDateString()})]}),(0,e.jsxs)("div",{className:"flex justify-between text-sm",children:[(0,e.jsx)("dt",{className:"text-muted-foreground",children:g("common.updated")}),(0,e.jsx)("dd",{className:"font-medium text-foreground",children:new Date(l.updatedAt).toLocaleDateString()})]})]})]}),(0,e.jsxs)(j.Zp,{className:"border-border p-4",children:[(0,e.jsx)("h3",{className:"mb-3 text-sm font-medium text-muted-foreground",children:g("documents.versionHistory")}),(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between text-sm",children:[(0,e.jsxs)("span",{className:"font-medium text-foreground",children:["v",l.version]}),(0,e.jsx)("span",{className:"text-xs text-muted-foreground",children:g("status.current")})]}),l.version>1&&(0,e.jsxs)("p",{className:"text-xs text-muted-foreground",children:[l.version-1," ",g("documents.previousVersions")]})]})]})]})]})]}):(0,e.jsxs)("div",{className:"flex h-full flex-col items-center justify-center",children:[(0,e.jsx)("div",{className:"text-muted-foreground",children:g("documents.documentNotFound")}),(0,e.jsx)(h(),{href:`/research-projects/${c}/documents`,className:"mt-4 text-primary hover:underline",children:g("documents.backToDocuments")})]})}d()}catch(a){d(a)}})}};var b=require("../../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[8843,7352,936,9833,3548,8481,8322,9516,1512,7201,7878,865,5826,117,9642,2956,3173,9865,2411,2914,5248,3656,1539,907,6088,5628,314,7943,3791,8283,9993],()=>b(b.s=15980));module.exports=c})();
2
+ see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},o=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===K.isDev,l=c||b.writableEnded;if(ah&&ab&&!f&&!N)return(null==ac?void 0:ac.render404)?await ac.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(j=(0,w.parseFallbackField)(ai.fallback)),j===w.FallbackMode.PRERENDER&&(0,u.isBot)(al)&&(!ar||an)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ah=!0),ah&&(j!==w.FallbackMode.NOT_FOUND||f)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),!N&&j!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aB&&!l&&!_&&T&&(k||!aj)){let b;if((k||ai)&&j===w.FallbackMode.NOT_FOUND)throw new B.NoFallbackError;if(ar&&!ap){let c="string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:k?ag:null;if(b=await K.handleResponse({cacheKey:c,req:a,nextConfig:ad,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:$,isRoutePPREnabled:ar,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||at?(0,n.u)(ag):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let o=ah||g||!au?void 0:au;if(as&&void 0!==o)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=T&&ar&&((0,h.getRequestMeta)(a,"renderFallbackShell")||at)?(0,n.u)(af):null;return m({span:i,postponed:o,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,n=await K.handleResponse({cacheKey:aA,responseGenerator:a=>o({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ad,prerenderManifest:$,waitUntil:d.waitUntil});if(_&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),K.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!n){if(aA)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof n.value.postponed;ak&&!av&&(!p||ao)&&(N||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=n;if(au)l={revalidate:0,expire:void 0};else if(N&&ap&&!ao&&ar)l={revalidate:0,expire:void 0};else if(!K.isDev)if(_)l={revalidate:0,expire:void 0};else if(ak){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??ad.expireTime}}else l={revalidate:y.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(n.cacheControl=l,"string"==typeof aw&&(null==q?void 0:q.kind)===v.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];N&&ak&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(aw);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...n,value:{...n.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&au)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(N&&ak||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(N&&ak&&s&&"string"==typeof s&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,s),!q.status||ap&&ar||(b.statusCode=q.status),!N&&q.status&&F.RedirectStatusCode[q.status]&&ap&&(b.statusCode=200),p&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),ap&&!_){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:q.html,cacheControl:av?{revalidate:0,expire:void 0}:n.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(q.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let u=q.html;if(!p||N||ap)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:n.cacheControl});if(as)return u.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}});let w=new TransformStream;return u.push(w.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(w.writable)}).catch(a=>{w.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}})};if(!aF)return await aE.withPropagatedContext(a.headers,()=>aE.trace(i.BaseServerSpan.handleRequest,{spanName:`${aD} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aD,"http.target":a.url}},p));await p(aF)}catch(b){throw b instanceof B.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:G,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:ak,isOnDemandRevalidate:ah})},ac),b}}},16038:(a,b,c)=>{"use strict";c.d(b,{DocumentActions:()=>d});let d=(0,c(37143).registerClientReference)(function(){throw Error("Attempted to call DocumentActions() from the server but DocumentActions is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/documents/[documentUuid]/document-actions.tsx","DocumentActions")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},21820:a=>{"use strict";a.exports=require("os")},24009:(a,b,c)=>{"use strict";c.d(b,{FB:()=>i,OG:()=>j,YB:()=>l,hD:()=>g,mA:()=>k});var d=c(70936),e=c(7046),f=c(65582);class g extends Error{constructor(a,b,c=400,d){super(b),this.code=a,this.status=c,this.details=d,this.name="ApiError"}}let h={P2002:"Unique constraint violation",P2025:"Record not found",P2003:"Foreign key constraint violation"};function i(a){return async(b,c)=>{try{return await a(b,c)}catch(a){if((0,f.M9)().error({err:a},"API error"),a instanceof g)return d.NextResponse.json({success:!1,error:{code:a.code,message:a.message,details:a.details}},{status:a.status});if(a&&"object"==typeof a&&"code"in a){let b=h[a.code];if(b){if("P2025"===a.code)return e.sO.notFound();if("P2002"===a.code)return e.sO.conflict(b);return e.sO.database(b)}}if(a instanceof Error)return e.sO.internal("Internal server error");return e.sO.internal()}}}async function j(a){try{return await a.json()}catch{throw new g("BAD_REQUEST","Invalid JSON body",400)}}function k(a){let b=new URL(a.url),c={};return b.searchParams.forEach((a,b)=>{c[b]=a}),c}function l(a){let b=k(a),c=Math.max(1,parseInt(b.page||"1",10)),d=Math.min(100,Math.max(1,parseInt(b.pageSize||"20",10)));return{page:c,pageSize:d,skip:(c-1)*d,take:d}}},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},26849:a=>{"use strict";a.exports=require("@prisma/client/runtime/client")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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")},34631:a=>{"use strict";a.exports=require("tls")},35198:(a,b,c)=>{"use strict";c.d(b,{BT:()=>i,Wu:()=>j,ZB:()=>h,Zp:()=>f,aR:()=>g});var d=c(10837);c(21968);var e=c(96307);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-description",className:(0,e.cn)("text-muted-foreground text-sm",a),...b})}function j({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}},40751:(a,b,c)=>{Promise.resolve().then(c.bind(c,43775)),Promise.resolve().then(c.bind(c,92851)),Promise.resolve().then(c.bind(c,11226)),Promise.resolve().then(c.bind(c,13065)),Promise.resolve().then(c.bind(c,64098)),Promise.resolve().then(c.bind(c,49442)),Promise.resolve().then(c.bind(c,66542)),Promise.resolve().then(c.bind(c,87827)),Promise.resolve().then(c.bind(c,81448)),Promise.resolve().then(c.bind(c,53392)),Promise.resolve().then(c.bind(c,97271)),Promise.resolve().then(c.bind(c,73814)),Promise.resolve().then(c.bind(c,62329)),Promise.resolve().then(c.bind(c,2768)),Promise.resolve().then(c.bind(c,1159)),Promise.resolve().then(c.bind(c,69757)),Promise.resolve().then(c.bind(c,92521)),Promise.resolve().then(c.bind(c,6873)),Promise.resolve().then(c.bind(c,10375)),Promise.resolve().then(c.bind(c,4176)),Promise.resolve().then(c.bind(c,33914)),Promise.resolve().then(c.bind(c,19868)),Promise.resolve().then(c.bind(c,32886)),Promise.resolve().then(c.bind(c,20294)),Promise.resolve().then(c.bind(c,94733)),Promise.resolve().then(c.bind(c,61298)),Promise.resolve().then(c.bind(c,8013)),Promise.resolve().then(c.bind(c,44236)),Promise.resolve().then(c.bind(c,5699)),Promise.resolve().then(c.t.bind(c,18198,23)),Promise.resolve().then(c.bind(c,16038)),Promise.resolve().then(c.bind(c,83736))},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},41204:a=>{"use strict";a.exports=require("string_decoder")},44865:a=>{"use strict";a.exports=import("@prisma/client/runtime/query_compiler_fast_bg.postgresql.wasm-base64.mjs")},48161:a=>{"use strict";a.exports=require("node:os")},48873:(a,b,c)=>{"use strict";c.d(b,{Ik:()=>f,Yy:()=>d,nm:()=>e});class d extends Error{constructor(a){super(`${a} is already claimed`),this.name="AlreadyClaimedError"}}class e extends Error{constructor(a){super(`${a} is not currently claimed`),this.name="NotClaimedError"}}function f(a){return"object"==typeof a&&null!==a&&"code"in a&&"P2025"===a.code}},48999:(a,b,c)=>{Promise.resolve().then(c.bind(c,13753)),Promise.resolve().then(c.bind(c,81093)),Promise.resolve().then(c.bind(c,14672)),Promise.resolve().then(c.bind(c,25711)),Promise.resolve().then(c.bind(c,70952)),Promise.resolve().then(c.bind(c,98556)),Promise.resolve().then(c.bind(c,14220)),Promise.resolve().then(c.bind(c,5989)),Promise.resolve().then(c.bind(c,15906)),Promise.resolve().then(c.bind(c,45106)),Promise.resolve().then(c.bind(c,13277)),Promise.resolve().then(c.bind(c,55212)),Promise.resolve().then(c.bind(c,73935)),Promise.resolve().then(c.bind(c,50382)),Promise.resolve().then(c.bind(c,66529)),Promise.resolve().then(c.bind(c,41335)),Promise.resolve().then(c.bind(c,66619)),Promise.resolve().then(c.bind(c,53187)),Promise.resolve().then(c.bind(c,28121)),Promise.resolve().then(c.bind(c,63658)),Promise.resolve().then(c.bind(c,95556)),Promise.resolve().then(c.bind(c,28386)),Promise.resolve().then(c.bind(c,15644)),Promise.resolve().then(c.bind(c,25400)),Promise.resolve().then(c.bind(c,93319)),Promise.resolve().then(c.bind(c,31284)),Promise.resolve().then(c.bind(c,2807)),Promise.resolve().then(c.bind(c,59782)),Promise.resolve().then(c.bind(c,80501)),Promise.resolve().then(c.t.bind(c,81512,23)),Promise.resolve().then(c.bind(c,92980)),Promise.resolve().then(c.bind(c,74418))},50123:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"7013bf4f1d9add21d7edcac920f5b3dd71058c9744":()=>e.l});var e=c(53123),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},53053:a=>{"use strict";a.exports=require("node:diagnostics_channel")},53123:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{l:()=>l});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(53870),i=c(97307),j=c(12217),k=a([g,h]);[g,h]=k.then?(await k)():k;let m=i.vF.child({module:"document"});async function l(a,b,c){let d=await (0,g.d)();if(!d)return{success:!1,error:"Unauthorized"};try{if(!await (0,h.Cs)(d.companyUuid,a))return{success:!1,error:"Document not found"};return await (0,h.lU)(a,{content:c}),(0,f.revalidatePath)(`/research-projects/${b}/documents/${a}`),(0,f.revalidatePath)(`/research-projects/${b}/documents`),{success:!0}}catch(a){return m.error({err:a},"Failed to update document"),{success:!1,error:"Failed to update document"}}}(0,j.D)([l]),(0,e.A)(l,"7013bf4f1d9add21d7edcac920f5b3dd71058c9744",null),d()}catch(a){d(a)}})},53870:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Cs:()=>j,hG:()=>m,lU:()=>l,ui:()=>k});var e=c(71255),f=c(92633),g=c(62729),h=a([e,f]);async function i(a,b=!1){let c=await (0,f.LS)(a.createdByUuid),d={uuid:a.uuid,type:a.type,title:a.title,version:a.version,experimentDesignUuid:a.experimentDesignUuid,createdBy:c,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()};return b&&void 0!==a.content&&(d.content=a.content),a.researchProject&&(d.project=a.researchProject),d}async function j(a,b){return e.z.document.findFirst({where:{uuid:b,companyUuid:a}})}async function k(a){let b=await e.z.document.create({data:{companyUuid:a.companyUuid,researchProjectUuid:a.researchProjectUuid,type:a.type,title:a.title,content:a.content,version:1,experimentDesignUuid:a.experimentDesignUuid,createdByUuid:a.createdByUuid},select:{uuid:!0,type:!0,title:!0,content:!0,version:!0,experimentDesignUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}});return g.B.emitChange({companyUuid:a.companyUuid,researchProjectUuid:a.researchProjectUuid,entityType:"document",entityUuid:b.uuid,action:"created"}),i(b,!0)}async function l(a,{title:b,content:c,incrementVersion:d}){let f={};void 0!==b&&(f.title=b),void 0!==c&&(f.content=c),d&&(f.version={increment:1});let g=await e.z.document.update({where:{uuid:a},data:f,include:{researchProject:{select:{uuid:!0,name:!0}}}});return i(g,!0)}async function m(a,b,c,d,f){let g=await e.z.document.create({data:{companyUuid:a,researchProjectUuid:b,type:f.type||"prd",title:f.title,content:f.content||null,version:1,experimentDesignUuid:c,createdByUuid:d},select:{uuid:!0,type:!0,title:!0,content:!0,version:!0,experimentDesignUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}});return i(g,!0)}[e,f]=h.then?(await h)():h,d()}catch(a){d(a)}})},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64939:a=>{"use strict";a.exports=import("pg")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},73566:a=>{"use strict";a.exports=require("worker_threads")},74418:(a,b,c)=>{"use strict";c.d(b,{DocumentContent:()=>n});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(35198),i=c(1461),j=c(42424),k=c(42377);let l=(0,k.createServerReference)("7013bf4f1d9add21d7edcac920f5b3dd71058c9744",k.callServer,void 0,k.findSourceMapURL,"updateDocumentAction");function m({headers:a,rows:b}){return(0,d.jsx)("div",{className:"overflow-x-auto rounded-lg border border-border",children:(0,d.jsxs)("table",{className:"min-w-full text-sm",children:[(0,d.jsx)("thead",{children:(0,d.jsx)("tr",{className:"border-b border-border bg-secondary/50",children:a.map((a,b)=>(0,d.jsx)("th",{className:"whitespace-nowrap px-4 py-2.5 text-left text-xs font-semibold text-muted-foreground",children:a},b))})}),(0,d.jsx)("tbody",{children:b.map((a,b)=>(0,d.jsx)("tr",{className:"border-b border-border/50 last:border-0 hover:bg-secondary/30 transition-colors",children:a.map((a,b)=>(0,d.jsx)("td",{className:"max-w-[300px] truncate px-4 py-2.5 text-foreground",children:a||(0,d.jsx)("span",{className:"text-muted-foreground",children:"—"})},b))},b))})]})})}function n({documentUuid:a,projectUuid:b,initialContent:c,documentType:k}){let n=(0,g.c)(),o=(0,f.useRouter)(),[p,q]=(0,e.useState)(!1),[r,s]=(0,e.useState)(c),[t,u]=(0,e.useTransition)(),v=(0,e.useMemo)(()=>{let a=c.trim().split("\n").filter(Boolean);if(a.length<2)return null;let b=a[0].includes(" ")?" ":null;if(!b)return null;let d=a[0].split(b).map(a=>a.trim());if(d.length<2)return null;let e=a.slice(1).map(a=>{let c=a.split(b).map(a=>a.trim());for(;c.length<d.length;)c.push("");return c.slice(0,d.length)});return{headers:d,rows:e}},[c,k]);return(0,d.jsxs)(h.Zp,{className:"flex-1 overflow-auto border-border p-6",children:[(0,d.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,d.jsx)("h2",{className:"text-lg font-medium text-foreground",children:n("common.content")}),p?(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(j.$,{variant:"outline",onClick:()=>{s(c),q(!1)},disabled:t,className:"border-border text-muted-foreground",children:n("common.cancel")}),(0,d.jsx)(j.$,{onClick:()=>{u(async()=>{(await l(a,b,r)).success&&(q(!1),o.refresh())})},disabled:t,className:"bg-emerald-600 hover:bg-emerald-700 text-white dark:bg-emerald-600 dark:hover:bg-emerald-700",children:n(t?"common.processing":"documents.saveChanges")})]}):(0,d.jsxs)(j.$,{onClick:()=>q(!0),className:"bg-primary hover:bg-primary/90 text-primary-foreground",children:[(0,d.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"mr-2 h-4 w-4",children:(0,d.jsx)("path",{d:"M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z"})}),n("common.edit")]})]}),p?(0,d.jsx)("textarea",{value:r,onChange:a=>s(a.target.value),className:"h-full w-full resize-none rounded-lg border border-border bg-background p-4 font-mono text-sm text-foreground focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary",placeholder:n("documents.documentContent")}):v?(0,d.jsx)(m,{headers:v.headers,rows:v.rows}):(0,d.jsx)("div",{className:"max-w-none text-sm text-foreground",children:c?(0,d.jsx)(i.u,{children:c}):(0,d.jsx)("span",{className:"text-muted-foreground italic",children:n("common.noContent")})})]})}},75811:a=>{"use strict";a.exports=import("@prisma/client/runtime/query_compiler_fast_bg.postgresql.mjs")},76760:a=>{"use strict";a.exports=require("node:path")},76872:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{LS:()=>i,SJ:()=>k,Uo:()=>l,Xx:()=>m,Z_:()=>h,_9:()=>n,ir:()=>j,lR:()=>g});var e=c(52618),f=a([e]);async function g(a,b){if("user"===a){let a=await e.prisma.user.findUnique({where:{uuid:b},select:{name:!0,email:!0}});return a&&(a.name||a.email)||"Unknown"}if("agent"===a){let a=await e.prisma.agent.findUnique({where:{uuid:b},select:{name:!0}});return a?.name??null}return null}async function h(a,b){if(!a||!b)return null;let c=await g(a,b);return c?{type:a,uuid:b,name:c}:null}async function i(a,b){if(b){let c=await g(b,a);return c?{type:b,uuid:a,name:c}:null}let c=await e.prisma.user.findUnique({where:{uuid:a},select:{name:!0,email:!0}});if(c)return{type:"user",uuid:a,name:c.name||c.email||"Unknown"};let d=await e.prisma.agent.findUnique({where:{uuid:a},select:{name:!0}});return d?{type:"agent",uuid:a,name:d.name}:null}async function j(a,b,c,d){if(!a||!b)return null;let f=await g(a,b);if(!f)return null;let h=null;if("agent"===a){let a=await e.prisma.agent.findUnique({where:{uuid:b},select:{color:!0}});h=a?.color??null}let i=null;if(d){let a=await g("user",d);a&&(i={type:"user",uuid:d,name:a})}return{type:a,uuid:b,name:f,color:h,assignedAt:c?.toISOString()??null,assignedBy:i}}async function k(a,b,c){if(!a)return null;let d=await g("user",a);return d?{reviewedBy:{type:"user",uuid:a,name:d},reviewNote:b,reviewedAt:c?.toISOString()??null}:null}async function l(a){let b=new Map;if(0===a.length)return b;let c=[...new Set(a.filter(a=>"user"===a.type).map(a=>a.uuid))],d=[...new Set(a.filter(a=>"agent"===a.type).map(a=>a.uuid))],[f,g]=await Promise.all([c.length>0?e.prisma.user.findMany({where:{uuid:{in:c}},select:{uuid:!0,name:!0,email:!0}}):[],d.length>0?e.prisma.agent.findMany({where:{uuid:{in:d}},select:{uuid:!0,name:!0}}):[]]);for(let a of f)b.set(a.uuid,a.name||a.email||"Unknown");for(let a of g)b.set(a.uuid,a.name);return b}async function m(a){let b=new Map;if(0===a.length)return b;let c=[...new Set(a)],d=await e.prisma.user.findMany({where:{uuid:{in:c}},select:{uuid:!0,name:!0,email:!0}}),f=new Set;for(let a of d)f.add(a.uuid),b.set(a.uuid,{type:"user",uuid:a.uuid,name:a.name||a.email||"Unknown"});let g=c.filter(a=>!f.has(a));if(g.length>0)for(let a of(await e.prisma.agent.findMany({where:{uuid:{in:g}},select:{uuid:!0,name:!0}})))b.set(a.uuid,{type:"agent",uuid:a.uuid,name:a.name});return b}async function n(a,b,c){let d={uuid:b,companyUuid:c};switch(a){case"research_question":return!!await e.prisma.researchQuestion.findFirst({where:d,select:{uuid:!0}});case"experiment":return!!await e.prisma.experiment.findFirst({where:d,select:{uuid:!0}});case"experiment_design":return!!await e.prisma.experimentDesign.findFirst({where:d,select:{uuid:!0}});case"experiment_run":return!!await e.prisma.experimentRun.findFirst({where:d,select:{uuid:!0}});case"document":return!!await e.prisma.document.findFirst({where:d,select:{uuid:!0}});default:return!1}}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},78474:a=>{"use strict";a.exports=require("node:events")},79428:a=>{"use strict";a.exports=require("buffer")},79551:a=>{"use strict";a.exports=require("url")},83736:(a,b,c)=>{"use strict";c.d(b,{DocumentContent:()=>d});let d=(0,c(37143).registerClientReference)(function(){throw Error("Attempted to call DocumentContent() from the server but DocumentContent is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/Synapse/src/app/(dashboard)/research-projects/[uuid]/documents/[documentUuid]/document-content.tsx","DocumentContent")},83997:a=>{"use strict";a.exports=require("tty")},84297:a=>{"use strict";a.exports=require("async_hooks")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88437:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{E1:()=>k,nG:()=>j,s3:()=>i});var e=c(52618),f=c(911),g=c(76872),h=a([e,g]);async function i({companyUuid:a,researchProjectUuid:b,skip:c,take:d,targetType:f,targetUuid:g}){let h={researchProjectUuid:b,companyUuid:a,...f&&{targetType:f},...g&&{targetUuid:g}},[i,j]=await Promise.all([e.prisma.activity.findMany({where:h,skip:c,take:d,orderBy:{createdAt:"desc"},select:{uuid:!0,targetType:!0,targetUuid:!0,actorType:!0,actorUuid:!0,action:!0,value:!0,sessionUuid:!0,sessionName:!0,createdAt:!0}}),e.prisma.activity.count({where:h})]);return{activities:i,total:j}}async function j(a){let{activities:b,total:c}=await i(a),d=await (0,g.Uo)(b.map(a=>({type:a.actorType,uuid:a.actorUuid})));return{activities:b.map(a=>({uuid:a.uuid,targetType:a.targetType,targetUuid:a.targetUuid,action:a.action,actorType:a.actorType,actorName:d.get(a.actorUuid)||"Unknown",value:a.value,sessionUuid:a.sessionUuid,sessionName:a.sessionName,createdAt:a.createdAt.toISOString()})),total:c}}async function k({companyUuid:a,researchProjectUuid:b,targetType:c,targetUuid:d,actorType:g,actorUuid:h,action:i,value:j,sessionUuid:k,sessionName:l}){let m=await e.prisma.activity.create({data:{companyUuid:a,researchProjectUuid:b,targetType:c,targetUuid:d,actorType:g,actorUuid:h,action:i,value:j||void 0,sessionUuid:k||void 0,sessionName:l||void 0}});return f.B.emit("activity",{companyUuid:a,researchProjectUuid:b,targetType:c,targetUuid:d,actorType:g,actorUuid:h,action:i,value:j,sessionUuid:k,sessionName:l,uuid:m.uuid}),m}[e,g]=h.then?(await h)():h,d()}catch(a){d(a)}})},90136:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$V:()=>o,Ae:()=>v,Be:()=>A,Rd:()=>w,Zv:()=>n,_W:()=>s,e0:()=>x,ok:()=>r,pg:()=>u,ph:()=>z,q0:()=>t,vp:()=>q});var e=c(52618),f=c(76872),g=c(911),h=c(24009),i=c(48873),j=c(65582),k=c(90494),l=c(88437),m=a([e,f,k,l]);[e,f,k,l]=m.then?(await m)():m;let B=j.vF.child({module:"research_question"}),C={open:["elaborating","closed"],elaborating:["proposal_created","closed"],proposal_created:["completed","elaborating","closed"],completed:["closed"],closed:[]};function n(a){switch(a){case"assigned":case"in_progress":return"elaborating";case"pending_review":case"experiment_created":return"proposal_created";default:return a}}function o(a,b){let c=n(a),d=n(b);return(C[c]||[]).includes(d)}async function p(a){let[b,c]=await Promise.all([(0,f.ir)(a.assigneeType,a.assigneeUuid,a.assignedAt,a.assignedByUuid),(0,f.LS)(a.createdByUuid)]);return{uuid:a.uuid,title:a.title,content:a.content,attachments:a.attachments,parentQuestionUuid:a.parentQuestionUuid,childQuestionUuids:a.childQuestions?.map(a=>a.uuid)??[],experimentCount:a._count?.experiments??0,sourceType:a.sourceType,sourceLabel:a.sourceLabel,generatedByAgentUuid:a.generatedByAgentUuid,reviewStatus:a.reviewStatus,reviewedByUuid:a.reviewedByUuid,reviewNote:a.reviewNote,reviewedAt:a.reviewedAt?.toISOString()??null,status:n(a.status),assignee:b,...a.researchProject&&{project:a.researchProject},...null!=a.elaborationStatus&&{elaborationStatus:a.elaborationStatus},...null!=a.elaborationDepth&&{elaborationDepth:a.elaborationDepth},createdBy:c,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()}}async function q({companyUuid:a,researchProjectUuid:b,skip:c,take:d,status:f,assignedToMe:g,actorUuid:h,actorType:i}){let j={researchProjectUuid:b,companyUuid:a,...f&&{status:f}};g&&h&&i&&(j.assigneeUuid=h,j.assigneeType=i);let[k,l]=await Promise.all([e.prisma.researchQuestion.findMany({where:j,skip:c,take:d,orderBy:{createdAt:"desc"},select:{uuid:!0,title:!0,content:!0,attachments:!0,parentQuestionUuid:!0,childQuestions:{select:{uuid:!0},orderBy:{createdAt:"asc"}},_count:{select:{experiments:!0}},sourceType:!0,sourceLabel:!0,generatedByAgentUuid:!0,reviewStatus:!0,reviewedByUuid:!0,reviewNote:!0,reviewedAt:!0,status:!0,elaborationStatus:!0,elaborationDepth:!0,assigneeType:!0,assigneeUuid:!0,assignedAt:!0,assignedByUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}}),e.prisma.researchQuestion.count({where:j})]);return{researchQuestions:await Promise.all(k.map(p)),total:l}}async function r(a,b){let c=await e.prisma.researchQuestion.findFirst({where:{uuid:b,companyUuid:a},include:{researchProject:{select:{uuid:!0,name:!0}},childQuestions:{select:{uuid:!0},orderBy:{createdAt:"asc"}},_count:{select:{experiments:!0}}}});return c?p(c):null}async function s(a,b){return e.prisma.researchQuestion.findFirst({where:{uuid:b,companyUuid:a},include:{parentQuestion:{select:{uuid:!0,researchProjectUuid:!0}},childQuestions:{select:{uuid:!0},orderBy:{createdAt:"asc"}},_count:{select:{experiments:!0}}}})}async function t(a){if(a.parentQuestionUuid&&!await e.prisma.researchQuestion.findFirst({where:{uuid:a.parentQuestionUuid,companyUuid:a.companyUuid,researchProjectUuid:a.researchProjectUuid},select:{uuid:!0}}))throw Error("Parent research question not found");let b=await e.prisma.researchQuestion.create({data:{companyUuid:a.companyUuid,researchProjectUuid:a.researchProjectUuid,title:a.title,content:a.content,attachments:a.attachments||void 0,parentQuestionUuid:a.parentQuestionUuid??null,sourceType:a.sourceType??"human",sourceLabel:a.sourceLabel??null,generatedByAgentUuid:a.generatedByAgentUuid??null,reviewStatus:"agent"===a.sourceType?"pending":"accepted",status:"open",createdByUuid:a.createdByUuid},select:{uuid:!0,title:!0,content:!0,attachments:!0,parentQuestionUuid:!0,childQuestions:{select:{uuid:!0},orderBy:{createdAt:"asc"}},_count:{select:{experiments:!0}},sourceType:!0,sourceLabel:!0,generatedByAgentUuid:!0,reviewStatus:!0,reviewedByUuid:!0,reviewNote:!0,reviewedAt:!0,status:!0,elaborationStatus:!0,elaborationDepth:!0,assigneeType:!0,assigneeUuid:!0,assignedAt:!0,assignedByUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}});return g.B.emitChange({companyUuid:a.companyUuid,researchProjectUuid:a.researchProjectUuid,entityType:"research_question",entityUuid:b.uuid,action:"created"}),p(b)}async function u(a,b,c,d){let f=void 0!==c.parentQuestionUuid?await e.prisma.researchQuestion.findFirst({where:{uuid:a,companyUuid:b},select:{uuid:!0,researchProjectUuid:!0}}):null;if(void 0!==c.parentQuestionUuid&&f){if(c.parentQuestionUuid===a)throw Error("A research question cannot be its own parent");if(c.parentQuestionUuid){let d=await e.prisma.researchQuestion.findFirst({where:{uuid:c.parentQuestionUuid,companyUuid:b,researchProjectUuid:f.researchProjectUuid},select:{uuid:!0,parentQuestionUuid:!0}});if(!d)throw Error("Parent research question not found");let g=d.uuid;for(;g;){if(g===a)throw Error("Cannot move a research question under one of its descendants");let b=await e.prisma.researchQuestion.findUnique({where:{uuid:g},select:{parentQuestionUuid:!0}});g=b?.parentQuestionUuid}}}let h=null;if(void 0!==c.content&&d){let b=await e.prisma.researchQuestion.findUnique({where:{uuid:a},select:{content:!0}});h=b?.content??null}let i=await e.prisma.researchQuestion.update({where:{uuid:a},data:c,include:{researchProject:{select:{uuid:!0,name:!0}},childQuestions:{select:{uuid:!0},orderBy:{createdAt:"asc"}},_count:{select:{experiments:!0}}}});return g.B.emitChange({companyUuid:i.companyUuid,researchProjectUuid:i.researchProject.uuid,entityType:"research_question",entityUuid:i.uuid,action:"updated"}),void 0!==c.content&&d&&c.content&&y(i.companyUuid,i.researchProject.uuid,i.uuid,i.title,h,c.content,d.actorType,d.actorUuid).catch(a=>B.error({err:a},"failed to process mentions")),p(i)}async function v({researchQuestionUuid:a,companyUuid:b,assigneeType:c,assigneeUuid:d,assignedByUuid:f}){let h=await e.prisma.researchQuestion.findFirst({where:{uuid:a,companyUuid:b}});if(!h||h.assigneeUuid)throw new i.Yy("Idea");if("completed"===h.status||"closed"===h.status)throw Error("Cannot claim a completed or closed ResearchQuestion");if("rejected"===h.reviewStatus)throw Error("Cannot claim a rejected ResearchQuestion");let j=await e.prisma.researchQuestion.update({where:{uuid:a},data:{status:"elaborating",assigneeType:c,assigneeUuid:d,assignedAt:new Date,assignedByUuid:f},include:{researchProject:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:j.companyUuid,researchProjectUuid:j.researchProject.uuid,entityType:"research_question",entityUuid:j.uuid,action:"updated"}),p(j)}async function w(a){let b=await e.prisma.researchQuestion.findUnique({where:{uuid:a}});if(!b)throw Error("ResearchQuestion not found");if("completed"===b.status||"closed"===b.status)throw Error("Cannot release a completed or closed ResearchQuestion");let c=await e.prisma.researchQuestion.update({where:{uuid:a},data:{status:"open",assigneeType:null,assigneeUuid:null,assignedAt:null,assignedByUuid:null,elaborationDepth:null,elaborationStatus:null},include:{researchProject:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:c.companyUuid,researchProjectUuid:c.researchProject.uuid,entityType:"research_question",entityUuid:c.uuid,action:"updated"}),p(c)}async function x(a,b,c,d,f){let h=await e.prisma.researchQuestion.update({where:{uuid:b},data:{reviewStatus:c,reviewedByUuid:d,reviewNote:f??null,reviewedAt:new Date,status:"rejected"===c?"closed":"open",assigneeType:"rejected"===c?null:void 0,assigneeUuid:"rejected"===c?null:void 0,assignedAt:"rejected"===c?null:void 0,assignedByUuid:"rejected"===c?null:void 0},include:{researchProject:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:a,researchProjectUuid:h.researchProject.uuid,entityType:"research_question",entityUuid:h.uuid,action:"updated"}),p(h)}async function y(a,b,c,d,e,f,g,h){let i=e?k.Xs(e):[],j=k.Xs(f),m=new Set(i.map(a=>`${a.type}:${a.uuid}`)),n=j.filter(a=>!m.has(`${a.type}:${a.uuid}`));if(0!==n.length)for(let e of(await k.AM({companyUuid:a,sourceType:"research_question",sourceUuid:c,content:f,actorType:g,actorUuid:h,researchProjectUuid:b,entityTitle:d}),n))(e.type!==g||e.uuid!==h)&&await l.E1({companyUuid:a,researchProjectUuid:b,targetType:"research_question",targetUuid:c,actorType:g,actorUuid:h,action:"mentioned",value:{mentionedType:e.type,mentionedUuid:e.uuid,mentionedName:e.displayName,sourceType:"research_question",sourceUuid:c}})}async function z(a){let b=await e.prisma.researchQuestion.findUnique({where:{uuid:a},select:{uuid:!0,companyUuid:!0,researchProjectUuid:!0}});if(!b)throw Error("ResearchQuestion not found");let c=await e.prisma.researchQuestion.findMany({where:{companyUuid:b.companyUuid,researchProjectUuid:b.researchProjectUuid},select:{uuid:!0,parentQuestionUuid:!0}}),d=new Map;for(let a of c){let b=d.get(a.parentQuestionUuid??null)??[];b.push(a.uuid),d.set(a.parentQuestionUuid??null,b)}let f=[],h=[{uuid:a,depth:0}];for(;h.length>0;){let a=h.shift();for(let b of(f.push(a),d.get(a.uuid)??[]))h.push({uuid:b,depth:a.depth+1})}let i=f.map(a=>a.uuid),j=(await e.prisma.experiment.findMany({where:{companyUuid:b.companyUuid,researchQuestionUuid:{in:i}},select:{uuid:!0}})).map(a=>a.uuid);for(let a of(await e.prisma.$transaction(async a=>{j.length>0&&(await a.experimentGpuReservation.deleteMany({where:{companyUuid:b.companyUuid,experimentUuid:{in:j}}}),await a.experiment.deleteMany({where:{companyUuid:b.companyUuid,uuid:{in:j}}}));let c=new Map;for(let a of f){let b=c.get(a.depth)??[];b.push(a.uuid),c.set(a.depth,b)}for(let b of[...c.keys()].sort((a,b)=>b-a))await a.researchQuestion.deleteMany({where:{uuid:{in:c.get(b)??[]}}})}),j))g.B.emitChange({companyUuid:b.companyUuid,researchProjectUuid:b.researchProjectUuid,entityType:"experiment",entityUuid:a,action:"deleted"});for(let a of f)g.B.emitChange({companyUuid:b.companyUuid,researchProjectUuid:b.researchProjectUuid,entityType:"research_question",entityUuid:a.uuid,action:"deleted"});return b}async function A(a,b,c,d,f="user"){let i=await e.prisma.researchQuestion.findFirst({where:{uuid:b,companyUuid:a},include:{researchProject:{select:{uuid:!0,name:!0}}}});if(!i)throw new h.hD("NOT_FOUND","ResearchQuestion not found",404);let j=await e.prisma.researchProject.findFirst({where:{uuid:c,companyUuid:a},select:{uuid:!0,name:!0}});if(!j)throw new h.hD("NOT_FOUND","Target project not found",404);if(i.researchProjectUuid===c)throw new h.hD("BAD_REQUEST","ResearchQuestion is already in the target project",400);let k=i.researchProjectUuid;await e.prisma.$transaction(async d=>{await d.researchQuestion.update({where:{uuid:b},data:{researchProjectUuid:c}}),await d.experimentDesign.updateMany({where:{companyUuid:a,inputType:"research_question",inputUuids:{array_contains:[b]},status:{in:["draft","pending"]}},data:{researchProjectUuid:c}})}),await l.E1({companyUuid:a,researchProjectUuid:c,targetType:"research_question",targetUuid:b,actorType:f,actorUuid:d,action:"moved",value:{fromProjectUuid:k,fromProjectName:i.researchProject.name,toProjectUuid:c,toProjectName:j.name}}),g.B.emitChange({companyUuid:a,researchProjectUuid:k,entityType:"research_question",entityUuid:b,action:"updated"}),g.B.emitChange({companyUuid:a,researchProjectUuid:c,entityType:"research_question",entityUuid:b,action:"updated"});let m=await e.prisma.researchQuestion.findFirst({where:{uuid:b,companyUuid:a},include:{researchProject:{select:{uuid:!0,name:!0}}}});return p(m)}d()}catch(a){d(a)}})},90494:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{AM:()=>j,Xs:()=>i,_L:()=>k});var e=c(52618),f=c(76872),g=c(37943),h=a([e,f,g]);[e,f,g]=h.then?(await h)():h;let m=/@\[([^\]]+)\]\((user|agent):([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})\)/gi;function i(a){let b,c=[],d=new Set;for(m.lastIndex=0;null!==(b=m.exec(a))&&!(c.length>=10);){let a=b[1],e=b[2].toLowerCase(),f=b[3].toLowerCase(),g=`${e}:${f}`;d.has(g)||(d.add(g),c.push({type:e,uuid:f,displayName:a}))}return c}async function j(a){let{companyUuid:b,sourceType:c,sourceUuid:d,content:h,actorType:j,actorUuid:k,researchProjectUuid:n,entityTitle:o}=a,p=i(h);if(0===p.length)return;let q=p.filter(a=>a.type!==j||a.uuid!==k);if(0===q.length)return;let r=[];for(let a of q)await l(b,a.type,a.uuid)&&r.push(a);if(0===r.length)return;await e.prisma.mention.createMany({data:r.map(a=>({companyUuid:b,sourceType:c,sourceUuid:d,mentionedType:a.type,mentionedUuid:a.uuid,actorType:j,actorUuid:k}))});let s=await (0,f.lR)(j,k)??"Someone",t=await e.prisma.researchProject.findUnique({where:{uuid:n},select:{name:!0}}),u=t?.name??"Unknown Project",v=function(a){let b=a.replace(m,"@$1");return b.length<=120?b:b.substring(0,117)+"..."}(h),w=c,x=d;if("comment"===c){let a=await e.prisma.comment.findUnique({where:{uuid:d},select:{targetType:!0,targetUuid:!0}});a&&(w=a.targetType,x=a.targetUuid)}let y=[];for(let a of r){if(!(await g.lX(b,a.type,a.uuid)).mentioned)continue;let c=`${s} mentioned you: "${v}"`;y.push({companyUuid:b,researchProjectUuid:n,recipientType:a.type,recipientUuid:a.uuid,entityType:w,entityUuid:x,entityTitle:o,projectName:u,action:"mentioned",message:c,actorType:j,actorUuid:k,actorName:s})}y.length>0&&await g.Xm(y)}async function k(a){let b,{companyUuid:c,query:d,actorType:f,actorUuid:g,ownerUuid:h,limit:i=10}=a,j=Math.min(i,50),k=[];if("user"===f?b=g:"agent"===f&&h&&(b=h),!d){if(b)for(let a of(await e.prisma.agent.findMany({where:{companyUuid:c,ownerUuid:b},select:{uuid:!0,name:!0,roles:!0},orderBy:{createdAt:"desc"},take:Math.min(5,j)})))k.push({type:"agent",uuid:a.uuid,name:a.name,roles:a.roles});return k}for(let a of(await e.prisma.user.findMany({where:{companyUuid:c,OR:[{name:{contains:d,mode:"insensitive"}},{email:{contains:d,mode:"insensitive"}}]},select:{uuid:!0,name:!0,email:!0,avatarUrl:!0},take:j})))k.push({type:"user",uuid:a.uuid,name:a.name??a.email??"Unknown",email:a.email,avatarUrl:a.avatarUrl});let l={companyUuid:c,name:{contains:d,mode:"insensitive"}};for(let a of(b&&(l.ownerUuid=b),await e.prisma.agent.findMany({where:l,select:{uuid:!0,name:!0,roles:!0},take:j-k.length>0?j-k.length:j})))k.push({type:"agent",uuid:a.uuid,name:a.name,roles:a.roles});return k.slice(0,j)}async function l(a,b,c){return"user"===b?!!await e.prisma.user.findFirst({where:{uuid:c,companyUuid:a},select:{uuid:!0}}):!!await e.prisma.agent.findFirst({where:{uuid:c,companyUuid:a},select:{uuid:!0}})}d()}catch(a){d(a)}})},91645:a=>{"use strict";a.exports=require("net")},92980:(a,b,c)=>{"use strict";c.d(b,{DocumentActions:()=>j});var d=c(10837),e=c(21968),f=c(1007),g=c(9222);let h=(0,c(56556).A)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);var i=c(42424);function j({documentTitle:a,documentContent:b,documentType:c}){let j=(0,g.c)(),k=(0,f.useRouter)(),l=(0,e.useCallback)(()=>{let d="experiment_results_log"===c,e=new Blob([b],{type:d?"text/tab-separated-values;charset=utf-8":"text/markdown;charset=utf-8"}),f=URL.createObjectURL(e),g=document.createElement("a");g.href=f;let h=a.replace(/[/\\?%*:|"<>]/g,"-").slice(0,80);g.download=`${h}${d?".tsv":".md"}`,document.body.appendChild(g),g.click(),document.body.removeChild(g),URL.revokeObjectURL(f)},[a,b,c]);return(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsxs)(i.$,{variant:"outline",className:"border-border text-muted-foreground",onClick:l,children:[(0,d.jsx)(h,{className:"mr-2 h-4 w-4"}),j("common.download")]}),(0,d.jsx)(i.$,{variant:"outline",className:"border-border text-muted-foreground",onClick:()=>k.back(),children:j("common.back")})]})}},94735:a=>{"use strict";a.exports=require("events")},99386:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{default:()=>w});var e=c(10023),f=c(66530),g=c(18198),h=c.n(g),i=c(67706),j=c(74236),k=c(57609),l=c(89628),m=c(19720),n=c(66867),o=c(12102),p=c(10768),q=c(29662),r=c(8777),s=c(85034),t=c(16038),u=c(83736),v=a([q,r,s]);[q,r,s]=v.then?(await v)():v;let x={experiment_result:{labelKey:"documents.typeExperimentResult",color:"bg-rose-100 text-rose-700 dark:bg-rose-500/15 dark:text-rose-300",icon:l.A},literature_review:{labelKey:"documents.typeLiteratureReview",color:"bg-emerald-100 text-emerald-700 dark:bg-emerald-500/15 dark:text-emerald-300",icon:m.A},analysis:{labelKey:"documents.typeAnalysis",color:"bg-indigo-100 text-indigo-700 dark:bg-indigo-500/15 dark:text-indigo-300",icon:n.A},methodology:{labelKey:"documents.typeMethodology",color:"bg-sky-100 text-sky-700 dark:bg-sky-500/15 dark:text-sky-300",icon:n.A},rdr:{labelKey:"documents.typeRdr",color:"bg-amber-100 text-amber-700 dark:bg-amber-500/15 dark:text-amber-300",icon:o.A},results_report:{labelKey:"documents.typeResultsReport",color:"bg-violet-100 text-violet-700 dark:bg-violet-500/15 dark:text-violet-300",icon:l.A},other:{labelKey:"documents.typeOther",color:"bg-secondary text-muted-foreground",icon:o.A}};async function w({params:a}){let b=await (0,q.d)();b||(0,f.redirect)("/login");let{uuid:c,documentUuid:d}=await a,g=await (0,i.A)();await (0,s.vP)(b.companyUuid,c)||(0,f.redirect)("/research-projects");let l=await (0,r.YE)(b.companyUuid,d);return l?(0,e.jsxs)("div",{className:"flex h-full flex-col p-4 md:p-8",children:[(0,e.jsxs)("div",{className:"mb-6 flex items-center gap-2 text-sm",children:[(0,e.jsx)(h(),{href:`/research-projects/${c}/documents`,className:"text-muted-foreground hover:text-foreground",children:g("nav.documents")}),(0,e.jsx)(p.A,{className:"h-4 w-4 text-muted-foreground"}),(0,e.jsx)("span",{className:"text-foreground",children:l.title})]}),(0,e.jsxs)("div",{className:"mb-6 flex flex-col gap-3 md:flex-row md:items-start md:justify-between",children:[(0,e.jsxs)("div",{className:"flex items-start gap-3 md:gap-4",children:[(0,e.jsx)("div",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-lg bg-secondary md:h-12 md:w-12",children:(()=>{let a=x[l.type]?.icon||o.A;return(0,e.jsx)(a,{className:"h-5 w-5 text-muted-foreground md:h-6 md:w-6"})})()}),(0,e.jsxs)("div",{className:"min-w-0",children:[(0,e.jsxs)("div",{className:"mb-1 flex items-center gap-2 md:gap-3",children:[(0,e.jsx)(k.E,{className:x[l.type]?.color||"",children:g(x[l.type]?.labelKey||"documents.typeOther")}),(0,e.jsxs)("span",{className:"rounded bg-secondary px-2 py-0.5 text-xs font-medium text-muted-foreground",children:["v",l.version]})]}),(0,e.jsx)("h1",{className:"text-xl font-semibold text-foreground md:text-2xl",children:l.title}),(0,e.jsx)("div",{className:"mt-1 flex items-center gap-3 text-sm text-muted-foreground md:mt-2",children:(0,e.jsxs)("span",{children:[g("common.updated")," ",new Date(l.updatedAt).toLocaleDateString()]})})]})]}),(0,e.jsx)(t.DocumentActions,{documentUuid:d,projectUuid:c,documentTitle:l.title,documentContent:l.content||"",documentType:l.type})]}),(0,e.jsxs)("div",{className:"flex flex-1 flex-col gap-6 overflow-hidden lg:flex-row",children:[(0,e.jsx)(u.DocumentContent,{documentUuid:d,projectUuid:c,initialContent:l.content||"",documentType:l.type}),(0,e.jsxs)("div",{className:"w-full space-y-4 lg:w-64 lg:flex-shrink-0",children:[l.experimentDesignUuid&&(0,e.jsxs)(j.Zp,{className:"border-border p-4",children:[(0,e.jsx)("h3",{className:"mb-3 text-sm font-medium text-muted-foreground",children:g("documents.sourceProposal")}),(0,e.jsxs)(h(),{href:`/research-projects/${c}/experiment-designs/${l.experimentDesignUuid}`,className:"flex items-center gap-2 text-sm text-primary hover:underline",children:[(0,e.jsx)(o.A,{className:"h-4 w-4"}),g("documents.viewProposal")]})]}),(0,e.jsxs)(j.Zp,{className:"border-border p-4",children:[(0,e.jsx)("h3",{className:"mb-3 text-sm font-medium text-muted-foreground",children:g("common.details")}),(0,e.jsxs)("dl",{className:"space-y-2",children:[(0,e.jsxs)("div",{className:"flex justify-between text-sm",children:[(0,e.jsx)("dt",{className:"text-muted-foreground",children:g("common.type")}),(0,e.jsx)("dd",{className:"font-medium text-foreground",children:g(x[l.type]?.labelKey||"documents.typeOther")})]}),(0,e.jsxs)("div",{className:"flex justify-between text-sm",children:[(0,e.jsx)("dt",{className:"text-muted-foreground",children:g("common.version")}),(0,e.jsxs)("dd",{className:"font-medium text-foreground",children:["v",l.version]})]}),(0,e.jsxs)("div",{className:"flex justify-between text-sm",children:[(0,e.jsx)("dt",{className:"text-muted-foreground",children:g("common.created")}),(0,e.jsx)("dd",{className:"font-medium text-foreground",children:new Date(l.createdAt).toLocaleDateString()})]}),(0,e.jsxs)("div",{className:"flex justify-between text-sm",children:[(0,e.jsx)("dt",{className:"text-muted-foreground",children:g("common.updated")}),(0,e.jsx)("dd",{className:"font-medium text-foreground",children:new Date(l.updatedAt).toLocaleDateString()})]})]})]}),(0,e.jsxs)(j.Zp,{className:"border-border p-4",children:[(0,e.jsx)("h3",{className:"mb-3 text-sm font-medium text-muted-foreground",children:g("documents.versionHistory")}),(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between text-sm",children:[(0,e.jsxs)("span",{className:"font-medium text-foreground",children:["v",l.version]}),(0,e.jsx)("span",{className:"text-xs text-muted-foreground",children:g("status.current")})]}),l.version>1&&(0,e.jsxs)("p",{className:"text-xs text-muted-foreground",children:[l.version-1," ",g("documents.previousVersions")]})]})]})]})]})]}):(0,e.jsxs)("div",{className:"flex h-full flex-col items-center justify-center",children:[(0,e.jsx)("div",{className:"text-muted-foreground",children:g("documents.documentNotFound")}),(0,e.jsx)(h(),{href:`/research-projects/${c}/documents`,className:"mt-4 text-primary hover:underline",children:g("documents.backToDocuments")})]})}d()}catch(a){d(a)}})}};var b=require("../../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[8843,7352,936,9833,3548,8481,8322,9516,1512,7201,7878,865,5826,117,9642,2956,3173,9865,2411,2914,5248,3656,1539,907,6088,5628,314,7943,3791,8283,9993],()=>b(b.s=15980));module.exports=c})();