@claudeye/linux-arm64 1.0.2 → 1.0.3-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/assets/dist/app.d.ts +3 -1
  2. package/assets/dist/app.js +1 -1
  3. package/assets/dist/cache-invalidation-registry.d.ts +9 -0
  4. package/assets/dist/cache-invalidation-registry.js +1 -0
  5. package/assets/dist/index.d.ts +2 -1
  6. package/assets/dist/index.js +1 -1
  7. package/assets/dist/types.d.ts +24 -0
  8. package/assets/standalone/.next/BUILD_ID +1 -1
  9. package/assets/standalone/.next/build-manifest.json +2 -2
  10. package/assets/standalone/.next/prerender-manifest.json +3 -3
  11. package/assets/standalone/.next/server/app/_global-error.html +2 -2
  12. package/assets/standalone/.next/server/app/_global-error.rsc +1 -1
  13. package/assets/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  14. package/assets/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  15. package/assets/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  16. package/assets/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  17. package/assets/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  18. package/assets/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  19. package/assets/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/assets/standalone/.next/server/app/_not-found.html +2 -2
  21. package/assets/standalone/.next/server/app/_not-found.rsc +5 -5
  22. package/assets/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +5 -5
  23. package/assets/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  24. package/assets/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +5 -5
  25. package/assets/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  26. package/assets/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  27. package/assets/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  28. package/assets/standalone/.next/server/app/api/completed-history/route.js +1 -1
  29. package/assets/standalone/.next/server/app/api/queue-item/route.js +1 -1
  30. package/assets/standalone/.next/server/app/api/queue-status/route.js +1 -1
  31. package/assets/standalone/.next/server/app/dashboard/[viewName]/page/server-reference-manifest.json +4 -4
  32. package/assets/standalone/.next/server/app/dashboard/[viewName]/page.js +1 -1
  33. package/assets/standalone/.next/server/app/dashboard/[viewName]/page_client-reference-manifest.js +1 -1
  34. package/assets/standalone/.next/server/app/dashboard/page/server-reference-manifest.json +4 -4
  35. package/assets/standalone/.next/server/app/dashboard/page.js +1 -1
  36. package/assets/standalone/.next/server/app/dashboard/page_client-reference-manifest.js +1 -1
  37. package/assets/standalone/.next/server/app/login/page/server-reference-manifest.json +2 -2
  38. package/assets/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  39. package/assets/standalone/.next/server/app/login.html +2 -2
  40. package/assets/standalone/.next/server/app/login.rsc +6 -6
  41. package/assets/standalone/.next/server/app/login.segments/_full.segment.rsc +6 -6
  42. package/assets/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
  43. package/assets/standalone/.next/server/app/login.segments/_index.segment.rsc +5 -5
  44. package/assets/standalone/.next/server/app/login.segments/_tree.segment.rsc +1 -1
  45. package/assets/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  46. package/assets/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
  47. package/assets/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
  48. package/assets/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  49. package/assets/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
  50. package/assets/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
  51. package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +1 -1
  52. package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +8 -8
  53. package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js +1 -1
  54. package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
  55. package/assets/standalone/.next/server/app/queue/page/server-reference-manifest.json +3 -3
  56. package/assets/standalone/.next/server/app/queue/page.js +1 -1
  57. package/assets/standalone/.next/server/app/queue/page_client-reference-manifest.js +1 -1
  58. package/assets/standalone/.next/server/chunks/{[root-of-the-server]__b18c2f99._.js → [root-of-the-server]__016f28bf._.js} +3 -3
  59. package/assets/standalone/.next/server/chunks/{[root-of-the-server]__57118d1a._.js → [root-of-the-server]__12f1df7a._.js} +2 -2
  60. package/assets/standalone/.next/server/chunks/{[root-of-the-server]__2074634c._.js → [root-of-the-server]__30210a51._.js} +2 -2
  61. package/assets/standalone/.next/server/chunks/{[root-of-the-server]__a0230ba0._.js → [root-of-the-server]__4b3a0135._.js} +2 -2
  62. package/assets/standalone/.next/server/chunks/{[root-of-the-server]__a53c6c2f._.js → [root-of-the-server]__c61bf87c._.js} +2 -2
  63. package/assets/standalone/.next/server/chunks/{[root-of-the-server]__8af5473b._.js → [root-of-the-server]__d4438063._.js} +2 -2
  64. package/assets/standalone/.next/server/chunks/_5ab69e50._.js +1 -1
  65. package/assets/standalone/.next/server/chunks/_6a9d92e6._.js +2 -2
  66. package/assets/standalone/.next/server/chunks/_7cb7a702._.js +2 -2
  67. package/assets/standalone/.next/server/chunks/_d3c87a9f._.js +2 -2
  68. package/assets/standalone/.next/server/chunks/_fb07f1d4._.js +1 -1
  69. package/assets/standalone/.next/server/chunks/lib_6cff0ca5._.js +1 -1
  70. package/assets/standalone/.next/server/chunks/lib_74f62736._.js +1 -1
  71. package/assets/standalone/.next/server/chunks/lib_eval-queue_ts_32d171f8._.js +1 -1
  72. package/assets/standalone/.next/server/chunks/lib_eval-queue_ts_642b3543._.js +1 -1
  73. package/assets/standalone/.next/server/chunks/lib_evals_cache-invalidation-registry_ts_35ae1046._.js +3 -0
  74. package/assets/standalone/.next/server/chunks/lib_evals_cache-invalidation-registry_ts_fbef0128._.js +3 -0
  75. package/assets/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7a66d362.js +1 -1
  76. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0530a7f6._.js +1 -1
  77. package/assets/standalone/.next/server/chunks/ssr/_1d335924._.js +1 -1
  78. package/assets/standalone/.next/server/chunks/ssr/{_d982b289._.js → _2c739158._.js} +3 -3
  79. package/assets/standalone/.next/server/chunks/ssr/_34abf048._.js +2 -2
  80. package/assets/standalone/.next/server/chunks/ssr/_40b9779b._.js +2 -2
  81. package/assets/standalone/.next/server/chunks/ssr/{_cce5033e._.js → _42bdbcd7._.js} +3 -3
  82. package/assets/standalone/.next/server/chunks/ssr/{_3e6c3cad._.js → _46cafe74._.js} +3 -3
  83. package/assets/standalone/.next/server/chunks/ssr/_76ab933f._.js +1 -1
  84. package/assets/standalone/.next/server/chunks/ssr/_87e025a1._.js +1 -1
  85. package/assets/standalone/.next/server/chunks/ssr/{_472a5ae2._.js → _bd414f26._.js} +3 -3
  86. package/assets/standalone/.next/server/chunks/ssr/_d7141734._.js +2 -2
  87. package/assets/standalone/.next/server/chunks/ssr/_f7ec0663._.js +2 -2
  88. package/assets/standalone/.next/server/chunks/ssr/app_actions_compute-dashboard_ts_fc151dbb._.js +1 -1
  89. package/assets/standalone/.next/server/chunks/ssr/app_login_page_tsx_ccc0019b._.js +1 -1
  90. package/assets/standalone/.next/server/chunks/ssr/app_queue_queue-client_tsx_45f040f7._.js +1 -1
  91. package/assets/standalone/.next/server/chunks/ssr/components_navbar_tsx_e9e361f1._.js +1 -1
  92. package/assets/standalone/.next/server/chunks/ssr/lib_cache_index_ts_35dfbe77._.js +1 -1
  93. package/assets/standalone/.next/server/chunks/ssr/lib_eval-queue_ts_e2258485._.js +1 -1
  94. package/assets/standalone/.next/server/chunks/ssr/lib_evals_cache-invalidation-registry_ts_2ee53a56._.js +3 -0
  95. package/assets/standalone/.next/server/pages/404.html +2 -2
  96. package/assets/standalone/.next/server/pages/500.html +2 -2
  97. package/assets/standalone/.next/server/server-reference-manifest.js +1 -1
  98. package/assets/standalone/.next/server/server-reference-manifest.json +15 -15
  99. package/assets/standalone/.next/static/chunks/{c57ac507f1258fce.js → 3d4abbeaf74eb8a8.js} +1 -1
  100. package/assets/standalone/.next/static/chunks/{c2fa2cfce8e11b9d.js → 5c62513045b76a62.js} +1 -1
  101. package/assets/standalone/.next/static/chunks/{8883ab06827ab0d9.js → 623db2646a37b883.js} +1 -1
  102. package/assets/standalone/.next/static/chunks/{dc10cd6f331687bf.js → a333b2fa8ea4a2e0.js} +1 -1
  103. package/assets/standalone/.next/static/chunks/{fd5a690994e3024b.js → b15ffd46656f916b.js} +1 -1
  104. package/assets/standalone/.next/static/chunks/{4645a259d2851cb5.js → bc1e933f71baccdb.js} +1 -1
  105. package/assets/standalone/README.md +32 -0
  106. package/assets/standalone/package.json +1 -1
  107. package/package.json +1 -1
  108. /package/assets/standalone/.next/static/{3yebs_EtZBOBswNyCSBo1 → DPyFeGP3kvOdJnOczXWOv}/_buildManifest.js +0 -0
  109. /package/assets/standalone/.next/static/{3yebs_EtZBOBswNyCSBo1 → DPyFeGP3kvOdJnOczXWOv}/_clientMiddlewareManifest.json +0 -0
  110. /package/assets/standalone/.next/static/{3yebs_EtZBOBswNyCSBo1 → DPyFeGP3kvOdJnOczXWOv}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,63059,e=>{"use strict";let t=(0,e.i(75254).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],63059)},73520,e=>{"use strict";var t=e.i(43476);let r=(0,e.i(75254).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);var s=e.i(63059);function n({currentPage:e,totalPages:n,onPageChange:a}){if(n<=1)return null;let l=e=>`px-3 py-2 text-sm rounded-md transition-colors flex items-center gap-1 bg-muted text-muted-foreground ${e?"opacity-50 cursor-not-allowed":"hover:bg-muted/80"}`;return(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2 py-4",children:[(0,t.jsxs)("button",{onClick:()=>a(e-1),disabled:1===e,className:l(1===e),"aria-label":"Previous page",children:[(0,t.jsx)(r,{className:"w-4 h-4"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:"Previous"})]}),(0,t.jsx)("div",{className:"flex items-center gap-1",children:(()=>{if(n<=7)return Array.from({length:n},(e,t)=>t+1);let t=[1],r=Math.max(2,e-1),s=Math.min(n-1,e+1);e<=3&&(s=Math.min(5,n-1)),e>=n-2&&(r=Math.max(2,n-4)),r>2&&t.push("ellipsis-start");for(let e=r;e<=s;e++)t.push(e);return s<n-1&&t.push("ellipsis-end"),t.push(n),t})().map(r=>"string"==typeof r?(0,t.jsx)("span",{className:"px-2 text-muted-foreground",children:"..."},r):(0,t.jsx)("button",{onClick:()=>a(r),className:`min-w-[2.5rem] px-3 py-2 text-sm rounded-md transition-colors ${e===r?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-muted/80"}`,"aria-label":`Page ${r}`,"aria-current":e===r?"page":void 0,children:r},r))}),(0,t.jsxs)("button",{onClick:()=>a(e+1),disabled:e===n,className:l(e===n),"aria-label":"Next page",children:[(0,t.jsx)("span",{className:"hidden sm:inline",children:"Next"}),(0,t.jsx)(s.ChevronRight,{className:"w-4 h-4"})]})]})}e.s(["default",()=>n],73520)},80060,2711,e=>{"use strict";var t=e.i(18566),r=e.i(71645);function s(){let e=(0,t.useSearchParams)(),s=(0,t.useRouter)(),n=(0,t.usePathname)(),a=(0,r.useRef)(null),l=(0,r.useCallback)(t=>e.get(t),[e]),o=(0,r.useCallback)(()=>new URLSearchParams(e.toString()),[e]),d=(0,r.useCallback)(t=>{a.current&&clearTimeout(a.current),a.current=setTimeout(()=>{let r=new URLSearchParams(e.toString());for(let[e,s]of Object.entries(t))void 0===s||""===s?r.delete(e):r.set(e,s);let a=r.toString(),l=a?`${n}?${a}`:n;s.replace(l,{scroll:!1})},150)},[e,n,s]);return(0,r.useEffect)(()=>()=>{a.current&&clearTimeout(a.current)},[]),{get:l,getAll:o,setAll:d}}function n(e){return"all"===e?void 0:e}function a(e){return e&&["all","last-hour","today","last-7-days","last-30-days","custom"].includes(e)?e:"all"}function l(e){let t={};return e.from&&(t.from=p(e.from)),e.to&&(t.to=p(e.to)),t}function o(e,t){return{from:h(e),to:h(t)}}function d(e){if(0!==e.length)return e.map(e=>encodeURIComponent(e)).join(",")}function i(e){return e?e.split(",").map(e=>decodeURIComponent(e.trim())).filter(e=>e.length>0):[]}function c(e){return e<=1?void 0:String(e)}function u(e){if(!e)return 1;let t=parseInt(e,10);return Number.isFinite(t)&&t>=1?t:1}function m(e,t){switch(e.type){case"boolean":return"all"===t?void 0:t;case"number":if(t.min===e.min&&t.max===e.max)return;return`${t.min}~${t.max}`;case"string":if(t.size===e.values.length)return;return Array.from(t).map(e=>encodeURIComponent(e)).join(",");case"date":if(!t.from&&!t.to)return;return`${t.from??""},${t.to??""}`}}function x(e,t){if(null===t||""===t)return null;switch(e.type){case"boolean":if("true"===t||"false"===t)return t;return null;case"number":{let e=t.split("~");if(2!==e.length)return null;let r=parseFloat(e[0]),s=parseFloat(e[1]);if(!Number.isFinite(r)||!Number.isFinite(s))return null;return{min:r,max:s}}case"string":{let r=t.split(",").map(e=>decodeURIComponent(e.trim())).filter(t=>e.values.includes(t));if(0===r.length)return null;return new Set(r)}case"date":{let e=t.split(",");if(2!==e.length)return null;let r=e[0]||null,s=e[1]||null;if(!r&&!s||r&&!f(r)||s&&!f(s))return null;return{from:r,to:s}}}}function p(e){let t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),s=String(e.getDate()).padStart(2,"0");return`${t}-${r}-${s}`}function h(e){if(!e||!f(e))return null;let[t,r,s]=e.split("-").map(Number);return new Date(t,r-1,s,12,0,0)}function f(e){return/^\d{4}-\d{2}-\d{2}$/.test(e)&&!isNaN(Date.parse(e))}e.s(["useUrlParams",()=>s],80060),e.s(["activeFilterToParam",()=>m,"dateRangeToParams",()=>l,"keywordsToParam",()=>d,"pageToParam",()=>c,"paramToActiveFilter",()=>x,"paramToKeywords",()=>i,"paramToPage",()=>u,"paramToPreset",()=>a,"paramsToDateRange",()=>o,"presetToParam",()=>n],2711)},73884,e=>{"use strict";let t=(0,e.i(75254).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["XCircle",()=>t],73884)},64439,e=>{"use strict";var t=e.i(43476),r=e.i(71645),s=e.i(22016),n=e.i(75254);let a=(0,n.default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]),l=(0,n.default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);var o=e.i(73884),d=e.i(16715),i=e.i(73520),c=e.i(95187);let u=(0,c.createServerReference)("40a62103d0fc94f3341c206162706c2f00ddf72f0d",c.callServer,void 0,c.findSourceMapURL,"getCompletedHistoryAction"),m=(0,c.createServerReference)("60c1dd4b3b68f309037a4dc97ddf498869e0f9b568",c.callServer,void 0,c.findSourceMapURL,"searchCompletedHistoryAction");var x=e.i(85881),p=e.i(80060),h=e.i(2711);function f(e){let t=Math.floor((Date.now()-e)/1e3);if(t<60)return`${t}s ago`;let r=Math.floor(t/60);if(r<60)return`${r}m ago`;let s=Math.floor(r/60);return`${s}h ago`}function g({type:e}){let r="eval"===e?"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-400":"action"===e?"bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400":"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400";return(0,t.jsx)("span",{className:`inline-flex items-center rounded px-1.5 py-0.5 text-[0.6rem] font-medium ${r}`,children:e.toUpperCase()})}function b({priority:e}){let r=e<=0;return(0,t.jsx)("span",{className:`text-[0.6rem] font-medium px-1.5 py-0.5 rounded ${r?"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400":"bg-muted text-muted-foreground"}`,children:r?"HIGH":"LOW"})}function y({projectName:e,sessionId:r}){return(0,t.jsx)(s.default,{href:`/project/${encodeURIComponent(e)}/session/${encodeURIComponent(r)}`,className:"text-blue-600 dark:text-blue-400 hover:underline truncate block max-w-[200px]",children:r})}function j(){let e,n,{intervalSec:c}=(0,x.useAutoRefresh)(),j=(0,p.useUrlParams)(),N=(0,r.useRef)(!1),[v,k]=(0,r.useState)(null),[w,S]=(0,r.useState)(null),[C,$]=(0,r.useState)(()=>{let e=j.get("tab");return"pending"===e||"processing"===e||"completed"===e?e:"processing"}),[P,R]=(0,r.useState)(()=>(0,h.paramToPage)(j.get("page"))),[T,I]=(0,r.useState)(null),A=(0,r.useRef)(C),[U,E]=(0,r.useState)(()=>{let e=j.get("type");return"eval"===e||"enrichment"===e||"action"===e?e:""}),[F,M]=(0,r.useState)(()=>j.get("item")??""),[D,L]=(0,r.useState)(()=>j.get("session")??""),z=(0,r.useRef)(null),H=(0,r.useRef)({filterType:U,filterItem:F,filterSession:D});H.current={filterType:U,filterItem:F,filterSession:D},(0,r.useEffect)(()=>{if(!N.current){N.current=!0;return}j.setAll({tab:"processing"===C?void 0:C,type:U||void 0,item:F||void 0,session:D||void 0,page:"completed"===C?(0,h.pageToParam)(P):void 0})},[C,U,F,D,P]);let q=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/queue-status",{cache:"no-store"});if(e.ok){let t=await e.json();k(t),S(null)}else S(`Failed to fetch: ${e.status}`)}catch{S("Network error")}},[]),O=(0,r.useCallback)(async e=>{try{let t,{filterType:r,filterItem:s,filterSession:n}=H.current;t=""!==r||""!==s||""!==n?await m({type:r||void 0,itemName:s||void 0,sessionId:n||void 0},e):await u(e),I(t)}catch{}},[]);(0,r.useEffect)(()=>{q();let e=setInterval(q,c>0?1e3*c:5e3);return()=>clearInterval(e)},[q,c]),(0,r.useEffect)(()=>{"completed"===C&&"completed"!==A.current&&(R(1),O(1)),A.current=C},[C,O]),(0,r.useEffect)(()=>{if("completed"===C)return z.current&&clearTimeout(z.current),z.current=setTimeout(()=>{R(1),O(1)},300),()=>{z.current&&clearTimeout(z.current)}},[U,F,D]),(0,r.useEffect)(()=>{if("completed"!==C)return;O(P);let e=setInterval(()=>O(P),c>0?1e3*c:5e3);return()=>clearInterval(e)},[P,C,O,c]),(0,r.useEffect)(()=>{"completed"===C&&c>0&&1===P&&T&&0===T.entries.length&&T.totalPages>1&&R(2)},[C,c,P,T]);let B=[{key:"pending",label:"In Queue",count:v?.pending.length??0},{key:"processing",label:"Processing",count:v?.processing.length??0},{key:"completed",label:"Processed"}];return(0,t.jsxs)("div",{className:"min-h-screen bg-background p-6 max-w-4xl mx-auto",children:[(0,t.jsxs)("div",{className:"mb-6",children:[(0,t.jsxs)(s.default,{href:"/",className:"inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground transition-colors",children:[(0,t.jsx)(a,{className:"h-4 w-4"}),"Back"]}),(0,t.jsx)("h1",{className:"text-2xl font-bold text-foreground mt-2",children:"Queue Details"})]}),w&&!v&&(0,t.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4 text-center",children:[(0,t.jsx)("p",{className:"text-sm text-destructive mb-2",children:w}),(0,t.jsx)("button",{onClick:q,className:"text-xs text-primary hover:underline",children:"Retry"})]}),!v&&!w&&(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading..."}),v&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsx)("div",{className:"flex gap-1 border-b border-border",children:B.map(e=>(0,t.jsxs)("button",{onClick:()=>$(e.key),className:`px-4 py-2 text-sm font-medium border-b-2 transition-colors ${C===e.key?"border-primary text-foreground":"border-transparent text-muted-foreground hover:text-foreground"}`,children:[e.label,null!=e.count&&(0,t.jsxs)("span",{className:"ml-1.5 text-xs text-muted-foreground",children:["(",e.count,")"]})]},e.key))}),(0,t.jsxs)("div",{className:"bg-card border border-border rounded-lg overflow-hidden",children:["pending"===C&&(0===v.pending.length?(0,t.jsx)("p",{className:"px-4 py-8 text-xs text-muted-foreground text-center",children:"No items in queue."}):(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:"w-full text-xs",children:[(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{className:"text-left text-muted-foreground border-b border-border bg-muted/30",children:[(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Type"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Item"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Session"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Priority"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium text-right",children:"Queued"})]})}),(0,t.jsx)("tbody",{className:"divide-y divide-border/50",children:v.pending.map(e=>(0,t.jsxs)("tr",{className:"hover:bg-muted/20",children:[(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(g,{type:e.type})}),(0,t.jsx)("td",{className:"px-3 py-2 font-mono text-foreground",children:e.itemName}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(y,{projectName:e.projectName,sessionId:e.sessionId})}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(b,{priority:e.priority})}),(0,t.jsx)("td",{className:"px-3 py-2 text-right text-muted-foreground",children:f(e.addedAt)})]},e.key))})]})})),"processing"===C&&(0===v.processing.length?(0,t.jsx)("p",{className:"px-4 py-8 text-xs text-muted-foreground text-center",children:"No items currently processing."}):(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:"w-full text-xs",children:[(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{className:"text-left text-muted-foreground border-b border-border bg-muted/30",children:[(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Type"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Item"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Session"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Priority"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium text-right",children:"Started"})]})}),(0,t.jsx)("tbody",{className:"divide-y divide-border/50",children:v.processing.map(e=>(0,t.jsxs)("tr",{className:"hover:bg-muted/20",children:[(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(g,{type:e.type})}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)(d.RefreshCw,{className:"w-3 h-3 text-blue-500 animate-spin flex-shrink-0"}),(0,t.jsx)("span",{className:"font-mono text-foreground",children:e.itemName})]})}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(y,{projectName:e.projectName,sessionId:e.sessionId})}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(b,{priority:e.priority})}),(0,t.jsx)("td",{className:"px-3 py-2 text-right text-muted-foreground",children:f(e.startedAt)})]},e.key))})]})})),"completed"===C&&(e=T?.entries??v.completed,n=T?.totalPages??1,(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 border-b border-border bg-muted/30",children:[(0,t.jsxs)("select",{value:U,onChange:e=>E(e.target.value),className:"h-7 rounded border border-border bg-background px-2 text-xs text-foreground",children:[(0,t.jsx)("option",{value:"",children:"All Types"}),(0,t.jsx)("option",{value:"eval",children:"Eval"}),(0,t.jsx)("option",{value:"enrichment",children:"Enrichment"}),(0,t.jsx)("option",{value:"action",children:"Action"})]}),(0,t.jsx)("input",{type:"text",value:F,onChange:e=>M(e.target.value),placeholder:"Filter by item...",className:"h-7 rounded border border-border bg-background px-2 text-xs text-foreground placeholder:text-muted-foreground w-40"}),(0,t.jsx)("input",{type:"text",value:D,onChange:e=>L(e.target.value),placeholder:"Filter by session...",className:"h-7 rounded border border-border bg-background px-2 text-xs text-foreground placeholder:text-muted-foreground w-40"})]}),0===e.length?(0,t.jsx)("p",{className:"px-4 py-8 text-xs text-muted-foreground text-center",children:"No completed items."}):(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:"w-full text-xs",children:[(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{className:"text-left text-muted-foreground border-b border-border bg-muted/30",children:[(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Type"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Item"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Session"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Duration"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Status"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium text-right",children:"Completed"})]})}),(0,t.jsx)("tbody",{className:"divide-y divide-border/50",children:e.map((e,r)=>(0,t.jsxs)("tr",{className:"hover:bg-muted/20",children:[(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(g,{type:e.type})}),(0,t.jsx)("td",{className:"px-3 py-2 font-mono text-foreground",children:e.itemName}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(y,{projectName:e.projectName,sessionId:e.sessionId})}),(0,t.jsx)("td",{className:"px-3 py-2 text-muted-foreground",children:function(e){if(e<1e3)return`${e}ms`;let t=(e/1e3).toFixed(1);return`${t}s`}(e.durationMs)}),(0,t.jsx)("td",{className:"px-3 py-2",children:e.success?(0,t.jsx)(l,{className:"h-3.5 w-3.5 text-green-600 dark:text-green-400"}):(0,t.jsx)(o.XCircle,{className:"h-3.5 w-3.5 text-red-600 dark:text-red-400"})}),(0,t.jsx)("td",{className:"px-3 py-2 text-right text-muted-foreground",children:new Date(e.completedAt).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit"})})]},`${e.key}-${e.completedAt}-${r}`))})]})}),(0,t.jsx)(i.default,{currentPage:P,totalPages:n,onPageChange:R})]}))]}),v.recentErrors.length>0&&(0,t.jsxs)("section",{className:"bg-card border border-border rounded-lg p-4",children:[(0,t.jsxs)("h2",{className:"text-sm font-semibold text-foreground mb-2",children:["Recent Errors",(0,t.jsxs)("span",{className:"ml-2 text-xs font-normal text-muted-foreground",children:["(",v.recentErrors.length,")"]})]}),(0,t.jsx)("div",{className:"space-y-1",children:v.recentErrors.map((e,r)=>(0,t.jsxs)("div",{className:"text-xs bg-muted/30 rounded px-2 py-1 flex items-start gap-2",children:[(0,t.jsx)("span",{className:"font-mono text-muted-foreground shrink-0",children:e.key}),(0,t.jsx)("span",{className:"text-red-500 break-all",children:e.error}),(0,t.jsx)("span",{className:"text-muted-foreground shrink-0 ml-auto",children:f(e.at)})]},`${e.key}-${e.at}-${r}`))})]})]})]})}e.s(["default",()=>j],64439)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,63059,e=>{"use strict";let t=(0,e.i(75254).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],63059)},73520,e=>{"use strict";var t=e.i(43476);let r=(0,e.i(75254).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);var s=e.i(63059);function a({currentPage:e,totalPages:a,onPageChange:n}){if(a<=1)return null;let l=e=>`px-3 py-2 text-sm rounded-md transition-colors flex items-center gap-1 bg-muted text-muted-foreground ${e?"opacity-50 cursor-not-allowed":"hover:bg-muted/80"}`;return(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2 py-4",children:[(0,t.jsxs)("button",{onClick:()=>n(e-1),disabled:1===e,className:l(1===e),"aria-label":"Previous page",children:[(0,t.jsx)(r,{className:"w-4 h-4"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:"Previous"})]}),(0,t.jsx)("div",{className:"flex items-center gap-1",children:(()=>{if(a<=7)return Array.from({length:a},(e,t)=>t+1);let t=[1],r=Math.max(2,e-1),s=Math.min(a-1,e+1);e<=3&&(s=Math.min(5,a-1)),e>=a-2&&(r=Math.max(2,a-4)),r>2&&t.push("ellipsis-start");for(let e=r;e<=s;e++)t.push(e);return s<a-1&&t.push("ellipsis-end"),t.push(a),t})().map(r=>"string"==typeof r?(0,t.jsx)("span",{className:"px-2 text-muted-foreground",children:"..."},r):(0,t.jsx)("button",{onClick:()=>n(r),className:`min-w-[2.5rem] px-3 py-2 text-sm rounded-md transition-colors ${e===r?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-muted/80"}`,"aria-label":`Page ${r}`,"aria-current":e===r?"page":void 0,children:r},r))}),(0,t.jsxs)("button",{onClick:()=>n(e+1),disabled:e===a,className:l(e===a),"aria-label":"Next page",children:[(0,t.jsx)("span",{className:"hidden sm:inline",children:"Next"}),(0,t.jsx)(s.ChevronRight,{className:"w-4 h-4"})]})]})}e.s(["default",()=>a],73520)},80060,2711,e=>{"use strict";var t=e.i(18566),r=e.i(71645);function s(){let e=(0,t.useSearchParams)(),s=(0,t.useRouter)(),a=(0,t.usePathname)(),n=(0,r.useRef)(null),l=(0,r.useCallback)(t=>e.get(t),[e]),o=(0,r.useCallback)(()=>new URLSearchParams(e.toString()),[e]),d=(0,r.useCallback)(t=>{n.current&&clearTimeout(n.current),n.current=setTimeout(()=>{let r=new URLSearchParams(e.toString());for(let[e,s]of Object.entries(t))void 0===s||""===s?r.delete(e):r.set(e,s);let n=r.toString(),l=n?`${a}?${n}`:a;s.replace(l,{scroll:!1})},150)},[e,a,s]);return(0,r.useEffect)(()=>()=>{n.current&&clearTimeout(n.current)},[]),{get:l,getAll:o,setAll:d}}function a(e){return"all"===e?void 0:e}function n(e){return e&&["all","last-hour","today","last-7-days","last-30-days","custom"].includes(e)?e:"all"}function l(e){let t={};return e.from&&(t.from=p(e.from)),e.to&&(t.to=p(e.to)),t}function o(e,t){return{from:h(e),to:h(t)}}function d(e){if(0!==e.length)return e.map(e=>encodeURIComponent(e)).join(",")}function i(e){return e?e.split(",").map(e=>decodeURIComponent(e.trim())).filter(e=>e.length>0):[]}function c(e){return e<=1?void 0:String(e)}function u(e){if(!e)return 1;let t=parseInt(e,10);return Number.isFinite(t)&&t>=1?t:1}function m(e,t){switch(e.type){case"boolean":return"all"===t?void 0:t;case"number":if(t.min===e.min&&t.max===e.max)return;return`${t.min}~${t.max}`;case"string":if(t.size===e.values.length)return;return Array.from(t).map(e=>encodeURIComponent(e)).join(",");case"date":if(!t.from&&!t.to)return;return`${t.from??""},${t.to??""}`}}function x(e,t){if(null===t||""===t)return null;switch(e.type){case"boolean":if("true"===t||"false"===t)return t;return null;case"number":{let e=t.split("~");if(2!==e.length)return null;let r=parseFloat(e[0]),s=parseFloat(e[1]);if(!Number.isFinite(r)||!Number.isFinite(s))return null;return{min:r,max:s}}case"string":{let r=t.split(",").map(e=>decodeURIComponent(e.trim())).filter(t=>e.values.includes(t));if(0===r.length)return null;return new Set(r)}case"date":{let e=t.split(",");if(2!==e.length)return null;let r=e[0]||null,s=e[1]||null;if(!r&&!s||r&&!f(r)||s&&!f(s))return null;return{from:r,to:s}}}}function p(e){let t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),s=String(e.getDate()).padStart(2,"0");return`${t}-${r}-${s}`}function h(e){if(!e||!f(e))return null;let[t,r,s]=e.split("-").map(Number);return new Date(t,r-1,s,12,0,0)}function f(e){return/^\d{4}-\d{2}-\d{2}$/.test(e)&&!isNaN(Date.parse(e))}e.s(["useUrlParams",()=>s],80060),e.s(["activeFilterToParam",()=>m,"dateRangeToParams",()=>l,"keywordsToParam",()=>d,"pageToParam",()=>c,"paramToActiveFilter",()=>x,"paramToKeywords",()=>i,"paramToPage",()=>u,"paramToPreset",()=>n,"paramsToDateRange",()=>o,"presetToParam",()=>a],2711)},73884,e=>{"use strict";let t=(0,e.i(75254).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["XCircle",()=>t],73884)},64439,e=>{"use strict";var t=e.i(43476),r=e.i(71645),s=e.i(22016),a=e.i(75254);let n=(0,a.default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]),l=(0,a.default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);var o=e.i(73884),d=e.i(16715),i=e.i(73520),c=e.i(95187);let u=(0,c.createServerReference)("406a29a9ea3c0eaad05a10e1428812eadbabbbf30f",c.callServer,void 0,c.findSourceMapURL,"getCompletedHistoryAction"),m=(0,c.createServerReference)("605c12cecaa36d11e96e0041c9d2a48e3ea9d3eec9",c.callServer,void 0,c.findSourceMapURL,"searchCompletedHistoryAction");var x=e.i(85881),p=e.i(80060),h=e.i(2711);function f(e){let t=Math.floor((Date.now()-e)/1e3);if(t<60)return`${t}s ago`;let r=Math.floor(t/60);if(r<60)return`${r}m ago`;let s=Math.floor(r/60);return`${s}h ago`}function g({type:e}){let r="eval"===e?"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-400":"action"===e?"bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400":"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400";return(0,t.jsx)("span",{className:`inline-flex items-center rounded px-1.5 py-0.5 text-[0.6rem] font-medium ${r}`,children:e.toUpperCase()})}function b({priority:e}){let r=e<=0;return(0,t.jsx)("span",{className:`text-[0.6rem] font-medium px-1.5 py-0.5 rounded ${r?"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400":"bg-muted text-muted-foreground"}`,children:r?"HIGH":"LOW"})}function y({projectName:e,sessionId:r}){return(0,t.jsx)(s.default,{href:`/project/${encodeURIComponent(e)}/session/${encodeURIComponent(r)}`,className:"text-blue-600 dark:text-blue-400 hover:underline truncate block max-w-[200px]",children:r})}function j(){let e,a,{intervalSec:c}=(0,x.useAutoRefresh)(),j=(0,p.useUrlParams)(),N=(0,r.useRef)(!1),[v,k]=(0,r.useState)(null),[w,S]=(0,r.useState)(null),[C,$]=(0,r.useState)(()=>{let e=j.get("tab");return"pending"===e||"processing"===e||"completed"===e?e:"processing"}),[P,R]=(0,r.useState)(()=>(0,h.paramToPage)(j.get("page"))),[T,I]=(0,r.useState)(null),A=(0,r.useRef)(C),[U,E]=(0,r.useState)(()=>{let e=j.get("type");return"eval"===e||"enrichment"===e||"action"===e?e:""}),[F,M]=(0,r.useState)(()=>j.get("item")??""),[D,L]=(0,r.useState)(()=>j.get("session")??""),z=(0,r.useRef)(null),H=(0,r.useRef)({filterType:U,filterItem:F,filterSession:D});H.current={filterType:U,filterItem:F,filterSession:D},(0,r.useEffect)(()=>{if(!N.current){N.current=!0;return}j.setAll({tab:"processing"===C?void 0:C,type:U||void 0,item:F||void 0,session:D||void 0,page:"completed"===C?(0,h.pageToParam)(P):void 0})},[C,U,F,D,P]);let q=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/queue-status",{cache:"no-store"});if(e.ok){let t=await e.json();k(t),S(null)}else S(`Failed to fetch: ${e.status}`)}catch{S("Network error")}},[]),O=(0,r.useCallback)(async e=>{try{let t,{filterType:r,filterItem:s,filterSession:a}=H.current;t=""!==r||""!==s||""!==a?await m({type:r||void 0,itemName:s||void 0,sessionId:a||void 0},e):await u(e),I(t)}catch{}},[]);(0,r.useEffect)(()=>{q();let e=setInterval(q,c>0?1e3*c:5e3);return()=>clearInterval(e)},[q,c]),(0,r.useEffect)(()=>{"completed"===C&&"completed"!==A.current&&(R(1),O(1)),A.current=C},[C,O]),(0,r.useEffect)(()=>{if("completed"===C)return z.current&&clearTimeout(z.current),z.current=setTimeout(()=>{R(1),O(1)},300),()=>{z.current&&clearTimeout(z.current)}},[U,F,D]),(0,r.useEffect)(()=>{if("completed"!==C)return;O(P);let e=setInterval(()=>O(P),c>0?1e3*c:5e3);return()=>clearInterval(e)},[P,C,O,c]),(0,r.useEffect)(()=>{"completed"===C&&c>0&&1===P&&T&&0===T.entries.length&&T.totalPages>1&&R(2)},[C,c,P,T]);let B=[{key:"pending",label:"In Queue",count:v?.pending.length??0},{key:"processing",label:"Processing",count:v?.processing.length??0},{key:"completed",label:"Processed"}];return(0,t.jsxs)("div",{className:"min-h-screen bg-background p-6 max-w-4xl mx-auto",children:[(0,t.jsxs)("div",{className:"mb-6",children:[(0,t.jsxs)(s.default,{href:"/",className:"inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground transition-colors",children:[(0,t.jsx)(n,{className:"h-4 w-4"}),"Back"]}),(0,t.jsx)("h1",{className:"text-2xl font-bold text-foreground mt-2",children:"Queue Details"})]}),w&&!v&&(0,t.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4 text-center",children:[(0,t.jsx)("p",{className:"text-sm text-destructive mb-2",children:w}),(0,t.jsx)("button",{onClick:q,className:"text-xs text-primary hover:underline",children:"Retry"})]}),!v&&!w&&(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:"Loading..."}),v&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsx)("div",{className:"flex gap-1 border-b border-border",children:B.map(e=>(0,t.jsxs)("button",{onClick:()=>$(e.key),className:`px-4 py-2 text-sm font-medium border-b-2 transition-colors ${C===e.key?"border-primary text-foreground":"border-transparent text-muted-foreground hover:text-foreground"}`,children:[e.label,null!=e.count&&(0,t.jsxs)("span",{className:"ml-1.5 text-xs text-muted-foreground",children:["(",e.count,")"]})]},e.key))}),(0,t.jsxs)("div",{className:"bg-card border border-border rounded-lg overflow-hidden",children:["pending"===C&&(0===v.pending.length?(0,t.jsx)("p",{className:"px-4 py-8 text-xs text-muted-foreground text-center",children:"No items in queue."}):(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:"w-full text-xs",children:[(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{className:"text-left text-muted-foreground border-b border-border bg-muted/30",children:[(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Type"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Item"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Session"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Priority"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium text-right",children:"Queued"})]})}),(0,t.jsx)("tbody",{className:"divide-y divide-border/50",children:v.pending.map(e=>(0,t.jsxs)("tr",{className:"hover:bg-muted/20",children:[(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(g,{type:e.type})}),(0,t.jsx)("td",{className:"px-3 py-2 font-mono text-foreground",children:e.itemName}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(y,{projectName:e.projectName,sessionId:e.sessionId})}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(b,{priority:e.priority})}),(0,t.jsx)("td",{className:"px-3 py-2 text-right text-muted-foreground",children:f(e.addedAt)})]},e.key))})]})})),"processing"===C&&(0===v.processing.length?(0,t.jsx)("p",{className:"px-4 py-8 text-xs text-muted-foreground text-center",children:"No items currently processing."}):(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:"w-full text-xs",children:[(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{className:"text-left text-muted-foreground border-b border-border bg-muted/30",children:[(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Type"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Item"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Session"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Priority"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium text-right",children:"Started"})]})}),(0,t.jsx)("tbody",{className:"divide-y divide-border/50",children:v.processing.map(e=>(0,t.jsxs)("tr",{className:"hover:bg-muted/20",children:[(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(g,{type:e.type})}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)(d.RefreshCw,{className:"w-3 h-3 text-blue-500 animate-spin flex-shrink-0"}),(0,t.jsx)("span",{className:"font-mono text-foreground",children:e.itemName})]})}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(y,{projectName:e.projectName,sessionId:e.sessionId})}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(b,{priority:e.priority})}),(0,t.jsx)("td",{className:"px-3 py-2 text-right text-muted-foreground",children:f(e.startedAt)})]},e.key))})]})})),"completed"===C&&(e=T?.entries??v.completed,a=T?.totalPages??1,(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 border-b border-border bg-muted/30",children:[(0,t.jsxs)("select",{value:U,onChange:e=>E(e.target.value),className:"h-7 rounded border border-border bg-background px-2 text-xs text-foreground",children:[(0,t.jsx)("option",{value:"",children:"All Types"}),(0,t.jsx)("option",{value:"eval",children:"Eval"}),(0,t.jsx)("option",{value:"enrichment",children:"Enrichment"}),(0,t.jsx)("option",{value:"action",children:"Action"})]}),(0,t.jsx)("input",{type:"text",value:F,onChange:e=>M(e.target.value),placeholder:"Filter by item...",className:"h-7 rounded border border-border bg-background px-2 text-xs text-foreground placeholder:text-muted-foreground w-40"}),(0,t.jsx)("input",{type:"text",value:D,onChange:e=>L(e.target.value),placeholder:"Filter by session...",className:"h-7 rounded border border-border bg-background px-2 text-xs text-foreground placeholder:text-muted-foreground w-40"})]}),0===e.length?(0,t.jsx)("p",{className:"px-4 py-8 text-xs text-muted-foreground text-center",children:"No completed items."}):(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:"w-full text-xs",children:[(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{className:"text-left text-muted-foreground border-b border-border bg-muted/30",children:[(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Type"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Item"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Session"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Duration"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium",children:"Status"}),(0,t.jsx)("th",{className:"px-3 py-2 font-medium text-right",children:"Completed"})]})}),(0,t.jsx)("tbody",{className:"divide-y divide-border/50",children:e.map((e,r)=>(0,t.jsxs)("tr",{className:"hover:bg-muted/20",children:[(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(g,{type:e.type})}),(0,t.jsx)("td",{className:"px-3 py-2 font-mono text-foreground",children:e.itemName}),(0,t.jsx)("td",{className:"px-3 py-2",children:(0,t.jsx)(y,{projectName:e.projectName,sessionId:e.sessionId})}),(0,t.jsx)("td",{className:"px-3 py-2 text-muted-foreground",children:function(e){if(e<1e3)return`${e}ms`;let t=(e/1e3).toFixed(1);return`${t}s`}(e.durationMs)}),(0,t.jsx)("td",{className:"px-3 py-2",children:e.success?(0,t.jsx)(l,{className:"h-3.5 w-3.5 text-green-600 dark:text-green-400"}):(0,t.jsx)(o.XCircle,{className:"h-3.5 w-3.5 text-red-600 dark:text-red-400"})}),(0,t.jsx)("td",{className:"px-3 py-2 text-right text-muted-foreground",children:new Date(e.completedAt).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit"})})]},`${e.key}-${e.completedAt}-${r}`))})]})}),(0,t.jsx)(i.default,{currentPage:P,totalPages:a,onPageChange:R})]}))]}),v.recentErrors.length>0&&(0,t.jsxs)("section",{className:"bg-card border border-border rounded-lg p-4",children:[(0,t.jsxs)("h2",{className:"text-sm font-semibold text-foreground mb-2",children:["Recent Errors",(0,t.jsxs)("span",{className:"ml-2 text-xs font-normal text-muted-foreground",children:["(",v.recentErrors.length,")"]})]}),(0,t.jsx)("div",{className:"space-y-1",children:v.recentErrors.map((e,r)=>(0,t.jsxs)("div",{className:"text-xs bg-muted/30 rounded px-2 py-1 flex items-start gap-2",children:[(0,t.jsx)("span",{className:"font-mono text-muted-foreground shrink-0",children:e.key}),(0,t.jsx)("span",{className:"text-red-500 break-all",children:e.error}),(0,t.jsx)("span",{className:"text-muted-foreground shrink-0 ml-auto",children:f(e.at)})]},`${e.key}-${e.at}-${r}`))})]})]})]})}e.s(["default",()=>j],64439)}]);
