@karan171996/metricflow 0.1.5 → 0.1.7
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.
- package/.next/BUILD_ID +1 -1
- package/.next/build/chunks/[root-of-the-server]__1kki86f._.js +2 -2
- package/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_1gfkiq9._.js +1 -1
- package/.next/build/chunks/{node_modules_20v-8wl._.js → node_modules__pnpm_0q5gz_g._.js} +181 -230
- package/.next/build-manifest.json +7 -7
- package/.next/fallback-build-manifest.json +3 -3
- package/.next/next-minimal-server.js.nft.json +1 -1
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.json +10 -10
- package/.next/server/app/_global-error/page/build-manifest.json +4 -4
- package/.next/server/app/_global-error/page.js +7 -7
- package/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +7 -7
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +6 -6
- package/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page/build-manifest.json +4 -4
- package/.next/server/app/_not-found/page.js +10 -10
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +2 -2
- package/.next/server/app/_not-found.rsc +17 -17
- package/.next/server/app/_not-found.segments/_full.segment.rsc +17 -17
- package/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +7 -7
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/api/analyze/route.js +5 -5
- package/.next/server/app/api/analyze/route.js.nft.json +1 -1
- package/.next/server/app/api/connect/route.js +5 -5
- package/.next/server/app/api/connect/route.js.nft.json +1 -1
- package/.next/server/app/api/health/route.js +4 -4
- package/.next/server/app/api/health/route.js.nft.json +1 -1
- package/.next/server/app/api/metrics/route.js +5 -5
- package/.next/server/app/api/metrics/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/route.js +4 -4
- package/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/.next/server/app/api/setup/ai/route.js +5 -5
- package/.next/server/app/api/setup/ai/route.js.nft.json +1 -1
- package/.next/server/app/api/setup/route.js +5 -5
- package/.next/server/app/api/setup/route.js.nft.json +1 -1
- package/.next/server/app/api/timings/route.js +4 -4
- package/.next/server/app/api/timings/route.js.nft.json +1 -1
- package/.next/server/app/connect/page/build-manifest.json +4 -4
- package/.next/server/app/connect/page.js +11 -11
- package/.next/server/app/connect/page.js.nft.json +1 -1
- package/.next/server/app/connect/page_client-reference-manifest.js +1 -1
- package/.next/server/app/connect.html +2 -2
- package/.next/server/app/connect.rsc +19 -19
- package/.next/server/app/connect.segments/_full.segment.rsc +19 -19
- package/.next/server/app/connect.segments/_index.segment.rsc +11 -11
- package/.next/server/app/connect.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/connect.segments/connect/__PAGE__.segment.rsc +12 -12
- package/.next/server/app/icon.svg/route.js +4 -4
- package/.next/server/app/icon.svg/route.js.nft.json +1 -1
- package/.next/server/app/index.html +2 -2
- package/.next/server/app/index.rsc +20 -20
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +7 -7
- package/.next/server/app/index.segments/_full.segment.rsc +20 -20
- package/.next/server/app/index.segments/_index.segment.rsc +11 -11
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/page/build-manifest.json +4 -4
- package/.next/server/app/page.js +11 -11
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/performance/[slug]/page/build-manifest.json +4 -4
- package/.next/server/app/performance/[slug]/page.js +13 -13
- package/.next/server/app/performance/[slug]/page.js.nft.json +1 -1
- package/.next/server/app/performance/[slug]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/performance/page/build-manifest.json +4 -4
- package/.next/server/app/performance/page.js +11 -11
- package/.next/server/app/performance/page.js.nft.json +1 -1
- package/.next/server/app/performance/page_client-reference-manifest.js +1 -1
- package/.next/server/app/performance.html +2 -2
- package/.next/server/app/performance.rsc +20 -20
- package/.next/server/app/performance.segments/_full.segment.rsc +20 -20
- package/.next/server/app/performance.segments/_index.segment.rsc +11 -11
- package/.next/server/app/performance.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/performance.segments/performance/__PAGE__.segment.rsc +14 -14
- package/.next/server/app/settings/page/build-manifest.json +4 -4
- package/.next/server/app/settings/page.js +12 -12
- package/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings.html +2 -2
- package/.next/server/app/settings.rsc +31 -31
- package/.next/server/app/settings.segments/_full.segment.rsc +31 -31
- package/.next/server/app/settings.segments/_index.segment.rsc +11 -11
- package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +26 -26
- package/.next/server/app/setup/page/build-manifest.json +4 -4
- package/.next/server/app/setup/page.js +11 -11
- package/.next/server/app/setup/page.js.nft.json +1 -1
- package/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/.next/server/app/setup.html +2 -2
- package/.next/server/app/setup.rsc +20 -20
- package/.next/server/app/setup.segments/_full.segment.rsc +20 -20
- package/.next/server/app/setup.segments/_index.segment.rsc +11 -11
- package/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +13 -13
- package/.next/server/app/tools/[tool]/page/build-manifest.json +4 -4
- package/.next/server/app/tools/[tool]/page.js +12 -12
- package/.next/server/app/tools/[tool]/page.js.nft.json +1 -1
- package/.next/server/app/tools/[tool]/page_client-reference-manifest.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__05mqvyo._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0fkj1-q._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0i0nt_u._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1su9v2-._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1wcikrf._.js +5 -0
- package/.next/server/chunks/_08xo8nu._.js +22 -0
- package/.next/server/chunks/_0w8wvdn._.js +3 -0
- package/.next/server/chunks/_0wct7-r._.js +17 -0
- package/.next/server/chunks/_1f80q3b._.js +158 -0
- package/.next/server/chunks/_1l9d64o._.js +3 -0
- package/.next/server/chunks/_1lktrox._.js +8 -0
- package/.next/server/chunks/_1ze9o4l._.js +8 -0
- package/.next/server/chunks/ssr/{node_modules_cn_dist_index_166wuka.js → 0f2__cn_dist_index_1jh2egc.js} +2 -2
- package/.next/server/chunks/ssr/0x0c_next_dist_03da18h._.js +6 -0
- package/.next/server/chunks/ssr/{node_modules_next_dist_1v8aef8._.js → 0x0c_next_dist_0lkq344._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules_next_dist_0drixxt._.js → 0x0c_next_dist_1icgwks._.js} +6 -6
- package/.next/server/chunks/ssr/0x0c_next_dist_client_components_1z4ahr3._.js +3 -0
- package/.next/server/chunks/ssr/0x0c_next_dist_client_components_builtin_forbidden_0pm41ij.js +3 -0
- package/.next/server/chunks/ssr/0x0c_next_dist_client_components_builtin_global-error_1-wtk5-.js +3 -0
- package/.next/server/chunks/ssr/0x0c_next_dist_client_components_builtin_unauthorized_0v3_y-3.js +3 -0
- package/.next/server/chunks/ssr/{node_modules_next_dist_client_components_server-async-storage_0t1dato.js → 0x0c_next_dist_client_components_server-async-storage_1-oepaa.js} +2 -2
- package/.next/server/chunks/ssr/[root-of-the-server]__02c3m72._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__031i31p._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__1c8dejo._.js → [root-of-the-server]__07myivi._.js} +2 -2
- package/.next/server/chunks/ssr/[root-of-the-server]__0g1dtzd._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0kocjhm._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0l4t71c._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0tikq3c._.js +14 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__1vxra_4._.js → [root-of-the-server]__1-0b897._.js} +2 -2
- package/.next/server/chunks/ssr/[root-of-the-server]__146cm0r._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1cl7b4r._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1mydt_n._.js +33 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1thxzex._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__18hr860._.js → [root-of-the-server]__1wd0g6g._.js} +3 -3
- package/.next/server/chunks/ssr/_02_o-ya._.js +6 -0
- package/.next/server/chunks/ssr/_09540a5._.js +151 -0
- package/.next/server/chunks/ssr/{_1b_fov9._.js → _0defuav._.js} +2 -2
- package/.next/server/chunks/ssr/{_1-6djlo._.js → _0e_s0v0._.js} +2 -2
- package/.next/server/chunks/ssr/_0htqt7_._.js +18 -0
- package/.next/server/chunks/ssr/_0me-cg5._.js +3 -0
- package/.next/server/chunks/ssr/{_20txlee._.js → _13m9nev._.js} +2 -2
- package/.next/server/chunks/ssr/_1idvrlk._.js +7 -0
- package/.next/server/chunks/ssr/_1qy3_r5._.js +3 -0
- package/.next/server/chunks/ssr/_1rd2o5p._.js +3 -0
- package/.next/server/chunks/ssr/{_1zb40ot._.js → _1t7ag6f._.js} +2 -2
- package/.next/server/chunks/ssr/{_1rkc3oc._.js → _1tpe22e._.js} +3 -3
- package/.next/server/chunks/ssr/app_layout_tsx_2144vk_._.js +1 -1
- package/.next/server/chunks/ssr/app_loading_tsx_0a1flg9._.js +1 -1
- package/.next/server/chunks/ssr/app_performance_[slug]_loading_tsx_0d5z78a._.js +1 -1
- package/.next/server/chunks/ssr/app_performance_loading_tsx_1bq2nq9._.js +1 -1
- package/.next/server/chunks/ssr/app_settings_loading_tsx_0nv_78v._.js +1 -1
- package/.next/server/chunks/ssr/components_0j32dj5._.js +1 -1
- package/.next/server/chunks/ssr/{node_modules_1wax83z._.js → node_modules__pnpm_0hf3oiy._.js} +3 -3
- package/.next/server/middleware-build-manifest.js +7 -7
- package/.next/server/pages/404.html +2 -2
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/{19jmme1xtmib0.js → 06qwhmc60u5rw.js} +2 -2
- package/.next/static/chunks/1-4lacz2t2rmw.js +4 -0
- package/.next/static/chunks/11ea1elg0081p.js +1 -0
- package/.next/static/chunks/12nwz8qd2ocwk.css +1 -0
- package/.next/static/chunks/{1otvbjuxr6thq.js → 1ou_bh9mvu5x1.js} +1 -1
- package/.next/static/chunks/1t-tmstauvn0u.js +1 -0
- package/.next/static/chunks/23d4pgenwzdj5.js +1 -0
- package/.next/static/chunks/2dpz7gbtyu5go.js +1 -0
- package/.next/static/chunks/2rz3rt3tdd_p4.js +1 -0
- package/.next/static/chunks/{41tx3tz7-8892.js → 3dfy6smxuju__.js} +1 -1
- package/.next/static/chunks/{2uf-bm2nz17t-.js → 3dwrl3svcft9m.js} +1 -1
- package/.next/static/chunks/3fmhqgzb47j23.js +1 -0
- package/.next/static/chunks/{212boumyeyva9.js → 3y_9ajtx5_9ky.js} +2 -2
- package/.next/static/chunks/42z_0gfabqpr_.js +31 -0
- package/.next/static/chunks/44rowux-iee-x.js +22 -0
- package/.next/static/chunks/{turbopack-2-rd7l6sk4a9l.js → turbopack-00gi3z1duuih6.js} +1 -1
- package/.next/trace +1 -1
- package/.next/trace-build +1 -1
- package/README.md +153 -65
- package/package.json +54 -17
- package/.next/server/chunks/[root-of-the-server]__027a1hx._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__14tfjrn._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1fj5wte._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1lxxc0h._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1uv-wzy._.js +0 -5
- package/.next/server/chunks/_0g9k22b._.js +0 -8
- package/.next/server/chunks/_0zwkfj-._.js +0 -8
- package/.next/server/chunks/_10b5gsp._.js +0 -22
- package/.next/server/chunks/_1494cut._.js +0 -3
- package/.next/server/chunks/_1f-783b._.js +0 -158
- package/.next/server/chunks/_1pe45_3._.js +0 -17
- package/.next/server/chunks/_1qtlv__._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__06gb9_u._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0d9igav._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0fufdy-._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__15_sjnx._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__18-cm6x._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__1fxaeqo._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__1io3bae._.js +0 -33
- package/.next/server/chunks/ssr/[root-of-the-server]__1p_6ezv._.js +0 -14
- package/.next/server/chunks/ssr/[root-of-the-server]__1pm7uf6._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__1q99mso._.js +0 -3
- package/.next/server/chunks/ssr/_0-bp5v7._.js +0 -7
- package/.next/server/chunks/ssr/_06r8zrg._.js +0 -3
- package/.next/server/chunks/ssr/_1a5owey._.js +0 -3
- package/.next/server/chunks/ssr/_1d1ipgp._.js +0 -6
- package/.next/server/chunks/ssr/_1d74ud1._.js +0 -3
- package/.next/server/chunks/ssr/_1ovns3l._.js +0 -18
- package/.next/server/chunks/ssr/_1y-b2zm._.js +0 -151
- package/.next/server/chunks/ssr/node_modules_next_dist_0nkkbfv._.js +0 -6
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j3._.js +0 -3
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0symwr9.js +0 -3
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0q-w892.js +0 -3
- package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0l_sp0x.js +0 -3
- package/.next/static/chunks/0ubjg1ka_080j.js +0 -1
- package/.next/static/chunks/1jtdb3kujnm2_.css +0 -1
- package/.next/static/chunks/1kpyel_do_nn_.js +0 -1
- package/.next/static/chunks/1rj7ns8rte9vc.js +0 -1
- package/.next/static/chunks/1u5zan5bs9a7v.js +0 -31
- package/.next/static/chunks/1wurvq5krow1k.js +0 -1
- package/.next/static/chunks/2bd8yoc_iosfu.js +0 -1
- package/.next/static/chunks/3-kx-5mj07qy0.js +0 -22
- package/.next/static/chunks/32d1qdgpjfhb0.js +0 -4
- package/.next/static/chunks/3fntmmi971322.js +0 -1
- /package/.next/static/{kitK02ca_n40lM28SxiCO → t8OSNsKVHYWgJDib_ucGw}/_buildManifest.js +0 -0
- /package/.next/static/{kitK02ca_n40lM28SxiCO → t8OSNsKVHYWgJDib_ucGw}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{kitK02ca_n40lM28SxiCO → t8OSNsKVHYWgJDib_ucGw}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[47872,a=>{"use strict";var b=a.i(
|
|
1
|
+
module.exports=[47872,a=>{"use strict";var b=a.i(47350),c=a.i(75086),d=a.i(3130),e=a.i(40695),f=a.i(5522);let g=[{id:"gemini",label:"Google Gemini",help:"Create a key at aistudio.google.com/apikey."},{id:"claude",label:"Anthropic Claude",help:"Create a key at console.anthropic.com > API keys."},{id:"openai",label:"OpenAI",help:"Create a key at platform.openai.com/api-keys."}];a.s(["AiKeyForm",0,function(){let[a,h]=(0,c.useState)(g[0].id),[i,j]=(0,c.useState)(""),[k,l]=(0,c.useState)(null),[m,n]=(0,c.useState)({}),[o,p]=(0,c.useState)(null),[q,r]=(0,c.useState)(!1);async function s(b){b.preventDefault(),r(!0),p(null);try{let b=await fetch("/api/setup/ai",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:a,key:i})}),c=await b.json();c.saved?(j(""),l(a),n({...m,[a]:!0}),p({ok:!0,text:"Saved. AI suggestions now use this provider. No restart needed."})):p({ok:!1,text:c.error??"Nothing was saved."})}catch{p({ok:!1,text:"Could not reach the dashboard server."})}finally{r(!1)}}(0,c.useEffect)(()=>{fetch("/api/setup/ai").then(a=>a.json()).then(a=>{a.keys&&(n(a.keys),l(a.provider),a.provider&&h(a.provider))}).catch(()=>{})},[]);let t=g.find(b=>b.id===a);return(0,b.jsxs)(d.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md max-w-2xl mt-6",children:[(0,b.jsxs)(d.CardHeader,{children:[(0,b.jsx)(d.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight",children:"AI suggestions (optional)"}),(0,b.jsx)(d.CardDescription,{className:"text-sm text-gray-400",children:"Add a Gemini, Claude or OpenAI key to get AI insights and recommendations for your pages. Only page names, load times and error counts are sent to the provider you pick. Without a key, the dashboard shows sample suggestions."})]}),(0,b.jsx)(d.CardContent,{children:(0,b.jsxs)("form",{onSubmit:s,className:"flex flex-col gap-5",children:[(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)("label",{htmlFor:"ai-provider",className:"text-sm font-medium text-gray-300",children:"Provider"}),(0,b.jsx)("select",{id:"ai-provider",value:a,onChange:a=>h(a.target.value),className:"h-9 rounded-md border border-[#2d3748] bg-[#0f1419] px-3 text-sm text-gray-200",children:g.map(a=>(0,b.jsxs)("option",{value:a.id,children:[a.label,k===a.id?" (in use)":m[a.id]?" (key saved)":""]},a.id))})]}),(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsxs)("label",{htmlFor:"ai-key",className:"text-sm font-medium text-gray-300",children:[t.label," API key ",m[a]&&(0,b.jsx)("span",{className:"ml-2 text-xs text-[#3ee0a1]",children:"✓ Set"})]}),(0,b.jsx)(f.Input,{id:"ai-key",type:"password",autoComplete:"off",spellCheck:!1,placeholder:m[a]?"•••••••• (type to replace)":"",value:i,onChange:a=>j(a.target.value),"aria-describedby":"ai-key-help",className:"bg-[#0f1419] border-[#2d3748] text-gray-200 font-mono text-xs"}),(0,b.jsx)("p",{id:"ai-key-help",className:"text-xs text-gray-400",children:t.help})]}),(0,b.jsxs)("div",{className:"flex items-center gap-4",children:[(0,b.jsx)(e.Button,{type:"submit",disabled:q||!i.trim(),children:q?"Checking…":"Check and save"}),(0,b.jsx)("span",{"aria-live":"polite",className:`text-sm ${o?.ok?"text-[#3ee0a1]":"text-[#f87171]"}`,children:o?.text})]})]})})]})}])},46334,a=>{"use strict";var b=a.i(47350),c=a.i(75086),d=a.i(56561),e=a.i(3130),f=a.i(40695),g=a.i(5522);let h=[{name:"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".'},{name:"NEXT_PUBLIC_NEWRELIC_ACCOUNT_ID",label:"New Relic account ID",secret:!1,help:"A plain number, shown next to your keys in New Relic."},{name:"SENTRY_API_KEY",label:"Sentry auth token",secret:!0,help:"Lets the dashboard read issues (scopes: project:read, event:read)."},{name:"SENTRY_ORG_SLUG",label:"Sentry organization slug",secret:!1,help:"The name in your Sentry URL: sentry.io/organizations/<slug>/."},{name:"SENTRY_PROJECT_ID",label:"Sentry project slug",secret:!1,help:"The project's slug from Project settings."}];a.s(["SetupForm",0,function(){let[a,i]=(0,c.useState)({}),[j,k]=(0,c.useState)({}),[l,m]=(0,c.useState)({}),[n,o]=(0,c.useState)(null),[p,q]=(0,c.useState)(!1),[r,s]=(0,c.useState)(!1),t=(0,c.useRef)(null);async function u(b){b.preventDefault(),q(!0),o(null);try{let b=await fetch("/api/setup",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),c=await b.json(),d=c.results??{};m(d);let e=h.find(a=>d[a.name]&&!d[a.name].ok);e&&setTimeout(()=>t.current?.querySelector(`#${e.name}`)?.focus(),0),c.saved?(s(!0),i({}),k(Object.fromEntries(h.map(a=>[a.name,!0]))),o({ok:!0,text:"Saved. Your keys are valid and stored in .env.local. No restart needed."})):o({ok:!1,text:c.error??"Nothing was saved. Fix the fields marked below."})}catch{o({ok:!1,text:"Could not reach the dashboard server."})}finally{q(!1)}}return(0,c.useEffect)(()=>{fetch("/api/setup").then(a=>a.json()).then(a=>{a.keys?k(a.keys):a.error&&o({ok:!1,text:a.error})}).catch(()=>{})},[]),(0,b.jsxs)(e.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md max-w-2xl",children:[(0,b.jsxs)(e.CardHeader,{children:[(0,b.jsx)(e.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight",children:"Connect New Relic and Sentry"}),(0,b.jsx)(e.CardDescription,{className:"text-sm text-gray-400",children:"Keys are checked once, saved to .env.local in this folder, and never shown again. The key that sends events (Ingest - License) is separate and is added later on the Connect page."})]}),(0,b.jsx)(e.CardContent,{children:(0,b.jsxs)("form",{ref:t,onSubmit:u,className:"flex flex-col gap-5",children:[h.map(c=>{let d=l[c.name];return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsxs)("label",{htmlFor:c.name,className:"text-sm font-medium text-gray-300",children:[c.label," ",j[c.name]&&(0,b.jsx)("span",{className:"ml-2 text-xs text-[#3ee0a1]",children:"✓ Set"})]}),(0,b.jsx)(g.Input,{id:c.name,name:c.name,type:c.secret?"password":"text",autoComplete:"off",spellCheck:!1,placeholder:j[c.name]?"•••••••• (leave blank to keep, type to replace)":"",value:a[c.name]??"",onChange:b=>i({...a,[c.name]:b.target.value}),"aria-invalid":!!d&&!d.ok||void 0,"aria-describedby":`${c.name}-help ${c.name}-result`,className:"bg-[#0f1419] border-[#2d3748] text-gray-200 font-mono text-xs"}),(0,b.jsx)("p",{id:`${c.name}-help`,className:"text-xs text-gray-400",children:c.help}),(0,b.jsxs)("div",{id:`${c.name}-result`,"aria-live":"polite",children:[d&&!d.ok&&(0,b.jsxs)("p",{className:"text-xs text-[#f87171]",children:["✗ ",d.error]}),d?.ok&&(0,b.jsx)("p",{className:"text-xs text-[#3ee0a1]",children:"✓ Checked"})]})]},c.name)}),(0,b.jsxs)("div",{className:"flex items-center gap-4",children:[(0,b.jsx)(f.Button,{type:"submit",disabled:p,children:p?"Checking…":"Check and save"}),(0,b.jsx)("span",{"aria-live":"polite",className:`text-sm ${n?.ok?"text-[#3ee0a1]":"text-[#f87171]"}`,children:n?.text}),r&&(0,b.jsx)(d.default,{href:"/connect",className:(0,f.buttonVariants)({variant:"outline"}),children:"Next: connect your app"})]})]})})]})}])},3130,a=>{"use strict";var b=a.i(47350),c=a.i(85198);a.s(["Card",0,function({className:a,size:d="default",...e}){return(0,b.jsx)("div",{"data-slot":"card","data-size":d,className:(0,c.cn)("group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-xl bg-card py-(--card-spacing) text-sm text-card-foreground ring-1 ring-foreground/10 [--card-spacing:--spacing(4)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:[--card-spacing:--spacing(3)] data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",a),...e})},"CardContent",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-content",className:(0,c.cn)("px-(--card-spacing)",a),...d})},"CardDescription",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-description",className:(0,c.cn)("text-sm text-muted-foreground",a),...d})},"CardHeader",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-header",className:(0,c.cn)("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)",a),...d})},"CardTitle",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-title",className:(0,c.cn)("font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",a),...d})}])},23904,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={actionAsyncStorage:function(){return f.actionAsyncStorage},workAsyncStorage:function(){return g.workAsyncStorage},workUnitAsyncStorage:function(){return h.workUnitAsyncStorage}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(20635),g=a.r(56704),h=a.r(32319);("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
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=_0defuav._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[92994,a=>{"use strict";var b=a.i(
|
|
1
|
+
module.exports=[92994,a=>{"use strict";var b=a.i(47350),c=a.i(56561),d=a.i(3130),e=a.i(40695);a.s(["EmptyState",0,function({title:a="No data yet",reason:f="Keys work, but no page events have arrived.",href:g="/connect",cta:h="Send your first events",onRetry:i}){return(0,b.jsx)(d.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md",children:(0,b.jsxs)(d.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:f}),(0,b.jsxs)("div",{className:"flex gap-3",children:[(0,b.jsx)(c.default,{href:g,className:(0,e.buttonVariants)(),children:h}),i&&(0,b.jsx)(e.Button,{variant:"outline",onClick:i,children:"Retry"})]})]})})}])},13392,a=>{"use strict";var b=a.i(47350),c=a.i(53840),d=a.i(88237),e=a.i(3130),f=a.i(50463),g=a.i(92994),h=a.i(62191),i=a.i(93673);a.s(["ToolInsights",0,function({tool:a}){let{state:j,retry:k}=(0,h.useMetrics)(),l=(0,c.useRouter)(),{label:m,stats:n,columns:o}=i.TOOLS[a];if("loading"===j.status)return(0,b.jsx)(f.Skeleton,{className:"mt-6 h-64 w-full bg-[#2d3748]"});if("error"===j.status)return(0,b.jsx)(g.EmptyState,{title:"Could not load metrics",reason:j.message,onRetry:k});if(!j.configured)return(0,b.jsx)(g.EmptyState,{title:"Connect your data",reason:"Add your New Relic and Sentry keys to see real numbers.",href:"/setup",cta:"Set up keys"});let p=j.pages.filter(h.hasData);return p.length?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"grid gap-6 sm:grid-cols-2 lg:grid-cols-4 mb-8 mt-4",children:n(p).map(a=>(0,b.jsx)(e.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md",children:(0,b.jsxs)(e.CardContent,{className:"p-6",children:[(0,b.jsx)("span",{className:"text-sm font-medium text-gray-400",children:a.label}),(0,b.jsx)("div",{className:"mt-4 truncate text-3xl font-bold text-white tracking-tight",children:a.value})]})},a.label))}),(0,b.jsxs)(e.Card,{className:"border-[#2d3748] bg-[#1a202c] shadow-md flex-1",children:[(0,b.jsx)(e.CardHeader,{children:(0,b.jsxs)(e.CardTitle,{className:"text-[18px] font-bold text-white tracking-tight",children:[m," by Page"]})}),(0,b.jsx)(e.CardContent,{children:(0,b.jsx)("div",{className:"rounded-md border border-[#2d3748] overflow-hidden",children:(0,b.jsxs)(d.Table,{children:[(0,b.jsx)(d.TableHeader,{className:"bg-[#0f1419]",children:(0,b.jsxs)(d.TableRow,{className:"border-[#2d3748] hover:bg-transparent",children:[(0,b.jsx)(d.TableHead,{className:"text-gray-400",children:"Page Name"}),(0,b.jsx)(d.TableHead,{className:"text-gray-400",children:"Path"}),o.map(a=>(0,b.jsx)(d.TableHead,{className:"text-gray-400",children:a.header},a.header))]})}),(0,b.jsx)(d.TableBody,{children:j.pages.map(a=>(0,b.jsxs)(d.TableRow,{className:"border-[#2d3748] hover:bg-white/5 transition-colors cursor-pointer",onClick:()=>l.push(`/performance/${a.slug}`),children:[(0,b.jsx)(d.TableCell,{className:"font-medium text-white",children:a.name}),(0,b.jsx)(d.TableCell,{className:"text-gray-500 font-mono text-xs",children:a.url}),o.map(c=>(0,b.jsx)(d.TableCell,{className:"max-w-[320px] truncate text-gray-400",children:(0,h.hasData)(a)?c.cell(a):"—"},c.header))]},a.slug))})]})})})]})]}):(0,b.jsx)(g.EmptyState,{})}])},3130,a=>{"use strict";var b=a.i(47350),c=a.i(85198);a.s(["Card",0,function({className:a,size:d="default",...e}){return(0,b.jsx)("div",{"data-slot":"card","data-size":d,className:(0,c.cn)("group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-xl bg-card py-(--card-spacing) text-sm text-card-foreground ring-1 ring-foreground/10 [--card-spacing:--spacing(4)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:[--card-spacing:--spacing(3)] data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",a),...e})},"CardContent",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-content",className:(0,c.cn)("px-(--card-spacing)",a),...d})},"CardDescription",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-description",className:(0,c.cn)("text-sm text-muted-foreground",a),...d})},"CardHeader",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-header",className:(0,c.cn)("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)",a),...d})},"CardTitle",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-title",className:(0,c.cn)("font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",a),...d})}])},88237,a=>{"use strict";var b=a.i(47350),c=a.i(85198);a.s(["Table",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"table-container",className:"relative w-full overflow-x-auto",children:(0,b.jsx)("table",{"data-slot":"table",className:(0,c.cn)("w-full caption-bottom text-sm",a),...d})})},"TableBody",0,function({className:a,...d}){return(0,b.jsx)("tbody",{"data-slot":"table-body",className:(0,c.cn)("[&_tr:last-child]:border-0",a),...d})},"TableCell",0,function({className:a,...d}){return(0,b.jsx)("td",{"data-slot":"table-cell",className:(0,c.cn)("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0",a),...d})},"TableHead",0,function({className:a,...d}){return(0,b.jsx)("th",{"data-slot":"table-head",className:(0,c.cn)("h-10 px-2 text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0",a),...d})},"TableHeader",0,function({className:a,...d}){return(0,b.jsx)("thead",{"data-slot":"table-header",className:(0,c.cn)("[&_tr]:border-b",a),...d})},"TableRow",0,function({className:a,...d}){return(0,b.jsx)("tr",{"data-slot":"table-row",className:(0,c.cn)("border-b transition-colors hover:bg-muted/50 has-aria-expanded:bg-muted/50 data-[state=selected]:bg-muted",a),...d})}])},23904,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={actionAsyncStorage:function(){return f.actionAsyncStorage},workAsyncStorage:function(){return g.workAsyncStorage},workUnitAsyncStorage:function(){return h.workUnitAsyncStorage}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(20635),g=a.r(56704),h=a.r(32319);("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
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=_0e_s0v0._.js.map
|