dev3000 0.0.54 → 0.0.55
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/README.md +2 -2
- package/dist/dev-environment.d.ts +1 -0
- package/dist/dev-environment.d.ts.map +1 -1
- package/dist/dev-environment.js +33 -1
- package/dist/dev-environment.js.map +1 -1
- package/mcp-server/.next/BUILD_ID +1 -1
- package/mcp-server/.next/app-build-manifest.json +22 -22
- package/mcp-server/.next/build/chunks/[root-of-the-server]__51225daf._.js.map +1 -1
- package/mcp-server/.next/build-manifest.json +5 -5
- package/mcp-server/.next/cache/.tsbuildinfo +1 -1
- package/mcp-server/.next/fallback-build-manifest.json +2 -2
- package/mcp-server/.next/prerender-manifest.json +6 -6
- package/mcp-server/.next/server/app/_global-error/page/app-build-manifest.json +3 -3
- package/mcp-server/.next/server/app/_global-error/page/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/_global-error.html +2 -2
- package/mcp-server/.next/server/app/_global-error.rsc +1 -1
- package/mcp-server/.next/server/app/_not-found/page/app-build-manifest.json +4 -4
- package/mcp-server/.next/server/app/_not-found/page/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/mcp-server/.next/server/app/_not-found.html +1 -1
- package/mcp-server/.next/server/app/_not-found.rsc +2 -2
- package/mcp-server/.next/server/app/api/config/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/config/route/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/append/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/append/route/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/head/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/head/route/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/list/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/list/route/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/rotate/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/rotate/route/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/stream/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/stream/route/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/tail/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/logs/tail/route/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/mcp/[transport]/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/mcp/[transport]/route/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/replay/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/server/app/api/replay/route/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/index.html +1 -1
- package/mcp-server/.next/server/app/index.rsc +2 -2
- package/mcp-server/.next/server/app/logs/page/app-build-manifest.json +6 -6
- package/mcp-server/.next/server/app/logs/page/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/logs/page.js.nft.json +1 -1
- package/mcp-server/.next/server/app/logs/page_client-reference-manifest.js +1 -1
- package/mcp-server/.next/server/app/page/app-build-manifest.json +4 -4
- package/mcp-server/.next/server/app/page/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/page_client-reference-manifest.js +1 -1
- package/mcp-server/.next/server/app/replay/page/app-build-manifest.json +5 -5
- package/mcp-server/.next/server/app/replay/page/build-manifest.json +3 -3
- package/mcp-server/.next/server/app/replay/page.js.nft.json +1 -1
- package/mcp-server/.next/server/app/replay/page_client-reference-manifest.js +1 -1
- package/mcp-server/.next/server/app/replay.html +1 -1
- package/mcp-server/.next/server/app/replay.rsc +3 -3
- package/mcp-server/.next/server/chunks/[root-of-the-server]__82298dd3._.js.map +1 -1
- package/mcp-server/.next/server/chunks/ssr/[root-of-the-server]__5c573556._.js +3 -0
- package/mcp-server/.next/server/chunks/ssr/[root-of-the-server]__5c573556._.js.map +1 -0
- package/mcp-server/.next/{standalone/.next/server/chunks/ssr/_129f4fec._.js → server/chunks/ssr/_7c04f51e._.js} +2 -2
- package/mcp-server/.next/server/chunks/ssr/_7c04f51e._.js.map +1 -0
- package/mcp-server/.next/server/chunks/ssr/node_modules__pnpm_8bde5c6b._.js +3 -0
- package/mcp-server/.next/server/chunks/ssr/node_modules__pnpm_8bde5c6b._.js.map +1 -0
- package/mcp-server/.next/server/middleware-build-manifest.js +3 -3
- package/mcp-server/.next/server/pages/404.html +1 -1
- package/mcp-server/.next/server/pages/500.html +2 -2
- package/mcp-server/.next/standalone/.next/BUILD_ID +1 -1
- package/mcp-server/.next/standalone/.next/app-build-manifest.json +22 -22
- package/mcp-server/.next/standalone/.next/build-manifest.json +5 -5
- package/mcp-server/.next/standalone/.next/prerender-manifest.json +6 -6
- package/mcp-server/.next/standalone/.next/server/app/_global-error/page/app-build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/_global-error/page/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/_global-error.html +2 -2
- package/mcp-server/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/mcp-server/.next/standalone/.next/server/app/_not-found/page/app-build-manifest.json +4 -4
- package/mcp-server/.next/standalone/.next/server/app/_not-found/page/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/mcp-server/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/mcp-server/.next/standalone/.next/server/app/_not-found.rsc +2 -2
- package/mcp-server/.next/standalone/.next/server/app/api/config/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/config/route/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/append/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/append/route/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/head/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/head/route/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/list/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/list/route/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/rotate/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/rotate/route/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/stream/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/stream/route/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/tail/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/logs/tail/route/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/mcp/[transport]/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/mcp/[transport]/route/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/replay/route/app-build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/api/replay/route/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/index.html +1 -1
- package/mcp-server/.next/standalone/.next/server/app/index.rsc +2 -2
- package/mcp-server/.next/standalone/.next/server/app/logs/page/app-build-manifest.json +6 -6
- package/mcp-server/.next/standalone/.next/server/app/logs/page/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/logs/page.js.nft.json +1 -1
- package/mcp-server/.next/standalone/.next/server/app/logs/page_client-reference-manifest.js +1 -1
- package/mcp-server/.next/standalone/.next/server/app/page/app-build-manifest.json +4 -4
- package/mcp-server/.next/standalone/.next/server/app/page/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/mcp-server/.next/standalone/.next/server/app/replay/page/app-build-manifest.json +5 -5
- package/mcp-server/.next/standalone/.next/server/app/replay/page/build-manifest.json +3 -3
- package/mcp-server/.next/standalone/.next/server/app/replay/page.js.nft.json +1 -1
- package/mcp-server/.next/standalone/.next/server/app/replay/page_client-reference-manifest.js +1 -1
- package/mcp-server/.next/standalone/.next/server/app/replay.html +1 -1
- package/mcp-server/.next/standalone/.next/server/app/replay.rsc +3 -3
- package/mcp-server/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__5c573556._.js +3 -0
- package/mcp-server/.next/{server/chunks/ssr/_129f4fec._.js → standalone/.next/server/chunks/ssr/_7c04f51e._.js} +2 -2
- package/mcp-server/.next/standalone/.next/server/chunks/ssr/node_modules__pnpm_8bde5c6b._.js +3 -0
- package/mcp-server/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
- package/mcp-server/.next/standalone/.next/server/pages/404.html +1 -1
- package/mcp-server/.next/standalone/.next/server/pages/500.html +2 -2
- package/mcp-server/.next/standalone/app/api/mcp/[transport]/route.ts +1 -1
- package/mcp-server/.next/static/chunks/416a6ad96e2949dc.js +1 -0
- package/mcp-server/.next/static/chunks/605beb21d5c11807.js +1 -0
- package/mcp-server/.next/static/chunks/{96adbf9dd96ccea5.css → a1f43ee49fc3218a.css} +1 -1
- package/mcp-server/.next/static/chunks/b2fe525ea0f48ed5.js +1 -0
- package/mcp-server/.next/static/chunks/eeac65e303d3c6ae.js +1 -0
- package/mcp-server/.next/static/chunks/f7331e11d1cb0264.js +1 -0
- package/mcp-server/.next/static/chunks/{turbopack-16ca4f26878616fe.js → turbopack-d95359954cb213b7.js} +1 -1
- package/mcp-server/.next/trace +1 -1
- package/package.json +1 -1
- package/mcp-server/.next/server/chunks/ssr/[root-of-the-server]__bdb0de8a._.js +0 -3
- package/mcp-server/.next/server/chunks/ssr/[root-of-the-server]__bdb0de8a._.js.map +0 -1
- package/mcp-server/.next/server/chunks/ssr/_129f4fec._.js.map +0 -1
- package/mcp-server/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__bdb0de8a._.js +0 -3
- package/mcp-server/.next/static/chunks/057f994a312138af.js +0 -1
- package/mcp-server/.next/static/chunks/4539039090e4ce07.js +0 -1
- package/mcp-server/.next/static/chunks/655254b9454d106c.js +0 -1
- package/mcp-server/.next/static/chunks/c7471d4576fc04a3.js +0 -1
- package/mcp-server/.next/static/chunks/ed85441e904ca043.js +0 -1
- /package/mcp-server/.next/static/{5wPGwyPmH4EFIj9v7Ez1V → X4QUiHfBbIqrLCPNDK80s}/_buildManifest.js +0 -0
- /package/mcp-server/.next/static/{5wPGwyPmH4EFIj9v7Ez1V → X4QUiHfBbIqrLCPNDK80s}/_clientMiddlewareManifest.json +0 -0
- /package/mcp-server/.next/static/{5wPGwyPmH4EFIj9v7Ez1V → X4QUiHfBbIqrLCPNDK80s}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,4364,(e,t,r)=>{t.exports=e.r(75671)},73853,e=>{"use strict";var t=e.i(10664),r=e.i(68837),s=e.i(8234),n=e.i(4364),l=e.i(86464);function a(e){let t=/\[(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z)\] \[([^\]]+)\] /,r=[],s=e.split("\n"),n=null;for(let e of s){if(!e.trim())continue;let s=e.match(t);if(s){var l;let t,a;n&&r.push(n);let[i,o,c]=s,d=e.substring(i.length),u=/^TAB-\d+\.\d+$/.test(c),x=c,g=d;if(u){t=c;let e=d.match(/^\[([^\]]+)\] /);if(e&&(x=e[1],(g=d.substring(e[0].length)).includes("User-Agent:"))){let e=g.match(/User-Agent: ([^,\n]+)/);e&&(a=e[1])}}let m=null==(l=g.match(/\[SCREENSHOT\] ([^\s[]+)/))?void 0:l[1],h=function(e){let t=e.match(/^\[CONSOLE LOG\] (.+)$/);if(!t)return e;let r=t[1];if(!r.includes("%c"))return e;let s=r;return s=(s=(s=s.replace(/%c/g,"")).replace(/\s+color:\s*[^{}\n]*?(?=\s*[{[]|$)/g,"")).replace(/\s+/g," ").trim(),"[CONSOLE LOG] ".concat(s)}(g);if((h=h.replace(/ \[PLAYWRIGHT\]$/,"").replace(/ \[CHROME_EXTENSION\]$/,"")).includes("[Network.webSocketFrameSent]")||h.includes("[Network.webSocketFrameReceived]")||h.includes("[Network.webSocketFrame")||h.includes("webSocketDebuggerUrl")&&h.includes("localhost")||h.includes("[NETWORK")&&h.includes("__PAGE__")&&h.includes("refresh")){n=null;continue}n={timestamp:o,source:x,message:h,screenshot:m,original:e,tabIdentifier:t,userAgent:a}}else n&&(n.message+="\n".concat(e),n.original+="\n".concat(e))}return n&&r.push(n),r}function i(){{let e=localStorage.getItem("dev3000-dark-mode");return null!==e?JSON.parse(e):window.matchMedia("(prefers-color-scheme: dark)").matches}}function o(e){let s,n=(0,r.c)(6),{url:a,maxLength:i}=e,o=void 0===i?60:i,[c,d]=(0,l.useState)(!1);if(a.length<=o){let e;return n[0]!==a?(e=(0,t.jsx)("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:"text-blue-600 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-300 underline",children:a}),n[0]=a,n[1]=e):e=n[1],e}let u="".concat(a.substring(0,o),"...");return n[2]!==c||n[3]!==u||n[4]!==a?(s=(0,t.jsx)("span",{className:"inline-block",children:c?(0,t.jsxs)("span",{children:[(0,t.jsx)("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:"text-blue-600 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-300 underline",children:a}),(0,t.jsx)("button",{type:"button",onClick:()=>d(!1),className:"ml-2 text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 px-1 py-0.5 rounded hover:bg-gray-100 dark:hover:bg-gray-700",children:"[collapse]"})]}):(0,t.jsxs)("span",{children:[(0,t.jsx)("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:"text-blue-600 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-300 underline",children:u}),(0,t.jsx)("button",{type:"button",onClick:()=>d(!0),className:"ml-1 text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-300 px-1 py-0.5 rounded hover:bg-gray-100 dark:hover:bg-gray-700",children:"[expand]"})]})}),n[2]=c,n[3]=u,n[4]=a,n[5]=s):s=n[5],s}function c(e){let{content:r}=e,[s,n]=(0,l.useState)(!1);try{let e=JSON.parse(r);if(e&&"object"==typeof e&&"object"===e.type&&e.properties){let r=e.properties,l=e.description||"Object",a=e.overflow;return(0,t.jsxs)("div",{className:"inline-block",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>n(!s),className:"inline-flex items-center gap-1 text-blue-600 hover:text-blue-800 font-mono text-sm",children:[(0,t.jsx)("svg",{className:"w-3 h-3 transition-transform ".concat(s?"rotate-90":""),fill:"currentColor",viewBox:"0 0 20 20",children:(0,t.jsx)("path",{fillRule:"evenodd",d:"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 111.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z",clipRule:"evenodd"})}),(0,t.jsx)("span",{className:"text-purple-600",children:l}),!s&&(0,t.jsxs)("span",{className:"text-gray-500",children:[a?"...":""," ","{",r.slice(0,3).map((e,r)=>(0,t.jsxs)("span",{children:[r>0&&", ",(0,t.jsx)("span",{className:"text-red-600",children:e.name}),":",(0,t.jsx)("span",{className:"text-blue-600",children:"string"===e.type?'"'.concat(e.value,'"'):"number"===e.type?e.value:"object"===e.type?"array"===e.subtype?e.value:"{...}":e.value})]},"".concat(e.name,"-").concat(r))),r.length>3&&", ...","}"]})]}),s&&(0,t.jsx)("div",{className:"mt-1 ml-4 border-l-2 border-gray-200 pl-3",children:(0,t.jsx)("div",{className:"font-mono text-sm",children:(0,t.jsxs)("div",{className:"text-gray-600",children:[l," ","{",(0,t.jsxs)("div",{className:"ml-4",children:[r.map((e,s)=>(0,t.jsxs)("div",{className:"py-0.5",children:[(0,t.jsx)("span",{className:"text-red-600",children:e.name}),(0,t.jsx)("span",{className:"text-gray-500",children:": "}),(0,t.jsx)("span",{className:"string"===e.type?"text-green-600":"number"===e.type?"text-blue-600":"object"===e.type?"text-purple-600":"text-orange-600",children:"string"===e.type?'"'.concat(String(e.value),'"'):"number"===e.type?String(e.value):"object"===e.type?"array"===e.subtype?String(e.value):"{...}":String(e.value)}),s<r.length-1&&(0,t.jsx)("span",{className:"text-gray-500",children:","})]},"".concat(e.name,"-").concat(s))),a&&(0,t.jsx)("div",{className:"text-gray-500 italic",children:"... and more properties"})]}),(0,t.jsx)("div",{className:"text-gray-600",children:"}"})]})})})]})}return(0,t.jsxs)("div",{className:"inline-block",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>n(!s),className:"inline-flex items-center gap-1 text-blue-600 hover:text-blue-800 font-mono text-sm",children:[(0,t.jsx)("svg",{className:"w-3 h-3 transition-transform ".concat(s?"rotate-90":""),fill:"currentColor",viewBox:"0 0 20 20",children:(0,t.jsx)("path",{fillRule:"evenodd",d:"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 111.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z",clipRule:"evenodd"})}),(0,t.jsx)("span",{className:"text-purple-600",children:"Object"}),!s&&(0,t.jsxs)("span",{className:"text-gray-500",children:["{","...","}"]})]}),s&&(0,t.jsx)("div",{className:"mt-1 ml-4 border-l-2 border-gray-200 pl-3",children:(0,t.jsx)("pre",{className:"font-mono text-sm text-gray-700 whitespace-pre-wrap",children:JSON.stringify(e,null,2)})})]})}catch(e){return(0,t.jsx)("span",{children:r})}}function d(e){let n,l,a,i,d,m,h,p,b,f,y,v,j,N,k,w,S=(0,r.c)(45),{entry:E}=e;S[0]!==E.message?(n=function(e){return e.includes("[INTERACTION]")?{type:"INTERACTION",color:"bg-purple-50 dark:bg-purple-900/20 border-purple-200 dark:border-purple-800",tag:"bg-purple-100 dark:bg-purple-800 text-purple-800 dark:text-purple-200"}:e.includes("[CONSOLE ERROR]")?{type:"ERROR",color:"bg-red-50 dark:bg-red-900/20 border-red-200 dark:border-red-800",tag:"bg-red-100 dark:bg-red-800 text-red-800 dark:text-red-200"}:e.includes("[CONSOLE WARN]")?{type:"WARNING",color:"bg-yellow-50 dark:bg-yellow-900/20 border-yellow-200 dark:border-yellow-800",tag:"bg-yellow-100 dark:bg-yellow-800 text-yellow-800 dark:text-yellow-200"}:e.includes("[SCREENSHOT]")?{type:"SCREENSHOT",color:"bg-blue-50 dark:bg-blue-900/20 border-blue-200 dark:border-blue-800",tag:"bg-blue-100 dark:bg-blue-800 text-blue-800 dark:text-blue-200"}:e.includes("[NAVIGATION]")?{type:"NAVIGATION",color:"bg-indigo-50 dark:bg-indigo-900/20 border-indigo-200 dark:border-indigo-800",tag:"bg-indigo-100 dark:bg-indigo-800 text-indigo-800 dark:text-indigo-200"}:e.includes("[NETWORK ERROR]")?{type:"NETWORK",color:"bg-red-50 dark:bg-red-900/20 border-red-200 dark:border-red-800",tag:"bg-red-100 dark:bg-red-800 text-red-800 dark:text-red-200"}:e.includes("[NETWORK REQUEST]")?{type:"NETWORK",color:"bg-gray-50 dark:bg-gray-800/50 border-gray-200 dark:border-gray-700",tag:"bg-gray-100 dark:bg-gray-700 text-gray-700 dark:text-gray-300"}:e.includes("[PAGE ERROR]")?{type:"ERROR",color:"bg-red-50 dark:bg-red-900/20 border-red-200 dark:border-red-800",tag:"bg-red-100 dark:bg-red-800 text-red-800 dark:text-red-200"}:{type:"DEFAULT",color:"border-gray-200 dark:border-gray-700",tag:"bg-gray-100 dark:bg-gray-700 text-gray-700 dark:text-gray-300"}}(E.message),S[0]=E.message,S[1]=n):n=S[1];let R=n;S[2]!==R.tag?(l=e=>{let r,s=/\[([A-Z\s]+)\]/g,n=/\{[^{}]*(?:\{[^{}]*\}[^{}]*)*\}/g,l=/(https?:\/\/[^\s]+)/g,a=[],i=0;for(r=s.exec(e);null!==r;)r.index>i&&a.push(e.slice(i,r.index)),a.push((0,t.jsx)("span",{className:"inline-block px-1.5 py-0.5 rounded text-xs font-medium ".concat(R.tag," mr-1"),children:r[1]},r.index)),i=r.index+r[0].length,r=s.exec(e);return a.push(...((e,r)=>{let s=[...e.matchAll(n)],a=[...e.matchAll(l)],i=[...s.map(g),...a.map(x)];if(i.sort(u),0===i.length)return[e];let d=[],m=0;return i.forEach((s,n)=>{var l,a,i;(null!=(l=s.index)?l:0)>m&&d.push(e.slice(m,null!=(a=s.index)?a:0)),"json"===s.type?d.push((0,t.jsx)(c,{content:s[0]},"".concat(r,"-json-").concat(s.index,"-").concat(s[0].slice(0,20)))):"url"===s.type&&d.push((0,t.jsx)(o,{url:s[0]},"".concat(r,"-url-").concat(s.index,"-").concat(s[0]))),m=(null!=(i=s.index)?i:0)+s[0].length}),m<e.length&&d.push(e.slice(m)),d})(e.slice(i),"main")),a.length>0?a:e},S[2]=R.tag,S[3]=l):l=S[3];let C=l,T="border-l-4 ".concat(R.color," pl-4 py-2");S[4]!==E.timestamp?(a=new Date(E.timestamp).toLocaleTimeString(),S[4]=E.timestamp,S[5]=a):a=S[5],S[6]!==a?(i=(0,t.jsx)("div",{className:"text-xs text-gray-500 dark:text-gray-400 font-mono whitespace-nowrap pt-1",children:a}),S[6]=a,S[7]=i):i=S[7];let O="px-2 py-1 rounded text-xs font-medium whitespace-nowrap ".concat("SERVER"===E.source?"bg-blue-100 dark:bg-blue-800 text-blue-800 dark:text-blue-200":"bg-green-100 dark:bg-green-800 text-green-800 dark:text-green-200");return S[8]!==E.source||S[9]!==O?(d=(0,t.jsx)("div",{className:O,children:E.source}),S[8]=E.source,S[9]=O,S[10]=d):d=S[10],S[11]!==E.message||S[12]!==C?(m=C(E.message),S[11]=E.message,S[12]=C,S[13]=m):m=S[13],S[14]!==m?(h=(0,t.jsx)("div",{className:"flex-1 min-w-0",children:m}),S[14]=m,S[15]=h):h=S[15],S[16]!==E.tabIdentifier?(p=E.tabIdentifier&&(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-gray-100 dark:bg-gray-700 text-gray-700 dark:text-gray-300",children:E.tabIdentifier}),S[16]=E.tabIdentifier,S[17]=p):p=S[17],S[18]!==E.userAgent?(b=E.userAgent&&(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-green-100 dark:bg-green-800 text-green-700 dark:text-green-200",children:E.userAgent.includes("Chrome")?"Chrome":E.userAgent.includes("Firefox")?"Firefox":E.userAgent.includes("Safari")?"Safari":E.userAgent.includes("Edge")?"Edge":"Browser"}),S[18]=E.userAgent,S[19]=b):b=S[19],S[20]!==E.message||S[21]!==E.source||S[22]!==E.tabIdentifier?(f="BROWSER"===E.source&&(()=>{let e=E.message.includes("[PLAYWRIGHT]"),r=E.message.includes("[CHROME_EXTENSION]")||E.tabIdentifier;return e?(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-purple-100 dark:bg-purple-800 text-purple-700 dark:text-purple-200",children:"🎭 Playwright"}):r?(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-blue-100 dark:bg-blue-800 text-blue-700 dark:text-blue-200",children:"🧩 Extension"}):null})(),S[20]=E.message,S[21]=E.source,S[22]=E.tabIdentifier,S[23]=f):f=S[23],S[24]!==E.message||S[25]!==E.source?(y="SERVER"===E.source&&(()=>{let e=E.message.toLowerCase();if(e.includes("ready on http://localhost")||e.includes("ready in ")||e.includes("next.js")||e.includes("compiled client and server"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-black text-white",children:"▲ Next.js"});if(e.includes("nuxt")||e.includes("nitro")&&e.includes("http://localhost")||e.includes("universal mode")||e.includes("spa mode"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-green-500 text-white",children:"💚 Nuxt"});if(e.includes("vue-cli-service")||e.includes("vue")&&(e.includes("dev server")||e.includes("local:"))||e.includes("@vue/cli-service"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-green-600 text-white",children:"🟢 Vue"});if(e.includes("local:")&&e.includes("vite")||e.includes("dev server running")||e.includes("vite v"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-blue-500 text-white",children:"⚡ Vite"});if(e.includes("rails server")||e.includes("puma starting")||e.includes("use ctrl-c to stop")||e.includes("listening on tcp://")&&e.includes("3000"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-red-600 text-white",children:"💎 Rails"});else if(e.includes("laravel development server")||e.includes("artisan serve")||e.includes("laravel")&&e.includes("127.0.0.1:8000"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-red-500 text-white",children:"🅻 Laravel"});else if(e.includes("express server")||e.includes("server listening on")||e.includes("app listening on port")||e.includes("node server"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-green-700 text-white",children:"🟩 Express"});else if(e.includes("django")||e.includes("development server")&&e.includes("127.0.0.1:8000")||e.includes("runserver"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-green-800 text-white",children:"🐍 Django"});else if(e.includes("flask")||e.includes("running on http://127.0.0.1:5000")||e.includes("debug mode: on"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-blue-800 text-white",children:"🌶️ Flask"});else if(e.includes("sveltekit")||e.includes("svelte")&&e.includes("dev")||e.includes("@sveltejs"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-orange-500 text-white",children:"🔥 Svelte"});else if(e.includes("remix")||e.includes("@remix-run"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-blue-400 text-white",children:"💿 Remix"});else if(e.includes("astro")||e.includes("@astrojs"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-purple-600 text-white",children:"🚀 Astro"});else if(e.includes("spring boot")||e.includes("tomcat started on port")||e.includes("started application")&&e.includes("seconds"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-green-500 text-white",children:"🍃 Spring"});else if(e.includes("webpack compiled")||e.includes("compiled successfully")||e.includes("webpack-dev-server"))return(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-blue-600 text-white",children:"⚛️ React"});return null})(),S[24]=E.message,S[25]=E.source,S[26]=y):y=S[26],S[27]!==p||S[28]!==b||S[29]!==f||S[30]!==y?(v=(0,t.jsxs)("div",{className:"flex items-center gap-1 flex-shrink-0",children:[p,b,f,y]}),S[27]=p,S[28]=b,S[29]=f,S[30]=y,S[31]=v):v=S[31],S[32]!==v||S[33]!==h?(j=(0,t.jsx)("div",{className:"font-mono text-sm min-w-0 text-gray-900 dark:text-gray-100",children:(0,t.jsxs)("div",{className:"flex flex-wrap items-start gap-2",children:[h,v]})}),S[32]=v,S[33]=h,S[34]=j):j=S[34],S[35]!==j||S[36]!==i||S[37]!==d?(N=(0,t.jsxs)("div",{className:"grid grid-cols-[auto_auto_1fr] gap-3 items-start",children:[i,d,j]}),S[35]=j,S[36]=i,S[37]=d,S[38]=N):N=S[38],S[39]!==E.screenshot?(k=E.screenshot&&(0,t.jsx)("div",{className:"mt-2",children:(0,t.jsx)(s.default,{src:"/screenshots/".concat(E.screenshot),alt:"Screenshot",width:800,height:400,className:"max-w-full h-auto border rounded shadow-sm",style:{maxHeight:"400px"},unoptimized:!0})}),S[39]=E.screenshot,S[40]=k):k=S[40],S[41]!==N||S[42]!==k||S[43]!==T?(w=(0,t.jsxs)("div",{className:T,children:[N,k]}),S[41]=N,S[42]=k,S[43]=T,S[44]=w):w=S[44],w}function u(e,t){var r,s;return(null!=(r=e.index)?r:0)-(null!=(s=t.index)?s:0)}function x(e){return{...e,type:"url"}}function g(e){return{...e,type:"json"}}function m(e){var s,o;let{version:c,initialData:u}=e,x=(0,n.useRouter)(),g=(0,n.useSearchParams)(),[m,h]=function(){let e,t,s,n,a,o=(0,r.c)(7),[c,d]=(0,l.useState)(i);return o[0]!==c?(e=()=>{localStorage.setItem("dev3000-dark-mode",JSON.stringify(c)),c?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")},t=[c],o[0]=c,o[1]=e,o[2]=t):(e=o[1],t=o[2]),(0,l.useEffect)(e,t),o[3]===Symbol.for("react.memo_cache_sentinel")?(s=()=>{let e=window.matchMedia("(prefers-color-scheme: dark)"),t=e=>{null===localStorage.getItem("dev3000-dark-mode")&&d(e.matches)};return e.addEventListener("change",t),()=>e.removeEventListener("change",t)},n=[],o[3]=s,o[4]=n):(s=o[3],n=o[4]),(0,l.useEffect)(s,n),o[5]!==c?(a=[c,d],o[5]=c,o[6]=a):a=o[6],a}(),[p,b]=(0,l.useState)((null==u?void 0:u.logs)||[]),[f,y]=(0,l.useState)((null==u?void 0:u.mode)||"tail");(0,l.useEffect)(()=>{let e=g.get("mode");e&&e!==f&&y(e)},[g,f]);let[v,j]=(0,l.useState)(!0),[N,k]=(0,l.useState)(!u),[w,S]=(0,l.useState)((null==u?void 0:u.logs.length)||0),[E,R]=(0,l.useState)(null),[C,T]=(0,l.useState)((null==u?void 0:u.logFiles)||[]),[O,I]=(0,l.useState)((null==u?void 0:u.currentLogFile)||""),[L,A]=(0,l.useState)(""),[B,W]=(0,l.useState)(!1),[_,H]=(0,l.useState)(!1),[M,F]=(0,l.useState)(!1),[V,P]=(0,l.useState)(!1),[U,z]=(0,l.useState)([]),[G,D]=(0,l.useState)(!1),[K,J]=(0,l.useState)({browser:!0,server:!0,interaction:!0,screenshot:!0}),[$,X]=(0,l.useState)({}),[Y,Z]=(0,l.useState)([]),Q=(0,l.useRef)(null),q=(0,l.useRef)(null),ee=(0,l.useRef)(null),et=(0,l.useRef)(null),er=(0,l.useRef)(null),es=(0,l.useRef)(!1),en=(0,l.useCallback)(async()=>{try{let e=await fetch("/api/logs/list");if(e.ok){let t=await e.json();T(t.files),I(t.currentFile),A(t.projectName)}}catch(e){console.error("Error loading available logs:",e)}},[]),el=(0,l.useCallback)(async()=>{if("tail"===f)try{let e=g.get("file"),t="",r=!0;if(e&&C.length>0){let s=C.find(t=>t.name===e);t=(null==s?void 0:s.path)||O,r=(null==s?void 0:s.isCurrent)!==!1}else t=O,r=!0;if(!r)return;let s=t?"/api/logs/tail?lines=50&logPath=".concat(encodeURIComponent(t)):"/api/logs/tail?lines=50",n=await fetch(s);if(!n.ok)throw Error("HTTP ".concat(n.status,": ").concat(n.statusText));let l=await n.json();if(!l.logs)return void console.warn("No logs data in response");let i=a(l.logs);if(i.length>w)if(v)R(new Date),Y.length>0?(b([...p,...Y,...i.slice(w)]),Z([])):b(i),S(i.length),es.current||setTimeout(()=>{var e;null==(e=Q.current)||e.scrollIntoView({behavior:"smooth"})},50);else{let e=i.slice(w);e.length>0&&(Z(t=>[...t,...e]),S(i.length))}}catch(e){console.error("Error polling logs:",e)}},[f,v,g,C,O,w,Y,p]);(0,l.useEffect)(()=>{if("tail"===f)return ee.current=setInterval(el,3e3),()=>{ee.current&&clearInterval(ee.current)};ee.current&&clearInterval(ee.current)},[f,el]);let ea=(0,l.useCallback)(async()=>{k(!0),await en();try{let e=g.get("file"),t="";if(e&&C.length>0){let r=C.find(t=>t.name===e);t=(null==r?void 0:r.path)||O}else t=O;let r=t?"/api/logs/".concat(f,"?lines=1000&logPath=").concat(encodeURIComponent(t)):"/api/logs/".concat(f,"?lines=1000"),s=await fetch(r);if(!s.ok)throw Error("HTTP ".concat(s.status,": ").concat(s.statusText));let n=await s.json();if(!n.logs){console.warn("No logs data in response"),b([]),k(!1);return}let l=a(n.logs);if(b(l),S(l.length),R(new Date),k(!1),"tail"===f&&!es.current){j(!0);let e=()=>{Q.current?Q.current.scrollIntoView({behavior:"auto"}):q.current&&(q.current.scrollTop=q.current.scrollHeight)};setTimeout(e,0),setTimeout(e,100)}}catch(e){console.error("Error loading logs:",e),b([])}},[en,g,C,O,f]);(0,l.useEffect)(()=>{g.get("mode");let e=(null==u?void 0:u.logs)&&(null==u?void 0:u.logs.length)>0;if(e||p.length)if(e&&0===p.length){if(b(u.logs),k(!1),"tail"===f&&!es.current){j(!0);let e=()=>{Q.current?Q.current.scrollIntoView({behavior:"auto"}):q.current&&(q.current.scrollTop=q.current.scrollHeight)};setTimeout(e,0),setTimeout(e,100),setTimeout(e,300)}}else"tail"===f&&v&&(k(!1),ee.current=setInterval(()=>{el()},3e3));else ea()},[f,null==u?void 0:u.logs,v,ea,p.length,el,g.get]),(0,l.useEffect)(()=>{p.length>0&&"tail"===f&&v&&!es.current&&setTimeout(()=>{Q.current?Q.current.scrollIntoView({behavior:"auto"}):q.current&&(q.current.scrollTop=q.current.scrollHeight)},0)},[p.length,f,v]),(0,l.useEffect)(()=>()=>{ee.current&&clearInterval(ee.current)},[]),(0,l.useEffect)(()=>{let e=e=>{et.current&&!et.current.contains(e.target)&&W(!1),er.current&&!er.current.contains(e.target)&&F(!1)};if(B||M)return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[B,M]);let ei=async()=>{if(O&&!G&&window.confirm("Clear logs and start fresh?\n\nThis will:\n• Archive the current log file\n• Start a new empty log file\n• Clear the current view\n\nThe archived logs will still be available in the dropdown.")){D(!0);try{let e=await fetch("/api/logs/rotate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({currentLogPath:O})});if(e.ok)b([]),S(0),R(null),await en(),await ea();else{let t=await e.json();console.error("Failed to rotate log:",t),alert("Failed to rotate log: ".concat(t.error))}}catch(e){console.error("Error rotating log:",e),alert("Error rotating log")}finally{D(!1)}}},eo=(0,l.useMemo)(()=>{let e=new Set;return p.forEach(t=>{"BROWSER"===t.source&&t.userAgent&&e.add(t.userAgent)}),Array.from(e).sort()},[p]);(0,l.useEffect)(()=>{eo.length>0&&X(e=>{let t={...e};return eo.forEach(e=>{e in t||(t[e]=!0)}),t})},[eo]);let ec=(0,l.useMemo)(()=>p.filter(e=>{let t=e.message.includes("[INTERACTION]"),r=e.message.includes("[SCREENSHOT]");if(t)return K.interaction;if(r)return K.screenshot;if("SERVER"===e.source)return K.server;if("BROWSER"===e.source){if(!K.browser)return!1;if(eo.length>0&&e.userAgent)return!1!==$[e.userAgent]}return!0}),[p,K,$,eo]);return(0,t.jsxs)("div",{className:"h-screen bg-gray-50 dark:bg-gray-900 flex flex-col transition-colors",children:[(0,t.jsx)("div",{className:"bg-white dark:bg-gray-800 shadow-sm border-b border-gray-200 dark:border-gray-700 flex-none z-10",children:(0,t.jsx)("div",{className:"max-w-7xl mx-auto px-4 py-3",children:(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 sm:gap-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[(0,t.jsx)("h1",{className:"text-xl sm:text-2xl font-bold text-gray-900 dark:text-white whitespace-nowrap",children:"dev3000"}),(0,t.jsxs)("span",{className:"text-xs text-gray-400 dark:text-gray-500 whitespace-nowrap",children:["(v",c,")"]})]}),C.length>1?(0,t.jsxs)("div",{className:"relative",ref:et,children:[(0,t.jsxs)("button",{type:"button",onClick:()=>W(!B),className:"flex items-center gap-2 px-3 py-1 text-sm text-gray-600 dark:text-gray-300 hover:text-gray-900 dark:hover:text-white hover:bg-gray-50 dark:hover:bg-gray-700 rounded-md transition-colors",children:[(0,t.jsx)("span",{className:"font-mono text-xs whitespace-nowrap",children:N&&!O?(0,t.jsx)("div",{className:"h-4 bg-gray-200 dark:bg-gray-700 rounded animate-pulse",style:{width:"220px"}}):O?(null==(s=C.find(e=>e.path===O))?void 0:s.isCurrent)?"d3k.log":O.split("/").pop():"d3k.log"}),(0,t.jsx)("svg",{className:"w-4 h-4 transition-transform ".concat(B?"rotate-180":""),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]}),B&&C.length>1&&(0,t.jsx)("div",{className:"absolute top-full left-0 mt-1 bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600 rounded-md shadow-lg z-20 min-w-80",children:(0,t.jsxs)("div",{className:"py-1 max-h-60 overflow-y-auto",children:[(0,t.jsxs)("div",{className:"px-3 py-2 text-xs font-medium text-gray-500 dark:text-gray-400 border-b border-gray-200 dark:border-gray-600",children:[L," logs (",C.length,")"]}),C.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>{W(!1),x.push("/logs?file=".concat(encodeURIComponent(e.name),"&mode=").concat(f))},className:"w-full text-left px-3 py-2 text-sm hover:bg-gray-50 flex items-center justify-between ".concat(e.isCurrent?"bg-blue-50 text-blue-900":"text-gray-700"),children:[(0,t.jsxs)("div",{className:"flex flex-col",children:[(0,t.jsx)("span",{className:"font-mono text-xs",children:e.name}),(0,t.jsxs)("span",{className:"text-xs text-gray-500",children:[new Date(e.mtime).toLocaleString()," • ",Math.round(e.size/1024),"KB"]})]}),e.isCurrent&&(0,t.jsx)("span",{className:"text-xs text-blue-600 font-medium",children:"current"})]},e.path))]})})]}):(0,t.jsx)("div",{className:"flex items-center gap-2",children:(0,t.jsx)("span",{className:"font-mono text-xs text-gray-600 px-3 py-1 whitespace-nowrap",children:N&&!O?(0,t.jsx)("div",{className:"h-4 bg-gray-200 rounded animate-pulse",style:{width:"220px"}}):O?(null==(o=C.find(e=>e.path===O))?void 0:o.isCurrent)?"d3k.log":O.split("/").pop():"d3k.log"})}),p.length>0&&(0,t.jsxs)("span",{className:"text-sm text-gray-500 hidden sm:inline",children:[p.length," entries"]}),Y.length>0&&!v&&(0,t.jsxs)("span",{className:"text-xs bg-blue-100 dark:bg-blue-900 text-blue-800 dark:text-blue-200 px-2 py-1 rounded-full",children:["+",Y.length," buffered"]}),O&&!N&&(0,t.jsx)("button",{type:"button",onClick:ei,disabled:G,className:"px-2 py-1 text-xs bg-orange-100 text-orange-700 hover:bg-orange-200 rounded transition-colors disabled:opacity-50 disabled:cursor-not-allowed",title:"Clear logs (rotate current log to archive and start fresh)",children:G?"...":"Clear"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[!1,(0,t.jsxs)("div",{className:"relative",ref:er,children:[(0,t.jsxs)("button",{type:"button",onClick:()=>F(!M),className:"flex items-center gap-1 px-3 py-1 rounded text-sm font-medium transition-colors whitespace-nowrap bg-gray-100 text-gray-700 hover:bg-gray-200",children:[(0,t.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M3 4a1 1 0 011-1h16a1 1 0 011 1v2.586a1 1 0 01-.293.707l-6.414 6.414a1 1 0 00-.293.707V17l-4 4v-6.586a1 1 0 00-.293-.707L3.293 7.293A1 1 0 013 6.586V4z"})}),"Filter"]}),M&&(0,t.jsx)("div",{className:"absolute top-full right-0 mt-1 bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-700 rounded-md shadow-lg z-20 min-w-48",children:(0,t.jsxs)("div",{className:"py-2",children:[(0,t.jsx)("div",{className:"px-3 py-2 text-xs font-medium text-gray-500 dark:text-gray-400 border-b border-gray-200 dark:border-gray-700",children:"Log Types"}),(0,t.jsxs)("label",{className:"flex items-center justify-between px-3 py-2 text-sm hover:bg-gray-50 dark:hover:bg-gray-700 cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:K.server,onChange:e=>J(t=>({...t,server:e.target.checked})),className:"rounded border-gray-300 text-blue-600 focus:ring-blue-500"}),(0,t.jsx)("span",{className:"text-gray-900 dark:text-gray-100",children:"Server"})]}),(0,t.jsx)("span",{className:"text-xs text-gray-400",children:p.filter(e=>"SERVER"===e.source).length})]}),(0,t.jsxs)("label",{className:"flex items-center justify-between px-3 py-2 text-sm hover:bg-gray-50 dark:hover:bg-gray-700 cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:K.browser,onChange:e=>J(t=>({...t,browser:e.target.checked})),className:"rounded border-gray-300 text-blue-600 focus:ring-blue-500"}),(0,t.jsx)("span",{className:"text-gray-900 dark:text-gray-100",children:"Browser"})]}),(0,t.jsx)("span",{className:"text-xs text-gray-400",children:p.filter(e=>"BROWSER"===e.source).length})]}),eo.length>1&&K.browser&&(0,t.jsx)("div",{className:"ml-6 border-l border-gray-200 dark:border-gray-600 pl-2",children:eo.map(e=>{let r=e.includes("Chrome")?"Chrome":e.includes("Firefox")?"Firefox":e.includes("Safari")?"Safari":e.includes("Edge")?"Edge":"Browser";return(0,t.jsxs)("label",{className:"flex items-center justify-between px-2 py-1 text-xs hover:bg-gray-50 dark:hover:bg-gray-700 cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:!1!==$[e],onChange:t=>X(r=>({...r,[e]:t.target.checked})),className:"rounded border-gray-300 text-blue-600 focus:ring-blue-500 w-3 h-3"}),(0,t.jsx)("span",{className:"text-gray-700 dark:text-gray-300",children:r})]}),(0,t.jsx)("span",{className:"text-xs text-gray-400",children:p.filter(t=>"BROWSER"===t.source&&t.userAgent===e).length})]},e)})}),(0,t.jsxs)("label",{className:"flex items-center justify-between px-3 py-2 text-sm hover:bg-gray-50 dark:hover:bg-gray-700 cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:K.interaction,onChange:e=>J(t=>({...t,interaction:e.target.checked})),className:"rounded border-gray-300 text-blue-600 focus:ring-blue-500"}),(0,t.jsx)("span",{className:"text-gray-900 dark:text-gray-100",children:"Interaction"})]}),(0,t.jsx)("span",{className:"text-xs text-gray-400",children:p.filter(e=>e.message.includes("[INTERACTION]")).length})]}),(0,t.jsxs)("label",{className:"flex items-center justify-between px-3 py-2 text-sm hover:bg-gray-50 dark:hover:bg-gray-700 cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:K.screenshot,onChange:e=>J(t=>({...t,screenshot:e.target.checked})),className:"rounded border-gray-300 text-blue-600 focus:ring-blue-500"}),(0,t.jsx)("span",{className:"text-gray-900 dark:text-gray-100",children:"Screenshot"})]}),(0,t.jsx)("span",{className:"text-xs text-gray-400",children:p.filter(e=>e.message.includes("[SCREENSHOT]")).length})]})]})})]}),(0,t.jsxs)("div",{className:"flex items-center bg-gray-100 rounded-md p-1",children:[(0,t.jsx)("button",{type:"button",onClick:()=>{let e=g.get("file");e?x.push("/logs?file=".concat(encodeURIComponent(e),"&mode=head")):x.push("/logs?mode=head")},className:"px-2 sm:px-3 py-1 rounded text-xs sm:text-sm font-medium transition-colors whitespace-nowrap ".concat("head"===f?"bg-white text-gray-900 shadow-sm":"text-gray-600 hover:text-gray-900"),children:"Head"}),(0,t.jsx)("button",{type:"button",onClick:()=>{let e=g.get("file");e?x.push("/logs?file=".concat(encodeURIComponent(e),"&mode=tail")):x.push("/logs?mode=tail")},className:"px-2 sm:px-3 py-1 rounded text-xs sm:text-sm font-medium transition-colors whitespace-nowrap ".concat("tail"===f?"bg-white text-gray-900 shadow-sm":"text-gray-600 hover:text-gray-900"),children:"Tail"})]}),(0,t.jsx)("button",{type:"button",onClick:()=>h(!m),className:"p-2 rounded-md text-gray-600 dark:text-gray-300 hover:text-gray-900 dark:hover:text-white hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors ml-2",title:m?"Switch to light mode":"Switch to dark mode",children:m?(0,t.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 11-8 0 4 4 0 018 0z"})}):(0,t.jsx)("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M20.354 15.354A9 9 0 018.646 3.646 9.003 9.003 0 0012 21a9.003 9.003 0 008.354-5.646z"})})})]})]})})}),(0,t.jsx)("div",{className:"flex-1 overflow-hidden",children:(0,t.jsx)("div",{ref:q,className:"max-w-7xl mx-auto px-4 py-6 h-full overflow-y-auto",onScroll:()=>{if(q.current){let{scrollTop:e,scrollHeight:t,clientHeight:r}=q.current,s=e+r>=t-10;v&&!s&&(es.current=!0),j(s)}},children:N?(0,t.jsxs)("div",{className:"text-center py-12",children:[(0,t.jsx)("div",{className:"inline-block animate-spin rounded-full h-8 w-8 border-b-2 border-blue-600"}),(0,t.jsx)("div",{className:"text-gray-500 text-sm mt-4",children:"Loading logs..."})]}):0===p.length?(0,t.jsxs)("div",{className:"text-center py-12",children:[(0,t.jsx)("div",{className:"text-gray-400 dark:text-gray-500 text-lg",children:"📝 No logs yet"}),(0,t.jsx)("div",{className:"text-gray-500 dark:text-gray-400 text-sm mt-2",children:"Logs will appear here as your development server runs"})]}):0===ec.length?(0,t.jsxs)("div",{className:"text-center py-12",children:[(0,t.jsx)("div",{className:"text-gray-400 dark:text-gray-500 text-lg",children:"🔍 No logs match current filters"}),(0,t.jsx)("div",{className:"text-gray-500 dark:text-gray-400 text-sm mt-2",children:"Try adjusting your filter settings to see more logs"})]}):(0,t.jsxs)("div",{className:"space-y-1 pb-4",children:[ec.map((e,r)=>(0,t.jsx)(d,{entry:e},"".concat(e.timestamp,"-").concat(r))),(0,t.jsx)("div",{ref:Q})]})})}),(0,t.jsx)("div",{className:"border-t border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-800 flex-none",children:(0,t.jsxs)("div",{className:"max-w-7xl mx-auto px-4 py-3 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[E&&(0,t.jsxs)("span",{className:"text-xs text-gray-400 dark:text-gray-500 font-mono",children:["Last updated ",E.toLocaleTimeString()]}),O&&(0,t.jsx)("a",{href:"file://".concat(O),target:"_blank",rel:"noopener noreferrer",className:"text-xs text-blue-600 hover:text-blue-800 flex items-center gap-1",children:"Raw Log ↗"})]}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1 text-green-600 ".concat("tail"===f&&v?"visible":"invisible"),children:[(0,t.jsx)("div",{className:"w-2 h-2 bg-green-500 rounded-full animate-pulse"}),(0,t.jsx)("span",{className:"text-xs",children:"Live"})]}),(0,t.jsx)("button",{type:"button",onClick:()=>{var e;es.current=!1,Y.length>0&&(b(e=>[...e,...Y]),Z([]),R(new Date)),null==(e=Q.current)||e.scrollIntoView({behavior:"smooth"})},className:"absolute top-0 right-0 flex items-center gap-1 px-2 py-0.5 bg-blue-600 text-white rounded text-xs hover:bg-blue-700 whitespace-nowrap ".concat("tail"!==f||v?"invisible":"visible"),children:"↓ Live"})]})]})})]})}e.s(["default",()=>m],73853)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,25137,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"HandleISRError",{enumerable:!0,get:function(){return o}});let n="undefined"==typeof window?e.r(72536).workAsyncStorage:void 0;function o(e){let{error:t}=e;if(n){let e=n.getStore();if((null==e?void 0:e.isRevalidate)||(null==e?void 0:e.isStaticGeneration))throw t&&console.error(t),t}return null}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},30344,(e,t,r)=>{!function(){var e={229:function(e){var t,r,n,o=e.exports={};function i(){throw Error("setTimeout has not been defined")}function u(){throw Error("clearTimeout has not been defined")}try{t="function"==typeof setTimeout?setTimeout:i}catch(e){t=i}try{r="function"==typeof clearTimeout?clearTimeout:u}catch(e){r=u}function s(e){if(t===setTimeout)return setTimeout(e,0);if((t===i||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}var c=[],a=!1,l=-1;function f(){a&&n&&(a=!1,n.length?c=n.concat(c):l=-1,c.length&&p())}function p(){if(!a){var e=s(f);a=!0;for(var t=c.length;t;){for(n=c,c=[];++l<t;)n&&n[l].run();l=-1,t=c.length}n=null,a=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===u||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function d(e,t){this.fun=e,this.array=t}function y(){}o.nextTick=function(e){var t=Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];c.push(new d(e,t)),1!==c.length||a||s(p)},d.prototype.run=function(){this.fun.apply(null,this.array)},o.title="browser",o.browser=!0,o.env={},o.argv=[],o.version="",o.versions={},o.on=y,o.addListener=y,o.once=y,o.off=y,o.removeListener=y,o.removeAllListeners=y,o.emit=y,o.prependListener=y,o.prependOnceListener=y,o.listeners=function(e){return[]},o.binding=function(e){throw Error("process.binding is not supported")},o.cwd=function(){return"/"},o.chdir=function(e){throw Error("process.chdir is not supported")},o.umask=function(){return 0}}},r={};function n(t){var o=r[t];if(void 0!==o)return o.exports;var i=r[t]={exports:{}},u=!0;try{e[t](i,i.exports,n),u=!1}finally{u&&delete r[t]}return i.exports}n.ab="/ROOT/node_modules/.pnpm/next@15.5.1-canary.30_babel-plugin-react-compiler@19.1.0-rc.3_react-dom@19.2.0-canary-d_5eea965284f26eb4e30482e6426df099/node_modules/next/dist/compiled/process/",t.exports=n(229)}()},95834,(e,t,r)=>{"use strict";var n,o;t.exports=(null==(n=e.g.process)?void 0:n.env)&&"object"==typeof(null==(o=e.g.process)?void 0:o.env)?e.g.process:e.r(30344)},12643,(e,t,r)=>{"use strict";var n=Symbol.for("react.transitional.element");function o(e,t,r){var o=null;if(void 0!==r&&(o=""+r),void 0!==t.key&&(o=""+t.key),"key"in t)for(var i in r={},t)"key"!==i&&(r[i]=t[i]);else r=t;return{$$typeof:n,type:e,key:o,ref:void 0!==(t=r.ref)?t:null,props:r}}r.Fragment=Symbol.for("react.fragment"),r.jsx=o,r.jsxs=o},10664,(e,t,r)=>{"use strict";t.exports=e.r(12643)},45232,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(r,{bindSnapshot:function(){return s},createAsyncLocalStorage:function(){return u},createSnapshot:function(){return c}});let n=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class o{disable(){throw n}getStore(){}run(){throw n}exit(){throw n}enterWith(){throw n}static bind(e){return e}}let i="undefined"!=typeof globalThis&&globalThis.AsyncLocalStorage;function u(){return i?new i:new o}function s(e){return i?i.bind(e):o.bind(e)}function c(){return i?i.snapshot():function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return e(...r)}}},86716,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,e.r(45232).createAsyncLocalStorage)()},72536,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorage",{enumerable:!0,get:function(){return n.workAsyncStorageInstance}});let n=e.r(86716)},81258,(e,t,r)=>{"use strict";r._=function(e){return e&&e.__esModule?e:{default:e}}},44066,(e,t,r)=>{"use strict";function n(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(n=function(e){return e?r:t})(e)}r._=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var r=n(t);if(r&&r.has(e))return r.get(e);var o={__proto__:null},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var s=i?Object.getOwnPropertyDescriptor(e,u):null;s&&(s.get||s.set)?Object.defineProperty(o,u,s):o[u]=e[u]}return o.default=e,r&&r.set(e,o),o}},91632,(e,t,r)=>{"use strict";var n=e.i(95834),o=Symbol.for("react.transitional.element"),i=Symbol.for("react.portal"),u=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),c=Symbol.for("react.profiler"),a=Symbol.for("react.consumer"),l=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),p=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),h=Symbol.iterator,g={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,v={};function m(e,t,r){this.props=e,this.context=t,this.refs=v,this.updater=r||g}function b(){}function S(e,t,r){this.props=e,this.context=t,this.refs=v,this.updater=r||g}m.prototype.isReactComponent={},m.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},m.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=m.prototype;var O=S.prototype=new b;O.constructor=S,_(O,m.prototype),O.isPureReactComponent=!0;var E=Array.isArray;function j(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function x(e,t,r){var n=r.ref;return{$$typeof:o,type:e,key:t,ref:void 0!==n?n:null,props:r}}function R(e){return"object"==typeof e&&null!==e&&e.$$typeof===o}var P=/\/+/g;function A(e,t){var r,n;return"object"==typeof e&&null!==e&&null!=e.key?(r=""+e.key,n={"=":"=0",":":"=2"},"$"+r.replace(/[=:]/g,function(e){return n[e]})):t.toString(36)}function C(e,t,r){if(null==e)return e;var n=[],u=0;return!function e(t,r,n,u,s){var c,a,l,f=typeof t;("undefined"===f||"boolean"===f)&&(t=null);var p=!1;if(null===t)p=!0;else switch(f){case"bigint":case"string":case"number":p=!0;break;case"object":switch(t.$$typeof){case o:case i:p=!0;break;case y:return e((p=t._init)(t._payload),r,n,u,s)}}if(p)return s=s(t),p=""===u?"."+A(t,0):u,E(s)?(n="",null!=p&&(n=p.replace(P,"$&/")+"/"),e(s,r,n,"",function(e){return e})):null!=s&&(R(s)&&(c=s,a=n+(null==s.key||t&&t.key===s.key?"":(""+s.key).replace(P,"$&/")+"/")+p,s=x(c.type,a,c.props)),r.push(s)),1;p=0;var d=""===u?".":u+":";if(E(t))for(var g=0;g<t.length;g++)f=d+A(u=t[g],g),p+=e(u,r,n,f,s);else if("function"==typeof(g=null===(l=t)||"object"!=typeof l?null:"function"==typeof(l=h&&l[h]||l["@@iterator"])?l:null))for(t=g.call(t),g=0;!(u=t.next()).done;)f=d+A(u=u.value,g++),p+=e(u,r,n,f,s);else if("object"===f){if("function"==typeof t.then)return e(function(e){switch(e.status){case"fulfilled":return e.value;case"rejected":throw e.reason;default:switch("string"==typeof e.status?e.then(j,j):(e.status="pending",e.then(function(t){"pending"===e.status&&(e.status="fulfilled",e.value=t)},function(t){"pending"===e.status&&(e.status="rejected",e.reason=t)})),e.status){case"fulfilled":return e.value;case"rejected":throw e.reason}}throw e}(t),r,n,u,s);throw Error("Objects are not valid as a React child (found: "+("[object Object]"===(r=String(t))?"object with keys {"+Object.keys(t).join(", ")+"}":r)+"). If you meant to render a collection of children, use an array instead.")}return p}(e,n,"","",function(e){return t.call(r,e,u++)}),n}function k(e){if(-1===e._status){var t=e._result;(t=t()).then(function(t){(0===e._status||-1===e._status)&&(e._status=1,e._result=t)},function(t){(0===e._status||-1===e._status)&&(e._status=2,e._result=t)}),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var H="function"==typeof reportError?reportError:function(e){if("object"==typeof window&&"function"==typeof window.ErrorEvent){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"==typeof e&&null!==e&&"string"==typeof e.message?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if("object"==typeof n.default&&"function"==typeof n.default.emit)return void n.default.emit("uncaughtException",e);console.error(e)};r.Children={map:C,forEach:function(e,t,r){C(e,function(){t.apply(this,arguments)},r)},count:function(e){var t=0;return C(e,function(){t++}),t},toArray:function(e){return C(e,function(e){return e})||[]},only:function(e){if(!R(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},r.Component=m,r.Fragment=u,r.Profiler=c,r.PureComponent=S,r.StrictMode=s,r.Suspense=p,r.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,r.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},r.cache=function(e){return function(){return e.apply(null,arguments)}},r.cacheSignal=function(){return null},r.cloneElement=function(e,t,r){if(null==e)throw Error("The argument must be a React element, but you passed "+e+".");var n=_({},e.props),o=e.key;if(null!=t)for(i in void 0!==t.key&&(o=""+t.key),t)T.call(t,i)&&"key"!==i&&"__self"!==i&&"__source"!==i&&("ref"!==i||void 0!==t.ref)&&(n[i]=t[i]);var i=arguments.length-2;if(1===i)n.children=r;else if(1<i){for(var u=Array(i),s=0;s<i;s++)u[s]=arguments[s+2];n.children=u}return x(e.type,o,n)},r.createContext=function(e){return(e={$$typeof:l,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider=e,e.Consumer={$$typeof:a,_context:e},e},r.createElement=function(e,t,r){var n,o={},i=null;if(null!=t)for(n in void 0!==t.key&&(i=""+t.key),t)T.call(t,n)&&"key"!==n&&"__self"!==n&&"__source"!==n&&(o[n]=t[n]);var u=arguments.length-2;if(1===u)o.children=r;else if(1<u){for(var s=Array(u),c=0;c<u;c++)s[c]=arguments[c+2];o.children=s}if(e&&e.defaultProps)for(n in u=e.defaultProps)void 0===o[n]&&(o[n]=u[n]);return x(e,i,o)},r.createRef=function(){return{current:null}},r.forwardRef=function(e){return{$$typeof:f,render:e}},r.isValidElement=R,r.lazy=function(e){return{$$typeof:y,_payload:{_status:-1,_result:e},_init:k}},r.memo=function(e,t){return{$$typeof:d,type:e,compare:void 0===t?null:t}},r.startTransition=function(e){var t=w.T,r={};w.T=r;try{var n=e(),o=w.S;null!==o&&o(r,n),"object"==typeof n&&null!==n&&"function"==typeof n.then&&n.then(j,H)}catch(e){H(e)}finally{null!==t&&null!==r.types&&(t.types=r.types),w.T=t}},r.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},r.use=function(e){return w.H.use(e)},r.useActionState=function(e,t,r){return w.H.useActionState(e,t,r)},r.useCallback=function(e,t){return w.H.useCallback(e,t)},r.useContext=function(e){return w.H.useContext(e)},r.useDebugValue=function(){},r.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},r.useEffect=function(e,t){return w.H.useEffect(e,t)},r.useId=function(){return w.H.useId()},r.useImperativeHandle=function(e,t,r){return w.H.useImperativeHandle(e,t,r)},r.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},r.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},r.useMemo=function(e,t){return w.H.useMemo(e,t)},r.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},r.useReducer=function(e,t,r){return w.H.useReducer(e,t,r)},r.useRef=function(e){return w.H.useRef(e)},r.useState=function(e){return w.H.useState(e)},r.useSyncExternalStore=function(e,t,r){return w.H.useSyncExternalStore(e,t,r)},r.useTransition=function(){return w.H.useTransition()},r.version="19.2.0-canary-b9a04536-20250904"},86464,(e,t,r)=>{"use strict";t.exports=e.r(91632)},42484,(e,t,r)=>{"use strict";var n=e.r(86464);function o(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var r=2;r<arguments.length;r++)t+="&args[]="+encodeURIComponent(arguments[r])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function i(){}var u={d:{f:i,r:function(){throw Error(o(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},s=Symbol.for("react.portal"),c=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function a(e,t){return"font"===e?"":"string"==typeof t?"use-credentials"===t?t:"":void 0}r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=u,r.createPortal=function(e,t){var r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!t||1!==t.nodeType&&9!==t.nodeType&&11!==t.nodeType)throw Error(o(299));return function(e,t,r){var n=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:s,key:null==n?null:""+n,children:e,containerInfo:t,implementation:r}}(e,t,null,r)},r.flushSync=function(e){var t=c.T,r=u.p;try{if(c.T=null,u.p=2,e)return e()}finally{c.T=t,u.p=r,u.d.f()}},r.preconnect=function(e,t){"string"==typeof e&&(t=t?"string"==typeof(t=t.crossOrigin)?"use-credentials"===t?t:"":void 0:null,u.d.C(e,t))},r.prefetchDNS=function(e){"string"==typeof e&&u.d.D(e)},r.preinit=function(e,t){if("string"==typeof e&&t&&"string"==typeof t.as){var r=t.as,n=a(r,t.crossOrigin),o="string"==typeof t.integrity?t.integrity:void 0,i="string"==typeof t.fetchPriority?t.fetchPriority:void 0;"style"===r?u.d.S(e,"string"==typeof t.precedence?t.precedence:void 0,{crossOrigin:n,integrity:o,fetchPriority:i}):"script"===r&&u.d.X(e,{crossOrigin:n,integrity:o,fetchPriority:i,nonce:"string"==typeof t.nonce?t.nonce:void 0})}},r.preinitModule=function(e,t){if("string"==typeof e)if("object"==typeof t&&null!==t){if(null==t.as||"script"===t.as){var r=a(t.as,t.crossOrigin);u.d.M(e,{crossOrigin:r,integrity:"string"==typeof t.integrity?t.integrity:void 0,nonce:"string"==typeof t.nonce?t.nonce:void 0})}}else null==t&&u.d.M(e)},r.preload=function(e,t){if("string"==typeof e&&"object"==typeof t&&null!==t&&"string"==typeof t.as){var r=t.as,n=a(r,t.crossOrigin);u.d.L(e,r,{crossOrigin:n,integrity:"string"==typeof t.integrity?t.integrity:void 0,nonce:"string"==typeof t.nonce?t.nonce:void 0,type:"string"==typeof t.type?t.type:void 0,fetchPriority:"string"==typeof t.fetchPriority?t.fetchPriority:void 0,referrerPolicy:"string"==typeof t.referrerPolicy?t.referrerPolicy:void 0,imageSrcSet:"string"==typeof t.imageSrcSet?t.imageSrcSet:void 0,imageSizes:"string"==typeof t.imageSizes?t.imageSizes:void 0,media:"string"==typeof t.media?t.media:void 0})}},r.preloadModule=function(e,t){if("string"==typeof e)if(t){var r=a(t.as,t.crossOrigin);u.d.m(e,{as:"string"==typeof t.as&&"script"!==t.as?t.as:void 0,crossOrigin:r,integrity:"string"==typeof t.integrity?t.integrity:void 0})}else u.d.m(e)},r.requestFormReset=function(e){u.d.r(e)},r.unstable_batchedUpdates=function(e,t){return e(t)},r.useFormState=function(e,t,r){return c.H.useFormState(e,t,r)},r.useFormStatus=function(){return c.H.useHostTransitionStatus()},r.version="19.2.0-canary-b9a04536-20250904"},59850,(e,t,r)=>{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),t.exports=e.r(42484)},57588,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return u}});let n=e.r(10664),o=e.r(25137),i={error:{fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},text:{fontSize:"14px",fontWeight:400,lineHeight:"28px",margin:"0 8px"}},u=function(e){let{error:t}=e,r=null==t?void 0:t.digest;return(0,n.jsxs)("html",{id:"__next_error__",children:[(0,n.jsx)("head",{}),(0,n.jsxs)("body",{children:[(0,n.jsx)(o.HandleISRError,{error:t}),(0,n.jsx)("div",{style:i.error,children:(0,n.jsxs)("div",{children:[(0,n.jsxs)("h2",{style:i.text,children:["Application error: a ",r?"server":"client","-side exception has occurred while loading ",window.location.hostname," (see the"," ",r?"server logs":"browser console"," for more information)."]}),r?(0,n.jsx)("p",{style:i.text,children:"Digest: "+r}):null]})})]})]})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},8010,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"HeadManagerContext",{enumerable:!0,get:function(){return n}});let n=e.r(81258)._(e.r(86464)).default.createContext({})}]);
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,{otherChunks:["static/chunks/
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,{otherChunks:["static/chunks/f7331e11d1cb0264.js","static/chunks/605beb21d5c11807.js","static/chunks/3df53cad6e742c25.js","static/chunks/14ca28aed9ba7e16.js"],runtimeModuleIds:[75883]}]),(()=>{let e;if(!Array.isArray(globalThis.TURBOPACK))return;let t="/_next/",r=new WeakMap;function n(e,t){this.m=e,this.e=t}let o=n.prototype,l=Object.prototype.hasOwnProperty,i="undefined"!=typeof Symbol&&Symbol.toStringTag;function s(e,t,r){l.call(e,t)||Object.defineProperty(e,t,r)}function u(e,t){let r=e[t];return r||(r=a(t),e[t]=r),r}function a(e){return{exports:{},error:void 0,id:e,namespaceObject:void 0}}function c(e,t){s(e,"__esModule",{value:!0}),i&&s(e,i,{value:"Module"});let r=0;for(;r<t.length;){let n=t[r++],o=t[r++];if("number"==typeof o)if(0===o)s(e,n,{value:t[r++],enumerable:!0,writable:!1});else throw Error(`unexpected tag: ${o}`);else"function"==typeof t[r]?s(e,n,{get:o,set:t[r++],enumerable:!0}):s(e,n,{get:o,enumerable:!0})}Object.seal(e)}o.s=function(e,t){let r,n;null!=t?n=(r=u(this.c,t)).exports:(r=this.m,n=this.e),r.namespaceObject=n,c(n,e)},o.j=function(e,t){var n,o;let i,s,a;null!=t?s=(i=u(this.c,t)).exports:(i=this.m,s=this.e);let c=(n=i,o=s,(a=r.get(n))||(r.set(n,a=[]),n.exports=n.namespaceObject=new Proxy(o,{get(e,t){if(l.call(e,t)||"default"===t||"__esModule"===t)return Reflect.get(e,t);for(let e of a){let r=Reflect.get(e,t);if(void 0!==r)return r}},ownKeys(e){let t=Reflect.ownKeys(e);for(let e of a)for(let r of Reflect.ownKeys(e))"default"===r||t.includes(r)||t.push(r);return t}})),a);"object"==typeof e&&null!==e&&c.push(e)},o.v=function(e,t){(null!=t?u(this.c,t):this.m).exports=e},o.n=function(e,t){let r;(r=null!=t?u(this.c,t):this.m).exports=r.namespaceObject=e};let f=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,p=[null,f({}),f([]),f(f)];function h(e,t,r){let n=[],o=-1;for(let t=e;("object"==typeof t||"function"==typeof t)&&!p.includes(t);t=f(t))for(let r of Object.getOwnPropertyNames(t))n.push(r,function(e,t){return()=>e[t]}(e,r)),-1===o&&"default"===r&&(o=n.length-1);return r&&o>=0||(o>=0?n.splice(o,1,0,e):n.push("default",0,e)),c(t,n),t}function d(e){let t=M(e,this.m);if(t.namespaceObject)return t.namespaceObject;let r=t.exports;return t.namespaceObject=h(r,"function"==typeof r?function(...e){return r.apply(this,e)}:Object.create(null),r&&r.__esModule)}function m(){let e,t;return{promise:new Promise((r,n)=>{t=n,e=r}),resolve:e,reject:t}}o.i=d,o.A=function(e){return this.r(e)(d.bind(this))},o.t="function"==typeof require?require:function(){throw Error("Unexpected use of runtime require")},o.r=function(e){return M(e,this.m).exports},o.f=function(e){function t(t){if(l.call(e,t))return e[t].module();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r}return t.keys=()=>Object.keys(e),t.resolve=t=>{if(l.call(e,t))return e[t].id();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r},t.import=async e=>await t(e),t};let b=Symbol("turbopack queues"),y=Symbol("turbopack exports"),O=Symbol("turbopack error");function g(e){e&&1!==e.status&&(e.status=1,e.forEach(e=>e.queueCount--),e.forEach(e=>e.queueCount--?e.queueCount++:e()))}o.a=function(e,t){let r=this.m,n=t?Object.assign([],{status:-1}):void 0,o=new Set,{resolve:l,reject:i,promise:s}=m(),u=Object.assign(s,{[y]:r.exports,[b]:e=>{n&&e(n),o.forEach(e),u.catch(()=>{})}}),a={get:()=>u,set(e){e!==u&&(u[y]=e)}};Object.defineProperty(r,"exports",a),Object.defineProperty(r,"namespaceObject",a),e(function(e){let t=e.map(e=>{if(null!==e&&"object"==typeof e){if(b in e)return e;if(null!=e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then){let t=Object.assign([],{status:0}),r={[y]:{},[b]:e=>e(t)};return e.then(e=>{r[y]=e,g(t)},e=>{r[O]=e,g(t)}),r}}return{[y]:e,[b]:()=>{}}}),r=()=>t.map(e=>{if(e[O])throw e[O];return e[y]}),{promise:l,resolve:i}=m(),s=Object.assign(()=>i(r),{queueCount:0});function u(e){e!==n&&!o.has(e)&&(o.add(e),e&&0===e.status&&(s.queueCount++,e.push(s)))}return t.map(e=>e[b](u)),s.queueCount?l:r()},function(e){e?i(u[O]=e):l(u[y]),g(n)}),n&&-1===n.status&&(n.status=0)};let w=function(e){let t=new URL(e,"x:/"),r={};for(let e in t)r[e]=t[e];for(let t in r.href=e,r.pathname=e.replace(/[?#].*/,""),r.origin=r.protocol="",r.toString=r.toJSON=(...t)=>e,r)Object.defineProperty(this,t,{enumerable:!0,configurable:!0,value:r[t]})};function R(e,t){throw Error(`Invariant: ${t(e)}`)}w.prototype=URL.prototype,o.U=w,o.z=function(e){throw Error("dynamic usage of require is not supported")},o.g=globalThis;let j=n.prototype;var C=function(e){return e[e.Runtime=0]="Runtime",e[e.Parent=1]="Parent",e[e.Update=2]="Update",e}(C||{});let _=new Map;o.M=_;let U=new Map,k=new Map;async function v(e,t,r){let n;if("string"==typeof r)return T(e,t,A(r));let o=r.included||[],l=o.map(e=>!!_.has(e)||U.get(e));if(l.length>0&&l.every(e=>e))return void await Promise.all(l);let i=r.moduleChunks||[],s=i.map(e=>k.get(e)).filter(e=>e);if(s.length>0){if(s.length===i.length)return void await Promise.all(s);let r=new Set;for(let e of i)k.has(e)||r.add(e);for(let n of r){let r=T(e,t,A(n));k.set(n,r),s.push(r)}n=Promise.all(s)}else{for(let o of(n=T(e,t,A(r.path)),i))k.has(o)||k.set(o,n)}for(let e of o)U.has(e)||U.set(e,n);await n}j.l=function(e){return v(1,this.m.id,e)};let P=Promise.resolve(void 0),$=new WeakMap;function T(t,r,n){let o=e.loadChunkCached(t,n),l=$.get(o);if(void 0===l){let e=$.set.bind($,o,P);l=o.then(e).catch(e=>{let o;switch(t){case 0:o=`as a runtime dependency of chunk ${r}`;break;case 1:o=`from module ${r}`;break;case 2:o="from an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}throw Error(`Failed to load chunk ${n} ${o}${e?`: ${e}`:""}`,e?{cause:e}:void 0)}),$.set(o,l)}return l}function A(e){return`${t}${e.split("/").map(e=>encodeURIComponent(e)).join("/")}`}j.L=function(e){return T(1,this.m.id,e)},j.R=function(e){let t=this.r(e);return t?.default??t},j.P=function(e){return`/ROOT/${e??""}`},j.b=function(e){let t=new Blob([`self.TURBOPACK_WORKER_LOCATION = ${JSON.stringify(location.origin)};
|
|
2
2
|
self.TURBOPACK_NEXT_CHUNK_URLS = ${JSON.stringify(e.reverse().map(A),null,2)};
|
|
3
3
|
importScripts(...self.TURBOPACK_NEXT_CHUNK_URLS.map(c => self.TURBOPACK_WORKER_LOCATION + c).reverse());`],{type:"text/javascript"});return URL.createObjectURL(t)};let S=/\.js(?:\?[^#]*)?(?:#.*)?$/,E=/\.css(?:\?[^#]*)?(?:#.*)?$/;function K(e){return E.test(e)}o.w=function(t,r,n){return e.loadWebAssembly(1,this.m.id,t,r,n)},o.u=function(t,r){return e.loadWebAssemblyModule(1,this.m.id,t,r)};let x={};o.c=x;let M=(e,t)=>{let r=x[e];if(r){if(r.error)throw r.error;return r}return N(e,C.Parent,t.id)};function N(e,t,r){let o=_.get(e);"function"!=typeof o&&function(e,t,r){let n;switch(t){case 0:n=`as a runtime entry of chunk ${r}`;break;case 1:n=`because it was required from module ${r}`;break;case 2:n="because of an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}throw Error(`Module ${e} was instantiated ${n}, but the module factory is not available. It might have been deleted in an HMR update.`)}(e,t,r);let l=a(e),i=l.exports;x[e]=l;let s=new n(l,i);try{o(s,l,i)}catch(e){throw l.error=e,e}return l.namespaceObject&&l.exports!==l.namespaceObject&&h(l.exports,l.namespaceObject),l}function L(r){let n,o=function(e){if("string"==typeof e)return e;let r=decodeURIComponent(("undefined"!=typeof TURBOPACK_NEXT_CHUNK_URLS?TURBOPACK_NEXT_CHUNK_URLS.pop():e.getAttribute("src")).replace(/[?#].*$/,""));return r.startsWith(t)?r.slice(t.length):r}(r[0]);return 2===r.length?n=r[1]:(n=void 0,!function(e,t,r,n){let o=1;for(;o<e.length;){let t=e[o],n=o+1;for(;n<e.length&&"function"!=typeof e[n];)n++;if(n===e.length)throw Error("malformed chunk format, expected a factory function");if(!r.has(t)){let l=e[n];for(Object.defineProperty(l,"name",{value:"__TURBOPACK__module__evaluation__"});o<n;o++)t=e[o],r.set(t,l)}o=n+1}}(r,0,_)),e.registerChunk(o,n)}let B=new Map;(()=>{function t(e){let t=B.get(e);if(!t){let r,n;t={resolved:!1,loadingStarted:!1,promise:new Promise((e,t)=>{r=e,n=t}),resolve:()=>{t.resolved=!0,r()},reject:n},B.set(e,t)}return t}e={async registerChunk(e,r){if(t(A(e)).resolve(),null!=r){for(let e of r.otherChunks)t(A("string"==typeof e?e:e.path));if(await Promise.all(r.otherChunks.map(t=>v(0,e,t))),r.runtimeModuleIds.length>0)for(let t of r.runtimeModuleIds)!function(e,t){let r=x[t];if(r){if(r.error)throw r.error;return}N(t,C.Runtime,e)}(e,t)}},loadChunkCached:(e,r)=>(function(e,r){let n=t(r);if(n.loadingStarted)return n.promise;if(e===C.Runtime)return n.loadingStarted=!0,K(r)&&n.resolve(),n.promise;if("function"==typeof importScripts)if(K(r));else if(S.test(r))self.TURBOPACK_NEXT_CHUNK_URLS.push(r),importScripts(TURBOPACK_WORKER_LOCATION+r);else throw Error(`can't infer type of chunk from URL ${r} in worker`);else{let e=decodeURI(r);if(K(r))if(document.querySelectorAll(`link[rel=stylesheet][href="${r}"],link[rel=stylesheet][href^="${r}?"],link[rel=stylesheet][href="${e}"],link[rel=stylesheet][href^="${e}?"]`).length>0)n.resolve();else{let e=document.createElement("link");e.rel="stylesheet",e.href=r,e.onerror=()=>{n.reject()},e.onload=()=>{n.resolve()},document.head.appendChild(e)}else if(S.test(r)){let t=document.querySelectorAll(`script[src="${r}"],script[src^="${r}?"],script[src="${e}"],script[src^="${e}?"]`);if(t.length>0)for(let e of Array.from(t))e.addEventListener("error",()=>{n.reject()});else{let e=document.createElement("script");e.src=r,e.onerror=()=>{n.reject()},document.head.appendChild(e)}}else throw Error(`can't infer type of chunk from URL ${r}`)}return n.loadingStarted=!0,n.promise})(e,r),async loadWebAssembly(e,t,r,n,o){let l=fetch(A(r)),{instance:i}=await WebAssembly.instantiateStreaming(l,o);return i.exports},async loadWebAssemblyModule(e,t,r,n){let o=fetch(A(r));return await WebAssembly.compileStreaming(o)}}})();let q=globalThis.TURBOPACK;globalThis.TURBOPACK={push:L},q.forEach(L)})();
|
package/mcp-server/.next/trace
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"generate-buildid","duration":
|
|
1
|
+
[{"name":"generate-buildid","duration":86,"timestamp":471033506439,"id":4,"parentId":1,"tags":{},"startTime":1757606803955,"traceId":"a4f992ed457600f8"},{"name":"load-custom-routes","duration":108,"timestamp":471033506557,"id":5,"parentId":1,"tags":{},"startTime":1757606803955,"traceId":"a4f992ed457600f8"},{"name":"create-dist-dir","duration":419,"timestamp":471033525358,"id":6,"parentId":1,"tags":{},"startTime":1757606803974,"traceId":"a4f992ed457600f8"},{"name":"create-pages-mapping","duration":92,"timestamp":471033637627,"id":7,"parentId":1,"tags":{},"startTime":1757606804086,"traceId":"a4f992ed457600f8"},{"name":"collect-app-files","duration":1273,"timestamp":471033637745,"id":8,"parentId":1,"tags":{},"startTime":1757606804086,"traceId":"a4f992ed457600f8"},{"name":"create-app-mapping","duration":881,"timestamp":471033639030,"id":9,"parentId":1,"tags":{},"startTime":1757606804088,"traceId":"a4f992ed457600f8"},{"name":"create-app-layouts","duration":60,"timestamp":471033639924,"id":10,"parentId":1,"tags":{},"startTime":1757606804088,"traceId":"a4f992ed457600f8"},{"name":"collect-default-files","duration":400,"timestamp":471033640444,"id":12,"parentId":1,"tags":{},"startTime":1757606804089,"traceId":"a4f992ed457600f8"},{"name":"generate-route-types","duration":7561,"timestamp":471033640135,"id":11,"parentId":1,"tags":{},"startTime":1757606804089,"traceId":"a4f992ed457600f8"},{"name":"public-dir-conflict-check","duration":39,"timestamp":471033647767,"id":13,"parentId":1,"tags":{},"startTime":1757606804096,"traceId":"a4f992ed457600f8"},{"name":"generate-routes-manifest","duration":789,"timestamp":471033647844,"id":14,"parentId":1,"tags":{},"startTime":1757606804096,"traceId":"a4f992ed457600f8"},{"name":"run-turbopack-compiler","duration":2646710,"timestamp":471033650384,"id":16,"parentId":1,"tags":{},"startTime":1757606804099,"traceId":"a4f992ed457600f8"},{"name":"verify-typescript-setup","duration":1251824,"timestamp":471036301290,"id":18,"parentId":1,"tags":{},"startTime":1757606806750,"traceId":"a4f992ed457600f8"},{"name":"check-static-error-page","duration":992,"timestamp":471037560868,"id":21,"parentId":20,"tags":{},"startTime":1757606808009,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":128380,"timestamp":471037584721,"id":43,"parentId":23,"tags":{},"startTime":1757606808033,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":129963,"timestamp":471037583221,"id":23,"parentId":20,"tags":{"page":"/_global-error"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":141508,"timestamp":471037584289,"id":36,"parentId":24,"tags":{},"startTime":1757606808033,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":142560,"timestamp":471037583266,"id":24,"parentId":20,"tags":{"page":"/api/config"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":142211,"timestamp":471037584502,"id":39,"parentId":28,"tags":{},"startTime":1757606808033,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":143424,"timestamp":471037583304,"id":28,"parentId":20,"tags":{"page":"/api/logs/rotate"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":144407,"timestamp":471037584979,"id":45,"parentId":29,"tags":{},"startTime":1757606808034,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":146106,"timestamp":471037583310,"id":29,"parentId":20,"tags":{"page":"/api/logs/stream"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":145318,"timestamp":471037584473,"id":38,"parentId":25,"tags":{},"startTime":1757606808033,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":146522,"timestamp":471037583282,"id":25,"parentId":20,"tags":{"page":"/api/logs/append"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":147130,"timestamp":471037585462,"id":46,"parentId":22,"tags":{},"startTime":1757606808034,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":149725,"timestamp":471037582885,"id":22,"parentId":20,"tags":{"page":"/_not-found"},"startTime":1757606808031,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":149389,"timestamp":471037584764,"id":44,"parentId":32,"tags":{},"startTime":1757606808033,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":150781,"timestamp":471037583382,"id":32,"parentId":20,"tags":{"page":"/api/replay"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":147221,"timestamp":471037587113,"id":47,"parentId":34,"tags":{},"startTime":1757606808036,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":150998,"timestamp":471037583404,"id":34,"parentId":20,"tags":{"page":"/"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":151178,"timestamp":471037584531,"id":40,"parentId":27,"tags":{},"startTime":1757606808033,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":152424,"timestamp":471037583297,"id":27,"parentId":20,"tags":{"page":"/api/logs/list"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":149015,"timestamp":471037587457,"id":49,"parentId":35,"tags":{},"startTime":1757606808036,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":153072,"timestamp":471037583415,"id":35,"parentId":20,"tags":{"page":"/replay"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":152766,"timestamp":471037584557,"id":41,"parentId":30,"tags":{},"startTime":1757606808033,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":154017,"timestamp":471037583316,"id":30,"parentId":20,"tags":{"page":"/api/logs/tail"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":158731,"timestamp":471037584434,"id":37,"parentId":26,"tags":{},"startTime":1757606808033,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":159902,"timestamp":471037583290,"id":26,"parentId":20,"tags":{"page":"/api/logs/head"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":161497,"timestamp":471037587414,"id":48,"parentId":33,"tags":{},"startTime":1757606808036,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":165535,"timestamp":471037583389,"id":33,"parentId":20,"tags":{"page":"/logs"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"is-page-static","duration":188294,"timestamp":471037584639,"id":42,"parentId":31,"tags":{},"startTime":1757606808033,"traceId":"a4f992ed457600f8"},{"name":"check-page","duration":189586,"timestamp":471037583372,"id":31,"parentId":20,"tags":{"page":"/api/mcp/[transport]"},"startTime":1757606808032,"traceId":"a4f992ed457600f8"},{"name":"static-check","duration":212334,"timestamp":471037560636,"id":20,"parentId":1,"tags":{},"startTime":1757606808009,"traceId":"a4f992ed457600f8"},{"name":"generate-required-server-files","duration":166,"timestamp":471037773016,"id":51,"parentId":1,"tags":{},"startTime":1757606808222,"traceId":"a4f992ed457600f8"},{"name":"write-routes-manifest","duration":197,"timestamp":471037774651,"id":52,"parentId":1,"tags":{},"startTime":1757606808223,"traceId":"a4f992ed457600f8"},{"name":"load-dotenv","duration":10,"timestamp":471037779351,"id":55,"parentId":54,"tags":{},"startTime":1757606808228,"traceId":"a4f992ed457600f8"},{"name":"run-export-path-map","duration":131,"timestamp":471037780143,"id":56,"parentId":54,"tags":{},"startTime":1757606808229,"traceId":"a4f992ed457600f8"},{"name":"next-export","duration":193197,"timestamp":471037778960,"id":54,"parentId":1,"tags":{},"startTime":1757606808228,"traceId":"a4f992ed457600f8"},{"name":"move-exported-app-not-found-","duration":322,"timestamp":471037972739,"id":57,"parentId":53,"tags":{},"startTime":1757606808421,"traceId":"a4f992ed457600f8"},{"name":"move-exported-app-global-error-","duration":310,"timestamp":471037973095,"id":58,"parentId":53,"tags":{},"startTime":1757606808422,"traceId":"a4f992ed457600f8"},{"name":"static-generation","duration":197609,"timestamp":471037776441,"id":53,"parentId":1,"tags":{},"startTime":1757606808225,"traceId":"a4f992ed457600f8"},{"name":"write-routes-manifest","duration":166,"timestamp":471037974092,"id":59,"parentId":1,"tags":{},"startTime":1757606808423,"traceId":"a4f992ed457600f8"},{"name":"write-standalone-directory","duration":170062,"timestamp":471037978973,"id":60,"parentId":1,"tags":{},"startTime":1757606808428,"traceId":"a4f992ed457600f8"},{"name":"print-tree-view","duration":1380,"timestamp":471038149099,"id":61,"parentId":1,"tags":{},"startTime":1757606808598,"traceId":"a4f992ed457600f8"},{"name":"telemetry-flush","duration":14,"timestamp":471038150484,"id":62,"parentId":1,"tags":{},"startTime":1757606808599,"traceId":"a4f992ed457600f8"},{"name":"next-build","duration":4846486,"timestamp":471033304016,"id":1,"tags":{"buildMode":"default","isTurboBuild":"true","version":"15.5.1-canary.30","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1757606803753,"traceId":"a4f992ed457600f8"}]
|
package/package.json
CHANGED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[18622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},12988,(a,b,c)=>{"use strict";b.exports=a.r(18622)},66755,(a,b,c)=>{"use strict";b.exports=a.r(12988).vendored["react-ssr"].ReactJsxRuntime},56541,(a,b,c)=>{"use strict";b.exports=a.r(12988).vendored["react-ssr"].React},90780,a=>{"use strict";var b=a.i(66755),c=a.i(56541);function d(){let[a,d]=(0,c.useState)(null),[e,f]=(0,c.useState)(!1),[g,h]=(0,c.useState)(null),[i,j]=(0,c.useState)(1),[k,l]=(0,c.useState)(!1),[m,n]=(0,c.useState)(0),o=async()=>{f(!0);try{let a=new URLSearchParams({action:"parse"});g&&(a.set("startTime",g.start),a.set("endTime",g.end));let b=await fetch(`/api/replay?${a}`),c=await b.json();b.ok?d(c):console.error("Failed to load replay data:",c.error)}catch(a){console.error("Error loading replay data:",a)}f(!1)};(0,c.useEffect)(()=>{o()},[o]);let p=a?[...a.interactions.map(a=>({...a,eventType:"interaction"})),...a.navigations.map(a=>({...a,eventType:"navigation"}))].sort((a,b)=>new Date(a.timestamp).getTime()-new Date(b.timestamp).getTime()):[],q=a=>new Date(a).toLocaleTimeString(),r=async()=>{if(a){l(!0),n(0);for(let a=0;a<p.length&&k;a++){n(a);let b=p[a],c=p[a+1];if(c){let a=new Date(b.timestamp).getTime(),d=(new Date(c.timestamp).getTime()-a)/i;await new Promise(a=>setTimeout(a,Math.min(d,5e3)))}}l(!1)}};return e?(0,b.jsx)("div",{className:"min-h-screen bg-gray-50 flex items-center justify-center",children:(0,b.jsxs)("div",{className:"text-center",children:[(0,b.jsx)("div",{className:"inline-block animate-spin rounded-full h-8 w-8 border-b-2 border-blue-600"}),(0,b.jsx)("div",{className:"text-gray-500 text-sm mt-4",children:"Loading replay data..."})]})}):(0,b.jsxs)("div",{className:"min-h-screen bg-gray-50",children:[(0,b.jsx)("div",{className:"bg-white shadow-sm border-b",children:(0,b.jsx)("div",{className:"max-w-7xl mx-auto px-4 py-3",children:(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-center gap-4",children:[(0,b.jsx)("h1",{className:"text-2xl font-bold text-gray-900",children:"Session Replay"}),a&&(0,b.jsxs)("div",{className:"flex items-center gap-4 text-sm text-gray-600",children:[(0,b.jsxs)("span",{children:[a.interactions.length," interactions"]}),(0,b.jsxs)("span",{children:[a.navigations.length," navigations"]}),(0,b.jsxs)("span",{children:[a.screenshots.length," screenshots"]}),(0,b.jsxs)("span",{children:[(a=>{let b=Math.floor(a/1e3),c=Math.floor(b/60);return`${c}m ${b%60}s`})(a.duration)," duration"]})]})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsxs)("select",{value:i,onChange:a=>j(Number(a.target.value)),className:"px-3 py-1 border border-gray-300 rounded text-sm",children:[(0,b.jsx)("option",{value:.5,children:"0.5x"}),(0,b.jsx)("option",{value:1,children:"1x"}),(0,b.jsx)("option",{value:2,children:"2x"}),(0,b.jsx)("option",{value:4,children:"4x"}),(0,b.jsx)("option",{value:8,children:"8x"})]}),k?(0,b.jsx)("button",{type:"button",onClick:()=>{l(!1)},className:"px-4 py-2 bg-red-600 text-white rounded hover:bg-red-700",children:"⏹ Stop"}):(0,b.jsx)("button",{type:"button",onClick:r,disabled:!a||0===p.length,className:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 disabled:opacity-50 disabled:cursor-not-allowed",children:"▶ Play"})]})]})})}),(0,b.jsx)("div",{className:"max-w-7xl mx-auto px-4 py-6",children:a?(0,b.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[(0,b.jsxs)("div",{className:"bg-white rounded-lg shadow-sm border",children:[(0,b.jsx)("div",{className:"px-4 py-3 border-b",children:(0,b.jsx)("h2",{className:"font-semibold text-gray-900",children:"Event Timeline"})}),(0,b.jsx)("div",{className:"max-h-96 overflow-y-auto",children:p.map((a,c)=>(0,b.jsxs)("div",{className:`px-4 py-2 border-b last:border-b-0 ${c===m?"bg-blue-50 border-blue-200":""}`,children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-xs font-mono text-gray-500",children:q(a.timestamp)}),(0,b.jsx)("span",{className:`px-2 py-1 rounded text-xs font-medium ${"navigation"===a.eventType?"bg-purple-100 text-purple-800":"CLICK"===a.type?"bg-green-100 text-green-800":"SCROLL"===a.type?"bg-yellow-100 text-yellow-800":"bg-gray-100 text-gray-800"}`,children:"navigation"===a.eventType?"NAV":a.type})]}),k&&c===m&&(0,b.jsx)("div",{className:"w-2 h-2 bg-blue-500 rounded-full animate-pulse"})]}),(0,b.jsx)("div",{className:"mt-1 text-sm text-gray-700",children:"navigation"===a.eventType?(0,b.jsxs)("span",{children:["→ ",a.url]}):"CLICK"===a.type||"TAP"===a.type?(0,b.jsxs)("span",{children:["(",a.x,", ",a.y,") on ",a.target]}):"SCROLL"===a.type?(0,b.jsxs)("span",{children:[a.direction," ",a.distance,"px to (",a.x,", ",a.y,")"]}):"KEY"===a.type?(0,b.jsxs)("span",{children:['"',a.key,'" in ',a.target]}):(0,b.jsx)("span",{children:JSON.stringify(a)})})]},`${a.timestamp}-${c}`))})]}),(0,b.jsxs)("div",{className:"bg-white rounded-lg shadow-sm border",children:[(0,b.jsx)("div",{className:"px-4 py-3 border-b",children:(0,b.jsx)("h2",{className:"font-semibold text-gray-900",children:"Screenshots"})}),(0,b.jsx)("div",{className:"max-h-96 overflow-y-auto",children:a.screenshots.map((a,c)=>(0,b.jsxs)("div",{className:"px-4 py-2 border-b last:border-b-0",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,b.jsx)("span",{className:"text-xs font-mono text-gray-500",children:q(a.timestamp)}),(0,b.jsx)("span",{className:"text-xs text-gray-600",children:a.event})]}),(0,b.jsx)("img",{src:a.url,alt:`Screenshot: ${a.event}`,className:"w-full rounded border",style:{maxHeight:"200px",objectFit:"contain"}})]},`${a.timestamp}-${a.event}-${c}`))})]})]}):(0,b.jsxs)("div",{className:"text-center py-12",children:[(0,b.jsx)("div",{className:"text-gray-400 text-lg",children:"No replay data available"}),(0,b.jsx)("div",{className:"text-gray-500 text-sm mt-2",children:"Start using your app to generate interaction data"})]})})]})}a.s(["default",()=>d])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__bdb0de8a._.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["turbopack:///[project]/node_modules/.pnpm/next@15.5.1-canary.30_babel-plugin-react-compiler@19.1.0-rc.3_react-dom@19.2.0-canary-d_5eea965284f26eb4e30482e6426df099/node_modules/next/src/server/route-modules/app-page/module.compiled.js","turbopack:///[project]/node_modules/.pnpm/next@15.5.1-canary.30_babel-plugin-react-compiler@19.1.0-rc.3_react-dom@19.2.0-canary-d_5eea965284f26eb4e30482e6426df099/node_modules/next/src/server/route-modules/app-page/vendored/ssr/react-jsx-runtime.ts","turbopack:///[project]/node_modules/.pnpm/next@15.5.1-canary.30_babel-plugin-react-compiler@19.1.0-rc.3_react-dom@19.2.0-canary-d_5eea965284f26eb4e30482e6426df099/node_modules/next/src/server/route-modules/app-page/vendored/ssr/react.ts","turbopack:///[project]/app/replay/ReplayClient.tsx"],"sourcesContent":["if (process.env.NEXT_RUNTIME === 'edge') {\n module.exports = require('next/dist/server/route-modules/app-page/module.js')\n} else {\n if (process.env.__NEXT_EXPERIMENTAL_REACT) {\n if (process.env.NODE_ENV === 'development') {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo-experimental.runtime.dev.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page-experimental.runtime.dev.js')\n }\n } else {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page-experimental.runtime.prod.js')\n }\n }\n } else {\n if (process.env.NODE_ENV === 'development') {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo.runtime.dev.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page.runtime.dev.js')\n }\n } else {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo.runtime.prod.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page.runtime.prod.js')\n }\n }\n }\n}\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-ssr']!.ReactJsxRuntime\n","module.exports = (\n require('../../module.compiled') as typeof import('../../module.compiled')\n).vendored['react-ssr']!.React\n","\"use client\"\n\nimport { useEffect, useState } from \"react\"\n\ninterface InteractionEvent {\n timestamp: string\n type: \"CLICK\" | \"TAP\" | \"SCROLL\" | \"KEY\"\n x?: number\n y?: number\n target?: string\n direction?: string\n distance?: number\n key?: string\n}\n\ninterface NavigationEvent {\n timestamp: string\n url: string\n}\n\ninterface ScreenshotEvent {\n timestamp: string\n url: string\n event: string\n}\n\ninterface ReplayData {\n interactions: InteractionEvent[]\n navigations: NavigationEvent[]\n screenshots: ScreenshotEvent[]\n startTime: string\n endTime: string\n duration: number\n}\n\nexport default function ReplayClient() {\n const [replayData, setReplayData] = useState<ReplayData | null>(null)\n const [loading, setLoading] = useState(false)\n const [selectedTimeRange, _setSelectedTimeRange] = useState<{\n start: string\n end: string\n } | null>(null)\n const [playbackSpeed, setPlaybackSpeed] = useState(1)\n const [isPlaying, setIsPlaying] = useState(false)\n const [currentEventIndex, setCurrentEventIndex] = useState(0)\n\n const loadReplayData = async () => {\n setLoading(true)\n try {\n const params = new URLSearchParams({ action: \"parse\" })\n if (selectedTimeRange) {\n params.set(\"startTime\", selectedTimeRange.start)\n params.set(\"endTime\", selectedTimeRange.end)\n }\n\n const response = await fetch(`/api/replay?${params}`)\n const data = await response.json()\n\n if (response.ok) {\n setReplayData(data)\n } else {\n console.error(\"Failed to load replay data:\", data.error)\n }\n } catch (error) {\n console.error(\"Error loading replay data:\", error)\n }\n setLoading(false)\n }\n\n useEffect(() => {\n loadReplayData()\n }, [loadReplayData])\n\n const allEvents = replayData\n ? [\n ...replayData.interactions.map((i) => ({ ...i, eventType: \"interaction\" as const })),\n ...replayData.navigations.map((n) => ({ ...n, eventType: \"navigation\" as const }))\n ].sort((a, b) => new Date(a.timestamp).getTime() - new Date(b.timestamp).getTime())\n : []\n\n const formatTimestamp = (timestamp: string) => {\n return new Date(timestamp).toLocaleTimeString()\n }\n\n const formatDuration = (ms: number) => {\n const seconds = Math.floor(ms / 1000)\n const minutes = Math.floor(seconds / 60)\n return `${minutes}m ${seconds % 60}s`\n }\n\n const startReplay = async () => {\n if (!replayData) return\n\n setIsPlaying(true)\n setCurrentEventIndex(0)\n\n // This is a simplified preview - in a full implementation,\n // this would actually control a browser session\n for (let i = 0; i < allEvents.length; i++) {\n if (!isPlaying) break\n\n setCurrentEventIndex(i)\n\n const event = allEvents[i]\n const nextEvent = allEvents[i + 1]\n\n if (nextEvent) {\n const currentTime = new Date(event.timestamp).getTime()\n const nextTime = new Date(nextEvent.timestamp).getTime()\n const delay = (nextTime - currentTime) / playbackSpeed\n\n await new Promise((resolve) => setTimeout(resolve, Math.min(delay, 5000))) // Cap at 5s\n }\n }\n\n setIsPlaying(false)\n }\n\n const stopReplay = () => {\n setIsPlaying(false)\n }\n\n if (loading) {\n return (\n <div className=\"min-h-screen bg-gray-50 flex items-center justify-center\">\n <div className=\"text-center\">\n <div className=\"inline-block animate-spin rounded-full h-8 w-8 border-b-2 border-blue-600\"></div>\n <div className=\"text-gray-500 text-sm mt-4\">Loading replay data...</div>\n </div>\n </div>\n )\n }\n\n return (\n <div className=\"min-h-screen bg-gray-50\">\n <div className=\"bg-white shadow-sm border-b\">\n <div className=\"max-w-7xl mx-auto px-4 py-3\">\n <div className=\"flex items-center justify-between\">\n <div className=\"flex items-center gap-4\">\n <h1 className=\"text-2xl font-bold text-gray-900\">Session Replay</h1>\n {replayData && (\n <div className=\"flex items-center gap-4 text-sm text-gray-600\">\n <span>{replayData.interactions.length} interactions</span>\n <span>{replayData.navigations.length} navigations</span>\n <span>{replayData.screenshots.length} screenshots</span>\n <span>{formatDuration(replayData.duration)} duration</span>\n </div>\n )}\n </div>\n\n <div className=\"flex items-center gap-2\">\n <select\n value={playbackSpeed}\n onChange={(e) => setPlaybackSpeed(Number(e.target.value))}\n className=\"px-3 py-1 border border-gray-300 rounded text-sm\"\n >\n <option value={0.5}>0.5x</option>\n <option value={1}>1x</option>\n <option value={2}>2x</option>\n <option value={4}>4x</option>\n <option value={8}>8x</option>\n </select>\n\n {!isPlaying ? (\n <button\n type=\"button\"\n onClick={startReplay}\n disabled={!replayData || allEvents.length === 0}\n className=\"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 disabled:opacity-50 disabled:cursor-not-allowed\"\n >\n ▶ Play\n </button>\n ) : (\n <button\n type=\"button\"\n onClick={stopReplay}\n className=\"px-4 py-2 bg-red-600 text-white rounded hover:bg-red-700\"\n >\n ⏹ Stop\n </button>\n )}\n </div>\n </div>\n </div>\n </div>\n\n <div className=\"max-w-7xl mx-auto px-4 py-6\">\n {!replayData ? (\n <div className=\"text-center py-12\">\n <div className=\"text-gray-400 text-lg\">No replay data available</div>\n <div className=\"text-gray-500 text-sm mt-2\">Start using your app to generate interaction data</div>\n </div>\n ) : (\n <div className=\"grid grid-cols-1 lg:grid-cols-2 gap-6\">\n {/* Timeline */}\n <div className=\"bg-white rounded-lg shadow-sm border\">\n <div className=\"px-4 py-3 border-b\">\n <h2 className=\"font-semibold text-gray-900\">Event Timeline</h2>\n </div>\n <div className=\"max-h-96 overflow-y-auto\">\n {allEvents.map((event, index) => (\n <div\n key={`${event.timestamp}-${index}`}\n className={`px-4 py-2 border-b last:border-b-0 ${\n index === currentEventIndex ? \"bg-blue-50 border-blue-200\" : \"\"\n }`}\n >\n <div className=\"flex items-center justify-between\">\n <div className=\"flex items-center gap-2\">\n <span className=\"text-xs font-mono text-gray-500\">{formatTimestamp(event.timestamp)}</span>\n <span\n className={`px-2 py-1 rounded text-xs font-medium ${\n event.eventType === \"navigation\"\n ? \"bg-purple-100 text-purple-800\"\n : event.type === \"CLICK\"\n ? \"bg-green-100 text-green-800\"\n : event.type === \"SCROLL\"\n ? \"bg-yellow-100 text-yellow-800\"\n : \"bg-gray-100 text-gray-800\"\n }`}\n >\n {event.eventType === \"navigation\" ? \"NAV\" : event.type}\n </span>\n </div>\n {isPlaying && index === currentEventIndex && (\n <div className=\"w-2 h-2 bg-blue-500 rounded-full animate-pulse\"></div>\n )}\n </div>\n <div className=\"mt-1 text-sm text-gray-700\">\n {event.eventType === \"navigation\" ? (\n <span>→ {event.url}</span>\n ) : event.type === \"CLICK\" || event.type === \"TAP\" ? (\n <span>\n ({event.x}, {event.y}) on {event.target}\n </span>\n ) : event.type === \"SCROLL\" ? (\n <span>\n {event.direction} {event.distance}px to ({event.x}, {event.y})\n </span>\n ) : event.type === \"KEY\" ? (\n <span>\n \"{event.key}\" in {event.target}\n </span>\n ) : (\n <span>{JSON.stringify(event)}</span>\n )}\n </div>\n </div>\n ))}\n </div>\n </div>\n\n {/* Screenshots */}\n <div className=\"bg-white rounded-lg shadow-sm border\">\n <div className=\"px-4 py-3 border-b\">\n <h2 className=\"font-semibold text-gray-900\">Screenshots</h2>\n </div>\n <div className=\"max-h-96 overflow-y-auto\">\n {replayData.screenshots.map((screenshot, index) => (\n <div\n key={`${screenshot.timestamp}-${screenshot.event}-${index}`}\n className=\"px-4 py-2 border-b last:border-b-0\"\n >\n <div className=\"flex items-center justify-between mb-2\">\n <span className=\"text-xs font-mono text-gray-500\">{formatTimestamp(screenshot.timestamp)}</span>\n <span className=\"text-xs text-gray-600\">{screenshot.event}</span>\n </div>\n <img\n src={screenshot.url}\n alt={`Screenshot: ${screenshot.event}`}\n className=\"w-full rounded border\"\n style={{ maxHeight: \"200px\", objectFit: \"contain\" }}\n />\n </div>\n ))}\n </div>\n </div>\n </div>\n )}\n </div>\n </div>\n )\n}\n"],"names":["process","env","NEXT_RUNTIME","module","exports","require","__NEXT_EXPERIMENTAL_REACT","NODE_ENV","TURBOPACK","vendored","ReactJsxRuntime","React"],"mappings":"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","ignoreList":[0,1,2]}
|