@@ -1,3 +1,3 @@
1
1
  (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,18566,(e,t,r)=>{t.exports=e.r(76562)},75254,e=>{"use strict";var t=e.i(71645);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),n=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var a={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let o=(0,t.forwardRef)(({color:e="currentColor",size:n=24,strokeWidth:o=2,absoluteStrokeWidth:i,className:s="",children:l,iconNode:u,...d},c)=>(0,t.createElement)("svg",{ref:c,...a,width:n,height:n,stroke:e,strokeWidth:i?24*Number(o)/Number(n):o,className:r("lucide",s),...!l&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(d)&&{"aria-hidden":"true"},...d},[...u.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(l)?l:[l]])),i=(e,a)=>{let i=(0,t.forwardRef)(({className:i,...s},l)=>(0,t.createElement)(o,{ref:l,iconNode:a,className:r(`lucide-${n(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,i),...s}));return i.displayName=n(e),i};e.s(["default",()=>i],75254)},33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return l},searchParamsToUrlQuery:function(){return o},urlQueryToSearchParams:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});function o(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function i(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function s(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,i(e));else t.set(r,i(n));return t}function l(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},95057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return s},formatWithValidation:function(){return u},urlObjectKeys:function(){return l}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(90809)._(e.r(98183)),i=/https?|ftp|gopher|file/;function s(e){let{auth:t,hostname:r}=e,n=e.protocol||"",a=e.pathname||"",s=e.hash||"",l=e.query||"",u=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?u=t+e.host:r&&(u=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(u+=":"+e.port)),l&&"object"==typeof l&&(l=String(o.urlQueryToSearchParams(l)));let d=e.search||l&&`?${l}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||i.test(n))&&!1!==u?(u="//"+(u||""),a&&"/"!==a[0]&&(a="/"+a)):u||(u=""),s&&"#"!==s[0]&&(s="#"+s),d&&"?"!==d[0]&&(d="?"+d),a=a.replace(/[?#]/g,encodeURIComponent),d=d.replace("#","%23"),`${n}${u}${a}${d}${s}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return s(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return a}});let n=e.r(71645);function a(e,t){let r=(0,n.useRef)(null),a=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=a.current;t&&(a.current=null,t())}else e&&(r.current=o(e,n)),t&&(a.current=o(t,n))},[e,t])}function o(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18967,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return x},MiddlewareNotFoundError:function(){return j},MissingStaticPage:function(){return v},NormalizeError:function(){return b},PageNotFoundError:function(){return y},SP:function(){return m},ST:function(){return g},WEB_VITALS:function(){return o},execOnce:function(){return i},getDisplayName:function(){return c},getLocationOrigin:function(){return u},getURL:function(){return d},isAbsoluteUrl:function(){return l},isResSent:function(){return f},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return w}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=["CLS","FCP","FID","INP","LCP","TTFB"];function i(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let s=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,l=e=>s.test(e);function u(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function d(){let{href:e}=window.location,t=u();return e.substring(t.length)}function c(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&f(r))return n;if(!n)throw Object.defineProperty(Error(`"${c(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n}let m="u">typeof performance,g=m&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class x extends Error{}class b extends Error{}class y extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class v extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class j extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function w(e){return JSON.stringify({message:e.message,stack:e.stack})}},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return o}});let n=e.r(18967),a=e.r(52817);function o(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,a.hasBasePath)(r.pathname)}catch(e){return!1}}},84508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return x},useLinkStatus:function(){return y}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(90809),i=e.r(43476),s=o._(e.r(71645)),l=e.r(95057),u=e.r(8372),d=e.r(18581),c=e.r(18967),f=e.r(5550);e.r(33525);let p=e.r(91949),h=e.r(73668),m=e.r(9396);function g(e){return"string"==typeof e?e:(0,l.formatUrl)(e)}function x(t){var r;let n,a,o,[l,x]=(0,s.useOptimistic)(p.IDLE_LINK_STATUS),y=(0,s.useRef)(null),{href:v,as:j,children:w,prefetch:k=null,passHref:_,replace:P,shallow:N,scroll:E,onClick:C,onMouseEnter:S,onTouchStart:O,legacyBehavior:R=!1,onNavigate:M,ref:$,unstable_dynamicOnHover:I,...L}=t;n=w,R&&("string"==typeof n||"number"==typeof n)&&(n=(0,i.jsx)("a",{children:n}));let T=s.default.useContext(u.AppRouterContext),z=!1!==k,A=!1!==k?null===(r=k)||"auto"===r?m.FetchStrategy.PPR:m.FetchStrategy.Full:m.FetchStrategy.PPR,{href:D,as:U}=s.default.useMemo(()=>{let e=g(v);return{href:e,as:j?g(j):e}},[v,j]);if(R){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});a=s.default.Children.only(n)}let q=R?a&&"object"==typeof a&&a.ref:$,F=s.default.useCallback(e=>(null!==T&&(y.current=(0,p.mountLinkInstance)(e,D,T,A,z,x)),()=>{y.current&&((0,p.unmountLinkForCurrentNavigation)(y.current),y.current=null),(0,p.unmountPrefetchableInstance)(e)}),[z,D,T,A,x]),B={ref:(0,d.useMergedRef)(F,q),onClick(t){R||"function"!=typeof C||C(t),R&&a.props&&"function"==typeof a.props.onClick&&a.props.onClick(t),!T||t.defaultPrevented||function(t,r,n,a,o,i,l){if("u">typeof window){let u,{nodeName:d}=t.currentTarget;if("A"===d.toUpperCase()&&((u=t.currentTarget.getAttribute("target"))&&"_self"!==u||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,h.isLocalURL)(r)){o&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),l){let e=!1;if(l({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:c}=e.r(99781);s.default.startTransition(()=>{c(n||r,o?"replace":"push",i??!0,a.current)})}}(t,D,U,y,P,E,M)},onMouseEnter(e){R||"function"!=typeof S||S(e),R&&a.props&&"function"==typeof a.props.onMouseEnter&&a.props.onMouseEnter(e),T&&z&&(0,p.onNavigationIntent)(e.currentTarget,!0===I)},onTouchStart:function(e){R||"function"!=typeof O||O(e),R&&a.props&&"function"==typeof a.props.onTouchStart&&a.props.onTouchStart(e),T&&z&&(0,p.onNavigationIntent)(e.currentTarget,!0===I)}};return(0,c.isAbsoluteUrl)(U)?B.href=U:R&&!_&&("a"!==a.type||"href"in a.props)||(B.href=(0,f.addBasePath)(U)),o=R?s.default.cloneElement(a,B):(0,i.jsx)("a",{...L,...B,children:n}),(0,i.jsx)(b.Provider,{value:l,children:o})}e.r(84508);let b=(0,s.createContext)(p.IDLE_LINK_STATUS),y=()=>(0,s.useContext)(b);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},95187,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={callServer:function(){return o.callServer},createServerReference:function(){return s.createServerReference},findSourceMapURL:function(){return i.findSourceMapURL}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(32120),i=e.r(92245),s=e.r(35326)},64659,e=>{"use strict";let t=(0,e.i(75254).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>t],64659)},85881,e=>{"use strict";var t=e.i(43476),r=e.i(71645);let n=(0,r.createContext)(void 0);function a(){let e=(0,r.useContext)(n);if(!e)throw Error("useAutoRefresh must be used within AutoRefreshProvider");return e}function o({children:e}){let[a,o]=(0,r.useState)(0);return(0,t.jsx)(n.Provider,{value:{intervalSec:a,setIntervalSec:o},children:e})}e.s(["AutoRefreshProvider",()=>o,"useAutoRefresh",()=>a])},16715,e=>{"use strict";let t=(0,e.i(75254).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",()=>t],16715)},86311,e=>{"use strict";let t=(0,e.i(75254).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);e.s(["MessageSquare",()=>t],86311)},47613,e=>{"use strict";var t=e.i(43476),r=e.i(71645);let n=(0,r.createContext)(void 0);function a(e){let t=new MutationObserver(e);return t.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),()=>t.disconnect()}function o(){return document.documentElement.classList.contains("light")?"light":"dark"}function i(){return"dark"}e.s(["ThemeProvider",0,({children:e})=>{let s=(0,r.useSyncExternalStore)(a,o,i),l=(0,r.useCallback)(e=>{let t=document.documentElement;t.classList.remove("light","dark"),t.classList.add(e);try{localStorage.setItem("theme",e)}catch{}},[]);return(0,t.jsx)(n.Provider,{value:{theme:s,setTheme:l},children:e})},"useTheme",0,()=>{let e=(0,r.useContext)(n);if(void 0===e)throw Error("useTheme must be used within a ThemeProvider");return e}])},88143,(e,t,r)=>{"use strict";function n({widthInt:e,heightInt:t,blurWidth:r,blurHeight:n,blurDataURL:a,objectFit:o}){let i=r?40*r:e,s=n?40*n:t,l=i&&s?`viewBox='0 0 ${i} ${s}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${l}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${l?"none":"contain"===o?"xMidYMid":"cover"===o?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${a}'/%3E%3C/svg%3E`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImageBlurSvg",{enumerable:!0,get:function(){return n}})},87690,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={VALID_LOADERS:function(){return o},imageConfigDefault:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=["default","imgix","cloudinary","akamai","custom"],i={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1}},8927,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImgProps",{enumerable:!0,get:function(){return u}}),e.r(33525);let n=e.r(43369),a=e.r(88143),o=e.r(87690),i=["-moz-initial","fill","none","scale-down",void 0];function s(e){return void 0!==e.default}function l(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function u({src:e,sizes:t,unoptimized:r=!1,priority:u=!1,preload:d=!1,loading:c,className:f,quality:p,width:h,height:m,fill:g=!1,style:x,overrideSrc:b,onLoad:y,onLoadingComplete:v,placeholder:j="empty",blurDataURL:w,fetchPriority:k,decoding:_="async",layout:P,objectFit:N,objectPosition:E,lazyBoundary:C,lazyRoot:S,...O},R){var M;let $,I,L,{imgConf:T,showAltText:z,blurComplete:A,defaultLoader:D}=R,U=T||o.imageConfigDefault;if("allSizes"in U)$=U;else{let e=[...U.deviceSizes,...U.imageSizes].sort((e,t)=>e-t),t=U.deviceSizes.sort((e,t)=>e-t),r=U.qualities?.sort((e,t)=>e-t);$={...U,allSizes:e,deviceSizes:t,qualities:r}}if(void 0===D)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let q=O.loader||D;delete O.loader,delete O.srcSet;let F="__next_img_default"in q;if(F){if("custom"===$.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop.
2
2
  Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=q;q=t=>{let{config:r,...n}=t;return e(n)}}if(P){"fill"===P&&(g=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[P];e&&(x={...x,...e});let r={responsive:"100vw",fill:"100vw"}[P];r&&!t&&(t=r)}let B="",W=l(h),H=l(m);if((M=e)&&"object"==typeof M&&(s(M)||void 0!==M.src)){let t=s(e)?e.default:e;if(!t.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!t.height||!t.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(I=t.blurWidth,L=t.blurHeight,w=w||t.blurDataURL,B=t.src,!g)if(W||H){if(W&&!H){let e=W/t.width;H=Math.round(t.height*e)}else if(!W&&H){let e=H/t.height;W=Math.round(t.width*e)}}else W=t.width,H=t.height}let G=!u&&!d&&("lazy"===c||void 0===c);(!(e="string"==typeof e?e:B)||e.startsWith("data:")||e.startsWith("blob:"))&&(r=!0,G=!1),$.unoptimized&&(r=!0),F&&!$.dangerouslyAllowSVG&&e.split("?",1)[0].endsWith(".svg")&&(r=!0);let V=l(p),K=Object.assign(g?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:N,objectPosition:E}:{},z?{}:{color:"transparent"},x),X=A||"empty"===j?null:"blur"===j?`url("data:image/svg+xml;charset=utf-8,${(0,a.getImageBlurSvg)({widthInt:W,heightInt:H,blurWidth:I,blurHeight:L,blurDataURL:w||"",objectFit:K.objectFit})}")`:`url("${j}")`,Q=i.includes(K.objectFit)?"fill"===K.objectFit?"100% 100%":"cover":K.objectFit,J=X?{backgroundSize:Q,backgroundPosition:K.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:X}:{},Z=function({config:e,src:t,unoptimized:r,width:a,quality:o,sizes:i,loader:s}){if(r){let e=(0,n.getDeploymentId)();if(t.startsWith("/")&&!t.startsWith("//")&&e){let r=t.includes("?")?"&":"?";t=`${t}${r}dpl=${e}`}return{src:t,srcSet:void 0,sizes:void 0}}let{widths:l,kind:u}=function({deviceSizes:e,allSizes:t},r,n){if(n){let r=/(^|\s)(1?\d?\d)vw/g,a=[];for(let e;e=r.exec(n);)a.push(parseInt(e[2]));if(a.length){let r=.01*Math.min(...a);return{widths:t.filter(t=>t>=e[0]*r),kind:"w"}}return{widths:t,kind:"w"}}return"number"!=typeof r?{widths:e,kind:"w"}:{widths:[...new Set([r,2*r].map(e=>t.find(t=>t>=e)||t[t.length-1]))],kind:"x"}}(e,a,i),d=l.length-1;return{sizes:i||"w"!==u?i:"100vw",srcSet:l.map((r,n)=>`${s({config:e,src:t,quality:o,width:r})} ${"w"===u?r:n+1}${u}`).join(", "),src:s({config:e,src:t,quality:o,width:l[d]})}}({config:$,src:e,unoptimized:r,width:W,quality:V,sizes:t,loader:q}),Y=G?"lazy":c;return{props:{...O,loading:Y,fetchPriority:k,width:W,height:H,decoding:_,className:f,style:{...K,...J},sizes:Z.sizes,srcSet:Z.srcSet,src:b||Z.src},meta:{unoptimized:r,preload:d||u,placeholder:j,fill:g}}}},98879,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return s}});let n=e.r(71645),a="u"<typeof window,o=a?()=>{}:n.useLayoutEffect,i=a?()=>{}:n.useEffect;function s(e){let{headManager:t,reduceComponentsToState:r}=e;function s(){if(t&&t.mountedInstances){let e=n.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(e))}}return a&&(t?.mountedInstances?.add(e.children),s()),o(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),o(()=>(t&&(t._pendingUpdate=s),()=>{t&&(t._pendingUpdate=s)})),i(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},25633,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return m},defaultHead:function(){return c}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(55682),i=e.r(90809),s=e.r(43476),l=i._(e.r(71645)),u=o._(e.r(98879)),d=e.r(42732);function c(){return[(0,s.jsx)("meta",{charSet:"utf-8"},"charset"),(0,s.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function f(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===l.default.Fragment?e.concat(l.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}e.r(33525);let p=["name","httpEquiv","charSet","itemProp"];function h(e){let t,r,n,a;return e.reduce(f,[]).reverse().concat(c().reverse()).filter((t=new Set,r=new Set,n=new Set,a={},e=>{let o=!0,i=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){i=!0;let r=e.key.slice(e.key.indexOf("$")+1);t.has(r)?o=!1:t.add(r)}switch(e.type){case"title":case"base":r.has(e.type)?o=!1:r.add(e.type);break;case"meta":for(let t=0,r=p.length;t<r;t++){let r=p[t];if(e.props.hasOwnProperty(r))if("charSet"===r)n.has(r)?o=!1:n.add(r);else{let t=e.props[r],n=a[r]||new Set;("name"!==r||!i)&&n.has(t)?o=!1:(n.add(t),a[r]=n)}}}return o})).reverse().map((e,t)=>{let r=e.key||t;return l.default.cloneElement(e,{key:r})})}let m=function({children:e}){let t=(0,l.useContext)(d.HeadManagerContext);return(0,s.jsx)(u.default,{reduceComponentsToState:h,headManager:t,children:e})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18556,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ImageConfigContext",{enumerable:!0,get:function(){return o}});let n=e.r(55682)._(e.r(71645)),a=e.r(87690),o=n.default.createContext(a.imageConfigDefault)},65856,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RouterContext",{enumerable:!0,get:function(){return n}});let n=e.r(55682)._(e.r(71645)).default.createContext(null)},70965,(e,t,r)=>{"use strict";function n(e,t){let r=e||75;return t?.qualities?.length?t.qualities.reduce((e,t)=>Math.abs(t-r)<Math.abs(e-r)?t:e,0):r}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"findClosestQuality",{enumerable:!0,get:function(){return n}})},1948,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return i}});let n=e.r(70965),a=e.r(43369);function o({config:e,src:t,width:r,quality:o}){if(t.startsWith("/")&&t.includes("?")&&e.localPatterns?.length===1&&"**"===e.localPatterns[0].pathname&&""===e.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${t}" is using a query string which is not configured in images.localPatterns.
3
- Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let i=(0,n.findClosestQuality)(o,e),s=(0,a.getDeploymentId)();return`${e.path}?url=${encodeURIComponent(t)}&w=${r}&q=${i}${t.startsWith("/")&&s?`&dpl=${s}`:""}`}o.__next_img_default=!0;let i=o},5500,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"Image",{enumerable:!0,get:function(){return v}});let n=e.r(55682),a=e.r(90809),o=e.r(43476),i=a._(e.r(71645)),s=n._(e.r(74080)),l=n._(e.r(25633)),u=e.r(8927),d=e.r(87690),c=e.r(18556);e.r(33525);let f=e.r(65856),p=n._(e.r(1948)),h=e.r(18581),m={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0};function g(e,t,r,n,a,o,i){let s=e?.src;e&&e["data-loaded-src"]!==s&&(e["data-loaded-src"]=s,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&a(!0),r?.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let n=!1,a=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>n,isPropagationStopped:()=>a,persist:()=>{},preventDefault:()=>{n=!0,t.preventDefault()},stopPropagation:()=>{a=!0,t.stopPropagation()}})}n?.current&&n.current(e)}}))}function x(e){return i.use?{fetchPriority:e}:{fetchpriority:e}}"u"<typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let b=(0,i.forwardRef)(({src:e,srcSet:t,sizes:r,height:n,width:a,decoding:s,className:l,style:u,fetchPriority:d,placeholder:c,loading:f,unoptimized:p,fill:m,onLoadRef:b,onLoadingCompleteRef:y,setBlurComplete:v,setShowAltText:j,sizesInput:w,onLoad:k,onError:_,...P},N)=>{let E=(0,i.useCallback)(e=>{e&&(_&&(e.src=e.src),e.complete&&g(e,c,b,y,v,p,w))},[e,c,b,y,v,_,p,w]),C=(0,h.useMergedRef)(N,E);return(0,o.jsx)("img",{...P,...x(d),loading:f,width:a,height:n,decoding:s,"data-nimg":m?"fill":"1",className:l,style:u,sizes:r,srcSet:t,src:e,ref:C,onLoad:e=>{g(e.currentTarget,c,b,y,v,p,w)},onError:e=>{j(!0),"empty"!==c&&v(!0),_&&_(e)}})});function y({isAppRouter:e,imgAttributes:t}){let r={as:"image",imageSrcSet:t.srcSet,imageSizes:t.sizes,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,...x(t.fetchPriority)};return e&&s.default.preload?(s.default.preload(t.src,r),null):(0,o.jsx)(l.default,{children:(0,o.jsx)("link",{rel:"preload",href:t.srcSet?void 0:t.src,...r},"__nimg-"+t.src+t.srcSet+t.sizes)})}let v=(0,i.forwardRef)((e,t)=>{let r=(0,i.useContext)(f.RouterContext),n=(0,i.useContext)(c.ImageConfigContext),a=(0,i.useMemo)(()=>{let e=m||n||d.imageConfigDefault,t=[...e.deviceSizes,...e.imageSizes].sort((e,t)=>e-t),r=e.deviceSizes.sort((e,t)=>e-t),a=e.qualities?.sort((e,t)=>e-t);return{...e,allSizes:t,deviceSizes:r,qualities:a,localPatterns:"u"<typeof window?n?.localPatterns:e.localPatterns}},[n]),{onLoad:s,onLoadingComplete:l}=e,h=(0,i.useRef)(s);(0,i.useEffect)(()=>{h.current=s},[s]);let g=(0,i.useRef)(l);(0,i.useEffect)(()=>{g.current=l},[l]);let[x,v]=(0,i.useState)(!1),[j,w]=(0,i.useState)(!1),{props:k,meta:_}=(0,u.getImgProps)(e,{defaultLoader:p.default,imgConf:a,blurComplete:x,showAltText:j});return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(b,{...k,unoptimized:_.unoptimized,placeholder:_.placeholder,fill:_.fill,onLoadRef:h,onLoadingCompleteRef:g,setBlurComplete:v,setShowAltText:w,sizesInput:e.sizes,ref:t}),_.preload?(0,o.jsx)(y,{isAppRouter:!r,imgAttributes:k}):null]})});("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},94909,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return d},getImageProps:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(55682),i=e.r(8927),s=e.r(5500),l=o._(e.r(1948));function u(e){let{props:t}=(0,i.getImgProps)(e,{defaultLoader:l.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let d=s.Image},57688,(e,t,r)=>{t.exports=e.r(94909)},15127,e=>{"use strict";var t=e.i(43476),r=e.i(57688),n=e.i(47613);e.s(["Logo",0,({width:e=32,height:a=32,className:o=""})=>{let{theme:i}=(0,n.useTheme)();return(0,t.jsx)(r.default,{src:"light"===i?"/exospheresmall-dark.png":"/exospheresmall.png",alt:"Exosphere Logo",width:e,height:a,className:o,priority:!0})}])},63780,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(22016),a=e.i(18566),o=e.i(75254);let i=(0,o.default)("layout-dashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]),s=(0,o.default)("folder-open",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]),l=(0,o.default)("log-out",[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]]);var u=e.i(15127);let d=(0,o.default)("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]),c=(0,o.default)("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]);var f=e.i(47613),p=e.i(47163);let h=r.forwardRef(({className:e,variant:r="default",size:n="default",...a},o)=>(0,t.jsx)("button",{className:(0,p.cn)("inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none",{"bg-primary text-primary-foreground hover:bg-primary/90":"default"===r,"hover:bg-muted hover:text-muted-foreground":"ghost"===r,"border border-border bg-background hover:bg-muted":"outline"===r,"h-10 py-2 px-4":"default"===n,"h-10 w-10":"icon"===n,"h-9 px-3":"sm"===n,"h-11 px-8":"lg"===n},e),ref:o,...a}));h.displayName="Button";let m=()=>{let{theme:e,setTheme:r}=(0,f.useTheme)();return(0,t.jsxs)(h,{variant:"ghost",size:"icon",onClick:()=>{r("light"===e?"dark":"light")},className:"relative","aria-label":`Switch to ${"light"===e?"dark":"light"} mode`,children:[(0,t.jsx)(d,{className:`h-[1.2rem] w-[1.2rem] transition-all ${"light"===e?"rotate-0 scale-100":"rotate-90 scale-0"}`}),(0,t.jsx)(c,{className:`absolute h-[1.2rem] w-[1.2rem] transition-all ${"dark"===e?"rotate-0 scale-100":"rotate-90 scale-0"}`})]})},g=(0,o.default)("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]]),x=(0,o.default)("lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]]),b=(0,o.default)("bug",[["path",{d:"M12 20v-9",key:"1qisl0"}],["path",{d:"M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z",key:"uouzyp"}],["path",{d:"M14.12 3.88 16 2",key:"qol33r"}],["path",{d:"M21 21a4 4 0 0 0-3.81-4",key:"1b0z45"}],["path",{d:"M21 5a4 4 0 0 1-3.55 3.97",key:"5cxbf6"}],["path",{d:"M22 13h-4",key:"1jl80f"}],["path",{d:"M3 21a4 4 0 0 1 3.81-4",key:"1fjd4g"}],["path",{d:"M3 5a4 4 0 0 0 3.55 3.97",key:"1d7oge"}],["path",{d:"M6 13H2",key:"82j7cp"}],["path",{d:"m8 2 1.88 1.88",key:"fmnt4t"}],["path",{d:"M9 7.13V6a3 3 0 1 1 6 0v1.13",key:"1vgav8"}]]);var y=e.i(86311),v=e.i(64659);let j="claudeye@exosphere.host",w=[{label:"Request a Feature",icon:x,subject:"Feature Request: "},{label:"Report a Bug",icon:b,subject:"Bug Report: "},{label:"General Inquiry",icon:y.MessageSquare,subject:"General Inquiry: "}],k=()=>{let[e,n]=(0,r.useState)(!1),a=(0,r.useRef)(null);(0,r.useEffect)(()=>{let e=e=>{a.current&&!a.current.contains(e.target)&&n(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]);let o=(0,r.useCallback)(t=>{"Escape"===t.key&&e&&n(!1)},[e]);return(0,t.jsxs)("div",{ref:a,className:"relative",onKeyDown:o,children:[(0,t.jsxs)(h,{variant:"ghost",size:"sm",onClick:()=>n(e=>!e),"aria-expanded":e,"aria-haspopup":"true",className:"flex items-center gap-1.5 text-muted-foreground hover:text-foreground",children:[(0,t.jsx)(g,{className:"h-4 w-4"}),(0,t.jsx)("span",{className:"hidden sm:inline text-xs",children:"Reach Us"}),(0,t.jsx)(v.ChevronDown,{className:`h-3 w-3 transition-transform ${e?"rotate-180":""}`})]}),e&&(0,t.jsxs)("div",{className:"absolute right-0 mt-2 w-56 rounded-lg border border-border bg-card shadow-lg z-50",role:"menu",children:[(0,t.jsxs)("div",{className:"px-3 py-2 border-b border-border",children:[(0,t.jsx)("p",{className:"text-xs font-medium text-foreground",children:"Reach Developers"}),(0,t.jsx)("p",{className:"text-[0.65rem] text-muted-foreground mt-0.5",children:"We'd love to hear from you"})]}),(0,t.jsx)("div",{className:"py-1",children:w.map(({label:e,icon:r,subject:a})=>(0,t.jsxs)("a",{href:`mailto:${j}?subject=${encodeURIComponent(a)}`,role:"menuitem",className:"flex items-center gap-2.5 px-3 py-2 text-xs text-muted-foreground hover:text-foreground hover:bg-muted/50 transition-colors",onClick:()=>n(!1),children:[(0,t.jsx)(r,{className:"h-3.5 w-3.5 flex-shrink-0"}),e]},e))}),(0,t.jsx)("div",{className:"px-3 py-2 border-t border-border",children:(0,t.jsx)("a",{href:`mailto:${j}`,className:"text-[0.65rem] text-primary hover:text-primary/80 transition-colors",children:j})})]})]})},_=(0,o.default)("list-ordered",[["path",{d:"M11 5h10",key:"1cz7ny"}],["path",{d:"M11 12h10",key:"1438ji"}],["path",{d:"M11 19h10",key:"11t30w"}],["path",{d:"M4 4h1v5",key:"10yrso"}],["path",{d:"M4 9h2",key:"r1h2o0"}],["path",{d:"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02",key:"xtkcd5"}]]);function P({type:e}){let r="eval"===e?"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-400":"action"===e?"bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400":"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400";return(0,t.jsx)("span",{className:`inline-flex items-center rounded px-1 py-0.5 text-[0.6rem] font-medium leading-none ${r}`,children:e.toUpperCase()})}let N=()=>{let[e,a]=(0,r.useState)(!1),[o,i]=(0,r.useState)(null),s=(0,r.useRef)(null),l=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/queue-status",{cache:"no-store"});e.ok&&i(await e.json())}catch{}},[]);(0,r.useEffect)(()=>{let t=e?2e3:5e3,r=setTimeout(l,0),n=setInterval(l,t);return()=>{clearTimeout(r),clearInterval(n)}},[e,l]),(0,r.useEffect)(()=>{let e=e=>{s.current&&!s.current.contains(e.target)&&a(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]);let u=(0,r.useCallback)(t=>{"Escape"===t.key&&e&&a(!1)},[e]),d=o?.pending.length??0,c=o?.processing.length??0,f=d+c;return(0,t.jsxs)("div",{ref:s,className:"relative",onKeyDown:u,children:[(0,t.jsxs)(h,{variant:"ghost",size:"sm",onClick:()=>a(e=>!e),"aria-expanded":e,"aria-haspopup":"true",className:"relative flex items-center gap-1.5 text-muted-foreground hover:text-foreground",children:[(0,t.jsx)(_,{className:"h-4 w-4"}),f>0?(0,t.jsx)("span",{className:"absolute -top-1 -right-1 flex h-4 min-w-4 items-center justify-center rounded-full bg-primary px-1 text-[0.6rem] font-medium text-primary-foreground",children:f}):null]}),e&&(0,t.jsxs)("div",{className:"absolute right-0 mt-2 w-72 rounded-lg border border-border bg-card shadow-lg z-50",children:[(0,t.jsxs)("div",{className:"px-3 py-2 border-b border-border",children:[(0,t.jsx)("p",{className:"text-xs font-medium text-foreground",children:"Queue"}),o&&(0,t.jsxs)("p",{className:"text-[0.65rem] text-muted-foreground mt-0.5",children:[d," queued · ",c," processing"]})]}),(0,t.jsx)("div",{className:"max-h-64 overflow-y-auto",children:o?0===o.processing.length&&0===o.pending.length?(0,t.jsx)("p",{className:"px-3 py-4 text-xs text-muted-foreground text-center",children:"Queue is empty"}):(0,t.jsxs)("div",{className:"py-1",children:[o.processing.slice(0,7).map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 text-xs",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-blue-500 animate-pulse flex-shrink-0"}),(0,t.jsx)(P,{type:e.type}),(0,t.jsx)("span",{className:"text-foreground truncate flex-1 font-mono text-[0.65rem]",children:e.itemName})]},e.key)),o.processing.length>7&&(0,t.jsxs)("p",{className:"px-3 py-1 text-[0.6rem] text-muted-foreground",children:["...and ",o.processing.length-7," more"]}),o.pending.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 text-xs",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-muted-foreground/40 flex-shrink-0"}),(0,t.jsx)(P,{type:e.type}),(0,t.jsx)("span",{className:"text-muted-foreground truncate flex-1 font-mono text-[0.65rem]",children:e.itemName}),(0,t.jsx)("span",{className:`text-[0.6rem] font-medium flex-shrink-0 ${e.priority<=0?"text-red-600 dark:text-red-400":"text-muted-foreground"}`,children:e.priority<=0?"HIGH":"LOW"})]},e.key)),o.pending.length>5&&(0,t.jsxs)("p",{className:"px-3 py-1 text-[0.6rem] text-muted-foreground",children:["...and ",o.pending.length-5," more queued"]})]}):(0,t.jsx)("p",{className:"px-3 py-4 text-xs text-muted-foreground text-center",children:"Loading..."})}),o&&o.recentErrors.length>0&&(0,t.jsx)("div",{className:"px-3 py-2 border-t border-border",children:(0,t.jsxs)("p",{className:"text-[0.6rem] text-red-600 dark:text-red-400",children:[o.recentErrors.length," recent error",1!==o.recentErrors.length?"s":""]})}),(0,t.jsx)("div",{className:"px-3 py-2 border-t border-border text-center",children:(0,t.jsx)(n.default,{href:"/queue",className:"text-xs text-muted-foreground hover:text-foreground transition-colors",onClick:()=>a(!1),children:"View details"})})]})]})};var E=e.i(16715),C=e.i(85881);let S=[{label:"Off",value:0},{label:"5s",value:5},{label:"10s",value:10},{label:"30s",value:30}];function O({className:e}){let n=(0,a.useRouter)(),[o,i]=(0,r.useTransition)(),{intervalSec:s,setIntervalSec:l}=(0,C.useAutoRefresh)(),u=(0,r.useCallback)(()=>{i(()=>n.refresh())},[n]);(0,r.useEffect)(()=>{if(s<=0)return;let e=setInterval(u,1e3*s);return()=>clearInterval(e)},[s,u]);let d=s>0;return(0,t.jsxs)("div",{className:(0,p.cn)("inline-flex items-center rounded-lg border border-border bg-muted/50 p-0.5 gap-0.5",e),children:[(0,t.jsx)("button",{onClick:u,title:"Refresh",className:(0,p.cn)("inline-flex items-center justify-center rounded-md p-1.5 transition-colors",d?"text-primary hover:bg-primary/10":"text-muted-foreground hover:text-foreground hover:bg-muted"),children:(0,t.jsx)(E.RefreshCw,{className:(0,p.cn)("w-3.5 h-3.5",o&&"animate-spin")})}),(0,t.jsx)("div",{className:"w-px h-4 bg-border"}),(0,t.jsx)("div",{className:"inline-flex items-center gap-0.5",role:"group","aria-label":"Auto-refresh interval",children:S.map(e=>(0,t.jsx)("button",{onClick:()=>l(e.value),"aria-pressed":s===e.value,className:(0,p.cn)("px-2 py-1 text-[11px] font-medium rounded-md transition-colors",s===e.value?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground hover:bg-muted"),children:e.label},e.value))})]})}var R=e.i(95187);let M=(0,R.createServerReference)("00ed5f7c0ab45fd1a141600ee171219a17d76b91e3",R.callServer,void 0,R.findSourceMapURL,"logout"),$=[{href:"/",label:"Projects",icon:s},{href:"/dashboard",label:"Dashboard",icon:i}];e.s(["Navbar",0,()=>{let e=(0,a.usePathname)(),o=(0,a.useRouter)(),[i,s]=(0,r.useState)(!1);async function d(){let e=await M();s(!1),o.push(e.redirectTo)}return(0,r.useEffect)(()=>{s(document.cookie.split(";").map(e=>e.trim()).some(e=>e.startsWith("claudeye_auth=")))},[e]),(0,t.jsx)("header",{className:"relative z-50 border-b border-border bg-card/50 backdrop-blur supports-[backdrop-filter]:bg-card/50",children:(0,t.jsx)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:(0,t.jsxs)("div",{className:"flex items-center justify-between h-16",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsxs)("a",{href:"https://claudeye.exosphere.host",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-3 hover:opacity-80 transition-opacity",children:[(0,t.jsx)(u.Logo,{width:28,height:28,className:"flex-shrink-0"}),(0,t.jsx)("h1",{className:"text-lg font-semibold text-foreground leading-tight tracking-tight",children:"Claudeye"})]}),(0,t.jsx)("div",{className:"w-px h-8 bg-border ml-2"}),(0,t.jsx)("nav",{className:"flex items-center h-16",children:$.map(({href:r,label:a,icon:o})=>{let i="/"===r?"/"===e||e.startsWith("/project"):e.startsWith(r);return(0,t.jsxs)(n.default,{href:r,className:`relative flex items-center gap-1.5 px-3 h-full text-sm transition-colors ${i?"text-foreground font-medium":"text-muted-foreground hover:text-foreground"}`,children:[(0,t.jsx)(o,{className:`w-4 h-4 ${i?"text-primary":""}`}),a,(0,t.jsx)("span",{className:`absolute inset-x-1 bottom-0 h-[2px] rounded-full transition-all ${i?"bg-primary":"bg-transparent group-hover:bg-muted"}`})]},r)})})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[(0,t.jsx)(O,{}),(0,t.jsx)("div",{className:"w-px h-6 bg-border mx-1"}),(0,t.jsx)(k,{}),(0,t.jsx)(m,{}),(0,t.jsx)(N,{}),i&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"w-px h-6 bg-border mx-1"}),(0,t.jsxs)("button",{onClick:d,className:"inline-flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-sm text-muted-foreground hover:text-foreground hover:bg-muted transition-colors",title:"Sign out",children:[(0,t.jsx)(l,{className:"w-4 h-4"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:"Sign out"})]})]})]})]})})})}],63780)}]);
3
+ Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let i=(0,n.findClosestQuality)(o,e),s=(0,a.getDeploymentId)();return`${e.path}?url=${encodeURIComponent(t)}&w=${r}&q=${i}${t.startsWith("/")&&s?`&dpl=${s}`:""}`}o.__next_img_default=!0;let i=o},5500,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"Image",{enumerable:!0,get:function(){return v}});let n=e.r(55682),a=e.r(90809),o=e.r(43476),i=a._(e.r(71645)),s=n._(e.r(74080)),l=n._(e.r(25633)),u=e.r(8927),d=e.r(87690),c=e.r(18556);e.r(33525);let f=e.r(65856),p=n._(e.r(1948)),h=e.r(18581),m={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0};function g(e,t,r,n,a,o,i){let s=e?.src;e&&e["data-loaded-src"]!==s&&(e["data-loaded-src"]=s,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&a(!0),r?.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let n=!1,a=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>n,isPropagationStopped:()=>a,persist:()=>{},preventDefault:()=>{n=!0,t.preventDefault()},stopPropagation:()=>{a=!0,t.stopPropagation()}})}n?.current&&n.current(e)}}))}function x(e){return i.use?{fetchPriority:e}:{fetchpriority:e}}"u"<typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let b=(0,i.forwardRef)(({src:e,srcSet:t,sizes:r,height:n,width:a,decoding:s,className:l,style:u,fetchPriority:d,placeholder:c,loading:f,unoptimized:p,fill:m,onLoadRef:b,onLoadingCompleteRef:y,setBlurComplete:v,setShowAltText:j,sizesInput:w,onLoad:k,onError:_,...P},N)=>{let E=(0,i.useCallback)(e=>{e&&(_&&(e.src=e.src),e.complete&&g(e,c,b,y,v,p,w))},[e,c,b,y,v,_,p,w]),C=(0,h.useMergedRef)(N,E);return(0,o.jsx)("img",{...P,...x(d),loading:f,width:a,height:n,decoding:s,"data-nimg":m?"fill":"1",className:l,style:u,sizes:r,srcSet:t,src:e,ref:C,onLoad:e=>{g(e.currentTarget,c,b,y,v,p,w)},onError:e=>{j(!0),"empty"!==c&&v(!0),_&&_(e)}})});function y({isAppRouter:e,imgAttributes:t}){let r={as:"image",imageSrcSet:t.srcSet,imageSizes:t.sizes,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,...x(t.fetchPriority)};return e&&s.default.preload?(s.default.preload(t.src,r),null):(0,o.jsx)(l.default,{children:(0,o.jsx)("link",{rel:"preload",href:t.srcSet?void 0:t.src,...r},"__nimg-"+t.src+t.srcSet+t.sizes)})}let v=(0,i.forwardRef)((e,t)=>{let r=(0,i.useContext)(f.RouterContext),n=(0,i.useContext)(c.ImageConfigContext),a=(0,i.useMemo)(()=>{let e=m||n||d.imageConfigDefault,t=[...e.deviceSizes,...e.imageSizes].sort((e,t)=>e-t),r=e.deviceSizes.sort((e,t)=>e-t),a=e.qualities?.sort((e,t)=>e-t);return{...e,allSizes:t,deviceSizes:r,qualities:a,localPatterns:"u"<typeof window?n?.localPatterns:e.localPatterns}},[n]),{onLoad:s,onLoadingComplete:l}=e,h=(0,i.useRef)(s);(0,i.useEffect)(()=>{h.current=s},[s]);let g=(0,i.useRef)(l);(0,i.useEffect)(()=>{g.current=l},[l]);let[x,v]=(0,i.useState)(!1),[j,w]=(0,i.useState)(!1),{props:k,meta:_}=(0,u.getImgProps)(e,{defaultLoader:p.default,imgConf:a,blurComplete:x,showAltText:j});return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(b,{...k,unoptimized:_.unoptimized,placeholder:_.placeholder,fill:_.fill,onLoadRef:h,onLoadingCompleteRef:g,setBlurComplete:v,setShowAltText:w,sizesInput:e.sizes,ref:t}),_.preload?(0,o.jsx)(y,{isAppRouter:!r,imgAttributes:k}):null]})});("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},94909,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return d},getImageProps:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(55682),i=e.r(8927),s=e.r(5500),l=o._(e.r(1948));function u(e){let{props:t}=(0,i.getImgProps)(e,{defaultLoader:l.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let d=s.Image},57688,(e,t,r)=>{t.exports=e.r(94909)},15127,e=>{"use strict";var t=e.i(43476),r=e.i(57688),n=e.i(47613);e.s(["Logo",0,({width:e=32,height:a=32,className:o=""})=>{let{theme:i}=(0,n.useTheme)();return(0,t.jsx)(r.default,{src:"light"===i?"/exospheresmall-dark.png":"/exospheresmall.png",alt:"Exosphere Logo",width:e,height:a,className:o,priority:!0})}])},63780,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(22016),a=e.i(18566),o=e.i(75254);let i=(0,o.default)("layout-dashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]),s=(0,o.default)("folder-open",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]),l=(0,o.default)("log-out",[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]]);var u=e.i(15127);let d=(0,o.default)("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]),c=(0,o.default)("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]);var f=e.i(47613),p=e.i(47163);let h=r.forwardRef(({className:e,variant:r="default",size:n="default",...a},o)=>(0,t.jsx)("button",{className:(0,p.cn)("inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none",{"bg-primary text-primary-foreground hover:bg-primary/90":"default"===r,"hover:bg-muted hover:text-muted-foreground":"ghost"===r,"border border-border bg-background hover:bg-muted":"outline"===r,"h-10 py-2 px-4":"default"===n,"h-10 w-10":"icon"===n,"h-9 px-3":"sm"===n,"h-11 px-8":"lg"===n},e),ref:o,...a}));h.displayName="Button";let m=()=>{let{theme:e,setTheme:r}=(0,f.useTheme)();return(0,t.jsxs)(h,{variant:"ghost",size:"icon",onClick:()=>{r("light"===e?"dark":"light")},className:"relative","aria-label":`Switch to ${"light"===e?"dark":"light"} mode`,children:[(0,t.jsx)(d,{className:`h-[1.2rem] w-[1.2rem] transition-all ${"light"===e?"rotate-0 scale-100":"rotate-90 scale-0"}`}),(0,t.jsx)(c,{className:`absolute h-[1.2rem] w-[1.2rem] transition-all ${"dark"===e?"rotate-0 scale-100":"rotate-90 scale-0"}`})]})},g=(0,o.default)("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]]),x=(0,o.default)("lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]]),b=(0,o.default)("bug",[["path",{d:"M12 20v-9",key:"1qisl0"}],["path",{d:"M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z",key:"uouzyp"}],["path",{d:"M14.12 3.88 16 2",key:"qol33r"}],["path",{d:"M21 21a4 4 0 0 0-3.81-4",key:"1b0z45"}],["path",{d:"M21 5a4 4 0 0 1-3.55 3.97",key:"5cxbf6"}],["path",{d:"M22 13h-4",key:"1jl80f"}],["path",{d:"M3 21a4 4 0 0 1 3.81-4",key:"1fjd4g"}],["path",{d:"M3 5a4 4 0 0 0 3.55 3.97",key:"1d7oge"}],["path",{d:"M6 13H2",key:"82j7cp"}],["path",{d:"m8 2 1.88 1.88",key:"fmnt4t"}],["path",{d:"M9 7.13V6a3 3 0 1 1 6 0v1.13",key:"1vgav8"}]]);var y=e.i(86311),v=e.i(64659);let j="claudeye@exosphere.host",w=[{label:"Request a Feature",icon:x,subject:"Feature Request: "},{label:"Report a Bug",icon:b,subject:"Bug Report: "},{label:"General Inquiry",icon:y.MessageSquare,subject:"General Inquiry: "}],k=()=>{let[e,n]=(0,r.useState)(!1),a=(0,r.useRef)(null);(0,r.useEffect)(()=>{let e=e=>{a.current&&!a.current.contains(e.target)&&n(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]);let o=(0,r.useCallback)(t=>{"Escape"===t.key&&e&&n(!1)},[e]);return(0,t.jsxs)("div",{ref:a,className:"relative",onKeyDown:o,children:[(0,t.jsxs)(h,{variant:"ghost",size:"sm",onClick:()=>n(e=>!e),"aria-expanded":e,"aria-haspopup":"true",className:"flex items-center gap-1.5 text-muted-foreground hover:text-foreground",children:[(0,t.jsx)(g,{className:"h-4 w-4"}),(0,t.jsx)("span",{className:"hidden sm:inline text-xs",children:"Reach Us"}),(0,t.jsx)(v.ChevronDown,{className:`h-3 w-3 transition-transform ${e?"rotate-180":""}`})]}),e&&(0,t.jsxs)("div",{className:"absolute right-0 mt-2 w-56 rounded-lg border border-border bg-card shadow-lg z-50",role:"menu",children:[(0,t.jsxs)("div",{className:"px-3 py-2 border-b border-border",children:[(0,t.jsx)("p",{className:"text-xs font-medium text-foreground",children:"Reach Developers"}),(0,t.jsx)("p",{className:"text-[0.65rem] text-muted-foreground mt-0.5",children:"We'd love to hear from you"})]}),(0,t.jsx)("div",{className:"py-1",children:w.map(({label:e,icon:r,subject:a})=>(0,t.jsxs)("a",{href:`mailto:${j}?subject=${encodeURIComponent(a)}`,role:"menuitem",className:"flex items-center gap-2.5 px-3 py-2 text-xs text-muted-foreground hover:text-foreground hover:bg-muted/50 transition-colors",onClick:()=>n(!1),children:[(0,t.jsx)(r,{className:"h-3.5 w-3.5 flex-shrink-0"}),e]},e))}),(0,t.jsx)("div",{className:"px-3 py-2 border-t border-border",children:(0,t.jsx)("a",{href:`mailto:${j}`,className:"text-[0.65rem] text-primary hover:text-primary/80 transition-colors",children:j})})]})]})},_=(0,o.default)("list-ordered",[["path",{d:"M11 5h10",key:"1cz7ny"}],["path",{d:"M11 12h10",key:"1438ji"}],["path",{d:"M11 19h10",key:"11t30w"}],["path",{d:"M4 4h1v5",key:"10yrso"}],["path",{d:"M4 9h2",key:"r1h2o0"}],["path",{d:"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02",key:"xtkcd5"}]]);function P({type:e}){let r="eval"===e?"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-400":"action"===e?"bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400":"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400";return(0,t.jsx)("span",{className:`inline-flex items-center rounded px-1 py-0.5 text-[0.6rem] font-medium leading-none ${r}`,children:e.toUpperCase()})}let N=()=>{let[e,a]=(0,r.useState)(!1),[o,i]=(0,r.useState)(null),s=(0,r.useRef)(null),l=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/queue-status",{cache:"no-store"});e.ok&&i(await e.json())}catch{}},[]);(0,r.useEffect)(()=>{let t=e?2e3:5e3,r=setTimeout(l,0),n=setInterval(l,t);return()=>{clearTimeout(r),clearInterval(n)}},[e,l]),(0,r.useEffect)(()=>{let e=e=>{s.current&&!s.current.contains(e.target)&&a(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]);let u=(0,r.useCallback)(t=>{"Escape"===t.key&&e&&a(!1)},[e]),d=o?.pending.length??0,c=o?.processing.length??0,f=d+c;return(0,t.jsxs)("div",{ref:s,className:"relative",onKeyDown:u,children:[(0,t.jsxs)(h,{variant:"ghost",size:"sm",onClick:()=>a(e=>!e),"aria-expanded":e,"aria-haspopup":"true",className:"relative flex items-center gap-1.5 text-muted-foreground hover:text-foreground",children:[(0,t.jsx)(_,{className:"h-4 w-4"}),f>0?(0,t.jsx)("span",{className:"absolute -top-1 -right-1 flex h-4 min-w-4 items-center justify-center rounded-full bg-primary px-1 text-[0.6rem] font-medium text-primary-foreground",children:f}):null]}),e&&(0,t.jsxs)("div",{className:"absolute right-0 mt-2 w-72 rounded-lg border border-border bg-card shadow-lg z-50",children:[(0,t.jsxs)("div",{className:"px-3 py-2 border-b border-border",children:[(0,t.jsx)("p",{className:"text-xs font-medium text-foreground",children:"Queue"}),o&&(0,t.jsxs)("p",{className:"text-[0.65rem] text-muted-foreground mt-0.5",children:[d," queued · ",c," processing"]})]}),(0,t.jsx)("div",{className:"max-h-64 overflow-y-auto",children:o?0===o.processing.length&&0===o.pending.length?(0,t.jsx)("p",{className:"px-3 py-4 text-xs text-muted-foreground text-center",children:"Queue is empty"}):(0,t.jsxs)("div",{className:"py-1",children:[o.processing.slice(0,7).map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 text-xs",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-blue-500 animate-pulse flex-shrink-0"}),(0,t.jsx)(P,{type:e.type}),(0,t.jsx)("span",{className:"text-foreground truncate flex-1 font-mono text-[0.65rem]",children:e.itemName})]},e.key)),o.processing.length>7&&(0,t.jsxs)("p",{className:"px-3 py-1 text-[0.6rem] text-muted-foreground",children:["...and ",o.processing.length-7," more"]}),o.pending.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 text-xs",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-muted-foreground/40 flex-shrink-0"}),(0,t.jsx)(P,{type:e.type}),(0,t.jsx)("span",{className:"text-muted-foreground truncate flex-1 font-mono text-[0.65rem]",children:e.itemName}),(0,t.jsx)("span",{className:`text-[0.6rem] font-medium flex-shrink-0 ${e.priority<=0?"text-red-600 dark:text-red-400":"text-muted-foreground"}`,children:e.priority<=0?"HIGH":"LOW"})]},e.key)),o.pending.length>5&&(0,t.jsxs)("p",{className:"px-3 py-1 text-[0.6rem] text-muted-foreground",children:["...and ",o.pending.length-5," more queued"]})]}):(0,t.jsx)("p",{className:"px-3 py-4 text-xs text-muted-foreground text-center",children:"Loading..."})}),o&&o.recentErrors.length>0&&(0,t.jsx)("div",{className:"px-3 py-2 border-t border-border",children:(0,t.jsxs)("p",{className:"text-[0.6rem] text-red-600 dark:text-red-400",children:[o.recentErrors.length," recent error",1!==o.recentErrors.length?"s":""]})}),(0,t.jsx)("div",{className:"px-3 py-2 border-t border-border text-center",children:(0,t.jsx)(n.default,{href:"/queue",className:"text-xs text-muted-foreground hover:text-foreground transition-colors",onClick:()=>a(!1),children:"View details"})})]})]})};var E=e.i(16715),C=e.i(85881);let S=[{label:"Off",value:0},{label:"5s",value:5},{label:"10s",value:10},{label:"30s",value:30}];function O({className:e}){let n=(0,a.useRouter)(),[o,i]=(0,r.useTransition)(),{intervalSec:s,setIntervalSec:l}=(0,C.useAutoRefresh)(),u=(0,r.useCallback)(()=>{i(()=>n.refresh())},[n]);(0,r.useEffect)(()=>{if(s<=0)return;let e=setInterval(u,1e3*s);return()=>clearInterval(e)},[s,u]);let d=s>0;return(0,t.jsxs)("div",{className:(0,p.cn)("inline-flex items-center rounded-lg border border-border bg-muted/50 p-0.5 gap-0.5",e),children:[(0,t.jsx)("button",{onClick:u,title:"Refresh",className:(0,p.cn)("inline-flex items-center justify-center rounded-md p-1.5 transition-colors",d?"text-primary hover:bg-primary/10":"text-muted-foreground hover:text-foreground hover:bg-muted"),children:(0,t.jsx)(E.RefreshCw,{className:(0,p.cn)("w-3.5 h-3.5",o&&"animate-spin")})}),(0,t.jsx)("div",{className:"w-px h-4 bg-border"}),(0,t.jsx)("div",{className:"inline-flex items-center gap-0.5",role:"group","aria-label":"Auto-refresh interval",children:S.map(e=>(0,t.jsx)("button",{onClick:()=>l(e.value),"aria-pressed":s===e.value,className:(0,p.cn)("px-2 py-1 text-[11px] font-medium rounded-md transition-colors",s===e.value?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground hover:bg-muted"),children:e.label},e.value))})]})}var R=e.i(95187);let M=(0,R.createServerReference)("005b70e1a74915b9521ffee4df1774eda9a297f1d0",R.callServer,void 0,R.findSourceMapURL,"logout"),$=[{href:"/",label:"Projects",icon:s},{href:"/dashboard",label:"Dashboard",icon:i}];e.s(["Navbar",0,()=>{let e=(0,a.usePathname)(),o=(0,a.useRouter)(),[i,s]=(0,r.useState)(!1);async function d(){let e=await M();s(!1),o.push(e.redirectTo)}return(0,r.useEffect)(()=>{s(document.cookie.split(";").map(e=>e.trim()).some(e=>e.startsWith("claudeye_auth=")))},[e]),(0,t.jsx)("header",{className:"relative z-50 border-b border-border bg-card/50 backdrop-blur supports-[backdrop-filter]:bg-card/50",children:(0,t.jsx)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:(0,t.jsxs)("div",{className:"flex items-center justify-between h-16",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsxs)("a",{href:"https://claudeye.exosphere.host",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-3 hover:opacity-80 transition-opacity",children:[(0,t.jsx)(u.Logo,{width:28,height:28,className:"flex-shrink-0"}),(0,t.jsx)("h1",{className:"text-lg font-semibold text-foreground leading-tight tracking-tight",children:"Claudeye"})]}),(0,t.jsx)("div",{className:"w-px h-8 bg-border ml-2"}),(0,t.jsx)("nav",{className:"flex items-center h-16",children:$.map(({href:r,label:a,icon:o})=>{let i="/"===r?"/"===e||e.startsWith("/project"):e.startsWith(r);return(0,t.jsxs)(n.default,{href:r,className:`relative flex items-center gap-1.5 px-3 h-full text-sm transition-colors ${i?"text-foreground font-medium":"text-muted-foreground hover:text-foreground"}`,children:[(0,t.jsx)(o,{className:`w-4 h-4 ${i?"text-primary":""}`}),a,(0,t.jsx)("span",{className:`absolute inset-x-1 bottom-0 h-[2px] rounded-full transition-all ${i?"bg-primary":"bg-transparent group-hover:bg-muted"}`})]},r)})})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[(0,t.jsx)(O,{}),(0,t.jsx)("div",{className:"w-px h-6 bg-border mx-1"}),(0,t.jsx)(k,{}),(0,t.jsx)(m,{}),(0,t.jsx)(N,{}),i&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"w-px h-6 bg-border mx-1"}),(0,t.jsxs)("button",{onClick:d,className:"inline-flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-sm text-muted-foreground hover:text-foreground hover:bg-muted transition-colors",title:"Sign out",children:[(0,t.jsx)(l,{className:"w-4 h-4"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:"Sign out"})]})]})]})]})})})}],63780)}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,89954,e=>{"use strict";var r=e.i(43476),o=e.i(71645),t=e.i(18566),s=e.i(95187);let d=(0,s.createServerReference)("4083f6e7710dc3674fd81a1cde5b510bdb11996914",s.callServer,void 0,s.findSourceMapURL,"login");var a=e.i(15127),n=e.i(22016);function i(){let e=(0,t.useSearchParams)(),s=(0,t.useRouter)(),i=e.get("from")??"/",[l,c]=(0,o.useState)(null),[u,m]=(0,o.useState)(!1);async function x(e){e.preventDefault(),c(null),m(!0);let r=new FormData(e.currentTarget);r.set("redirectTo",i);let o=await d(r);o?.error?(c(o.error),m(!1)):o?.redirectTo&&s.push(o.redirectTo)}return(0,r.jsx)("div",{className:"min-h-screen flex items-center justify-center bg-background px-4",children:(0,r.jsxs)("div",{className:"w-full max-w-sm rounded-lg border border-border bg-card p-8 shadow-lg",children:[(0,r.jsxs)("div",{className:"flex flex-col items-center gap-2 mb-6",children:[(0,r.jsx)(n.default,{href:"/",children:(0,r.jsx)(a.Logo,{width:36,height:36})}),(0,r.jsx)("h2",{className:"text-xl font-semibold text-foreground",children:"Sign in to Claudeye"}),(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"Enter your credentials to continue"})]}),(0,r.jsxs)("form",{onSubmit:x,className:"flex flex-col gap-4",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("label",{htmlFor:"username",className:"text-sm font-medium text-foreground",children:"Username"}),(0,r.jsx)("input",{id:"username",name:"username",type:"text",required:!0,autoComplete:"username",autoFocus:!0,className:"rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary",placeholder:"admin"})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("label",{htmlFor:"password",className:"text-sm font-medium text-foreground",children:"Password"}),(0,r.jsx)("input",{id:"password",name:"password",type:"password",required:!0,autoComplete:"current-password",className:"rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary"})]}),l&&(0,r.jsx)("p",{className:"text-sm text-red-500 bg-red-500/10 rounded-md px-3 py-2",children:l}),(0,r.jsx)("button",{type:"submit",disabled:u,className:"mt-1 rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground hover:bg-primary/90 focus:outline-none focus:ring-2 focus:ring-primary/50 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:u?"Signing in...":"Sign in"})]})]})})}e.s(["default",()=>i],89954)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,89954,e=>{"use strict";var r=e.i(43476),o=e.i(71645),t=e.i(18566),s=e.i(95187);let d=(0,s.createServerReference)("40af936862e3193a6ded96cd473e7ff0931c46d180",s.callServer,void 0,s.findSourceMapURL,"login");var a=e.i(15127),n=e.i(22016);function i(){let e=(0,t.useSearchParams)(),s=(0,t.useRouter)(),i=e.get("from")??"/",[l,c]=(0,o.useState)(null),[u,m]=(0,o.useState)(!1);async function x(e){e.preventDefault(),c(null),m(!0);let r=new FormData(e.currentTarget);r.set("redirectTo",i);let o=await d(r);o?.error?(c(o.error),m(!1)):o?.redirectTo&&s.push(o.redirectTo)}return(0,r.jsx)("div",{className:"min-h-screen flex items-center justify-center bg-background px-4",children:(0,r.jsxs)("div",{className:"w-full max-w-sm rounded-lg border border-border bg-card p-8 shadow-lg",children:[(0,r.jsxs)("div",{className:"flex flex-col items-center gap-2 mb-6",children:[(0,r.jsx)(n.default,{href:"/",children:(0,r.jsx)(a.Logo,{width:36,height:36})}),(0,r.jsx)("h2",{className:"text-xl font-semibold text-foreground",children:"Sign in to Claudeye"}),(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"Enter your credentials to continue"})]}),(0,r.jsxs)("form",{onSubmit:x,className:"flex flex-col gap-4",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("label",{htmlFor:"username",className:"text-sm font-medium text-foreground",children:"Username"}),(0,r.jsx)("input",{id:"username",name:"username",type:"text",required:!0,autoComplete:"username",autoFocus:!0,className:"rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary",placeholder:"admin"})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("label",{htmlFor:"password",className:"text-sm font-medium text-foreground",children:"Password"}),(0,r.jsx)("input",{id:"password",name:"password",type:"password",required:!0,autoComplete:"current-password",className:"rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary/50 focus:border-primary"})]}),l&&(0,r.jsx)("p",{className:"text-sm text-red-500 bg-red-500/10 rounded-md px-3 py-2",children:l}),(0,r.jsx)("button",{type:"submit",disabled:u,className:"mt-1 rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground hover:bg-primary/90 focus:outline-none focus:ring-2 focus:ring-primary/50 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:u?"Signing in...":"Sign in"})]})]})})}e.s(["default",()=>i],89954)}]);
@@ -31,6 +31,7 @@
31
31
  - [`createApp()`](#createapp)
32
32
  - [`app.condition(fn)`](#appconditionfn)
33
33
  - [`app.queueCondition(fn, options?)`](#appqueueconditionfn-options)
34
+ - [`app.cacheInvalidation(fn)`](#appcacheinvalidationfn)
34
35
  - [`app.eval(name, fn, options?)`](#appevalname-fn-options)
35
36
  - [`app.enrich(name, fn, options?)`](#appenrichname-fn-options)
36
37
  - [`app.action(name, fn, options?)`](#appactionname-fn-options)
@@ -121,6 +122,7 @@ Works with [Claude Code](https://docs.anthropic.com/en/docs/claude-code) session
121
122
  - **Custom evals** - grade sessions with pass/fail results and 0-1 scores
122
123
  - **Per-eval recompute** - re-run a single eval without reprocessing all others
123
124
  - **Conditional evals** - gate evals globally or per-item, with session/subagent scope control
125
+ - **Cache invalidation hook** - register a custom function via `app.cacheInvalidation()` to invalidate stale cached results based on age, score, or any custom logic
124
126
 
125
127
  ### Utilize
126
128
 
@@ -358,6 +360,36 @@ Both can be set simultaneously. `app.queueCondition()` acts as a pre-filter for
358
360
 
359
361
  ---
360
362
 
363
+ ### `app.cacheInvalidation(fn)`
364
+
365
+ Register a cache invalidation hook that runs before serving any cached eval or enrichment result. If the hook returns `true`, the cached entry is discarded and the item re-runs. Only affects evals and enrichments — actions, alerts, and conditions pass through unchanged.
366
+
367
+ ```ts
368
+ app.cacheInvalidation((ctx) => boolean | Promise<boolean>);
369
+ ```
370
+
371
+ The `ctx` object includes `itemName`, `itemKind` (`"evals"` or `"enrichments"`), `cachedAt` (ISO timestamp), `cachedValue` (the full cached result), `projectName`, `sessionId`, `contentHash`, and `itemCodeHash`.
372
+
373
+ ```js
374
+ // Invalidate cache entries older than 24 hours
375
+ app.cacheInvalidation(({ cachedAt }) => {
376
+ const age = Date.now() - new Date(cachedAt).getTime();
377
+ return age > 24 * 60 * 60 * 1000;
378
+ });
379
+
380
+ // Re-run a specific eval when cached score is 0
381
+ app.cacheInvalidation((ctx) => {
382
+ if (ctx.itemKind === 'evals' && ctx.itemName === 'no-hallucination') {
383
+ return ctx.cachedValue.score === 0;
384
+ }
385
+ return false;
386
+ });
387
+ ```
388
+
389
+ See [API Reference](docs/api-reference.md#appcacheinvalidationfn) for full documentation.
390
+
391
+ ---
392
+
361
393
  ### `app.eval(name, fn, options?)`
362
394
 
363
395
  Register an eval function. Evals grade sessions with a pass/fail result and an optional 0-1 score.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claudeye",
3
- "version": "1.0.2",
3
+ "version": "1.0.3-beta.2",
4
4
  "description": "Watchtower for Claude Code & Agents SDK — replay sessions, run custom evals, debug agent traces locally",
5
5
  "bin": {
6
6
  "claudeye": "./bin/claudeye.mjs"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@claudeye/linux-arm64",
3
- "version": "1.0.2",
3
+ "version": "1.0.3-beta.2",
4
4
  "description": "Claudeye platform binary for Linux ARM64",
5
5
  "os": [
6
6
  "linux"