@claudeye/linux-x64 1.0.5-beta.2 → 1.0.5-beta.3

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 (103) hide show
  1. package/assets/standalone/.next/BUILD_ID +1 -1
  2. package/assets/standalone/.next/build-manifest.json +2 -2
  3. package/assets/standalone/.next/prerender-manifest.json +3 -3
  4. package/assets/standalone/.next/server/app/_global-error.html +2 -2
  5. package/assets/standalone/.next/server/app/_global-error.rsc +1 -1
  6. package/assets/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  7. package/assets/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/assets/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  9. package/assets/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  10. package/assets/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/assets/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  12. package/assets/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  13. package/assets/standalone/.next/server/app/_not-found.html +2 -2
  14. package/assets/standalone/.next/server/app/_not-found.rsc +7 -7
  15. package/assets/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +7 -7
  16. package/assets/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  17. package/assets/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +7 -7
  18. package/assets/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  19. package/assets/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  20. package/assets/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  21. package/assets/standalone/.next/server/app/dashboard/[viewName]/page/server-reference-manifest.json +4 -4
  22. package/assets/standalone/.next/server/app/dashboard/[viewName]/page_client-reference-manifest.js +1 -1
  23. package/assets/standalone/.next/server/app/dashboard/page/server-reference-manifest.json +4 -4
  24. package/assets/standalone/.next/server/app/dashboard/page_client-reference-manifest.js +1 -1
  25. package/assets/standalone/.next/server/app/hooks/page/server-reference-manifest.json +3 -3
  26. package/assets/standalone/.next/server/app/hooks/page_client-reference-manifest.js +1 -1
  27. package/assets/standalone/.next/server/app/login/page/server-reference-manifest.json +2 -2
  28. package/assets/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  29. package/assets/standalone/.next/server/app/login.html +2 -2
  30. package/assets/standalone/.next/server/app/login.rsc +8 -8
  31. package/assets/standalone/.next/server/app/login.segments/_full.segment.rsc +8 -8
  32. package/assets/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
  33. package/assets/standalone/.next/server/app/login.segments/_index.segment.rsc +7 -7
  34. package/assets/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  35. package/assets/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  36. package/assets/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
  37. package/assets/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
  38. package/assets/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  39. package/assets/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
  40. package/assets/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
  41. package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +1 -1
  42. package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +8 -8
  43. package/assets/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
  44. package/assets/standalone/.next/server/app/queue/page/server-reference-manifest.json +3 -3
  45. package/assets/standalone/.next/server/app/queue/page_client-reference-manifest.js +1 -1
  46. package/assets/standalone/.next/server/chunks/[root-of-the-server]__eb7e2ddd._.js +2 -2
  47. package/assets/standalone/.next/server/chunks/_3f3c09bf._.js +2 -2
  48. package/assets/standalone/.next/server/chunks/_7e07bbd9._.js +1 -1
  49. package/assets/standalone/.next/server/chunks/_8f856fad._.js +2 -2
  50. package/assets/standalone/.next/server/chunks/_b8adaa37._.js +2 -2
  51. package/assets/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7a66d362.js +1 -1
  52. package/assets/standalone/.next/server/chunks/package_json_4b1b4d6f._.js +1 -1
  53. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__16565f83._.js +2 -2
  54. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__3b8762e8._.js +3 -0
  55. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__9d56992c._.js +2 -2
  56. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__f62102cd._.js +2 -2
  57. package/assets/standalone/.next/server/chunks/ssr/_14858238._.js +1 -1
  58. package/assets/standalone/.next/server/chunks/ssr/_19a3e694._.js +2 -2
  59. package/assets/standalone/.next/server/chunks/ssr/_1d335924._.js +1 -1
  60. package/assets/standalone/.next/server/chunks/ssr/_2e175d6c._.js +2 -2
  61. package/assets/standalone/.next/server/chunks/ssr/_3dacef09._.js +1 -1
  62. package/assets/standalone/.next/server/chunks/ssr/_60aa3e52._.js +2 -2
  63. package/assets/standalone/.next/server/chunks/ssr/_6e726820._.js +3 -0
  64. package/assets/standalone/.next/server/chunks/ssr/_76ab933f._.js +1 -1
  65. package/assets/standalone/.next/server/chunks/ssr/_7ae321cd._.js +2 -2
  66. package/assets/standalone/.next/server/chunks/ssr/_87e025a1._.js +1 -1
  67. package/assets/standalone/.next/server/chunks/ssr/_c9400c33._.js +2 -2
  68. package/assets/standalone/.next/server/chunks/ssr/_d4343fce._.js +3 -0
  69. package/assets/standalone/.next/server/chunks/ssr/_d7159840._.js +1 -1
  70. package/assets/standalone/.next/server/chunks/ssr/_f47ff7c6._.js +3 -0
  71. package/assets/standalone/.next/server/chunks/ssr/_fa9c2bed._.js +2 -2
  72. package/assets/standalone/.next/server/chunks/ssr/app_actions_compute-dashboard_ts_fc151dbb._.js +1 -1
  73. package/assets/standalone/.next/server/chunks/ssr/app_hooks_hooks-client_tsx_8b8d68a3._.js +3 -0
  74. package/assets/standalone/.next/server/chunks/ssr/app_login_page_tsx_ccc0019b._.js +1 -1
  75. package/assets/standalone/.next/server/chunks/ssr/app_queue_queue-client_tsx_45f040f7._.js +1 -1
  76. package/assets/standalone/.next/server/pages/404.html +2 -2
  77. package/assets/standalone/.next/server/pages/500.html +2 -2
  78. package/assets/standalone/.next/server/server-reference-manifest.js +1 -1
  79. package/assets/standalone/.next/server/server-reference-manifest.json +17 -17
  80. package/assets/standalone/.next/static/chunks/1e3c7d61326f7793.js +1 -0
  81. package/assets/standalone/.next/static/chunks/3f8bd46c698666cf.js +1 -0
  82. package/assets/standalone/.next/static/chunks/{1eaf5bad21638157.js → 570595147b23ee2b.js} +1 -1
  83. package/assets/standalone/.next/static/chunks/{f64b15abe05fa8c1.js → 5f560dc1b2c99876.js} +1 -1
  84. package/assets/standalone/.next/static/chunks/{8cc527387c7eb54f.js → 9be484ba14899210.js} +1 -1
  85. package/assets/standalone/.next/static/chunks/c3143abc45f3c5bf.css +1 -0
  86. package/assets/standalone/.next/static/chunks/{f98b0e26a30d604c.js → c526022c4dfbb67a.js} +2 -2
  87. package/assets/standalone/.next/static/chunks/{7cf0bcab3235c747.js → e309e6abaa708e65.js} +2 -2
  88. package/assets/standalone/.next/static/chunks/e7f14ec361e0a5c8.js +1 -0
  89. package/assets/standalone/README.md +128 -2
  90. package/assets/standalone/package.json +1 -1
  91. package/bin/claudeye +0 -0
  92. package/package.json +1 -1
  93. package/assets/standalone/.next/server/chunks/ssr/[root-of-the-server]__0b4b7267._.js +0 -3
  94. package/assets/standalone/.next/server/chunks/ssr/_200ed8e0._.js +0 -3
  95. package/assets/standalone/.next/server/chunks/ssr/_81677e08._.js +0 -3
  96. package/assets/standalone/.next/server/chunks/ssr/_fd9b1ff7._.js +0 -3
  97. package/assets/standalone/.next/static/chunks/0fc2a7130f591324.js +0 -1
  98. package/assets/standalone/.next/static/chunks/bcfe40cb481e095e.js +0 -1
  99. package/assets/standalone/.next/static/chunks/d5fbf0170bc0ef9e.js +0 -1
  100. package/assets/standalone/.next/static/chunks/d98be8b1a727cee7.css +0 -1
  101. /package/assets/standalone/.next/static/{1QVterzlNYzRgEwlQEuK9 → UiGxdN7oek4-zlg9UPVWY}/_buildManifest.js +0 -0
  102. /package/assets/standalone/.next/static/{1QVterzlNYzRgEwlQEuK9 → UiGxdN7oek4-zlg9UPVWY}/_clientMiddlewareManifest.json +0 -0
  103. /package/assets/standalone/.next/static/{1QVterzlNYzRgEwlQEuK9 → UiGxdN7oek4-zlg9UPVWY}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- module.exports=[77728,a=>{"use strict";var b=a.i(37936),c=a.i(5246),d=a.i(76668),e=a.i(9223);async function f(a){let b=a.get("username"),f=a.get("password"),g=a.get("redirectTo")||"/";if(!b||!f)return{error:"Username and password are required"};let i=process.env.CLAUDEYE_AUTH_USERS??"",j=(0,e.parseAuthUsers)(i),k=!1;for(let a of j){let c=h(a.username,b),d=h(a.password,f);c&&d&&(k=!0)}if(!k)return(0,d.logActivity)(b,"login-failed"),{error:"Invalid username or password"};let l=process.env.CLAUDEYE_AUTH_SECRET??"",m=await (0,e.createSessionCookie)(b,l),n=await (0,c.cookies)();return n.set("claudeye_session",m,{httpOnly:!0,sameSite:"lax",path:"/",maxAge:86400}),n.set("claudeye_auth","1",{sameSite:"lax",path:"/",maxAge:86400}),(0,d.logActivity)(b,"login"),{redirectTo:g}}async function g(){let{getRequestUsername:b}=await a.A(47538),e=await b();(0,d.logActivity)(e,"logout");let f=await (0,c.cookies)();return f.delete("claudeye_session"),f.delete("claudeye_auth"),{redirectTo:"/login"}}function h(a,b){if(a.length!==b.length){let c=Math.max(a.length,b.length);for(let d=0;d<c;d++)a.charCodeAt(d%a.length),b.charCodeAt(d%b.length);return!1}let c=0;for(let d=0;d<a.length;d++)c|=a.charCodeAt(d)^b.charCodeAt(d);return 0===c}(0,a.i(13095).ensureServerEntryExports)([f,g]),(0,b.registerServerReference)(f,"40af67c10517fe21de69837d06007283ec56bdad2c",null),(0,b.registerServerReference)(g,"00ae4def7c8994d4c7faa44c651a56c4e994d251a8",null),a.s(["login",()=>f,"logout",()=>g])},76668,a=>{"use strict";let b={info:0,warn:1,error:2},c="warn";function d(){let a=(process.env.CLAUDEYE_LOG_LEVEL??"").toLowerCase();c="info"===a||"warn"===a||"error"===a?a:"warn"}function e(){return c}function f(a){return b[a]>=b[c]}function g(a){return`[claudeye ${new Date().toISOString()}] ${a}`}function h(a,b){f("info")&&(void 0!==b?console.log(g("INFO"),a,b):console.log(g("INFO"),a))}function i(a,b){f("warn")&&(void 0!==b?console.warn(g("WARN"),a,b):console.warn(g("WARN"),a))}function j(a,b){void 0!==b?console.error(g("ERROR"),a,b):console.error(g("ERROR"),a)}function k(a,b,c){if(!f("info"))return;let d=[`user=${a}`,`action=${b}`];c&&d.push(c),console.log(g("ACTIVITY"),d.join(" "))}async function l(){try{let{cookies:b}=await a.A(23804),c=await b(),d=c.get("claudeye_session")?.value;if(!d)return"anonymous";let e=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:f}=await a.A(76958);return await f(d,e)??"anonymous"}catch{return"anonymous"}}a.s(["getLogLevel",()=>e,"getRequestUsername",()=>l,"initLogger",()=>d,"logActivity",()=>k,"logError",()=>j,"logInfo",()=>h,"logWarn",()=>i])},37936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},13095,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},9223,a=>{"use strict";function b(a){let b=new Uint8Array(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function c(a){let b=a.replace(/-/g,"+").replace(/_/g,"/"),c=atob(b+"=".repeat((4-b.length%4)%4)),d=new Uint8Array(c.length);for(let a=0;a<c.length;a++)d[a]=c.charCodeAt(a);return d}async function d(a){let b=new TextEncoder;return crypto.subtle.importKey("raw",b.encode(a),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"])}async function e(a,c){let e=JSON.stringify({u:a,e:Date.now()+864e5}),f=new TextEncoder().encode(e),g=await d(c),h=await crypto.subtle.sign("HMAC",g,f);return`${b(f.buffer)}.${b(h)}`}async function f(a,b){let e=a.indexOf(".");if(e<0)return null;try{let f=a.slice(0,e),g=a.slice(e+1),h=c(f),i=c(g),j=await d(b);if(!await crypto.subtle.verify("HMAC",j,i.buffer,h.buffer))return null;let{u:k,e:l}=JSON.parse(new TextDecoder().decode(h));if("number"!=typeof l||Date.now()>l)return null;return"string"==typeof k?k:null}catch{return null}}function g(a){return a.trim()?a.split(",").reduce((a,b)=>{let c=b.indexOf(":");return c>0&&a.push({username:b.slice(0,c),password:b.slice(c+1)}),a},[]):[]}a.s(["createSessionCookie",()=>e,"parseAuthUsers",()=>g,"verifySessionCookie",()=>f])},46325,a=>{"use strict";let b=(0,a.i(61972).createScopedRegistry)("__CLAUDEYE_ENRICHER_REGISTRY__");function c(a,d,e,f="session",g){let h={name:a,fn:d,scope:f};e&&(h.condition=e),g&&(h.subagentType=g),b.register(h)}let d=b.getAll,e=b.getSessionScoped,f=b.getSubagentScoped,g=b.hasSubagent,h=b.has,i=b.clear;a.s(["clearEnrichers",0,i,"getRegisteredEnrichers",0,d,"getSessionScopedEnrichers",0,e,"getSubagentScopedEnrichers",0,f,"hasEnrichers",0,h,"hasSubagentEnrichers",0,g,"registerEnricher",()=>c])},70467,a=>{"use strict";let b=(0,a.i(61972).createScopedRegistry)("__CLAUDEYE_EVAL_REGISTRY__");function c(a,d,e,f="session",g){let h={name:a,fn:d,scope:f};e&&(h.condition=e),g&&(h.subagentType=g),b.register(h)}let d=b.getAll,e=b.getSessionScoped,f=b.getSubagentScoped,g=b.hasSubagent,h=b.has,i=b.clear;a.s(["clearEvals",0,i,"getRegisteredEvals",0,d,"getSessionScopedEvals",0,e,"getSubagentScopedEvals",0,f,"hasEvals",0,h,"hasSubagentEvals",0,g,"registerEval",()=>c])},69191,a=>{"use strict";var b=a.i(24868),c=a.i(14747),d=a.i(90798),e=a.i(34900),f=a.i(76668),g=a.i(82248);async function h(a,c){try{return(await (0,b.stat)(a)).mtime}catch(a){return(0,f.logWarn)(`Failed to stat ${c}:`,a),new Date(0)}}async function i(a){try{if(!(await (0,b.stat)(a)).isDirectory())return null;return await (0,b.readdir)(a,{withFileTypes:!0})}catch{return null}}async function j(){try{let a=(0,d.getClaudeProjectsPath)(),b=await i(a);if(!b)return[];let e=await Promise.all(b.filter(a=>a.isDirectory()).map(async b=>{let d=(0,c.join)(a,b.name),e=await h(d,b.name);return{name:b.name,path:d,isDirectory:!0,lastModified:e,lastModifiedFormatted:(0,g.formatDate)(e)}}));return e.sort((a,b)=>b.lastModified.getTime()-a.lastModified.getTime()),e}catch(a){return(0,f.logError)("Error reading project folders:",a),[]}}function k(a){let b=(0,d.getClaudeProjectsPath)();return(0,c.join)(b,a)}function l(a){let b=a.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return b?b[0]:void 0}async function m(a){try{let b=await i(a);if(!b)return[];let d=b.filter(a=>a.isFile()&&a.name.endsWith(".jsonl")&&l(a.name)),e=await Promise.all(d.map(async b=>{let d=(0,c.join)(a,b.name),e=await h(d,b.name);return{name:b.name,path:d,lastModified:e,lastModifiedFormatted:(0,g.formatDate)(e),sessionId:l(b.name)}}));return e.sort((a,b)=>b.lastModified.getTime()-a.lastModified.getTime()),e}catch(a){return(0,f.logError)("Error reading session files:",a),[]}}let n=(0,e.runtimeCache)(j,30),o=(0,e.runtimeCache)(a=>m(a),30);a.s(["getCachedProjectFolders",0,n,"getCachedSessionFiles",0,o,"getProjectPath",()=>k])},65003,a=>{"use strict";var b=a.i(70467),c=a.i(50871);async function d(a,d,e,f,g,h){let i=g??(0,b.getRegisteredEvals)(),j={entries:a,stats:d,projectName:e,sessionId:f,source:"session",...h};return(0,c.runAll)(i,j,{skipResult:a=>({name:a.name,pass:!1,score:0,durationMs:0,skipped:!0}),successResult:(a,b,c)=>{var d;return{name:a.name,pass:b.pass,score:null==(d=b.score)?1:Math.max(0,Math.min(1,d)),message:b.message,metadata:b.metadata,durationMs:c}},errorResult:(a,b,c)=>({name:a.name,pass:!1,score:0,durationMs:c,error:b}),unexpectedResult:()=>({name:"?",pass:!1,score:0,durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0,e=0,f=0;for(let b of a)b.skipped?f++:b.error?e++:b.pass?c++:d++;return{results:a,totalDurationMs:b,passCount:c,failCount:d,errorCount:e,skippedCount:f}}})}a.s(["runAllEvals",()=>d])},50871,a=>{"use strict";async function b(a,b,c){let d=[],e=performance.now(),f=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,g=!1;if(f)try{await f(b)||(g=!0)}catch{g=!0}if(g)for(let b of a)d.push(c.skipResult(b));else{let e=a.map(async a=>{if(a.condition)try{if(!await a.condition(b))return c.skipResult(a)}catch(b){return c.errorResult(a,`Condition error: ${b instanceof Error?b.message:String(b)}`,0)}let d=performance.now();try{let e=await a.fn(b),f=Math.round(performance.now()-d);return c.successResult(a,e,f)}catch(e){let b=Math.round(performance.now()-d);return c.errorResult(a,e instanceof Error?e.message:String(e),b)}});for(let a of(await Promise.allSettled(e)))d.push("fulfilled"===a.status?a.value:c.unexpectedResult())}let h=Math.round(performance.now()-e);return c.buildSummary(d,h)}a.s(["runAll",()=>b],50871)},31810,a=>{"use strict";var b=a.i(46325),c=a.i(50871);async function d(a,d,e,f,g,h){let i=g??(0,b.getRegisteredEnrichers)(),j={entries:a,stats:d,projectName:e,sessionId:f,source:"session",...h};return(0,c.runAll)(i,j,{skipResult:a=>({name:a.name,data:{},durationMs:0,skipped:!0}),successResult:(a,b,c)=>({name:a.name,data:b,durationMs:c}),errorResult:(a,b,c)=>({name:a.name,data:{},durationMs:c,error:b}),unexpectedResult:()=>({name:"?",data:{},durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0;for(let b of a)b.skipped?d++:b.error&&c++;return{results:a,totalDurationMs:b,errorCount:c,skippedCount:d}}})}a.s(["runAllEnrichers",()=>d])},20396,82762,a=>{"use strict";var b=a.i(37936),c=a.i(62733);let d="__CLAUDEYE_DASHBOARD_FILTER_REGISTRY__",e="__CLAUDEYE_DASHBOARD_VIEW_REGISTRY__",f="__CLAUDEYE_DASHBOARD_AGGREGATE_REGISTRY__",g="__CLAUDEYE_DASHBOARD_PREBUILT_FILTER_REGISTRY__";function h(){let a=globalThis;return a[d]||(a[d]=[]),a[d]}function i(){let a=globalThis;return a[e]||(a[e]=[]),a[e]}function j(){return h()}function k(a){return h().filter(b=>b.view===a)}function l(a){return i().find(b=>b.name===a)}function m(){return i()}function n(a){let b;return(!(b=globalThis)[f]&&(b[f]=[]),b[f]).filter(b=>b.view===a)}function o(a){let b;return(!(b=globalThis)[g]&&(b[g]=[]),b[g]).filter(b=>b.view===a)}async function p(){try{await (0,c.ensureEvalsLoaded)();let a=m().map(a=>({name:a.name,label:a.label,filterCount:k(a.name).length,aggregateCount:n(a.name).length})),b=k("default").length>0,d=n("default").length>0;return{ok:!0,views:a,hasDefaultFilters:b,hasDefaultAggregates:d}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}a.s(["getAggregatesForView",()=>n,"getFiltersForView",()=>k,"getPreBuiltFiltersForView",()=>o,"getRegisteredFilters",()=>j,"getRegisteredViews",()=>m,"getViewOptions",()=>l],82762),(0,a.i(13095).ensureServerEntryExports)([p]),(0,b.registerServerReference)(p,"00de608cfcbd44785d6662ae1fe7664ce0c7521d3a",null),a.s(["listDashboardViews",()=>p],20396)},68786,a=>{"use strict";var b=a.i(77728),c=a.i(20396),d=a.i(42298),e=a.i(4930);a.s([],91111),a.i(91111),a.s(["00ae4def7c8994d4c7faa44c651a56c4e994d251a8",()=>b.logout,"00de608cfcbd44785d6662ae1fe7664ce0c7521d3a",()=>c.listDashboardViews,"40a83b2444cee0cb3f32870b296be0f6d3dff30cc3",()=>e.computeAggregates,"605925bf358404aea9aff467049335eff1e3a3d21e",()=>d.computeDashboard],68786)},23804,a=>{a.v(a=>Promise.resolve().then(()=>a(5246)))},76958,a=>{a.v(a=>Promise.resolve().then(()=>a(9223)))},47538,a=>{a.v(a=>Promise.resolve().then(()=>a(76668)))},65726,a=>{a.v(b=>Promise.all(["server/chunks/ssr/lib_evals_cache-invalidation-registry_ts_2ee53a56._.js"].map(b=>a.l(b))).then(()=>b(16991)))},45397,a=>{a.v(a=>Promise.resolve().then(()=>a(70467)))},79288,a=>{a.v(a=>Promise.resolve().then(()=>a(46325)))}];
1
+ module.exports=[77728,a=>{"use strict";var b=a.i(37936),c=a.i(5246),d=a.i(76668),e=a.i(9223);async function f(a){let b=a.get("username"),f=a.get("password"),g=a.get("redirectTo")||"/";if(!b||!f)return{error:"Username and password are required"};let i=process.env.CLAUDEYE_AUTH_USERS??"",j=(0,e.parseAuthUsers)(i),k=!1;for(let a of j){let c=h(a.username,b),d=h(a.password,f);c&&d&&(k=!0)}if(!k)return(0,d.logActivity)(b,"login-failed"),{error:"Invalid username or password"};let l=process.env.CLAUDEYE_AUTH_SECRET??"",m=await (0,e.createSessionCookie)(b,l),n=await (0,c.cookies)();return n.set("claudeye_session",m,{httpOnly:!0,sameSite:"lax",path:"/",maxAge:86400}),n.set("claudeye_auth","1",{sameSite:"lax",path:"/",maxAge:86400}),(0,d.logActivity)(b,"login"),{redirectTo:g}}async function g(){let{getRequestUsername:b}=await a.A(47538),e=await b();(0,d.logActivity)(e,"logout");let f=await (0,c.cookies)();return f.delete("claudeye_session"),f.delete("claudeye_auth"),{redirectTo:"/login"}}function h(a,b){if(a.length!==b.length){let c=Math.max(a.length,b.length);for(let d=0;d<c;d++)a.charCodeAt(d%a.length),b.charCodeAt(d%b.length);return!1}let c=0;for(let d=0;d<a.length;d++)c|=a.charCodeAt(d)^b.charCodeAt(d);return 0===c}(0,a.i(13095).ensureServerEntryExports)([f,g]),(0,b.registerServerReference)(f,"400a0a63ed462ed8f7f93b1b4eb2e9b242a48b82c0",null),(0,b.registerServerReference)(g,"0011e19243e758bfdf09fcc5511e20fd6495c151bc",null),a.s(["login",()=>f,"logout",()=>g])},76668,a=>{"use strict";let b={info:0,warn:1,error:2},c="warn";function d(){let a=(process.env.CLAUDEYE_LOG_LEVEL??"").toLowerCase();c="info"===a||"warn"===a||"error"===a?a:"warn"}function e(){return c}function f(a){return b[a]>=b[c]}function g(a){return`[claudeye ${new Date().toISOString()}] ${a}`}function h(a,b){f("info")&&(void 0!==b?console.log(g("INFO"),a,b):console.log(g("INFO"),a))}function i(a,b){f("warn")&&(void 0!==b?console.warn(g("WARN"),a,b):console.warn(g("WARN"),a))}function j(a,b){void 0!==b?console.error(g("ERROR"),a,b):console.error(g("ERROR"),a)}function k(a,b,c){if(!f("info"))return;let d=[`user=${a}`,`action=${b}`];c&&d.push(c),console.log(g("ACTIVITY"),d.join(" "))}async function l(){try{let{cookies:b}=await a.A(23804),c=await b(),d=c.get("claudeye_session")?.value;if(!d)return"anonymous";let e=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:f}=await a.A(76958);return await f(d,e)??"anonymous"}catch{return"anonymous"}}a.s(["getLogLevel",()=>e,"getRequestUsername",()=>l,"initLogger",()=>d,"logActivity",()=>k,"logError",()=>j,"logInfo",()=>h,"logWarn",()=>i])},37936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},13095,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},9223,a=>{"use strict";function b(a){let b=new Uint8Array(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function c(a){let b=a.replace(/-/g,"+").replace(/_/g,"/"),c=atob(b+"=".repeat((4-b.length%4)%4)),d=new Uint8Array(c.length);for(let a=0;a<c.length;a++)d[a]=c.charCodeAt(a);return d}async function d(a){let b=new TextEncoder;return crypto.subtle.importKey("raw",b.encode(a),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"])}async function e(a,c){let e=JSON.stringify({u:a,e:Date.now()+864e5}),f=new TextEncoder().encode(e),g=await d(c),h=await crypto.subtle.sign("HMAC",g,f);return`${b(f.buffer)}.${b(h)}`}async function f(a,b){let e=a.indexOf(".");if(e<0)return null;try{let f=a.slice(0,e),g=a.slice(e+1),h=c(f),i=c(g),j=await d(b);if(!await crypto.subtle.verify("HMAC",j,i.buffer,h.buffer))return null;let{u:k,e:l}=JSON.parse(new TextDecoder().decode(h));if("number"!=typeof l||Date.now()>l)return null;return"string"==typeof k?k:null}catch{return null}}function g(a){return a.trim()?a.split(",").reduce((a,b)=>{let c=b.indexOf(":");return c>0&&a.push({username:b.slice(0,c),password:b.slice(c+1)}),a},[]):[]}a.s(["createSessionCookie",()=>e,"parseAuthUsers",()=>g,"verifySessionCookie",()=>f])},46325,a=>{"use strict";let b=(0,a.i(61972).createScopedRegistry)("__CLAUDEYE_ENRICHER_REGISTRY__");function c(a,d,e,f="session",g){let h={name:a,fn:d,scope:f};e&&(h.condition=e),g&&(h.subagentType=g),b.register(h)}let d=b.getAll,e=b.getSessionScoped,f=b.getSubagentScoped,g=b.hasSubagent,h=b.has,i=b.clear;a.s(["clearEnrichers",0,i,"getRegisteredEnrichers",0,d,"getSessionScopedEnrichers",0,e,"getSubagentScopedEnrichers",0,f,"hasEnrichers",0,h,"hasSubagentEnrichers",0,g,"registerEnricher",()=>c])},70467,a=>{"use strict";let b=(0,a.i(61972).createScopedRegistry)("__CLAUDEYE_EVAL_REGISTRY__");function c(a,d,e,f="session",g){let h={name:a,fn:d,scope:f};e&&(h.condition=e),g&&(h.subagentType=g),b.register(h)}let d=b.getAll,e=b.getSessionScoped,f=b.getSubagentScoped,g=b.hasSubagent,h=b.has,i=b.clear;a.s(["clearEvals",0,i,"getRegisteredEvals",0,d,"getSessionScopedEvals",0,e,"getSubagentScopedEvals",0,f,"hasEvals",0,h,"hasSubagentEvals",0,g,"registerEval",()=>c])},69191,a=>{"use strict";var b=a.i(24868),c=a.i(14747),d=a.i(90798),e=a.i(34900),f=a.i(76668),g=a.i(82248);async function h(a,c){try{return(await (0,b.stat)(a)).mtime}catch(a){return(0,f.logWarn)(`Failed to stat ${c}:`,a),new Date(0)}}async function i(a){try{if(!(await (0,b.stat)(a)).isDirectory())return null;return await (0,b.readdir)(a,{withFileTypes:!0})}catch{return null}}async function j(){try{let a=(0,d.getClaudeProjectsPath)(),b=await i(a);if(!b)return[];let e=await Promise.all(b.filter(a=>a.isDirectory()).map(async b=>{let d=(0,c.join)(a,b.name),e=await h(d,b.name);return{name:b.name,path:d,isDirectory:!0,lastModified:e,lastModifiedFormatted:(0,g.formatDate)(e)}}));return e.sort((a,b)=>b.lastModified.getTime()-a.lastModified.getTime()),e}catch(a){return(0,f.logError)("Error reading project folders:",a),[]}}function k(a){let b=(0,d.getClaudeProjectsPath)();return(0,c.join)(b,a)}function l(a){let b=a.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return b?b[0]:void 0}async function m(a){try{let b=await i(a);if(!b)return[];let d=b.filter(a=>a.isFile()&&a.name.endsWith(".jsonl")&&l(a.name)),e=await Promise.all(d.map(async b=>{let d=(0,c.join)(a,b.name),e=await h(d,b.name);return{name:b.name,path:d,lastModified:e,lastModifiedFormatted:(0,g.formatDate)(e),sessionId:l(b.name)}}));return e.sort((a,b)=>b.lastModified.getTime()-a.lastModified.getTime()),e}catch(a){return(0,f.logError)("Error reading session files:",a),[]}}let n=(0,e.runtimeCache)(j,30),o=(0,e.runtimeCache)(a=>m(a),30);a.s(["getCachedProjectFolders",0,n,"getCachedSessionFiles",0,o,"getProjectPath",()=>k])},65003,a=>{"use strict";var b=a.i(70467),c=a.i(50871);async function d(a,d,e,f,g,h){let i=g??(0,b.getRegisteredEvals)(),j={entries:a,stats:d,projectName:e,sessionId:f,source:"session",...h};return(0,c.runAll)(i,j,{skipResult:a=>({name:a.name,pass:!1,score:0,durationMs:0,skipped:!0}),successResult:(a,b,c)=>{var d;return{name:a.name,pass:b.pass,score:null==(d=b.score)?1:Math.max(0,Math.min(1,d)),message:b.message,metadata:b.metadata,durationMs:c}},errorResult:(a,b,c)=>({name:a.name,pass:!1,score:0,durationMs:c,error:b}),unexpectedResult:()=>({name:"?",pass:!1,score:0,durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0,e=0,f=0;for(let b of a)b.skipped?f++:b.error?e++:b.pass?c++:d++;return{results:a,totalDurationMs:b,passCount:c,failCount:d,errorCount:e,skippedCount:f}}})}a.s(["runAllEvals",()=>d])},50871,a=>{"use strict";async function b(a,b,c){let d=[],e=performance.now(),f=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,g=!1;if(f)try{await f(b)||(g=!0)}catch{g=!0}if(g)for(let b of a)d.push(c.skipResult(b));else{let e=a.map(async a=>{if(a.condition)try{if(!await a.condition(b))return c.skipResult(a)}catch(b){return c.errorResult(a,`Condition error: ${b instanceof Error?b.message:String(b)}`,0)}let d=performance.now();try{let e=await a.fn(b),f=Math.round(performance.now()-d);return c.successResult(a,e,f)}catch(e){let b=Math.round(performance.now()-d);return c.errorResult(a,e instanceof Error?e.message:String(e),b)}});for(let a of(await Promise.allSettled(e)))d.push("fulfilled"===a.status?a.value:c.unexpectedResult())}let h=Math.round(performance.now()-e);return c.buildSummary(d,h)}a.s(["runAll",()=>b],50871)},31810,a=>{"use strict";var b=a.i(46325),c=a.i(50871);async function d(a,d,e,f,g,h){let i=g??(0,b.getRegisteredEnrichers)(),j={entries:a,stats:d,projectName:e,sessionId:f,source:"session",...h};return(0,c.runAll)(i,j,{skipResult:a=>({name:a.name,data:{},durationMs:0,skipped:!0}),successResult:(a,b,c)=>({name:a.name,data:b,durationMs:c}),errorResult:(a,b,c)=>({name:a.name,data:{},durationMs:c,error:b}),unexpectedResult:()=>({name:"?",data:{},durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0;for(let b of a)b.skipped?d++:b.error&&c++;return{results:a,totalDurationMs:b,errorCount:c,skippedCount:d}}})}a.s(["runAllEnrichers",()=>d])},20396,82762,a=>{"use strict";var b=a.i(37936),c=a.i(62733);let d="__CLAUDEYE_DASHBOARD_FILTER_REGISTRY__",e="__CLAUDEYE_DASHBOARD_VIEW_REGISTRY__",f="__CLAUDEYE_DASHBOARD_AGGREGATE_REGISTRY__",g="__CLAUDEYE_DASHBOARD_PREBUILT_FILTER_REGISTRY__";function h(){let a=globalThis;return a[d]||(a[d]=[]),a[d]}function i(){let a=globalThis;return a[e]||(a[e]=[]),a[e]}function j(){return h()}function k(a){return h().filter(b=>b.view===a)}function l(a){return i().find(b=>b.name===a)}function m(){return i()}function n(a){let b;return(!(b=globalThis)[f]&&(b[f]=[]),b[f]).filter(b=>b.view===a)}function o(a){let b;return(!(b=globalThis)[g]&&(b[g]=[]),b[g]).filter(b=>b.view===a)}async function p(){try{await (0,c.ensureEvalsLoaded)();let a=m().map(a=>({name:a.name,label:a.label,filterCount:k(a.name).length,aggregateCount:n(a.name).length})),b=k("default").length>0,d=n("default").length>0;return{ok:!0,views:a,hasDefaultFilters:b,hasDefaultAggregates:d}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}a.s(["getAggregatesForView",()=>n,"getFiltersForView",()=>k,"getPreBuiltFiltersForView",()=>o,"getRegisteredFilters",()=>j,"getRegisteredViews",()=>m,"getViewOptions",()=>l],82762),(0,a.i(13095).ensureServerEntryExports)([p]),(0,b.registerServerReference)(p,"007f3ba08472e87a9d7042daa6fb5f341b25a9672f",null),a.s(["listDashboardViews",()=>p],20396)},68786,a=>{"use strict";var b=a.i(77728),c=a.i(20396),d=a.i(42298),e=a.i(4930);a.s([],91111),a.i(91111),a.s(["0011e19243e758bfdf09fcc5511e20fd6495c151bc",()=>b.logout,"007f3ba08472e87a9d7042daa6fb5f341b25a9672f",()=>c.listDashboardViews,"4044be55ec9baafd1a5ea37afd2d32e7c6e2a080f2",()=>e.computeAggregates,"60464f5b613abcd43072ca3ca93d3cb051574edb93",()=>d.computeDashboard],68786)},23804,a=>{a.v(a=>Promise.resolve().then(()=>a(5246)))},76958,a=>{a.v(a=>Promise.resolve().then(()=>a(9223)))},47538,a=>{a.v(a=>Promise.resolve().then(()=>a(76668)))},65726,a=>{a.v(b=>Promise.all(["server/chunks/ssr/lib_evals_cache-invalidation-registry_ts_2ee53a56._.js"].map(b=>a.l(b))).then(()=>b(16991)))},45397,a=>{a.v(a=>Promise.resolve().then(()=>a(70467)))},79288,a=>{a.v(a=>Promise.resolve().then(()=>a(46325)))}];
3
3
 
4
4
  //# sourceMappingURL=_60aa3e52._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[5151,33441,a=>{"use strict";var b=a.i(70106);let c=(0,b.default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",()=>c],5151);let d=(0,b.default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);a.s(["Check",()=>d],33441)},24121,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(5151),e=a.i(33441),f=a.i(97895);function g(a){let b=document.createElement("textarea");b.value=a,b.style.position="fixed",b.style.opacity="0",document.body.appendChild(b);try{return b.select(),document.execCommand("copy")}finally{document.body.removeChild(b)}}function h({text:a,className:h}){let[i,j]=(0,c.useState)(!1),k=(0,c.useCallback)(async()=>{try{if(navigator.clipboard?.writeText)await navigator.clipboard.writeText(a);else if(!g(a))throw Error("Both clipboard methods failed");j(!0),setTimeout(()=>j(!1),2e3)}catch(b){console.error("Failed to copy to clipboard:",b);try{g(a)&&(j(!0),setTimeout(()=>j(!1),2e3))}catch{}}},[a]);return(0,b.jsx)("button",{onClick:k,title:"Copy to clipboard",className:(0,f.cn)("inline-flex items-center justify-center rounded p-1 text-muted-foreground hover:text-foreground hover:bg-muted/80 transition-colors",h),children:i?(0,b.jsx)(e.Check,{className:"w-3.5 h-3.5 text-green-500"}):(0,b.jsx)(d.Copy,{className:"w-3.5 h-3.5"})})}a.s(["CopyButton",()=>h])},32245,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"BailoutToCSR",{enumerable:!0,get:function(){return e}});let d=a.r(41997);function e({reason:a,children:b}){throw Object.defineProperty(new d.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},7773,(a,b,c)=>{"use strict";function d(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"encodeURIPath",{enumerable:!0,get:function(){return d}})},97458,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"PreloadChunks",{enumerable:!0,get:function(){return i}});let d=a.r(87924),e=a.r(35112),f=a.r(56704),g=a.r(7773),h=a.r(68063);function i({moduleIds:a}){let b=f.workAsyncStorage.getStore();if(void 0===b)return null;let c=[];if(b.reactLoadableManifest&&a){let d=b.reactLoadableManifest;for(let b of a){if(!d[b])continue;let a=d[b].files;c.push(...a)}}if(0===c.length)return null;let i=(0,h.getDeploymentIdQueryOrEmptyString)();return(0,d.jsx)(d.Fragment,{children:c.map(a=>{let c=`${b.assetPrefix}/_next/${(0,g.encodeURIPath)(a)}${i}`;return a.endsWith(".css")?(0,d.jsx)("link",{precedence:"dynamic",href:c,rel:"stylesheet",as:"style",nonce:b.nonce},a):((0,e.preload)(c,{as:"script",fetchPriority:"low",nonce:b.nonce}),null)})})}},69853,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return j}});let d=a.r(87924),e=a.r(72131),f=a.r(32245),g=a.r(97458);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},19721,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return e}});let d=a.r(33354)._(a.r(69853));function e(a,b){let c={};"function"==typeof a&&(c.loader=a);let e={...c,...b};return(0,d.default)({...e,modules:e.loadableGenerated?.modules})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},94092,a=>{"use strict";var b=a.i(87924);let c=(0,a.i(19721).default)(async()=>{},{loadableGenerated:{modules:[5780]},ssr:!1,loading:()=>(0,b.jsx)("div",{className:"bg-card border border-border rounded-lg p-4 shadow-sm",children:(0,b.jsx)("div",{className:"flex items-center justify-center py-16",children:(0,b.jsx)("div",{className:"animate-pulse text-muted-foreground",children:"Loading log viewer..."})})})});function d({entries:a,projectName:d,sessionId:e}){return(0,b.jsx)(c,{entries:a,projectName:d,sessionId:e})}a.s(["default",()=>d])}];
2
+
3
+ //# sourceMappingURL=_6e726820._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[96221,a=>{"use strict";let b=(0,a.i(70106).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);a.s(["Loader2",()=>b],96221)},68765,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(5050);let e=(0,d.createServerReference)("605925bf358404aea9aff467049335eff1e3a3d21e",d.callServer,void 0,d.findSourceMapURL,"computeDashboard");var f=a.i(90619),g=a.i(95947);let h=["all","true","false"];function i({meta:a,value:c,onChange:d}){return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4",children:[(0,b.jsx)("label",{className:"block text-sm font-medium text-foreground mb-2",children:a.label}),(0,b.jsx)("div",{className:"flex gap-1",children:h.map(a=>(0,b.jsx)("button",{onClick:()=>d(a),className:`flex-1 px-3 py-1.5 text-sm rounded-md transition-colors ${c===a?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-muted/80"}`,children:"all"===a?"All":"true"===a?"Yes":"No"},a))})]})}function j({meta:a,value:d,onChange:e}){let f=a.max-a.min,g=!Number.isInteger(a.min)||!Number.isInteger(a.max),h=f<=1?.01:g&&f<=10?.1:g||f<=10?1:f<=100?5:10,i=(0,c.useCallback)(a=>{let b=Number(a.target.value);isNaN(b)||e({...d,min:Math.min(b,d.max)})},[d,e]),j=(0,c.useCallback)(a=>{let b=Number(a.target.value);isNaN(b)||e({...d,max:Math.max(b,d.min)})},[d,e]),k=(0,c.useCallback)(a=>{let b=Number(a.target.value);e({...d,min:Math.min(b,d.max)})},[d,e]),l=(0,c.useCallback)(a=>{let b=Number(a.target.value);e({...d,max:Math.max(b,d.min)})},[d,e]);return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4",children:[(0,b.jsx)("label",{className:"block text-sm font-medium text-foreground mb-2",children:a.label}),(0,b.jsxs)("div",{className:"relative mb-3",children:[(0,b.jsx)("input",{type:"range",min:a.min,max:a.max,step:h,value:d.min,onChange:k,className:"absolute w-full pointer-events-none appearance-none bg-transparent [&::-webkit-slider-thumb]:pointer-events-auto [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:h-4 [&::-webkit-slider-thumb]:w-4 [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-primary [&::-webkit-slider-thumb]:cursor-pointer [&::-moz-range-thumb]:pointer-events-auto [&::-moz-range-thumb]:appearance-none [&::-moz-range-thumb]:h-4 [&::-moz-range-thumb]:w-4 [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:bg-primary [&::-moz-range-thumb]:border-0 [&::-moz-range-thumb]:cursor-pointer","aria-label":`${a.label} minimum`}),(0,b.jsx)("input",{type:"range",min:a.min,max:a.max,step:h,value:d.max,onChange:l,className:"absolute w-full pointer-events-none appearance-none bg-transparent [&::-webkit-slider-thumb]:pointer-events-auto [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:h-4 [&::-webkit-slider-thumb]:w-4 [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-primary [&::-webkit-slider-thumb]:cursor-pointer [&::-moz-range-thumb]:pointer-events-auto [&::-moz-range-thumb]:appearance-none [&::-moz-range-thumb]:h-4 [&::-moz-range-thumb]:w-4 [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:bg-primary [&::-moz-range-thumb]:border-0 [&::-moz-range-thumb]:cursor-pointer","aria-label":`${a.label} maximum`}),(0,b.jsx)("div",{className:"h-1 bg-muted rounded w-full mt-2"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("input",{type:"number",min:a.min,max:a.max,step:h,value:d.min,onChange:i,className:"w-20 px-2 py-1 text-sm bg-input border border-border rounded-md text-foreground focus:outline-none focus:ring-2 focus:ring-ring","aria-label":`${a.label} minimum value`}),(0,b.jsx)("span",{className:"text-muted-foreground text-sm",children:"to"}),(0,b.jsx)("input",{type:"number",min:a.min,max:a.max,step:h,value:d.max,onChange:j,className:"w-20 px-2 py-1 text-sm bg-input border border-border rounded-md text-foreground focus:outline-none focus:ring-2 focus:ring-ring","aria-label":`${a.label} maximum value`})]})]})}var k=a.i(5784);function l({meta:a,value:d,onChange:e}){let[f,g]=(0,c.useState)(!1),h=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(!f)return;let a=a=>{h.current&&!h.current.contains(a.target)&&g(!1)};return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[f]);let i=(0,c.useCallback)(a=>{let b=new Set(d);b.has(a)?b.delete(a):b.add(a),e(b)},[d,e]),j=(0,c.useCallback)(()=>{e(new Set(a.values))},[a.values,e]),l=(0,c.useCallback)(()=>{e(new Set)},[e]),m=d.size,n=a.values.length,o=0===m?"None selected":m===n?"All selected":`${m} of ${n} selected`;return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4",ref:h,children:[(0,b.jsx)("label",{className:"block text-sm font-medium text-foreground mb-2",children:a.label}),(0,b.jsxs)("button",{onClick:()=>g(!f),className:"w-full flex items-center justify-between px-3 py-2 text-sm bg-input border border-border rounded-md text-foreground hover:border-primary/50 transition-colors","aria-expanded":f,children:[(0,b.jsx)("span",{className:"truncate",children:o}),(0,b.jsx)(k.ChevronDown,{className:`w-4 h-4 text-muted-foreground transition-transform ${f?"rotate-180":""}`})]}),f&&(0,b.jsxs)("div",{className:"mt-2 border border-border rounded-md bg-popover shadow-md max-h-60 overflow-y-auto",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 border-b border-border",children:[(0,b.jsx)("button",{onClick:j,className:"text-xs text-primary hover:text-primary/80 transition-colors",children:"Select All"}),(0,b.jsx)("span",{className:"text-muted-foreground text-xs",children:"|"}),(0,b.jsx)("button",{onClick:l,className:"text-xs text-primary hover:text-primary/80 transition-colors",children:"Clear"})]}),a.values.map(a=>(0,b.jsxs)("label",{className:"flex items-center gap-2 px-3 py-1.5 hover:bg-muted/50 cursor-pointer transition-colors",children:[(0,b.jsx)("input",{type:"checkbox",checked:d.has(a),onChange:()=>i(a),className:"rounded border-border text-primary focus:ring-ring"}),(0,b.jsx)("span",{className:"text-sm text-foreground truncate",children:a})]},a)),0===a.values.length&&(0,b.jsx)("div",{className:"px-3 py-2 text-sm text-muted-foreground",children:"No values available"})]})]})}var m=a.i(24451);function n({meta:a,value:c,onChange:d}){let e=null!==c.from||null!==c.to;return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,b.jsx)("label",{className:"block text-sm font-medium text-foreground",children:a.label}),e&&(0,b.jsx)("button",{onClick:()=>d({from:null,to:null}),className:"text-xs text-primary hover:text-primary/80 transition-colors",children:"Clear"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(m.default,{id:`filter-date-${a.name}-from`,value:null,stringValue:c.from,onChange:a=>d({...c,from:a||null}),"aria-label":`${a.label} from date`}),(0,b.jsx)("span",{className:"text-xs text-muted-foreground",children:"to"}),(0,b.jsx)(m.default,{id:`filter-date-${a.name}-to`,value:null,stringValue:c.to,onChange:a=>d({...c,to:a||null}),"aria-label":`${a.label} to date`})]})]})}var o=a.i(38246),p=a.i(35487),q=a.i(65967);function r({sessions:a,filterMeta:c,totalCount:d,matchingCount:e,page:f,pageSize:g,onPageChange:h}){let i=Math.ceil(e/g),j=(f-1)*g,k=Math.min(j+a.length,e);return(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("div",{className:"text-sm text-muted-foreground",children:0===e?"No sessions match the current filters.":(0,b.jsxs)(b.Fragment,{children:["Showing ",j+1,"-",k," of ",e," sessions",e!==d&&(0,b.jsxs)("span",{className:"ml-1",children:["(filtered from ",d," total)"]})]})}),(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg overflow-hidden",children:[(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:"w-full",children:[(0,b.jsx)("thead",{children:(0,b.jsxs)("tr",{className:"border-b border-border bg-muted/50",children:[(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground w-12",children:(0,b.jsx)("span",{className:"sr-only",children:"Icon"})}),(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground",children:"Project"}),(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground",children:"Session ID"}),(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground",children:"Modified"}),c.filter(a=>"date"!==a.type).map(a=>(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground",children:a.label},a.name))]})}),(0,b.jsx)("tbody",{children:0===a.length?(0,b.jsx)("tr",{children:(0,b.jsx)("td",{colSpan:4+c.filter(a=>"date"!==a.type).length,className:"px-4 py-8 text-center text-muted-foreground",children:"No sessions found matching the filters."})}):a.map(a=>(0,b.jsxs)("tr",{className:"border-b border-border hover:bg-muted/50 transition-colors",children:[(0,b.jsx)("td",{className:"px-4 py-3",children:(0,b.jsx)(p.File,{className:"w-5 h-5 text-primary"})}),(0,b.jsx)("td",{className:"px-4 py-3 text-sm text-foreground",children:(0,b.jsx)(o.default,{href:`/project/${encodeURIComponent(a.projectName)}`,className:"hover:text-primary transition-colors",children:a.projectName})}),(0,b.jsx)("td",{className:"px-4 py-3 text-sm max-w-xs",children:(0,b.jsx)(o.default,{href:`/project/${encodeURIComponent(a.projectName)}/session/${encodeURIComponent(a.sessionId)}`,className:"font-semibold text-foreground hover:text-primary transition-colors break-words break-all",children:a.sessionId})}),(0,b.jsx)("td",{className:"px-4 py-3 text-sm text-muted-foreground",children:a.lastModifiedFormatted}),c.filter(a=>"date"!==a.type).map(c=>{var d;return(0,b.jsx)("td",{className:"px-4 py-3 text-sm text-muted-foreground",children:void 0===(d=a.filterValues[c.name])?"-":"boolean"==typeof d?d?"Yes":"No":String(d)},c.name)})]},`${a.projectName}/${a.sessionId}`))})]})}),e>0&&i>1&&(0,b.jsx)(q.default,{currentPage:f,totalPages:i,onPageChange:h})]})]})}var s=a.i(96221);function t(a,b){let c={};for(let d of b){let b=a[d.name];if(b)switch(d.type){case"boolean":c[d.name]={type:"boolean",value:b};break;case"number":c[d.name]={type:"number",min:b.min,max:b.max};break;case"string":c[d.name]={type:"string",selected:Array.from(b)};break;case"date":c[d.name]={type:"date",from:b.from,to:b.to}}}return c}function u(a,b){for(let c of b){let b=a[c.name];if(b)switch(c.type){case"boolean":if("all"!==b)return!0;break;case"number":if(b.min!==c.min||b.max!==c.max)return!0;break;case"string":if(b.size!==c.values.length)return!0;break;case"date":if(null!==b.from||null!==b.to)return!0}}return!1}function v({viewName:a}){let d=(0,f.useUrlParams)(),h=(0,c.useRef)(null);null===h.current&&(h.current=d.getAll());let k=(0,c.useRef)(!1),[m,o]=(0,c.useState)(null),[p,q]=(0,c.useState)([]),[v,w]=(0,c.useState)(!0),[x,y]=(0,c.useState)(null),[z,A]=(0,c.useState)(!1),[B,C]=(0,c.useState)({}),[D,E]=(0,c.useState)(()=>(0,g.paramToPage)(d.get("page"))),F=(0,c.useRef)(null);(0,c.useEffect)(()=>()=>{F.current&&clearTimeout(F.current)},[]);let G=(0,c.useCallback)(async(b,c)=>{w(!0),y(null);try{let d=await e(a,{filters:b,page:c??1,pageSize:25});d.ok?d.hasFilters?(o(d.payload),d.payload.filterMeta.length>0&&q(d.payload.filterMeta)):A(!0):y(d.error)}catch(a){y(a instanceof Error?a.message:String(a))}finally{w(!1)}},[a]);(0,c.useEffect)(()=>{G().then(()=>{})},[G]),(0,c.useEffect)(()=>{if(p.length>0&&0===Object.keys(B).length){let a=function(a){let b={};for(let c of a)switch(c.type){case"boolean":b[c.name]="all";break;case"number":b[c.name]={min:c.min,max:c.max};break;case"string":b[c.name]=new Set(c.values);break;case"date":b[c.name]={from:null,to:null}}return b}(p),b=h.current,c=!1;if(b)for(let d of p){let e=b.get(d.name),f=(0,g.paramToActiveFilter)(d,e);null!==f&&(a[d.name]=f,c=!0)}if(C(a),k.current=!0,c||b&&(0,g.paramToPage)(b.get("page"))>1){let c=b?(0,g.paramToPage)(b.get("page")):1,d=u(a,p)?t(a,p):void 0;E(c),G(d,c)}}},[p]);let H=(0,c.useCallback)((a,b)=>{if(!k.current)return;let c={page:(0,g.pageToParam)(b)};for(let b of p)c[b.name]=(0,g.activeFilterToParam)(b,a[b.name]);d.setAll(c)},[p,d]),I=(0,c.useCallback)((a,b)=>{C(c=>{let d={...c,[a]:b};return F.current&&clearTimeout(F.current),F.current=setTimeout(()=>{let a=u(d,p)?t(d,p):void 0;E(1),G(a,1),H(d,1)},300),d})},[p,G,H]),J=(0,c.useCallback)(a=>{E(a),G(u(B,p)?t(B,p):void 0,a),H(B,a)},[B,p,G,H]);if(z)return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-6 text-center",children:[(0,b.jsx)("p",{className:"text-muted-foreground mb-2",children:"No filters are registered for this view."}),(0,b.jsxs)("p",{className:"text-sm text-muted-foreground",children:["Use ",(0,b.jsx)("code",{className:"text-foreground bg-muted px-1 py-0.5 rounded",children:"app.dashboard.view()"})," or"," ",(0,b.jsx)("code",{className:"text-foreground bg-muted px-1 py-0.5 rounded",children:"app.dashboard.filter()"})," in your evals file to register filters."]})]});if(v&&!m)return(0,b.jsxs)("div",{className:"flex items-center justify-center py-16",children:[(0,b.jsx)(s.Loader2,{className:"w-6 h-6 text-primary animate-spin mr-2"}),(0,b.jsx)("span",{className:"text-muted-foreground",children:"Computing dashboard filters..."})]});if(x&&!m)return(0,b.jsxs)("div",{className:"bg-destructive/10 border border-destructive/20 rounded-lg p-4",children:[(0,b.jsx)("p",{className:"text-sm text-destructive font-medium",children:"Failed to load dashboard"}),(0,b.jsx)("p",{className:"text-sm text-destructive/80 mt-1",children:x}),(0,b.jsx)("button",{onClick:()=>G(),className:"mt-3 px-3 py-1.5 text-sm bg-primary text-primary-foreground rounded-md hover:bg-primary/90 transition-colors",children:"Retry"})]});if(!m)return null;let K=p.length>0?p:m.filterMeta;return(0,b.jsxs)("div",{className:"space-y-6",children:[K.length>0&&(0,b.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:K.map(a=>{switch(a.type){case"boolean":return(0,b.jsx)(i,{meta:a,value:B[a.name]??"all",onChange:b=>I(a.name,b)},a.name);case"number":return(0,b.jsx)(j,{meta:a,value:B[a.name]??{min:a.min,max:a.max},onChange:b=>I(a.name,b)},a.name);case"string":return(0,b.jsx)(l,{meta:a,value:B[a.name]??new Set(a.values),onChange:b=>I(a.name,b)},a.name);case"date":return(0,b.jsx)(n,{meta:a,value:B[a.name]??{from:null,to:null},onChange:b=>I(a.name,b)},a.name)}})}),(0,b.jsxs)("div",{className:"text-xs text-muted-foreground",children:["Computed in ",m.totalDurationMs,"ms",v&&" (updating...)"]}),(0,b.jsx)(r,{sessions:m.sessions,filterMeta:K,totalCount:m.totalCount,matchingCount:m.matchingCount,page:m.page,pageSize:m.pageSize,onPageChange:J})]})}a.s(["default",()=>v],68765)},43911,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(5050);let e=(0,d.createServerReference)("40a83b2444cee0cb3f32870b296be0f6d3dff30cc3",d.callServer,void 0,d.findSourceMapURL,"computeAggregates"),f=(0,a.i(70106).default)("arrow-up-down",[["path",{d:"m21 16-4 4-4-4",key:"f6ql7i"}],["path",{d:"M17 20V4",key:"1ejh1v"}],["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}]]);function g({rows:a,columns:d}){let[e,g]=(0,c.useState)(null),[h,i]=(0,c.useState)("asc");if(0===a.length)return(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"No data returned from reduce function."});let j=e?[...a].sort((a,b)=>{let c="asc"===h?1:-1,d=a[e],f=b[e];return void 0===d&&void 0===f?0:void 0===d?1:void 0===f?-1:"string"==typeof d&&"string"==typeof f?d.localeCompare(f)*c:"boolean"==typeof d&&"boolean"==typeof f?(Number(d)-Number(f))*c:"number"==typeof d&&"number"==typeof f?(d-f)*c:String(d).localeCompare(String(f))*c}):a;return(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:"w-full text-sm",children:[(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{className:"border-b border-border",children:d.map(a=>(0,b.jsx)("th",{className:"px-3 py-2 text-left text-xs font-medium text-muted-foreground cursor-pointer hover:text-foreground select-none",onClick:()=>{e===a?i(a=>"asc"===a?"desc":"asc"):(g(a),i("desc"))},children:(0,b.jsxs)("span",{className:"inline-flex items-center gap-1",children:[a,(0,b.jsx)(f,{className:"w-3 h-3"})]})},a))})}),(0,b.jsx)("tbody",{children:j.map((a,c)=>(0,b.jsx)("tr",{className:"border-b border-border/50 hover:bg-muted/50",children:d.map(c=>{var d;return(0,b.jsx)("td",{className:"px-3 py-2 text-foreground",children:null==(d=a[c])?"—":"boolean"==typeof d?d?"Yes":"No":"number"==typeof d?Number.isInteger(d)?d.toLocaleString():d.toFixed(4):String(d)},c)})},c))})]})})}function h({aggregate:a}){return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4",children:[(0,b.jsx)("h4",{className:"text-sm font-medium text-foreground mb-3",children:a.label}),(0,b.jsx)(g,{rows:a.rows,columns:a.columns})]})}var i=a.i(96221);function j({viewName:a}){let[d,f]=(0,c.useState)(null),[g,j]=(0,c.useState)(!0),[k,l]=(0,c.useState)(null),m=(0,c.useCallback)(async()=>{j(!0),l(null);try{let b=await e(a);b.ok?b.hasAggregates&&f(b.payload):l(b.error)}catch(a){l(a instanceof Error?a.message:String(a))}finally{j(!1)}},[a]);return((0,c.useEffect)(()=>{m()},[m]),g&&!d)?(0,b.jsxs)("div",{className:"flex items-center justify-center py-8",children:[(0,b.jsx)(i.Loader2,{className:"w-5 h-5 text-primary animate-spin mr-2"}),(0,b.jsx)("span",{className:"text-sm text-muted-foreground",children:"Computing aggregates..."})]}):k&&!d?(0,b.jsxs)("div",{className:"bg-destructive/10 border border-destructive/20 rounded-lg p-4",children:[(0,b.jsx)("p",{className:"text-sm text-destructive font-medium",children:"Failed to compute aggregates"}),(0,b.jsx)("p",{className:"text-sm text-destructive/80 mt-1",children:k}),(0,b.jsx)("button",{onClick:()=>m(),className:"mt-3 px-3 py-1.5 text-sm bg-primary text-primary-foreground rounded-md hover:bg-primary/90 transition-colors",children:"Retry"})]}):d&&0!==d.aggregates.length?(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsx)("h3",{className:"text-lg font-medium text-foreground",children:"Aggregates"}),(0,b.jsxs)("span",{className:"text-xs text-muted-foreground",children:[d.totalSessions," sessions, ",d.totalDurationMs,"ms",g&&" (updating...)"]})]}),d.aggregates.map(a=>(0,b.jsx)(h,{aggregate:a},a.name))]}):null}a.s(["default",()=>j],43911)}];
1
+ module.exports=[96221,a=>{"use strict";let b=(0,a.i(70106).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);a.s(["Loader2",()=>b],96221)},68765,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(5050);let e=(0,d.createServerReference)("60464f5b613abcd43072ca3ca93d3cb051574edb93",d.callServer,void 0,d.findSourceMapURL,"computeDashboard");var f=a.i(90619),g=a.i(95947);let h=["all","true","false"];function i({meta:a,value:c,onChange:d}){return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4",children:[(0,b.jsx)("label",{className:"block text-sm font-medium text-foreground mb-2",children:a.label}),(0,b.jsx)("div",{className:"flex gap-1",children:h.map(a=>(0,b.jsx)("button",{onClick:()=>d(a),className:`flex-1 px-3 py-1.5 text-sm rounded-md transition-colors ${c===a?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-muted/80"}`,children:"all"===a?"All":"true"===a?"Yes":"No"},a))})]})}function j({meta:a,value:d,onChange:e}){let f=a.max-a.min,g=!Number.isInteger(a.min)||!Number.isInteger(a.max),h=f<=1?.01:g&&f<=10?.1:g||f<=10?1:f<=100?5:10,i=(0,c.useCallback)(a=>{let b=Number(a.target.value);isNaN(b)||e({...d,min:Math.min(b,d.max)})},[d,e]),j=(0,c.useCallback)(a=>{let b=Number(a.target.value);isNaN(b)||e({...d,max:Math.max(b,d.min)})},[d,e]),k=(0,c.useCallback)(a=>{let b=Number(a.target.value);e({...d,min:Math.min(b,d.max)})},[d,e]),l=(0,c.useCallback)(a=>{let b=Number(a.target.value);e({...d,max:Math.max(b,d.min)})},[d,e]);return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4",children:[(0,b.jsx)("label",{className:"block text-sm font-medium text-foreground mb-2",children:a.label}),(0,b.jsxs)("div",{className:"relative mb-3",children:[(0,b.jsx)("input",{type:"range",min:a.min,max:a.max,step:h,value:d.min,onChange:k,className:"absolute w-full pointer-events-none appearance-none bg-transparent [&::-webkit-slider-thumb]:pointer-events-auto [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:h-4 [&::-webkit-slider-thumb]:w-4 [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-primary [&::-webkit-slider-thumb]:cursor-pointer [&::-moz-range-thumb]:pointer-events-auto [&::-moz-range-thumb]:appearance-none [&::-moz-range-thumb]:h-4 [&::-moz-range-thumb]:w-4 [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:bg-primary [&::-moz-range-thumb]:border-0 [&::-moz-range-thumb]:cursor-pointer","aria-label":`${a.label} minimum`}),(0,b.jsx)("input",{type:"range",min:a.min,max:a.max,step:h,value:d.max,onChange:l,className:"absolute w-full pointer-events-none appearance-none bg-transparent [&::-webkit-slider-thumb]:pointer-events-auto [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:h-4 [&::-webkit-slider-thumb]:w-4 [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:bg-primary [&::-webkit-slider-thumb]:cursor-pointer [&::-moz-range-thumb]:pointer-events-auto [&::-moz-range-thumb]:appearance-none [&::-moz-range-thumb]:h-4 [&::-moz-range-thumb]:w-4 [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:bg-primary [&::-moz-range-thumb]:border-0 [&::-moz-range-thumb]:cursor-pointer","aria-label":`${a.label} maximum`}),(0,b.jsx)("div",{className:"h-1 bg-muted rounded w-full mt-2"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("input",{type:"number",min:a.min,max:a.max,step:h,value:d.min,onChange:i,className:"w-20 px-2 py-1 text-sm bg-input border border-border rounded-md text-foreground focus:outline-none focus:ring-2 focus:ring-ring","aria-label":`${a.label} minimum value`}),(0,b.jsx)("span",{className:"text-muted-foreground text-sm",children:"to"}),(0,b.jsx)("input",{type:"number",min:a.min,max:a.max,step:h,value:d.max,onChange:j,className:"w-20 px-2 py-1 text-sm bg-input border border-border rounded-md text-foreground focus:outline-none focus:ring-2 focus:ring-ring","aria-label":`${a.label} maximum value`})]})]})}var k=a.i(5784);function l({meta:a,value:d,onChange:e}){let[f,g]=(0,c.useState)(!1),h=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(!f)return;let a=a=>{h.current&&!h.current.contains(a.target)&&g(!1)};return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[f]);let i=(0,c.useCallback)(a=>{let b=new Set(d);b.has(a)?b.delete(a):b.add(a),e(b)},[d,e]),j=(0,c.useCallback)(()=>{e(new Set(a.values))},[a.values,e]),l=(0,c.useCallback)(()=>{e(new Set)},[e]),m=d.size,n=a.values.length,o=0===m?"None selected":m===n?"All selected":`${m} of ${n} selected`;return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4",ref:h,children:[(0,b.jsx)("label",{className:"block text-sm font-medium text-foreground mb-2",children:a.label}),(0,b.jsxs)("button",{onClick:()=>g(!f),className:"w-full flex items-center justify-between px-3 py-2 text-sm bg-input border border-border rounded-md text-foreground hover:border-primary/50 transition-colors","aria-expanded":f,children:[(0,b.jsx)("span",{className:"truncate",children:o}),(0,b.jsx)(k.ChevronDown,{className:`w-4 h-4 text-muted-foreground transition-transform ${f?"rotate-180":""}`})]}),f&&(0,b.jsxs)("div",{className:"mt-2 border border-border rounded-md bg-popover shadow-md max-h-60 overflow-y-auto",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 border-b border-border",children:[(0,b.jsx)("button",{onClick:j,className:"text-xs text-primary hover:text-primary/80 transition-colors",children:"Select All"}),(0,b.jsx)("span",{className:"text-muted-foreground text-xs",children:"|"}),(0,b.jsx)("button",{onClick:l,className:"text-xs text-primary hover:text-primary/80 transition-colors",children:"Clear"})]}),a.values.map(a=>(0,b.jsxs)("label",{className:"flex items-center gap-2 px-3 py-1.5 hover:bg-muted/50 cursor-pointer transition-colors",children:[(0,b.jsx)("input",{type:"checkbox",checked:d.has(a),onChange:()=>i(a),className:"rounded border-border text-primary focus:ring-ring"}),(0,b.jsx)("span",{className:"text-sm text-foreground truncate",children:a})]},a)),0===a.values.length&&(0,b.jsx)("div",{className:"px-3 py-2 text-sm text-muted-foreground",children:"No values available"})]})]})}var m=a.i(24451);function n({meta:a,value:c,onChange:d}){let e=null!==c.from||null!==c.to;return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,b.jsx)("label",{className:"block text-sm font-medium text-foreground",children:a.label}),e&&(0,b.jsx)("button",{onClick:()=>d({from:null,to:null}),className:"text-xs text-primary hover:text-primary/80 transition-colors",children:"Clear"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(m.default,{id:`filter-date-${a.name}-from`,value:null,stringValue:c.from,onChange:a=>d({...c,from:a||null}),"aria-label":`${a.label} from date`}),(0,b.jsx)("span",{className:"text-xs text-muted-foreground",children:"to"}),(0,b.jsx)(m.default,{id:`filter-date-${a.name}-to`,value:null,stringValue:c.to,onChange:a=>d({...c,to:a||null}),"aria-label":`${a.label} to date`})]})]})}var o=a.i(38246),p=a.i(35487),q=a.i(65967);function r({sessions:a,filterMeta:c,totalCount:d,matchingCount:e,page:f,pageSize:g,onPageChange:h}){let i=Math.ceil(e/g),j=(f-1)*g,k=Math.min(j+a.length,e);return(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("div",{className:"text-sm text-muted-foreground",children:0===e?"No sessions match the current filters.":(0,b.jsxs)(b.Fragment,{children:["Showing ",j+1,"-",k," of ",e," sessions",e!==d&&(0,b.jsxs)("span",{className:"ml-1",children:["(filtered from ",d," total)"]})]})}),(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg overflow-hidden",children:[(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:"w-full",children:[(0,b.jsx)("thead",{children:(0,b.jsxs)("tr",{className:"border-b border-border bg-muted/50",children:[(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground w-12",children:(0,b.jsx)("span",{className:"sr-only",children:"Icon"})}),(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground",children:"Project"}),(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground",children:"Session ID"}),(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground",children:"Modified"}),c.filter(a=>"date"!==a.type).map(a=>(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground",children:a.label},a.name))]})}),(0,b.jsx)("tbody",{children:0===a.length?(0,b.jsx)("tr",{children:(0,b.jsx)("td",{colSpan:4+c.filter(a=>"date"!==a.type).length,className:"px-4 py-8 text-center text-muted-foreground",children:"No sessions found matching the filters."})}):a.map(a=>(0,b.jsxs)("tr",{className:"border-b border-border hover:bg-muted/50 transition-colors",children:[(0,b.jsx)("td",{className:"px-4 py-3",children:(0,b.jsx)(p.File,{className:"w-5 h-5 text-primary"})}),(0,b.jsx)("td",{className:"px-4 py-3 text-sm text-foreground",children:(0,b.jsx)(o.default,{href:`/project/${encodeURIComponent(a.projectName)}`,className:"hover:text-primary transition-colors",children:a.projectName})}),(0,b.jsx)("td",{className:"px-4 py-3 text-sm max-w-xs",children:(0,b.jsx)(o.default,{href:`/project/${encodeURIComponent(a.projectName)}/session/${encodeURIComponent(a.sessionId)}`,className:"font-semibold text-foreground hover:text-primary transition-colors break-words break-all",children:a.sessionId})}),(0,b.jsx)("td",{className:"px-4 py-3 text-sm text-muted-foreground",children:a.lastModifiedFormatted}),c.filter(a=>"date"!==a.type).map(c=>{var d;return(0,b.jsx)("td",{className:"px-4 py-3 text-sm text-muted-foreground",children:void 0===(d=a.filterValues[c.name])?"-":"boolean"==typeof d?d?"Yes":"No":String(d)},c.name)})]},`${a.projectName}/${a.sessionId}`))})]})}),e>0&&i>1&&(0,b.jsx)(q.default,{currentPage:f,totalPages:i,onPageChange:h})]})]})}var s=a.i(96221);function t(a,b){let c={};for(let d of b){let b=a[d.name];if(b)switch(d.type){case"boolean":c[d.name]={type:"boolean",value:b};break;case"number":c[d.name]={type:"number",min:b.min,max:b.max};break;case"string":c[d.name]={type:"string",selected:Array.from(b)};break;case"date":c[d.name]={type:"date",from:b.from,to:b.to}}}return c}function u(a,b){for(let c of b){let b=a[c.name];if(b)switch(c.type){case"boolean":if("all"!==b)return!0;break;case"number":if(b.min!==c.min||b.max!==c.max)return!0;break;case"string":if(b.size!==c.values.length)return!0;break;case"date":if(null!==b.from||null!==b.to)return!0}}return!1}function v({viewName:a}){let d=(0,f.useUrlParams)(),h=(0,c.useRef)(null);null===h.current&&(h.current=d.getAll());let k=(0,c.useRef)(!1),[m,o]=(0,c.useState)(null),[p,q]=(0,c.useState)([]),[v,w]=(0,c.useState)(!0),[x,y]=(0,c.useState)(null),[z,A]=(0,c.useState)(!1),[B,C]=(0,c.useState)({}),[D,E]=(0,c.useState)(()=>(0,g.paramToPage)(d.get("page"))),F=(0,c.useRef)(null);(0,c.useEffect)(()=>()=>{F.current&&clearTimeout(F.current)},[]);let G=(0,c.useCallback)(async(b,c)=>{w(!0),y(null);try{let d=await e(a,{filters:b,page:c??1,pageSize:25});d.ok?d.hasFilters?(o(d.payload),d.payload.filterMeta.length>0&&q(d.payload.filterMeta)):A(!0):y(d.error)}catch(a){y(a instanceof Error?a.message:String(a))}finally{w(!1)}},[a]);(0,c.useEffect)(()=>{G().then(()=>{})},[G]),(0,c.useEffect)(()=>{if(p.length>0&&0===Object.keys(B).length){let a=function(a){let b={};for(let c of a)switch(c.type){case"boolean":b[c.name]="all";break;case"number":b[c.name]={min:c.min,max:c.max};break;case"string":b[c.name]=new Set(c.values);break;case"date":b[c.name]={from:null,to:null}}return b}(p),b=h.current,c=!1;if(b)for(let d of p){let e=b.get(d.name),f=(0,g.paramToActiveFilter)(d,e);null!==f&&(a[d.name]=f,c=!0)}if(C(a),k.current=!0,c||b&&(0,g.paramToPage)(b.get("page"))>1){let c=b?(0,g.paramToPage)(b.get("page")):1,d=u(a,p)?t(a,p):void 0;E(c),G(d,c)}}},[p]);let H=(0,c.useCallback)((a,b)=>{if(!k.current)return;let c={page:(0,g.pageToParam)(b)};for(let b of p)c[b.name]=(0,g.activeFilterToParam)(b,a[b.name]);d.setAll(c)},[p,d]),I=(0,c.useCallback)((a,b)=>{C(c=>{let d={...c,[a]:b};return F.current&&clearTimeout(F.current),F.current=setTimeout(()=>{let a=u(d,p)?t(d,p):void 0;E(1),G(a,1),H(d,1)},300),d})},[p,G,H]),J=(0,c.useCallback)(a=>{E(a),G(u(B,p)?t(B,p):void 0,a),H(B,a)},[B,p,G,H]);if(z)return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-6 text-center",children:[(0,b.jsx)("p",{className:"text-muted-foreground mb-2",children:"No filters are registered for this view."}),(0,b.jsxs)("p",{className:"text-sm text-muted-foreground",children:["Use ",(0,b.jsx)("code",{className:"text-foreground bg-muted px-1 py-0.5 rounded",children:"app.dashboard.view()"})," or"," ",(0,b.jsx)("code",{className:"text-foreground bg-muted px-1 py-0.5 rounded",children:"app.dashboard.filter()"})," in your evals file to register filters."]})]});if(v&&!m)return(0,b.jsxs)("div",{className:"flex items-center justify-center py-16",children:[(0,b.jsx)(s.Loader2,{className:"w-6 h-6 text-primary animate-spin mr-2"}),(0,b.jsx)("span",{className:"text-muted-foreground",children:"Computing dashboard filters..."})]});if(x&&!m)return(0,b.jsxs)("div",{className:"bg-destructive/10 border border-destructive/20 rounded-lg p-4",children:[(0,b.jsx)("p",{className:"text-sm text-destructive font-medium",children:"Failed to load dashboard"}),(0,b.jsx)("p",{className:"text-sm text-destructive/80 mt-1",children:x}),(0,b.jsx)("button",{onClick:()=>G(),className:"mt-3 px-3 py-1.5 text-sm bg-primary text-primary-foreground rounded-md hover:bg-primary/90 transition-colors",children:"Retry"})]});if(!m)return null;let K=p.length>0?p:m.filterMeta;return(0,b.jsxs)("div",{className:"space-y-6",children:[K.length>0&&(0,b.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:K.map(a=>{switch(a.type){case"boolean":return(0,b.jsx)(i,{meta:a,value:B[a.name]??"all",onChange:b=>I(a.name,b)},a.name);case"number":return(0,b.jsx)(j,{meta:a,value:B[a.name]??{min:a.min,max:a.max},onChange:b=>I(a.name,b)},a.name);case"string":return(0,b.jsx)(l,{meta:a,value:B[a.name]??new Set(a.values),onChange:b=>I(a.name,b)},a.name);case"date":return(0,b.jsx)(n,{meta:a,value:B[a.name]??{from:null,to:null},onChange:b=>I(a.name,b)},a.name)}})}),(0,b.jsxs)("div",{className:"text-xs text-muted-foreground",children:["Computed in ",m.totalDurationMs,"ms",v&&" (updating...)"]}),(0,b.jsx)(r,{sessions:m.sessions,filterMeta:K,totalCount:m.totalCount,matchingCount:m.matchingCount,page:m.page,pageSize:m.pageSize,onPageChange:J})]})}a.s(["default",()=>v],68765)},43911,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(5050);let e=(0,d.createServerReference)("4044be55ec9baafd1a5ea37afd2d32e7c6e2a080f2",d.callServer,void 0,d.findSourceMapURL,"computeAggregates"),f=(0,a.i(70106).default)("arrow-up-down",[["path",{d:"m21 16-4 4-4-4",key:"f6ql7i"}],["path",{d:"M17 20V4",key:"1ejh1v"}],["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}]]);function g({rows:a,columns:d}){let[e,g]=(0,c.useState)(null),[h,i]=(0,c.useState)("asc");if(0===a.length)return(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"No data returned from reduce function."});let j=e?[...a].sort((a,b)=>{let c="asc"===h?1:-1,d=a[e],f=b[e];return void 0===d&&void 0===f?0:void 0===d?1:void 0===f?-1:"string"==typeof d&&"string"==typeof f?d.localeCompare(f)*c:"boolean"==typeof d&&"boolean"==typeof f?(Number(d)-Number(f))*c:"number"==typeof d&&"number"==typeof f?(d-f)*c:String(d).localeCompare(String(f))*c}):a;return(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:"w-full text-sm",children:[(0,b.jsx)("thead",{children:(0,b.jsx)("tr",{className:"border-b border-border",children:d.map(a=>(0,b.jsx)("th",{className:"px-3 py-2 text-left text-xs font-medium text-muted-foreground cursor-pointer hover:text-foreground select-none",onClick:()=>{e===a?i(a=>"asc"===a?"desc":"asc"):(g(a),i("desc"))},children:(0,b.jsxs)("span",{className:"inline-flex items-center gap-1",children:[a,(0,b.jsx)(f,{className:"w-3 h-3"})]})},a))})}),(0,b.jsx)("tbody",{children:j.map((a,c)=>(0,b.jsx)("tr",{className:"border-b border-border/50 hover:bg-muted/50",children:d.map(c=>{var d;return(0,b.jsx)("td",{className:"px-3 py-2 text-foreground",children:null==(d=a[c])?"—":"boolean"==typeof d?d?"Yes":"No":"number"==typeof d?Number.isInteger(d)?d.toLocaleString():d.toFixed(4):String(d)},c)})},c))})]})})}function h({aggregate:a}){return(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4",children:[(0,b.jsx)("h4",{className:"text-sm font-medium text-foreground mb-3",children:a.label}),(0,b.jsx)(g,{rows:a.rows,columns:a.columns})]})}var i=a.i(96221);function j({viewName:a}){let[d,f]=(0,c.useState)(null),[g,j]=(0,c.useState)(!0),[k,l]=(0,c.useState)(null),m=(0,c.useCallback)(async()=>{j(!0),l(null);try{let b=await e(a);b.ok?b.hasAggregates&&f(b.payload):l(b.error)}catch(a){l(a instanceof Error?a.message:String(a))}finally{j(!1)}},[a]);return((0,c.useEffect)(()=>{m()},[m]),g&&!d)?(0,b.jsxs)("div",{className:"flex items-center justify-center py-8",children:[(0,b.jsx)(i.Loader2,{className:"w-5 h-5 text-primary animate-spin mr-2"}),(0,b.jsx)("span",{className:"text-sm text-muted-foreground",children:"Computing aggregates..."})]}):k&&!d?(0,b.jsxs)("div",{className:"bg-destructive/10 border border-destructive/20 rounded-lg p-4",children:[(0,b.jsx)("p",{className:"text-sm text-destructive font-medium",children:"Failed to compute aggregates"}),(0,b.jsx)("p",{className:"text-sm text-destructive/80 mt-1",children:k}),(0,b.jsx)("button",{onClick:()=>m(),className:"mt-3 px-3 py-1.5 text-sm bg-primary text-primary-foreground rounded-md hover:bg-primary/90 transition-colors",children:"Retry"})]}):d&&0!==d.aggregates.length?(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsx)("h3",{className:"text-lg font-medium text-foreground",children:"Aggregates"}),(0,b.jsxs)("span",{className:"text-xs text-muted-foreground",children:[d.totalSessions," sessions, ",d.totalDurationMs,"ms",g&&" (updating...)"]})]}),d.aggregates.map(a=>(0,b.jsx)(h,{aggregate:a},a.name))]}):null}a.s(["default",()=>j],43911)}];
2
2
 
3
3
  //# sourceMappingURL=_76ab933f._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[77728,a=>{"use strict";var b=a.i(37936),c=a.i(5246),d=a.i(76668),e=a.i(9223);async function f(a){let b=a.get("username"),f=a.get("password"),g=a.get("redirectTo")||"/";if(!b||!f)return{error:"Username and password are required"};let i=process.env.CLAUDEYE_AUTH_USERS??"",j=(0,e.parseAuthUsers)(i),k=!1;for(let a of j){let c=h(a.username,b),d=h(a.password,f);c&&d&&(k=!0)}if(!k)return(0,d.logActivity)(b,"login-failed"),{error:"Invalid username or password"};let l=process.env.CLAUDEYE_AUTH_SECRET??"",m=await (0,e.createSessionCookie)(b,l),n=await (0,c.cookies)();return n.set("claudeye_session",m,{httpOnly:!0,sameSite:"lax",path:"/",maxAge:86400}),n.set("claudeye_auth","1",{sameSite:"lax",path:"/",maxAge:86400}),(0,d.logActivity)(b,"login"),{redirectTo:g}}async function g(){let{getRequestUsername:b}=await a.A(47538),e=await b();(0,d.logActivity)(e,"logout");let f=await (0,c.cookies)();return f.delete("claudeye_session"),f.delete("claudeye_auth"),{redirectTo:"/login"}}function h(a,b){if(a.length!==b.length){let c=Math.max(a.length,b.length);for(let d=0;d<c;d++)a.charCodeAt(d%a.length),b.charCodeAt(d%b.length);return!1}let c=0;for(let d=0;d<a.length;d++)c|=a.charCodeAt(d)^b.charCodeAt(d);return 0===c}(0,a.i(13095).ensureServerEntryExports)([f,g]),(0,b.registerServerReference)(f,"40af67c10517fe21de69837d06007283ec56bdad2c",null),(0,b.registerServerReference)(g,"00ae4def7c8994d4c7faa44c651a56c4e994d251a8",null),a.s(["login",()=>f,"logout",()=>g])},76668,a=>{"use strict";let b={info:0,warn:1,error:2},c="warn";function d(){let a=(process.env.CLAUDEYE_LOG_LEVEL??"").toLowerCase();c="info"===a||"warn"===a||"error"===a?a:"warn"}function e(){return c}function f(a){return b[a]>=b[c]}function g(a){return`[claudeye ${new Date().toISOString()}] ${a}`}function h(a,b){f("info")&&(void 0!==b?console.log(g("INFO"),a,b):console.log(g("INFO"),a))}function i(a,b){f("warn")&&(void 0!==b?console.warn(g("WARN"),a,b):console.warn(g("WARN"),a))}function j(a,b){void 0!==b?console.error(g("ERROR"),a,b):console.error(g("ERROR"),a)}function k(a,b,c){if(!f("info"))return;let d=[`user=${a}`,`action=${b}`];c&&d.push(c),console.log(g("ACTIVITY"),d.join(" "))}async function l(){try{let{cookies:b}=await a.A(23804),c=await b(),d=c.get("claudeye_session")?.value;if(!d)return"anonymous";let e=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:f}=await a.A(76958);return await f(d,e)??"anonymous"}catch{return"anonymous"}}a.s(["getLogLevel",()=>e,"getRequestUsername",()=>l,"initLogger",()=>d,"logActivity",()=>k,"logError",()=>j,"logInfo",()=>h,"logWarn",()=>i])},37936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},13095,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},9223,a=>{"use strict";function b(a){let b=new Uint8Array(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function c(a){let b=a.replace(/-/g,"+").replace(/_/g,"/"),c=atob(b+"=".repeat((4-b.length%4)%4)),d=new Uint8Array(c.length);for(let a=0;a<c.length;a++)d[a]=c.charCodeAt(a);return d}async function d(a){let b=new TextEncoder;return crypto.subtle.importKey("raw",b.encode(a),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"])}async function e(a,c){let e=JSON.stringify({u:a,e:Date.now()+864e5}),f=new TextEncoder().encode(e),g=await d(c),h=await crypto.subtle.sign("HMAC",g,f);return`${b(f.buffer)}.${b(h)}`}async function f(a,b){let e=a.indexOf(".");if(e<0)return null;try{let f=a.slice(0,e),g=a.slice(e+1),h=c(f),i=c(g),j=await d(b);if(!await crypto.subtle.verify("HMAC",j,i.buffer,h.buffer))return null;let{u:k,e:l}=JSON.parse(new TextDecoder().decode(h));if("number"!=typeof l||Date.now()>l)return null;return"string"==typeof k?k:null}catch{return null}}function g(a){return a.trim()?a.split(",").reduce((a,b)=>{let c=b.indexOf(":");return c>0&&a.push({username:b.slice(0,c),password:b.slice(c+1)}),a},[]):[]}a.s(["createSessionCookie",()=>e,"parseAuthUsers",()=>g,"verifySessionCookie",()=>f])},51661,a=>{"use strict";var b=a.i(77728);a.s([],57265),a.i(57265),a.s(["00ae4def7c8994d4c7faa44c651a56c4e994d251a8",()=>b.logout,"40af67c10517fe21de69837d06007283ec56bdad2c",()=>b.login],51661)},23804,a=>{a.v(a=>Promise.resolve().then(()=>a(5246)))},76958,a=>{a.v(a=>Promise.resolve().then(()=>a(9223)))},47538,a=>{a.v(a=>Promise.resolve().then(()=>a(76668)))}];
1
+ module.exports=[77728,a=>{"use strict";var b=a.i(37936),c=a.i(5246),d=a.i(76668),e=a.i(9223);async function f(a){let b=a.get("username"),f=a.get("password"),g=a.get("redirectTo")||"/";if(!b||!f)return{error:"Username and password are required"};let i=process.env.CLAUDEYE_AUTH_USERS??"",j=(0,e.parseAuthUsers)(i),k=!1;for(let a of j){let c=h(a.username,b),d=h(a.password,f);c&&d&&(k=!0)}if(!k)return(0,d.logActivity)(b,"login-failed"),{error:"Invalid username or password"};let l=process.env.CLAUDEYE_AUTH_SECRET??"",m=await (0,e.createSessionCookie)(b,l),n=await (0,c.cookies)();return n.set("claudeye_session",m,{httpOnly:!0,sameSite:"lax",path:"/",maxAge:86400}),n.set("claudeye_auth","1",{sameSite:"lax",path:"/",maxAge:86400}),(0,d.logActivity)(b,"login"),{redirectTo:g}}async function g(){let{getRequestUsername:b}=await a.A(47538),e=await b();(0,d.logActivity)(e,"logout");let f=await (0,c.cookies)();return f.delete("claudeye_session"),f.delete("claudeye_auth"),{redirectTo:"/login"}}function h(a,b){if(a.length!==b.length){let c=Math.max(a.length,b.length);for(let d=0;d<c;d++)a.charCodeAt(d%a.length),b.charCodeAt(d%b.length);return!1}let c=0;for(let d=0;d<a.length;d++)c|=a.charCodeAt(d)^b.charCodeAt(d);return 0===c}(0,a.i(13095).ensureServerEntryExports)([f,g]),(0,b.registerServerReference)(f,"400a0a63ed462ed8f7f93b1b4eb2e9b242a48b82c0",null),(0,b.registerServerReference)(g,"0011e19243e758bfdf09fcc5511e20fd6495c151bc",null),a.s(["login",()=>f,"logout",()=>g])},76668,a=>{"use strict";let b={info:0,warn:1,error:2},c="warn";function d(){let a=(process.env.CLAUDEYE_LOG_LEVEL??"").toLowerCase();c="info"===a||"warn"===a||"error"===a?a:"warn"}function e(){return c}function f(a){return b[a]>=b[c]}function g(a){return`[claudeye ${new Date().toISOString()}] ${a}`}function h(a,b){f("info")&&(void 0!==b?console.log(g("INFO"),a,b):console.log(g("INFO"),a))}function i(a,b){f("warn")&&(void 0!==b?console.warn(g("WARN"),a,b):console.warn(g("WARN"),a))}function j(a,b){void 0!==b?console.error(g("ERROR"),a,b):console.error(g("ERROR"),a)}function k(a,b,c){if(!f("info"))return;let d=[`user=${a}`,`action=${b}`];c&&d.push(c),console.log(g("ACTIVITY"),d.join(" "))}async function l(){try{let{cookies:b}=await a.A(23804),c=await b(),d=c.get("claudeye_session")?.value;if(!d)return"anonymous";let e=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:f}=await a.A(76958);return await f(d,e)??"anonymous"}catch{return"anonymous"}}a.s(["getLogLevel",()=>e,"getRequestUsername",()=>l,"initLogger",()=>d,"logActivity",()=>k,"logError",()=>j,"logInfo",()=>h,"logWarn",()=>i])},37936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},13095,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},9223,a=>{"use strict";function b(a){let b=new Uint8Array(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function c(a){let b=a.replace(/-/g,"+").replace(/_/g,"/"),c=atob(b+"=".repeat((4-b.length%4)%4)),d=new Uint8Array(c.length);for(let a=0;a<c.length;a++)d[a]=c.charCodeAt(a);return d}async function d(a){let b=new TextEncoder;return crypto.subtle.importKey("raw",b.encode(a),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"])}async function e(a,c){let e=JSON.stringify({u:a,e:Date.now()+864e5}),f=new TextEncoder().encode(e),g=await d(c),h=await crypto.subtle.sign("HMAC",g,f);return`${b(f.buffer)}.${b(h)}`}async function f(a,b){let e=a.indexOf(".");if(e<0)return null;try{let f=a.slice(0,e),g=a.slice(e+1),h=c(f),i=c(g),j=await d(b);if(!await crypto.subtle.verify("HMAC",j,i.buffer,h.buffer))return null;let{u:k,e:l}=JSON.parse(new TextDecoder().decode(h));if("number"!=typeof l||Date.now()>l)return null;return"string"==typeof k?k:null}catch{return null}}function g(a){return a.trim()?a.split(",").reduce((a,b)=>{let c=b.indexOf(":");return c>0&&a.push({username:b.slice(0,c),password:b.slice(c+1)}),a},[]):[]}a.s(["createSessionCookie",()=>e,"parseAuthUsers",()=>g,"verifySessionCookie",()=>f])},51661,a=>{"use strict";var b=a.i(77728);a.s([],57265),a.i(57265),a.s(["0011e19243e758bfdf09fcc5511e20fd6495c151bc",()=>b.logout,"400a0a63ed462ed8f7f93b1b4eb2e9b242a48b82c0",()=>b.login],51661)},23804,a=>{a.v(a=>Promise.resolve().then(()=>a(5246)))},76958,a=>{a.v(a=>Promise.resolve().then(()=>a(9223)))},47538,a=>{a.v(a=>Promise.resolve().then(()=>a(76668)))}];
3
3
 
4
4
  //# sourceMappingURL=_7ae321cd._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[50871,a=>{"use strict";async function b(a,b,c){let d=[],e=performance.now(),f=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,g=!1;if(f)try{await f(b)||(g=!0)}catch{g=!0}if(g)for(let b of a)d.push(c.skipResult(b));else{let e=a.map(async a=>{if(a.condition)try{if(!await a.condition(b))return c.skipResult(a)}catch(b){return c.errorResult(a,`Condition error: ${b instanceof Error?b.message:String(b)}`,0)}let d=performance.now();try{let e=await a.fn(b),f=Math.round(performance.now()-d);return c.successResult(a,e,f)}catch(e){let b=Math.round(performance.now()-d);return c.errorResult(a,e instanceof Error?e.message:String(e),b)}});for(let a of(await Promise.allSettled(e)))d.push("fulfilled"===a.status?a.value:c.unexpectedResult())}let h=Math.round(performance.now()-e);return c.buildSummary(d,h)}a.s(["runAll",()=>b],50871)},31810,a=>{"use strict";var b=a.i(46325),c=a.i(50871);async function d(a,d,e,f,g,h){let i=g??(0,b.getRegisteredEnrichers)(),j={entries:a,stats:d,projectName:e,sessionId:f,source:"session",...h};return(0,c.runAll)(i,j,{skipResult:a=>({name:a.name,data:{},durationMs:0,skipped:!0}),successResult:(a,b,c)=>({name:a.name,data:b,durationMs:c}),errorResult:(a,b,c)=>({name:a.name,data:{},durationMs:c,error:b}),unexpectedResult:()=>({name:"?",data:{},durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0;for(let b of a)b.skipped?d++:b.error&&c++;return{results:a,totalDurationMs:b,errorCount:c,skippedCount:d}}})}a.s(["runAllEnrichers",()=>d])},86736,a=>{"use strict";var b=a.i(37936),c=a.i(62733),d=a.i(46325),e=a.i(31810),f=a.i(83397),g=a.i(61542);a.i(651);var h=a.i(46721),i=a.i(70427);async function j(a,b,k,l=!1){try{await (0,c.ensureEvalsLoaded)();let j=(0,d.getSessionScopedEnrichers)().find(a=>a.name===k);if(!j)return{ok:!1,error:`Enricher "${k}" not found`};let m=await (0,h.hashSessionFile)(a,b);if(!l&&m){let c=(0,h.hashItemCode)(j.fn),d=await (0,i.getPerItemCacheWithHook)("enrichments",a,b,j.name,c,m);if(d)return{ok:!0,result:d.value}}let{entries:n,rawLines:o}=await (0,f.getCachedSessionLog)(a,b),p=(0,g.calculateLogStats)(n),q=(await (0,e.runAllEnrichers)(o,p,a,b,[j],{source:"session"})).results[0];if(!q)return{ok:!1,error:"No result returned from enricher"};if(m){let c=(0,h.hashItemCode)(j.fn);await (0,i.setPerItemCache)("enrichments",a,b,j.name,c,q,m)}return{ok:!0,result:q}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}(0,a.i(13095).ensureServerEntryExports)([j]),(0,b.registerServerReference)(j,"78241bd89966e9760d3e813be28274d6a01d0f83a3",null),a.s(["processSessionEnrichment",()=>j])}];
1
+ module.exports=[50871,a=>{"use strict";async function b(a,b,c){let d=[],e=performance.now(),f=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,g=!1;if(f)try{await f(b)||(g=!0)}catch{g=!0}if(g)for(let b of a)d.push(c.skipResult(b));else{let e=a.map(async a=>{if(a.condition)try{if(!await a.condition(b))return c.skipResult(a)}catch(b){return c.errorResult(a,`Condition error: ${b instanceof Error?b.message:String(b)}`,0)}let d=performance.now();try{let e=await a.fn(b),f=Math.round(performance.now()-d);return c.successResult(a,e,f)}catch(e){let b=Math.round(performance.now()-d);return c.errorResult(a,e instanceof Error?e.message:String(e),b)}});for(let a of(await Promise.allSettled(e)))d.push("fulfilled"===a.status?a.value:c.unexpectedResult())}let h=Math.round(performance.now()-e);return c.buildSummary(d,h)}a.s(["runAll",()=>b],50871)},31810,a=>{"use strict";var b=a.i(46325),c=a.i(50871);async function d(a,d,e,f,g,h){let i=g??(0,b.getRegisteredEnrichers)(),j={entries:a,stats:d,projectName:e,sessionId:f,source:"session",...h};return(0,c.runAll)(i,j,{skipResult:a=>({name:a.name,data:{},durationMs:0,skipped:!0}),successResult:(a,b,c)=>({name:a.name,data:b,durationMs:c}),errorResult:(a,b,c)=>({name:a.name,data:{},durationMs:c,error:b}),unexpectedResult:()=>({name:"?",data:{},durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0;for(let b of a)b.skipped?d++:b.error&&c++;return{results:a,totalDurationMs:b,errorCount:c,skippedCount:d}}})}a.s(["runAllEnrichers",()=>d])},86736,a=>{"use strict";var b=a.i(37936),c=a.i(62733),d=a.i(46325),e=a.i(31810),f=a.i(83397),g=a.i(61542);a.i(651);var h=a.i(46721),i=a.i(70427);async function j(a,b,k,l=!1){try{await (0,c.ensureEvalsLoaded)();let j=(0,d.getSessionScopedEnrichers)().find(a=>a.name===k);if(!j)return{ok:!1,error:`Enricher "${k}" not found`};let m=await (0,h.hashSessionFile)(a,b);if(!l&&m){let c=(0,h.hashItemCode)(j.fn),d=await (0,i.getPerItemCacheWithHook)("enrichments",a,b,j.name,c,m);if(d)return{ok:!0,result:d.value}}let{entries:n,rawLines:o}=await (0,f.getCachedSessionLog)(a,b),p=(0,g.calculateLogStats)(n),q=(await (0,e.runAllEnrichers)(o,p,a,b,[j],{source:"session"})).results[0];if(!q)return{ok:!1,error:"No result returned from enricher"};if(m){let c=(0,h.hashItemCode)(j.fn);await (0,i.setPerItemCache)("enrichments",a,b,j.name,c,q,m)}return{ok:!0,result:q}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}(0,a.i(13095).ensureServerEntryExports)([j]),(0,b.registerServerReference)(j,"78817dc7a7bae83af087df1325dd5caa5fb00b7fb7",null),a.s(["processSessionEnrichment",()=>j])}];
2
2
 
3
3
  //# sourceMappingURL=_87e025a1._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[77728,a=>{"use strict";var b=a.i(37936),c=a.i(5246),d=a.i(76668),e=a.i(9223);async function f(a){let b=a.get("username"),f=a.get("password"),g=a.get("redirectTo")||"/";if(!b||!f)return{error:"Username and password are required"};let i=process.env.CLAUDEYE_AUTH_USERS??"",j=(0,e.parseAuthUsers)(i),k=!1;for(let a of j){let c=h(a.username,b),d=h(a.password,f);c&&d&&(k=!0)}if(!k)return(0,d.logActivity)(b,"login-failed"),{error:"Invalid username or password"};let l=process.env.CLAUDEYE_AUTH_SECRET??"",m=await (0,e.createSessionCookie)(b,l),n=await (0,c.cookies)();return n.set("claudeye_session",m,{httpOnly:!0,sameSite:"lax",path:"/",maxAge:86400}),n.set("claudeye_auth","1",{sameSite:"lax",path:"/",maxAge:86400}),(0,d.logActivity)(b,"login"),{redirectTo:g}}async function g(){let{getRequestUsername:b}=await a.A(47538),e=await b();(0,d.logActivity)(e,"logout");let f=await (0,c.cookies)();return f.delete("claudeye_session"),f.delete("claudeye_auth"),{redirectTo:"/login"}}function h(a,b){if(a.length!==b.length){let c=Math.max(a.length,b.length);for(let d=0;d<c;d++)a.charCodeAt(d%a.length),b.charCodeAt(d%b.length);return!1}let c=0;for(let d=0;d<a.length;d++)c|=a.charCodeAt(d)^b.charCodeAt(d);return 0===c}(0,a.i(13095).ensureServerEntryExports)([f,g]),(0,b.registerServerReference)(f,"40af67c10517fe21de69837d06007283ec56bdad2c",null),(0,b.registerServerReference)(g,"00ae4def7c8994d4c7faa44c651a56c4e994d251a8",null),a.s(["login",()=>f,"logout",()=>g])},76668,a=>{"use strict";let b={info:0,warn:1,error:2},c="warn";function d(){let a=(process.env.CLAUDEYE_LOG_LEVEL??"").toLowerCase();c="info"===a||"warn"===a||"error"===a?a:"warn"}function e(){return c}function f(a){return b[a]>=b[c]}function g(a){return`[claudeye ${new Date().toISOString()}] ${a}`}function h(a,b){f("info")&&(void 0!==b?console.log(g("INFO"),a,b):console.log(g("INFO"),a))}function i(a,b){f("warn")&&(void 0!==b?console.warn(g("WARN"),a,b):console.warn(g("WARN"),a))}function j(a,b){void 0!==b?console.error(g("ERROR"),a,b):console.error(g("ERROR"),a)}function k(a,b,c){if(!f("info"))return;let d=[`user=${a}`,`action=${b}`];c&&d.push(c),console.log(g("ACTIVITY"),d.join(" "))}async function l(){try{let{cookies:b}=await a.A(23804),c=await b(),d=c.get("claudeye_session")?.value;if(!d)return"anonymous";let e=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:f}=await a.A(76958);return await f(d,e)??"anonymous"}catch{return"anonymous"}}a.s(["getLogLevel",()=>e,"getRequestUsername",()=>l,"initLogger",()=>d,"logActivity",()=>k,"logError",()=>j,"logInfo",()=>h,"logWarn",()=>i])},37936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},13095,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},9223,a=>{"use strict";function b(a){let b=new Uint8Array(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function c(a){let b=a.replace(/-/g,"+").replace(/_/g,"/"),c=atob(b+"=".repeat((4-b.length%4)%4)),d=new Uint8Array(c.length);for(let a=0;a<c.length;a++)d[a]=c.charCodeAt(a);return d}async function d(a){let b=new TextEncoder;return crypto.subtle.importKey("raw",b.encode(a),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"])}async function e(a,c){let e=JSON.stringify({u:a,e:Date.now()+864e5}),f=new TextEncoder().encode(e),g=await d(c),h=await crypto.subtle.sign("HMAC",g,f);return`${b(f.buffer)}.${b(h)}`}async function f(a,b){let e=a.indexOf(".");if(e<0)return null;try{let f=a.slice(0,e),g=a.slice(e+1),h=c(f),i=c(g),j=await d(b);if(!await crypto.subtle.verify("HMAC",j,i.buffer,h.buffer))return null;let{u:k,e:l}=JSON.parse(new TextDecoder().decode(h));if("number"!=typeof l||Date.now()>l)return null;return"string"==typeof k?k:null}catch{return null}}function g(a){return a.trim()?a.split(",").reduce((a,b)=>{let c=b.indexOf(":");return c>0&&a.push({username:b.slice(0,c),password:b.slice(c+1)}),a},[]):[]}a.s(["createSessionCookie",()=>e,"parseAuthUsers",()=>g,"verifySessionCookie",()=>f])},74639,a=>{"use strict";var b=a.i(77728);a.s([],23319),a.i(23319),a.s(["00ae4def7c8994d4c7faa44c651a56c4e994d251a8",()=>b.logout],74639)},23804,a=>{a.v(a=>Promise.resolve().then(()=>a(5246)))},76958,a=>{a.v(a=>Promise.resolve().then(()=>a(9223)))},47538,a=>{a.v(a=>Promise.resolve().then(()=>a(76668)))}];
1
+ module.exports=[77728,a=>{"use strict";var b=a.i(37936),c=a.i(5246),d=a.i(76668),e=a.i(9223);async function f(a){let b=a.get("username"),f=a.get("password"),g=a.get("redirectTo")||"/";if(!b||!f)return{error:"Username and password are required"};let i=process.env.CLAUDEYE_AUTH_USERS??"",j=(0,e.parseAuthUsers)(i),k=!1;for(let a of j){let c=h(a.username,b),d=h(a.password,f);c&&d&&(k=!0)}if(!k)return(0,d.logActivity)(b,"login-failed"),{error:"Invalid username or password"};let l=process.env.CLAUDEYE_AUTH_SECRET??"",m=await (0,e.createSessionCookie)(b,l),n=await (0,c.cookies)();return n.set("claudeye_session",m,{httpOnly:!0,sameSite:"lax",path:"/",maxAge:86400}),n.set("claudeye_auth","1",{sameSite:"lax",path:"/",maxAge:86400}),(0,d.logActivity)(b,"login"),{redirectTo:g}}async function g(){let{getRequestUsername:b}=await a.A(47538),e=await b();(0,d.logActivity)(e,"logout");let f=await (0,c.cookies)();return f.delete("claudeye_session"),f.delete("claudeye_auth"),{redirectTo:"/login"}}function h(a,b){if(a.length!==b.length){let c=Math.max(a.length,b.length);for(let d=0;d<c;d++)a.charCodeAt(d%a.length),b.charCodeAt(d%b.length);return!1}let c=0;for(let d=0;d<a.length;d++)c|=a.charCodeAt(d)^b.charCodeAt(d);return 0===c}(0,a.i(13095).ensureServerEntryExports)([f,g]),(0,b.registerServerReference)(f,"400a0a63ed462ed8f7f93b1b4eb2e9b242a48b82c0",null),(0,b.registerServerReference)(g,"0011e19243e758bfdf09fcc5511e20fd6495c151bc",null),a.s(["login",()=>f,"logout",()=>g])},76668,a=>{"use strict";let b={info:0,warn:1,error:2},c="warn";function d(){let a=(process.env.CLAUDEYE_LOG_LEVEL??"").toLowerCase();c="info"===a||"warn"===a||"error"===a?a:"warn"}function e(){return c}function f(a){return b[a]>=b[c]}function g(a){return`[claudeye ${new Date().toISOString()}] ${a}`}function h(a,b){f("info")&&(void 0!==b?console.log(g("INFO"),a,b):console.log(g("INFO"),a))}function i(a,b){f("warn")&&(void 0!==b?console.warn(g("WARN"),a,b):console.warn(g("WARN"),a))}function j(a,b){void 0!==b?console.error(g("ERROR"),a,b):console.error(g("ERROR"),a)}function k(a,b,c){if(!f("info"))return;let d=[`user=${a}`,`action=${b}`];c&&d.push(c),console.log(g("ACTIVITY"),d.join(" "))}async function l(){try{let{cookies:b}=await a.A(23804),c=await b(),d=c.get("claudeye_session")?.value;if(!d)return"anonymous";let e=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:f}=await a.A(76958);return await f(d,e)??"anonymous"}catch{return"anonymous"}}a.s(["getLogLevel",()=>e,"getRequestUsername",()=>l,"initLogger",()=>d,"logActivity",()=>k,"logError",()=>j,"logInfo",()=>h,"logWarn",()=>i])},37936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},13095,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},9223,a=>{"use strict";function b(a){let b=new Uint8Array(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function c(a){let b=a.replace(/-/g,"+").replace(/_/g,"/"),c=atob(b+"=".repeat((4-b.length%4)%4)),d=new Uint8Array(c.length);for(let a=0;a<c.length;a++)d[a]=c.charCodeAt(a);return d}async function d(a){let b=new TextEncoder;return crypto.subtle.importKey("raw",b.encode(a),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"])}async function e(a,c){let e=JSON.stringify({u:a,e:Date.now()+864e5}),f=new TextEncoder().encode(e),g=await d(c),h=await crypto.subtle.sign("HMAC",g,f);return`${b(f.buffer)}.${b(h)}`}async function f(a,b){let e=a.indexOf(".");if(e<0)return null;try{let f=a.slice(0,e),g=a.slice(e+1),h=c(f),i=c(g),j=await d(b);if(!await crypto.subtle.verify("HMAC",j,i.buffer,h.buffer))return null;let{u:k,e:l}=JSON.parse(new TextDecoder().decode(h));if("number"!=typeof l||Date.now()>l)return null;return"string"==typeof k?k:null}catch{return null}}function g(a){return a.trim()?a.split(",").reduce((a,b)=>{let c=b.indexOf(":");return c>0&&a.push({username:b.slice(0,c),password:b.slice(c+1)}),a},[]):[]}a.s(["createSessionCookie",()=>e,"parseAuthUsers",()=>g,"verifySessionCookie",()=>f])},74639,a=>{"use strict";var b=a.i(77728);a.s([],23319),a.i(23319),a.s(["0011e19243e758bfdf09fcc5511e20fd6495c151bc",()=>b.logout],74639)},23804,a=>{a.v(a=>Promise.resolve().then(()=>a(5246)))},76958,a=>{a.v(a=>Promise.resolve().then(()=>a(9223)))},47538,a=>{a.v(a=>Promise.resolve().then(()=>a(76668)))}];
3
3
 
4
4
  //# sourceMappingURL=_c9400c33._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[65967,a=>{"use strict";var b=a.i(87924),c=a.i(70106);let d=(0,c.default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]),e=(0,c.default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);function f({currentPage:a,totalPages:c,onPageChange:f}){if(c<=1)return null;let g=a=>`px-3 py-2 text-sm rounded-md transition-colors flex items-center gap-1 bg-muted text-muted-foreground ${a?"opacity-50 cursor-not-allowed":"hover:bg-muted/80"}`;return(0,b.jsxs)("div",{className:"flex items-center justify-center gap-2 py-4",children:[(0,b.jsxs)("button",{onClick:()=>f(a-1),disabled:1===a,className:g(1===a),"aria-label":"Previous page",children:[(0,b.jsx)(d,{className:"w-4 h-4"}),(0,b.jsx)("span",{className:"hidden sm:inline",children:"Previous"})]}),(0,b.jsx)("div",{className:"flex items-center gap-1",children:(()=>{if(c<=7)return Array.from({length:c},(a,b)=>b+1);let b=[1],d=Math.max(2,a-1),e=Math.min(c-1,a+1);a<=3&&(e=Math.min(5,c-1)),a>=c-2&&(d=Math.max(2,c-4)),d>2&&b.push("ellipsis-start");for(let a=d;a<=e;a++)b.push(a);return e<c-1&&b.push("ellipsis-end"),b.push(c),b})().map(c=>"string"==typeof c?(0,b.jsx)("span",{className:"px-2 text-muted-foreground",children:"..."},c):(0,b.jsx)("button",{onClick:()=>f(c),className:`min-w-[2.5rem] px-3 py-2 text-sm rounded-md transition-colors ${a===c?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-muted/80"}`,"aria-label":`Page ${c}`,"aria-current":a===c?"page":void 0,children:c},c))}),(0,b.jsxs)("button",{onClick:()=>f(a+1),disabled:a===c,className:g(a===c),"aria-label":"Next page",children:[(0,b.jsx)("span",{className:"hidden sm:inline",children:"Next"}),(0,b.jsx)(e,{className:"w-4 h-4"})]})]})}a.s(["default",()=>f],65967)},90619,95947,a=>{"use strict";var b=a.i(50944),c=a.i(72131);function d(){let a=(0,b.useSearchParams)(),d=(0,b.useRouter)(),e=(0,b.usePathname)(),f=(0,c.useRef)(null),g=(0,c.useCallback)(b=>a.get(b),[a]),h=(0,c.useCallback)(()=>new URLSearchParams(a.toString()),[a]),i=(0,c.useCallback)(b=>{f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{let c=new URLSearchParams(a.toString());for(let[a,d]of Object.entries(b))void 0===d||""===d?c.delete(a):c.set(a,d);let f=c.toString(),g=f?`${e}?${f}`:e;d.replace(g,{scroll:!1})},150)},[a,e,d]);return(0,c.useEffect)(()=>()=>{f.current&&clearTimeout(f.current)},[]),{get:g,getAll:h,setAll:i}}function e(a){return"all"===a?void 0:a}function f(a){return a&&["all","last-hour","today","last-7-days","last-30-days","custom"].includes(a)?a:"all"}function g(a){let b={};return a.from&&(b.from=o(a.from)),a.to&&(b.to=o(a.to)),b}function h(a,b){return{from:p(a),to:p(b)}}function i(a){if(0!==a.length)return a.map(a=>encodeURIComponent(a)).join(",")}function j(a){return a?a.split(",").map(a=>decodeURIComponent(a.trim())).filter(a=>a.length>0):[]}function k(a){return a<=1?void 0:String(a)}function l(a){if(!a)return 1;let b=parseInt(a,10);return Number.isFinite(b)&&b>=1?b:1}function m(a,b){switch(a.type){case"boolean":return"all"===b?void 0:b;case"number":if(b.min===a.min&&b.max===a.max)return;return`${b.min}~${b.max}`;case"string":if(b.size===a.values.length)return;return Array.from(b).map(a=>encodeURIComponent(a)).join(",");case"date":if(!b.from&&!b.to)return;return`${b.from??""},${b.to??""}`}}function n(a,b){if(null===b||""===b)return null;switch(a.type){case"boolean":if("true"===b||"false"===b)return b;return null;case"number":{let a=b.split("~");if(2!==a.length)return null;let c=parseFloat(a[0]),d=parseFloat(a[1]);if(!Number.isFinite(c)||!Number.isFinite(d))return null;return{min:c,max:d}}case"string":{let c=b.split(",").map(a=>decodeURIComponent(a.trim())).filter(b=>a.values.includes(b));if(0===c.length)return null;return new Set(c)}case"date":{let a=b.split(",");if(2!==a.length)return null;let c=a[0]||null,d=a[1]||null;if(!c&&!d||c&&!q(c)||d&&!q(d))return null;return{from:c,to:d}}}}function o(a){let b=a.getFullYear(),c=String(a.getMonth()+1).padStart(2,"0"),d=String(a.getDate()).padStart(2,"0");return`${b}-${c}-${d}`}function p(a){if(!a||!q(a))return null;let[b,c,d]=a.split("-").map(Number);return new Date(b,c-1,d,12,0,0)}function q(a){return/^\d{4}-\d{2}-\d{2}$/.test(a)&&!isNaN(Date.parse(a))}a.s(["useUrlParams",()=>d],90619),a.s(["activeFilterToParam",()=>m,"dateRangeToParams",()=>g,"keywordsToParam",()=>i,"pageToParam",()=>k,"paramToActiveFilter",()=>n,"paramToKeywords",()=>j,"paramToPage",()=>l,"paramToPreset",()=>f,"paramsToDateRange",()=>h,"presetToParam",()=>e],95947)},5151,33441,a=>{"use strict";var b=a.i(70106);let c=(0,b.default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",()=>c],5151);let d=(0,b.default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);a.s(["Check",()=>d],33441)},210,a=>{"use strict";let b=(0,a.i(70106).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",()=>b],210)}];
2
+
3
+ //# sourceMappingURL=_d4343fce._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[50871,a=>{"use strict";async function b(a,b,c){let d=[],e=performance.now(),f=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,g=!1;if(f)try{await f(b)||(g=!0)}catch{g=!0}if(g)for(let b of a)d.push(c.skipResult(b));else{let e=a.map(async a=>{if(a.condition)try{if(!await a.condition(b))return c.skipResult(a)}catch(b){return c.errorResult(a,`Condition error: ${b instanceof Error?b.message:String(b)}`,0)}let d=performance.now();try{let e=await a.fn(b),f=Math.round(performance.now()-d);return c.successResult(a,e,f)}catch(e){let b=Math.round(performance.now()-d);return c.errorResult(a,e instanceof Error?e.message:String(e),b)}});for(let a of(await Promise.allSettled(e)))d.push("fulfilled"===a.status?a.value:c.unexpectedResult())}let h=Math.round(performance.now()-e);return c.buildSummary(d,h)}a.s(["runAll",()=>b],50871)},65003,a=>{"use strict";var b=a.i(70467),c=a.i(50871);async function d(a,d,e,f,g,h){let i=g??(0,b.getRegisteredEvals)(),j={entries:a,stats:d,projectName:e,sessionId:f,source:"session",...h};return(0,c.runAll)(i,j,{skipResult:a=>({name:a.name,pass:!1,score:0,durationMs:0,skipped:!0}),successResult:(a,b,c)=>{var d;return{name:a.name,pass:b.pass,score:null==(d=b.score)?1:Math.max(0,Math.min(1,d)),message:b.message,metadata:b.metadata,durationMs:c}},errorResult:(a,b,c)=>({name:a.name,pass:!1,score:0,durationMs:c,error:b}),unexpectedResult:()=>({name:"?",pass:!1,score:0,durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0,e=0,f=0;for(let b of a)b.skipped?f++:b.error?e++:b.pass?c++:d++;return{results:a,totalDurationMs:b,passCount:c,failCount:d,errorCount:e,skippedCount:f}}})}a.s(["runAllEvals",()=>d])},77333,a=>{"use strict";var b=a.i(37936),c=a.i(62733),d=a.i(70467),e=a.i(65003),f=a.i(83397),g=a.i(61542);a.i(651);var h=a.i(46721),i=a.i(70427);async function j(a,b,k,l,m=!1,n,o){try{await (0,c.ensureEvalsLoaded)();let j=(0,d.getSubagentScopedEvals)(n).find(a=>a.name===l);if(!j)return{ok:!1,error:`Eval "${l}" not found for subagent type "${n??"any"}"`};let p=`${b}/agent-${k}`,q=await (0,h.hashSubagentFile)(a,b,k);if(!m&&q){let b=(0,h.hashItemCode)(j.fn),c=await (0,i.getPerItemCacheWithHook)("evals",a,p,j.name,b,q);if(c)return{ok:!0,result:c.value}}let{entries:r,rawLines:s}=await (0,f.getCachedSessionLog)(a,b),t=(0,g.calculateLogStats)(r),u=(0,f.extractSubagentMeta)(r,k),v=n??u?.type,w=o??u?.description,x=(await (0,e.runAllEvals)(s,t,a,b,[j],{source:`agent-${k}`,subagentType:v,subagentDescription:w,parentSessionId:b})).results[0];if(!x)return{ok:!1,error:"No result returned from eval"};if(q){let b=(0,h.hashItemCode)(j.fn);await (0,i.setPerItemCache)("evals",a,p,j.name,b,x,q)}return{ok:!0,result:x}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}(0,a.i(13095).ensureServerEntryExports)([j]),(0,b.registerServerReference)(j,"7fceb2e5ba07d19a48ce5f7dbb685f8061c130596b",null),a.s(["processSubagentEval",()=>j])}];
1
+ module.exports=[50871,a=>{"use strict";async function b(a,b,c){let d=[],e=performance.now(),f=globalThis.__CLAUDEYE_CONDITION_REGISTRY__??null,g=!1;if(f)try{await f(b)||(g=!0)}catch{g=!0}if(g)for(let b of a)d.push(c.skipResult(b));else{let e=a.map(async a=>{if(a.condition)try{if(!await a.condition(b))return c.skipResult(a)}catch(b){return c.errorResult(a,`Condition error: ${b instanceof Error?b.message:String(b)}`,0)}let d=performance.now();try{let e=await a.fn(b),f=Math.round(performance.now()-d);return c.successResult(a,e,f)}catch(e){let b=Math.round(performance.now()-d);return c.errorResult(a,e instanceof Error?e.message:String(e),b)}});for(let a of(await Promise.allSettled(e)))d.push("fulfilled"===a.status?a.value:c.unexpectedResult())}let h=Math.round(performance.now()-e);return c.buildSummary(d,h)}a.s(["runAll",()=>b],50871)},65003,a=>{"use strict";var b=a.i(70467),c=a.i(50871);async function d(a,d,e,f,g,h){let i=g??(0,b.getRegisteredEvals)(),j={entries:a,stats:d,projectName:e,sessionId:f,source:"session",...h};return(0,c.runAll)(i,j,{skipResult:a=>({name:a.name,pass:!1,score:0,durationMs:0,skipped:!0}),successResult:(a,b,c)=>{var d;return{name:a.name,pass:b.pass,score:null==(d=b.score)?1:Math.max(0,Math.min(1,d)),message:b.message,metadata:b.metadata,durationMs:c}},errorResult:(a,b,c)=>({name:a.name,pass:!1,score:0,durationMs:c,error:b}),unexpectedResult:()=>({name:"?",pass:!1,score:0,durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0,e=0,f=0;for(let b of a)b.skipped?f++:b.error?e++:b.pass?c++:d++;return{results:a,totalDurationMs:b,passCount:c,failCount:d,errorCount:e,skippedCount:f}}})}a.s(["runAllEvals",()=>d])},77333,a=>{"use strict";var b=a.i(37936),c=a.i(62733),d=a.i(70467),e=a.i(65003),f=a.i(83397),g=a.i(61542);a.i(651);var h=a.i(46721),i=a.i(70427);async function j(a,b,k,l,m=!1,n,o){try{await (0,c.ensureEvalsLoaded)();let j=(0,d.getSubagentScopedEvals)(n).find(a=>a.name===l);if(!j)return{ok:!1,error:`Eval "${l}" not found for subagent type "${n??"any"}"`};let p=`${b}/agent-${k}`,q=await (0,h.hashSubagentFile)(a,b,k);if(!m&&q){let b=(0,h.hashItemCode)(j.fn),c=await (0,i.getPerItemCacheWithHook)("evals",a,p,j.name,b,q);if(c)return{ok:!0,result:c.value}}let{entries:r,rawLines:s}=await (0,f.getCachedSessionLog)(a,b),t=(0,g.calculateLogStats)(r),u=(0,f.extractSubagentMeta)(r,k),v=n??u?.type,w=o??u?.description,x=(await (0,e.runAllEvals)(s,t,a,b,[j],{source:`agent-${k}`,subagentType:v,subagentDescription:w,parentSessionId:b})).results[0];if(!x)return{ok:!1,error:"No result returned from eval"};if(q){let b=(0,h.hashItemCode)(j.fn);await (0,i.setPerItemCache)("evals",a,p,j.name,b,x,q)}return{ok:!0,result:x}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}(0,a.i(13095).ensureServerEntryExports)([j]),(0,b.registerServerReference)(j,"7f0f4aec43f95811bf78bdefafb27e8f946467ad9c",null),a.s(["processSubagentEval",()=>j])}];
2
2
 
3
3
  //# sourceMappingURL=_d7159840._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[90619,95947,a=>{"use strict";var b=a.i(50944),c=a.i(72131);function d(){let a=(0,b.useSearchParams)(),d=(0,b.useRouter)(),e=(0,b.usePathname)(),f=(0,c.useRef)(null),g=(0,c.useCallback)(b=>a.get(b),[a]),h=(0,c.useCallback)(()=>new URLSearchParams(a.toString()),[a]),i=(0,c.useCallback)(b=>{f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{let c=new URLSearchParams(a.toString());for(let[a,d]of Object.entries(b))void 0===d||""===d?c.delete(a):c.set(a,d);let f=c.toString(),g=f?`${e}?${f}`:e;d.replace(g,{scroll:!1})},150)},[a,e,d]);return(0,c.useEffect)(()=>()=>{f.current&&clearTimeout(f.current)},[]),{get:g,getAll:h,setAll:i}}function e(a){return"all"===a?void 0:a}function f(a){return a&&["all","last-hour","today","last-7-days","last-30-days","custom"].includes(a)?a:"all"}function g(a){let b={};return a.from&&(b.from=o(a.from)),a.to&&(b.to=o(a.to)),b}function h(a,b){return{from:p(a),to:p(b)}}function i(a){if(0!==a.length)return a.map(a=>encodeURIComponent(a)).join(",")}function j(a){return a?a.split(",").map(a=>decodeURIComponent(a.trim())).filter(a=>a.length>0):[]}function k(a){return a<=1?void 0:String(a)}function l(a){if(!a)return 1;let b=parseInt(a,10);return Number.isFinite(b)&&b>=1?b:1}function m(a,b){switch(a.type){case"boolean":return"all"===b?void 0:b;case"number":if(b.min===a.min&&b.max===a.max)return;return`${b.min}~${b.max}`;case"string":if(b.size===a.values.length)return;return Array.from(b).map(a=>encodeURIComponent(a)).join(",");case"date":if(!b.from&&!b.to)return;return`${b.from??""},${b.to??""}`}}function n(a,b){if(null===b||""===b)return null;switch(a.type){case"boolean":if("true"===b||"false"===b)return b;return null;case"number":{let a=b.split("~");if(2!==a.length)return null;let c=parseFloat(a[0]),d=parseFloat(a[1]);if(!Number.isFinite(c)||!Number.isFinite(d))return null;return{min:c,max:d}}case"string":{let c=b.split(",").map(a=>decodeURIComponent(a.trim())).filter(b=>a.values.includes(b));if(0===c.length)return null;return new Set(c)}case"date":{let a=b.split(",");if(2!==a.length)return null;let c=a[0]||null,d=a[1]||null;if(!c&&!d||c&&!q(c)||d&&!q(d))return null;return{from:c,to:d}}}}function o(a){let b=a.getFullYear(),c=String(a.getMonth()+1).padStart(2,"0"),d=String(a.getDate()).padStart(2,"0");return`${b}-${c}-${d}`}function p(a){if(!a||!q(a))return null;let[b,c,d]=a.split("-").map(Number);return new Date(b,c-1,d,12,0,0)}function q(a){return/^\d{4}-\d{2}-\d{2}$/.test(a)&&!isNaN(Date.parse(a))}a.s(["useUrlParams",()=>d],90619),a.s(["activeFilterToParam",()=>m,"dateRangeToParams",()=>g,"keywordsToParam",()=>i,"pageToParam",()=>k,"paramToActiveFilter",()=>n,"paramToKeywords",()=>j,"paramToPage",()=>l,"paramToPreset",()=>f,"paramsToDateRange",()=>h,"presetToParam",()=>e],95947)},65967,a=>{"use strict";var b=a.i(87924),c=a.i(70106);let d=(0,c.default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]),e=(0,c.default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);function f({currentPage:a,totalPages:c,onPageChange:f}){if(c<=1)return null;let g=a=>`px-3 py-2 text-sm rounded-md transition-colors flex items-center gap-1 bg-muted text-muted-foreground ${a?"opacity-50 cursor-not-allowed":"hover:bg-muted/80"}`;return(0,b.jsxs)("div",{className:"flex items-center justify-center gap-2 py-4",children:[(0,b.jsxs)("button",{onClick:()=>f(a-1),disabled:1===a,className:g(1===a),"aria-label":"Previous page",children:[(0,b.jsx)(d,{className:"w-4 h-4"}),(0,b.jsx)("span",{className:"hidden sm:inline",children:"Previous"})]}),(0,b.jsx)("div",{className:"flex items-center gap-1",children:(()=>{if(c<=7)return Array.from({length:c},(a,b)=>b+1);let b=[1],d=Math.max(2,a-1),e=Math.min(c-1,a+1);a<=3&&(e=Math.min(5,c-1)),a>=c-2&&(d=Math.max(2,c-4)),d>2&&b.push("ellipsis-start");for(let a=d;a<=e;a++)b.push(a);return e<c-1&&b.push("ellipsis-end"),b.push(c),b})().map(c=>"string"==typeof c?(0,b.jsx)("span",{className:"px-2 text-muted-foreground",children:"..."},c):(0,b.jsx)("button",{onClick:()=>f(c),className:`min-w-[2.5rem] px-3 py-2 text-sm rounded-md transition-colors ${a===c?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-muted/80"}`,"aria-label":`Page ${c}`,"aria-current":a===c?"page":void 0,children:c},c))}),(0,b.jsxs)("button",{onClick:()=>f(a+1),disabled:a===c,className:g(a===c),"aria-label":"Next page",children:[(0,b.jsx)("span",{className:"hidden sm:inline",children:"Next"}),(0,b.jsx)(e,{className:"w-4 h-4"})]})]})}a.s(["default",()=>f],65967)},24451,a=>{"use strict";var b=a.i(87924);let c=(0,a.i(70106).default)("calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);function d({id:a,value:d,stringValue:e,onChange:f,"aria-label":g}){let h=null!=e?e:d?d.toISOString().split("T")[0]:"";return(0,b.jsxs)("div",{className:"relative group",children:[(0,b.jsx)("input",{type:"date",id:a,value:h,onChange:a=>f(a.target.value),"aria-label":g,className:"date-input px-3 py-2 pr-8 text-sm bg-input border border-border rounded-md text-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:border-transparent transition-all hover:border-primary/50 w-[200px]"}),(0,b.jsx)("label",{htmlFor:a,className:"absolute right-2.5 top-1/2 -translate-y-1/2 cursor-pointer pointer-events-auto z-10 p-1 rounded hover:bg-muted/50 transition-colors",onClick:b=>{b.preventDefault();let c=document.getElementById(a);c&&"function"==typeof c.showPicker?c.showPicker():c?.click()},children:(0,b.jsx)(c,{className:"w-4 h-4 text-primary group-hover:text-primary/80 transition-colors"})})]})}a.s(["default",()=>d],24451)},35487,a=>{"use strict";let b=(0,a.i(70106).default)("file",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]);a.s(["File",()=>b],35487)},5151,33441,a=>{"use strict";var b=a.i(70106);let c=(0,b.default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",()=>c],5151);let d=(0,b.default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);a.s(["Check",()=>d],33441)},24121,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(5151),e=a.i(33441),f=a.i(97895);function g(a){let b=document.createElement("textarea");b.value=a,b.style.position="fixed",b.style.opacity="0",document.body.appendChild(b);try{return b.select(),document.execCommand("copy")}finally{document.body.removeChild(b)}}function h({text:a,className:h}){let[i,j]=(0,c.useState)(!1),k=(0,c.useCallback)(async()=>{try{if(navigator.clipboard?.writeText)await navigator.clipboard.writeText(a);else if(!g(a))throw Error("Both clipboard methods failed");j(!0),setTimeout(()=>j(!1),2e3)}catch(b){console.error("Failed to copy to clipboard:",b);try{g(a)&&(j(!0),setTimeout(()=>j(!1),2e3))}catch{}}},[a]);return(0,b.jsx)("button",{onClick:k,title:"Copy to clipboard",className:(0,f.cn)("inline-flex items-center justify-center rounded p-1 text-muted-foreground hover:text-foreground hover:bg-muted/80 transition-colors",h),children:i?(0,b.jsx)(e.Check,{className:"w-3.5 h-3.5 text-green-500"}):(0,b.jsx)(d.Copy,{className:"w-3.5 h-3.5"})})}a.s(["CopyButton",()=>h])},27950,45481,87532,a=>{"use strict";function b(a,b,c){if("all"===b)return a;if("custom"===b){let b,d,e=c.from?((b=new Date(c.from)).setHours(0,0,0,0),b):null,f=c.to?((d=new Date(c.to)).setHours(23,59,59,999),d):null;return a.filter(a=>(!e||!(a.lastModified<e))&&(!f||!(a.lastModified>f)))}let d=function(a){let b=new Date;switch(a){case"last-hour":return new Date(b.getTime()-36e5);case"today":return new Date(b.getFullYear(),b.getMonth(),b.getDate());case"last-7-days":return new Date(b.getTime()-6048e5);case"last-30-days":return new Date(b.getTime()-2592e6);default:return null}}(b);return d?a.filter(a=>a.lastModified>=d):a}function c(a){return a.map(a=>({...a,lastModified:a.lastModified instanceof Date?a.lastModified:new Date(a.lastModified)}))}a.s(["FILTER_PRESETS",0,[{value:"all",label:"All"},{value:"last-hour",label:"Last Hour"},{value:"today",label:"Today"},{value:"last-7-days",label:"Last 7 Days"},{value:"last-30-days",label:"Last 30 Days"}],"ITEMS_PER_PAGE",0,25,"filterByDate",()=>b,"rehydrateDates",()=>c],27950);var d=a.i(72131);function e(a=[],b){let[c,f]=(0,d.useState)(b?.filterPreset??"all"),[g,h]=(0,d.useState)(b?.dateRange??{from:null,to:null}),[i,j]=(0,d.useState)(b?.currentPage??1),k=`${c}|${JSON.stringify(g)}|${JSON.stringify(a)}`,[l,m]=(0,d.useState)(k);k!==l&&(m(k),j(1));let n=(0,d.useCallback)(a=>{f(a),"custom"!==a&&h({from:null,to:null})},[]);return{filterPreset:c,dateRange:g,currentPage:i,setCurrentPage:j,handlePresetChange:n,handleDateRangeChange:(0,d.useCallback)((a,b)=>{f("custom"),h(c=>({...c,[a]:b?new Date(b):null}))},[]),clearFilters:(0,d.useCallback)(()=>{f("all"),h({from:null,to:null})},[])}}a.s(["useFilterState",()=>e],45481);let f=(0,a.i(70106).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);a.s(["Search",()=>f],87532)},34484,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(97895),e=a.i(27950),f=a.i(45481),g=a.i(90619),h=a.i(95947),i=a.i(35487),j=a.i(87532),k=a.i(38246),l=a.i(65967),m=a.i(24451),n=a.i(24121);function o({files:a,projectName:o}){let p=(0,g.useUrlParams)(),q=(0,c.useRef)(!1),[r,s]=(0,c.useState)(()=>p.get("sid")??""),{filterPreset:t,dateRange:u,currentPage:v,setCurrentPage:w,handlePresetChange:x,handleDateRangeChange:y,clearFilters:z}=(0,f.useFilterState)([r],{filterPreset:(0,h.paramToPreset)(p.get("preset")),dateRange:(0,h.paramsToDateRange)(p.get("from"),p.get("to")),currentPage:(0,h.paramToPage)(p.get("page"))});(0,c.useEffect)(()=>{if(!q.current){q.current=!0;return}p.setAll({preset:(0,h.presetToParam)(t),...(0,h.dateRangeToParams)(u),sid:r||void 0,page:(0,h.pageToParam)(v)})},[t,u,r,v]);let A=(0,c.useMemo)(()=>(0,e.rehydrateDates)(a),[a]),B=(0,c.useMemo)(()=>{var a;let b;return(a=(0,e.filterByDate)(A,t,u),!(b=r.trim().toLowerCase())?a:a.filter(a=>a.sessionId?.toLowerCase().includes(b))).sort((a,b)=>b.lastModified.getTime()-a.lastModified.getTime())},[A,r,t,u]),C=Math.max(1,Math.ceil(B.length/e.ITEMS_PER_PAGE));(0,c.useEffect)(()=>{v>C&&w(C)},[v,C,w]);let D=(v-1)*e.ITEMS_PER_PAGE,E=Math.min(D+e.ITEMS_PER_PAGE,B.length),F=B.slice(D,E),G="all"!==t||null!==u.from||null!==u.to||""!==r;return(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg p-4 flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,b.jsx)("span",{className:"text-sm font-medium text-foreground",children:"Filter by:"}),e.FILTER_PRESETS.map(a=>(0,b.jsx)("button",{onClick:()=>x(a.value),className:`px-3 py-1.5 text-sm rounded-md transition-colors ${t===a.value?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-muted/80"}`,children:a.label},a.value))]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-4",children:[(0,b.jsx)("span",{className:"text-sm font-medium text-foreground",children:"Custom Range:"}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(m.default,{id:"date-from",value:u.from,onChange:a=>y("from",a),"aria-label":"Filter from date"}),(0,b.jsx)("span",{className:"text-muted-foreground",children:"to"}),(0,b.jsx)(m.default,{id:"date-to",value:u.to,onChange:a=>y("to",a),"aria-label":"Filter to date"})]})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(j.Search,{className:"w-4 h-4 text-muted-foreground"}),(0,b.jsx)("span",{className:"text-sm font-medium text-foreground",children:"Filter by Session ID:"}),(0,b.jsx)("input",{type:"text",value:r,onChange:a=>s(a.target.value),placeholder:"Enter session ID (UUID)",className:"px-3 py-2 text-sm bg-input border border-border rounded-md text-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:border-transparent transition-all hover:border-primary/50 flex-1 max-w-md","aria-label":"Filter by session ID"}),G&&(0,b.jsx)("button",{onClick:()=>{z(),s("")},className:"px-3 py-2 text-sm bg-muted text-muted-foreground hover:bg-muted/80 rounded-md transition-colors",children:"Clear"})]}),(0,b.jsx)("div",{className:"text-sm text-muted-foreground",children:0===B.length?"No sessions found":(0,b.jsxs)(b.Fragment,{children:["Showing ",D+1,"-",E," of ",B.length," sessions",B.length!==A.length&&(0,b.jsxs)("span",{className:"ml-1",children:["(filtered from ",A.length," total)"]})]})})]}),(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg overflow-hidden",children:[(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:"w-full",children:[(0,b.jsx)("thead",{children:(0,b.jsxs)("tr",{className:"border-b border-border bg-muted/50",children:[(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground w-12",children:(0,b.jsx)("span",{className:"sr-only",children:"Icon"})}),(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground",children:"SessionId"}),(0,b.jsx)("th",{scope:"col",className:"px-4 py-3 text-left text-sm font-semibold text-foreground",children:"Modified"})]})}),(0,b.jsx)("tbody",{children:0===F.length?(0,b.jsx)("tr",{children:(0,b.jsx)("td",{colSpan:3,className:"px-4 py-8 text-center text-muted-foreground",children:"No sessions found matching the filter."})}):F.map(a=>(0,b.jsxs)("tr",{className:"border-b border-border hover:bg-muted/50 transition-colors",children:[(0,b.jsx)("td",{className:"px-4 py-3",children:(0,b.jsx)(i.File,{className:"w-5 h-5 text-primary"})}),(0,b.jsx)("td",{className:"px-4 py-3 max-w-md",children:(0,b.jsx)("div",{className:"flex items-center gap-1",children:a.sessionId?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(k.default,{href:`/project/${encodeURIComponent(o)}/session/${encodeURIComponent(a.sessionId)}`,className:"font-semibold text-foreground hover:text-primary transition-colors break-words break-all inline-block max-w-full",children:a.name.replace(/\.jsonl$/,"")}),(0,b.jsx)(n.CopyButton,{text:a.sessionId})]}):(0,b.jsx)("span",{className:"font-semibold text-foreground break-words break-all inline-block max-w-full",children:a.name.replace(/\.jsonl$/,"")})})}),(0,b.jsx)("td",{className:"px-4 py-3 text-sm text-muted-foreground",children:a.lastModifiedFormatted||(0,d.formatDate)(a.lastModified)})]},a.path))})]})}),B.length>0&&(0,b.jsx)(l.default,{currentPage:v,totalPages:C,onPageChange:w})]})]})}a.s(["default",()=>o])}];
2
+
3
+ //# sourceMappingURL=_f47ff7c6._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[77728,a=>{"use strict";var b=a.i(37936),c=a.i(5246),d=a.i(76668),e=a.i(9223);async function f(a){let b=a.get("username"),f=a.get("password"),g=a.get("redirectTo")||"/";if(!b||!f)return{error:"Username and password are required"};let i=process.env.CLAUDEYE_AUTH_USERS??"",j=(0,e.parseAuthUsers)(i),k=!1;for(let a of j){let c=h(a.username,b),d=h(a.password,f);c&&d&&(k=!0)}if(!k)return(0,d.logActivity)(b,"login-failed"),{error:"Invalid username or password"};let l=process.env.CLAUDEYE_AUTH_SECRET??"",m=await (0,e.createSessionCookie)(b,l),n=await (0,c.cookies)();return n.set("claudeye_session",m,{httpOnly:!0,sameSite:"lax",path:"/",maxAge:86400}),n.set("claudeye_auth","1",{sameSite:"lax",path:"/",maxAge:86400}),(0,d.logActivity)(b,"login"),{redirectTo:g}}async function g(){let{getRequestUsername:b}=await a.A(47538),e=await b();(0,d.logActivity)(e,"logout");let f=await (0,c.cookies)();return f.delete("claudeye_session"),f.delete("claudeye_auth"),{redirectTo:"/login"}}function h(a,b){if(a.length!==b.length){let c=Math.max(a.length,b.length);for(let d=0;d<c;d++)a.charCodeAt(d%a.length),b.charCodeAt(d%b.length);return!1}let c=0;for(let d=0;d<a.length;d++)c|=a.charCodeAt(d)^b.charCodeAt(d);return 0===c}(0,a.i(13095).ensureServerEntryExports)([f,g]),(0,b.registerServerReference)(f,"40af67c10517fe21de69837d06007283ec56bdad2c",null),(0,b.registerServerReference)(g,"00ae4def7c8994d4c7faa44c651a56c4e994d251a8",null),a.s(["login",()=>f,"logout",()=>g])},76668,a=>{"use strict";let b={info:0,warn:1,error:2},c="warn";function d(){let a=(process.env.CLAUDEYE_LOG_LEVEL??"").toLowerCase();c="info"===a||"warn"===a||"error"===a?a:"warn"}function e(){return c}function f(a){return b[a]>=b[c]}function g(a){return`[claudeye ${new Date().toISOString()}] ${a}`}function h(a,b){f("info")&&(void 0!==b?console.log(g("INFO"),a,b):console.log(g("INFO"),a))}function i(a,b){f("warn")&&(void 0!==b?console.warn(g("WARN"),a,b):console.warn(g("WARN"),a))}function j(a,b){void 0!==b?console.error(g("ERROR"),a,b):console.error(g("ERROR"),a)}function k(a,b,c){if(!f("info"))return;let d=[`user=${a}`,`action=${b}`];c&&d.push(c),console.log(g("ACTIVITY"),d.join(" "))}async function l(){try{let{cookies:b}=await a.A(23804),c=await b(),d=c.get("claudeye_session")?.value;if(!d)return"anonymous";let e=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:f}=await a.A(76958);return await f(d,e)??"anonymous"}catch{return"anonymous"}}a.s(["getLogLevel",()=>e,"getRequestUsername",()=>l,"initLogger",()=>d,"logActivity",()=>k,"logError",()=>j,"logInfo",()=>h,"logWarn",()=>i])},37936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},13095,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},9223,a=>{"use strict";function b(a){let b=new Uint8Array(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function c(a){let b=a.replace(/-/g,"+").replace(/_/g,"/"),c=atob(b+"=".repeat((4-b.length%4)%4)),d=new Uint8Array(c.length);for(let a=0;a<c.length;a++)d[a]=c.charCodeAt(a);return d}async function d(a){let b=new TextEncoder;return crypto.subtle.importKey("raw",b.encode(a),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"])}async function e(a,c){let e=JSON.stringify({u:a,e:Date.now()+864e5}),f=new TextEncoder().encode(e),g=await d(c),h=await crypto.subtle.sign("HMAC",g,f);return`${b(f.buffer)}.${b(h)}`}async function f(a,b){let e=a.indexOf(".");if(e<0)return null;try{let f=a.slice(0,e),g=a.slice(e+1),h=c(f),i=c(g),j=await d(b);if(!await crypto.subtle.verify("HMAC",j,i.buffer,h.buffer))return null;let{u:k,e:l}=JSON.parse(new TextDecoder().decode(h));if("number"!=typeof l||Date.now()>l)return null;return"string"==typeof k?k:null}catch{return null}}function g(a){return a.trim()?a.split(",").reduce((a,b)=>{let c=b.indexOf(":");return c>0&&a.push({username:b.slice(0,c),password:b.slice(c+1)}),a},[]):[]}a.s(["createSessionCookie",()=>e,"parseAuthUsers",()=>g,"verifySessionCookie",()=>f])},42685,a=>{"use strict";var b=a.i(77728);a.s([],2373),a.i(2373),a.s(["00ae4def7c8994d4c7faa44c651a56c4e994d251a8",()=>b.logout],42685)},23804,a=>{a.v(a=>Promise.resolve().then(()=>a(5246)))},76958,a=>{a.v(a=>Promise.resolve().then(()=>a(9223)))},47538,a=>{a.v(a=>Promise.resolve().then(()=>a(76668)))}];
1
+ module.exports=[77728,a=>{"use strict";var b=a.i(37936),c=a.i(5246),d=a.i(76668),e=a.i(9223);async function f(a){let b=a.get("username"),f=a.get("password"),g=a.get("redirectTo")||"/";if(!b||!f)return{error:"Username and password are required"};let i=process.env.CLAUDEYE_AUTH_USERS??"",j=(0,e.parseAuthUsers)(i),k=!1;for(let a of j){let c=h(a.username,b),d=h(a.password,f);c&&d&&(k=!0)}if(!k)return(0,d.logActivity)(b,"login-failed"),{error:"Invalid username or password"};let l=process.env.CLAUDEYE_AUTH_SECRET??"",m=await (0,e.createSessionCookie)(b,l),n=await (0,c.cookies)();return n.set("claudeye_session",m,{httpOnly:!0,sameSite:"lax",path:"/",maxAge:86400}),n.set("claudeye_auth","1",{sameSite:"lax",path:"/",maxAge:86400}),(0,d.logActivity)(b,"login"),{redirectTo:g}}async function g(){let{getRequestUsername:b}=await a.A(47538),e=await b();(0,d.logActivity)(e,"logout");let f=await (0,c.cookies)();return f.delete("claudeye_session"),f.delete("claudeye_auth"),{redirectTo:"/login"}}function h(a,b){if(a.length!==b.length){let c=Math.max(a.length,b.length);for(let d=0;d<c;d++)a.charCodeAt(d%a.length),b.charCodeAt(d%b.length);return!1}let c=0;for(let d=0;d<a.length;d++)c|=a.charCodeAt(d)^b.charCodeAt(d);return 0===c}(0,a.i(13095).ensureServerEntryExports)([f,g]),(0,b.registerServerReference)(f,"400a0a63ed462ed8f7f93b1b4eb2e9b242a48b82c0",null),(0,b.registerServerReference)(g,"0011e19243e758bfdf09fcc5511e20fd6495c151bc",null),a.s(["login",()=>f,"logout",()=>g])},76668,a=>{"use strict";let b={info:0,warn:1,error:2},c="warn";function d(){let a=(process.env.CLAUDEYE_LOG_LEVEL??"").toLowerCase();c="info"===a||"warn"===a||"error"===a?a:"warn"}function e(){return c}function f(a){return b[a]>=b[c]}function g(a){return`[claudeye ${new Date().toISOString()}] ${a}`}function h(a,b){f("info")&&(void 0!==b?console.log(g("INFO"),a,b):console.log(g("INFO"),a))}function i(a,b){f("warn")&&(void 0!==b?console.warn(g("WARN"),a,b):console.warn(g("WARN"),a))}function j(a,b){void 0!==b?console.error(g("ERROR"),a,b):console.error(g("ERROR"),a)}function k(a,b,c){if(!f("info"))return;let d=[`user=${a}`,`action=${b}`];c&&d.push(c),console.log(g("ACTIVITY"),d.join(" "))}async function l(){try{let{cookies:b}=await a.A(23804),c=await b(),d=c.get("claudeye_session")?.value;if(!d)return"anonymous";let e=process.env.CLAUDEYE_AUTH_SECRET??"",{verifySessionCookie:f}=await a.A(76958);return await f(d,e)??"anonymous"}catch{return"anonymous"}}a.s(["getLogLevel",()=>e,"getRequestUsername",()=>l,"initLogger",()=>d,"logActivity",()=>k,"logError",()=>j,"logInfo",()=>h,"logWarn",()=>i])},37936,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"registerServerReference",{enumerable:!0,get:function(){return d.registerServerReference}});let d=a.r(11857)},13095,(a,b,c)=>{"use strict";function d(a){for(let b=0;b<a.length;b++){let c=a[b];if("function"!=typeof c)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof c}.
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ensureServerEntryExports",{enumerable:!0,get:function(){return d}})},9223,a=>{"use strict";function b(a){let b=new Uint8Array(a),c="";for(let a of b)c+=String.fromCharCode(a);return btoa(c).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function c(a){let b=a.replace(/-/g,"+").replace(/_/g,"/"),c=atob(b+"=".repeat((4-b.length%4)%4)),d=new Uint8Array(c.length);for(let a=0;a<c.length;a++)d[a]=c.charCodeAt(a);return d}async function d(a){let b=new TextEncoder;return crypto.subtle.importKey("raw",b.encode(a),{name:"HMAC",hash:"SHA-256"},!1,["sign","verify"])}async function e(a,c){let e=JSON.stringify({u:a,e:Date.now()+864e5}),f=new TextEncoder().encode(e),g=await d(c),h=await crypto.subtle.sign("HMAC",g,f);return`${b(f.buffer)}.${b(h)}`}async function f(a,b){let e=a.indexOf(".");if(e<0)return null;try{let f=a.slice(0,e),g=a.slice(e+1),h=c(f),i=c(g),j=await d(b);if(!await crypto.subtle.verify("HMAC",j,i.buffer,h.buffer))return null;let{u:k,e:l}=JSON.parse(new TextDecoder().decode(h));if("number"!=typeof l||Date.now()>l)return null;return"string"==typeof k?k:null}catch{return null}}function g(a){return a.trim()?a.split(",").reduce((a,b)=>{let c=b.indexOf(":");return c>0&&a.push({username:b.slice(0,c),password:b.slice(c+1)}),a},[]):[]}a.s(["createSessionCookie",()=>e,"parseAuthUsers",()=>g,"verifySessionCookie",()=>f])},42685,a=>{"use strict";var b=a.i(77728);a.s([],2373),a.i(2373),a.s(["0011e19243e758bfdf09fcc5511e20fd6495c151bc",()=>b.logout],42685)},23804,a=>{a.v(a=>Promise.resolve().then(()=>a(5246)))},76958,a=>{a.v(a=>Promise.resolve().then(()=>a(9223)))},47538,a=>{a.v(a=>Promise.resolve().then(()=>a(76668)))}];
3
3
 
4
4
  //# sourceMappingURL=_fa9c2bed._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[42298,4930,a=>{"use strict";var b=a.i(37936),c=a.i(62733),d=a.i(82762),e=a.i(50871);async function f(a,b,c,f,g,h){let i=g??(0,d.getRegisteredFilters)(),j={entries:a,stats:b,projectName:c,sessionId:f,source:"session"};return h&&(j.evalResults=h),(0,e.runAll)(i,j,{skipResult:a=>({name:a.name,value:!1,durationMs:0,skipped:!0}),successResult:(a,b,c)=>({name:a.name,value:b,durationMs:c}),errorResult:(a,b,c)=>({name:a.name,value:!1,durationMs:c,error:b}),unexpectedResult:()=>({name:"?",value:!1,durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0;for(let b of a)b.skipped?d++:b.error&&c++;return{results:a,totalDurationMs:b,errorCount:c,skippedCount:d}}})}var g=a.i(83397),h=a.i(61542),i=a.i(69191);a.i(651);var j=a.i(70427),k=a.i(46721),l=a.i(70467),m=a.i(26192),n=a.i(82248),o=a.i(13095);let p="__CLAUDEYE_DASHBOARD_INDEX__";async function q(a,b){try{let q;await (0,c.ensureEvalsLoaded)();let r=(0,d.getFiltersForView)(a??"default"),s=(0,d.getPreBuiltFiltersForView)(a??"default");if(0===r.length&&0===s.length)return{ok:!0,hasFilters:!1};let t=performance.now(),u=a??"default",v=(0,d.getViewOptions)(u),w=v?.cachedOnly??!1,x=w?(0,l.getSessionScopedEvals)():[],y=await (0,k.hashEvalsModule)(),z=r.map(a=>a.name),A={};for(let a of r)A[a.name]=a.label;let B=function(a,b,c,d){let e=globalThis,f=e[p];if(f&&f.viewName===a&&f.evalsHash===b&&f.filterNames.length===c.length&&f.filterNames.every((a,b)=>a===c[b]))return f;let g={};for(let a of c)g[a]={type:"unknown",min:1/0,max:-1/0,uniqueStrings:new Set};let h={viewName:a,evalsHash:b,rows:new Map,contentHashes:new Map,accumulators:g,filterNames:c,filterLabels:d,metaDirty:!0,cachedFilterMeta:null};return e[p]=h,h}(u,y,z,A),C=await (0,i.getCachedProjectFolders)(),D=[];for(let a of(await (0,m.batchAll)(C.map(a=>async()=>{let b=await (0,i.getCachedSessionFiles)(a.path);return{project:a,sessionFiles:b}}),10)))if("fulfilled"===a.status)for(let b of a.value.sessionFiles)b.sessionId&&D.push({project:a.value.project,file:b});let E=new Set,F=new Map;for(let a of D){let b=`${a.project.name}/${a.file.sessionId}`;E.add(b),F.set(b,a)}for(let a of B.rows.keys())E.has(a)||(B.rows.delete(a),B.contentHashes.delete(a),B.metaDirty=!0);let G=[];for(let a of(await (0,m.batchAll)(D.map(({project:a,file:b})=>async()=>{let c,d=b.sessionId,e=`${a.name}/${d}`;try{c=await (0,k.hashSessionFile)(a.name,d)}catch{c=crypto.randomUUID()}return{key:e,contentHash:c,project:a,file:b}}),10))){if("fulfilled"!==a.status)continue;let{key:b,contentHash:c,project:d,file:e}=a.value;B.contentHashes.get(b)===c&&B.rows.has(b)||(G.push({key:b,task:{project:d,file:e}}),B.contentHashes.set(b,c))}if(w&&G.length>0){let a=await (0,m.batchAll)(G.map(({key:a,task:{project:b,file:c}})=>async()=>{let d=c.sessionId,e=B.contentHashes.get(a);return{key:a,cached:await (0,j.isSessionFullyCached)(b.name,d,e)}}),10),b=new Set;for(let c of a)"fulfilled"===c.status&&c.value.cached&&b.add(c.value.key);G=G.filter(({key:a})=>b.has(a))}let H=new Set;if(G.length>0)for(let a=0;a<G.length;a+=10){let b=G.slice(a,a+10);for(let a of(await Promise.allSettled(b.map(async({key:a,task:{project:b,file:c}})=>{let d,e=c.sessionId,i=B.contentHashes.get(a)??"",l=w&&x.length>0?`${u}/eval-ctx/${e}`:`${u}/${e}`,m=await (0,j.getCachedResult)("filters",b.name,l,z,i);if(m)d=m.value;else{let a,{entries:c,rawLines:m}=await (0,g.parseSessionLog)(b.name,e),n=(0,h.calculateLogStats)(c);if(w&&x.length>0){let c=await Promise.all(x.map(a=>(0,j.getPerItemCacheWithHook)("evals",b.name,e,a.name,(0,k.hashItemCode)(a.fn),i)));if(c.every(a=>null!==a))for(let b of(a={},c)){let c=b.value;a[c.name]={pass:c.pass,score:c.score,error:c.error,message:c.message}}}d=await f(m,n,b.name,e,r,a),(0,j.setCachedResult)("filters",b.name,l,d,z,i)}let o={};for(let a of d.results)a.skipped||a.error||(o[a.name]=a.value);let p={projectName:b.name,sessionId:e,lastModified:c.lastModified.toISOString(),lastModifiedFormatted:c.lastModifiedFormatted||(0,n.formatDate)(c.lastModified),filterValues:o};return{key:a,row:p}}))))if("fulfilled"===a.status){let{key:b,row:c}=a.value;B.rows.set(b,c),B.metaDirty=!0,H.add(b)}}let I=[...function(a){if(!a.metaDirty&&a.cachedFilterMeta)return a.cachedFilterMeta;a.metaDirty&&function(a){for(let b of a.filterNames)a.accumulators[b]={type:"unknown",min:1/0,max:-1/0,uniqueStrings:new Set};for(let b of a.rows.values())!function(a,b){for(let[c,d]of Object.entries(b)){let b=a[c];b&&("boolean"==typeof d?b.type="boolean":"number"==typeof d?(b.type="number",d<b.min&&(b.min=d),d>b.max&&(b.max=d)):"string"==typeof d&&(b.type="string",b.uniqueStrings.add(d)))}}(a.accumulators,b.filterValues)}(a);let b=a.filterNames.map(b=>{let c=a.accumulators[b],d=a.filterLabels[b]??b;return"number"===c.type?{type:"number",name:b,label:d,min:c.min,max:c.max}:"string"===c.type?{type:"string",name:b,label:d,values:Array.from(c.uniqueStrings).sort()}:{type:"boolean",name:b,label:d}});return a.cachedFilterMeta=b,a.metaDirty=!1,b}(B)];for(let a of s)if("lastModified"===a.name){let b="",c="";for(let a of B.rows.values())(!b||a.lastModified<b)&&(b=a.lastModified),(!c||a.lastModified>c)&&(c=a.lastModified);b&&c&&I.push({type:"date",name:a.name,label:a.label,min:new Date(b).toLocaleDateString("en-CA"),max:new Date(c).toLocaleDateString("en-CA")})}let J=Array.from(B.rows.values());if(w){let a=J.filter(a=>{let b=`${a.projectName}/${a.sessionId}`;return!H.has(b)});if(a.length>0){let b=await (0,m.batchAll)(a.map(a=>async()=>{let b=`${a.projectName}/${a.sessionId}`,c=B.contentHashes.get(b);return{session:a,key:b,cached:await (0,j.isSessionFullyCached)(a.projectName,a.sessionId,c)}}),10),c=new Set;for(let a of b)"fulfilled"!==a.status||a.value.cached||(c.add(a.value.key),B.rows.delete(a.value.key),B.contentHashes.delete(a.value.key),B.metaDirty=!0);J=J.filter(a=>{let b=`${a.projectName}/${a.sessionId}`;return!c.has(b)})}}let K=b?.page??1,L=b?.pageSize??25;if(b?.filters&&Object.keys(b.filters).length>0){var e,o;e=J,o=b.filters,q=e.filter(a=>{for(let b of I){let c=o[b.name];if(c)switch(c.type){case"boolean":{let d=a.filterValues[b.name];if(void 0===d||"all"===c.value)continue;if("true"===c.value&&!0!==d||"false"===c.value&&!1!==d)return!1;break}case"number":{let d=a.filterValues[b.name];if(void 0===d)continue;if(d<c.min||d>c.max)return!1;break}case"string":{let d=a.filterValues[b.name];if(void 0===d)continue;if(c.selected.length>0&&!c.selected.includes(d))return!1;break}case"date":{let b=new Date(a.lastModified).toLocaleDateString("en-CA");if(c.from&&b<c.from||c.to&&b>c.to)return!1}}}return!0})}else q=J;q.sort((a,b)=>b.lastModified.localeCompare(a.lastModified));let M=J.length,N=q.length,O=(K-1)*L,P=q.slice(O,O+L),Q=Math.round(performance.now()-t);return{ok:!0,hasFilters:!0,payload:{sessions:P,filterMeta:I,totalDurationMs:Q,totalCount:M,matchingCount:N,page:K,pageSize:L}}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}(0,o.ensureServerEntryExports)([q]),(0,b.registerServerReference)(q,"605925bf358404aea9aff467049335eff1e3a3d21e",null),a.s(["computeDashboard",()=>q],42298);var r=a.i(46325),s=a.i(65003),t=a.i(31810);let u="__CLAUDEYE_AGGREGATE_INDEX__";async function v(a){try{await (0,c.ensureEvalsLoaded)();let b=a??"default",e=(0,d.getAggregatesForView)(b);if(0===e.length)return{ok:!0,hasAggregates:!1};let n=performance.now(),o=await (0,k.hashEvalsModule)(),p=e.map(a=>a.name),q=function(a,b,c){let d=globalThis,e=d[u];if(e&&e.viewName===a&&e.evalsHash===b&&e.aggregateNames.length===c.length&&e.aggregateNames.every((a,b)=>a===c[b]))return e;let f={viewName:a,evalsHash:b,aggregateNames:c,collectedSessions:new Map,contentHashes:new Map};return d[u]=f,f}(b,o,p),v=await (0,i.getCachedProjectFolders)(),w=[];for(let a of(await (0,m.batchAll)(v.map(a=>async()=>{let b=await (0,i.getCachedSessionFiles)(a.path);return{project:a,sessionFiles:b}}),10)))if("fulfilled"===a.status)for(let b of a.value.sessionFiles)b.sessionId&&w.push({project:a.value.project,file:b});let x=new Set;for(let a of w){let b=`${a.project.name}/${a.file.sessionId}`;x.add(b)}for(let a of q.collectedSessions.keys())x.has(a)||(q.collectedSessions.delete(a),q.contentHashes.delete(a));let y=[];for(let a of(await (0,m.batchAll)(w.map(({project:a,file:b})=>async()=>{let c,d=b.sessionId,e=`${a.name}/${d}`;try{c=await (0,k.hashSessionFile)(a.name,d)}catch{c=crypto.randomUUID()}return{key:e,contentHash:c,project:a,file:b}}),10))){if("fulfilled"!==a.status)continue;let{key:b,contentHash:c,project:d,file:e}=a.value;q.contentHashes.get(b)===c&&q.collectedSessions.has(b)||y.push({key:b,task:{project:d,file:e},contentHash:c})}if(y.length>0){let a=(0,l.hasEvals)()?(0,l.getSessionScopedEvals)():[],c=(0,r.hasEnrichers)()?(0,r.getSessionScopedEnrichers)():[],i=(0,d.getFiltersForView)(b);for(let d=0;d<y.length;d+=10){let k=y.slice(d,d+10);for(let d of(await Promise.allSettled(k.map(async({key:d,task:{project:k,file:l},contentHash:m})=>{let n=l.sessionId,o=`${b}/agg/${n}`,q=await (0,j.getCachedResult)("aggregates",k.name,o,p,m);if(q){let a={};for(let b of Object.values(q.value))Object.assign(a,b);return{key:d,contentHash:m,collected:{projectName:k.name,sessionId:n,values:a}}}let{entries:r,rawLines:u}=await (0,g.parseSessionLog)(k.name,n),v=(0,h.calculateLogStats)(r),w={};if(a.length>0)for(let b of(await (0,s.runAllEvals)(u,v,k.name,n,a)).results)b.skipped||(w[b.name]={pass:b.pass,score:b.score,error:b.error,message:b.message});let x={};if(c.length>0)for(let a of(await (0,t.runAllEnrichers)(u,v,k.name,n,c)).results)a.skipped||a.error||(x[a.name]=a.data);let y={};if(i.length>0)for(let a of(await f(u,v,k.name,n,i)).results)a.skipped||a.error||(y[a.name]=a.value);let z={entries:u,stats:v,projectName:k.name,sessionId:n,source:"session",evalResults:w,enrichResults:x,filterValues:y},A={},B={};for(let a of e)try{if(a.condition){let b={entries:u,stats:v,projectName:k.name,sessionId:n,source:"session"};if(!await a.condition(b))continue}let b=await a.collect(z);A[a.name]=b,Object.assign(B,b)}catch{}return(0,j.setCachedResult)("aggregates",k.name,o,A,p,m),{key:d,contentHash:m,collected:{projectName:k.name,sessionId:n,values:B}}}))))if("fulfilled"===d.status){let{key:a,contentHash:b,collected:c}=d.value;q.collectedSessions.set(a,c),q.contentHashes.set(a,b)}}}let z=Array.from(q.collectedSessions.values()),A=[];for(let a of e)try{let b=await a.reduce(z),c=b.length>0?Object.keys(b[0]):[];A.push({name:a.name,label:a.label,rows:b,columns:c})}catch{A.push({name:a.name,label:a.label,rows:[],columns:[]})}let B=Math.round(performance.now()-n);return{ok:!0,hasAggregates:!0,payload:{aggregates:A,totalSessions:z.length,totalDurationMs:B}}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}(0,o.ensureServerEntryExports)([v]),(0,b.registerServerReference)(v,"40a83b2444cee0cb3f32870b296be0f6d3dff30cc3",null),a.s(["computeAggregates",()=>v],4930)}];
1
+ module.exports=[42298,4930,a=>{"use strict";var b=a.i(37936),c=a.i(62733),d=a.i(82762),e=a.i(50871);async function f(a,b,c,f,g,h){let i=g??(0,d.getRegisteredFilters)(),j={entries:a,stats:b,projectName:c,sessionId:f,source:"session"};return h&&(j.evalResults=h),(0,e.runAll)(i,j,{skipResult:a=>({name:a.name,value:!1,durationMs:0,skipped:!0}),successResult:(a,b,c)=>({name:a.name,value:b,durationMs:c}),errorResult:(a,b,c)=>({name:a.name,value:!1,durationMs:c,error:b}),unexpectedResult:()=>({name:"?",value:!1,durationMs:0,error:"Unexpected rejection"}),buildSummary:(a,b)=>{let c=0,d=0;for(let b of a)b.skipped?d++:b.error&&c++;return{results:a,totalDurationMs:b,errorCount:c,skippedCount:d}}})}var g=a.i(83397),h=a.i(61542),i=a.i(69191);a.i(651);var j=a.i(70427),k=a.i(46721),l=a.i(70467),m=a.i(26192),n=a.i(82248),o=a.i(13095);let p="__CLAUDEYE_DASHBOARD_INDEX__";async function q(a,b){try{let q;await (0,c.ensureEvalsLoaded)();let r=(0,d.getFiltersForView)(a??"default"),s=(0,d.getPreBuiltFiltersForView)(a??"default");if(0===r.length&&0===s.length)return{ok:!0,hasFilters:!1};let t=performance.now(),u=a??"default",v=(0,d.getViewOptions)(u),w=v?.cachedOnly??!1,x=w?(0,l.getSessionScopedEvals)():[],y=await (0,k.hashEvalsModule)(),z=r.map(a=>a.name),A={};for(let a of r)A[a.name]=a.label;let B=function(a,b,c,d){let e=globalThis,f=e[p];if(f&&f.viewName===a&&f.evalsHash===b&&f.filterNames.length===c.length&&f.filterNames.every((a,b)=>a===c[b]))return f;let g={};for(let a of c)g[a]={type:"unknown",min:1/0,max:-1/0,uniqueStrings:new Set};let h={viewName:a,evalsHash:b,rows:new Map,contentHashes:new Map,accumulators:g,filterNames:c,filterLabels:d,metaDirty:!0,cachedFilterMeta:null};return e[p]=h,h}(u,y,z,A),C=await (0,i.getCachedProjectFolders)(),D=[];for(let a of(await (0,m.batchAll)(C.map(a=>async()=>{let b=await (0,i.getCachedSessionFiles)(a.path);return{project:a,sessionFiles:b}}),10)))if("fulfilled"===a.status)for(let b of a.value.sessionFiles)b.sessionId&&D.push({project:a.value.project,file:b});let E=new Set,F=new Map;for(let a of D){let b=`${a.project.name}/${a.file.sessionId}`;E.add(b),F.set(b,a)}for(let a of B.rows.keys())E.has(a)||(B.rows.delete(a),B.contentHashes.delete(a),B.metaDirty=!0);let G=[];for(let a of(await (0,m.batchAll)(D.map(({project:a,file:b})=>async()=>{let c,d=b.sessionId,e=`${a.name}/${d}`;try{c=await (0,k.hashSessionFile)(a.name,d)}catch{c=crypto.randomUUID()}return{key:e,contentHash:c,project:a,file:b}}),10))){if("fulfilled"!==a.status)continue;let{key:b,contentHash:c,project:d,file:e}=a.value;B.contentHashes.get(b)===c&&B.rows.has(b)||(G.push({key:b,task:{project:d,file:e}}),B.contentHashes.set(b,c))}if(w&&G.length>0){let a=await (0,m.batchAll)(G.map(({key:a,task:{project:b,file:c}})=>async()=>{let d=c.sessionId,e=B.contentHashes.get(a);return{key:a,cached:await (0,j.isSessionFullyCached)(b.name,d,e)}}),10),b=new Set;for(let c of a)"fulfilled"===c.status&&c.value.cached&&b.add(c.value.key);G=G.filter(({key:a})=>b.has(a))}let H=new Set;if(G.length>0)for(let a=0;a<G.length;a+=10){let b=G.slice(a,a+10);for(let a of(await Promise.allSettled(b.map(async({key:a,task:{project:b,file:c}})=>{let d,e=c.sessionId,i=B.contentHashes.get(a)??"",l=w&&x.length>0?`${u}/eval-ctx/${e}`:`${u}/${e}`,m=await (0,j.getCachedResult)("filters",b.name,l,z,i);if(m)d=m.value;else{let a,{entries:c,rawLines:m}=await (0,g.parseSessionLog)(b.name,e),n=(0,h.calculateLogStats)(c);if(w&&x.length>0){let c=await Promise.all(x.map(a=>(0,j.getPerItemCacheWithHook)("evals",b.name,e,a.name,(0,k.hashItemCode)(a.fn),i)));if(c.every(a=>null!==a))for(let b of(a={},c)){let c=b.value;a[c.name]={pass:c.pass,score:c.score,error:c.error,message:c.message}}}d=await f(m,n,b.name,e,r,a),(0,j.setCachedResult)("filters",b.name,l,d,z,i)}let o={};for(let a of d.results)a.skipped||a.error||(o[a.name]=a.value);let p={projectName:b.name,sessionId:e,lastModified:c.lastModified.toISOString(),lastModifiedFormatted:c.lastModifiedFormatted||(0,n.formatDate)(c.lastModified),filterValues:o};return{key:a,row:p}}))))if("fulfilled"===a.status){let{key:b,row:c}=a.value;B.rows.set(b,c),B.metaDirty=!0,H.add(b)}}let I=[...function(a){if(!a.metaDirty&&a.cachedFilterMeta)return a.cachedFilterMeta;a.metaDirty&&function(a){for(let b of a.filterNames)a.accumulators[b]={type:"unknown",min:1/0,max:-1/0,uniqueStrings:new Set};for(let b of a.rows.values())!function(a,b){for(let[c,d]of Object.entries(b)){let b=a[c];b&&("boolean"==typeof d?b.type="boolean":"number"==typeof d?(b.type="number",d<b.min&&(b.min=d),d>b.max&&(b.max=d)):"string"==typeof d&&(b.type="string",b.uniqueStrings.add(d)))}}(a.accumulators,b.filterValues)}(a);let b=a.filterNames.map(b=>{let c=a.accumulators[b],d=a.filterLabels[b]??b;return"number"===c.type?{type:"number",name:b,label:d,min:c.min,max:c.max}:"string"===c.type?{type:"string",name:b,label:d,values:Array.from(c.uniqueStrings).sort()}:{type:"boolean",name:b,label:d}});return a.cachedFilterMeta=b,a.metaDirty=!1,b}(B)];for(let a of s)if("lastModified"===a.name){let b="",c="";for(let a of B.rows.values())(!b||a.lastModified<b)&&(b=a.lastModified),(!c||a.lastModified>c)&&(c=a.lastModified);b&&c&&I.push({type:"date",name:a.name,label:a.label,min:new Date(b).toLocaleDateString("en-CA"),max:new Date(c).toLocaleDateString("en-CA")})}let J=Array.from(B.rows.values());if(w){let a=J.filter(a=>{let b=`${a.projectName}/${a.sessionId}`;return!H.has(b)});if(a.length>0){let b=await (0,m.batchAll)(a.map(a=>async()=>{let b=`${a.projectName}/${a.sessionId}`,c=B.contentHashes.get(b);return{session:a,key:b,cached:await (0,j.isSessionFullyCached)(a.projectName,a.sessionId,c)}}),10),c=new Set;for(let a of b)"fulfilled"!==a.status||a.value.cached||(c.add(a.value.key),B.rows.delete(a.value.key),B.contentHashes.delete(a.value.key),B.metaDirty=!0);J=J.filter(a=>{let b=`${a.projectName}/${a.sessionId}`;return!c.has(b)})}}let K=b?.page??1,L=b?.pageSize??25;if(b?.filters&&Object.keys(b.filters).length>0){var e,o;e=J,o=b.filters,q=e.filter(a=>{for(let b of I){let c=o[b.name];if(c)switch(c.type){case"boolean":{let d=a.filterValues[b.name];if(void 0===d||"all"===c.value)continue;if("true"===c.value&&!0!==d||"false"===c.value&&!1!==d)return!1;break}case"number":{let d=a.filterValues[b.name];if(void 0===d)continue;if(d<c.min||d>c.max)return!1;break}case"string":{let d=a.filterValues[b.name];if(void 0===d)continue;if(c.selected.length>0&&!c.selected.includes(d))return!1;break}case"date":{let b=new Date(a.lastModified).toLocaleDateString("en-CA");if(c.from&&b<c.from||c.to&&b>c.to)return!1}}}return!0})}else q=J;q.sort((a,b)=>b.lastModified.localeCompare(a.lastModified));let M=J.length,N=q.length,O=(K-1)*L,P=q.slice(O,O+L),Q=Math.round(performance.now()-t);return{ok:!0,hasFilters:!0,payload:{sessions:P,filterMeta:I,totalDurationMs:Q,totalCount:M,matchingCount:N,page:K,pageSize:L}}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}(0,o.ensureServerEntryExports)([q]),(0,b.registerServerReference)(q,"60464f5b613abcd43072ca3ca93d3cb051574edb93",null),a.s(["computeDashboard",()=>q],42298);var r=a.i(46325),s=a.i(65003),t=a.i(31810);let u="__CLAUDEYE_AGGREGATE_INDEX__";async function v(a){try{await (0,c.ensureEvalsLoaded)();let b=a??"default",e=(0,d.getAggregatesForView)(b);if(0===e.length)return{ok:!0,hasAggregates:!1};let n=performance.now(),o=await (0,k.hashEvalsModule)(),p=e.map(a=>a.name),q=function(a,b,c){let d=globalThis,e=d[u];if(e&&e.viewName===a&&e.evalsHash===b&&e.aggregateNames.length===c.length&&e.aggregateNames.every((a,b)=>a===c[b]))return e;let f={viewName:a,evalsHash:b,aggregateNames:c,collectedSessions:new Map,contentHashes:new Map};return d[u]=f,f}(b,o,p),v=await (0,i.getCachedProjectFolders)(),w=[];for(let a of(await (0,m.batchAll)(v.map(a=>async()=>{let b=await (0,i.getCachedSessionFiles)(a.path);return{project:a,sessionFiles:b}}),10)))if("fulfilled"===a.status)for(let b of a.value.sessionFiles)b.sessionId&&w.push({project:a.value.project,file:b});let x=new Set;for(let a of w){let b=`${a.project.name}/${a.file.sessionId}`;x.add(b)}for(let a of q.collectedSessions.keys())x.has(a)||(q.collectedSessions.delete(a),q.contentHashes.delete(a));let y=[];for(let a of(await (0,m.batchAll)(w.map(({project:a,file:b})=>async()=>{let c,d=b.sessionId,e=`${a.name}/${d}`;try{c=await (0,k.hashSessionFile)(a.name,d)}catch{c=crypto.randomUUID()}return{key:e,contentHash:c,project:a,file:b}}),10))){if("fulfilled"!==a.status)continue;let{key:b,contentHash:c,project:d,file:e}=a.value;q.contentHashes.get(b)===c&&q.collectedSessions.has(b)||y.push({key:b,task:{project:d,file:e},contentHash:c})}if(y.length>0){let a=(0,l.hasEvals)()?(0,l.getSessionScopedEvals)():[],c=(0,r.hasEnrichers)()?(0,r.getSessionScopedEnrichers)():[],i=(0,d.getFiltersForView)(b);for(let d=0;d<y.length;d+=10){let k=y.slice(d,d+10);for(let d of(await Promise.allSettled(k.map(async({key:d,task:{project:k,file:l},contentHash:m})=>{let n=l.sessionId,o=`${b}/agg/${n}`,q=await (0,j.getCachedResult)("aggregates",k.name,o,p,m);if(q){let a={};for(let b of Object.values(q.value))Object.assign(a,b);return{key:d,contentHash:m,collected:{projectName:k.name,sessionId:n,values:a}}}let{entries:r,rawLines:u}=await (0,g.parseSessionLog)(k.name,n),v=(0,h.calculateLogStats)(r),w={};if(a.length>0)for(let b of(await (0,s.runAllEvals)(u,v,k.name,n,a)).results)b.skipped||(w[b.name]={pass:b.pass,score:b.score,error:b.error,message:b.message});let x={};if(c.length>0)for(let a of(await (0,t.runAllEnrichers)(u,v,k.name,n,c)).results)a.skipped||a.error||(x[a.name]=a.data);let y={};if(i.length>0)for(let a of(await f(u,v,k.name,n,i)).results)a.skipped||a.error||(y[a.name]=a.value);let z={entries:u,stats:v,projectName:k.name,sessionId:n,source:"session",evalResults:w,enrichResults:x,filterValues:y},A={},B={};for(let a of e)try{if(a.condition){let b={entries:u,stats:v,projectName:k.name,sessionId:n,source:"session"};if(!await a.condition(b))continue}let b=await a.collect(z);A[a.name]=b,Object.assign(B,b)}catch{}return(0,j.setCachedResult)("aggregates",k.name,o,A,p,m),{key:d,contentHash:m,collected:{projectName:k.name,sessionId:n,values:B}}}))))if("fulfilled"===d.status){let{key:a,contentHash:b,collected:c}=d.value;q.collectedSessions.set(a,c),q.contentHashes.set(a,b)}}}let z=Array.from(q.collectedSessions.values()),A=[];for(let a of e)try{let b=await a.reduce(z),c=b.length>0?Object.keys(b[0]):[];A.push({name:a.name,label:a.label,rows:b,columns:c})}catch{A.push({name:a.name,label:a.label,rows:[],columns:[]})}let B=Math.round(performance.now()-n);return{ok:!0,hasAggregates:!0,payload:{aggregates:A,totalSessions:z.length,totalDurationMs:B}}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}(0,o.ensureServerEntryExports)([v]),(0,b.registerServerReference)(v,"4044be55ec9baafd1a5ea37afd2d32e7c6e2a080f2",null),a.s(["computeAggregates",()=>v],4930)}];
2
2
 
3
3
  //# sourceMappingURL=app_actions_compute-dashboard_ts_fc151dbb._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[63616,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(38246),e=a.i(210),f=a.i(70106);let g=(0,f.default)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]),h=(0,f.default)("shield-x",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m14.5 9.5-5 5",key:"17q4r4"}],["path",{d:"m9.5 9.5 5 5",key:"18nt4w"}]]),i=(0,f.default)("shield-alert",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]]);var j=a.i(3314),k=a.i(5784),l=a.i(5151),m=a.i(33441),n=a.i(65967),o=a.i(5050);let p=(0,o.createServerReference)("409643939e44d459dc768a47245cb5d4d57f5d3bec",o.callServer,void 0,o.findSourceMapURL,"getHookActivityAction"),q=(0,o.createServerReference)("60055fed138745f6f61c1979aa4f7d2258e8155d82",o.callServer,void 0,o.findSourceMapURL,"searchHookActivityAction");var r=a.i(6236),s=a.i(90619),t=a.i(95947);function u({decision:a}){return"deny"===a?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-[0.65rem] font-semibold tracking-wide uppercase bg-red-500/10 text-red-400 border border-red-500/20",children:[(0,b.jsx)(h,{className:"h-3 w-3"}),"Deny"]}):"instruct"===a?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-[0.65rem] font-semibold tracking-wide uppercase bg-amber-500/10 text-amber-400 border border-amber-500/20",children:[(0,b.jsx)(i,{className:"h-3 w-3"}),"Instruct"]}):(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-[0.65rem] font-semibold tracking-wide uppercase bg-emerald-500/10 text-emerald-400 border border-emerald-500/20",children:[(0,b.jsx)(g,{className:"h-3 w-3"}),"Allow"]})}function v({eventType:a}){return(0,b.jsx)("span",{className:"inline-flex items-center rounded px-1.5 py-0.5 text-[0.6rem] font-medium bg-muted text-muted-foreground border border-border/50",children:a})}function w({mode:a}){let c="default"===a;return(0,b.jsx)("span",{className:`inline-flex items-center rounded px-1.5 py-0.5 text-[0.6rem] font-medium border ${c?"bg-sky-500/10 text-sky-400 border-sky-500/20":"bg-amber-500/10 text-amber-400 border-amber-500/20"}`,children:a})}function x({ms:a}){return(0,b.jsx)("span",{className:`font-mono text-[0.7rem] ${a>500?"text-red-400":a>100?"text-amber-400":"text-muted-foreground"}`,children:a<1e3?`${a}ms`:`${(a/1e3).toFixed(1)}s`})}function y({text:a}){let[d,e]=(0,c.useState)(!1),f=async b=>{b.stopPropagation();try{await navigator.clipboard.writeText(a),e(!0),setTimeout(()=>e(!1),1500)}catch{let b=document.createElement("textarea");b.value=a,b.style.position="fixed",b.style.opacity="0",document.body.appendChild(b),b.select(),document.execCommand("copy"),document.body.removeChild(b),e(!0),setTimeout(()=>e(!1),1500)}};return(0,b.jsx)("button",{onClick:f,className:"inline-flex items-center justify-center h-5 w-5 rounded hover:bg-muted/50 text-muted-foreground hover:text-foreground transition-colors",title:"Copy",children:d?(0,b.jsx)(m.Check,{className:"h-3 w-3 text-emerald-400"}):(0,b.jsx)(l.Copy,{className:"h-3 w-3"})})}function z({value:a,onChange:c}){return(0,b.jsx)("div",{className:"inline-flex items-center rounded-md border border-border bg-muted/30 p-0.5",children:[{label:"All",value:""},{label:"Allow",value:"allow"},{label:"Instruct",value:"instruct"},{label:"Deny",value:"deny"}].map(d=>(0,b.jsx)("button",{onClick:()=>c(d.value),className:`px-2.5 py-1 text-[0.65rem] font-medium rounded transition-all ${a===d.value?"deny"===d.value?"bg-red-500/15 text-red-400 shadow-sm":"allow"===d.value?"bg-emerald-500/15 text-emerald-400 shadow-sm":"instruct"===d.value?"bg-amber-500/15 text-amber-400 shadow-sm":"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,children:d.label},d.value))})}function A({stats:a}){let c=a.totalEvents>0?(a.denyCount/a.totalEvents*100).toFixed(0):"0";return(0,b.jsxs)("div",{className:"flex items-center gap-6 text-[0.7rem] text-muted-foreground",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{className:"text-foreground font-mono font-semibold",children:a.totalEvents})," total events"]}),(0,b.jsxs)("div",{children:[(0,b.jsxs)("span",{className:`font-mono font-semibold ${a.denyCount>0?"text-red-400":"text-foreground"}`,children:[c,"%"]})," ","deny rate"]}),(0,b.jsxs)("div",{className:"hidden sm:block",children:["top policy:"," ",(0,b.jsx)("span",{className:"font-mono text-foreground",children:a.topPolicy??"—"})]})]})}function B({item:a}){return(0,b.jsx)("tr",{children:(0,b.jsx)("td",{colSpan:10,className:"px-0 py-0",children:(0,b.jsxs)("div",{className:"px-6 py-3 bg-muted/20 border-t border-border/30 space-y-2 text-xs animate-in fade-in slide-in-from-top-1 duration-150",children:[(0,b.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-x-8 gap-y-1.5",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{className:"text-muted-foreground",children:"Session ID: "}),(0,b.jsx)("span",{className:"font-mono text-foreground",children:a.sessionId??"—"}),a.sessionId&&(0,b.jsx)(y,{text:a.sessionId})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{className:"text-muted-foreground",children:"CWD: "}),(0,b.jsx)("span",{className:"font-mono text-foreground",children:a.cwd??"—"}),a.cwd&&(0,b.jsx)(y,{text:a.cwd})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{className:"text-muted-foreground",children:"Transcript: "}),(0,b.jsx)("span",{className:"font-mono text-foreground break-all",children:a.transcriptPath??"—"})]})]}),a.reason&&(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{className:"text-muted-foreground",children:"Full reason: "}),(0,b.jsx)("span",{className:"text-foreground",children:a.reason})]})]})})})}function C(){let{intervalSec:a}=(0,r.useAutoRefresh)(),f=(0,s.useUrlParams)(),g=(0,c.useRef)(!1),[h,i]=(0,c.useState)(()=>(0,t.paramToPage)(f.get("page"))),[l,m]=(0,c.useState)(null),[o,y]=(0,c.useState)(null),[C,D]=(0,c.useState)(()=>{let a=f.get("decision");return"allow"===a||"deny"===a||"instruct"===a?a:""}),[E,F]=(0,c.useState)(()=>f.get("event")??""),[G,H]=(0,c.useState)(()=>f.get("policy")??""),I=(0,c.useRef)(null),J=(0,c.useRef)({filterDecision:C,filterEventType:E,filterPolicy:G});J.current={filterDecision:C,filterEventType:E,filterPolicy:G},(0,c.useEffect)(()=>{if(!g.current){g.current=!0;return}f.setAll({decision:C||void 0,event:E||void 0,policy:G||void 0,page:(0,t.pageToParam)(h)})},[C,E,G,h]);let K=""!==C||""!==E||""!==G,L=(0,c.useCallback)(async a=>{try{let b,{filterDecision:c,filterEventType:d,filterPolicy:e}=J.current;b=""!==c||""!==d||""!==e?await q({decision:c||void 0,eventType:d||void 0,policyName:e||void 0},a):await p(a),m(b)}catch{}},[]);(0,c.useEffect)(()=>{L(h);let b=setInterval(()=>L(h),a>0?1e3*a:5e3);return()=>clearInterval(b)},[h,L,a]),(0,c.useEffect)(()=>(I.current&&clearTimeout(I.current),I.current=setTimeout(()=>{i(1),y(null),L(1)},300),()=>{I.current&&clearTimeout(I.current)}),[C,E,G]);let M=l?.entries??[],N=l?.totalPages??1;return(0,b.jsxs)("div",{className:"min-h-screen bg-background px-4 py-6 sm:px-6 lg:px-10",children:[(0,b.jsxs)("div",{className:"mb-6",children:[(0,b.jsxs)(d.default,{href:"/",className:"inline-flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[(0,b.jsx)(e.ArrowLeft,{className:"h-3.5 w-3.5"}),"Back"]}),(0,b.jsxs)("div",{className:"flex items-center gap-3 mt-3",children:[(0,b.jsx)("h1",{className:"text-2xl font-bold text-foreground tracking-tight",children:"Hook Activity"}),(0,b.jsxs)("span",{className:"relative flex h-2.5 w-2.5 mt-0.5",children:[(0,b.jsx)("span",{className:"animate-ping absolute inline-flex h-full w-full rounded-full bg-emerald-400 opacity-75"}),(0,b.jsx)("span",{className:"relative inline-flex rounded-full h-2.5 w-2.5 bg-emerald-500"})]})]}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"Policy evaluations from Claude Code hook events"}),l?.stats&&l.stats.totalEvents>0&&(0,b.jsx)("div",{className:"mt-3",children:(0,b.jsx)(A,{stats:l.stats})})]}),(0,b.jsxs)("div",{className:"bg-card border border-border rounded-lg overflow-hidden",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-3 px-4 py-2.5 border-b border-border bg-muted/20",children:[(0,b.jsx)(z,{value:C,onChange:D}),(0,b.jsxs)("select",{value:E,onChange:a=>F(a.target.value),className:"h-7 rounded-md border border-border bg-background px-2 text-xs text-foreground focus:outline-none focus:ring-2 focus:ring-primary/40 focus:border-primary/40 transition-shadow",children:[(0,b.jsx)("option",{value:"",children:"All Events"}),(0,b.jsx)("option",{value:"PreToolUse",children:"PreToolUse"}),(0,b.jsx)("option",{value:"PostToolUse",children:"PostToolUse"}),(0,b.jsx)("option",{value:"SessionStart",children:"SessionStart"}),(0,b.jsx)("option",{value:"SessionEnd",children:"SessionEnd"}),(0,b.jsx)("option",{value:"UserPromptSubmit",children:"UserPromptSubmit"}),(0,b.jsx)("option",{value:"PermissionRequest",children:"PermissionRequest"})]}),(0,b.jsx)("div",{className:"relative",children:(0,b.jsx)("input",{type:"text",value:G,onChange:a=>H(a.target.value),placeholder:"Filter by policy\\u2026",className:"h-7 rounded-md border border-border bg-background px-2.5 text-xs text-foreground placeholder:text-muted-foreground w-44 focus:outline-none focus:ring-2 focus:ring-primary/40 focus:border-primary/40 transition-shadow"})})]}),0===M.length?(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center py-16 px-4",children:[(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsx)(j.Shield,{className:"h-12 w-12 text-muted-foreground/30"}),(0,b.jsx)("span",{className:"absolute inset-0 animate-ping",children:(0,b.jsx)(j.Shield,{className:"h-12 w-12 text-muted-foreground/10"})})]}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground mt-4",children:K?"No matching activity.":"Waiting for hook events…"})]}):(0,b.jsx)("div",{className:"overflow-x-auto",children:(0,b.jsxs)("table",{className:"w-full text-xs",children:[(0,b.jsx)("thead",{children:(0,b.jsxs)("tr",{className:"text-left text-muted-foreground border-b border-border bg-muted/30",children:[(0,b.jsx)("th",{className:"px-4 py-2.5 font-medium w-6"}),(0,b.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Decision"}),(0,b.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Event"}),(0,b.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Tool"}),(0,b.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Policy"}),(0,b.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Reason"}),(0,b.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Duration"}),(0,b.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Session"}),(0,b.jsx)("th",{className:"px-3 py-2.5 font-medium",children:"Mode"}),(0,b.jsx)("th",{className:"px-3 py-2.5 font-medium text-right",children:"Time"})]})}),(0,b.jsx)("tbody",{className:"divide-y divide-border/30",children:M.map((a,d)=>{var e,f;let g,h="deny"===a.decision,i=o===d,j="instruct"===a.decision;return(0,b.jsxs)(c.default.Fragment,{children:[(0,b.jsxs)("tr",{onClick:()=>{y(a=>a===d?null:d)},className:`cursor-pointer transition-colors ${h?"bg-red-500/[0.03] hover:bg-red-500/[0.07] border-l-2 border-l-red-500/40":j?"bg-amber-500/[0.03] hover:bg-amber-500/[0.07] border-l-2 border-l-amber-500/40":d%2==0?"hover:bg-muted/30":"bg-muted/[0.04] hover:bg-muted/30"} ${i?"bg-muted/20":""}`,children:[(0,b.jsx)("td",{className:"px-4 py-2",children:(0,b.jsx)(k.ChevronDown,{className:`h-3.5 w-3.5 text-muted-foreground transition-transform duration-150 ${i?"rotate-0":"-rotate-90"}`})}),(0,b.jsx)("td",{className:"px-3 py-2",children:(0,b.jsx)(u,{decision:a.decision})}),(0,b.jsx)("td",{className:"px-3 py-2",children:(0,b.jsx)(v,{eventType:a.eventType})}),(0,b.jsx)("td",{className:"px-3 py-2 font-mono text-foreground",children:a.toolName??"—"}),(0,b.jsx)("td",{className:"px-3 py-2 font-mono text-foreground",children:a.policyName??"—"}),(0,b.jsx)("td",{className:"px-3 py-2 text-muted-foreground truncate max-w-[240px]",title:a.reason??"",children:a.reason??"—"}),(0,b.jsx)("td",{className:"px-3 py-2",children:(0,b.jsx)(x,{ms:a.durationMs})}),(0,b.jsx)("td",{className:"px-3 py-2 font-mono text-muted-foreground",title:a.sessionId??"",children:(e=a.sessionId)?e.slice(0,8):"—"}),(0,b.jsx)("td",{className:"px-3 py-2",children:a.permissionMode?(0,b.jsx)(w,{mode:a.permissionMode}):"—"}),(0,b.jsx)("td",{className:"px-3 py-2 text-right text-muted-foreground whitespace-nowrap",title:new Date(a.timestamp).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit"}),children:(f=a.timestamp,(g=Date.now()-f)<6e4?`${Math.max(1,Math.floor(g/1e3))}s ago`:g<36e5?`${Math.floor(g/6e4)}m ago`:g<864e5?`${Math.floor(g/36e5)}h ago`:`${Math.floor(g/864e5)}d ago`)})]}),i&&(0,b.jsx)(B,{item:a})]},`${a.timestamp}-${d}`)})})]})}),(0,b.jsx)(n.default,{currentPage:h,totalPages:N,onPageChange:a=>{i(a),y(null)}})]})]})}a.s(["default",()=>C],63616)}];
2
+
3
+ //# sourceMappingURL=app_hooks_hooks-client_tsx_8b8d68a3._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[83694,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(50944),e=a.i(5050);let f=(0,e.createServerReference)("40af67c10517fe21de69837d06007283ec56bdad2c",e.callServer,void 0,e.findSourceMapURL,"login");var g=a.i(35960),h=a.i(38246);function i(){let a=(0,d.useSearchParams)(),e=(0,d.useRouter)(),i=a.get("from")??"/",[j,k]=(0,c.useState)(null),[l,m]=(0,c.useState)(!1);async function n(a){a.preventDefault(),k(null),m(!0);let b=new FormData(a.currentTarget);b.set("redirectTo",i);let c=await f(b);c?.error?(k(c.error),m(!1)):c?.redirectTo&&e.push(c.redirectTo)}return(0,b.jsx)("div",{className:"min-h-screen flex items-center justify-center bg-background px-4",children:(0,b.jsxs)("div",{className:"w-full max-w-sm rounded-lg border border-border bg-card p-8 shadow-lg",children:[(0,b.jsxs)("div",{className:"flex flex-col items-center gap-2 mb-6",children:[(0,b.jsx)(h.default,{href:"/",children:(0,b.jsx)(g.Logo,{width:36,height:36})}),(0,b.jsx)("h2",{className:"text-xl font-semibold text-foreground",children:"Sign in to Claudeye"}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"Enter your credentials to continue"})]}),(0,b.jsxs)("form",{onSubmit:n,className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)("label",{htmlFor:"username",className:"text-sm font-medium text-foreground",children:"Username"}),(0,b.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,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)("label",{htmlFor:"password",className:"text-sm font-medium text-foreground",children:"Password"}),(0,b.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"})]}),j&&(0,b.jsx)("p",{className:"text-sm text-red-500 bg-red-500/10 rounded-md px-3 py-2",children:j}),(0,b.jsx)("button",{type:"submit",disabled:l,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:l?"Signing in...":"Sign in"})]})]})})}a.s(["default",()=>i],83694)}];
1
+ module.exports=[83694,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(50944),e=a.i(5050);let f=(0,e.createServerReference)("400a0a63ed462ed8f7f93b1b4eb2e9b242a48b82c0",e.callServer,void 0,e.findSourceMapURL,"login");var g=a.i(35960),h=a.i(38246);function i(){let a=(0,d.useSearchParams)(),e=(0,d.useRouter)(),i=a.get("from")??"/",[j,k]=(0,c.useState)(null),[l,m]=(0,c.useState)(!1);async function n(a){a.preventDefault(),k(null),m(!0);let b=new FormData(a.currentTarget);b.set("redirectTo",i);let c=await f(b);c?.error?(k(c.error),m(!1)):c?.redirectTo&&e.push(c.redirectTo)}return(0,b.jsx)("div",{className:"min-h-screen flex items-center justify-center bg-background px-4",children:(0,b.jsxs)("div",{className:"w-full max-w-sm rounded-lg border border-border bg-card p-8 shadow-lg",children:[(0,b.jsxs)("div",{className:"flex flex-col items-center gap-2 mb-6",children:[(0,b.jsx)(h.default,{href:"/",children:(0,b.jsx)(g.Logo,{width:36,height:36})}),(0,b.jsx)("h2",{className:"text-xl font-semibold text-foreground",children:"Sign in to Claudeye"}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"Enter your credentials to continue"})]}),(0,b.jsxs)("form",{onSubmit:n,className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)("label",{htmlFor:"username",className:"text-sm font-medium text-foreground",children:"Username"}),(0,b.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,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)("label",{htmlFor:"password",className:"text-sm font-medium text-foreground",children:"Password"}),(0,b.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"})]}),j&&(0,b.jsx)("p",{className:"text-sm text-red-500 bg-red-500/10 rounded-md px-3 py-2",children:j}),(0,b.jsx)("button",{type:"submit",disabled:l,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:l?"Signing in...":"Sign in"})]})]})})}a.s(["default",()=>i],83694)}];
2
2
 
3
3
  //# sourceMappingURL=app_login_page_tsx_ccc0019b._.js.map