@karan171996/metricflow 0.9.0 → 0.10.0

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 (124) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/fallback-build-manifest.json +3 -3
  4. package/.next/next-server.js.nft.json +1 -1
  5. package/.next/prerender-manifest.json +5 -33
  6. package/.next/server/app/_global-error.html +1 -1
  7. package/.next/server/app/_global-error.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  12. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  13. package/.next/server/app/_not-found.html +2 -2
  14. package/.next/server/app/_not-found.rsc +38 -43
  15. package/.next/server/app/_not-found.segments/_full.segment.rsc +38 -43
  16. package/.next/server/app/_not-found.segments/_index.segment.rsc +29 -34
  17. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  18. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  19. package/.next/server/app/api/analyze/route.js.nft.json +1 -1
  20. package/.next/server/app/api/connect/route.js.nft.json +1 -1
  21. package/.next/server/app/api/health/route.js.nft.json +1 -1
  22. package/.next/server/app/api/metrics/route.js.nft.json +1 -1
  23. package/.next/server/app/api/settings/route.js +2 -1
  24. package/.next/server/app/api/settings/route.js.nft.json +1 -1
  25. package/.next/server/app/api/setup/ai/route.js.nft.json +1 -1
  26. package/.next/server/app/api/setup/route.js.nft.json +1 -1
  27. package/.next/server/app/connect/page.js.nft.json +1 -1
  28. package/.next/server/app/connect/page_client-reference-manifest.js +1 -1
  29. package/.next/server/app/connect.html +2 -2
  30. package/.next/server/app/connect.rsc +39 -44
  31. package/.next/server/app/connect.segments/_full.segment.rsc +39 -44
  32. package/.next/server/app/connect.segments/_index.segment.rsc +29 -34
  33. package/.next/server/app/connect.segments/_tree.segment.rsc +2 -2
  34. package/.next/server/app/connect.segments/connect/__PAGE__.segment.rsc +6 -6
  35. package/.next/server/app/index.html +2 -2
  36. package/.next/server/app/index.rsc +39 -44
  37. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  38. package/.next/server/app/index.segments/_full.segment.rsc +39 -44
  39. package/.next/server/app/index.segments/_index.segment.rsc +29 -34
  40. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  41. package/.next/server/app/page.js.nft.json +1 -1
  42. package/.next/server/app/page_client-reference-manifest.js +1 -1
  43. package/.next/server/app/performance/[slug]/page.js.nft.json +1 -1
  44. package/.next/server/app/performance/[slug]/page_client-reference-manifest.js +1 -1
  45. package/.next/server/app/performance/page.js.nft.json +1 -1
  46. package/.next/server/app/performance/page_client-reference-manifest.js +1 -1
  47. package/.next/server/app/performance.html +2 -2
  48. package/.next/server/app/performance.rsc +46 -57
  49. package/.next/server/app/performance.segments/_full.segment.rsc +46 -57
  50. package/.next/server/app/performance.segments/_index.segment.rsc +29 -34
  51. package/.next/server/app/performance.segments/_tree.segment.rsc +2 -2
  52. package/.next/server/app/performance.segments/performance/__PAGE__.segment.rsc +11 -17
  53. package/.next/server/app/settings/page.js.nft.json +1 -1
  54. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  55. package/.next/server/app/setup/page.js.nft.json +1 -1
  56. package/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  57. package/.next/server/app/setup.html +2 -2
  58. package/.next/server/app/setup.rsc +40 -45
  59. package/.next/server/app/setup.segments/_full.segment.rsc +40 -45
  60. package/.next/server/app/setup.segments/_index.segment.rsc +29 -34
  61. package/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  62. package/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +7 -7
  63. package/.next/server/app/tools/[tool]/page.js.nft.json +1 -1
  64. package/.next/server/app/tools/[tool]/page_client-reference-manifest.js +1 -1
  65. package/.next/server/chunks/[root-of-the-server]__0fkj1-q._.js +1 -1
  66. package/.next/server/chunks/[root-of-the-server]__0o2ceqr._.js +1 -1
  67. package/.next/server/chunks/[root-of-the-server]__0pil1g6._.js +1 -1
  68. package/.next/server/chunks/[root-of-the-server]__17ksca-._.js +3 -0
  69. package/.next/server/chunks/[root-of-the-server]__1f_fo0j._.js +1 -1
  70. package/.next/server/chunks/[root-of-the-server]__1naf7j4._.js +1 -1
  71. package/.next/server/chunks/[root-of-the-server]__1rx5s6r._.js +1 -1
  72. package/.next/server/chunks/_0j7t8f9._.js +3 -0
  73. package/.next/server/chunks/ssr/[root-of-the-server]__02c3m72._.js +1 -1
  74. package/.next/server/chunks/ssr/[root-of-the-server]__1jr0qvs._.js +1 -1
  75. package/.next/server/chunks/ssr/_02_o-ya._.js +1 -1
  76. package/.next/server/chunks/ssr/_045bvlq._.js +1 -1
  77. package/.next/server/chunks/ssr/_0loqsig._.js +3 -0
  78. package/.next/server/chunks/ssr/_0un641_._.js +1 -1
  79. package/.next/server/chunks/ssr/_0x78uxx._.js +3 -0
  80. package/.next/server/chunks/ssr/_13m9nev._.js +1 -1
  81. package/.next/server/chunks/ssr/{_1n6rdd2._.js → _1e2kw7_._.js} +2 -2
  82. package/.next/server/chunks/ssr/_1my0v50._.js +3 -0
  83. package/.next/server/chunks/ssr/_1t-coe_._.js +151 -0
  84. package/.next/server/chunks/ssr/_1te3xjw._.js +3 -0
  85. package/.next/server/chunks/ssr/_1yayvr-._.js +3 -0
  86. package/.next/server/chunks/ssr/components_1_8btz1._.js +1 -1
  87. package/.next/server/middleware-build-manifest.js +3 -3
  88. package/.next/server/pages/404.html +2 -2
  89. package/.next/server/pages/500.html +1 -1
  90. package/.next/server/prefetch-hints.json +0 -14
  91. package/.next/static/chunks/04gu7yw10i4rc.js +1 -0
  92. package/.next/static/chunks/2a13xlyo2-he7.js +1 -0
  93. package/.next/static/chunks/{2ts5849lckpvw.js → 2gixnay4u3hoe.js} +1 -1
  94. package/.next/static/chunks/{036zzfotyi252.js → 2r1mqyk-y9ywu.js} +1 -1
  95. package/.next/static/chunks/2sh7680ti_qkv.js +1 -0
  96. package/.next/static/chunks/32qkw4q4c_gv1.css +1 -0
  97. package/.next/static/chunks/32w6d6b9f9xks.js +1 -0
  98. package/.next/static/chunks/3mkpnj4abn9jb.js +1 -0
  99. package/.next/static/chunks/3zxdkbf-vu5l4.js +1 -0
  100. package/.next/trace +1 -1
  101. package/.next/trace-build +1 -1
  102. package/package.json +1 -1
  103. package/.next/server/app/settings.html +0 -2
  104. package/.next/server/app/settings.meta +0 -35
  105. package/.next/server/app/settings.rsc +0 -60
  106. package/.next/server/app/settings.segments/_full.segment.rsc +0 -60
  107. package/.next/server/app/settings.segments/_index.segment.rsc +0 -35
  108. package/.next/server/app/settings.segments/_tree.segment.rsc +0 -2
  109. package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +0 -43
  110. package/.next/server/chunks/[root-of-the-server]__18s35pf._.js +0 -3
  111. package/.next/server/chunks/ssr/_0_02db6._.js +0 -3
  112. package/.next/server/chunks/ssr/_0ompurr._.js +0 -7
  113. package/.next/server/chunks/ssr/_10-bhov._.js +0 -151
  114. package/.next/server/chunks/ssr/_19s4g71._.js +0 -3
  115. package/.next/static/chunks/18thq9ido-jej.js +0 -5
  116. package/.next/static/chunks/190rvtbj8tqbw.js +0 -1
  117. package/.next/static/chunks/1kqzgl2gb6ily.js +0 -1
  118. package/.next/static/chunks/2k0i-ii_d9i1v.js +0 -1
  119. package/.next/static/chunks/31od3fbrskb5_.js +0 -1
  120. package/.next/static/chunks/342os69xzg5nr.js +0 -1
  121. package/.next/static/chunks/41hd4j26grz8n.css +0 -1
  122. /package/.next/static/{tLjq-FpU0cC-ZxNdszo7D → xbaKdc39wmsvYFMLT0pcf}/_buildManifest.js +0 -0
  123. /package/.next/static/{tLjq-FpU0cC-ZxNdszo7D → xbaKdc39wmsvYFMLT0pcf}/_clientMiddlewareManifest.js +0 -0
  124. /package/.next/static/{tLjq-FpU0cC-ZxNdszo7D → xbaKdc39wmsvYFMLT0pcf}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[49719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},27699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},21517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},25328,(e,t,r)=>{t.exports=e.x("http2",()=>require("http2"))},24836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},4446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},59043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},2157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},88947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},55004,(e,t,r)=>{t.exports=e.x("tls",()=>require("tls"))},70722,(e,t,r)=>{t.exports=e.x("tty",()=>require("tty"))},92509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},24361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},6461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},90770,e=>{"use strict";let t=new Map;e.s(["getTimings",0,function(){return Array.from(t.entries()).map(([e,t])=>({name:e,value:t})).sort((e,t)=>t.value-e.value)},"recordTiming",0,function(e,r){t.set(e,Math.round(r))}])},12892,67119,e=>{"use strict";var t=e.i(2157),r=e.i(50227),s=e.i(39151),a=e.i(19374);function n(e,t=[],r=[]){let o,l="string"==typeof e?function(e,t,r=[]){if(null==t)throw Error("[lucide]: iconNode is required when icon name is used");return{name:e?.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),size:24,node:t,...r.length>0?{aliases:r}:{}}}(e,t,r):e,i=(0,s.forwardRef)(({className:e,...t},r)=>(0,s.createElement)(a.default,{ref:r,icon:l,className:e,...t}));return l.name&&(i.displayName=(o=(e=>{let t="",r=!1;for(let s of e){if("-"===s||"_"===s||s<=" "){r=t.length>0;continue}0===t.length?t+=s.toLowerCase():t+=r?s.toUpperCase():s,r=!1}return t})(l.name)).charAt(0).toUpperCase()+o.slice(1)),i}let o={name:"activity",size:24,node:[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]};o.node;let l=n(o),i={name:"bug",size:24,node:[["path",{d:"M12 20v-9",key:"1qisl0"}],["path",{d:"M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z",key:"uouzyp"}],["path",{d:"M14.12 3.88 16 2",key:"qol33r"}],["path",{d:"M21 21a4 4 0 0 0-3.81-4",key:"1b0z45"}],["path",{d:"M21 5a4 4 0 0 1-3.55 3.97",key:"5cxbf6"}],["path",{d:"M22 13h-4",key:"1jl80f"}],["path",{d:"M3 21a4 4 0 0 1 3.81-4",key:"1fjd4g"}],["path",{d:"M3 5a4 4 0 0 0 3.55 3.97",key:"1d7oge"}],["path",{d:"M6 13H2",key:"82j7cp"}],["path",{d:"m8 2 1.88 1.88",key:"fmnt4t"}],["path",{d:"M9 7.13V6a3 3 0 1 1 6 0v1.13",key:"1vgav8"}]]};i.node;let c=n(i);function d(e){if(!Number.isFinite(e))return"—";let t=Math.abs(Math.round(e));if(t<1e3)return`${Math.round(e)}ms`;if(t<59950)return`${+(e/1e3).toFixed(1)}s`;let r=Math.round(t/1e3),s=e<0?"-":"";return r<3600?`${s}${Math.floor(r/60)}m ${r%60}s`:`${s}${Math.floor(r/3600)}h ${Math.floor(r%3600/60)}m`}let p=["pages","traffic","loadTime","apdex","vitals","ajax","errorRate","errors"],u=e=>e.length?e.reduce((e,t)=>e+t,0)/e.length:0,h=e=>void 0===e?"—":d(e),f=e=>e.byTool?.sentry?.errors??(e.sentry&&{count:e.sentry.errorCount,latest:e.sentry.latestErrors}),x=e=>f(e)?.count??0,m={"new-relic":{label:"New Relic",icon:l,description:"Real-user performance per page: load time, Core Web Vitals, throughput and Apdex.",connectReason:"Add your New Relic keys to see load time and Core Web Vitals for each page.",setupNote:"The key that sends events (Ingest - License) is separate and is added later on the Connect page.",keys:{required:["NEWRELIC_API_KEY","NEXT_PUBLIC_NEWRELIC_ACCOUNT_ID"],optional:["NEWRELIC_INSERT_KEY"],derived:["NEWRELIC_REGION"]},capabilities:["pages","traffic","loadTime","apdex","vitals","ajax","errorRate"],stats:e=>[{label:"Avg Load Time",value:d(u(e.map(e=>e.newRelic.loadTime)))},{label:"Avg LCP",value:d(u(e.map(e=>e.newRelic.lcp)))},{label:"Avg TTFB",value:d(u(e.map(e=>e.newRelic.ttfb)))},{label:"Avg Apdex",value:u(e.map(e=>e.newRelic.apdexScore)).toFixed(2)}],columns:[{needs:"loadTime",header:"Load",cell:e=>d(e.newRelic.loadTime)},{needs:"vitals",header:"LCP",cell:e=>d(e.newRelic.lcp)},{needs:"vitals",header:"TTFB",cell:e=>d(e.newRelic.ttfb)},{needs:"vitals",header:"CLS",cell:e=>e.newRelic.cls.toFixed(2)},{needs:"vitals",header:"INP",cell:e=>{let t=e.newRelic.inp;return void 0===t?"—":d(t)}},{needs:"errorRate",header:"Error Rate",cell:e=>`${e.newRelic.errorRate.toFixed(2)}%`},{needs:"traffic",header:"Throughput",cell:e=>e.newRelic.throughput.toLocaleString()},{needs:"apdex",header:"Apdex",cell:e=>e.newRelic.apdexScore.toFixed(2)}]},sentry:{label:"Sentry",icon:c,description:"Errors per page over the last 24 hours, with page loads and web vitals when your site sends traces.",connectReason:"Add your Sentry keys to see the errors on each page.",keys:{required:["SENTRY_API_KEY","SENTRY_DSN"],optional:[]},capabilities:["pages","traffic","vitals","errors"],stats:e=>{let t=e.reduce((e,t)=>x(t)>(e?x(e):0)?t:e,null);return[{label:"Total Errors",value:String(e.map(x).reduce((e,t)=>e+t,0))},{label:"Pages With Errors",value:`${e.filter(e=>x(e)>0).length} of ${e.length}`},{label:"Noisiest Page",value:t?.name??"None"}]},columns:[{needs:"errors",header:"Errors",cell:e=>String(x(e))},{needs:"errors",header:"Latest Error",cell:e=>f(e)?.latest[0]?.title??"—"},{needs:"errors",header:"Last Seen",cell:e=>{let t=Date.parse(f(e)?.latest[0]?.lastSeen??"");return Number.isNaN(t)?"—":new Date(t).toLocaleString()}},{needs:"traffic",header:"Page loads (sampled)",cell:e=>e.byTool?.sentry?.traffic?.count.toLocaleString()??"—"},{needs:"vitals",header:"LCP",cell:e=>h(e.byTool?.sentry?.vitals?.lcp)},{needs:"vitals",header:"TTFB",cell:e=>h(e.byTool?.sentry?.vitals?.ttfb)},{needs:"vitals",header:"CLS",cell:e=>e.byTool?.sentry?.vitals?.cls?.toFixed(2)??"—"},{needs:"vitals",header:"INP",cell:e=>h(e.byTool?.sentry?.vitals?.inp)}]}},y=Object.fromEntries(Object.entries({NEWRELIC_API_KEY:{label:"New Relic User API key",secret:!0,help:'READS your data (starts NRAK-). Create it under API keys > key type "User".'},NEXT_PUBLIC_NEWRELIC_ACCOUNT_ID:{label:"New Relic account ID",secret:!1,help:"A plain number, shown next to your keys in New Relic."},SENTRY_API_KEY:{label:"Sentry auth token",secret:!0,help:"Lets the dashboard read issues (scopes: project:read, event:read)."},SENTRY_DSN:{label:"Sentry DSN",secret:!1,help:"Project settings, then Client Keys (DSN). The project and host are read from it."}}).map(([e,t])=>[e,t.label])),v=Object.keys(m);e.s(["KEY_LABELS",0,y,"TOOLS",0,m,"TOOL_IDS",0,v,"mergeMetrics",0,function(e,t,r){let s={};for(let[a,n]of Object.entries(t)){let t=r.includes(n)?void 0:e[n]?.[a];void 0!==t&&(s[a]=t)}return s},"sourcesFor",0,function(e){let t={};for(let r of p){let s=v.find(t=>e.includes(t)&&m[t].capabilities.includes(r));s&&(t[r]=s)}return t}],67119);let E=v.flatMap(e=>m[e].keys.required),g="NEWRELIC_REGION",R={us:{graphql:"https://api.newrelic.com/graphql",ingest:"https://insights-collector.newrelic.com"},eu:{graphql:"https://api.eu.newrelic.com/graphql",ingest:"https://insights-collector.eu01.nr-data.net"}},b={gemini:{label:"Google Gemini",key:"GEMINI_API_KEY"},claude:{label:"Anthropic Claude",key:"CLAUDE_API_KEY"},openai:{label:"OpenAI",key:"OPENAI_API_KEY"}},w="AI_PROVIDER";function _(e){return process.env[e]??""}let I=e=>m[e].keys.required.every(e=>_(e));function S(){return process.env.METRICFLOW_PROJECT_DIR||process.cwd()}let N=/[\s\0#"'`\\$]/;class T extends Error{}e.s(["AI_PROVIDERS",0,b,"AI_PROVIDER_KEY",0,w,"EnvWriteRefused",0,T,"INSERT_KEY",0,"NEWRELIC_INSERT_KEY","REGION_KEY",0,g,"SETUP_KEYS",0,E,"UNSAFE",0,N,"activeAi",0,function(){let e=process.env[w];for(let t of(e&&e in b?[e]:[]).concat(Object.keys(b))){let e=process.env[b[t].key];if(e)return{provider:t,key:e}}return null},"connectedTools",0,()=>v.filter(I),"env",0,_,"isToolConnected",0,I,"nrHosts",0,(e="eu"===process.env[g]?"eu":"us")=>R[e],"projectDir",0,S,"writeEnvLocal",0,function(e,s=process.env.METRICFLOW_ENV_FILE||(0,r.join)(S(),".env.local")){let a=new Set([...Object.values(m).flatMap(e=>[...e.keys.required,...e.keys.optional,...e.keys.derived??[]]),...Object.values(b).map(e=>e.key),w]);for(let[t,r]of Object.entries(e)){if(!a.has(t))throw new T("Refused to write a key name no tool declares.");if(N.test(r))throw new T("Refused to write a value with unsafe characters.")}let n=(0,t.existsSync)(s)?(0,t.readFileSync)(s,"utf8").split("\n"):[],o=new Map(Object.entries(e)),l=n.map(e=>{let t=e.match(/^\s*([A-Z0-9_]+)\s*=/)?.[1];if(t&&o.has(t)){let e=o.get(t);return o.delete(t),`${t}=${e}`}return e});for(;l.length&&""===l[l.length-1];)l.pop();for(let[e,t]of o)l.push(`${e}=${t}`);let i=`${s}.tmp`;for(let[r,a]of((0,t.writeFileSync)(i,l.join("\n")+"\n",{mode:384}),(0,t.renameSync)(i,s),Object.entries(e)))process.env[r]=a}],12892)},24514,e=>{"use strict";let t=new Set(["localhost","127.0.0.1","[::1]"]),r=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]);e.s(["REFUSAL_MESSAGE",0,()=>"1"===process.env.METRICFLOW_EXPOSED?"Setup and Connect are disabled because the dashboard is exposed on the network (--host). Restart without --host to use them.":"Setup is only available from localhost.","isLocalRequest",0,function(e){if("1"===process.env.METRICFLOW_EXPOSED)return!1;let s=e.headers.get("x-forwarded-for");if(s&&!s.split(",").every(e=>r.has(e.trim().replace(/^\[|\]$/g,"")))||"cross-site"===e.headers.get("sec-fetch-site"))return!1;let a=(e.headers.get("host")??"").replace(/:\d+$/,"");if(!t.has(a))return!1;let n=e.headers.get("origin");try{return!n||t.has(new URL(n).hostname)}catch{return!1}},"requireJson",0,function(e){return/^application\/json\s*(;|$)/i.test(e.headers.get("content-type")??"")?null:Response.json({error:"Send the request as application/json."},{status:415})}])},27252,e=>{"use strict";e.s(["default",()=>t]);let t=(0,e.i(18286).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs","default")},19374,e=>{"use strict";var t=e.i(27252);e.n(t)},18286,(e,t,r)=>{"use strict";t.exports=e.r(99403).vendored["react-rsc"].ReactServerDOMTurbopackServer}];
1
+ module.exports=[49719,(e,t,r)=>{t.exports=e.x("assert",()=>require("assert"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},27699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},21517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},25328,(e,t,r)=>{t.exports=e.x("http2",()=>require("http2"))},24836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},4446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},59043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},2157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},88947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},55004,(e,t,r)=>{t.exports=e.x("tls",()=>require("tls"))},70722,(e,t,r)=>{t.exports=e.x("tty",()=>require("tty"))},92509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},24361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},6461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},90770,e=>{"use strict";let t=new Map;e.s(["getTimings",0,function(){return Array.from(t.entries()).map(([e,t])=>({name:e,value:t})).sort((e,t)=>t.value-e.value)},"recordTiming",0,function(e,r){t.set(e,Math.round(r))}])},12892,78910,67119,e=>{"use strict";var t=e.i(2157),r=e.i(50227),s=e.i(39151),a=e.i(19374);function n(e,t=[],r=[]){let o,l="string"==typeof e?function(e,t,r=[]){if(null==t)throw Error("[lucide]: iconNode is required when icon name is used");return{name:e?.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),size:24,node:t,...r.length>0?{aliases:r}:{}}}(e,t,r):e,i=(0,s.forwardRef)(({className:e,...t},r)=>(0,s.createElement)(a.default,{ref:r,icon:l,className:e,...t}));return l.name&&(i.displayName=(o=(e=>{let t="",r=!1;for(let s of e){if("-"===s||"_"===s||s<=" "){r=t.length>0;continue}0===t.length?t+=s.toLowerCase():t+=r?s.toUpperCase():s,r=!1}return t})(l.name)).charAt(0).toUpperCase()+o.slice(1)),i}let o={name:"activity",size:24,node:[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]};o.node;let l=n(o),i={name:"bug",size:24,node:[["path",{d:"M12 20v-9",key:"1qisl0"}],["path",{d:"M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z",key:"uouzyp"}],["path",{d:"M14.12 3.88 16 2",key:"qol33r"}],["path",{d:"M21 21a4 4 0 0 0-3.81-4",key:"1b0z45"}],["path",{d:"M21 5a4 4 0 0 1-3.55 3.97",key:"5cxbf6"}],["path",{d:"M22 13h-4",key:"1jl80f"}],["path",{d:"M3 21a4 4 0 0 1 3.81-4",key:"1fjd4g"}],["path",{d:"M3 5a4 4 0 0 0 3.55 3.97",key:"1d7oge"}],["path",{d:"M6 13H2",key:"82j7cp"}],["path",{d:"m8 2 1.88 1.88",key:"fmnt4t"}],["path",{d:"M9 7.13V6a3 3 0 1 1 6 0v1.13",key:"1vgav8"}]]};i.node;let c=n(i);function d(e){if(!Number.isFinite(e))return"—";let t=Math.abs(Math.round(e));if(t<1e3)return`${Math.round(e)}ms`;if(t<59950)return`${+(e/1e3).toFixed(1)}s`;let r=Math.round(t/1e3),s=e<0?"-":"";return r<3600?`${s}${Math.floor(r/60)}m ${r%60}s`:`${s}${Math.floor(r/3600)}h ${Math.floor(r%3600/60)}m`}e.s(["formatDuration",0,d],78910);let p=["pages","traffic","loadTime","apdex","vitals","ajax","errorRate","errors"],u=e=>e.length?e.reduce((e,t)=>e+t,0)/e.length:0,h=e=>void 0===e?"—":d(e),f=e=>e.byTool?.sentry?.errors??(e.sentry&&{count:e.sentry.errorCount,latest:e.sentry.latestErrors}),x=e=>f(e)?.count??0,m={"new-relic":{label:"New Relic",icon:l,description:"Real-user performance per page: load time, Core Web Vitals, throughput and Apdex.",connectReason:"Add your New Relic keys to see load time and Core Web Vitals for each page.",setupNote:"The key that sends events (Ingest - License) is separate and is added later on the Connect page.",keys:{required:["NEWRELIC_API_KEY","NEXT_PUBLIC_NEWRELIC_ACCOUNT_ID"],optional:["NEWRELIC_INSERT_KEY"],derived:["NEWRELIC_REGION"]},capabilities:["pages","traffic","loadTime","apdex","vitals","ajax","errorRate"],stats:e=>[{label:"Avg Load Time",value:d(u(e.map(e=>e.newRelic.loadTime)))},{label:"Avg LCP",value:d(u(e.map(e=>e.newRelic.lcp)))},{label:"Avg TTFB",value:d(u(e.map(e=>e.newRelic.ttfb)))},{label:"Avg Apdex",value:u(e.map(e=>e.newRelic.apdexScore)).toFixed(2)}],columns:[{needs:"loadTime",header:"Load",cell:e=>d(e.newRelic.loadTime)},{needs:"vitals",header:"LCP",cell:e=>d(e.newRelic.lcp)},{needs:"vitals",header:"TTFB",cell:e=>d(e.newRelic.ttfb)},{needs:"vitals",header:"CLS",cell:e=>e.newRelic.cls.toFixed(2)},{needs:"vitals",header:"INP",cell:e=>{let t=e.newRelic.inp;return void 0===t?"—":d(t)}},{needs:"errorRate",header:"Error Rate",cell:e=>`${e.newRelic.errorRate.toFixed(2)}%`},{needs:"traffic",header:"Throughput",cell:e=>e.newRelic.throughput.toLocaleString()},{needs:"apdex",header:"Apdex",cell:e=>e.newRelic.apdexScore.toFixed(2)}]},sentry:{label:"Sentry",icon:c,description:"Errors per page over the last 24 hours, with page loads and web vitals when your site sends traces.",connectReason:"Add your Sentry keys to see the errors on each page.",keys:{required:["SENTRY_API_KEY","SENTRY_DSN"],optional:[]},capabilities:["pages","traffic","vitals","errors"],stats:e=>{let t=e.reduce((e,t)=>x(t)>(e?x(e):0)?t:e,null);return[{label:"Total Errors",value:String(e.map(x).reduce((e,t)=>e+t,0))},{label:"Pages With Errors",value:`${e.filter(e=>x(e)>0).length} of ${e.length}`},{label:"Noisiest Page",value:t?.name??"None"}]},columns:[{needs:"errors",header:"Errors",cell:e=>String(x(e))},{needs:"errors",header:"Latest Error",cell:e=>f(e)?.latest[0]?.title??"—"},{needs:"errors",header:"Last Seen",cell:e=>{let t=Date.parse(f(e)?.latest[0]?.lastSeen??"");return Number.isNaN(t)?"—":new Date(t).toLocaleString()}},{needs:"traffic",header:"Page loads (sampled)",cell:e=>e.byTool?.sentry?.traffic?.count.toLocaleString()??"—"},{needs:"vitals",header:"LCP",cell:e=>h(e.byTool?.sentry?.vitals?.lcp)},{needs:"vitals",header:"TTFB",cell:e=>h(e.byTool?.sentry?.vitals?.ttfb)},{needs:"vitals",header:"CLS",cell:e=>e.byTool?.sentry?.vitals?.cls?.toFixed(2)??"—"},{needs:"vitals",header:"INP",cell:e=>h(e.byTool?.sentry?.vitals?.inp)}]}},y=Object.fromEntries(Object.entries({NEWRELIC_API_KEY:{label:"New Relic User API key",secret:!0,help:'READS your data (starts NRAK-). Create it under API keys > key type "User".'},NEXT_PUBLIC_NEWRELIC_ACCOUNT_ID:{label:"New Relic account ID",secret:!1,help:"A plain number, shown next to your keys in New Relic."},SENTRY_API_KEY:{label:"Sentry auth token",secret:!0,help:"Lets the dashboard read issues (scopes: project:read, event:read)."},SENTRY_DSN:{label:"Sentry DSN",secret:!1,help:"Project settings, then Client Keys (DSN). The project and host are read from it."}}).map(([e,t])=>[e,t.label])),v=Object.keys(m);e.s(["KEY_LABELS",0,y,"TOOLS",0,m,"TOOL_IDS",0,v,"mergeMetrics",0,function(e,t,r){let s={};for(let[a,n]of Object.entries(t)){let t=r.includes(n)?void 0:e[n]?.[a];void 0!==t&&(s[a]=t)}return s},"sourcesFor",0,function(e){let t={};for(let r of p){let s=v.find(t=>e.includes(t)&&m[t].capabilities.includes(r));s&&(t[r]=s)}return t}],67119);let E=v.flatMap(e=>m[e].keys.required),g="NEWRELIC_REGION",R={us:{graphql:"https://api.newrelic.com/graphql",ingest:"https://insights-collector.newrelic.com"},eu:{graphql:"https://api.eu.newrelic.com/graphql",ingest:"https://insights-collector.eu01.nr-data.net"}},b={gemini:{label:"Google Gemini",key:"GEMINI_API_KEY"},claude:{label:"Anthropic Claude",key:"CLAUDE_API_KEY"},openai:{label:"OpenAI",key:"OPENAI_API_KEY"}},w="AI_PROVIDER";function _(e){return process.env[e]??""}let I=e=>m[e].keys.required.every(e=>_(e));function S(){return process.env.METRICFLOW_PROJECT_DIR||process.cwd()}let N=/[\s\0#"'`\\$]/;class T extends Error{}e.s(["AI_PROVIDERS",0,b,"AI_PROVIDER_KEY",0,w,"EnvWriteRefused",0,T,"INSERT_KEY",0,"NEWRELIC_INSERT_KEY","REGION_KEY",0,g,"SETUP_KEYS",0,E,"UNSAFE",0,N,"activeAi",0,function(){let e=process.env[w];for(let t of(e&&e in b?[e]:[]).concat(Object.keys(b))){let e=process.env[b[t].key];if(e)return{provider:t,key:e}}return null},"connectedTools",0,()=>v.filter(I),"env",0,_,"isToolConnected",0,I,"nrHosts",0,(e="eu"===process.env[g]?"eu":"us")=>R[e],"projectDir",0,S,"writeEnvLocal",0,function(e,s=process.env.METRICFLOW_ENV_FILE||(0,r.join)(S(),".env.local")){let a=new Set([...Object.values(m).flatMap(e=>[...e.keys.required,...e.keys.optional,...e.keys.derived??[]]),...Object.values(b).map(e=>e.key),w]);for(let[t,r]of Object.entries(e)){if(!a.has(t))throw new T("Refused to write a key name no tool declares.");if(N.test(r))throw new T("Refused to write a value with unsafe characters.")}let n=(0,t.existsSync)(s)?(0,t.readFileSync)(s,"utf8").split("\n"):[],o=new Map(Object.entries(e)),l=n.map(e=>{let t=e.match(/^\s*([A-Z0-9_]+)\s*=/)?.[1];if(t&&o.has(t)){let e=o.get(t);return o.delete(t),`${t}=${e}`}return e});for(;l.length&&""===l[l.length-1];)l.pop();for(let[e,t]of o)l.push(`${e}=${t}`);let i=`${s}.tmp`;for(let[r,a]of((0,t.writeFileSync)(i,l.join("\n")+"\n",{mode:384}),(0,t.renameSync)(i,s),Object.entries(e)))process.env[r]=a}],12892)},24514,e=>{"use strict";let t=new Set(["localhost","127.0.0.1","[::1]"]),r=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]);e.s(["REFUSAL_MESSAGE",0,()=>"1"===process.env.METRICFLOW_EXPOSED?"Setup and Connect are disabled because the dashboard is exposed on the network (--host). Restart without --host to use them.":"Setup is only available from localhost.","isLocalRequest",0,function(e){if("1"===process.env.METRICFLOW_EXPOSED)return!1;let s=e.headers.get("x-forwarded-for");if(s&&!s.split(",").every(e=>r.has(e.trim().replace(/^\[|\]$/g,"")))||"cross-site"===e.headers.get("sec-fetch-site"))return!1;let a=(e.headers.get("host")??"").replace(/:\d+$/,"");if(!t.has(a))return!1;let n=e.headers.get("origin");try{return!n||t.has(new URL(n).hostname)}catch{return!1}},"requireJson",0,function(e){return/^application\/json\s*(;|$)/i.test(e.headers.get("content-type")??"")?null:Response.json({error:"Send the request as application/json."},{status:415})}])},27252,e=>{"use strict";e.s(["default",()=>t]);let t=(0,e.i(18286).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs","default")},19374,e=>{"use strict";var t=e.i(27252);e.n(t)},18286,(e,t,r)=>{"use strict";t.exports=e.r(99403).vendored["react-rsc"].ReactServerDOMTurbopackServer}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__1rx5s6r._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[60780,e=>{"use strict";var t=e.i(2157),r=e.i(50227),n=e.i(24514),a=e.i(12892);e.i(78910);let i={loadSeconds:1.5,errorPercent:2,apdexMin:.9,uptimeSLA:99.9},s=()=>process.env.METRICFLOW_SETTINGS_FILE||(0,r.join)((0,a.projectDir)(),".metricflow-settings.json"),o={loadSeconds:[.1,30],errorPercent:[.1,100],apdexMin:[0,1],uptimeSLA:[90,100]};function l(){try{return{...i,...JSON.parse((0,t.readFileSync)(s(),"utf8"))}}catch{return i}}async function u(){return Response.json(l())}async function d(e){let r;if(!(0,n.isLocalRequest)(e))return Response.json({error:(0,n.REFUSAL_MESSAGE)()},{status:403});try{r=await e.json()}catch{return Response.json({error:"Invalid request body."},{status:400})}let a=(0,n.requireJson)(e);if(a)return a;let i=l();for(let[e,[t,n]]of Object.entries(o)){if(void 0===r[e])continue;let a=r[e];if("number"!=typeof a||!Number.isFinite(a)||a<t||a>n)return Response.json({error:`${e} must be a number between ${t} and ${n}.`},{status:400});i[e]=a}try{let e=`${s()}.tmp`;(0,t.writeFileSync)(e,JSON.stringify(i,null,2)),(0,t.renameSync)(e,s())}catch{return Response.json({error:"Settings could not be written. Check folder permissions."},{status:500})}return Response.json(i)}e.s(["GET",0,u,"PUT",0,d],60780)},30229,e=>{"use strict";var t=e.i(12425),r=e.i(83353),n=e.i(47902),a=e.i(37892),i=e.i(54261),s=e.i(39548),o=e.i(68187),l=e.i(63984),u=e.i(88743),d=e.i(24698),c=e.i(13487),p=e.i(48776),h=e.i(29398),R=e.i(31610),v=e.i(45919),f=e.i(93695),m=e.i(12741);e.i(95315);var g=e.i(98732);let E=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/settings/route",pathname:"/api/settings",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/settings/route.ts",nextConfigOutput:"",userland:()=>e.r(60780),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:C,serverHooks:S}=E;async function y(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),E.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/settings/route";w=w.replace(/\/index$/,"")||"/";let C=await E.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!C)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:S,deploymentId:y,params:x,nextConfig:A,parsedUrl:T,isDraftMode:b,prerenderManifest:P,routerServerContext:N,isOnDemandRevalidate:O,revalidateOnlyGenerated:_,resolvedPathname:q,clientReferenceManifest:I,serverActionsManifest:M}=C,H=(0,o.normalizeAppPath)(w),j=!!P.routes[q]&&(E.isDev||(0,m.isRouteCacheOwner)(q,E.cacheOwner,P.routes[q])),U=!!(P.dynamicRoutes[H]||j),D=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,T,!1):t.end("This page could not be found"),null);if(U&&!b){let e=P.dynamicRoutes[H];if(e&&!1===e.fallback&&!j){if(A.adapterPath)return await D();throw new f.NoFallbackError}}let k=null;!U||E.isDev||b||(k="/index"===(k=q)?"/":k);let F=!0===E.isDev||!U,L=U&&!F;M&&I&&(0,s.setManifestsSingleton)({page:w,clientReferenceManifest:I,serverActionsManifest:M});let $=e.method||"GET",G=(0,i.getTracer)(),K=G.getActiveScopeSpan(),B=!!(null==N?void 0:N.isWrappedByNextServer),J=!!(0,a.getRequestMeta)(e,"minimalMode"),V=(0,a.getRequestMeta)(e,"incrementalCache")||await E.getIncrementalCache(e,A,P,J);null==V||V.resetRequestCache(),globalThis.__incrementalCache=V;let W={params:x,previewProps:P.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts,useCacheTimeout:A.experimental.useCacheTimeout},cacheComponents:!!A.cacheComponents,validationLevel:A.experimental.instantInsights.validationLevel,isDraftMode:b,supportsDynamicResponse:F,incrementalCache:V,hmrRefreshHash:(0,a.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:A.cacheLife,staticPageGenerationTimeout:A.staticPageGenerationTimeout,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>E.onRequestError(e,t,n,a,N)},sharedContext:{buildId:S,deploymentId:y}},X=new l.NodeNextRequest(e),z=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest(X,(0,u.signalFromNodeResponse)(t)),Q=async({previousCacheEntry:r})=>{try{if(!J&&O&&_&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await E.handle(Z,W);e.fetchMetrics=W.renderOpts.fetchMetrics;let i=W.renderOpts.pendingWaitUntil;i&&n.waitUntil&&(n.waitUntil(i),i=void 0);let s=W.renderOpts.collectedTags;if(!U)return await (0,p.sendResponse)(X,z,a,i),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);s&&(t[v.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,n=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=v.INFINITE_CACHE?!1!==r&&r>0?A.expireTime:void 0:W.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await E.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:O})},!1,N),t}},Y=async(a,s)=>{try{var o,l;let a=await E.handleResponse({req:e,nextConfig:A,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:P,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:_,responseGenerator:Q,waitUntil:n.waitUntil,isMinimalMode:J});if(!U)return;if((null==a||null==(o=a.value)?void 0:o.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==a||null==(l=a.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});J||t.setHeader("x-nextjs-cache",O?"REVALIDATED":a.isMiss?"MISS":a.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,h.fromNodeOutgoingHttpHeaders)(a.value.headers);J&&U||i.delete(v.NEXT_CACHE_TAGS_HEADER),!a.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,R.getCacheControlHeader)(a.cacheControl)),await (0,p.sendResponse)(X,z,new Response(a.value.body,{headers:i,status:a.value.status||200}));return}catch(t){if(t instanceof f.NoFallbackError||await E.onRequestError(e,t,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:O})},!1,N),U)throw t;await (0,p.sendResponse)(X,z,new Response(null,{status:500}));return}finally{(()=>{if(!a)return;let e=t.statusCode;a.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(a.setStatus({code:i.SpanStatusCode.ERROR}),a.setAttribute("error.type",e.toString()));let r=G.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route")||H,o=`${$} ${n}`;a.setAttributes({"next.route":n,"http.route":n,"next.span_name":o}),a.updateName(o),s&&s!==a&&(s.setAttribute("http.route",n),s.updateName(o))})()}};if(B&&K)await Y(K,void 0);else{let t=G.getActiveScopeSpan();await G.withPropagatedContext(e.headers,()=>G.trace(d.BaseServerSpan.handleRequest,{spanName:`${$} ${w}`,kind:i.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},e=>Y(e,t)),void 0,!B)}}e.s(["handler",0,y,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:C})},"routeModule",0,E,"serverHooks",0,S,"workAsyncStorage",0,w,"workUnitAsyncStorage",0,C])}];
2
+
3
+ //# sourceMappingURL=_0j7t8f9._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},71385,a=>{a.v("/_next/static/media/icon.23mz8iwcatff2.svg"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},48760,a=>{"use strict";let b={src:a.i(71385).default,width:32,height:32};a.s(["default",0,b])},12163,a=>{"use strict";a.s(["HubMetrics",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call HubMetrics() from the server but HubMetrics is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/PerformanceHub/HubMetrics.tsx","HubMetrics")},79948,a=>{"use strict";var b=a.i(12163);a.n(b)},69391,a=>{"use strict";a.s(["HubTable",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call HubTable() from the server but HubTable is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/PerformanceHub/HubTable.tsx","HubTable")},52126,a=>{"use strict";var b=a.i(69391);a.n(b)},94625,a=>{"use strict";a.s(["PerformanceHub",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call PerformanceHub() from the server but PerformanceHub is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/PerformanceHub/PerformanceHub.tsx","PerformanceHub")},19307,a=>{"use strict";var b=a.i(94625);a.n(b)},56735,a=>{"use strict";var b=a.i(91396);a.i(90103);var c=a.i(24084),d=a.i(97728);a.i(59682);var e=a.i(22381),f=a.i(79948),g=a.i(52126),h=a.i(19307);a.s([],28882),a.i(28882),a.s([],17380,!0),a.j(f,17380),a.j(g,17380),a.j(h,17380);var i=a.i(17380);a.s(["default",0,function(){return(0,b.jsxs)(d.SidebarProvider,{children:[(0,b.jsx)(c.AppSidebar,{}),(0,b.jsxs)(d.SidebarInset,{className:"bg-dash-surface",children:[(0,b.jsx)(e.Header,{}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col p-6 md:p-8 max-w-[1600px] mx-auto w-full",children:[(0,b.jsx)("h1",{className:"title-enter text-2xl font-bold text-white tracking-tight mb-2",children:"Performance Hub"}),(0,b.jsx)("p",{className:"text-sm text-gray-400",children:"Overview of all tracked pages and their current health status."}),(0,b.jsx)(i.PerformanceHub,{})]})]})]})}],56735)},59614,function(a){a.n(a.i(56735))},82343,a=>{"use strict";var b=a.i(46797),c=a.i(282),d=a.i(89196);a.i(60796);let e=(0,b.instrumentModuleGetter)(()=>a.r(48760)),f=(0,b.instrumentModuleGetter)(()=>a.r(70864)),g=(0,b.instrumentModuleGetter)(()=>a.r(45538)),h=(0,b.instrumentModuleGetter)(()=>a.r(54254)),i=(0,b.instrumentModuleGetter)(()=>a.r(73833)),j=(0,b.instrumentModuleGetter)(()=>a.r(35191)),k=(0,b.instrumentModuleGetter)(()=>a.r(68119)),l=(0,b.instrumentModuleGetter)(()=>a.r(78932)),m=["",{children:["performance",{children:["__PAGE__",{},{metadata:{},page:[(0,b.instrumentModuleGetter)(()=>a.r(59614)),"[project]/app/performance/page.tsx"]},[]]},{metadata:{},loading:[l,"[project]/app/performance/loading.tsx"]},[]]},{metadata:{icon:[async()=>{let a=(0,d.interopDefault)(await e());return[{url:`/icon.svg?${a.src.split("/").splice(-1)[0]}`,sizes:"any",type:"image/svg+xml"}]}]},layout:[f,"[project]/app/layout.tsx"],loading:[g,"[project]/app/loading.tsx"],"not-found":[h,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/not-found.js"],forbidden:[i,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/forbidden.js"],unauthorized:[j,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/unauthorized.js"],"global-error":[k,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/global-error.js"]},[]],n=a.r.bind(a),o=a.l.bind(a),p=(0,c.createAppPageEntrypoint)({tree:m,page:"/performance/page",pathname:"/performance",require:n,loadChunk:o,interopDefault:d.interopDefault}),q=p.__next_app__,r=p.routeModule,s=p.handler;a.s(["__next_app__",0,q,"handler",0,s,"routeModule",0,r],84857),a.i(84857);var t=a.i(25948);a.s(["ClientPageRoot",()=>t.ClientPageRoot,"ClientSegmentRoot",()=>t.ClientSegmentRoot,"Fragment",()=>t.Fragment,"HTTPAccessFallbackBoundary",()=>t.HTTPAccessFallbackBoundary,"InstantValidation",()=>t.InstantValidation,"LayoutRouter",()=>t.LayoutRouter,"LoadingBoundaryProvider",()=>t.LoadingBoundaryProvider,"Postpone",()=>t.Postpone,"RenderFromTemplateContext",()=>t.RenderFromTemplateContext,"RootLayoutBoundary",()=>t.RootLayoutBoundary,"SegmentViewNode",()=>t.SegmentViewNode,"SegmentViewStateNode",()=>t.SegmentViewStateNode,"__next_app__",0,q,"captureOwnerStack",()=>t.captureOwnerStack,"collectPrefetchHints",()=>t.collectPrefetchHints,"collectSegmentData",()=>t.collectSegmentData,"createElement",()=>t.createElement,"createMetadataComponents",()=>t.createMetadataComponents,"createPrerenderParamsForClientSegment",()=>t.createPrerenderParamsForClientSegment,"createPrerenderSearchParamsForClientPage",()=>t.createPrerenderSearchParamsForClientPage,"createServerParamsForServerSegment",()=>t.createServerParamsForServerSegment,"createServerSearchParamsForServerPage",()=>t.createServerSearchParamsForServerPage,"createTemporaryReferenceSet",()=>t.createTemporaryReferenceSet,"decodeAction",()=>t.decodeAction,"decodeFormState",()=>t.decodeFormState,"decodeReply",()=>t.decodeReply,"handler",0,s,"isEmptyHTMLPrelude",()=>t.isEmptyHTMLPrelude,"patchFetch",()=>t.patchFetch,"preconnect",()=>t.preconnect,"preloadFont",()=>t.preloadFont,"preloadStyle",()=>t.preloadStyle,"prerender",()=>t.prerender,"prerenderToNodeStream",()=>t.prerenderToNodeStream,"renderToPipeableStream",()=>t.renderToPipeableStream,"renderToReadableStream",()=>t.renderToReadableStream,"routeModule",0,r,"serverHooks",()=>t.serverHooks,"taintObjectReference",()=>t.taintObjectReference],82343)}];
1
+ module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},71385,a=>{a.v("/_next/static/media/icon.23mz8iwcatff2.svg"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},48760,a=>{"use strict";let b={src:a.i(71385).default,width:32,height:32};a.s(["default",0,b])},12163,a=>{"use strict";a.s(["HubMetrics",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call HubMetrics() from the server but HubMetrics is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/PerformanceHub/HubMetrics.tsx","HubMetrics")},79948,a=>{"use strict";var b=a.i(12163);a.n(b)},69391,a=>{"use strict";a.s(["HUB_TABLE_TITLE_ID",()=>c,"HubTable",()=>d]);var b=a.i(18060);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call HUB_TABLE_TITLE_ID() from the server but HUB_TABLE_TITLE_ID is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/PerformanceHub/HubTable.tsx","HUB_TABLE_TITLE_ID"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call HubTable() from the server but HubTable is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/PerformanceHub/HubTable.tsx","HubTable")},52126,a=>{"use strict";var b=a.i(69391);a.n(b)},94625,a=>{"use strict";a.s(["PerformanceHub",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call PerformanceHub() from the server but PerformanceHub is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/PerformanceHub/PerformanceHub.tsx","PerformanceHub")},19307,a=>{"use strict";var b=a.i(94625);a.n(b)},56735,a=>{"use strict";var b=a.i(91396);a.i(90103);var c=a.i(24084),d=a.i(97728);a.i(59682);var e=a.i(22381),f=a.i(79948),g=a.i(52126),h=a.i(19307);a.s([],28882),a.i(28882),a.s([],17380,!0),a.j(f,17380),a.j(g,17380),a.j(h,17380);var i=a.i(17380);a.s(["default",0,function(){return(0,b.jsxs)(d.SidebarProvider,{children:[(0,b.jsx)(c.AppSidebar,{}),(0,b.jsxs)(d.SidebarInset,{className:"bg-dash-surface",children:[(0,b.jsx)(e.Header,{}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col p-6 md:p-8 max-w-[1600px] mx-auto w-full",children:[(0,b.jsx)("h1",{className:"title-enter text-2xl font-bold text-white tracking-tight mb-2",children:"Performance Hub"}),(0,b.jsx)("p",{className:"text-sm text-gray-400",children:"Overview of all tracked pages and their current health status."}),(0,b.jsx)(i.PerformanceHub,{})]})]})]})}],56735)},59614,function(a){a.n(a.i(56735))},82343,a=>{"use strict";var b=a.i(46797),c=a.i(282),d=a.i(89196);a.i(60796);let e=(0,b.instrumentModuleGetter)(()=>a.r(48760)),f=(0,b.instrumentModuleGetter)(()=>a.r(70864)),g=(0,b.instrumentModuleGetter)(()=>a.r(45538)),h=(0,b.instrumentModuleGetter)(()=>a.r(54254)),i=(0,b.instrumentModuleGetter)(()=>a.r(73833)),j=(0,b.instrumentModuleGetter)(()=>a.r(35191)),k=(0,b.instrumentModuleGetter)(()=>a.r(68119)),l=(0,b.instrumentModuleGetter)(()=>a.r(78932)),m=["",{children:["performance",{children:["__PAGE__",{},{metadata:{},page:[(0,b.instrumentModuleGetter)(()=>a.r(59614)),"[project]/app/performance/page.tsx"]},[]]},{metadata:{},loading:[l,"[project]/app/performance/loading.tsx"]},[]]},{metadata:{icon:[async()=>{let a=(0,d.interopDefault)(await e());return[{url:`/icon.svg?${a.src.split("/").splice(-1)[0]}`,sizes:"any",type:"image/svg+xml"}]}]},layout:[f,"[project]/app/layout.tsx"],loading:[g,"[project]/app/loading.tsx"],"not-found":[h,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/not-found.js"],forbidden:[i,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/forbidden.js"],unauthorized:[j,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/unauthorized.js"],"global-error":[k,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/global-error.js"]},[]],n=a.r.bind(a),o=a.l.bind(a),p=(0,c.createAppPageEntrypoint)({tree:m,page:"/performance/page",pathname:"/performance",require:n,loadChunk:o,interopDefault:d.interopDefault}),q=p.__next_app__,r=p.routeModule,s=p.handler;a.s(["__next_app__",0,q,"handler",0,s,"routeModule",0,r],84857),a.i(84857);var t=a.i(25948);a.s(["ClientPageRoot",()=>t.ClientPageRoot,"ClientSegmentRoot",()=>t.ClientSegmentRoot,"Fragment",()=>t.Fragment,"HTTPAccessFallbackBoundary",()=>t.HTTPAccessFallbackBoundary,"InstantValidation",()=>t.InstantValidation,"LayoutRouter",()=>t.LayoutRouter,"LoadingBoundaryProvider",()=>t.LoadingBoundaryProvider,"Postpone",()=>t.Postpone,"RenderFromTemplateContext",()=>t.RenderFromTemplateContext,"RootLayoutBoundary",()=>t.RootLayoutBoundary,"SegmentViewNode",()=>t.SegmentViewNode,"SegmentViewStateNode",()=>t.SegmentViewStateNode,"__next_app__",0,q,"captureOwnerStack",()=>t.captureOwnerStack,"collectPrefetchHints",()=>t.collectPrefetchHints,"collectSegmentData",()=>t.collectSegmentData,"createElement",()=>t.createElement,"createMetadataComponents",()=>t.createMetadataComponents,"createPrerenderParamsForClientSegment",()=>t.createPrerenderParamsForClientSegment,"createPrerenderSearchParamsForClientPage",()=>t.createPrerenderSearchParamsForClientPage,"createServerParamsForServerSegment",()=>t.createServerParamsForServerSegment,"createServerSearchParamsForServerPage",()=>t.createServerSearchParamsForServerPage,"createTemporaryReferenceSet",()=>t.createTemporaryReferenceSet,"decodeAction",()=>t.decodeAction,"decodeFormState",()=>t.decodeFormState,"decodeReply",()=>t.decodeReply,"handler",0,s,"isEmptyHTMLPrelude",()=>t.isEmptyHTMLPrelude,"patchFetch",()=>t.patchFetch,"preconnect",()=>t.preconnect,"preloadFont",()=>t.preloadFont,"preloadStyle",()=>t.preloadStyle,"prerender",()=>t.prerender,"prerenderToNodeStream",()=>t.prerenderToNodeStream,"renderToPipeableStream",()=>t.renderToPipeableStream,"renderToReadableStream",()=>t.renderToReadableStream,"routeModule",0,r,"serverHooks",()=>t.serverHooks,"taintObjectReference",()=>t.taintObjectReference],82343)}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__02c3m72._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},71385,a=>{a.v("/_next/static/media/icon.23mz8iwcatff2.svg"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},48760,a=>{"use strict";let b={src:a.i(71385).default,width:32,height:32};a.s(["default",0,b])},83138,a=>{"use strict";var b=a.i(91396);a.i(52040);var c=a.i(19973);a.i(90103);var d=a.i(24084),e=a.i(97728);a.i(59682);var f=a.i(22381),g=a.i(30358),h=a.i(1730),i=a.i(7779),j=a.i(78720),k=a.i(29171),l=a.i(43917);function m({title:a="No data yet",reason:c="Keys work, but no page events have arrived.",href:d="/connect",cta:e="Send your first events",onRetry:f}){return(0,b.jsx)(k.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md",children:(0,b.jsxs)(k.CardContent,{className:"flex flex-col items-center gap-3 p-10 text-center",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-white",children:a}),(0,b.jsx)("p",{className:"max-w-md text-sm text-gray-400",children:c}),(0,b.jsxs)("div",{className:"flex gap-3",children:[(0,b.jsx)(j.default,{href:d,className:(0,l.buttonVariants)(),children:e}),f&&(0,b.jsx)(l.Button,{variant:"outline",onClick:f,children:"Retry"})]})]})})}async function n({params:a}){let{tool:j}=await a;return(0,h.isToolId)(j)||(0,c.notFound)(),(0,b.jsxs)(e.SidebarProvider,{children:[(0,b.jsx)(d.AppSidebar,{}),(0,b.jsxs)(e.SidebarInset,{className:"bg-dash-surface",children:[(0,b.jsx)(f.Header,{}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col p-6 md:p-8 max-w-[1600px] mx-auto w-full",children:[(0,b.jsx)("h1",{className:"title-enter text-2xl font-bold text-white tracking-tight mb-2",children:h.TOOLS[j].label}),(0,b.jsx)("p",{className:"text-sm text-gray-400",children:h.TOOLS[j].description}),(0,i.isToolConnected)(j)?(0,b.jsx)(g.ToolInsights,{tool:j}):(0,b.jsx)("div",{className:"mt-6",children:(0,b.jsx)(m,{title:`Connect ${h.TOOLS[j].label}`,reason:h.TOOLS[j].connectReason,href:`/setup#${j}`,cta:`Add ${h.TOOLS[j].label} keys`})})]})]})]})}a.s(["default",0,n,"dynamic",0,"force-dynamic"],83138)},58839,function(a){a.n(a.i(83138))},57784,a=>{"use strict";a.s(["ToolInsights",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call ToolInsights() from the server but ToolInsights is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ToolInsights/ToolInsights.tsx","ToolInsights")},30358,a=>{"use strict";var b=a.i(57784);a.n(b)},43917,a=>{"use strict";let b,c;var d=a.i(91396),e=a.i(38182);let f=a=>"boolean"==typeof a?`${a}`:0===a?"0":a,g=function(){for(var a,b,c=0,d="",e=arguments.length;c<e;c++)(a=arguments[c])&&(b=function a(b){var c,d,e="";if("string"==typeof b||"number"==typeof b)e+=b;else if("object"==typeof b)if(Array.isArray(b)){var f=b.length;for(c=0;c<f;c++)b[c]&&(d=a(b[c]))&&(e&&(e+=" "),e+=d)}else for(d in b)b[d]&&(e&&(e+=" "),e+=d);return e}(a))&&(d&&(d+=" "),d+=b);return d};var h=a.i(67913);let i=(b="group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",c={variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/80",outline:"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}},a=>{var d;if((null==c?void 0:c.variants)==null)return g(b,null==a?void 0:a.class,null==a?void 0:a.className);let{variants:e,defaultVariants:h}=c,i=Object.keys(e).map(b=>{let c=null==a?void 0:a[b],d=null==h?void 0:h[b];if(null===c)return null;let g=f(c)||f(d);return e[b][g]}),j=a&&Object.entries(a).reduce((a,b)=>{let[c,d]=b;return void 0===d||(a[c]=d),a},{});return g(b,i,null==c||null==(d=c.compoundVariants)?void 0:d.reduce((a,b)=>{let{class:c,className:d,...e}=b;return Object.entries(e).every(a=>{let[b,c]=a;return Array.isArray(c)?c.includes({...h,...j}[b]):({...h,...j})[b]===c})?[...a,c,d]:a},[]),null==a?void 0:a.class,null==a?void 0:a.className)});a.s(["Button",0,function({className:a,variant:b="default",size:c="default",...f}){return(0,d.jsx)(e.Button,{"data-slot":"button",className:(0,h.cn)(i({variant:b,size:c,className:a})),...f})},"buttonVariants",0,i],43917)},45603,a=>{"use strict";a.s(["Button",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call Button() from the server but Button is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/@base-ui+react@1.8.0_@types+react@19.3.0_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@base-ui/react/button/Button.mjs","Button")},38182,a=>{"use strict";var b=a.i(45603);a.n(b)},25809,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},33951,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs","default")},50254,a=>{"use strict";var b=a.i(33951);a.n(b)},7969,a=>{"use strict";var b=a.i(56149),c=a.i(50254);a.s(["default",0,function(a,d=[],e=[]){let f,g="string"==typeof a?function(a,b,c=[]){if(null==b)throw Error("[lucide]: iconNode is required when icon name is used");return{name:a?.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),size:24,node:b,...c.length>0?{aliases:c}:{}}}(a,d,e):a,h=(0,b.forwardRef)(({className:a,...d},e)=>(0,b.createElement)(c.default,{ref:e,icon:g,className:a,...d}));return g.name&&(h.displayName=(f=(a=>{let b="",c=!1;for(let d of a){if("-"===d||"_"===d||d<=" "){c=b.length>0;continue}0===b.length?b+=d.toLowerCase():b+=c?d.toUpperCase():d,c=!1}return b})(g.name)).charAt(0).toUpperCase()+f.slice(1)),h}],7969)},40950,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(18060);a.n(d("[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/app-dir/link.js"))},53824,a=>{"use strict";var b=a.i(40950);a.n(b)},78720,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={default:function(){return i},useLinkStatus:function(){return h.useLinkStatus}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(25809),g=a.r(91396),h=f._(a.r(53824));function i(a){let b=a.legacyBehavior,c="string"==typeof a.children||"number"==typeof a.children||"string"==typeof a.children?.type,d=a.children?.type?.$$typeof===Symbol.for("react.client.reference");return!b||c||d||(a.children?.type?.$$typeof===Symbol.for("react.lazy")?console.error("Using a Lazy Component as a direct child of `<Link legacyBehavior>` from a Server Component is not supported. If you need legacyBehavior, wrap your Lazy Component in a Client Component that renders the Link's `<a>` tag."):console.error("Using a Server Component as a direct child of `<Link legacyBehavior>` is not supported. If you need legacyBehavior, wrap your Server Component in a Client Component that renders the Link's `<a>` tag.")),(0,g.jsx)(h.default,{...a})}("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)},36256,a=>{"use strict";var b=a.i(46797),c=a.i(282),d=a.i(89196);a.i(60796);let e=(0,b.instrumentModuleGetter)(()=>a.r(48760)),f=(0,b.instrumentModuleGetter)(()=>a.r(70864)),g=(0,b.instrumentModuleGetter)(()=>a.r(45538)),h=(0,b.instrumentModuleGetter)(()=>a.r(54254)),i=(0,b.instrumentModuleGetter)(()=>a.r(73833)),j=(0,b.instrumentModuleGetter)(()=>a.r(35191)),k=(0,b.instrumentModuleGetter)(()=>a.r(68119)),l=["",{children:["tools",{children:["[tool]",{children:["__PAGE__",{},{metadata:{},page:[(0,b.instrumentModuleGetter)(()=>a.r(58839)),"[project]/app/tools/[tool]/page.tsx"]},[]]},{metadata:{}},[]]},{metadata:{}},[]]},{metadata:{icon:[async()=>{let a=(0,d.interopDefault)(await e());return[{url:`/icon.svg?${a.src.split("/").splice(-1)[0]}`,sizes:"any",type:"image/svg+xml"}]}]},layout:[f,"[project]/app/layout.tsx"],loading:[g,"[project]/app/loading.tsx"],"not-found":[h,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/not-found.js"],forbidden:[i,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/forbidden.js"],unauthorized:[j,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/unauthorized.js"],"global-error":[k,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/global-error.js"]},[]],m=a.r.bind(a),n=a.l.bind(a),o=(0,c.createAppPageEntrypoint)({tree:l,page:"/tools/[tool]/page",pathname:"/tools/[tool]",require:m,loadChunk:n,interopDefault:d.interopDefault}),p=o.__next_app__,q=o.routeModule,r=o.handler;a.s(["__next_app__",0,p,"handler",0,r,"routeModule",0,q],52931),a.i(52931);var s=a.i(25948);a.s(["ClientPageRoot",()=>s.ClientPageRoot,"ClientSegmentRoot",()=>s.ClientSegmentRoot,"Fragment",()=>s.Fragment,"HTTPAccessFallbackBoundary",()=>s.HTTPAccessFallbackBoundary,"InstantValidation",()=>s.InstantValidation,"LayoutRouter",()=>s.LayoutRouter,"LoadingBoundaryProvider",()=>s.LoadingBoundaryProvider,"Postpone",()=>s.Postpone,"RenderFromTemplateContext",()=>s.RenderFromTemplateContext,"RootLayoutBoundary",()=>s.RootLayoutBoundary,"SegmentViewNode",()=>s.SegmentViewNode,"SegmentViewStateNode",()=>s.SegmentViewStateNode,"__next_app__",0,p,"captureOwnerStack",()=>s.captureOwnerStack,"collectPrefetchHints",()=>s.collectPrefetchHints,"collectSegmentData",()=>s.collectSegmentData,"createElement",()=>s.createElement,"createMetadataComponents",()=>s.createMetadataComponents,"createPrerenderParamsForClientSegment",()=>s.createPrerenderParamsForClientSegment,"createPrerenderSearchParamsForClientPage",()=>s.createPrerenderSearchParamsForClientPage,"createServerParamsForServerSegment",()=>s.createServerParamsForServerSegment,"createServerSearchParamsForServerPage",()=>s.createServerSearchParamsForServerPage,"createTemporaryReferenceSet",()=>s.createTemporaryReferenceSet,"decodeAction",()=>s.decodeAction,"decodeFormState",()=>s.decodeFormState,"decodeReply",()=>s.decodeReply,"handler",0,r,"isEmptyHTMLPrelude",()=>s.isEmptyHTMLPrelude,"patchFetch",()=>s.patchFetch,"preconnect",()=>s.preconnect,"preloadFont",()=>s.preloadFont,"preloadStyle",()=>s.preloadStyle,"prerender",()=>s.prerender,"prerenderToNodeStream",()=>s.prerenderToNodeStream,"renderToPipeableStream",()=>s.renderToPipeableStream,"renderToReadableStream",()=>s.renderToReadableStream,"routeModule",0,q,"serverHooks",()=>s.serverHooks,"taintObjectReference",()=>s.taintObjectReference],36256)}];
1
+ module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},2157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},71385,a=>{a.v("/_next/static/media/icon.23mz8iwcatff2.svg"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},48760,a=>{"use strict";let b={src:a.i(71385).default,width:32,height:32};a.s(["default",0,b])},83138,a=>{"use strict";var b=a.i(91396);a.i(52040);var c=a.i(19973);a.i(90103);var d=a.i(24084),e=a.i(97728);a.i(59682);var f=a.i(22381),g=a.i(30358),h=a.i(1730),i=a.i(7779),j=a.i(78720),k=a.i(29171),l=a.i(43917);function m({title:a="No data yet",reason:c="Keys work, but no page events have arrived.",href:d="/connect",cta:e="Send your first events",onRetry:f}){return(0,b.jsx)(k.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md",children:(0,b.jsxs)(k.CardContent,{className:"flex flex-col items-center gap-3 p-10 text-center",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-white",children:a}),(0,b.jsx)("p",{className:"max-w-md text-sm text-gray-400",children:c}),(0,b.jsxs)("div",{className:"flex gap-3",children:[d&&(0,b.jsx)(j.default,{href:d,className:(0,l.buttonVariants)(),children:e}),f&&(0,b.jsx)(l.Button,{variant:"outline",onClick:f,children:"Retry"})]})]})})}async function n({params:a}){let{tool:j}=await a;return(0,h.isToolId)(j)||(0,c.notFound)(),(0,b.jsxs)(e.SidebarProvider,{children:[(0,b.jsx)(d.AppSidebar,{}),(0,b.jsxs)(e.SidebarInset,{className:"bg-dash-surface",children:[(0,b.jsx)(f.Header,{}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col p-6 md:p-8 max-w-[1600px] mx-auto w-full",children:[(0,b.jsx)("h1",{className:"title-enter text-2xl font-bold text-white tracking-tight mb-2",children:h.TOOLS[j].label}),(0,b.jsx)("p",{className:"text-sm text-gray-400",children:h.TOOLS[j].description}),(0,i.isToolConnected)(j)?(0,b.jsx)(g.ToolInsights,{tool:j}):(0,b.jsx)("div",{className:"mt-6",children:(0,b.jsx)(m,{title:`Connect ${h.TOOLS[j].label}`,reason:h.TOOLS[j].connectReason,href:`/setup#${j}`,cta:`Add ${h.TOOLS[j].label} keys`})})]})]})]})}a.s(["default",0,n,"dynamic",0,"force-dynamic"],83138)},58839,function(a){a.n(a.i(83138))},57784,a=>{"use strict";a.s(["ToolInsights",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call ToolInsights() from the server but ToolInsights is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ToolInsights/ToolInsights.tsx","ToolInsights")},30358,a=>{"use strict";var b=a.i(57784);a.n(b)},43917,a=>{"use strict";let b,c;var d=a.i(91396),e=a.i(38182);let f=a=>"boolean"==typeof a?`${a}`:0===a?"0":a,g=function(){for(var a,b,c=0,d="",e=arguments.length;c<e;c++)(a=arguments[c])&&(b=function a(b){var c,d,e="";if("string"==typeof b||"number"==typeof b)e+=b;else if("object"==typeof b)if(Array.isArray(b)){var f=b.length;for(c=0;c<f;c++)b[c]&&(d=a(b[c]))&&(e&&(e+=" "),e+=d)}else for(d in b)b[d]&&(e&&(e+=" "),e+=d);return e}(a))&&(d&&(d+=" "),d+=b);return d};var h=a.i(67913);let i=(b="group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",c={variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/80",outline:"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}},a=>{var d;if((null==c?void 0:c.variants)==null)return g(b,null==a?void 0:a.class,null==a?void 0:a.className);let{variants:e,defaultVariants:h}=c,i=Object.keys(e).map(b=>{let c=null==a?void 0:a[b],d=null==h?void 0:h[b];if(null===c)return null;let g=f(c)||f(d);return e[b][g]}),j=a&&Object.entries(a).reduce((a,b)=>{let[c,d]=b;return void 0===d||(a[c]=d),a},{});return g(b,i,null==c||null==(d=c.compoundVariants)?void 0:d.reduce((a,b)=>{let{class:c,className:d,...e}=b;return Object.entries(e).every(a=>{let[b,c]=a;return Array.isArray(c)?c.includes({...h,...j}[b]):({...h,...j})[b]===c})?[...a,c,d]:a},[]),null==a?void 0:a.class,null==a?void 0:a.className)});a.s(["Button",0,function({className:a,variant:b="default",size:c="default",...f}){return(0,d.jsx)(e.Button,{"data-slot":"button",className:(0,h.cn)(i({variant:b,size:c,className:a})),...f})},"buttonVariants",0,i],43917)},45603,a=>{"use strict";a.s(["Button",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call Button() from the server but Button is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/@base-ui+react@1.8.0_@types+react@19.3.0_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@base-ui/react/button/Button.mjs","Button")},38182,a=>{"use strict";var b=a.i(45603);a.n(b)},25809,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},33951,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs","default")},50254,a=>{"use strict";var b=a.i(33951);a.n(b)},7969,a=>{"use strict";var b=a.i(56149),c=a.i(50254);a.s(["default",0,function(a,d=[],e=[]){let f,g="string"==typeof a?function(a,b,c=[]){if(null==b)throw Error("[lucide]: iconNode is required when icon name is used");return{name:a?.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),size:24,node:b,...c.length>0?{aliases:c}:{}}}(a,d,e):a,h=(0,b.forwardRef)(({className:a,...d},e)=>(0,b.createElement)(c.default,{ref:e,icon:g,className:a,...d}));return g.name&&(h.displayName=(f=(a=>{let b="",c=!1;for(let d of a){if("-"===d||"_"===d||d<=" "){c=b.length>0;continue}0===b.length?b+=d.toLowerCase():b+=c?d.toUpperCase():d,c=!1}return b})(g.name)).charAt(0).toUpperCase()+f.slice(1)),h}],7969)},40950,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(18060);a.n(d("[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/app-dir/link.js"))},53824,a=>{"use strict";var b=a.i(40950);a.n(b)},78720,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={default:function(){return i},useLinkStatus:function(){return h.useLinkStatus}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(25809),g=a.r(91396),h=f._(a.r(53824));function i(a){let b=a.legacyBehavior,c="string"==typeof a.children||"number"==typeof a.children||"string"==typeof a.children?.type,d=a.children?.type?.$$typeof===Symbol.for("react.client.reference");return!b||c||d||(a.children?.type?.$$typeof===Symbol.for("react.lazy")?console.error("Using a Lazy Component as a direct child of `<Link legacyBehavior>` from a Server Component is not supported. If you need legacyBehavior, wrap your Lazy Component in a Client Component that renders the Link's `<a>` tag."):console.error("Using a Server Component as a direct child of `<Link legacyBehavior>` is not supported. If you need legacyBehavior, wrap your Server Component in a Client Component that renders the Link's `<a>` tag.")),(0,g.jsx)(h.default,{...a})}("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)},36256,a=>{"use strict";var b=a.i(46797),c=a.i(282),d=a.i(89196);a.i(60796);let e=(0,b.instrumentModuleGetter)(()=>a.r(48760)),f=(0,b.instrumentModuleGetter)(()=>a.r(70864)),g=(0,b.instrumentModuleGetter)(()=>a.r(45538)),h=(0,b.instrumentModuleGetter)(()=>a.r(54254)),i=(0,b.instrumentModuleGetter)(()=>a.r(73833)),j=(0,b.instrumentModuleGetter)(()=>a.r(35191)),k=(0,b.instrumentModuleGetter)(()=>a.r(68119)),l=["",{children:["tools",{children:["[tool]",{children:["__PAGE__",{},{metadata:{},page:[(0,b.instrumentModuleGetter)(()=>a.r(58839)),"[project]/app/tools/[tool]/page.tsx"]},[]]},{metadata:{}},[]]},{metadata:{}},[]]},{metadata:{icon:[async()=>{let a=(0,d.interopDefault)(await e());return[{url:`/icon.svg?${a.src.split("/").splice(-1)[0]}`,sizes:"any",type:"image/svg+xml"}]}]},layout:[f,"[project]/app/layout.tsx"],loading:[g,"[project]/app/loading.tsx"],"not-found":[h,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/not-found.js"],forbidden:[i,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/forbidden.js"],unauthorized:[j,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/unauthorized.js"],"global-error":[k,"[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/components/builtin/global-error.js"]},[]],m=a.r.bind(a),n=a.l.bind(a),o=(0,c.createAppPageEntrypoint)({tree:l,page:"/tools/[tool]/page",pathname:"/tools/[tool]",require:m,loadChunk:n,interopDefault:d.interopDefault}),p=o.__next_app__,q=o.routeModule,r=o.handler;a.s(["__next_app__",0,p,"handler",0,r,"routeModule",0,q],52931),a.i(52931);var s=a.i(25948);a.s(["ClientPageRoot",()=>s.ClientPageRoot,"ClientSegmentRoot",()=>s.ClientSegmentRoot,"Fragment",()=>s.Fragment,"HTTPAccessFallbackBoundary",()=>s.HTTPAccessFallbackBoundary,"InstantValidation",()=>s.InstantValidation,"LayoutRouter",()=>s.LayoutRouter,"LoadingBoundaryProvider",()=>s.LoadingBoundaryProvider,"Postpone",()=>s.Postpone,"RenderFromTemplateContext",()=>s.RenderFromTemplateContext,"RootLayoutBoundary",()=>s.RootLayoutBoundary,"SegmentViewNode",()=>s.SegmentViewNode,"SegmentViewStateNode",()=>s.SegmentViewStateNode,"__next_app__",0,p,"captureOwnerStack",()=>s.captureOwnerStack,"collectPrefetchHints",()=>s.collectPrefetchHints,"collectSegmentData",()=>s.collectSegmentData,"createElement",()=>s.createElement,"createMetadataComponents",()=>s.createMetadataComponents,"createPrerenderParamsForClientSegment",()=>s.createPrerenderParamsForClientSegment,"createPrerenderSearchParamsForClientPage",()=>s.createPrerenderSearchParamsForClientPage,"createServerParamsForServerSegment",()=>s.createServerParamsForServerSegment,"createServerSearchParamsForServerPage",()=>s.createServerSearchParamsForServerPage,"createTemporaryReferenceSet",()=>s.createTemporaryReferenceSet,"decodeAction",()=>s.decodeAction,"decodeFormState",()=>s.decodeFormState,"decodeReply",()=>s.decodeReply,"handler",0,r,"isEmptyHTMLPrelude",()=>s.isEmptyHTMLPrelude,"patchFetch",()=>s.patchFetch,"preconnect",()=>s.preconnect,"preloadFont",()=>s.preloadFont,"preloadStyle",()=>s.preloadStyle,"prerender",()=>s.prerender,"prerenderToNodeStream",()=>s.prerenderToNodeStream,"renderToPipeableStream",()=>s.renderToPipeableStream,"renderToReadableStream",()=>s.renderToReadableStream,"routeModule",0,q,"serverHooks",()=>s.serverHooks,"taintObjectReference",()=>s.taintObjectReference],36256)}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__1jr0qvs._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[3613,a=>{"use strict";var b=a.i(47350),c=a.i(3130),d=a.i(40695),e=a.i(98485);let f={name:"cloud-download",size:24,node:[["path",{d:"M12 13v8l-4-4",key:"1f5nwf"}],["path",{d:"m12 21 4-4",key:"1lfcce"}],["path",{d:"M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284",key:"ui1hmy"}]],aliases:["download-cloud"]};f.node;let g=(0,e.default)(f),h={name:"file-braces",size:24,node:[["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"}],["path",{d:"M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1",key:"1oajmo"}],["path",{d:"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1",key:"mpwhp6"}]],aliases:["file-json"]};h.node;let i=(0,e.default)(h);a.s(["ExportSettings",0,function(){return(0,b.jsxs)(c.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md mt-6",children:[(0,b.jsxs)(c.CardHeader,{children:[(0,b.jsx)(c.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight",children:"Export Settings"}),(0,b.jsx)(c.CardDescription,{className:"text-sm text-gray-400",children:"Download your complete configuration or raw performance metrics."})]}),(0,b.jsx)(c.CardContent,{children:(0,b.jsxs)("div",{className:"flex gap-4",children:[(0,b.jsxs)(d.Button,{variant:"outline",className:"border-[#2d3748] bg-transparent text-gray-300 hover:bg-white/10 hover:text-white flex items-center gap-2",children:[(0,b.jsx)(g,{className:"h-4 w-4"}),"Export as CSV"]}),(0,b.jsxs)(d.Button,{variant:"outline",className:"border-[#2d3748] bg-transparent text-gray-300 hover:bg-white/10 hover:text-white flex items-center gap-2",children:[(0,b.jsx)(i,{className:"h-4 w-4"}),"Export as JSON"]})]})})]})}],3613)},84997,a=>{"use strict";var b=a.i(47350),c=a.i(3130);a.s([],36776),a.i(36776);var d=a.i(75086),e=a.i(81625),f=a.i(21276),g=a.i(58153),h=a.i(55161),i=a.i(65807),j=a.i(40328),k=a.i(2925),l=a.i(18870),m=a.i(69915);let n=d.createContext(void 0),o={...a.i(88731).fieldValidityMapping,checked:a=>a?{"data-checked":""}:{"data-unchecked":""}};var p=a.i(93605),q=a.i(38324),r=a.i(38355),s=a.i(59752),t=a.i(82439),u=a.i(67854),v=a.i(26086),w=a.i(48637),x=a.i(72452);let y=d.forwardRef(function(a,c){let{checked:m,className:y,defaultChecked:z,"aria-labelledby":A,form:B,id:C,inputRef:D,name:E,nativeButton:F=!1,onCheckedChange:G,readOnly:H=!1,required:I=!1,disabled:J=!1,render:K,uncheckedValue:L,value:M,style:N,...O}=a,{clearErrors:P}=(0,s.useFormContext)(),{state:Q,setTouched:R,setDirty:S,validityData:T,setFilled:U,setFocused:V,validationMode:W,disabled:X,name:Y,validation:Z}=(0,q.useFieldRootContext)(),{labelId:$}=(0,t.useLabelableContext)(),_=X||J,aa=Y??E,ab=d.useRef(null),ac=(0,f.useMergedRefs)(ab,D,Z.inputRef),ad=d.useRef(null),ae=(0,k.useBaseUiId)(),af=(0,u.useLabelableId)({id:C}),ag=F?void 0:af,[ah,ai]=(0,e.useControlled)({controlled:m,default:!!z,name:"Switch",state:"checked"});(0,r.useRegisterFieldControl)(ad,ae,ah,void 0,!_,E),(0,g.useIsoLayoutEffect)(()=>{U(ah)},[ah,U]),(0,x.useValueChanged)(ah,()=>{P(aa),S(ah!==T.initialValue),Z.change(ah)});let{getButtonProps:aj,buttonRef:ak}=(0,l.useButton)({disabled:_,native:F}),al=function(a,b,c,e=!0,f){let[h,i]=d.useState(),j=(0,k.useBaseUiId)(f?`${f}-label`:void 0),l=a??b??h;return(0,g.useIsoLayoutEffect)(()=>{let d=a||b||!e?void 0:function(a,b){let c=function(a){if(!a)return;let b=a.parentElement;if(b&&"LABEL"===b.tagName)return b;let c=a.id;if(c){let b=a.nextElementSibling;if(b&&b.htmlFor===c)return b}let d=a.labels;return d&&d[0]}(a);if(c)return!c.id&&b&&(c.id=b),c.id||void 0}(c.current,j);h!==d&&i(d)}),l}(A,$,ab,!F,ag),am={...Z.getValidationProps(_),checked:ah,disabled:_,form:B,id:ag,name:aa,required:I,style:aa?h.visuallyHiddenInput:h.visuallyHidden,tabIndex:-1,type:"checkbox","aria-hidden":!0,ref:ac,onChange(a){if(a.nativeEvent.defaultPrevented)return;if(H)return void a.preventDefault();let b=a.currentTarget.checked,c=(0,v.createChangeEventDetails)(w.REASONS.none,a.nativeEvent);G?.(b,c),c.isCanceled||ai(b)},onClick(a){a.stopPropagation()},onFocus(){ad.current?.focus()},...void 0!==M?{value:M}:i.EMPTY_OBJECT},an=d.useMemo(()=>({...Q,checked:ah,disabled:_,readOnly:H,required:I}),[Q,ah,_,H,I]),ao=(0,j.useRenderElement)("span",a,{state:an,ref:[c,ad,ak],props:[{id:F?af:ae,role:"switch","aria-checked":ah,"aria-readonly":H||void 0,"aria-required":I||void 0,"aria-labelledby":al,onFocus(){_||V(!0)},onBlur(){let a=ab.current;a&&!_&&(R(!0),V(!1),"onBlur"===W&&Z.commit(a.checked))},onClick(a){if(H||_)return;a.preventDefault();let b=ab.current;b&&(0,p.dispatchClickWithModifiers)(b,a)}},O,aj,a=>Z.getValidationProps(_,a)],stateAttributesMapping:o});return(0,b.jsxs)(n.Provider,{value:an,children:[ao,!ah&&aa&&void 0!==L&&(0,b.jsx)("input",{type:"hidden",form:B,name:aa,value:L,disabled:_}),(0,b.jsx)("input",{...am,suppressHydrationWarning:!0})]})}),z=d.forwardRef(function(a,b){let{render:c,className:e,style:f,...g}=a,h=function(){let a=d.useContext(n);if(void 0===a)throw Error((0,m.default)(63));return a}();return(0,j.useRenderElement)("span",a,{state:h,ref:b,stateAttributesMapping:o,props:g})});a.s(["Root",0,y,"Thumb",0,z],30798);var A=a.i(30798),A=A,B=a.i(85198);function C({className:a,size:c="default",...d}){return(0,b.jsx)(A.Root,{"data-slot":"switch","data-size":c,className:(0,B.cn)("peer group/switch relative inline-flex shrink-0 items-center rounded-full border border-transparent transition-all outline-none group-has-[:focus-visible]/field-label:border-transparent group-has-[:focus-visible]/field-label:ring-0 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-[size=default]:h-[18.4px] data-[size=default]:w-[32px] data-[size=sm]:h-[14px] data-[size=sm]:w-[24px] dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-primary data-unchecked:bg-input dark:data-unchecked:bg-input/80 data-disabled:cursor-not-allowed data-disabled:opacity-50",a),...d,children:(0,b.jsx)(A.Thumb,{"data-slot":"switch-thumb",className:"pointer-events-none block rounded-full bg-background ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] dark:data-checked:bg-primary-foreground group-data-[size=default]/switch:data-unchecked:translate-x-0 group-data-[size=sm]/switch:data-unchecked:translate-x-0 dark:data-unchecked:bg-foreground"})})}var D=a.i(17171),E=a.i(54161),F=a.i(36039),G=a.i(70834);a.s(["NotificationPrefs",0,function(){let a=(0,G.useNotificationPrefs)();return(0,b.jsxs)(c.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md mb-6",children:[(0,b.jsxs)(c.CardHeader,{children:[(0,b.jsxs)(c.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight flex items-center gap-2",children:[(0,b.jsx)(F.Bell,{className:"h-5 w-5 text-gray-400"}),"Notification Preferences"]}),(0,b.jsx)(c.CardDescription,{className:"text-sm text-gray-400",children:"Choose where and how you want to be alerted when thresholds are breached."})]}),(0,b.jsxs)(c.CardContent,{className:"space-y-6 max-w-lg",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"space-y-0.5",children:[(0,b.jsx)(D.Label,{className:"text-gray-300 text-sm",children:"In-app Alert"}),(0,b.jsx)("p",{className:"text-xs text-gray-500",children:"Show an alert on every page when a threshold is breached."})]}),(0,b.jsx)(C,{checked:a.alert,onCheckedChange:a=>(0,G.setNotificationPrefs)({alert:a})})]}),(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"space-y-0.5",children:[(0,b.jsxs)(D.Label,{className:"text-gray-300 text-sm",children:["Email Alerts",(0,b.jsx)(E.Badge,{variant:"outline",className:"ml-2 text-[10px] text-gray-400",children:"Coming soon"})]}),(0,b.jsx)("p",{className:"text-xs text-gray-500",children:"Receive reports and alerts to your primary email."})]}),(0,b.jsx)(C,{checked:!1,disabled:!0})]}),(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"space-y-0.5",children:[(0,b.jsxs)(D.Label,{className:"text-gray-300 text-sm",children:["Slack Integration",(0,b.jsx)(E.Badge,{variant:"outline",className:"ml-2 text-[10px] text-gray-400",children:"Coming soon"})]}),(0,b.jsx)("p",{className:"text-xs text-gray-500",children:"Push critical alerts directly to a configured Slack channel."})]}),(0,b.jsx)(C,{checked:!1,disabled:!0})]}),(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"space-y-0.5",children:[(0,b.jsxs)(D.Label,{className:"text-gray-300 text-sm",children:["SMS Alerts",(0,b.jsx)(E.Badge,{variant:"outline",className:"ml-2 text-[10px] text-gray-400",children:"Coming soon"})]}),(0,b.jsx)("p",{className:"text-xs text-gray-500",children:"Get text messages for immediate downtime incidents."})]}),(0,b.jsx)(C,{checked:!1,disabled:!0})]})]})]})}],84997)},3682,a=>{"use strict";var b=a.i(47350),c=a.i(3130),d=a.i(40695),e=a.i(88237),f=a.i(54161),g=a.i(98485);let h={name:"users",size:24,node:[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]};h.node;let i=(0,g.default)(h),j={name:"user-plus",size:24,node:[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"19",x2:"19",y1:"8",y2:"14",key:"1bvyxn"}],["line",{x1:"22",x2:"16",y1:"11",y2:"11",key:"1shjgl"}]]};j.node;let k=(0,g.default)(j),l=[{name:"Alice Freeman",email:"alice@company.com",role:"Admin",status:"Active"},{name:"Bob Smith",email:"bob@company.com",role:"Developer",status:"Active"},{name:"Charlie Davis",email:"charlie@company.com",role:"Viewer",status:"Invited"}];a.s(["TeamMembers",0,function(){return(0,b.jsxs)(c.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md",children:[(0,b.jsxs)(c.CardHeader,{className:"flex flex-row items-center justify-between",children:[(0,b.jsxs)("div",{children:[(0,b.jsxs)(c.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight flex items-center gap-2",children:[(0,b.jsx)(i,{className:"h-5 w-5 text-gray-400"}),"Team Members"]}),(0,b.jsx)(c.CardDescription,{className:"text-sm text-gray-400 mt-1",children:"Manage who has access to your performance dashboard."})]}),(0,b.jsxs)(d.Button,{className:"bg-[#3ee0a1] text-black hover:bg-[#3ee0a1]/80 flex items-center gap-2",children:[(0,b.jsx)(k,{className:"h-4 w-4"}),"Invite"]})]}),(0,b.jsx)(c.CardContent,{children:(0,b.jsx)("div",{className:"rounded-md border border-[#2d3748] overflow-hidden",children:(0,b.jsxs)(e.Table,{children:[(0,b.jsx)(e.TableHeader,{className:"bg-[#0f1419]",children:(0,b.jsxs)(e.TableRow,{className:"border-[#2d3748] hover:bg-transparent",children:[(0,b.jsx)(e.TableHead,{className:"text-gray-400",children:"Name"}),(0,b.jsx)(e.TableHead,{className:"text-gray-400",children:"Email"}),(0,b.jsx)(e.TableHead,{className:"text-gray-400",children:"Role"}),(0,b.jsx)(e.TableHead,{className:"text-right text-gray-400",children:"Status"})]})}),(0,b.jsx)(e.TableBody,{children:l.map(a=>(0,b.jsxs)(e.TableRow,{className:"border-[#2d3748] hover:bg-white/5 transition-colors",children:[(0,b.jsx)(e.TableCell,{className:"font-medium text-white",children:a.name}),(0,b.jsx)(e.TableCell,{className:"text-gray-400",children:a.email}),(0,b.jsx)(e.TableCell,{className:"text-gray-400",children:a.role}),(0,b.jsx)(e.TableCell,{className:"text-right",children:(0,b.jsx)(f.Badge,{variant:"outline",className:`
1
+ module.exports=[3613,a=>{"use strict";var b=a.i(47350),c=a.i(3130),d=a.i(40695),e=a.i(98485);let f={name:"cloud-download",size:24,node:[["path",{d:"M12 13v8l-4-4",key:"1f5nwf"}],["path",{d:"m12 21 4-4",key:"1lfcce"}],["path",{d:"M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284",key:"ui1hmy"}]],aliases:["download-cloud"]};f.node;let g=(0,e.default)(f),h={name:"file-braces",size:24,node:[["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"}],["path",{d:"M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1",key:"1oajmo"}],["path",{d:"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1",key:"mpwhp6"}]],aliases:["file-json"]};h.node;let i=(0,e.default)(h);a.s(["ExportSettings",0,function(){return(0,b.jsxs)(c.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md mt-6",children:[(0,b.jsxs)(c.CardHeader,{children:[(0,b.jsx)(c.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight",children:"Export Settings"}),(0,b.jsx)(c.CardDescription,{className:"text-sm text-gray-400",children:"Download your complete configuration or raw performance metrics."})]}),(0,b.jsx)(c.CardContent,{children:(0,b.jsxs)("div",{className:"flex gap-4",children:[(0,b.jsxs)(d.Button,{variant:"outline",className:"border-[#2d3748] bg-transparent text-gray-300 hover:bg-white/10 hover:text-white flex items-center gap-2",children:[(0,b.jsx)(g,{className:"h-4 w-4"}),"Export as CSV"]}),(0,b.jsxs)(d.Button,{variant:"outline",className:"border-[#2d3748] bg-transparent text-gray-300 hover:bg-white/10 hover:text-white flex items-center gap-2",children:[(0,b.jsx)(i,{className:"h-4 w-4"}),"Export as JSON"]})]})})]})}],3613)},84997,a=>{"use strict";var b=a.i(47350),c=a.i(3130);a.s([],36776),a.i(36776);var d=a.i(75086),e=a.i(81625),f=a.i(21276),g=a.i(58153),h=a.i(55161),i=a.i(65807),j=a.i(40328),k=a.i(2925),l=a.i(18870),m=a.i(69915);let n=d.createContext(void 0),o={...a.i(88731).fieldValidityMapping,checked:a=>a?{"data-checked":""}:{"data-unchecked":""}};var p=a.i(93605),q=a.i(38324),r=a.i(38355),s=a.i(59752),t=a.i(82439),u=a.i(67854),v=a.i(26086),w=a.i(48637),x=a.i(72452);let y=d.forwardRef(function(a,c){let{checked:m,className:y,defaultChecked:z,"aria-labelledby":A,form:B,id:C,inputRef:D,name:E,nativeButton:F=!1,onCheckedChange:G,readOnly:H=!1,required:I=!1,disabled:J=!1,render:K,uncheckedValue:L,value:M,style:N,...O}=a,{clearErrors:P}=(0,s.useFormContext)(),{state:Q,setTouched:R,setDirty:S,validityData:T,setFilled:U,setFocused:V,validationMode:W,disabled:X,name:Y,validation:Z}=(0,q.useFieldRootContext)(),{labelId:$}=(0,t.useLabelableContext)(),_=X||J,aa=Y??E,ab=d.useRef(null),ac=(0,f.useMergedRefs)(ab,D,Z.inputRef),ad=d.useRef(null),ae=(0,k.useBaseUiId)(),af=(0,u.useLabelableId)({id:C}),ag=F?void 0:af,[ah,ai]=(0,e.useControlled)({controlled:m,default:!!z,name:"Switch",state:"checked"});(0,r.useRegisterFieldControl)(ad,ae,ah,void 0,!_,E),(0,g.useIsoLayoutEffect)(()=>{U(ah)},[ah,U]),(0,x.useValueChanged)(ah,()=>{P(aa),S(ah!==T.initialValue),Z.change(ah)});let{getButtonProps:aj,buttonRef:ak}=(0,l.useButton)({disabled:_,native:F}),al=function(a,b,c,e=!0,f){let[h,i]=d.useState(),j=(0,k.useBaseUiId)(f?`${f}-label`:void 0),l=a??b??h;return(0,g.useIsoLayoutEffect)(()=>{let d=a||b||!e?void 0:function(a,b){let c=function(a){if(!a)return;let b=a.parentElement;if(b&&"LABEL"===b.tagName)return b;let c=a.id;if(c){let b=a.nextElementSibling;if(b&&b.htmlFor===c)return b}let d=a.labels;return d&&d[0]}(a);if(c)return!c.id&&b&&(c.id=b),c.id||void 0}(c.current,j);h!==d&&i(d)}),l}(A,$,ab,!F,ag),am={...Z.getValidationProps(_),checked:ah,disabled:_,form:B,id:ag,name:aa,required:I,style:aa?h.visuallyHiddenInput:h.visuallyHidden,tabIndex:-1,type:"checkbox","aria-hidden":!0,ref:ac,onChange(a){if(a.nativeEvent.defaultPrevented)return;if(H)return void a.preventDefault();let b=a.currentTarget.checked,c=(0,v.createChangeEventDetails)(w.REASONS.none,a.nativeEvent);G?.(b,c),c.isCanceled||ai(b)},onClick(a){a.stopPropagation()},onFocus(){ad.current?.focus()},...void 0!==M?{value:M}:i.EMPTY_OBJECT},an=d.useMemo(()=>({...Q,checked:ah,disabled:_,readOnly:H,required:I}),[Q,ah,_,H,I]),ao=(0,j.useRenderElement)("span",a,{state:an,ref:[c,ad,ak],props:[{id:F?af:ae,role:"switch","aria-checked":ah,"aria-readonly":H||void 0,"aria-required":I||void 0,"aria-labelledby":al,onFocus(){_||V(!0)},onBlur(){let a=ab.current;a&&!_&&(R(!0),V(!1),"onBlur"===W&&Z.commit(a.checked))},onClick(a){if(H||_)return;a.preventDefault();let b=ab.current;b&&(0,p.dispatchClickWithModifiers)(b,a)}},O,aj,a=>Z.getValidationProps(_,a)],stateAttributesMapping:o});return(0,b.jsxs)(n.Provider,{value:an,children:[ao,!ah&&aa&&void 0!==L&&(0,b.jsx)("input",{type:"hidden",form:B,name:aa,value:L,disabled:_}),(0,b.jsx)("input",{...am,suppressHydrationWarning:!0})]})}),z=d.forwardRef(function(a,b){let{render:c,className:e,style:f,...g}=a,h=function(){let a=d.useContext(n);if(void 0===a)throw Error((0,m.default)(63));return a}();return(0,j.useRenderElement)("span",a,{state:h,ref:b,stateAttributesMapping:o,props:g})});a.s(["Root",0,y,"Thumb",0,z],30798);var A=a.i(30798),A=A,B=a.i(85198);function C({className:a,size:c="default",...d}){return(0,b.jsx)(A.Root,{"data-slot":"switch","data-size":c,className:(0,B.cn)("peer group/switch relative inline-flex shrink-0 items-center rounded-full border border-transparent transition-all outline-none group-has-[:focus-visible]/field-label:border-transparent group-has-[:focus-visible]/field-label:ring-0 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-[size=default]:h-[18.4px] data-[size=default]:w-[32px] data-[size=sm]:h-[14px] data-[size=sm]:w-[24px] dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-primary data-unchecked:bg-input dark:data-unchecked:bg-input/80 data-disabled:cursor-not-allowed data-disabled:opacity-50",a),...d,children:(0,b.jsx)(A.Thumb,{"data-slot":"switch-thumb",className:"pointer-events-none block rounded-full bg-background ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] dark:data-checked:bg-primary-foreground group-data-[size=default]/switch:data-unchecked:translate-x-0 group-data-[size=sm]/switch:data-unchecked:translate-x-0 dark:data-unchecked:bg-foreground"})})}var D=a.i(17171),E=a.i(54161),F=a.i(36039),G=a.i(70834);a.s(["NotificationPrefs",0,function(){let a=(0,G.useNotificationPrefs)();return(0,b.jsxs)(c.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md mb-6",children:[(0,b.jsxs)(c.CardHeader,{children:[(0,b.jsxs)(c.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight flex items-center gap-2",children:[(0,b.jsx)(F.Bell,{className:"h-5 w-5 text-gray-400"}),"Notification Preferences"]}),(0,b.jsx)(c.CardDescription,{className:"text-sm text-gray-400",children:"Choose where and how you want to be alerted when thresholds are breached."})]}),(0,b.jsxs)(c.CardContent,{className:"space-y-6 max-w-lg",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"space-y-0.5",children:[(0,b.jsx)(D.Label,{className:"text-gray-300 text-sm",children:"In-app Alert"}),(0,b.jsx)("p",{className:"text-xs text-gray-500",children:"Show a banner on the dashboard when a page is over a limit."})]}),(0,b.jsx)(C,{checked:a.alert,onCheckedChange:a=>(0,G.setNotificationPrefs)({alert:a})})]}),(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"space-y-0.5",children:[(0,b.jsxs)(D.Label,{className:"text-gray-300 text-sm",children:["Email Alerts",(0,b.jsx)(E.Badge,{variant:"outline",className:"ml-2 text-[10px] text-gray-400",children:"Coming soon"})]}),(0,b.jsx)("p",{className:"text-xs text-gray-500",children:"Receive reports and alerts to your primary email."})]}),(0,b.jsx)(C,{checked:!1,disabled:!0})]}),(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"space-y-0.5",children:[(0,b.jsxs)(D.Label,{className:"text-gray-300 text-sm",children:["Slack Integration",(0,b.jsx)(E.Badge,{variant:"outline",className:"ml-2 text-[10px] text-gray-400",children:"Coming soon"})]}),(0,b.jsx)("p",{className:"text-xs text-gray-500",children:"Push critical alerts directly to a configured Slack channel."})]}),(0,b.jsx)(C,{checked:!1,disabled:!0})]}),(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"space-y-0.5",children:[(0,b.jsxs)(D.Label,{className:"text-gray-300 text-sm",children:["SMS Alerts",(0,b.jsx)(E.Badge,{variant:"outline",className:"ml-2 text-[10px] text-gray-400",children:"Coming soon"})]}),(0,b.jsx)("p",{className:"text-xs text-gray-500",children:"Get text messages for immediate downtime incidents."})]}),(0,b.jsx)(C,{checked:!1,disabled:!0})]})]})]})}],84997)},3682,a=>{"use strict";var b=a.i(47350),c=a.i(3130),d=a.i(40695),e=a.i(88237),f=a.i(54161),g=a.i(98485);let h={name:"users",size:24,node:[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]};h.node;let i=(0,g.default)(h),j={name:"user-plus",size:24,node:[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"19",x2:"19",y1:"8",y2:"14",key:"1bvyxn"}],["line",{x1:"22",x2:"16",y1:"11",y2:"11",key:"1shjgl"}]]};j.node;let k=(0,g.default)(j),l=[{name:"Alice Freeman",email:"alice@company.com",role:"Admin",status:"Active"},{name:"Bob Smith",email:"bob@company.com",role:"Developer",status:"Active"},{name:"Charlie Davis",email:"charlie@company.com",role:"Viewer",status:"Invited"}];a.s(["TeamMembers",0,function(){return(0,b.jsxs)(c.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md",children:[(0,b.jsxs)(c.CardHeader,{className:"flex flex-row items-center justify-between",children:[(0,b.jsxs)("div",{children:[(0,b.jsxs)(c.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight flex items-center gap-2",children:[(0,b.jsx)(i,{className:"h-5 w-5 text-gray-400"}),"Team Members"]}),(0,b.jsx)(c.CardDescription,{className:"text-sm text-gray-400 mt-1",children:"Manage who has access to your performance dashboard."})]}),(0,b.jsxs)(d.Button,{className:"bg-[#3ee0a1] text-black hover:bg-[#3ee0a1]/80 flex items-center gap-2",children:[(0,b.jsx)(k,{className:"h-4 w-4"}),"Invite"]})]}),(0,b.jsx)(c.CardContent,{children:(0,b.jsx)("div",{className:"rounded-md border border-[#2d3748] overflow-hidden",children:(0,b.jsxs)(e.Table,{children:[(0,b.jsx)(e.TableHeader,{className:"bg-[#0f1419]",children:(0,b.jsxs)(e.TableRow,{className:"border-[#2d3748] hover:bg-transparent",children:[(0,b.jsx)(e.TableHead,{className:"text-gray-400",children:"Name"}),(0,b.jsx)(e.TableHead,{className:"text-gray-400",children:"Email"}),(0,b.jsx)(e.TableHead,{className:"text-gray-400",children:"Role"}),(0,b.jsx)(e.TableHead,{className:"text-right text-gray-400",children:"Status"})]})}),(0,b.jsx)(e.TableBody,{children:l.map(a=>(0,b.jsxs)(e.TableRow,{className:"border-[#2d3748] hover:bg-white/5 transition-colors",children:[(0,b.jsx)(e.TableCell,{className:"font-medium text-white",children:a.name}),(0,b.jsx)(e.TableCell,{className:"text-gray-400",children:a.email}),(0,b.jsx)(e.TableCell,{className:"text-gray-400",children:a.role}),(0,b.jsx)(e.TableCell,{className:"text-right",children:(0,b.jsx)(f.Badge,{variant:"outline",className:`
2
2
  ${"Active"===a.status?"border-[#3ee0a1] text-[#3ee0a1] bg-[#3ee0a1]/10":""}
3
3
  ${"Invited"===a.status?"border-[#f59e0b] text-[#f59e0b] bg-[#f59e0b]/10":""}
4
4
  `,children:a.status})})]},a.email))})]})})})]})}],3682)},91654,a=>{"use strict";var b,c=a.i(47350),d=a.i(66219),e=a.i(3130);a.s([],73669),a.i(73669);var f=a.i(75086),g=a.i(87324),h=a.i(81625),i=a.i(35537),j=a.i(58153),k=a.i(86981);function l(a,b,c=Object.is){let{length:d}=a;if(d!==b.length)return!1;for(let e=0;e<d;e+=1)if(!c(a[e],b[e]))return!1;return!0}var m=a.i(26086),n=a.i(72452),o=a.i(2925),p=a.i(40328),q=a.i(44314),r=a.i(56458),s=a.i(38324),t=a.i(38355),u=a.i(59752),v=a.i(82439);function w(a,b){return a-b}function x(a,b,c,d,e,f){let g=(0,k.clamp)(a,c,d);if(!e)return g;let h=f.slice();return h[b]=(0,k.clamp)(g,f[b-1]??-1/0,f[b+1]??1/0),h.sort(w)}function y(a,b,c){if(!Array.isArray(a))return!0;let d=b*c;for(let b=0;b<a.length-1;b+=1)if(!(Math.abs(a[b]-a[b+1])>=d))return!1;return!0}var z=a.i(88731);let A=()=>null,B={activeThumbIndex:A,max:A,min:A,minStepsBetweenValues:A,step:A,values:A,...z.fieldValidityMapping};var C=a.i(69915);let D=f.createContext(void 0);function E(){let a=f.useContext(D);if(void 0===a)throw Error((0,C.default)(62));return a}var F=a.i(48637);let G=f.forwardRef(function(a,b){let{"aria-labelledby":d,className:e,defaultValue:z,disabled:A=!1,id:C,format:E,largeStep:G=10,locale:H,render:I,max:J=100,min:K=0,minStepsBetweenValues:L=0,form:M,name:N,onValueChange:O,onValueCommitted:P,orientation:Q="horizontal",step:R=1,thumbCollisionBehavior:S="push",thumbAlignment:T="center",value:U,style:V,...W}=a,X=(0,o.useBaseUiId)(C),Y=null==X?void 0:`${X}-label`,Z=(0,i.useStableCallback)(O),$=(0,i.useStableCallback)(P),{clearErrors:_}=(0,u.useFormContext)(),{state:aa,disabled:ab,name:ac,setTouched:ad,setDirty:ae,validityData:af,validation:ag}=(0,s.useFieldRootContext)(),{labelId:ah}=(0,v.useLabelableContext)(),[ai,aj]=f.useState(),ak=d??ah??ai,al=ab||A,am=ac??N,[an,ao]=(0,h.useControlled)({controlled:U,default:z??K,name:"Slider"}),ap=f.useRef(null),aq=f.useRef(null),ar=f.useRef([]),as=f.useRef(null),at=f.useRef(-1),au=f.useRef(null),av=f.useRef(F.REASONS.none),[aw,ax]=f.useState(-1),[ay,az]=f.useState(-1),[aA,aB]=f.useState(!1),[aC,aD]=f.useState(()=>new Map),[aE,aF]=f.useState([void 0,void 0]),aG=(0,i.useStableCallback)(a=>{ax(a),-1!==a&&az(a)}),aH=(0,i.useStableCallback)(a=>{a&&(aq.current=a)}),aI=Array.isArray(an),aJ=f.useMemo(()=>aI?an.map(a=>(0,k.clamp)(a,K,J)).sort(w):[(0,k.clamp)(an,K,J)],[J,K,aI,an]),aK=aI?aJ:aJ[0];(0,t.useRegisterFieldControl)(ag.inputRef,X,aK,void 0,!al,N),(0,n.useValueChanged)(aK,()=>{_(am),ag.change(aK);let a=af.initialValue;ae(Array.isArray(aK)&&Array.isArray(a)?!l(aK,a):aK!==a)});let aL=(0,i.useStableCallback)((a,b)=>{var c,d;if(Number.isNaN(a)||(c=a)===(d=an)||Array.isArray(c)&&Array.isArray(d)&&l(c,d))return!1;let e=b.event,f=new e.constructor(e.type,e);return Object.defineProperty(f,"target",{writable:!0,value:{value:a,name:am}}),b.event=f,Z(a,b),!b.isCanceled&&(av.current=b.reason,ao(a),!0)}),aM=(0,i.useStableCallback)((a,b,c)=>{let d=x(a,b,K,J,aI,aJ);if(y(d,R,L)){let a="key"in c?F.REASONS.keyboard:F.REASONS.inputChange,e=aL(d,(0,m.createChangeEventDetails)(a,c.nativeEvent,void 0,{activeThumbIndex:b}));ad(!0),e&&$(d,(0,m.createGenericEventDetails)(a,c.nativeEvent))}});(0,j.useIsoLayoutEffect)(()=>{if(!al)return;let a=(0,q.activeElement)((0,g.ownerDocument)(ap.current));(0,q.contains)(ap.current,a)&&a.blur(),-1!==aw&&aG(-1)},[aw,al,aG]);let aN=f.useMemo(()=>({...aa,activeThumbIndex:aw,disabled:al,dragging:aA,orientation:Q,max:J,min:K,minStepsBetweenValues:L,step:R,values:aJ}),[aa,aw,al,aA,J,K,L,Q,R,aJ]),aO=f.useMemo(()=>({active:aw,controlRef:aq,disabled:al,dragging:aA,validation:ag,format:E,handleInputChange:aM,indicatorPosition:aE,inset:"center"!==T,labelId:ak,rootLabelId:Y,largeStep:G,lastUsedThumbIndex:ay,lastChangeReasonRef:av,form:M,locale:H,max:J,min:K,minStepsBetweenValues:L,name:am,onValueCommitted:$,orientation:Q,pressedThumbCenterOffsetRef:as,pressedThumbIndexRef:at,pressedValuesRef:au,registerFieldControlRef:aH,renderBeforeHydration:"edge"===T,setActive:aG,setDragging:aB,setIndicatorPosition:aF,setLabelId:aj,setValue:aL,state:aN,step:R,thumbCollisionBehavior:S,thumbMap:aC,thumbRefs:ar,values:aJ}),[aw,ak,Y,al,aA,ag,E,aM,aE,G,ay,M,H,J,K,L,am,$,Q,aH,aG,aL,aN,R,S,T,aC,aJ]),aP=(0,p.useRenderElement)("div",a,{state:aN,ref:[b,ap],props:[{"aria-labelledby":ak,id:X,role:"group"},W,a=>ag.getValidationProps(al,a)],stateAttributesMapping:B});return(0,c.jsx)(D.Provider,{value:aO,children:(0,c.jsx)(r.CompositeList,{elementsRef:ar,onMapChange:aD,children:aP})})});var H=a.i(59907),I=a.i(31278);let J=f.forwardRef(function(a,b){let{render:c,className:d,style:e,...f}=a;delete f.id;let{state:h,setLabelId:i,controlRef:j,rootLabelId:k}=E(),l=(0,I.useLabel)({id:k,setLabelId:i,focusControl:function(a,b){if(b){let c=(0,g.ownerDocument)(a.currentTarget).getElementById(b);if((0,H.isHTMLElement)(c))return void(0,I.focusElementWithVisible)(c)}let c=j.current?.querySelectorAll('input[type="range"]'),d=c?.length===1?c[0]:null;(0,H.isHTMLElement)(d)&&(0,I.focusElementWithVisible)(d)}});return(0,p.useRenderElement)("div",a,{ref:b,state:h,props:[l,f],stateAttributesMapping:B})}),K=new Map;function L(a,b,c){return null==a?"":(function(a,b){let c=JSON.stringify({locale:function a(b){return Array.isArray(b)?b.map(b=>a(b)).join(","):null==b?"":String(b)}(a),options:b}),d=K.get(c);if(d)return d;let e=new Intl.NumberFormat(a,b);return K.set(c,e),e})(b,c).format(a)}let M=f.forwardRef(function(a,b){let{"aria-live":c="off",render:d,className:e,children:g,style:h,...i}=a,{thumbMap:j,state:k,values:l,format:m,locale:n}=E(),o=Array.from(j.values(),({inputId:a})=>a).join(" ").trim()||void 0,q=f.useMemo(()=>l.map(a=>L(a,n,m)),[m,n,l]),r=q.join(" – ");return(0,p.useRenderElement)("output",a,{state:k,ref:b,props:[{"aria-live":c,children:"function"==typeof g?g(q,l):r,htmlFor:o},i],stateAttributesMapping:B})});var N=a.i(82473),O=a.i(33056),P=a.i(78881),Q=a.i(59415),R=a.i(51723);function S(a,b){let c=a.getBoundingClientRect();return b?(c.top+c.bottom)/2:(c.left+c.right)/2}function T(a){if(0===a)return 0;if(1>Math.abs(a)){let b=a.toExponential().split("e-"),c=b[0].split(".")[1];return(c?c.length:0)+parseInt(b[1],10)}let b=a.toString().split(".")[1];return b?b.length:0}function U(a,b,c){return Number((Math.round((a-c)/b)*b+c).toFixed(Math.max(T(b),T(c))))}function V(a,b,c,d,e,f,g,h){let i=a.slice(),j=f*g,l=i.length-1,m=h??a;i[b]=(0,k.clamp)(c,d+b*j,e-(l-b)*j);for(let a=b+1;a<=l;a+=1){let b=i[a-1]+j,c=e-(l-a)*j,d=m[a],f=Math.max(i[a],b);d<f&&(f=Math.max(d,b)),i[a]=(0,k.clamp)(f,b,c)}for(let a=b-1;a>=0;a-=1){let b=i[a+1]-j,c=d+a*j,e=m[a],f=Math.min(i[a],b);e>f&&(f=Math.min(e,b)),i[a]=(0,k.clamp)(f,c,b)}for(let a=0;a<=l;a+=1)i[a]=Number(i[a].toFixed(12));return i}let W=f.forwardRef(function(a,b){let{render:c,className:d,style:e,...h}=a,{disabled:j,dragging:l,inset:n,lastChangeReasonRef:o,max:r,min:s,minStepsBetweenValues:t,onValueCommitted:u,orientation:v,pressedThumbCenterOffsetRef:w,pressedThumbIndexRef:x,pressedValuesRef:z,registerFieldControlRef:A,renderBeforeHydration:C,setActive:D,setDragging:G,setValue:I,state:J,step:K,thumbCollisionBehavior:L,thumbRefs:M,values:T}=E(),W=(0,R.useDirection)(),X=T.length>1,Y="vertical"===v,Z=f.useRef(null),$=f.useRef(null),_=(0,i.useStableCallback)(a=>{a&&null==$.current&&($.current=(0,O.ownerWindow)(a).getComputedStyle(a))}),aa=f.useRef(null),ab=f.useRef(0),ac=f.useRef(0),ad=f.useRef(null),ae=(0,Q.useValueAsRef)(T);function af(a){return a?.querySelector('input[type="range"]')}function ag(a){x.current=a,M.current[a]||(w.current=null)}function ah(){x.current=-1,w.current=null}function ai(a){return!!(0,H.isElement)(a)&&M.current.some(b=>!!(0,H.isElement)(b)&&!!(0,q.contains)(b,a)&&af(b)?.disabled===!0)}function aj(a){let b=Z.current,c=x.current;if(!b||c<0||c>=T.length)return c>=T.length&&(ad.current=null),null;let{width:d,height:e,bottom:f,left:g,right:h}=b.getBoundingClientRect(),i=function(a,b){if(!a)return{start:0,end:0};function c(a){let b=null!=a?parseFloat(a):0;return Number.isNaN(b)?0:b}let d=b?"Top":"InlineStart",e=b?"Bottom":"InlineEnd";return{start:c(a[`border${d}Width`])+c(a[`padding${d}`]),end:c(a[`border${e}Width`])+c(a[`padding${e}`])}}($.current,Y),j=ac.current,l=(Y?e:d)-i.start-i.end-2*j,m=w.current??0,n=a.x-m,o=a.y-m,p=Y?f-o-i.end:("rtl"===W?h-n:n-g)-i.start,q=(r-s)*(0,k.clamp)((p-j)/l,0,1)+s;return(q=U(q,K,s),q=(0,k.clamp)(q,s,r),X)?function(a,b,c,d,e,f,g,h,i,j){let l=c??b,m=d??b;if(!(l.length>1))return{value:f,thumbIndex:0,didSwap:!1};let n=i*j;if("push"===a)return{value:V(l,e,f,g,h,i,j),thumbIndex:e,didSwap:!1};let o=l.slice(),p=o[e-1],q=o[e+1],r=null!=p?p+n:g,s=null!=q?q-n:h,t=Number((0,k.clamp)(f,r,s).toFixed(12));if(o[e]=t,"swap"!==a)return{value:o,thumbIndex:e,didSwap:!1};{let a=l[e],b=f>a,c=f<a,d=b&&null!=q&&f>=q-1e-7,r=c&&null!=p&&f<=p+1e-7;if(!d&&!r)return{value:o,thumbIndex:e,didSwap:!1};let s=d?e+1:e-1,u=o.map((a,b)=>{if(b===e)return t;let c=m[b];return null!=c?c:l[b]}),v=f;v=d?Math.max(f,o[s]):Math.min(f,o[s]);let w=V(o,s,v,g,h,i,j,u),x=d?s-1:s+1,y=w[x-1],z=w[x+1],A=null!=y?y+n:g;A=Math.max(A,g+x*n);let B=null!=z?z-n:h;B=Math.min(B,h-(w.length-1-x)*n);let C=(0,k.clamp)(t,A,B);return w[x]=Number(C.toFixed(12)),{value:w,thumbIndex:s,didSwap:!0}}}(L,T,ae.current,z.current,c,q,s,r,K,t):{value:q,thumbIndex:c,didSwap:!1}}function ak(a){z.current=X?T.slice():null,ad.current=null,ae.current=T;let b=x.current,c=b;if(b>-1&&b<T.length){if(T[b]===r){let a=b;for(;a>0&&T[a-1]===r;)a-=1;c=a}}else{let b,d=Y?"y":"x";c=-1;for(let e=0;e<M.current.length;e+=1){let f=M.current[e];if((0,H.isElement)(f)&&!af(f)?.disabled){let g=S(f,Y),h=Math.abs(a[d]-g);(void 0===b||h<=b)&&(c=e,b=h)}}}if(c>-1&&c!==b&&ag(c),n){let a=M.current[c];(0,H.isElement)(a)&&(ac.current=a.getBoundingClientRect()[Y?"height":"width"]/2)}}function al(a){let b=af(M.current?.[a]);b&&b.focus({preventScroll:!0,focusVisible:!1})}function am(a,b,c){let d=I(a.value,(0,m.createChangeEventDetails)(b,c,void 0,{activeThumbIndex:a.thumbIndex}));return d&&(ad.current=a.value,ae.current=Array.isArray(a.value)?a.value:[a.value],a.didSwap&&(ag(a.thumbIndex),al(a.thumbIndex))),d}let an=(0,i.useStableCallback)(a=>{let b=function(a,b){if(null!=b.current&&a.changedTouches){for(let c=0;c<a.changedTouches.length;c+=1){let d=a.changedTouches[c];if(d.identifier===b.current)return{x:d.clientX,y:d.clientY}}return null}return{x:a.clientX,y:a.clientY}}(a,aa);if(null==b)return;if(ab.current+=1,"pointermove"===a.type&&0===a.buttons)return void ao(a);let c=aj(b);null!=c&&y(c.value,K,t)&&(!l&&ab.current>2&&G(!0),am(c,F.REASONS.drag,a))}),ao=(0,i.useStableCallback)(a=>{D(-1),G(!1),w.current=null;let b=ad.current;if(Array.isArray(b)&&b.length!==T.length&&(ad.current=null),null!=ad.current){let b=o.current;u(ad.current,(0,m.createGenericEventDetails)(b,a))}"pointerType"in a&&Z.current?.hasPointerCapture(a.pointerId)&&Z.current?.releasePointerCapture(a.pointerId),x.current=-1,aa.current=null,aq()}),ap=(0,i.useStableCallback)(a=>{if(j)return;if(ai((0,q.getTarget)(a)))return void ah();let b=a.changedTouches[0];if(null==b)return;aa.current=b.identifier;let c={x:b.clientX,y:b.clientY};ak(c);let d=aj(c);if(null==d)return;al(d.thumbIndex),am(d,F.REASONS.trackPress,a),ab.current=0;let e=(0,g.ownerDocument)(Z.current);e.addEventListener("touchmove",an,{passive:!0}),e.addEventListener("touchend",ao,{passive:!0})}),aq=(0,i.useStableCallback)(()=>{let a=(0,g.ownerDocument)(Z.current);a.removeEventListener("pointermove",an),a.removeEventListener("pointerup",ao),a.removeEventListener("touchmove",an),a.removeEventListener("touchend",ao),z.current=null,ad.current=null}),ar=(0,P.useAnimationFrame)();return f.useEffect(()=>{let a=Z.current;if(!a)return()=>aq();let b=(0,N.addEventListener)(a,"touchstart",ap,{passive:!0});return()=>{b(),ar.cancel(),aq()}},[aq,ap,Z,ar]),f.useEffect(()=>{j&&aq()},[j,aq]),(0,p.useRenderElement)("div",a,{state:J,ref:[b,A,Z,_],props:[{"data-base-ui-slider-control":C?"":void 0,onPointerDown(a){let b=Z.current,c=(0,q.getTarget)(a.nativeEvent);if(!b||j||a.defaultPrevented||!(0,H.isElement)(c)||0!==a.button)return;if(ai(c))return void ah();let d={x:a.clientX,y:a.clientY};ak(d);let e=aj(d);if(null==e)return;(0,q.contains)(M.current[e.thumbIndex],(0,q.activeElement)((0,g.ownerDocument)(b)))?a.preventDefault():ar.request(()=>{al(e.thumbIndex)}),G(!0),null==w.current&&am(e,F.REASONS.trackPress,a.nativeEvent),a.nativeEvent.pointerId&&b.setPointerCapture(a.nativeEvent.pointerId),ab.current=0;let f=(0,g.ownerDocument)(b);f.addEventListener("pointermove",an,{passive:!0}),f.addEventListener("pointerup",ao,{once:!0})}},h],stateAttributesMapping:B})}),X=f.forwardRef(function(a,b){let{render:c,className:d,style:e,...f}=a,{state:g}=E();return(0,p.useRenderElement)("div",a,{state:g,ref:b,props:[{style:{position:"relative"}},f],stateAttributesMapping:B})});var Y=a.i(21276),Z=a.i(55161),$=a.i(18915),_=a.i(22575),aa=a.i(54450),ab=a.i(43353),ac=a.i(68298),ad=a.i(35124),ae=a.i(67854);let af=new Set([...aa.COMPOSITE_KEYS,aa.PAGE_UP,aa.PAGE_DOWN]),ag=f.forwardRef(function(a,d){let e,g,h,{render:l,children:m,className:n,"aria-describedby":r,"aria-label":t,"aria-labelledby":u,"aria-valuetext":v,disabled:w=!1,getAriaLabel:y,getAriaValueText:z,id:A,index:C,inputRef:D,onBlur:F,onFocus:G,onKeyDown:H,tabIndex:I,style:J,...K}=a,M=(0,o.useBaseUiId)(A),{active:N,lastUsedThumbIndex:P,controlRef:Q,disabled:V,validation:W,format:X,handleInputChange:ag,inset:ah,labelId:ai,largeStep:aj,locale:ak,max:al,min:am,minStepsBetweenValues:an,form:ao,name:ap,orientation:aq,pressedThumbCenterOffsetRef:ar,pressedThumbIndexRef:as,renderBeforeHydration:at,setActive:au,setIndicatorPosition:av,state:aw,step:ax,thumbRefs:ay,values:az}=E(),aA=(0,R.useDirection)(),aB=w||V,aC=az.length>1,aD="vertical"===aq,aE="rtl"===aA,{setTouched:aF,setFocused:aG,validationMode:aH}=(0,s.useFieldRootContext)(),aI=f.useRef(null),aJ=f.useRef(null),aK=f.useRef(!1),aL=(0,i.useStableCallback)(a=>{aK.current||G?.(a)}),aM=(0,i.useStableCallback)(a=>{aK.current||F?.(a)}),aN=(0,o.useBaseUiId)(),aO=(0,ae.useLabelableId)(),aP=aC?aN:aO,aQ=f.useMemo(()=>({inputId:aP}),[aP]),{ref:aR,index:aS}=(0,ab.useCompositeListItem)({metadata:aQ}),aT=aC?C??aS:0,aU=aT===az.length-1,aV=az[aT],aW=(aV-am)*100/(al-am),[aX,aY]=f.useState(),aZ=(0,_.useIsHydrating)(),a$=P>=0&&P<az.length?P:-1,a_=(0,i.useStableCallback)(()=>{let a=Q.current,b=aI.current;if(!a||!b)return;let c=b.getBoundingClientRect(),d=a.getBoundingClientRect(),e=aD?"height":"width",f=d[e]-c[e],g=(c[e]/2+f*aW/100)/d[e]*100,h=Number.isFinite(g)?g:void 0;aY(h),0===aT?av(a=>[h,a[1]]):aU&&av(a=>[a[0],h])});(0,j.useIsoLayoutEffect)(()=>{ah&&queueMicrotask(a_)},[a_,ah]),(0,j.useIsoLayoutEffect)(()=>{ah&&a_()},[a_,ah,aW]),(0,j.useIsoLayoutEffect)(()=>{if(!ah)return;let a=Q.current,b=aI.current;if(!a||!b)return;let c=(0,O.ownerWindow)(a).ResizeObserver;if("function"!=typeof c)return;let d=new c(a_);return d.observe(a),d.observe(b),()=>{d.disconnect()}},[Q,a_,ah]);let a0=aD?"bottom":"insetInlineStart",a1=aD?"left":"top";aC?N===aT?e=2:a$===aT&&(e=1):N===aT&&(e=1),g=ah||Number.isFinite(aW)?{position:"absolute",[a0]:ah?"var(--position)":`${aW}%`,[a1]:"50%",translate:`${(aD||!aE?-1:1)*50}% ${(aD?1:-1)*50}%`,zIndex:e,...ah&&{"--position":`${aX??0}%`,visibility:at&&aZ||void 0===aX?"hidden":void 0}}:Z.visuallyHidden,aD&&(h=aE?"vertical-rl":"vertical-lr");let a2="function"==typeof y?y(aT):t,a3=(0,$.mergeProps)({"aria-label":a2,"aria-labelledby":u??(null==a2?ai:void 0),"aria-describedby":r,"aria-orientation":aq,"aria-valuenow":aV,"aria-valuetext":"function"==typeof z?z(L(aV,ak,X),aV,aT):v??function(a,b,c,d){if(!(b<0))return 2===a.length?`${L(a[b],d,c)} ${0===b?"start":"end"} range`:c?L(a[b],d,c):void 0}(az,aT,X,ak),disabled:aB,form:ao,id:aP,max:al,min:am,name:ap,onChange(a){ag(a.currentTarget.valueAsNumber,aT,a)},onFocus(a){let b=aK.current;aK.current=!1,au(aT),aG(!0),b&&a.stopPropagation()},onBlur(a){aK.current?a.stopPropagation():(au(-1),ay.current.some(b=>(0,q.contains)(b,a.relatedTarget))||(aF(!0),aG(!1),"onBlur"===aH&&W.commit(x(aV,aT,am,al,aC,az))))},onKeyDown(a){var b;let c;if(a.defaultPrevented||!af.has(a.key))return;aa.COMPOSITE_KEYS.has(a.key)&&a.stopPropagation();let d=null,e=0,f=a.shiftKey?aj:ax,g=U(aV,ax,am);switch(a.key){case aa.ARROW_UP:e=1;break;case aa.ARROW_RIGHT:e=aE?-1:1;break;case aa.ARROW_DOWN:e=-1;break;case aa.ARROW_LEFT:e=aE?1:-1;break;case aa.PAGE_UP:f=aj,e=1;break;case aa.PAGE_DOWN:f=aj,e=-1;break;case aa.END:d=aC&&Number.isFinite(az[aT+1])?az[aT+1]-ax*an:al;break;case aa.HOME:d=aC&&Number.isFinite(az[aT-1])?az[aT-1]+ax*an:am}if(0!==e&&(c=Number((g+(b=f)*e).toFixed(Math.max(T(g),T(b),T(am)))),d=(0,k.clamp)(c,am,al)),null!==d){let b=a.currentTarget;(0,ad.matchesFocusVisible)(b)||(aK.current=!0,b.blur(),b.focus({preventScroll:!0,focusVisible:!0})),ag(d,aT,a),a.preventDefault()}},step:ax,style:{...Z.visuallyHidden,width:"100%",height:"100%",writingMode:h},tabIndex:I,type:"range",value:aV??""},a=>W.getValidationProps(aB,a),{onFocus:aL,onBlur:aM,onKeyDown:H}),a4=(0,Y.useMergedRefs)(aJ,W.inputRef,D);return(0,p.useRenderElement)("div",a,{state:aw,ref:[d,aR,aI],props:[{"data-index":aT,children:(0,c.jsxs)(f.Fragment,{children:[m,(0,c.jsx)("input",{ref:a4,...a3,suppressHydrationWarning:!0}),ah&&aU&&at&&(b||(b=(0,c.jsx)(ac.PrehydrationScript,{script:'!function(){const t=document.currentScript?.parentElement;if(!t)return;const e=t.closest("[data-base-ui-slider-control]");if(!e)return;const r=e.querySelector("[data-base-ui-slider-indicator]"),i=e.getBoundingClientRect(),n="vertical"===e.getAttribute("data-orientation")?"height":"width",o=e.querySelectorAll(\'input[type="range"]\'),l=o.length>1,s=o.length-1;let a=null,u=null;for(let t=0;t<o.length;t+=1){const e=o[t],y=parseFloat(e.getAttribute("value")??"");if(Number.isNaN(y))return;const c=e.parentElement;if(!c)return;const p=parseFloat(e.getAttribute("max")??"100"),g=parseFloat(e.getAttribute("min")??"0"),b=c?.getBoundingClientRect(),d=i[n]-b[n],m=100*(y-g)/(p-g),v=(b[n]/2+d*m/100)/i[n]*100;c.style.setProperty("--position",`${v}%`),Number.isFinite(v)&&(c.style.removeProperty("visibility"),r&&(0===t?(a=v,r.style.setProperty("--start-position",`${v}%`),l||r.style.removeProperty("visibility")):t===s&&(u=v-(a??0),r.style.setProperty("--end-position",`${v}%`),r.style.setProperty("--relative-size",`${u}%`),r.style.removeProperty("visibility"))))}}();'})))]}),id:M,onPointerDown(a){if(aB)return;as.current=aT;let b=S(a.currentTarget,aD);ar.current=(aD?a.clientY:a.clientX)-b},style:g,suppressHydrationWarning:at||void 0},K],stateAttributesMapping:B})}),ah=f.forwardRef(function(a,b){var c,d,e;let f,g,h,{render:i,className:j,style:k,...l}=a,{indicatorPosition:m,inset:n,max:o,min:q,orientation:r,renderBeforeHydration:s,state:t,values:u}=E(),v=(0,_.useIsHydrating)(),w=u.length>1,x=(c="vertical"===r,d=n?m[0]:(u[0]-q)*100/(o-q),e=n?m[1]:(u[u.length-1]-q)*100/(o-q),f={visibility:n&&s&&v||n&&(void 0===d||w&&void 0===e)?"hidden":void 0,position:c?"absolute":"relative",[c?"width":"height"]:"inherit"},g=`${d??0}%`,h=`${(e??0)-(d??0)}%`,n&&(f["--start-position"]=g,g="var(--start-position)",w&&(f["--relative-size"]=h,h="var(--relative-size)")),f[c?"bottom":"insetInlineStart"]=w?g:0,f[c?"height":"width"]=w?h:g,f);return(0,p.useRenderElement)("div",a,{state:t,ref:b,props:[{"data-base-ui-slider-indicator":s?"":void 0,style:x,suppressHydrationWarning:s||void 0},l],stateAttributesMapping:B})});a.s(["Control",0,W,"Indicator",0,ah,"Label",0,J,"Root",0,G,"Thumb",0,ag,"Track",0,X,"Value",0,M],68949);var ai=a.i(68949),ai=ai,aj=a.i(85198);function ak({className:a,defaultValue:b,value:d,min:e=0,max:f=100,...g}){let h=Array.isArray(d)?d:Array.isArray(b)?b:[e,f];return(0,c.jsx)(ai.Root,{className:(0,aj.cn)("data-horizontal:w-full data-vertical:h-full",a),"data-slot":"slider",defaultValue:b,value:d,min:e,max:f,thumbAlignment:"edge",...g,children:(0,c.jsxs)(ai.Control,{className:"relative flex w-full touch-none items-center select-none data-disabled:opacity-50 data-vertical:h-full data-vertical:min-h-40 data-vertical:w-auto data-vertical:flex-col",children:[(0,c.jsx)(ai.Track,{"data-slot":"slider-track",className:"relative grow overflow-hidden rounded-full bg-muted select-none data-horizontal:h-1 data-horizontal:w-full data-vertical:h-full data-vertical:w-1",children:(0,c.jsx)(ai.Indicator,{"data-slot":"slider-range",className:"bg-primary select-none data-horizontal:h-full data-vertical:w-full"})}),Array.from({length:h.length},(a,b)=>(0,c.jsx)(ai.Thumb,{"data-slot":"slider-thumb",className:"relative block size-3 shrink-0 rounded-full border border-ring bg-white ring-ring/50 transition-[color,box-shadow] select-none after:absolute after:-inset-2 hover:ring-3 focus-visible:ring-3 focus-visible:outline-hidden active:ring-3 disabled:pointer-events-none disabled:opacity-50"},b))]})})}var al=a.i(17171),am=a.i(65598);let an=a=>"number"==typeof a?a:a[0];a.s(["ThresholdSettings",0,function(){let a=(0,d.useThresholds)(),b=[a.loadSeconds],f=[a.errorPercent],g=[a.uptimeSLA];return(0,c.jsxs)(e.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md",children:[(0,c.jsxs)(e.CardHeader,{children:[(0,c.jsxs)(e.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight flex items-center gap-2",children:[(0,c.jsx)(am.Activity,{className:"h-5 w-5 text-gray-400"}),"Performance Thresholds"]}),(0,c.jsx)(e.CardDescription,{className:"text-sm text-gray-400",children:'Set the boundaries that will trigger "Warning" or "Critical" statuses in your dashboard.'})]}),(0,c.jsxs)(e.CardContent,{className:"space-y-8 max-w-2xl",children:[(0,c.jsxs)("div",{className:"space-y-4",children:[(0,c.jsxs)("div",{className:"flex items-center justify-between",children:[(0,c.jsx)(al.Label,{className:"text-gray-300 text-sm",children:"Load Time Threshold (Seconds)"}),(0,c.jsxs)("span",{className:"text-[#3ee0a1] font-mono text-sm",children:[b[0],"s"]})]}),(0,c.jsx)(ak,{value:b,onValueChange:a=>(0,d.setThresholds)({loadSeconds:an(a)}),min:.1,max:5,step:.1,className:"cursor-pointer"}),(0,c.jsx)("p",{className:"text-xs text-gray-500",children:"Alert triggers if average load time exceeds this value."})]}),(0,c.jsxs)("div",{className:"space-y-4",children:[(0,c.jsxs)("div",{className:"flex items-center justify-between",children:[(0,c.jsx)(al.Label,{className:"text-gray-300 text-sm",children:"Error Rate Threshold (%)"}),(0,c.jsxs)("span",{className:"text-[#ef4444] font-mono text-sm",children:[f[0],"%"]})]}),(0,c.jsx)(ak,{value:f,onValueChange:a=>(0,d.setThresholds)({errorPercent:an(a)}),min:.5,max:10,step:.5,className:"cursor-pointer"}),(0,c.jsx)("p",{className:"text-xs text-gray-500",children:"Alert triggers if percentage of 5xx errors exceeds this value."})]}),(0,c.jsxs)("div",{className:"space-y-4",children:[(0,c.jsxs)("div",{className:"flex items-center justify-between",children:[(0,c.jsx)(al.Label,{className:"text-gray-300 text-sm",children:"Apdex Minimum (0-1)"}),(0,c.jsx)("span",{className:"text-white font-mono text-sm",children:+a.apdexMin.toFixed(2)})]}),(0,c.jsx)(ak,{value:[a.apdexMin],onValueChange:a=>(0,d.setThresholds)({apdexMin:an(a)}),min:0,max:1,step:.05,largeStep:.1,className:"cursor-pointer"}),(0,c.jsx)("p",{className:"text-xs text-gray-500",children:"Alert triggers if a page's Apdex falls below this value."})]}),(0,c.jsxs)("div",{className:"space-y-4",children:[(0,c.jsxs)("div",{className:"flex items-center justify-between",children:[(0,c.jsx)(al.Label,{className:"text-gray-300 text-sm",children:"Uptime SLA Target (%)"}),(0,c.jsxs)("span",{className:"text-[#06b6d4] font-mono text-sm",children:[g[0],"%"]})]}),(0,c.jsx)(ak,{value:g,onValueChange:a=>(0,d.setThresholds)({uptimeSLA:an(a)}),min:90,max:100,step:.01,className:"cursor-pointer"}),(0,c.jsx)("p",{className:"text-xs text-gray-500",children:"Your desired target uptime SLA for the month."})]})]})]})}],91654)},17171,a=>{"use strict";var b=a.i(47350),c=a.i(85198);a.s(["Label",0,function({className:a,...d}){return(0,b.jsx)("label",{"data-slot":"label",className:(0,c.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...d})}])},21958,a=>{"use strict";var b,c=a.i(47350);a.s([],30277),a.i(30277);var d=a.i(75086),e=a.i(81625),f=a.i(58153),g=a.i(35537),h=a.i(40328),i=a.i(56458),j=a.i(69915);let k=d.createContext(void 0);function l(){let a=d.useContext(k);if(void 0===a)throw Error((0,j.default)(64));return a}let m={tabActivationDirection:a=>({"data-activation-direction":a})};var n=a.i(26086),o=a.i(48637);let p=d.forwardRef(function(a,b){let{className:j,defaultValue:l=0,onValueChange:p,orientation:s="horizontal",render:t,value:u,style:v,...w}=a,x=void 0!==a.defaultValue,y=d.useRef([]),[z,A]=d.useState(()=>new Map),[B,C]=(0,e.useControlled)({controlled:u,default:l,name:"Tabs",state:"value"}),D=void 0!==u,[E,F]=d.useState(()=>new Map),G=d.useRef(void 0),H=d.useCallback(a=>q(E,a),[E]),[I,J]=d.useState(()=>({previousValue:B,tabActivationDirection:"none"})),{previousValue:K,tabActivationDirection:L}=I,M=L,N=!1;K!==B&&(M=r(K,B,s,E),N=null!=K&&null!=B&&null==H(B));let O=N?K:B,P=K!==O||L!==M;(0,f.useIsoLayoutEffect)(()=>{P&&J({previousValue:O,tabActivationDirection:M})},[O,P,M]);let Q=(0,g.useStableCallback)((a,b)=>{b.activationDirection=r(B,a,s,E),p?.(a,b),b.isCanceled||C(a)}),R=(0,g.useStableCallback)((a,b)=>{p?.(a,(0,n.createChangeEventDetails)(b,void 0,void 0,{activationDirection:"none"}))}),S=(0,g.useStableCallback)((a,b)=>(A(c=>{let d=new Map(c);return d.set(a,b),d}),()=>{A(c=>{if(c.get(a)!==b)return c;let d=new Map(c);return d.delete(a),d})})),T=d.useCallback(a=>z.get(a),[z]),U=d.useCallback(a=>{for(let b of E.values())if(a===b.value)return b.id},[E]),V=d.useMemo(()=>({getTabElementBySelectedValue:H,getTabIdByPanelValue:U,getTabPanelIdByValue:T,onValueChange:Q,orientation:s,registerMountedTabPanel:S,setTabMap:F,tabActivationDirection:M,value:B}),[H,U,T,Q,s,S,F,M,B]),W=d.useMemo(()=>{for(let a of E.values())if(a.value===B)return a},[E,B]),X=d.useMemo(()=>{for(let a of E.values())if(!a.disabled)return a.value},[E]),Y=d.useRef(!x),Z=d.useRef(l),$=d.useRef(x),_=d.useRef(!1);(0,f.useIsoLayoutEffect)(()=>{if(D)return;function a(a,b){C(a),J({previousValue:a,tabActivationDirection:"none"}),R(a,b),Y.current=!1}if(0===E.size){_.current&&null!==B&&!G.current?.isConnected&&a(null,o.REASONS.missing);return}_.current=!0,G.current=E.keys().next().value;let b=W?.disabled,c=null==W&&null!==B;if(b||B!==Z.current||($.current=!1),$.current&&b&&B===Z.current)return;let d=Y.current;if(b||c){let c=X??null;if(B===c){Y.current=!1;return}let e=o.REASONS.missing;d?e=o.REASONS.initial:b&&(e=o.REASONS.disabled),a(c,e);return}d&&null!=W&&(R(B,o.REASONS.initial),Y.current=!1)},[X,D,R,W,C,E,B]);let aa={orientation:s,tabActivationDirection:M},ab=(0,h.useRenderElement)("div",a,{state:aa,ref:b,props:w,stateAttributesMapping:m});return(0,c.jsx)(k.Provider,{value:V,children:(0,c.jsx)(i.CompositeList,{elementsRef:y,children:ab})})});function q(a,b){for(let[c,d]of a.entries())if(b===d.value)return c;return null}function r(a,b,c,d){if(null==a||null==b)return"none";let[e,f,g]="horizontal"===c?["left","left","right"]:["top","up","down"],h=q(d,a),i=q(d,b);if(null==h||null==i)return h!==i&&("number"==typeof a||"string"==typeof a)&&typeof a==typeof b?b>a?g:f:"none";let j=h.getBoundingClientRect()[e],k=i.getBoundingClientRect()[e];return k<j?f:k>j?g:"none"}var s=a.i(87324),t=a.i(2925),u=a.i(18870);let v="data-composite-item-active";var w=a.i(21276),x=a.i(20805),y=a.i(43353);let z=d.createContext(void 0);function A(){let a=d.useContext(z);if(void 0===a)throw Error((0,j.default)(65));return a}var B=a.i(44314);let C=d.forwardRef(function(a,b){let{className:c,disabled:e=!1,render:i,value:j,id:k,nativeButton:p=!0,style:q,...r}=a,{value:z,getTabPanelIdByValue:C,onValueChange:D,orientation:E,tabActivationDirection:F}=l(),{activateOnFocus:G,registerTabResizeObserverElement:H,tabsListElement:I}=A(),{highlightedIndex:J,onHighlightedIndexChange:K}=(0,x.useCompositeRootContext)(),L=(0,t.useBaseUiId)(k),{compositeProps:M,compositeRef:N,index:O}=function(a={}){let{highlightItemOnHover:b,highlightedIndex:c,onHighlightedIndexChange:e}=(0,x.useCompositeRootContext)(),{ref:f,index:g}=(0,y.useCompositeListItem)(a),h=c===g,i=d.useRef(null),j=(0,w.useMergedRefs)(f,i);return{compositeProps:{tabIndex:h?0:-1,onFocus(){e(g)},onMouseMove(){let a=i.current;if(!b||!a)return;let c=a.hasAttribute("disabled")||"true"===a.ariaDisabled;h||c||a.focus()}},compositeRef:j,index:g}}({metadata:d.useMemo(()=>({disabled:e,id:L,value:j}),[e,L,j])}),P=j===z,Q=d.useRef(!1),R=d.useRef(null),S=(0,g.useStableCallback)(a=>{R.current?.(),R.current=a?H(a):null});(0,f.useIsoLayoutEffect)(()=>{if(Q.current){Q.current=!1;return}if(P&&O>-1&&J!==O){if(null!=I){let a=(0,B.activeElement)((0,s.ownerDocument)(I));if(a&&(0,B.contains)(I,a))return}e||K(O)}},[P,O,J,K,e,I]);let{getButtonProps:T,buttonRef:U}=(0,u.useButton)({disabled:e,native:p,focusableWhenDisabled:!0}),V=C(j),W=d.useRef(!1),X=d.useRef(!1);function Y(a){D(j,(0,n.createChangeEventDetails)(o.REASONS.none,a.nativeEvent,void 0,{activationDirection:"none"}))}return(0,h.useRenderElement)("button",a,{state:{disabled:e,active:P,orientation:E,tabActivationDirection:F},ref:[b,U,N,S],props:[M,{role:"tab","aria-controls":V,"aria-selected":P,id:L,onClick:function(a){P||e||Y(a)},onFocus:function(a){P||e||G&&(!W.current||X.current)&&Y(a)},onPointerDown:function(a){if(P||e)return;W.current=!0,X.current=0===a.button;let b=(0,s.ownerDocument)(a.currentTarget);function c(){W.current=!1,X.current=!1,b.removeEventListener("pointerup",c),b.removeEventListener("pointercancel",c)}b.addEventListener("pointerup",c),b.addEventListener("pointercancel",c)},[v]:P?"":void 0,onKeyDownCapture(){Q.current=!0}},r,T],stateAttributesMapping:m})});var D=a.i(59907),E=a.i(33056),F=a.i(68298),G=a.i(50244),H=a.i(69255);let I={...m,activeTabPosition:()=>null,activeTabSize:()=>null},J=d.forwardRef(function(a,e){let{className:f,render:g,renderBeforeHydration:i=!1,style:j,...k}=a,{getTabElementBySelectedValue:m,orientation:n,tabActivationDirection:o,value:p}=l(),{tabsListElement:q,registerIndicatorUpdateListener:r}=A(),s=function(){let[,a]=d.useState({});return d.useCallback(()=>{a({})},[])}();d.useEffect(()=>r(s),[r,s]);let t=0,u=0,v=0,w=0,x=0,y=0,z=!1;if(null!=p&&null!=q){let a=m(p);if(null!=a){z=!0;let{width:b,height:c}=(0,G.getCssDimensions)(a),{width:d,height:e}=(0,G.getCssDimensions)(q),f=a.getBoundingClientRect(),g=q.getBoundingClientRect(),h=d>0?g.width/d:1,i=e>0?g.height/e:1,j=function(a,b){let c=K(a),d=K(b),e=c.left-d.left-b.clientLeft,f=c.top-d.top-b.clientTop,g=(0,D.getParentNode)(a);for(;(0,D.isHTMLElement)(g)&&g!==b&&!(0,D.isLastTraversableNode)(g);)e-=g.scrollLeft,f-=g.scrollTop,g=(0,D.getParentNode)(g);return{left:e,top:f}}(a,q);t=j.left,v=j.top;let k=(f.left-g.left)/h+q.scrollLeft-q.clientLeft,l=(f.top-g.top)/i+q.scrollTop-q.clientTop,m=function(a){let b=(0,E.ownerWindow)(a).getComputedStyle(a),{x:c,y:d}=(0,H.getElementTransform)(a,b),e=c,f=d,{translate:g}=b;if(g&&"none"!==g){let b=g.split(" ");e+=L(b[0],a.offsetWidth),f+=L(b[1],a.offsetHeight)}return{x:e,y:f}}(a);2>=Math.abs(k-m.x-t)&&2>=Math.abs(l-m.y-v)&&(t=k,v=l),x=b,y=c,u=q.scrollWidth-t-x,w=q.scrollHeight-v-y}}let B=z?{left:t,right:u,top:v,bottom:w}:null,C=z?{width:x,height:y}:null,J=z?{"--active-tab-left":`${t}px`,"--active-tab-right":`${u}px`,"--active-tab-top":`${v}px`,"--active-tab-bottom":`${w}px`,"--active-tab-width":`${x}px`,"--active-tab-height":`${y}px`}:void 0,M=z&&x>0&&y>0,N=(0,h.useRenderElement)("span",a,{state:{orientation:n,activeTabPosition:B,activeTabSize:C,tabActivationDirection:o},ref:e,props:[{role:"presentation",style:J,hidden:!M},k,{suppressHydrationWarning:!0}],stateAttributesMapping:I});return null==p?null:(0,c.jsxs)(d.Fragment,{children:[N,i&&(b||(b=(0,c.jsx)(F.PrehydrationScript,{script:'!function(){const t=document.currentScript.previousElementSibling;if(!t)return;const e=t.closest(\'[role="tablist"]\');if(!e)return;const n=e.querySelector("[data-active]");if(!n)return;const o=getComputedStyle(n);if("none"!==o.transform||"none"!==o.translate||"none"!==o.rotate||"none"!==o.scale)return;function r(t){let e=0,n=0,o=t;for(;null!=o;){e+=o.offsetLeft,n+=o.offsetTop;const t=o.offsetParent;null!=t&&(e+=t.clientLeft,n+=t.clientTop),o=t}return{left:e,top:n}}function i(){const{width:o,height:i}=function(t){const e=getComputedStyle(t);let n=parseFloat(e.width)||0,o=parseFloat(e.height)||0;return(Math.round(n)!==t.offsetWidth||Math.round(o)!==t.offsetHeight)&&(n=t.offsetWidth,o=t.offsetHeight),{width:n,height:o}}(n),l=function(t,e){const n=r(t),o=r(e);let i=n.left-o.left-e.clientLeft,l=n.top-o.top-e.clientTop,s=t.parentElement;for(;null!=s&&s!==e;)i-=s.scrollLeft,l-=s.scrollTop,s=s.parentElement;return{left:i,top:l}}(n,e),s=Math.min(l.left,e.scrollWidth-o),f=Math.min(l.top,e.scrollHeight-i),c=e.scrollWidth-s-o,u=e.scrollHeight-f-i;function h(e,n){t.style.setProperty(`--active-tab-${e}`,`${n}px`)}return h("left",s),h("right",c),h("top",f),h("bottom",u),h("width",o),h("height",i),o>0&&i>0&&(t.removeAttribute("hidden"),!0)}if(i()||"undefined"==typeof ResizeObserver)return;let l,s;function f(){s.disconnect(),clearTimeout(l)}s=new ResizeObserver(()=>{t.isConnected&&t.hasAttribute("hidden")&&n.hasAttribute("data-active")?i()&&f():f()}),s.observe(n),l=setTimeout(f,1e4)}();'})))]})});function K(a){let b=0,c=0,d=a;for(;null!=d;){b+=d.offsetLeft,c+=d.offsetTop;let a=d.offsetParent;null!=a&&(b+=a.clientLeft,c+=a.clientTop),d=a}return{left:b,top:c}}function L(a,b){if(!a)return 0;let c=parseFloat(a);return Number.isFinite(c)?a.endsWith("%")?c/100*b:c:0}var M=a.i(3991),N=a.i(49585),O=a.i(8221),P=a.i(2082),Q=a.i(51639);Q.TransitionStatusDataAttributes.startingStyle,Q.TransitionStatusDataAttributes.endingStyle;let R={...m,...N.transitionStatusMapping},S=d.forwardRef(function(a,b){let{className:c,value:e,render:g,keepMounted:i=!1,style:j,...k}=a,{value:m,getTabIdByPanelValue:n,orientation:o,tabActivationDirection:p,registerMountedTabPanel:q}=l(),r=(0,t.useBaseUiId)(),{ref:s,index:u}=(0,y.useCompositeListItem)(),v=e===m,{mounted:w,transitionStatus:x,setMounted:z}=(0,P.useTransitionStatus)(v),A=!w,B=n(e),C=d.useRef(null),D=(0,h.useRenderElement)("div",a,{state:{hidden:A,orientation:o,tabActivationDirection:p,transitionStatus:x},ref:[b,s,C],props:[{"aria-labelledby":B,hidden:A,id:r,role:"tabpanel",tabIndex:v?0:-1,inert:(0,M.inertValue)(!v),"data-index":u},k],stateAttributesMapping:R});return((0,O.useOpenChangeComplete)({open:v,ref:C,onComplete(){v||z(!1)}}),(0,f.useIsoLayoutEffect)(()=>{if(null!=r&&(!A||i))return q(e,r)},[A,i,e,r,q]),i||w)?D:null});var T=a.i(65807),U=a.i(54450),V=a.i(40165),W=a.i(51723);function X(a){let{render:b,className:e,style:j,refs:k=T.EMPTY_ARRAY,props:l=T.EMPTY_ARRAY,state:m=T.EMPTY_OBJECT,stateAttributesMapping:n,highlightedIndex:o,onHighlightedIndexChange:p,orientation:q,grid:r,loopFocus:s,onLoop:t,enableHomeAndEndKeys:u,onMapChange:y,stopEventPropagation:z=!0,rootRef:A,disabledIndices:C,modifierKeys:D,highlightItemOnHover:E=!1,tag:F="div",...G}=a,{props:H,highlightedIndex:I,onHighlightedIndexChange:J,elementsRef:K,onMapChange:L,relayKeyboardEvent:M}=function(a){let{loopFocus:b=!0,orientation:c="both",grid:e,onLoop:h,direction:i,highlightedIndex:j,onHighlightedIndexChange:k,rootRef:l,enableHomeAndEndKeys:m=!1,stopEventPropagation:n,disabledIndices:o,modifierKeys:p=T.EMPTY_ARRAY}=a,[q,r]=d.useState(0),s=null!=e,t=d.useRef(null),u=(0,w.useMergedRefs)(t,l),x=d.useRef([]),y=d.useRef(!1),z=d.useRef(null),A=j??q,C=(0,g.useStableCallback)((a,b=!1)=>{if(z.current=x.current[a]??null,(k??r)(a),b){let b=x.current[a];(0,U.scrollIntoViewIfNeeded)(t.current,b,i,c)}}),D=(0,g.useStableCallback)(a=>{if(0===a.size)return;if(y.current){let a=x.current,b=a.indexOf(z.current);if(-1===b){let b=a[A];!b||(0,V.isListIndexDisabled)(a,A,o)?C(function(a,b){let c=-1;for(let d=0;d<a.length;d+=1){let e=a[d];if(!(!e||(0,V.isListIndexDisabled)(a,d,b))){if(e.hasAttribute(v))return d;-1===c&&(c=d)}}return Math.max(c,0)}(a,o)):z.current=b}else b!==A&&C(b);return}y.current=!0;let b=Array.from(a.keys()),d=b.find(a=>a?.hasAttribute(v))??null,e=d?a.get(d)?.index??-1:-1;if(-1!==e)C(e);else if((0,V.isListIndexDisabled)(b,A,o)){let a=(0,V.findNonDisabledListIndex)(b,{disabledIndices:o});(0,V.isIndexOutOfListBounds)(b,a)||C(a)}(0,U.scrollIntoViewIfNeeded)(t.current,d,i,c)});(0,f.useIsoLayoutEffect)(()=>{if(null==o||null!=j||!y.current)return;let a=x.current;if((0,V.isListIndexDisabled)(a,A,o)){let b=(0,V.findNonDisabledListIndex)(a,{disabledIndices:o});(0,V.isIndexOutOfListBounds)(a,b)||C(b)}},[o,j,A,x,C]);let E=(0,g.useStableCallback)((a,b,c)=>h?h(a,b,c,x):c),F=(0,g.useStableCallback)(a=>{let d=a.key===U.HOME||a.key===U.END;if(!U.COMPOSITE_KEYS.has(a.key)||!m&&d||function(a,b){for(let c of U.MODIFIER_KEYS)if(!b.includes(c)&&a.getModifierState(c))return!0;return!1}(a,p)||!t.current)return;let f="rtl"===i,g=f?U.ARROW_LEFT:U.ARROW_RIGHT,j=f?U.ARROW_RIGHT:U.ARROW_LEFT,k="vertical"===c?U.ARROW_DOWN:g,l="vertical"===c?U.ARROW_UP:j,q=(0,B.getTarget)(a.nativeEvent);if(null!=q&&(0,U.isNativeInput)(q)&&!(null==q||q.hasAttribute("disabled")||"true"===q.getAttribute("aria-disabled"))){let b=q.selectionStart,c=q.selectionEnd,d=q.value;if(null==b||a.shiftKey||b!==c||a.key!==l&&b<d.length||a.key!==k&&b>0)return}let r=A,u=(0,V.getMinListIndex)(x,o),v=(0,V.getMaxListIndex)(x,o);null!=e&&(r=e({disabledIndices:o,elementsRef:x,event:a,highlightedIndex:A,loopFocus:b,maxIndex:v,minIndex:u,onLoop:E,orientation:c,rtl:f}));let w="vertical"!==c&&a.key===g||"horizontal"!==c&&a.key===U.ARROW_DOWN,y="vertical"!==c&&a.key===j||"horizontal"!==c&&a.key===U.ARROW_UP;m&&(a.key===U.HOME?r=u:a.key===U.END&&(r=v)),r===A&&(w||y)&&(b&&r===v&&w?(r=u,h&&(r=h(a,A,r,x))):b&&r===u&&y?(r=v,h&&(r=h(a,A,r,x))):r=(0,V.findNonDisabledListIndex)(x.current,{startingIndex:r,decrement:y,disabledIndices:o})),r===A||(0,V.isIndexOutOfListBounds)(x.current,r)||(n&&a.stopPropagation(),(s||d||w||y)&&a.preventDefault(),C(r,!0),queueMicrotask(()=>{x.current[r]?.focus()}))});return{props:{ref:u,onFocus(a){let b=t.current,c=(0,B.getTarget)(a.nativeEvent);b&&null!=c&&(0,U.isNativeInput)(c)&&c.setSelectionRange(0,c.value.length)},onKeyDown:F},highlightedIndex:A,onHighlightedIndexChange:C,elementsRef:x,onMapChange:D,relayKeyboardEvent:F}}({grid:r,loopFocus:s,onLoop:t,orientation:q,highlightedIndex:o,onHighlightedIndexChange:p,rootRef:A,stopEventPropagation:z,enableHomeAndEndKeys:u,direction:(0,W.useDirection)(),disabledIndices:C,modifierKeys:D}),N=(0,h.useRenderElement)(F,a,{state:m,ref:k,props:[H,...l,G],stateAttributesMapping:n}),O=d.useMemo(()=>({highlightedIndex:I,onHighlightedIndexChange:J,highlightItemOnHover:E,relayKeyboardEvent:M}),[I,J,E,M]);return(0,c.jsx)(x.CompositeRootContext.Provider,{value:O,children:(0,c.jsx)(i.CompositeList,{elementsRef:K,onMapChange:a=>{y?.(a),L(a)},children:N})})}let Y=d.forwardRef(function(a,b){let{activateOnFocus:e=!1,className:h,loopFocus:i=!0,render:j,style:k,...n}=a,{orientation:o,setTabMap:p,tabActivationDirection:q}=l(),[r,s]=d.useState(0),[t,u]=d.useState(null),v=d.useRef(new Set),w=d.useRef(new Set),x=d.useRef(null);(0,f.useIsoLayoutEffect)(()=>{if("u"<typeof ResizeObserver)return;let a=new ResizeObserver(()=>{v.current.forEach(a=>{a()})});return x.current=a,t&&a.observe(t),w.current.forEach(b=>{a.observe(b)}),()=>{a.disconnect(),x.current=null}},[t]);let y=(0,g.useStableCallback)(a=>(v.current.add(a),()=>{v.current.delete(a)})),A=(0,g.useStableCallback)(a=>(w.current.add(a),x.current?.observe(a),()=>{w.current.delete(a),x.current?.unobserve(a)})),B=d.useMemo(()=>({activateOnFocus:e,registerIndicatorUpdateListener:y,registerTabResizeObserverElement:A,tabsListElement:t}),[e,y,A,t]);return(0,c.jsx)(z.Provider,{value:B,children:(0,c.jsx)(X,{render:j,className:h,style:k,state:{orientation:o,tabActivationDirection:q},refs:[b,u],props:[{"aria-orientation":"vertical"===o?"vertical":void 0,role:"tablist"},n],stateAttributesMapping:m,highlightedIndex:r,enableHomeAndEndKeys:!0,loopFocus:i,orientation:o,onHighlightedIndexChange:s,onMapChange:p,disabledIndices:T.EMPTY_ARRAY})})});a.s(["Indicator",0,J,"List",0,Y,"Panel",0,S,"Root",0,p,"Tab",0,C],21158);var Z=a.i(21158),Z=Z,$=a.i(42261),_=a.i(85198);let aa=(0,$.cva)("group/tabs-list inline-flex w-fit items-center justify-center rounded-lg p-[3px] text-muted-foreground group-data-horizontal/tabs:h-8 group-data-vertical/tabs:h-fit group-data-vertical/tabs:flex-col data-[variant=line]:rounded-none",{variants:{variant:{default:"bg-muted",line:"gap-1 bg-transparent"}},defaultVariants:{variant:"default"}});a.s(["Tabs",0,function({className:a,orientation:b="horizontal",...d}){return(0,c.jsx)(Z.Root,{"data-slot":"tabs","data-orientation":b,className:(0,_.cn)("group/tabs flex gap-2 data-horizontal:flex-col",a),...d})},"TabsContent",0,function({className:a,...b}){return(0,c.jsx)(Z.Panel,{"data-slot":"tabs-content",className:(0,_.cn)("flex-1 text-sm outline-none",a),...b})},"TabsList",0,function({className:a,variant:b="default",...d}){return(0,c.jsx)(Z.List,{"data-slot":"tabs-list","data-variant":b,className:(0,_.cn)(aa({variant:b}),a),...d})},"TabsTrigger",0,function({className:a,...b}){return(0,c.jsx)(Z.Tab,{"data-slot":"tabs-trigger",className:(0,_.cn)("relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-1.5 py-0.5 text-sm font-medium whitespace-nowrap text-foreground/60 transition-all group-data-vertical/tabs:w-full group-data-vertical/tabs:justify-start hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1 aria-disabled:pointer-events-none aria-disabled:opacity-50 dark:text-muted-foreground dark:hover:text-foreground group-data-[variant=default]/tabs-list:data-active:shadow-sm group-data-[variant=line]/tabs-list:data-active:shadow-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4","group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-active:bg-transparent dark:group-data-[variant=line]/tabs-list:data-active:border-transparent dark:group-data-[variant=line]/tabs-list:data-active:bg-transparent","data-active:bg-background data-active:text-foreground dark:data-active:border-input dark:data-active:bg-input/30 dark:data-active:text-foreground","after:absolute after:bg-foreground after:opacity-0 after:transition-opacity group-data-horizontal/tabs:after:inset-x-0 group-data-horizontal/tabs:after:bottom-[-5px] group-data-horizontal/tabs:after:h-0.5 group-data-vertical/tabs:after:inset-y-0 group-data-vertical/tabs:after:-right-1 group-data-vertical/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-active:after:opacity-100",a),...b})},"tabsListVariants",0,aa],21958)},56458,43353,22575,68298,a=>{"use strict";var b=a.i(75086),c=a.i(34937),d=a.i(35537),e=a.i(58153);let f=b.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},nextIndexRef:{current:0}});var g=a.i(47350);function h(){return new Map}function i(){return new Set}function j(a,b){return a.compareDocumentPosition(b)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1}a.s(["CompositeList",0,function(a){let{children:k,elementsRef:l,labelsRef:m,onMapChange:n}=a,o=(0,d.useStableCallback)(n),[,p]=b.useState(!1),q=(0,c.useRefWithInit)(i).current,r=(0,c.useRefWithInit)(h).current,s=b.useRef(0),t=b.useRef(!0),u=b.useRef(null),v=b.useRef(null),w=(0,d.useStableCallback)(()=>{t.current||(t.current=!0,p(a=>!a))}),x=(0,d.useStableCallback)((a,b)=>{r.set(a,b),w()}),y=(0,d.useStableCallback)(a=>{r.delete(a),w()}),z=(0,d.useStableCallback)(a=>{let b=new Map;return l.current.length=0,m&&(m.current.length=0),a.forEach(a=>{b.set(a.element,{...a.registration.metadata??{},index:a.index}),l.current[a.index]=a.element,m&&(m.current[a.index]=void 0!==a.registration.label?a.registration.label:a.registration.textRef?.current?.textContent??a.element.textContent)}),s.current=l.current.length,b}),A=(0,d.useStableCallback)(()=>{var a;let b,c,d,e,[f,g]=(a=r,b=new Set,c=[],d=[],a.forEach((a,e)=>{if(!e.isConnected)return;let f=a.index,g={index:f??-1,element:e,registration:a};null===f?d.push(g):f>=0&&(b.add(f),c.push(g))}),e=0,d.sort((a,b)=>j(a.element,b.element)),d.forEach(a=>{for(;b.has(e);)e+=1;a.index=e,c.push(a),e+=1}),b.size>0&&c.sort((a,b)=>a.index-b.index),[c,d.map(a=>a.element)]),h=z(f),i=u.current,k=!i||i.length!==f.length||f.some((a,b)=>{let c=i[b];return a.index!==c.index||a.element!==c.element||a.registration.index!==c.registration.index||a.registration.metadata!==c.registration.metadata});!function(a){if(v.current?.disconnect(),v.current=null,"function"!=typeof MutationObserver||a.length<2)return;let b=new MutationObserver(c=>{if(!function(a){for(let b of a)for(let a=0;a<b.removedNodes.length;a+=1)if(b.removedNodes[a].isConnected)return!0;return!1}(c))return;let d=null;for(let c of a)if(c.isConnected){if(d&&j(d,c)>0){b.disconnect(),w();return}d=c}});v.current=b;let c=new Set;for(let b=1;b<a.length;b+=1){let d=function(a,b){let c=a.parentElement;for(;c&&!c.contains(b);)c=c.parentElement;return c}(a[b-1],a[b]);d&&c.add(d)}c.forEach(a=>b.observe(a,{childList:!0}))}(g),u.current=f,t.current=!1,k&&(q.forEach(a=>a(h)),o(h))});(0,e.useIsoLayoutEffect)(()=>(!t.current&&u.current&&z(u.current),()=>{l.current=[],m&&(m.current=[])}),[l,m,z]),(0,e.useIsoLayoutEffect)(()=>{t.current&&A()}),(0,e.useIsoLayoutEffect)(()=>()=>{v.current?.disconnect(),t.current=!0},[]);let B=(0,d.useStableCallback)(a=>(q.add(a),()=>{q.delete(a)})),C=b.useMemo(()=>({register:x,unregister:y,subscribeMapChange:B,nextIndexRef:s}),[x,y,B,s]);return(0,g.jsx)(f.Provider,{value:C,children:k})}],56458),a.s(["useCompositeListItem",0,function(a={}){let{guess:c,label:d,metadata:g,textRef:h,index:i}=a,{register:j,unregister:k,subscribeMapChange:l,nextIndexRef:m}=b.useContext(f),n=b.useRef(-1),[o,p]=b.useState(null==i&&c?()=>{if(-1===n.current){let a=m.current;m.current+=1,n.current=a}return n.current}:-1),q=i??o,r=b.useRef(null),s=b.useCallback(a=>{let b=r.current;b&&k(b),r.current=a,a&&j(a,{metadata:g??null,index:i??null,label:d,textRef:h})},[i,j,k,g,d,h]);return(0,e.useIsoLayoutEffect)(()=>{if(null==i)return l(a=>{let b=r.current?a.get(r.current)?.index:null;null!=b&&p(b)})},[i,l]),{ref:s,index:q}}],43353);var k=a.i(30582),l=a.i(65807);function m(){return l.NOOP}function n(){return!1}function o(){return!0}function p(){return(0,k.useSyncExternalStore)(m,n,o)}a.s(["useIsHydrating",0,p],22575);let q=b.createContext(void 0),r={disableStyleElements:!1};a.s(["PrehydrationScript",0,function(a){let{script:c}=a,{nonce:d}=b.useContext(q)??r;return p()?(0,g.jsx)("script",{nonce:d,dangerouslySetInnerHTML:{__html:c},suppressHydrationWarning:!0}):null}],68298)}];
@@ -1,3 +1,3 @@
1
- module.exports=[40602,a=>{"use strict";a.s(["ExportSettings",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call ExportSettings() from the server but ExportSettings is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/Settings/ExportSettings.tsx","ExportSettings")},61057,a=>{"use strict";var b=a.i(40602);a.n(b)},46280,a=>{"use strict";a.s(["NotificationPrefs",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call NotificationPrefs() from the server but NotificationPrefs is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/Settings/NotificationPrefs.tsx","NotificationPrefs")},62807,a=>{"use strict";var b=a.i(46280);a.n(b)},44063,a=>{"use strict";a.s(["TeamMembers",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call TeamMembers() from the server but TeamMembers is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/Settings/TeamMembers.tsx","TeamMembers")},40321,a=>{"use strict";var b=a.i(44063);a.n(b)},72017,a=>{"use strict";var b=a.i(91396);a.i(90103);var c=a.i(24084),d=a.i(97728);a.i(59682);var e=a.i(22381),f=a.i(96690),g=a.i(78720),h=a.i(29171),i=a.i(43917),j=a.i(7969);let k={name:"key",size:24,node:[["path",{d:"m2 21 9.6-9.6",key:"9l79m3"}],["path",{d:"m7.5 15.5 2.3 2.3a1 1 0 0 1 0 1.4l-2.1 2.1a1 1 0 0 1-1.4 0L4 19",key:"fw8biw"}],["circle",{cx:"15.5",cy:"7.5",r:"5.5",key:"4wxmhb"}]]};k.node;let l=(0,j.default)(k);function m(){return(0,b.jsxs)(h.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md",children:[(0,b.jsxs)(h.CardHeader,{children:[(0,b.jsxs)(h.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight flex items-center gap-2",children:[(0,b.jsx)(l,{className:"h-5 w-5 text-gray-400"}),"API Keys"]}),(0,b.jsx)(h.CardDescription,{className:"text-sm text-gray-400",children:"Your New Relic and Sentry keys are stored in .env.local on this machine and are never shown here."})]}),(0,b.jsx)(h.CardContent,{children:(0,b.jsx)(g.default,{href:"/setup",className:(0,i.buttonVariants)({variant:"outline"}),children:"Manage keys"})})]})}a.s(["ApiKeys",0,m],81327);var n=a.i(61057),o=a.i(86645),p=a.i(62807),q=a.i(40321);a.s([],34144),a.i(34144),a.i(81327),a.s([],72841,!0),a.j(n,72841),a.j(o,72841),a.j(p,72841),a.j(q,72841);var r=a.i(72841);a.s(["default",0,function(){return(0,b.jsxs)(d.SidebarProvider,{children:[(0,b.jsx)(c.AppSidebar,{}),(0,b.jsxs)(d.SidebarInset,{className:"bg-dash-surface",children:[(0,b.jsx)(e.Header,{}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col p-6 md:p-8 max-w-[1200px] mx-auto w-full",children:[(0,b.jsxs)("div",{className:"mb-8",children:[(0,b.jsx)("h1",{className:"title-enter text-2xl font-bold text-white tracking-tight",children:"Settings"}),(0,b.jsx)("p",{className:"text-sm text-gray-400",children:"Manage your account, team, and dashboard preferences."})]}),(0,b.jsxs)(f.Tabs,{defaultValue:"general",className:"w-full",children:[(0,b.jsxs)(f.TabsList,{className:"bg-[#0f1419] border border-[#2d3748] mb-8 p-1 h-auto",children:[(0,b.jsx)(f.TabsTrigger,{value:"general",className:"data-[state=active]:bg-[#1a202c] data-[state=active]:text-white text-gray-400",children:"General & API"}),(0,b.jsx)(f.TabsTrigger,{value:"thresholds",className:"data-[state=active]:bg-[#1a202c] data-[state=active]:text-white text-gray-400",children:"Performance Thresholds"}),(0,b.jsx)(f.TabsTrigger,{value:"team",className:"data-[state=active]:bg-[#1a202c] data-[state=active]:text-white text-gray-400",children:"Notifications & Team"})]}),(0,b.jsxs)(f.TabsContent,{value:"general",className:"space-y-6 mt-0",children:[(0,b.jsx)(m,{}),(0,b.jsx)(r.ExportSettings,{})]}),(0,b.jsx)(f.TabsContent,{value:"thresholds",className:"mt-0",children:(0,b.jsx)(r.ThresholdSettings,{})}),(0,b.jsx)(f.TabsContent,{value:"team",className:"space-y-6 mt-0",children:(0,b.jsx)(r.NotificationPrefs,{})})]})]})]})]})}],72017)},51425,function(a){a.n(a.i(72017))},90336,a=>{"use strict";a.s(["ThresholdSettings",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call ThresholdSettings() from the server but ThresholdSettings is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/Settings/ThresholdSettings.tsx","ThresholdSettings")},86645,a=>{"use strict";var b=a.i(90336);a.n(b)},43917,a=>{"use strict";let b,c;var d=a.i(91396),e=a.i(38182);let f=a=>"boolean"==typeof a?`${a}`:0===a?"0":a,g=function(){for(var a,b,c=0,d="",e=arguments.length;c<e;c++)(a=arguments[c])&&(b=function a(b){var c,d,e="";if("string"==typeof b||"number"==typeof b)e+=b;else if("object"==typeof b)if(Array.isArray(b)){var f=b.length;for(c=0;c<f;c++)b[c]&&(d=a(b[c]))&&(e&&(e+=" "),e+=d)}else for(d in b)b[d]&&(e&&(e+=" "),e+=d);return e}(a))&&(d&&(d+=" "),d+=b);return d};var h=a.i(67913);let i=(b="group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",c={variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/80",outline:"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}},a=>{var d;if((null==c?void 0:c.variants)==null)return g(b,null==a?void 0:a.class,null==a?void 0:a.className);let{variants:e,defaultVariants:h}=c,i=Object.keys(e).map(b=>{let c=null==a?void 0:a[b],d=null==h?void 0:h[b];if(null===c)return null;let g=f(c)||f(d);return e[b][g]}),j=a&&Object.entries(a).reduce((a,b)=>{let[c,d]=b;return void 0===d||(a[c]=d),a},{});return g(b,i,null==c||null==(d=c.compoundVariants)?void 0:d.reduce((a,b)=>{let{class:c,className:d,...e}=b;return Object.entries(e).every(a=>{let[b,c]=a;return Array.isArray(c)?c.includes({...h,...j}[b]):({...h,...j})[b]===c})?[...a,c,d]:a},[]),null==a?void 0:a.class,null==a?void 0:a.className)});a.s(["Button",0,function({className:a,variant:b="default",size:c="default",...f}){return(0,d.jsx)(e.Button,{"data-slot":"button",className:(0,h.cn)(i({variant:b,size:c,className:a})),...f})},"buttonVariants",0,i],43917)},45362,a=>{"use strict";a.s(["Tabs",()=>c,"TabsContent",()=>d,"TabsList",()=>e,"TabsTrigger",()=>f,"tabsListVariants",()=>g]);var b=a.i(18060);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call Tabs() from the server but Tabs is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ui/tabs.tsx","Tabs"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call TabsContent() from the server but TabsContent is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ui/tabs.tsx","TabsContent"),e=(0,b.registerClientReference)(function(){throw Error("Attempted to call TabsList() from the server but TabsList is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ui/tabs.tsx","TabsList"),f=(0,b.registerClientReference)(function(){throw Error("Attempted to call TabsTrigger() from the server but TabsTrigger is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ui/tabs.tsx","TabsTrigger"),g=(0,b.registerClientReference)(function(){throw Error("Attempted to call tabsListVariants() from the server but tabsListVariants is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ui/tabs.tsx","tabsListVariants")},96690,a=>{"use strict";var b=a.i(45362);a.n(b)},45603,a=>{"use strict";a.s(["Button",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call Button() from the server but Button is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/@base-ui+react@1.8.0_@types+react@19.3.0_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@base-ui/react/button/Button.mjs","Button")},38182,a=>{"use strict";var b=a.i(45603);a.n(b)},25809,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},33951,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs","default")},50254,a=>{"use strict";var b=a.i(33951);a.n(b)},7969,a=>{"use strict";var b=a.i(56149),c=a.i(50254);a.s(["default",0,function(a,d=[],e=[]){let f,g="string"==typeof a?function(a,b,c=[]){if(null==b)throw Error("[lucide]: iconNode is required when icon name is used");return{name:a?.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),size:24,node:b,...c.length>0?{aliases:c}:{}}}(a,d,e):a,h=(0,b.forwardRef)(({className:a,...d},e)=>(0,b.createElement)(c.default,{ref:e,icon:g,className:a,...d}));return g.name&&(h.displayName=(f=(a=>{let b="",c=!1;for(let d of a){if("-"===d||"_"===d||d<=" "){c=b.length>0;continue}0===b.length?b+=d.toLowerCase():b+=c?d.toUpperCase():d,c=!1}return b})(g.name)).charAt(0).toUpperCase()+f.slice(1)),h}],7969)},40950,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(18060);a.n(d("[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/app-dir/link.js"))},53824,a=>{"use strict";var b=a.i(40950);a.n(b)},78720,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={default:function(){return i},useLinkStatus:function(){return h.useLinkStatus}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(25809),g=a.r(91396),h=f._(a.r(53824));function i(a){let b=a.legacyBehavior,c="string"==typeof a.children||"number"==typeof a.children||"string"==typeof a.children?.type,d=a.children?.type?.$$typeof===Symbol.for("react.client.reference");return!b||c||d||(a.children?.type?.$$typeof===Symbol.for("react.lazy")?console.error("Using a Lazy Component as a direct child of `<Link legacyBehavior>` from a Server Component is not supported. If you need legacyBehavior, wrap your Lazy Component in a Client Component that renders the Link's `<a>` tag."):console.error("Using a Server Component as a direct child of `<Link legacyBehavior>` is not supported. If you need legacyBehavior, wrap your Server Component in a Client Component that renders the Link's `<a>` tag.")),(0,g.jsx)(h.default,{...a})}("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)}];
1
+ module.exports=[40602,a=>{"use strict";a.s(["ExportSettings",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call ExportSettings() from the server but ExportSettings is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/Settings/ExportSettings.tsx","ExportSettings")},61057,a=>{"use strict";var b=a.i(40602);a.n(b)},46280,a=>{"use strict";a.s(["NotificationPrefs",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call NotificationPrefs() from the server but NotificationPrefs is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/Settings/NotificationPrefs.tsx","NotificationPrefs")},62807,a=>{"use strict";var b=a.i(46280);a.n(b)},44063,a=>{"use strict";a.s(["TeamMembers",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call TeamMembers() from the server but TeamMembers is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/Settings/TeamMembers.tsx","TeamMembers")},40321,a=>{"use strict";var b=a.i(44063);a.n(b)},72017,a=>{"use strict";var b=a.i(91396);a.i(90103);var c=a.i(24084),d=a.i(97728);a.i(59682);var e=a.i(22381),f=a.i(96690),g=a.i(78720),h=a.i(29171),i=a.i(43917),j=a.i(7969);let k={name:"key",size:24,node:[["path",{d:"m2 21 9.6-9.6",key:"9l79m3"}],["path",{d:"m7.5 15.5 2.3 2.3a1 1 0 0 1 0 1.4l-2.1 2.1a1 1 0 0 1-1.4 0L4 19",key:"fw8biw"}],["circle",{cx:"15.5",cy:"7.5",r:"5.5",key:"4wxmhb"}]]};k.node;let l=(0,j.default)(k);function m(){return(0,b.jsxs)(h.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md",children:[(0,b.jsxs)(h.CardHeader,{children:[(0,b.jsxs)(h.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight flex items-center gap-2",children:[(0,b.jsx)(l,{className:"h-5 w-5 text-gray-400"}),"API Keys"]}),(0,b.jsx)(h.CardDescription,{className:"text-sm text-gray-400",children:"Your New Relic and Sentry keys are stored in .env.local on this machine and are never shown here."})]}),(0,b.jsx)(h.CardContent,{children:(0,b.jsx)(g.default,{href:"/setup",className:(0,i.buttonVariants)({variant:"outline"}),children:"Manage keys"})})]})}a.s(["ApiKeys",0,m],81327);var n=a.i(61057),o=a.i(86645),p=a.i(62807),q=a.i(40321);a.s([],34144),a.i(34144),a.i(81327),a.s([],72841,!0),a.j(n,72841),a.j(o,72841),a.j(p,72841),a.j(q,72841);var r=a.i(72841);let s=["general","thresholds","team"];async function t({searchParams:a}){let{tab:g}=await a,h="string"==typeof g&&s.includes(g)?g:"general";return(0,b.jsxs)(d.SidebarProvider,{children:[(0,b.jsx)(c.AppSidebar,{}),(0,b.jsxs)(d.SidebarInset,{className:"bg-dash-surface",children:[(0,b.jsx)(e.Header,{}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col p-6 md:p-8 max-w-[1200px] mx-auto w-full",children:[(0,b.jsxs)("div",{className:"mb-8",children:[(0,b.jsx)("h1",{className:"title-enter text-2xl font-bold text-white tracking-tight",children:"Settings"}),(0,b.jsx)("p",{className:"text-sm text-gray-400",children:"Manage your account, team, and dashboard preferences."})]}),(0,b.jsxs)(f.Tabs,{defaultValue:h,className:"w-full",children:[(0,b.jsxs)(f.TabsList,{className:"bg-[#0f1419] border border-[#2d3748] mb-8 p-1 h-auto",children:[(0,b.jsx)(f.TabsTrigger,{value:"general",className:"data-[state=active]:bg-[#1a202c] data-[state=active]:text-white text-gray-400",children:"General & API"}),(0,b.jsx)(f.TabsTrigger,{value:"thresholds",className:"data-[state=active]:bg-[#1a202c] data-[state=active]:text-white text-gray-400",children:"Performance Thresholds"}),(0,b.jsx)(f.TabsTrigger,{value:"team",className:"data-[state=active]:bg-[#1a202c] data-[state=active]:text-white text-gray-400",children:"Notifications & Team"})]}),(0,b.jsxs)(f.TabsContent,{value:"general",className:"space-y-6 mt-0",children:[(0,b.jsx)(m,{}),(0,b.jsx)(r.ExportSettings,{})]}),(0,b.jsx)(f.TabsContent,{value:"thresholds",className:"mt-0",children:(0,b.jsx)(r.ThresholdSettings,{})}),(0,b.jsx)(f.TabsContent,{value:"team",className:"space-y-6 mt-0",children:(0,b.jsx)(r.NotificationPrefs,{})})]})]})]})]})}a.s(["default",0,t],72017)},51425,function(a){a.n(a.i(72017))},90336,a=>{"use strict";a.s(["ThresholdSettings",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call ThresholdSettings() from the server but ThresholdSettings is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/Settings/ThresholdSettings.tsx","ThresholdSettings")},86645,a=>{"use strict";var b=a.i(90336);a.n(b)},43917,a=>{"use strict";let b,c;var d=a.i(91396),e=a.i(38182);let f=a=>"boolean"==typeof a?`${a}`:0===a?"0":a,g=function(){for(var a,b,c=0,d="",e=arguments.length;c<e;c++)(a=arguments[c])&&(b=function a(b){var c,d,e="";if("string"==typeof b||"number"==typeof b)e+=b;else if("object"==typeof b)if(Array.isArray(b)){var f=b.length;for(c=0;c<f;c++)b[c]&&(d=a(b[c]))&&(e&&(e+=" "),e+=d)}else for(d in b)b[d]&&(e&&(e+=" "),e+=d);return e}(a))&&(d&&(d+=" "),d+=b);return d};var h=a.i(67913);let i=(b="group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",c={variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/80",outline:"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}},a=>{var d;if((null==c?void 0:c.variants)==null)return g(b,null==a?void 0:a.class,null==a?void 0:a.className);let{variants:e,defaultVariants:h}=c,i=Object.keys(e).map(b=>{let c=null==a?void 0:a[b],d=null==h?void 0:h[b];if(null===c)return null;let g=f(c)||f(d);return e[b][g]}),j=a&&Object.entries(a).reduce((a,b)=>{let[c,d]=b;return void 0===d||(a[c]=d),a},{});return g(b,i,null==c||null==(d=c.compoundVariants)?void 0:d.reduce((a,b)=>{let{class:c,className:d,...e}=b;return Object.entries(e).every(a=>{let[b,c]=a;return Array.isArray(c)?c.includes({...h,...j}[b]):({...h,...j})[b]===c})?[...a,c,d]:a},[]),null==a?void 0:a.class,null==a?void 0:a.className)});a.s(["Button",0,function({className:a,variant:b="default",size:c="default",...f}){return(0,d.jsx)(e.Button,{"data-slot":"button",className:(0,h.cn)(i({variant:b,size:c,className:a})),...f})},"buttonVariants",0,i],43917)},45362,a=>{"use strict";a.s(["Tabs",()=>c,"TabsContent",()=>d,"TabsList",()=>e,"TabsTrigger",()=>f,"tabsListVariants",()=>g]);var b=a.i(18060);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call Tabs() from the server but Tabs is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ui/tabs.tsx","Tabs"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call TabsContent() from the server but TabsContent is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ui/tabs.tsx","TabsContent"),e=(0,b.registerClientReference)(function(){throw Error("Attempted to call TabsList() from the server but TabsList is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ui/tabs.tsx","TabsList"),f=(0,b.registerClientReference)(function(){throw Error("Attempted to call TabsTrigger() from the server but TabsTrigger is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ui/tabs.tsx","TabsTrigger"),g=(0,b.registerClientReference)(function(){throw Error("Attempted to call tabsListVariants() from the server but tabsListVariants is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/components/ui/tabs.tsx","tabsListVariants")},96690,a=>{"use strict";var b=a.i(45362);a.n(b)},45603,a=>{"use strict";a.s(["Button",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call Button() from the server but Button is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/@base-ui+react@1.8.0_@types+react@19.3.0_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@base-ui/react/button/Button.mjs","Button")},38182,a=>{"use strict";var b=a.i(45603);a.n(b)},25809,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},33951,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(18060).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/lucide-react@1.47.0_react@19.2.8/node_modules/lucide-react/dist/esm/Icon.mjs","default")},50254,a=>{"use strict";var b=a.i(33951);a.n(b)},7969,a=>{"use strict";var b=a.i(56149),c=a.i(50254);a.s(["default",0,function(a,d=[],e=[]){let f,g="string"==typeof a?function(a,b,c=[]){if(null==b)throw Error("[lucide]: iconNode is required when icon name is used");return{name:a?.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),size:24,node:b,...c.length>0?{aliases:c}:{}}}(a,d,e):a,h=(0,b.forwardRef)(({className:a,...d},e)=>(0,b.createElement)(c.default,{ref:e,icon:g,className:a,...d}));return g.name&&(h.displayName=(f=(a=>{let b="",c=!1;for(let d of a){if("-"===d||"_"===d||d<=" "){c=b.length>0;continue}0===b.length?b+=d.toLowerCase():b+=c?d.toUpperCase():d,c=!1}return b})(g.name)).charAt(0).toUpperCase()+f.slice(1)),h}],7969)},40950,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(18060);a.n(d("[project]/node_modules/.pnpm/next@16.3.8_@babel+core@7.29.7_supports-color@8.1.1__@opentelemetry+api@1.9.1_@types+no_c2c791d25241ae4161c9f48ecf186c77/node_modules/next/dist/client/app-dir/link.js"))},53824,a=>{"use strict";var b=a.i(40950);a.n(b)},78720,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={default:function(){return i},useLinkStatus:function(){return h.useLinkStatus}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(25809),g=a.r(91396),h=f._(a.r(53824));function i(a){let b=a.legacyBehavior,c="string"==typeof a.children||"number"==typeof a.children||"string"==typeof a.children?.type,d=a.children?.type?.$$typeof===Symbol.for("react.client.reference");return!b||c||d||(a.children?.type?.$$typeof===Symbol.for("react.lazy")?console.error("Using a Lazy Component as a direct child of `<Link legacyBehavior>` from a Server Component is not supported. If you need legacyBehavior, wrap your Lazy Component in a Client Component that renders the Link's `<a>` tag."):console.error("Using a Server Component as a direct child of `<Link legacyBehavior>` is not supported. If you need legacyBehavior, wrap your Server Component in a Client Component that renders the Link's `<a>` tag.")),(0,g.jsx)(h.default,{...a})}("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)}];
2
2
 
3
3
  //# sourceMappingURL=_045bvlq._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[77083,a=>{"use strict";var b=a.i(47350),c=a.i(3130),d=a.i(65054),e=a.i(88595),f=a.i(78021);a.i(12351);var g=a.i(43368),h=a.i(77790);a.s(["HubMetrics",0,function({pages:a,has:i}){let j=a.filter(g.hasData),k=j.length?j.reduce((a,b)=>a+(b.metrics.loadTime??0),0)/j.length:null,l=a.reduce((a,b)=>a+(b.metrics.errors?.count??0),0),m=[{needs:"pages",label:"Pages Reporting",value:`${j.length} of ${a.length}`,icon:(0,b.jsx)(d.Globe,{className:"h-4 w-4 text-[#3ee0a1]"})},{needs:"loadTime",label:"Avg Load Time",value:null===k?"No data yet":(0,h.formatDuration)(k),icon:(0,b.jsx)(e.Clock,{className:"h-4 w-4 text-[#06b6d4]"})},{needs:"errors",label:"Open Errors",value:j.length||l?String(l):"No data yet",icon:(0,b.jsx)(f.AlertTriangle,{className:"h-4 w-4 text-[#ef4444]"})}].filter(a=>i(a.needs));return(0,b.jsx)("div",{className:`grid gap-6 mb-8 mt-4 ${3===m.length?"md:grid-cols-3":"md:grid-cols-2"}`,children:m.map((a,d)=>(0,b.jsx)(c.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md",children:(0,b.jsxs)(c.CardContent,{className:"p-6",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,b.jsx)("span",{className:"text-sm font-medium text-gray-400",children:a.label}),(0,b.jsx)("div",{className:"flex h-8 w-8 items-center justify-center rounded-lg bg-[#0f1419] border border-[#2d3748]",children:a.icon})]}),(0,b.jsx)("div",{className:"flex items-baseline gap-3",children:(0,b.jsx)("span",{className:"text-3xl font-bold text-white tracking-tight",children:a.value})})]})},d))})}])},28185,76422,93345,a=>{"use strict";var b=a.i(47350),c=a.i(56561),d=a.i(53840),e=a.i(98485);let f={name:"circle-check",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 9-5.5 5.5L8 12",key:"xofnsj"}]],aliases:["check-circle-2"]};f.node;let g=(0,e.default)(f),h={name:"circle-dashed",size:24,node:[["path",{d:"M10.1 2.182a10 10 0 0 1 3.8 0",key:"5ilxe3"}],["path",{d:"M13.9 21.818a10 10 0 0 1-3.8 0",key:"11zvb9"}],["path",{d:"M17.609 3.721a10 10 0 0 1 2.69 2.7",key:"1iw5b2"}],["path",{d:"M2.182 13.9a10 10 0 0 1 0-3.8",key:"c0bmvh"}],["path",{d:"M20.279 17.609a10 10 0 0 1-2.7 2.69",key:"1ruxm7"}],["path",{d:"M21.818 10.1a10 10 0 0 1 0 3.8",key:"qkgqxc"}],["path",{d:"M3.721 6.391a10 10 0 0 1 2.7-2.69",key:"1mcia2"}],["path",{d:"M6.391 20.279a10 10 0 0 1-2.69-2.7",key:"1fvljs"}]]};h.node;let i=(0,e.default)(h),j={name:"octagon-alert",size:24,node:[["path",{d:"M12 16h.01",key:"1drbdi"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M15.312 2a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2z",key:"1fd625"}]],aliases:["alert-octagon"]};j.node;let k=(0,e.default)(j);a.s(["OctagonAlert",0,k],76422);var l=a.i(69551);a.s(["TriangleAlert",()=>l.default],93345);var l=l,m=a.i(88237),n=a.i(3130),o=a.i(54161),p=a.i(85608),q=a.i(93673),r=a.i(77790),s=a.i(43368);let t="pages-table-title",u=a=>"Warning"===a||"Critical"===a,v={Critical:{Icon:k,icon:"text-dash-danger",badge:"border-dash-danger/40 bg-dash-danger/10"},Warning:{Icon:l.default,icon:"text-dash-warning",badge:"border-dash-warning/40 bg-dash-warning/10"},Healthy:{Icon:g,icon:"text-dash-success",badge:"border-dash-success/40 bg-dash-success/10"}},w={Icon:i,icon:"text-dash-muted",badge:"border-dash-border-light"},x="rounded-sm outline-none focus-visible:ring-3 focus-visible:ring-ring/50",y=`font-medium text-dash-foreground underline underline-offset-4 hover:text-dash-muted-light ${x}`,z="hidden px-3 text-right tabular-nums lg:table-cell";function A({page:a}){let c=a.status??((0,s.hasData)(a)?"No performance data":"No data yet"),{Icon:d,icon:e,badge:f}=a.status?v[a.status]:w;return(0,b.jsxs)(o.Badge,{variant:"outline","data-status":c,className:`text-dash-foreground ${f}`,children:[(0,b.jsx)(d,{"aria-hidden":"true",className:e}),c]})}function B({label:a,caption:c}){return(0,b.jsxs)(m.TableHead,{scope:"col",className:`${z} h-12 text-dash-muted`,children:[a,c&&(0,b.jsx)("span",{className:"block text-body-sm",children:c})]})}function C({status:a,children:c}){let d="Critical"===a?k:l.default;return(0,b.jsxs)(m.TableCell,{"data-over-limit":u(a)||void 0,className:`${z} ${u(a)?"font-semibold text-dash-foreground":"text-dash-muted"}`,children:[u(a)&&(0,b.jsx)(d,{"aria-hidden":"true",className:`mr-1 inline size-3.5 align-[-2px] ${"Critical"===a?"text-dash-danger":"text-dash-warning"}`}),c,u(a)&&(0,b.jsx)("span",{className:"sr-only",children:" over limit"})]})}function D({rows:a,has:d,failed:e}){let f=a.length,h=a.filter(a=>u(a.status)).length,i=a.filter(a=>a.status).length,j=a.filter(a=>!(0,s.hasData)(a)).length,k=e.filter(q.isToolId).map(a=>q.TOOLS[a].label),l=null,m=0===j?"":1===j?"1 has no data yet.":`${j} have no data yet.`;if(h)l=1===f?"This page is over a limit.":1===h?`1 of ${f} pages is over a limit.`:`${h} of ${f} pages are over a limit. Worst first.`;else if(i){let a=1===f?"This page is within your limits.":i===f?`All ${f} pages are within your limits. Closest to a limit first.`:1===i?`1 of ${f} pages is within your limits.`:`${i} of ${f} pages are within your limits. Closest to a limit first.`;l=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(g,{"aria-hidden":"true",className:"mr-1 inline size-3.5 align-[-2px] text-dash-success"}),a]})}else k.length?(l=`Could not load ${k.join(" and ")} data, so pages are not checked against your limits.`,m=""):d("loadTime")||(l=(0,b.jsxs)(b.Fragment,{children:["Ranked by Sentry errors in the last 24h. ",(0,b.jsx)(c.default,{href:"/setup",className:y,children:"Connect New Relic"})," to check load time and error rate against your limits."]}));return(i&&k.length&&(m=[m,`Could not load ${k.join(" and ")} data.`].filter(Boolean).join(" ")),l||m)?(0,b.jsxs)("p",{"data-slot":"table-summary",className:"text-body text-dash-muted",children:[l,l&&m&&" ",m]}):null}a.s(["HUB_TABLE_TITLE_ID",0,t,"HubTable",0,function({title:a,pages:e,has:f,thresholds:g,failed:h=[],limit:i}){let j=(0,d.useRouter)(),k=(0,s.rankPages)(e,g),l=k.some(a=>a.status);return(0,b.jsxs)(n.Card,{className:"bg-dash-card text-dash-foreground",children:[(0,b.jsxs)(n.CardHeader,{children:[(0,b.jsx)("h2",{id:t,tabIndex:-1,className:`title-enter w-fit text-h3 text-dash-foreground ${x}`,children:a}),(0,b.jsx)(D,{rows:k,has:f,failed:h})]}),(0,b.jsxs)(n.CardContent,{children:[(0,b.jsxs)(m.Table,{children:[(0,b.jsx)("caption",{className:"sr-only",children:"Pages ranked worst first"}),(0,b.jsx)(m.TableHeader,{children:(0,b.jsxs)(m.TableRow,{className:"border-dash-border hover:bg-transparent",children:[(0,b.jsx)(m.TableHead,{scope:"col",className:"h-12 px-3 text-dash-muted",children:"Page"}),l&&(0,b.jsx)(m.TableHead,{scope:"col",className:"h-12 px-3 text-dash-muted",children:"Status"}),f("loadTime")&&(0,b.jsx)(B,{label:"Load time",caption:(0,s.limitLabel)("loadTime",g)}),f("errorRate")&&(0,b.jsx)(B,{label:"Error rate",caption:(0,s.limitLabel)("errorRate",g)}),f("apdex")&&(0,b.jsx)(B,{label:"Apdex",caption:(0,s.limitLabel)("apdex",g)}),f("errors")&&(0,b.jsx)(B,{label:"Sentry errors",caption:"last 24h, no limit"}),f("traffic")&&(0,b.jsx)(B,{label:(0,p.isSampled)(e)?"Page loads (sampled)":"Views (24h)"})]})}),(0,b.jsx)(m.TableBody,{children:k.slice(0,i).map(a=>{let d=(0,s.hasData)(a),e=(0,s.hasPerformance)(a),h=a.metrics,i=`/performance/${a.slug}`,k=function(a,b,c){if(!(0,s.hasData)(a))return"";if(u(a.status)){let b=(0,s.breachReasons)(a,c).join(", ");return b.charAt(0).toUpperCase()+b.slice(1)}let d=a.metrics,e=(0,s.hasPerformance)(a);return[e&&b("loadTime")&&void 0!==d.loadTime&&`Load ${(0,r.formatDuration)(d.loadTime)}`,e&&b("errorRate")&&void 0!==d.errorRate&&`Errors ${d.errorRate.toFixed(2)}%`,e&&b("apdex")&&void 0!==d.apdex&&`Apdex ${d.apdex.toFixed(2)}`,b("errors")&&d.errors&&`${d.errors.count} Sentry ${1===d.errors.count?"error":"errors"}`].filter(Boolean).join(" · ")}(a,f,g);return(0,b.jsxs)(m.TableRow,{"data-slug":a.slug,className:"h-14 cursor-pointer border-dash-border hover:bg-white/5 focus-within:bg-white/5 lg:h-12",onClick:a=>{a.target.closest("a")||j.push(i)},children:[(0,b.jsxs)("th",{scope:"row","data-slot":"table-cell",className:"w-full max-w-0 px-3 py-2 text-left align-middle font-normal",children:[(0,b.jsxs)(c.default,{href:i,title:a.name,className:`block truncate text-body font-medium text-dash-foreground ${x}`,children:[a.name,(0,b.jsx)("span",{className:"sr-only",children:", view page details"})]}),(0,b.jsx)("span",{title:a.url,className:"block truncate font-mono text-body-sm text-dash-muted",children:a.url}),k&&(0,b.jsx)("span",{"data-slot":"row-summary",className:"mt-0.5 block text-body-sm text-dash-muted lg:hidden",children:k})]}),l&&(0,b.jsx)(m.TableCell,{className:"px-3",children:(0,b.jsx)(A,{page:a})}),f("loadTime")&&(0,b.jsx)(C,{status:e?(0,s.metricStatus)("loadTime",h.loadTime,g):void 0,children:e&&void 0!==h.loadTime?(0,r.formatDuration)(h.loadTime):"—"}),f("errorRate")&&(0,b.jsx)(C,{status:e?(0,s.metricStatus)("errorRate",h.errorRate,g):void 0,children:e&&void 0!==h.errorRate?`${h.errorRate.toFixed(2)}%`:"—"}),f("apdex")&&(0,b.jsx)(C,{status:e?(0,s.metricStatus)("apdex",h.apdex,g):void 0,children:e&&void 0!==h.apdex?h.apdex.toFixed(2):"—"}),f("errors")&&(0,b.jsx)(C,{children:d&&h.errors?h.errors.count:"—"}),f("traffic")&&(0,b.jsx)(C,{children:d&&h.traffic?a.visitors:"—"})]},a.slug)})})]}),void 0!==i&&k.length>i&&(0,b.jsxs)(c.default,{href:"/performance",className:`mt-2 inline-flex min-h-11 items-center px-3 text-body md:min-h-8 ${y}`,children:["View all ",k.length," pages"]})]})]})}],28185)},48097,a=>{"use strict";var b=a.i(47350),c=a.i(92994),d=a.i(50463),e=a.i(12351),f=a.i(43368),g=a.i(66219),h=a.i(77083),i=a.i(28185);a.s(["PerformanceHub",0,function(){let{state:a,retry:j}=(0,e.useMetrics)(),k=(0,g.useThresholds)();if("loading"===a.status)return(0,b.jsx)(d.Skeleton,{className:"mt-6 h-64 w-full bg-[#2d3748]"});if("error"===a.status)return(0,b.jsx)(c.EmptyState,{title:"Could not load metrics",reason:a.message,onRetry:j});if(!a.configured)return(0,b.jsx)(c.EmptyState,{title:"Connect your data",reason:"Add your New Relic or Sentry keys to see real numbers.",href:"/setup",cta:"Set up keys"});if(!a.pages.length||!a.pages.some(f.hasData))return(0,b.jsx)(c.EmptyState,{});let l=b=>(0,e.provides)(a,b);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(h.HubMetrics,{pages:a.pages,has:l}),(0,b.jsx)(i.HubTable,{title:"All pages",pages:a.pages,has:l,thresholds:k,failed:a.failed})]})}])},65054,a=>{"use strict";var b=a.i(98485);let c={name:"globe",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]]};c.node;let d=(0,b.default)(c);a.s(["Globe",0,d],65054)},69551,a=>{"use strict";var b=a.i(98485);let c={name:"triangle-alert",size:24,node:[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],aliases:["alert-triangle"]};c.node;let d=(0,b.default)(c);a.s(["default",0,d])},78021,a=>{"use strict";var b=a.i(69551);a.s(["AlertTriangle",()=>b.default])}];
2
+
3
+ //# sourceMappingURL=_0loqsig._.js.map