dev3000 0.0.66 → 0.0.68

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/README.md +56 -7
  2. package/dist/cdp-monitor.d.ts +4 -1
  3. package/dist/cdp-monitor.d.ts.map +1 -1
  4. package/dist/cdp-monitor.js +39 -7
  5. package/dist/cdp-monitor.js.map +1 -1
  6. package/dist/cli.d.ts +1 -1
  7. package/dist/cli.js +12 -7
  8. package/dist/cli.js.map +1 -1
  9. package/dist/dev-environment.d.ts +2 -0
  10. package/dist/dev-environment.d.ts.map +1 -1
  11. package/dist/dev-environment.js +174 -42
  12. package/dist/dev-environment.js.map +1 -1
  13. package/dist/services/parsers/log-parsers/base.d.ts +1 -1
  14. package/dist/services/parsers/log-parsers/base.d.ts.map +1 -1
  15. package/dist/src/tui-interface-impl.tsx +163 -48
  16. package/dist/tui-interface-impl.d.ts.map +1 -1
  17. package/dist/tui-interface-impl.js +72 -14
  18. package/dist/tui-interface-impl.js.map +1 -1
  19. package/dist/utils/project-name.d.ts +18 -0
  20. package/dist/utils/project-name.d.ts.map +1 -0
  21. package/dist/utils/project-name.js +114 -0
  22. package/dist/utils/project-name.js.map +1 -0
  23. package/dist/utils/timestamp.d.ts +8 -0
  24. package/dist/utils/timestamp.d.ts.map +1 -0
  25. package/dist/utils/timestamp.js +18 -0
  26. package/dist/utils/timestamp.js.map +1 -0
  27. package/mcp-server/.next/BUILD_ID +1 -1
  28. package/mcp-server/.next/app-build-manifest.json +8 -6
  29. package/mcp-server/.next/build-manifest.json +2 -2
  30. package/mcp-server/.next/fallback-build-manifest.json +2 -2
  31. package/mcp-server/.next/next-minimal-server.js.nft.json +1 -1
  32. package/mcp-server/.next/next-server.js.nft.json +1 -1
  33. package/mcp-server/.next/prerender-manifest.json +10 -10
  34. package/mcp-server/.next/required-server-files.json +1 -0
  35. package/mcp-server/.next/server/app/_global-error/page.js.nft.json +1 -1
  36. package/mcp-server/.next/server/app/_global-error.html +2 -2
  37. package/mcp-server/.next/server/app/_global-error.rsc +1 -1
  38. package/mcp-server/.next/server/app/_not-found/page/app-build-manifest.json +1 -1
  39. package/mcp-server/.next/server/app/_not-found/page.js.nft.json +1 -1
  40. package/mcp-server/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  41. package/mcp-server/.next/server/app/_not-found.html +1 -1
  42. package/mcp-server/.next/server/app/_not-found.rsc +2 -2
  43. package/mcp-server/.next/server/app/api/logs/append/route.js.nft.json +1 -1
  44. package/mcp-server/.next/server/app/api/logs/head/route.js.nft.json +1 -1
  45. package/mcp-server/.next/server/app/api/logs/list/route.js.nft.json +1 -1
  46. package/mcp-server/.next/server/app/api/logs/rotate/route.js.nft.json +1 -1
  47. package/mcp-server/.next/server/app/api/logs/stream/route.js.nft.json +1 -1
  48. package/mcp-server/.next/server/app/api/logs/tail/route.js.nft.json +1 -1
  49. package/mcp-server/.next/server/app/api/screenshots/[filename]/route.js.nft.json +1 -1
  50. package/mcp-server/.next/server/app/api/tools/route.js.nft.json +1 -1
  51. package/mcp-server/.next/server/app/index.html +1 -1
  52. package/mcp-server/.next/server/app/index.rsc +3 -3
  53. package/mcp-server/.next/server/app/logs/page/app-build-manifest.json +4 -3
  54. package/mcp-server/.next/server/app/logs/page.js.nft.json +1 -1
  55. package/mcp-server/.next/server/app/logs/page_client-reference-manifest.js +1 -1
  56. package/mcp-server/.next/server/app/mcp/route.js.nft.json +1 -1
  57. package/mcp-server/.next/server/app/page/app-build-manifest.json +3 -2
  58. package/mcp-server/.next/server/app/page.js.nft.json +1 -1
  59. package/mcp-server/.next/server/app/page_client-reference-manifest.js +1 -1
  60. package/mcp-server/.next/server/chunks/ssr/{node_modules__pnpm_4f58b96e._.js → _188bfe33._.js} +2 -2
  61. package/mcp-server/.next/server/chunks/ssr/_188bfe33._.js.map +1 -0
  62. package/mcp-server/.next/server/chunks/ssr/_9d670a6b._.js +2 -2
  63. package/mcp-server/.next/server/chunks/ssr/_9d670a6b._.js.map +1 -1
  64. package/mcp-server/.next/server/chunks/ssr/_d858c4cd._.js +1 -1
  65. package/mcp-server/.next/server/chunks/ssr/_d858c4cd._.js.map +1 -1
  66. package/mcp-server/.next/server/chunks/ssr/_dae9c1d5._.js +1 -1
  67. package/mcp-server/.next/server/chunks/ssr/_dae9c1d5._.js.map +1 -1
  68. package/mcp-server/.next/server/chunks/ssr/{node_modules__pnpm_87fb6266._.js → _f03e80a8._.js} +2 -2
  69. package/mcp-server/.next/server/chunks/ssr/_f03e80a8._.js.map +1 -0
  70. package/mcp-server/.next/server/chunks/ssr/mcp-server_app_layout_tsx_afa41767._.js +1 -1
  71. package/mcp-server/.next/server/chunks/ssr/mcp-server_app_layout_tsx_afa41767._.js.map +1 -1
  72. package/mcp-server/.next/server/server-reference-manifest.js +1 -1
  73. package/mcp-server/.next/server/server-reference-manifest.json +1 -1
  74. package/mcp-server/.next/static/chunks/5a5edc75ee7e7de4.js +1 -0
  75. package/mcp-server/.next/static/chunks/65b18bf1ede9811a.css +1 -0
  76. package/mcp-server/.next/static/chunks/90585d882461b546.js +1 -0
  77. package/mcp-server/.next/static/chunks/c5f8464bc8083ee7.js +1 -0
  78. package/mcp-server/app/api/screenshots/[filename]/route.ts +15 -9
  79. package/mcp-server/app/api/tools/route.ts +22 -5
  80. package/mcp-server/app/layout.tsx +4 -2
  81. package/mcp-server/app/logs/LogsClient.infinite-loop.test.tsx +127 -0
  82. package/mcp-server/app/logs/LogsClient.tsx +318 -201
  83. package/mcp-server/app/logs/page.tsx +19 -3
  84. package/mcp-server/app/logs/utils.ts +15 -3
  85. package/mcp-server/app/mcp/route.ts +75 -509
  86. package/mcp-server/app/mcp/tools.ts +747 -0
  87. package/mcp-server/app/page.tsx +244 -169
  88. package/mcp-server/next.config.ts +1 -1
  89. package/mcp-server/package.json +14 -6
  90. package/mcp-server/public/favicon-16.svg +4 -0
  91. package/mcp-server/public/favicon-180.png +0 -0
  92. package/mcp-server/public/favicon-64.svg +4 -0
  93. package/mcp-server/public/favicon-preview.html +67 -0
  94. package/mcp-server/public/favicon.ico +0 -0
  95. package/mcp-server/public/favicon.svg +4 -0
  96. package/mcp-server/public/screenshots/test.txt +1 -0
  97. package/mcp-server/start-production.js +60 -0
  98. package/package.json +28 -15
  99. package/src/tui-interface-impl.tsx +163 -48
  100. package/mcp-server/.next/build/chunks/[root-of-the-server]__25374c4f._.js +0 -496
  101. package/mcp-server/.next/build/chunks/[root-of-the-server]__25374c4f._.js.map +0 -11
  102. package/mcp-server/.next/build/chunks/[root-of-the-server]__4718a9dd._.js +0 -408
  103. package/mcp-server/.next/build/chunks/[root-of-the-server]__4718a9dd._.js.map +0 -7
  104. package/mcp-server/.next/build/chunks/[root-of-the-server]__c438ef56._.js +0 -205
  105. package/mcp-server/.next/build/chunks/[root-of-the-server]__c438ef56._.js.map +0 -8
  106. package/mcp-server/.next/build/chunks/[root-of-the-server]__c7ae8543._.js +0 -496
  107. package/mcp-server/.next/build/chunks/[root-of-the-server]__c7ae8543._.js.map +0 -11
  108. package/mcp-server/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_d723d216._.js +0 -13
  109. package/mcp-server/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_d723d216._.js.map +0 -5
  110. package/mcp-server/.next/build/chunks/[turbopack-node]_transforms_webpack-loaders_ts_5a40237e._.js +0 -12
  111. package/mcp-server/.next/build/chunks/[turbopack-node]_transforms_webpack-loaders_ts_5a40237e._.js.map +0 -5
  112. package/mcp-server/.next/build/chunks/[turbopack]_runtime.js +0 -770
  113. package/mcp-server/.next/build/chunks/[turbopack]_runtime.js.map +0 -10
  114. package/mcp-server/.next/build/chunks/node_modules__pnpm_806d01c0._.js +0 -6759
  115. package/mcp-server/.next/build/chunks/node_modules__pnpm_806d01c0._.js.map +0 -47
  116. package/mcp-server/.next/cache/.previewinfo +0 -1
  117. package/mcp-server/.next/cache/.rscinfo +0 -1
  118. package/mcp-server/.next/cache/.tsbuildinfo +0 -1
  119. package/mcp-server/.next/cache/next-devtools-config.json +0 -1
  120. package/mcp-server/.next/cache/webpack/client-development/0.pack.gz +0 -0
  121. package/mcp-server/.next/cache/webpack/client-development/1.pack.gz +0 -0
  122. package/mcp-server/.next/cache/webpack/client-development/2.pack.gz +0 -0
  123. package/mcp-server/.next/cache/webpack/client-development/3.pack.gz +0 -0
  124. package/mcp-server/.next/cache/webpack/client-development/4.pack.gz +0 -0
  125. package/mcp-server/.next/cache/webpack/client-development/index.pack.gz +0 -0
  126. package/mcp-server/.next/cache/webpack/client-development/index.pack.gz.old +0 -0
  127. package/mcp-server/.next/cache/webpack/server-development/0.pack.gz +0 -0
  128. package/mcp-server/.next/cache/webpack/server-development/1.pack.gz +0 -0
  129. package/mcp-server/.next/cache/webpack/server-development/2.pack.gz +0 -0
  130. package/mcp-server/.next/cache/webpack/server-development/3.pack.gz +0 -0
  131. package/mcp-server/.next/cache/webpack/server-development/4.pack.gz +0 -0
  132. package/mcp-server/.next/cache/webpack/server-development/5.pack.gz +0 -0
  133. package/mcp-server/.next/cache/webpack/server-development/index.pack.gz +0 -0
  134. package/mcp-server/.next/cache/webpack/server-development/index.pack.gz.old +0 -0
  135. package/mcp-server/.next/diagnostics/build-diagnostics.json +0 -6
  136. package/mcp-server/.next/diagnostics/framework.json +0 -1
  137. package/mcp-server/.next/server/chunks/0916f_next_ab257ac1._.js +0 -17
  138. package/mcp-server/.next/server/chunks/0916f_next_ab257ac1._.js.map +0 -1
  139. package/mcp-server/.next/server/chunks/250ae__next-internal_server_app_api_screenshots_[filename]_route_actions_4f8d6e37.js +0 -3
  140. package/mcp-server/.next/server/chunks/250ae__next-internal_server_app_api_screenshots_[filename]_route_actions_4f8d6e37.js.map +0 -1
  141. package/mcp-server/.next/server/chunks/[root-of-the-server]__1b561deb._.js +0 -3
  142. package/mcp-server/.next/server/chunks/[root-of-the-server]__1b561deb._.js.map +0 -1
  143. package/mcp-server/.next/server/chunks/[root-of-the-server]__38e8baae._.js +0 -22
  144. package/mcp-server/.next/server/chunks/[root-of-the-server]__38e8baae._.js.map +0 -1
  145. package/mcp-server/.next/server/chunks/[root-of-the-server]__47380b6c._.js +0 -7
  146. package/mcp-server/.next/server/chunks/[root-of-the-server]__47380b6c._.js.map +0 -1
  147. package/mcp-server/.next/server/chunks/[root-of-the-server]__674284d7._.js +0 -3
  148. package/mcp-server/.next/server/chunks/[root-of-the-server]__674284d7._.js.map +0 -1
  149. package/mcp-server/.next/server/chunks/[root-of-the-server]__6a89b7dc._.js +0 -3
  150. package/mcp-server/.next/server/chunks/[root-of-the-server]__6a89b7dc._.js.map +0 -1
  151. package/mcp-server/.next/server/chunks/[root-of-the-server]__729bfe09._.js +0 -11
  152. package/mcp-server/.next/server/chunks/[root-of-the-server]__729bfe09._.js.map +0 -1
  153. package/mcp-server/.next/server/chunks/[root-of-the-server]__a433711a._.js +0 -3
  154. package/mcp-server/.next/server/chunks/[root-of-the-server]__a433711a._.js.map +0 -1
  155. package/mcp-server/.next/server/chunks/[root-of-the-server]__a58600d8._.js +0 -3
  156. package/mcp-server/.next/server/chunks/[root-of-the-server]__a58600d8._.js.map +0 -1
  157. package/mcp-server/.next/server/chunks/[root-of-the-server]__bc43993b._.js +0 -3
  158. package/mcp-server/.next/server/chunks/[root-of-the-server]__bc43993b._.js.map +0 -1
  159. package/mcp-server/.next/server/chunks/[root-of-the-server]__c464573d._.js +0 -3
  160. package/mcp-server/.next/server/chunks/[root-of-the-server]__c464573d._.js.map +0 -1
  161. package/mcp-server/.next/server/chunks/[root-of-the-server]__e6d29491._.js +0 -4
  162. package/mcp-server/.next/server/chunks/[root-of-the-server]__e6d29491._.js.map +0 -1
  163. package/mcp-server/.next/server/chunks/[turbopack]_runtime.js +0 -770
  164. package/mcp-server/.next/server/chunks/[turbopack]_runtime.js.map +0 -10
  165. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_append_route_actions_bc66060f.js +0 -3
  166. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_append_route_actions_bc66060f.js.map +0 -1
  167. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_head_route_actions_1152480c.js +0 -3
  168. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_head_route_actions_1152480c.js.map +0 -1
  169. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_list_route_actions_b9e24400.js +0 -3
  170. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_list_route_actions_b9e24400.js.map +0 -1
  171. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_rotate_route_actions_76075d08.js +0 -3
  172. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_rotate_route_actions_76075d08.js.map +0 -1
  173. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_stream_route_actions_16e5c553.js +0 -3
  174. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_stream_route_actions_16e5c553.js.map +0 -1
  175. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_tail_route_actions_55440150.js +0 -3
  176. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_tail_route_actions_55440150.js.map +0 -1
  177. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_tools_route_actions_007f3c7c.js +0 -3
  178. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_tools_route_actions_007f3c7c.js.map +0 -1
  179. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_mcp_route_actions_7f7b5be4.js +0 -3
  180. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_mcp_route_actions_7f7b5be4.js.map +0 -1
  181. package/mcp-server/.next/server/chunks/ssr/node_modules__pnpm_4f58b96e._.js.map +0 -1
  182. package/mcp-server/.next/server/chunks/ssr/node_modules__pnpm_87fb6266._.js.map +0 -1
  183. package/mcp-server/.next/server/pages/404.html +0 -1
  184. package/mcp-server/.next/server/pages/500.html +0 -2
  185. package/mcp-server/.next/server/pages/_app/build-manifest.json +0 -9
  186. package/mcp-server/.next/server/pages/_app/client-build-manifest.json +0 -1
  187. package/mcp-server/.next/server/pages/_app/next-font-manifest.json +0 -6
  188. package/mcp-server/.next/server/pages/_app/pages-manifest.json +0 -1
  189. package/mcp-server/.next/server/pages/_app/react-loadable-manifest.json +0 -1
  190. package/mcp-server/.next/server/pages/_document/next-font-manifest.json +0 -6
  191. package/mcp-server/.next/server/pages/_document/pages-manifest.json +0 -1
  192. package/mcp-server/.next/server/pages/_document/react-loadable-manifest.json +0 -1
  193. package/mcp-server/.next/server/pages/_error/build-manifest.json +0 -9
  194. package/mcp-server/.next/server/pages/_error/client-build-manifest.json +0 -1
  195. package/mcp-server/.next/server/pages/_error/next-font-manifest.json +0 -6
  196. package/mcp-server/.next/server/pages/_error/pages-manifest.json +0 -1
  197. package/mcp-server/.next/server/pages/_error/react-loadable-manifest.json +0 -1
  198. package/mcp-server/.next/static/chunks/11f1b53bdf7a9af0.js +0 -1
  199. package/mcp-server/.next/static/chunks/3d4ea64f6384f2c6.js +0 -1
  200. package/mcp-server/.next/static/chunks/50335dad5c51aab8.js +0 -1
  201. package/mcp-server/.next/static/chunks/bdd0789390bc312f.css +0 -1
  202. package/mcp-server/.next/trace +0 -1
  203. package/mcp-server/.next/turbopack +0 -0
  204. package/mcp-server/.next/types/routes.d.ts +0 -82
  205. package/mcp-server/.next/types/validator.ts +0 -160
  206. /package/mcp-server/.next/static/{mZfouQw6OHfahPQayuVeY → 9VUbGT0H5KtrSKNmmAF__}/_buildManifest.js +0 -0
  207. /package/mcp-server/.next/static/{mZfouQw6OHfahPQayuVeY → 9VUbGT0H5KtrSKNmmAF__}/_clientMiddlewareManifest.json +0 -0
  208. /package/mcp-server/.next/static/{mZfouQw6OHfahPQayuVeY → 9VUbGT0H5KtrSKNmmAF__}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[29775,a=>{"use strict";var b=a.i(36182);function c({children:a}){return(0,b.jsxs)("html",{lang:"en",className:"h-full",children:[(0,b.jsxs)("head",{children:[(0,b.jsx)("title",{children:"🎯 dev3000"}),(0,b.jsx)("link",{rel:"icon",href:"/favicon.ico",sizes:"32x32"}),(0,b.jsx)("link",{rel:"icon",href:"/favicon.svg",type:"image/svg+xml"}),(0,b.jsx)("link",{rel:"icon",href:"/favicon-16.svg",type:"image/svg+xml",sizes:"16x16"}),(0,b.jsx)("link",{rel:"apple-touch-icon",href:"/favicon-180.png"}),(0,b.jsx)("meta",{name:"theme-color",content:"#1f2937"})]}),(0,b.jsx)("body",{className:"h-full",children:a})]})}a.s(["default",()=>c])}];
1
+ module.exports=[29775,a=>{"use strict";var b=a.i(36182);function c({children:a}){return(0,b.jsxs)("html",{lang:"en",className:"h-full",children:[(0,b.jsxs)("head",{children:[(0,b.jsx)("title",{children:"🎯 dev3000"}),(0,b.jsx)("link",{rel:"icon",href:"/favicon.ico",type:"image/x-icon"}),(0,b.jsx)("link",{rel:"icon",href:"/favicon.svg",type:"image/svg+xml",sizes:"32x32"}),(0,b.jsx)("link",{rel:"icon",href:"/favicon-16.svg",type:"image/svg+xml",sizes:"16x16"}),(0,b.jsx)("link",{rel:"icon",href:"/favicon-64.svg",type:"image/svg+xml",sizes:"64x64"}),(0,b.jsx)("link",{rel:"apple-touch-icon",href:"/favicon-180.png"}),(0,b.jsx)("link",{rel:"shortcut icon",href:"/favicon.svg"}),(0,b.jsx)("meta",{name:"theme-color",content:"#1f2937"})]}),(0,b.jsx)("body",{className:"h-full",children:a})]})}a.s(["default",()=>c])}];
2
2
 
3
3
  //# sourceMappingURL=mcp-server_app_layout_tsx_afa41767._.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["turbopack:///[project]/mcp-server/app/layout.tsx"],"sourcesContent":["import type React from \"react\"\nimport \"./globals.css\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n <html lang=\"en\" className=\"h-full\">\n <head>\n <title>🎯 dev3000</title>\n <link rel=\"icon\" href=\"/favicon.ico\" sizes=\"32x32\" />\n <link rel=\"icon\" href=\"/favicon.svg\" type=\"image/svg+xml\" />\n <link rel=\"icon\" href=\"/favicon-16.svg\" type=\"image/svg+xml\" sizes=\"16x16\" />\n <link rel=\"apple-touch-icon\" href=\"/favicon-180.png\" />\n <meta name=\"theme-color\" content=\"#1f2937\" />\n </head>\n <body className=\"h-full\">{children}</body>\n </html>\n )\n}\n"],"names":[],"mappings":"wDAGe,SAAS,EAAW,UAAE,CAAQ,CAAiC,EAC5E,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,OAAA,CAAK,KAAK,KAAK,UAAU,mBACxB,CAAA,EAAA,EAAA,IAAA,EAAC,OAAA,WACC,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,UAAM,eACP,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,IAAI,OAAO,KAAK,eAAe,MAAM,UAC3C,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,IAAI,OAAO,KAAK,eAAe,KAAK,kBAC1C,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,IAAI,OAAO,KAAK,kBAAkB,KAAK,gBAAgB,MAAM,UACnE,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,IAAI,mBAAmB,KAAK,qBAClC,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,KAAK,cAAc,QAAQ,eAEnC,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,UAAU,kBAAU,MAGhC"}
1
+ {"version":3,"sources":["turbopack:///[project]/mcp-server/app/layout.tsx"],"sourcesContent":["import type React from \"react\"\nimport \"./globals.css\"\n\nexport default function RootLayout({ children }: { children: React.ReactNode }) {\n return (\n <html lang=\"en\" className=\"h-full\">\n <head>\n <title>🎯 dev3000</title>\n <link rel=\"icon\" href=\"/favicon.ico\" type=\"image/x-icon\" />\n <link rel=\"icon\" href=\"/favicon.svg\" type=\"image/svg+xml\" sizes=\"32x32\" />\n <link rel=\"icon\" href=\"/favicon-16.svg\" type=\"image/svg+xml\" sizes=\"16x16\" />\n <link rel=\"icon\" href=\"/favicon-64.svg\" type=\"image/svg+xml\" sizes=\"64x64\" />\n <link rel=\"apple-touch-icon\" href=\"/favicon-180.png\" />\n <link rel=\"shortcut icon\" href=\"/favicon.svg\" />\n <meta name=\"theme-color\" content=\"#1f2937\" />\n </head>\n <body className=\"h-full\">{children}</body>\n </html>\n )\n}\n"],"names":[],"mappings":"wDAGe,SAAS,EAAW,UAAE,CAAQ,CAAiC,EAC5E,MACE,CAAA,EAAA,EAAA,IAAA,EAAC,OAAA,CAAK,KAAK,KAAK,UAAU,mBACxB,CAAA,EAAA,EAAA,IAAA,EAAC,OAAA,WACC,CAAA,EAAA,EAAA,GAAA,EAAC,QAAA,UAAM,eACP,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,IAAI,OAAO,KAAK,eAAe,KAAK,iBAC1C,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,IAAI,OAAO,KAAK,eAAe,KAAK,gBAAgB,MAAM,UAChE,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,IAAI,OAAO,KAAK,kBAAkB,KAAK,gBAAgB,MAAM,UACnE,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,IAAI,OAAO,KAAK,kBAAkB,KAAK,gBAAgB,MAAM,UACnE,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,IAAI,mBAAmB,KAAK,qBAClC,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,IAAI,gBAAgB,KAAK,iBAC/B,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,KAAK,cAAc,QAAQ,eAEnC,CAAA,EAAA,EAAA,GAAA,EAAC,OAAA,CAAK,UAAU,kBAAU,MAGhC"}
@@ -1 +1 @@
1
- self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"W4nmmzPW/mq/GioKYUeommfzeXRZgrLwLmV/G89oVts=\"\n}"
1
+ self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"UN6musPR7H3z91o1ei1FnxpGEb+Q+Gyo/jXklxqM+jk=\"\n}"
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "node": {},
3
3
  "edge": {},
4
- "encryptionKey": "W4nmmzPW/mq/GioKYUeommfzeXRZgrLwLmV/G89oVts="
4
+ "encryptionKey": "UN6musPR7H3z91o1ei1FnxpGEb+Q+Gyo/jXklxqM+jk="
5
5
  }
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,14093,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},71066,(e,t,r)=>{"use strict";function n(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function s(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function o(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,s(e));else t.set(r,s(n));return t}function a(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];for(let t of r){for(let r of t.keys())e.delete(r);for(let[r,n]of t.entries())e.append(r,n)}return e}Object.defineProperty(r,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(r,{assign:function(){return a},searchParamsToUrlQuery:function(){return n},urlQueryToSearchParams:function(){return o}})},37203,(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,{formatUrl:function(){return o},formatWithValidation:function(){return l},urlObjectKeys:function(){return a}});let n=e.r(44066)._(e.r(71066)),s=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,o=e.protocol||"",a=e.pathname||"",l=e.hash||"",i=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?"["+r+"]":r),e.port&&(c+=":"+e.port)),i&&"object"==typeof i&&(i=String(n.urlQueryToSearchParams(i)));let d=e.search||i&&"?"+i||"";return o&&!o.endsWith(":")&&(o+=":"),e.slashes||(!o||s.test(o))&&!1!==c?(c="//"+(c||""),a&&"/"!==a[0]&&(a="/"+a)):c||(c=""),l&&"#"!==l[0]&&(l="#"+l),d&&"?"!==d[0]&&(d="?"+d),""+o+c+(a=a.replace(/[?#]/g,encodeURIComponent))+(d=d.replace("#","%23"))+l}let a=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function l(e){return o(e)}},76284,(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,{DecodeError:function(){return h},MiddlewareNotFoundError:function(){return j},MissingStaticPage:function(){return b},NormalizeError:function(){return p},PageNotFoundError:function(){return g},SP:function(){return f},ST:function(){return x},WEB_VITALS:function(){return n},execOnce:function(){return s},getDisplayName:function(){return c},getLocationOrigin:function(){return l},getURL:function(){return i},isAbsoluteUrl:function(){return a},isResSent:function(){return d},loadGetInitialProps:function(){return m},normalizeRepeatedSlashes:function(){return u},stringifyError:function(){return y}});let n=["CLS","FCP","FID","INP","LCP","TTFB"];function s(e){let t,r=!1;return function(){for(var n=arguments.length,s=Array(n),o=0;o<n;o++)s[o]=arguments[o];return r||(r=!0,t=e(...s)),t}}let o=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,a=e=>o.test(e);function l(){let{protocol:e,hostname:t,port:r}=window.location;return e+"//"+t+(r?":"+r:"")}function i(){let{href:e}=window.location,t=l();return e.substring(t.length)}function c(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function d(e){return e.finished||e.headersSent}function u(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?"?"+t.slice(1).join("?"):"")}async function m(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await m(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&d(r))return n;if(!n)throw Object.defineProperty(Error('"'+c(e)+'.getInitialProps()" should resolve to an object. But found "'+n+'" instead.'),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n}let f="undefined"!=typeof performance,x=f&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class h extends Error{}class p extends Error{}class g extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message="Cannot find module for page: "+e}}class b extends Error{constructor(e,t){super(),this.message="Failed to load static file for page: "+e+" "+t}}class j extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function y(e){return JSON.stringify({message:e.message,stack:e.stack})}},88687,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return o}});let n=e.r(76284),s=e.r(94108);function o(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.hasBasePath)(r.pathname)}catch(e){return!1}}},11986,(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,{default:function(){return p},useLinkStatus:function(){return b}});let n=e.r(44066),s=e.r(10664),o=n._(e.r(86464)),a=e.r(37203),l=e.r(67815),i=e.r(8062),c=e.r(76284),d=e.r(47526);e.r(14093);let u=e.r(87605),m=e.r(88687),f=e.r(60845),x=e.r(20987);function h(e){return"string"==typeof e?e:(0,a.formatUrl)(e)}function p(e){var t;let[r,n]=(0,o.useOptimistic)(u.IDLE_LINK_STATUS),a=(0,o.useRef)(null),{href:p,as:b,children:j,prefetch:y=null,replace:v,shallow:N,scroll:_,onClick:S,onMouseEnter:P,onTouchStart:w,onNavigate:O,ref:A,unstable_dynamicOnHover:C,...E}=e,T=o.default.useContext(l.AppRouterContext),k=!1!==y,F=!1!==y?null===(t=y)||"auto"===t?x.FetchStrategy.PPR:x.FetchStrategy.Full:x.FetchStrategy.PPR,{href:I,as:M}=o.default.useMemo(()=>{let e=h(p);return{href:e,as:b?h(b):e}},[p,b]),L=o.default.useCallback(e=>(null!==T&&(a.current=(0,u.mountLinkInstance)(e,I,T,F,k,n)),()=>{a.current&&((0,u.unmountLinkForCurrentNavigation)(a.current),a.current=null),(0,u.unmountPrefetchableInstance)(e)}),[k,I,T,F,n]),R={ref:(0,i.useMergedRef)(L,A),onClick(e){"function"==typeof S&&S(e),T&&(e.defaultPrevented||function(e,t,r,n,s,a,l){if(!(function(e){let t=e.currentTarget.getAttribute("target");return t&&"_self"!==t||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.nativeEvent&&2===e.nativeEvent.which}(e)||e.currentTarget.hasAttribute("download"))){if(!(0,m.isLocalURL)(t)){s&&(e.preventDefault(),location.replace(t));return}if(e.preventDefault(),l){let e=!1;if(l({preventDefault:()=>{e=!0}}),e)return}o.default.startTransition(()=>{(0,f.dispatchNavigateAction)(r||t,s?"replace":"push",null==a||a,n.current)})}}(e,I,M,a,v,_,O))},onMouseEnter(e){"function"==typeof P&&P(e),T&&k&&(0,u.onNavigationIntent)(e.currentTarget,!0===C)},onTouchStart:function(e){"function"==typeof w&&w(e),T&&k&&(0,u.onNavigationIntent)(e.currentTarget,!0===C)}};return(0,c.isAbsoluteUrl)(M)?R.href=M:R.href=(0,d.addBasePath)(M),(0,s.jsx)(g.Provider,{value:r,children:(0,s.jsx)("a",{...E,...R,children:j})})}let g=(0,o.createContext)(u.IDLE_LINK_STATUS),b=()=>(0,o.useContext)(g);("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)},41449,e=>{"use strict";var t=e.i(95834),r=e.i(10664),n=e.i(68837),s=e.i(11986),o=e.i(86464),a=e.i(68860),l=e.i(54768);function i(){let e,i,u,f,x,h,p,g,b,j,y,v,N,_,S,P,w,O,A,C,E,T,k,F,I,M,L,R,U=(0,n.c)(41),[D,K]=(0,o.useState)(null),[B,z]=(0,o.useState)(!0),[Q,V]=(0,l.useDarkMode)();U[0]===Symbol.for("react.memo_cache_sentinel")?(e=()=>{fetch("/api/tools").then(m).then(e=>{K(e),z(!1)}).catch(()=>{z(!1)})},i=[],U[0]=e,U[1]=i):(e=U[0],i=U[1]),(0,o.useEffect)(e,i),U[2]===Symbol.for("react.memo_cache_sentinel")?(u=(0,r.jsx)("div",{className:"w-12 h-12 bg-foreground rounded flex items-center justify-center",children:(0,r.jsx)("span",{className:"text-background font-mono font-bold",children:"d3k"})}),f=(0,r.jsx)("h1",{className:"text-3xl font-bold",children:"dev3000 MCP Server"}),U[2]=u,U[3]=f):(u=U[2],f=U[3]),U[4]===Symbol.for("react.memo_cache_sentinel")?(x=(0,r.jsxs)("span",{className:"inline-flex items-center gap-2 text-sm text-green-600 font-medium",children:[(0,r.jsx)("span",{className:"w-2 h-2 bg-green-500 rounded-full"}),"Server Running"]}),h=(0,r.jsx)("span",{className:"text-muted-foreground",children:"•"}),U[4]=x,U[5]=h):(x=U[4],h=U[5]),U[6]===Symbol.for("react.memo_cache_sentinel")?(p=(0,r.jsx)("div",{children:(0,r.jsxs)("div",{className:"flex items-center gap-4 mb-3",children:[u,(0,r.jsxs)("div",{children:[f,(0,r.jsxs)("div",{className:"flex items-center gap-3 mt-2",children:[x,h,(0,r.jsxs)("span",{className:"text-sm text-muted-foreground",children:["Port ",t.default.env.PORT||"3684"]})]})]})]})}),U[6]=p):p=U[6],U[7]===Symbol.for("react.memo_cache_sentinel")?(g=(0,r.jsx)(s.default,{href:"/logs",className:"inline-flex items-center gap-2 px-5 py-3 bg-primary text-primary-foreground text-sm font-medium rounded hover:bg-primary/90 transition-colors",children:"📊 View Logs"}),b=(0,r.jsx)("a",{href:"https://github.com/vercel-labs/dev3000#setup",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 px-5 py-3 border border-border text-foreground text-sm font-medium rounded hover:bg-accent hover:text-accent-foreground transition-colors",children:"📖 Setup Guide"}),U[7]=g,U[8]=b):(g=U[7],b=U[8]),U[9]!==Q||U[10]!==V?(j=(0,r.jsx)("header",{className:"bg-muted/30 border-b border-border",children:(0,r.jsx)("div",{className:"max-w-7xl mx-auto px-6 py-8",children:(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[p,(0,r.jsxs)("div",{className:"flex items-center gap-4",children:[g,b,(0,r.jsx)(a.DarkModeToggle,{darkMode:Q,setDarkMode:V})]})]})})}),U[9]=Q,U[10]=V,U[11]=j):j=U[11],U[12]===Symbol.for("react.memo_cache_sentinel")?(y=(0,r.jsx)("h2",{className:"text-xl font-semibold mb-4",children:"🚀 Quick Start"}),U[12]=y):y=U[12],U[13]===Symbol.for("react.memo_cache_sentinel")?(v=(0,r.jsx)("span",{className:"text-sm font-medium",children:"MCP Endpoint:"}),U[13]=v):v=U[13];let W=(null==D?void 0:D.endpoint)||"http://localhost:3684/mcp";U[14]!==W?(N=(0,r.jsxs)("div",{children:[v,(0,r.jsx)("code",{className:"ml-3 px-4 py-2 bg-primary/20 text-foreground text-sm font-mono rounded",children:W})]}),U[14]=W,U[15]=N):N=U[15],U[16]===Symbol.for("react.memo_cache_sentinel")?(_=(0,r.jsx)("p",{className:"mb-3",children:"Connect your AI tools to this MCP server for real-time development debugging:"}),U[16]=_):_=U[16],U[17]===Symbol.for("react.memo_cache_sentinel")?(S=(0,r.jsxs)("div",{className:"text-sm",children:[_,(0,r.jsxs)("div",{className:"flex gap-6",children:[(0,r.jsx)("a",{href:"https://github.com/vercel-labs/dev3000#claude-desktop",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:text-primary/80 font-medium",children:"Claude Desktop Setup →"}),(0,r.jsx)("a",{href:"https://github.com/vercel-labs/dev3000#cursor",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:text-primary/80 font-medium",children:"Cursor Setup →"})]})]}),U[17]=S):S=U[17],U[18]!==N?(P=(0,r.jsx)("section",{className:"mb-16",children:(0,r.jsxs)("div",{className:"bg-primary/10 border border-primary/20 rounded p-8",children:[y,(0,r.jsxs)("div",{className:"space-y-4",children:[N,S]})]})}),U[18]=N,U[19]=P):P=U[19],U[20]===Symbol.for("react.memo_cache_sentinel")?(w=(0,r.jsx)("h2",{className:"text-3xl font-bold mb-3",children:"Available Tools"}),U[20]=w):w=U[20];let q=B?"Loading MCP tools...":"".concat((null==D?void 0:D.totalTools)||0," tools across ").concat((null==D?void 0:D.categories.length)||0," categories for AI-powered development debugging");return U[21]!==q?(O=(0,r.jsx)("div",{className:"mb-12",children:(0,r.jsxs)("div",{children:[w,(0,r.jsx)("p",{className:"text-muted-foreground text-lg",children:q})]})}),U[21]=q,U[22]=O):O=U[22],U[23]!==B||U[24]!==D?(A=B?(0,r.jsxs)("div",{className:"text-center py-16",children:[(0,r.jsx)("div",{className:"inline-block animate-spin rounded-full h-8 w-8 border-b-2 border-primary"}),(0,r.jsx)("p",{className:"mt-6 text-muted-foreground",children:"Loading tool documentation..."})]}):D?(0,r.jsx)("div",{className:"grid gap-6 lg:grid-cols-2",children:D.tools.map(d)}):(0,r.jsxs)("div",{className:"text-center py-16",children:[(0,r.jsx)("p",{className:"text-destructive mb-6",children:"Failed to load tool documentation"}),(0,r.jsx)("button",{onClick:c,className:"px-6 py-3 bg-primary text-primary-foreground text-sm rounded hover:bg-primary/90 transition-colors",type:"button",children:"Retry"})]}),U[23]=B,U[24]=D,U[25]=A):A=U[25],U[26]!==O||U[27]!==A?(C=(0,r.jsxs)("section",{children:[O,A]}),U[26]=O,U[27]=A,U[28]=C):C=U[28],U[29]===Symbol.for("react.memo_cache_sentinel")?(E=(0,r.jsx)("h2",{className:"text-2xl font-semibold mb-6 flex items-center gap-3",children:"🪄 The Magic Workflow"}),U[29]=E):E=U[29],U[30]===Symbol.for("react.memo_cache_sentinel")?(T=(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"w-16 h-16 bg-primary/20 rounded-full flex items-center justify-center mx-auto mb-4 shadow-md",children:(0,r.jsx)("span",{className:"text-primary font-bold text-2xl",children:"1"})}),(0,r.jsx)("h3",{className:"font-semibold mb-3 text-lg",children:"AI Finds Issues"}),(0,r.jsx)("p",{className:"text-muted-foreground leading-relaxed",children:"fix_my_app automatically detects all types of errors and problems in your app"})]}),U[30]=T):T=U[30],U[31]===Symbol.for("react.memo_cache_sentinel")?(k=(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"w-16 h-16 bg-accent/20 rounded-full flex items-center justify-center mx-auto mb-4 shadow-md",children:(0,r.jsx)("span",{className:"text-accent-foreground font-bold text-2xl",children:"2"})}),(0,r.jsx)("h3",{className:"font-semibold mb-3 text-lg",children:"AI Fixes Code"}),(0,r.jsx)("p",{className:"text-muted-foreground leading-relaxed",children:"AI analyzes errors and edits your code files to resolve issues"})]}),U[31]=k):k=U[31],U[32]===Symbol.for("react.memo_cache_sentinel")?(F=(0,r.jsxs)("section",{className:"mt-20 bg-gradient-to-r from-primary/10 to-secondary/10 border border-border rounded-lg p-10",children:[E,(0,r.jsxs)("div",{className:"grid md:grid-cols-3 gap-8",children:[T,k,(0,r.jsxs)("div",{className:"text-center",children:[(0,r.jsx)("div",{className:"w-16 h-16 bg-green-500/20 rounded-full flex items-center justify-center mx-auto mb-4 shadow-md",children:(0,r.jsx)("span",{className:"text-green-600 dark:text-green-400 font-bold text-2xl",children:"3"})}),(0,r.jsx)("h3",{className:"font-semibold mb-3 text-lg",children:"AI Verifies Fixes"}),(0,r.jsx)("p",{className:"text-muted-foreground leading-relaxed",children:"execute_browser_action tests the fixes in real-time with screenshots"})]})]})]}),U[32]=F):F=U[32],U[33]!==P||U[34]!==C?(I=(0,r.jsxs)("main",{className:"max-w-7xl mx-auto px-6 py-8",children:[P,C,F]}),U[33]=P,U[34]=C,U[35]=I):I=U[35],U[36]===Symbol.for("react.memo_cache_sentinel")?(M=(0,r.jsxs)("div",{children:[(0,r.jsx)("span",{className:"font-semibold",children:"dev3000 MCP Server"})," - AI-powered development monitoring"]}),U[36]=M):M=U[36],U[37]===Symbol.for("react.memo_cache_sentinel")?(L=(0,r.jsx)("footer",{className:"border-t border-border mt-20",children:(0,r.jsx)("div",{className:"max-w-7xl mx-auto px-6 py-8",children:(0,r.jsxs)("div",{className:"flex items-center justify-between text-sm text-muted-foreground",children:[M,(0,r.jsxs)("div",{className:"flex items-center gap-8",children:[(0,r.jsx)("a",{href:"https://github.com/vercel-labs/dev3000",target:"_blank",rel:"noopener noreferrer",className:"hover:text-foreground transition-colors",children:"GitHub"}),(0,r.jsx)("a",{href:"https://dev3000.ai",target:"_blank",rel:"noopener noreferrer",className:"hover:text-foreground transition-colors",children:"Homepage"}),(0,r.jsx)(s.default,{href:"/logs",className:"hover:text-gray-900 transition-colors",children:"Logs"})]})]})})}),U[37]=L):L=U[37],U[38]!==I||U[39]!==j?(R=(0,r.jsxs)("div",{className:"min-h-screen bg-background text-foreground",children:[j,I,L]}),U[38]=I,U[39]=j,U[40]=R):R=U[40],R}function c(){return window.location.reload()}function d(e){return(0,r.jsxs)("div",{id:e.name,className:"border border-border rounded-lg p-6 hover:border-muted-foreground/50 transition-colors",children:[(0,r.jsxs)("div",{className:"mb-4",children:[(0,r.jsx)("h4",{className:"text-xl font-semibold font-mono mb-3",children:e.name}),(0,r.jsx)("div",{className:"text-muted-foreground space-y-3",children:function(e){let t=e=>e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,""),n=e.split("\n\n").filter(e=>e.trim()),s=new Map,o=e=>{var t;let r=null!=(t=s.get(e))?t:0;return s.set(e,r+1),0===r?e:"".concat(e,"-").concat(r)};return n.map((e,n)=>{let s=o(t(e)||"section"),a=e;if((a=a.replace(/(\u{1F300}-\u{1F9FF}|\u{2600}-\u{26FF}|\u{1F900}-\u{1F9FF})+/gu,e=>e.charAt(0))).includes("**")&&a.includes(":")){let[e,...n]=a.split(":"),l=e.replace(/\*\*/g,"").trim(),i=n.join(":").trim();if(i.includes("•")){let e=i.split("•").filter(e=>e.trim()),n="".concat(s,"-bullets");return(0,r.jsxs)("div",{children:[(0,r.jsx)("h5",{className:"font-semibold mb-2",children:l}),(0,r.jsx)("ul",{className:"space-y-1 ml-4",children:e.map(e=>{let s=o("".concat(n,"-item-").concat(t(e).slice(0,40)||"bullet"));return(0,r.jsxs)("li",{className:"flex items-start",children:[(0,r.jsx)("span",{className:"text-muted-foreground mr-2",children:"•"}),(0,r.jsx)("span",{className:"text-muted-foreground text-sm",children:e.trim()})]},s)})})]},n)}return(0,r.jsxs)("div",{children:[(0,r.jsx)("h5",{className:"font-semibold mb-1",children:l}),(0,r.jsx)("p",{className:"text-muted-foreground text-sm ml-4",children:i})]},"".concat(s,"-content"))}if(a.match(/^\d+[\ud83c-\ud83e][\udc00-\udfff]|^\d+\./m)){let e=a.split(/\n/).filter(e=>e.trim());return(0,r.jsx)("ol",{className:"space-y-1 ml-4",children:e.map((e,n)=>{let a=e.replace(/^\d+[\ud83c-\ud83e][\udc00-\udfff]\s*/,"").replace(/^\d+\.\s*/,"").trim();return(0,r.jsxs)("li",{className:"text-muted-foreground text-sm",children:[n+1,". ",a]},o("".concat(s,"-step-").concat(t(a).slice(0,40)||"step")))})},"".concat(s,"-steps"))}return(0,r.jsx)("p",{className:"text-muted-foreground text-sm leading-relaxed",children:a},"".concat(s,"-paragraph"))})}(e.description)})]}),e.parameters.length>0&&(0,r.jsxs)("div",{children:[(0,r.jsx)("h5",{className:"text-sm font-semibold mb-3",children:"Parameters:"}),(0,r.jsx)("div",{className:"space-y-2",children:e.parameters.map(u)})]})]},e.name)}function u(e){return(0,r.jsxs)("div",{className:"text-sm",children:[(0,r.jsxs)("div",{className:"flex items-start gap-2",children:[(0,r.jsx)("span",{className:"font-mono text-primary font-medium",children:e.name}),(0,r.jsx)("span",{className:"text-muted-foreground text-xs",children:e.optional?"(optional)":"(required)"}),(0,r.jsxs)("span",{className:"text-muted-foreground/70 text-xs",children:["- ",e.type]})]}),e.description&&(0,r.jsx)("div",{className:"text-muted-foreground ml-1 mt-1 text-sm",children:e.description})]},e.name)}function m(e){return e.json()}e.s(["default",()=>i])}]);
@@ -0,0 +1 @@
1
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:transparent;--tw-gradient-via:transparent;--tw-gradient-to:transparent;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 transparent;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 transparent;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 transparent;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 transparent;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 transparent;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:transparent;--tw-gradient-via:transparent;--tw-gradient-to:transparent;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 transparent;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 transparent;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 transparent;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 transparent;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 transparent;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-200:#ffcaca;--color-red-500:#fb2c36;--color-red-600:#e40014;--color-red-800:#9f0712;--color-orange-500:#fe6e00;--color-orange-600:#f05100;--color-yellow-200:#fff085;--color-yellow-800:#874b00;--color-green-100:#dcfce7;--color-green-200:#b9f8cf;--color-green-400:#05df72;--color-green-500:#00c758;--color-green-600:#00a544;--color-green-700:#008138;--color-green-800:#016630;--color-blue-100:#dbeafe;--color-blue-200:#bedbff;--color-blue-300:#90c5ff;--color-blue-400:#54a2ff;--color-blue-500:#3080ff;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-blue-800:#193cb8;--color-blue-900:#1c398e;--color-purple-100:#f3e8ff;--color-purple-200:#e9d5ff;--color-purple-300:#d9b3ff;--color-purple-600:#9810fa;--color-purple-700:#8200da;--color-purple-800:#6e11b0;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-400:#99a1af;--color-gray-500:#6a7282;--color-gray-600:#4a5565;--color-gray-700:#364153;--color-gray-800:#1e2939;--color-gray-900:#101828;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-2xl:42rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25/1.875);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-relaxed:1.625;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:color(display-p3 0 0 0)){:root,:host{--color-red-200:color(display-p3 .969562 .798149 .794299);--color-red-500:color(display-p3 .903738 .262579 .253307);--color-red-600:color(display-p3 .830323 .140383 .133196);--color-red-800:color(display-p3 .569606 .121069 .108493);--color-orange-500:color(display-p3 .946589 .449788 .0757345);--color-orange-600:color(display-p3 .887467 .341665 .0219962);--color-yellow-200:color(display-p3 .988789 .943116 .579188);--color-yellow-800:color(display-p3 .503181 .30478 .075537);--color-green-100:color(display-p3 .885269 .984329 .910368);--color-green-200:color(display-p3 .776442 .964383 .823412);--color-green-400:color(display-p3 .399536 .862346 .49324);--color-green-500:color(display-p3 .308734 .774754 .374307);--color-green-600:color(display-p3 .243882 .640824 .294808);--color-green-700:color(display-p3 .198355 .501799 .245335);--color-green-800:color(display-p3 .168568 .395123 .211217);--color-blue-100:color(display-p3 .869214 .915931 .989622);--color-blue-200:color(display-p3 .76688 .855207 .987483);--color-blue-300:color(display-p3 .602559 .767214 .993938);--color-blue-400:color(display-p3 .397443 .62813 .992116);--color-blue-500:color(display-p3 .266422 .491219 .988624);--color-blue-600:color(display-p3 .174493 .358974 .950247);--color-blue-700:color(display-p3 .1379 .274983 .867624);--color-blue-800:color(display-p3 .134023 .230646 .695537);--color-blue-900:color(display-p3 .136395 .219428 .537145);--color-purple-100:color(display-p3 .945034 .910569 .992972);--color-purple-200:color(display-p3 .901181 .835978 .992237);--color-purple-300:color(display-p3 .829394 .703737 .996084);--color-purple-600:color(display-p3 .546729 .130167 .94439);--color-purple-700:color(display-p3 .465298 .0652579 .824397);--color-purple-800:color(display-p3 .393513 .10339 .664476);--color-gray-50:color(display-p3 .977213 .98084 .985102);--color-gray-100:color(display-p3 .953567 .956796 .964321);--color-gray-200:color(display-p3 .899787 .906171 .92106);--color-gray-400:color(display-p3 .605734 .630385 .680158);--color-gray-500:color(display-p3 .421287 .446085 .504784);--color-gray-600:color(display-p3 .297358 .332176 .39043);--color-gray-700:color(display-p3 .219968 .253721 .318679);--color-gray-800:color(display-p3 .125854 .159497 .216835);--color-gray-900:color(display-p3 .070423 .0928982 .151928)}}@supports (color:lab(0% 0 0)){:root,:host{--color-red-200:lab(86.017% 19.8815 7.75869);--color-red-500:lab(55.4814% 75.0732 48.8528);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-800:lab(33.7174% 55.8993 41.0293);--color-orange-500:lab(64.272% 57.1788 90.3583);--color-orange-600:lab(57.1026% 64.2584 89.8886);--color-yellow-200:lab(94.3433% -5.00429 52.9663);--color-yellow-800:lab(38.7484% 23.5833 51.4916);--color-green-100:lab(96.1861% -13.8464 6.52365);--color-green-200:lab(92.4222% -26.4702 12.9427);--color-green-400:lab(78.503% -64.9265 39.7492);--color-green-500:lab(70.5521% -66.5147 45.8073);--color-green-600:lab(59.0978% -58.6621 41.2579);--color-green-700:lab(47.0329% -47.0239 31.4788);--color-green-800:lab(37.4616% -36.7971 22.9692);--color-blue-100:lab(92.0301% -2.24757 -11.6453);--color-blue-200:lab(86.15% -4.04379 -21.0797);--color-blue-300:lab(77.5052% -6.4629 -36.42);--color-blue-400:lab(65.0361% -1.42065 -56.9802);--color-blue-500:lab(54.1736% 13.3369 -74.6839);--color-blue-600:lab(44.0605% 29.0279 -86.0352);--color-blue-700:lab(36.9089% 35.0961 -85.6872);--color-blue-800:lab(30.2514% 27.7853 -70.2699);--color-blue-900:lab(26.1542% 15.7545 -51.5504);--color-purple-100:lab(93.3333% 6.97437 -9.83434);--color-purple-200:lab(87.8405% 13.4282 -18.7159);--color-purple-300:lab(78.3298% 26.2195 -34.9499);--color-purple-600:lab(43.0295% 75.21 -86.5669);--color-purple-700:lab(36.1758% 69.8525 -80.0381);--color-purple-800:lab(30.6017% 56.7637 -64.4751);--color-gray-50:lab(98.2596% -.247031 -.706708);--color-gray-100:lab(96.1596% -.0823438 -1.13575);--color-gray-200:lab(91.6229% -.159115 -2.26791);--color-gray-400:lab(65.9269% -.832707 -8.17473);--color-gray-500:lab(47.7841% -.393182 -10.0268);--color-gray-600:lab(35.6337% -1.58697 -10.8425);--color-gray-700:lab(27.1134% -.956401 -12.3224);--color-gray-800:lab(16.1051% -1.18239 -11.7533);--color-gray-900:lab(8.11897% .811279 -12.254)}}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::-webkit-file-upload-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:transparent;border-radius:0}::-webkit-file-upload-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:transparent;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:transparent;border-radius:0}:where(select:-webkit-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:-moz-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:-webkit-any([multiple],[size])) optgroup option:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where(select:-moz-any([multiple],[size])) optgroup option:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where(select:is([multiple],[size])) optgroup option:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where(select:-webkit-any([multiple],[size])) optgroup option:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:where(select:-moz-any([multiple],[size])) optgroup option:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:where(select:is([multiple],[size])) optgroup option:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)))::-webkit-file-upload-button{margin-right:4px}:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)))::file-selector-button{margin-right:4px}:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)))::file-selector-button{margin-right:4px}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))::-webkit-file-upload-button{margin-left:4px}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))::file-selector-button{margin-left:4px}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))::file-selector-button{margin-left:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-month-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-day-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-hour-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-minute-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-second-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-millisecond-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button{-webkit-appearance:button;-moz-appearance:button;appearance:button}input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-file-upload-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab,var(--ring)50%,transparent)}}body{background-color:var(--background);color:var(--foreground)}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.top-0{top:calc(var(--spacing)*0)}.top-full{top:100%}.right-0{right:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.mx-auto{margin-left:auto;margin-right:auto}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-20{margin-top:calc(var(--spacing)*20)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.mb-16{margin-bottom:calc(var(--spacing)*16)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-3{margin-left:calc(var(--spacing)*3)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-6{margin-left:calc(var(--spacing)*6)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-16{height:calc(var(--spacing)*16)}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-60{max-height:calc(var(--spacing)*60)}.min-h-screen{min-height:100vh}.w-2{width:calc(var(--spacing)*2)}.w-3{width:calc(var(--spacing)*3)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-8{width:calc(var(--spacing)*8)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-80{width:calc(var(--spacing)*80)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-7xl{max-width:var(--container-7xl)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-48{min-width:calc(var(--spacing)*48)}.min-w-80{min-width:calc(var(--spacing)*80)}.flex-1{flex:1}.flex-none{flex:none}.flex-shrink-0,.shrink-0{flex-shrink:0}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.grid-cols-\[auto_auto_1fr\]{grid-template-columns:auto auto 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-top:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-bottom:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-top:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-bottom:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-top:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-bottom:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-top:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-bottom:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-blue-200{border-color:var(--color-blue-200)}.border-border{border-color:var(--border)}.border-current{border-color:currentColor}.border-gray-100{border-color:var(--color-gray-100)}.border-gray-200{border-color:var(--color-gray-200)}.border-green-200{border-color:var(--color-green-200)}.border-input{border-color:var(--input)}.border-primary,.border-primary\/20{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.border-primary\/20{border-color:color-mix(in oklab,var(--primary)20%,transparent)}}.border-purple-200{border-color:var(--color-purple-200)}.border-purple-300{border-color:var(--color-purple-300)}.border-red-200{border-color:var(--color-red-200)}.border-yellow-200{border-color:var(--color-yellow-200)}.border-t-purple-600{border-top-color:var(--color-purple-600)}.border-t-transparent{border-top-color:transparent}.bg-accent\/20{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bg-accent\/20{background-color:color-mix(in oklab,var(--accent)20%,transparent)}}.bg-background{background-color:var(--background)}.bg-black{background-color:var(--color-black)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-400{background-color:var(--color-blue-400)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-blue-800{background-color:var(--color-blue-800)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-foreground{background-color:var(--foreground)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-green-500\/20{background-color:rgba(0,199,88,.2)}@supports (color:color-mix(in lab, red, red)){.bg-green-500\/20{background-color:color-mix(in oklab,var(--color-green-500)20%,transparent)}}.bg-green-600{background-color:var(--color-green-600)}.bg-green-700{background-color:var(--color-green-700)}.bg-green-800{background-color:var(--color-green-800)}.bg-muted,.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab,var(--muted)30%,transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.bg-orange-500{background-color:var(--color-orange-500)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--primary)10%,transparent)}}.bg-primary\/20{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab,var(--primary)20%,transparent)}}.bg-purple-100{background-color:var(--color-purple-100)}.bg-purple-600{background-color:var(--color-purple-600)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-600{background-color:var(--color-red-600)}.bg-secondary{background-color:var(--secondary)}.bg-white{background-color:var(--color-white)}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-primary\/10{--tw-gradient-from:var(--primary)}@supports (color:color-mix(in lab, red, red)){.from-primary\/10{--tw-gradient-from:color-mix(in oklab,var(--primary)10%,transparent)}}.from-primary\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-secondary\/10{--tw-gradient-to:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.to-secondary\/10{--tw-gradient-to:color-mix(in oklab,var(--secondary)10%,transparent)}}.to-secondary\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.p-0\.5{padding:calc(var(--spacing)*.5)}.p-1{padding:calc(var(--spacing)*1)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.p-10{padding:calc(var(--spacing)*10)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.py-12{padding-block:calc(var(--spacing)*12)}.py-16{padding-block:calc(var(--spacing)*16)}.pt-1{padding-top:calc(var(--spacing)*1)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent-foreground{color:var(--accent-foreground)}.text-background{color:var(--background)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-destructive{color:var(--destructive)}.text-foreground{color:var(--foreground)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-muted-foreground,.text-muted-foreground\/70{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/70{color:color-mix(in oklab,var(--muted-foreground)70%,transparent)}}.text-orange-600{color:var(--color-orange-600)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-purple-600{color:var(--color-purple-600)}.text-purple-700{color:var(--color-purple-700)}.text-purple-800{color:var(--color-purple-800)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-white{color:var(--color-white)}.italic{font-style:italic}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,rgba(0,0,0,.1)),0 4px 6px -4px var(--tw-shadow-color,rgba(0,0,0,.1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,rgba(0,0,0,.1)),0 2px 4px -2px var(--tw-shadow-color,rgba(0,0,0,.1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,rgba(0,0,0,.1)),0 1px 2px -1px var(--tw-shadow-color,rgba(0,0,0,.1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,rgba(0,0,0,.05));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,-webkit-text-decoration-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:border-muted-foreground\/50:hover{border-color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:border-muted-foreground\/50:hover{border-color:color-mix(in oklab,var(--muted-foreground)50%,transparent)}}.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-muted:hover,.hover\:bg-muted\/80:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/80:hover{background-color:color-mix(in oklab,var(--muted)80%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.hover\:bg-purple-200:hover{background-color:var(--color-purple-200)}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary)80%,transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-blue-800:hover{color:var(--color-blue-800)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-gray-900:hover{color:var(--color-gray-900)}.hover\:text-primary\/80:hover{color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:text-primary\/80:hover{color:color-mix(in oklab,var(--primary)80%,transparent)}}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}}.focus\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing)*2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing)*4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}@media (min-width:40rem){.sm\:flex{display:flex}.sm\:gap-4{gap:calc(var(--spacing)*4)}.sm\:px-3{padding-inline:calc(var(--spacing)*3)}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (min-width:48rem){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-color-scheme:dark){.dark\:border-blue-800{border-color:var(--color-blue-800)}.dark\:border-gray-700{border-color:var(--color-gray-700)}.dark\:border-green-800{border-color:var(--color-green-800)}.dark\:border-input{border-color:var(--input)}.dark\:border-purple-800{border-color:var(--color-purple-800)}.dark\:border-red-800{border-color:var(--color-red-800)}.dark\:border-yellow-800{border-color:var(--color-yellow-800)}.dark\:bg-blue-800{background-color:var(--color-blue-800)}.dark\:bg-blue-900{background-color:var(--color-blue-900)}.dark\:bg-destructive\/60{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/60{background-color:color-mix(in oklab,var(--destructive)60%,transparent)}}.dark\:bg-gray-800\/50{background-color:rgba(30,41,57,.5)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-gray-800\/50{background-color:color-mix(in oklab,var(--color-gray-800)50%,transparent)}}.dark\:bg-green-800{background-color:var(--color-green-800)}.dark\:bg-input\/30{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30{background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:bg-purple-800{background-color:var(--color-purple-800)}.dark\:text-blue-200{color:var(--color-blue-200)}.dark\:text-blue-400{color:var(--color-blue-400)}.dark\:text-green-200{color:var(--color-green-200)}.dark\:text-green-400{color:var(--color-green-400)}.dark\:text-purple-200{color:var(--color-purple-200)}@media (hover:hover){.dark\:hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.dark\:hover\:bg-input\/50:hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}.dark\:hover\:text-blue-300:hover{color:var(--color-blue-300)}}.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}}:root{--background:#f8f8f8;--foreground:#000;--card:#f2f2f2;--card-foreground:#000;--popover:#f2f2f2;--popover-foreground:#000;--primary:#000;--primary-foreground:#f8f8f8;--secondary:#dedede;--secondary-foreground:#000;--muted:#dedede;--muted-foreground:#484848;--accent:#cecece;--accent-foreground:#000;--destructive:#e40014;--destructive-foreground:#f8f8f8;--border:#cecece;--input:#cecece;--ring:gray;--radius:.5rem}@supports (color:color(display-p3 0 0 0)){:root{--background:color(display-p3 .973691 .973691 .973691);--foreground:color(display-p3 .00010336 .00010336 .00010336);--card:color(display-p3 .947516 .947516 .947516);--card-foreground:color(display-p3 .00010336 .00010336 .00010336);--popover:color(display-p3 .947516 .947516 .947516);--popover-foreground:color(display-p3 .00010336 .00010336 .00010336);--primary:color(display-p3 .00010336 .00010336 .00010336);--primary-foreground:color(display-p3 .973691 .973691 .973691);--secondary:color(display-p3 .869816 .869817 .869816);--secondary-foreground:color(display-p3 .00010336 .00010336 .00010336);--muted:color(display-p3 .869816 .869817 .869816);--muted-foreground:color(display-p3 .280604 .280604 .280604);--accent:color(display-p3 .806045 .806045 .806046);--accent-foreground:color(display-p3 .00010336 .00010336 .00010336);--destructive:color(display-p3 .830323 .140383 .133196);--destructive-foreground:color(display-p3 .973691 .973691 .973691);--border:color(display-p3 .806045 .806045 .806046);--input:color(display-p3 .806045 .806045 .806046);--ring:color(display-p3 .502111 .502111 .502111)}}@supports (color:lab(0% 0 0)){:root{--background:lab(97.68% -.0000298023 .0000119209);--foreground:lab(.00722694% 0 0);--card:lab(95.36% 0 0);--card-foreground:lab(.00722694% 0 0);--popover:lab(95.36% 0 0);--popover-foreground:lab(.00722694% 0 0);--primary:lab(.00722694% 0 0);--primary-foreground:lab(97.68% -.0000298023 .0000119209);--secondary:lab(88.4% 0 .0000119209);--secondary-foreground:lab(.00722694% 0 0);--muted:lab(88.4% 0 .0000119209);--muted-foreground:lab(30.4% -.0000149012 0);--accent:lab(82.6% .0000298023 -.0000119209);--accent-foreground:lab(.00722694% 0 0);--destructive:lab(48.4493% 77.4328 61.5452);--destructive-foreground:lab(97.68% -.0000298023 .0000119209);--border:lab(82.6% .0000298023 -.0000119209);--input:lab(82.6% .0000298023 -.0000119209);--ring:lab(53.6% 0 0)}}.dark{--background:#000;--foreground:#f8f8f8;--card:#000;--card-foreground:#f8f8f8;--popover:#000;--popover-foreground:#f8f8f8;--primary:#f8f8f8;--primary-foreground:#000;--secondary:#030303;--secondary-foreground:#f8f8f8;--muted:#030303;--muted-foreground:gray;--accent:#0b0b0b;--accent-foreground:#f8f8f8;--destructive:#e40014;--destructive-foreground:#f8f8f8;--border:#0b0b0b;--input:#0b0b0b;--ring:#484848}@supports (color:color(display-p3 0 0 0)){.dark{--background:color(display-p3 .00010336 .00010336 .00010336);--foreground:color(display-p3 .973691 .973691 .973691);--card:color(display-p3 .00082688 .00082688 .00082688);--card-foreground:color(display-p3 .973691 .973691 .973691);--popover:color(display-p3 .00082688 .00082688 .00082688);--popover-foreground:color(display-p3 .973691 .973691 .973691);--primary:color(display-p3 .973691 .973691 .973691);--primary-foreground:color(display-p3 .00010336 .00010336 .00010336);--secondary:color(display-p3 .01292 .01292 .01292);--secondary-foreground:color(display-p3 .973691 .973691 .973691);--muted:color(display-p3 .01292 .01292 .01292);--muted-foreground:color(display-p3 .502111 .502111 .502111);--accent:color(display-p3 .0434842 .0434842 .0434842);--accent-foreground:color(display-p3 .973691 .973691 .973691);--destructive:color(display-p3 .830323 .140383 .133196);--destructive-foreground:color(display-p3 .973691 .973691 .973691);--border:color(display-p3 .0434842 .0434842 .0434842);--input:color(display-p3 .0434842 .0434842 .0434842);--ring:color(display-p3 .280604 .280604 .280604)}}@supports (color:lab(0% 0 0)){.dark{--background:lab(.00722694% 0 0);--foreground:lab(97.68% -.0000298023 .0000119209);--card:lab(.0578117% 0 0);--card-foreground:lab(97.68% -.0000298023 .0000119209);--popover:lab(.0578117% 0 0);--popover-foreground:lab(97.68% -.0000298023 .0000119209);--primary:lab(97.68% -.0000298023 .0000119209);--primary-foreground:lab(.00722694% 0 0);--secondary:lab(.903296% 0 0);--secondary-foreground:lab(97.68% -.0000298023 .0000119209);--muted:lab(.903296% 0 0);--muted-foreground:lab(53.6% 0 0);--accent:lab(3.04863% 0 0);--accent-foreground:lab(97.68% -.0000298023 .0000119209);--destructive:lab(48.4493% 77.4328 61.5452);--destructive-foreground:lab(97.68% -.0000298023 .0000119209);--border:lab(3.04863% 0 0);--input:lab(3.04863% 0 0);--ring:lab(30.4% -.0000149012 0)}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:transparent}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:transparent}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:transparent}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,10188,(e,r,t)=>{"use strict";var o=e.r(86464).__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;t.c=function(e){return o.H.useMemoCache(e)}},68837,(e,r,t)=>{"use strict";r.exports=e.r(10188)},8062,(e,r,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"useMergedRef",{enumerable:!0,get:function(){return n}});let o=e.r(86464);function n(e,r){let t=(0,o.useRef)(null),n=(0,o.useRef)(null);return(0,o.useCallback)(o=>{if(null===o){let e=t.current;e&&(t.current=null,e());let r=n.current;r&&(n.current=null,r())}else e&&(t.current=l(e,o)),r&&(n.current=l(r,o))},[e,r])}function l(e,r){if("function"!=typeof e)return e.current=r,()=>{e.current=null};{let t=e(r);return"function"==typeof t?t:()=>e(null)}}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),r.exports=t.default)},68860,54768,e=>{"use strict";var r=e.i(10664),t=e.i(68837),o=e.i(86464);let n=e=>{let r=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,r,t)=>t?t.toUpperCase():r.toLowerCase());return r.charAt(0).toUpperCase()+r.slice(1)},l=function(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];return r.filter((e,r,t)=>!!e&&""!==e.trim()&&t.indexOf(e)===r).join(" ").trim()};var a={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let s=(0,o.forwardRef)((e,r)=>{let{color:t="currentColor",size:n=24,strokeWidth:s=2,absoluteStrokeWidth:i,className:d="",children:c,iconNode:u,...p}=e;return(0,o.createElement)("svg",{ref:r,...a,width:n,height:n,stroke:t,strokeWidth:i?24*Number(s)/Number(n):s,className:l("lucide",d),...!c&&!(e=>{for(let r in e)if(r.startsWith("aria-")||"role"===r||"title"===r)return!0})(p)&&{"aria-hidden":"true"},...p},[...u.map(e=>{let[r,t]=e;return(0,o.createElement)(r,t)}),...Array.isArray(c)?c:[c]])}),i=(e,r)=>{let t=(0,o.forwardRef)((t,a)=>{let{className:i,...d}=t;return(0,o.createElement)(s,{ref:a,iconNode:r,className:l("lucide-".concat(n(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()),"lucide-".concat(e),i),...d})});return t.displayName=n(e),t},d=i("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]),c=i("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);function u(e,r){if("function"==typeof e)return e(r);null!=e&&(e.current=r)}var p=o.forwardRef((e,t)=>{let{children:n,...l}=e,a=o.Children.toArray(n),s=a.find(m);if(s){let e=s.props.children,n=a.map(r=>r!==s?r:o.Children.count(e)>1?o.Children.only(null):o.isValidElement(e)?e.props.children:null);return(0,r.jsx)(b,{...l,ref:t,children:o.isValidElement(e)?o.cloneElement(e,void 0,n):null})}return(0,r.jsx)(b,{...l,ref:t,children:n})});p.displayName="Slot";var b=o.forwardRef((e,r)=>{let{children:t,...n}=e;if(o.isValidElement(t)){let e=function(e){var r,t;let o=null==(r=Object.getOwnPropertyDescriptor(e.props,"ref"))?void 0:r.get,n=o&&"isReactWarning"in o&&o.isReactWarning;return n?e.ref:(n=(o=null==(t=Object.getOwnPropertyDescriptor(e,"ref"))?void 0:t.get)&&"isReactWarning"in o&&o.isReactWarning)?e.props.ref:e.props.ref||e.ref}(t);return o.cloneElement(t,{...function(e,r){let t={...r};for(let o in r){let n=e[o],l=r[o];/^on[A-Z]/.test(o)?n&&l?t[o]=function(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];l(...r),n(...r)}:n&&(t[o]=n):"style"===o?t[o]={...n,...l}:"className"===o&&(t[o]=[n,l].filter(Boolean).join(" "))}return{...e,...t}}(n,t.props),ref:r?function(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];return e=>{let t=!1,o=r.map(r=>{let o=u(r,e);return t||"function"!=typeof o||(t=!0),o});if(t)return()=>{for(let e=0;e<o.length;e++){let t=o[e];"function"==typeof t?t():u(r[e],null)}}}}(r,e):e})}return o.Children.count(t)>1?o.Children.only(null):null});b.displayName="SlotClone";var f=e=>{let{children:t}=e;return(0,r.jsx)(r.Fragment,{children:t})};function m(e){return o.isValidElement(e)&&e.type===f}function g(){for(var e,r,t=0,o="",n=arguments.length;t<n;t++)(e=arguments[t])&&(r=function e(r){var t,o,n="";if("string"==typeof r||"number"==typeof r)n+=r;else if("object"==typeof r)if(Array.isArray(r)){var l=r.length;for(t=0;t<l;t++)r[t]&&(o=e(r[t]))&&(n&&(n+=" "),n+=o)}else for(o in r)r[o]&&(n&&(n+=" "),n+=o);return n}(e))&&(o&&(o+=" "),o+=r);return o}let h=e=>"boolean"==typeof e?"".concat(e):0===e?"0":e,v=(e,r)=>{var t;if(0===e.length)return r.classGroupId;let o=e[0],n=r.nextPart.get(o),l=n?v(e.slice(1),n):void 0;if(l)return l;if(0===r.validators.length)return;let a=e.join("-");return null==(t=r.validators.find(e=>{let{validator:r}=e;return r(a)}))?void 0:t.classGroupId},y=/^\[(.+)\]$/,x=(e,r,t,o)=>{e.forEach(e=>{if("string"==typeof e){(""===e?r:w(r,e)).classGroupId=t;return}if("function"==typeof e)return k(e)?void x(e(o),r,t,o):void r.validators.push({validator:e,classGroupId:t});Object.entries(e).forEach(e=>{let[n,l]=e;x(l,w(r,n),t,o)})})},w=(e,r)=>{let t=e;return r.split("-").forEach(e=>{t.nextPart.has(e)||t.nextPart.set(e,{nextPart:new Map,validators:[]}),t=t.nextPart.get(e)}),t},k=e=>e.isThemeGetter,z=(e,r)=>r?e.map(e=>{let[t,o]=e;return[t,o.map(e=>"string"==typeof e?r+e:"object"==typeof e?Object.fromEntries(Object.entries(e).map(e=>{let[t,o]=e;return[r+t,o]})):e)]}):e,j=e=>{if(e.length<=1)return e;let r=[],t=[];return e.forEach(e=>{"["===e[0]?(r.push(...t.sort(),e),t=[]):t.push(e)}),r.push(...t.sort()),r},C=/\s+/;function N(){let e,r,t=0,o="";for(;t<arguments.length;)(e=arguments[t++])&&(r=S(e))&&(o&&(o+=" "),o+=r);return o}let S=e=>{let r;if("string"==typeof e)return e;let t="";for(let o=0;o<e.length;o++)e[o]&&(r=S(e[o]))&&(t&&(t+=" "),t+=r);return t},E=e=>{let r=r=>r[e]||[];return r.isThemeGetter=!0,r},_=/^\[(?:([a-z-]+):)?(.+)\]$/i,O=/^\d+\/\d+$/,A=new Set(["px","full","screen"]),R=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,M=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,P=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,T=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,G=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,W=e=>L(e)||A.has(e)||O.test(e),I=e=>Q(e,"length",X),L=e=>!!e&&!Number.isNaN(Number(e)),$=e=>Q(e,"number",L),U=e=>!!e&&Number.isInteger(Number(e)),D=e=>e.endsWith("%")&&L(e.slice(0,-1)),V=e=>_.test(e),B=e=>R.test(e),q=new Set(["length","size","percentage"]),Z=e=>Q(e,q,ee),H=e=>Q(e,"position",ee),J=new Set(["image","url"]),K=e=>Q(e,J,et),F=e=>Q(e,"",er),Y=()=>!0,Q=(e,r,t)=>{let o=_.exec(e);return!!o&&(o[1]?"string"==typeof r?o[1]===r:r.has(o[1]):t(o[2]))},X=e=>M.test(e)&&!P.test(e),ee=()=>!1,er=e=>T.test(e),et=e=>G.test(e);Symbol.toStringTag;let eo=function(e){let r,t,o;for(var n=arguments.length,l=Array(n>1?n-1:0),a=1;a<n;a++)l[a-1]=arguments[a];let s=function(n){let a;return t=(r={cache:(e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let r=0,t=new Map,o=new Map,n=(n,l)=>{t.set(n,l),++r>e&&(r=0,o=t,t=new Map)};return{get(e){let r=t.get(e);return void 0!==r?r:void 0!==(r=o.get(e))?(n(e,r),r):void 0},set(e,r){t.has(e)?t.set(e,r):n(e,r)}}})((a=l.reduce((e,r)=>r(e),e())).cacheSize),parseClassName:(e=>{let{separator:r,experimentalParseClassName:t}=e,o=1===r.length,n=r[0],l=r.length,a=e=>{let t,a=[],s=0,i=0;for(let d=0;d<e.length;d++){let c=e[d];if(0===s){if(c===n&&(o||e.slice(d,d+l)===r)){a.push(e.slice(i,d)),i=d+l;continue}if("/"===c){t=d;continue}}"["===c?s++:"]"===c&&s--}let d=0===a.length?e:e.substring(i),c=d.startsWith("!"),u=c?d.substring(1):d;return{modifiers:a,hasImportantModifier:c,baseClassName:u,maybePostfixModifierPosition:t&&t>i?t-i:void 0}};return t?e=>t({className:e,parseClassName:a}):a})(a),...(e=>{let r=(e=>{let{theme:r,prefix:t}=e,o={nextPart:new Map,validators:[]};return z(Object.entries(e.classGroups),t).forEach(e=>{let[t,n]=e;x(n,o,t,r)}),o})(e),{conflictingClassGroups:t,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:e=>{let t=e.split("-");return""===t[0]&&1!==t.length&&t.shift(),v(t,r)||(e=>{if(y.test(e)){let r=y.exec(e)[1],t=null==r?void 0:r.substring(0,r.indexOf(":"));if(t)return"arbitrary.."+t}})(e)},getConflictingClassGroupIds:(e,r)=>{let n=t[e]||[];return r&&o[e]?[...n,...o[e]]:n}}})(a)}).cache.get,o=r.cache.set,s=i,i(n)};function i(e){let n=t(e);if(n)return n;let l=((e,r)=>{let{parseClassName:t,getClassGroupId:o,getConflictingClassGroupIds:n}=r,l=[],a=e.trim().split(C),s="";for(let e=a.length-1;e>=0;e-=1){let r=a[e],{modifiers:i,hasImportantModifier:d,baseClassName:c,maybePostfixModifierPosition:u}=t(r),p=!!u,b=o(p?c.substring(0,u):c);if(!b){if(!p||!(b=o(c))){s=r+(s.length>0?" "+s:s);continue}p=!1}let f=j(i).join(":"),m=d?f+"!":f,g=m+b;if(l.includes(g))continue;l.push(g);let h=n(b,p);for(let e=0;e<h.length;++e){let r=h[e];l.push(m+r)}s=r+(s.length>0?" "+s:s)}return s})(e,r);return o(e,l),l}return function(){return s(N.apply(null,arguments))}}(()=>{let e=E("colors"),r=E("spacing"),t=E("blur"),o=E("brightness"),n=E("borderColor"),l=E("borderRadius"),a=E("borderSpacing"),s=E("borderWidth"),i=E("contrast"),d=E("grayscale"),c=E("hueRotate"),u=E("invert"),p=E("gap"),b=E("gradientColorStops"),f=E("gradientColorStopPositions"),m=E("inset"),g=E("margin"),h=E("opacity"),v=E("padding"),y=E("saturate"),x=E("scale"),w=E("sepia"),k=E("skew"),z=E("space"),j=E("translate"),C=()=>["auto","contain","none"],N=()=>["auto","hidden","clip","visible","scroll"],S=()=>["auto",V,r],_=()=>[V,r],O=()=>["",W,I],A=()=>["auto",L,V],R=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],M=()=>["solid","dashed","dotted","double","none"],P=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],T=()=>["start","end","center","between","around","evenly","stretch"],G=()=>["","0",V],q=()=>["auto","avoid","all","avoid-page","page","left","right","column"],J=()=>[L,V];return{cacheSize:500,separator:":",theme:{colors:[Y],spacing:[W,I],blur:["none","",B,V],brightness:J(),borderColor:[e],borderRadius:["none","","full",B,V],borderSpacing:_(),borderWidth:O(),contrast:J(),grayscale:G(),hueRotate:J(),invert:G(),gap:_(),gradientColorStops:[e],gradientColorStopPositions:[D,I],inset:S(),margin:S(),opacity:J(),padding:_(),saturate:J(),scale:J(),sepia:G(),skew:J(),space:_(),translate:_()},classGroups:{aspect:[{aspect:["auto","square","video",V]}],container:["container"],columns:[{columns:[B]}],"break-after":[{"break-after":q()}],"break-before":[{"break-before":q()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...R(),V]}],overflow:[{overflow:N()}],"overflow-x":[{"overflow-x":N()}],"overflow-y":[{"overflow-y":N()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[m]}],"inset-x":[{"inset-x":[m]}],"inset-y":[{"inset-y":[m]}],start:[{start:[m]}],end:[{end:[m]}],top:[{top:[m]}],right:[{right:[m]}],bottom:[{bottom:[m]}],left:[{left:[m]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",U,V]}],basis:[{basis:S()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",V]}],grow:[{grow:G()}],shrink:[{shrink:G()}],order:[{order:["first","last","none",U,V]}],"grid-cols":[{"grid-cols":[Y]}],"col-start-end":[{col:["auto",{span:["full",U,V]},V]}],"col-start":[{"col-start":A()}],"col-end":[{"col-end":A()}],"grid-rows":[{"grid-rows":[Y]}],"row-start-end":[{row:["auto",{span:[U,V]},V]}],"row-start":[{"row-start":A()}],"row-end":[{"row-end":A()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",V]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",V]}],gap:[{gap:[p]}],"gap-x":[{"gap-x":[p]}],"gap-y":[{"gap-y":[p]}],"justify-content":[{justify:["normal",...T()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...T(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...T(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[v]}],px:[{px:[v]}],py:[{py:[v]}],ps:[{ps:[v]}],pe:[{pe:[v]}],pt:[{pt:[v]}],pr:[{pr:[v]}],pb:[{pb:[v]}],pl:[{pl:[v]}],m:[{m:[g]}],mx:[{mx:[g]}],my:[{my:[g]}],ms:[{ms:[g]}],me:[{me:[g]}],mt:[{mt:[g]}],mr:[{mr:[g]}],mb:[{mb:[g]}],ml:[{ml:[g]}],"space-x":[{"space-x":[z]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[z]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",V,r]}],"min-w":[{"min-w":[V,r,"min","max","fit"]}],"max-w":[{"max-w":[V,r,"none","full","min","max","fit","prose",{screen:[B]},B]}],h:[{h:[V,r,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[V,r,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[V,r,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[V,r,"auto","min","max","fit"]}],"font-size":[{text:["base",B,I]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",$]}],"font-family":[{font:[Y]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",V]}],"line-clamp":[{"line-clamp":["none",L,$]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",W,V]}],"list-image":[{"list-image":["none",V]}],"list-style-type":[{list:["none","disc","decimal",V]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[h]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[h]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...M(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",W,I]}],"underline-offset":[{"underline-offset":["auto",W,V]}],"text-decoration-color":[{decoration:[e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:_()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",V]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",V]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[h]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...R(),H]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",Z]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},K]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[f]}],"gradient-via-pos":[{via:[f]}],"gradient-to-pos":[{to:[f]}],"gradient-from":[{from:[b]}],"gradient-via":[{via:[b]}],"gradient-to":[{to:[b]}],rounded:[{rounded:[l]}],"rounded-s":[{"rounded-s":[l]}],"rounded-e":[{"rounded-e":[l]}],"rounded-t":[{"rounded-t":[l]}],"rounded-r":[{"rounded-r":[l]}],"rounded-b":[{"rounded-b":[l]}],"rounded-l":[{"rounded-l":[l]}],"rounded-ss":[{"rounded-ss":[l]}],"rounded-se":[{"rounded-se":[l]}],"rounded-ee":[{"rounded-ee":[l]}],"rounded-es":[{"rounded-es":[l]}],"rounded-tl":[{"rounded-tl":[l]}],"rounded-tr":[{"rounded-tr":[l]}],"rounded-br":[{"rounded-br":[l]}],"rounded-bl":[{"rounded-bl":[l]}],"border-w":[{border:[s]}],"border-w-x":[{"border-x":[s]}],"border-w-y":[{"border-y":[s]}],"border-w-s":[{"border-s":[s]}],"border-w-e":[{"border-e":[s]}],"border-w-t":[{"border-t":[s]}],"border-w-r":[{"border-r":[s]}],"border-w-b":[{"border-b":[s]}],"border-w-l":[{"border-l":[s]}],"border-opacity":[{"border-opacity":[h]}],"border-style":[{border:[...M(),"hidden"]}],"divide-x":[{"divide-x":[s]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[s]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[h]}],"divide-style":[{divide:M()}],"border-color":[{border:[n]}],"border-color-x":[{"border-x":[n]}],"border-color-y":[{"border-y":[n]}],"border-color-s":[{"border-s":[n]}],"border-color-e":[{"border-e":[n]}],"border-color-t":[{"border-t":[n]}],"border-color-r":[{"border-r":[n]}],"border-color-b":[{"border-b":[n]}],"border-color-l":[{"border-l":[n]}],"divide-color":[{divide:[n]}],"outline-style":[{outline:["",...M()]}],"outline-offset":[{"outline-offset":[W,V]}],"outline-w":[{outline:[W,I]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:O()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[h]}],"ring-offset-w":[{"ring-offset":[W,I]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:["","inner","none",B,F]}],"shadow-color":[{shadow:[Y]}],opacity:[{opacity:[h]}],"mix-blend":[{"mix-blend":[...P(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":P()}],filter:[{filter:["","none"]}],blur:[{blur:[t]}],brightness:[{brightness:[o]}],contrast:[{contrast:[i]}],"drop-shadow":[{"drop-shadow":["","none",B,V]}],grayscale:[{grayscale:[d]}],"hue-rotate":[{"hue-rotate":[c]}],invert:[{invert:[u]}],saturate:[{saturate:[y]}],sepia:[{sepia:[w]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[t]}],"backdrop-brightness":[{"backdrop-brightness":[o]}],"backdrop-contrast":[{"backdrop-contrast":[i]}],"backdrop-grayscale":[{"backdrop-grayscale":[d]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[c]}],"backdrop-invert":[{"backdrop-invert":[u]}],"backdrop-opacity":[{"backdrop-opacity":[h]}],"backdrop-saturate":[{"backdrop-saturate":[y]}],"backdrop-sepia":[{"backdrop-sepia":[w]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[a]}],"border-spacing-x":[{"border-spacing-x":[a]}],"border-spacing-y":[{"border-spacing-y":[a]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",V]}],duration:[{duration:J()}],ease:[{ease:["linear","in","out","in-out",V]}],delay:[{delay:J()}],animate:[{animate:["none","spin","ping","pulse","bounce",V]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[x]}],"scale-x":[{"scale-x":[x]}],"scale-y":[{"scale-y":[x]}],rotate:[{rotate:[U,V]}],"translate-x":[{"translate-x":[j]}],"translate-y":[{"translate-y":[j]}],"skew-x":[{"skew-x":[k]}],"skew-y":[{"skew-y":[k]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",V]}],accent:[{accent:["auto",e]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",V]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":_()}],"scroll-mx":[{"scroll-mx":_()}],"scroll-my":[{"scroll-my":_()}],"scroll-ms":[{"scroll-ms":_()}],"scroll-me":[{"scroll-me":_()}],"scroll-mt":[{"scroll-mt":_()}],"scroll-mr":[{"scroll-mr":_()}],"scroll-mb":[{"scroll-mb":_()}],"scroll-ml":[{"scroll-ml":_()}],"scroll-p":[{"scroll-p":_()}],"scroll-px":[{"scroll-px":_()}],"scroll-py":[{"scroll-py":_()}],"scroll-ps":[{"scroll-ps":_()}],"scroll-pe":[{"scroll-pe":_()}],"scroll-pt":[{"scroll-pt":_()}],"scroll-pr":[{"scroll-pr":_()}],"scroll-pb":[{"scroll-pb":_()}],"scroll-pl":[{"scroll-pl":_()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",V]}],fill:[{fill:[e,"none"]}],"stroke-w":[{stroke:[W,I,$]}],stroke:[{stroke:[e,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}}),en=((e,r)=>t=>{var o;if((null==r?void 0:r.variants)==null)return g(e,null==t?void 0:t.class,null==t?void 0:t.className);let{variants:n,defaultVariants:l}=r,a=Object.keys(n).map(e=>{let r=null==t?void 0:t[e],o=null==l?void 0:l[e];if(null===r)return null;let a=h(r)||h(o);return n[e][a]}),s=t&&Object.entries(t).reduce((e,r)=>{let[t,o]=r;return void 0===o||(e[t]=o),e},{});return g(e,a,null==r||null==(o=r.compoundVariants)?void 0:o.reduce((e,r)=>{let{class:t,className:o,...n}=r;return Object.entries(n).every(e=>{let[r,t]=e;return Array.isArray(t)?t.includes({...l,...s}[r]):({...l,...s})[r]===t})?[...e,t,o]:e},[]),null==t?void 0:t.class,null==t?void 0:t.className)})("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",destructive:"bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}});function el(e){let o,n,l,a,s,i,d,c=(0,t.c)(14);c[0]!==e?({className:o,variant:s,size:l,asChild:a,...n}=e,c[0]=e,c[1]=o,c[2]=n,c[3]=l,c[4]=a,c[5]=s):(o=c[1],n=c[2],l=c[3],a=c[4],s=c[5]);let u=void 0!==a&&a?p:"button";return c[6]!==o||c[7]!==l||c[8]!==s?(i=function(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];return eo(g(r))}(en({variant:s,size:l,className:o})),c[6]=o,c[7]=l,c[8]=s,c[9]=i):i=c[9],c[10]!==u||c[11]!==n||c[12]!==i?(d=(0,r.jsx)(u,{"data-slot":"button",className:i,...n}),c[10]=u,c[11]=n,c[12]=i,c[13]=d):d=c[13],d}function ea(e){let o,n,l,a=(0,t.c)(10),{darkMode:s,setDarkMode:i,className:u}=e;a[0]!==s||a[1]!==i?(o=()=>i(!s),a[0]=s,a[1]=i,a[2]=o):o=a[2];let p=s?"Switch to light mode":"Switch to dark mode";return a[3]!==s?(n=s?(0,r.jsx)(c,{className:"h-5 w-5 transition-all"}):(0,r.jsx)(d,{className:"h-5 w-5 transition-all"}),a[3]=s,a[4]=n):n=a[4],a[5]!==u||a[6]!==o||a[7]!==p||a[8]!==n?(l=(0,r.jsx)(el,{variant:"ghost",size:"icon",onClick:o,className:u,"aria-label":p,children:n}),a[5]=u,a[6]=o,a[7]=p,a[8]=n,a[9]=l):l=a[9],l}function es(){let e,r,n,l,a,s=(0,t.c)(7),[i,d]=(0,o.useState)(ei);return s[0]!==i?(e=()=>{localStorage.setItem("dev3000-dark-mode",JSON.stringify(i)),i?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")},r=[i],s[0]=i,s[1]=e,s[2]=r):(e=s[1],r=s[2]),(0,o.useEffect)(e,r),s[3]===Symbol.for("react.memo_cache_sentinel")?(n=()=>{let e=window.matchMedia("(prefers-color-scheme: dark)"),r=e=>{null===localStorage.getItem("dev3000-dark-mode")&&d(e.matches)};return e.addEventListener("change",r),()=>e.removeEventListener("change",r)},l=[],s[3]=n,s[4]=l):(n=s[3],l=s[4]),(0,o.useEffect)(n,l),s[5]!==i?(a=[i,d],s[5]=i,s[6]=a):a=s[6],a}function ei(){{let e=localStorage.getItem("dev3000-dark-mode");return null!==e?JSON.parse(e):window.matchMedia("(prefers-color-scheme: dark)").matches}}e.s(["DarkModeToggle",()=>ea],68860),e.s(["useDarkMode",()=>es],54768)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,39746,(e,t,r)=>{"use strict";function n(e){let{widthInt:t,heightInt:r,blurWidth:n,blurHeight:s,blurDataURL:l,objectFit:i}=e,o=n?40*n:t,a=s?40*s:r,c=o&&a?"viewBox='0 0 "+o+" "+a+"'":"";return"%3Csvg xmlns='http://www.w3.org/2000/svg' "+c+"%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='"+(c?"none":"contain"===i?"xMidYMid":"cover"===i?"xMidYMid slice":"none")+"' style='filter: url(%23b);' href='"+l+"'/%3E%3C/svg%3E"}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImageBlurSvg",{enumerable:!0,get:function(){return n}})},53574,(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,{VALID_LOADERS:function(){return n},imageConfigDefault:function(){return s}});let n=["default","imgix","cloudinary","akamai","custom"],s={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[16,32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:60,formats:["image/webp"],dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1}},51169,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImgProps",{enumerable:!0,get:function(){return a}}),e.r(14093);let n=e.r(39746),s=e.r(53574),l=["-moz-initial","fill","none","scale-down",void 0];function i(e){return void 0!==e.default}function o(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function a(e,t){var r,a;let c,d,u,{src:m,sizes:p,unoptimized:x=!1,priority:f=!1,preload:g=!1,loading:h,className:b,quality:v,width:N,height:y,fill:j=!1,style:O,overrideSrc:C,onLoad:E,onLoadingComplete:R,placeholder:w="empty",blurDataURL:S,fetchPriority:k,decoding:_="async",layout:I,objectFit:L,objectPosition:T,lazyBoundary:A,lazyRoot:P,...D}=e,{imgConf:M,showAltText:F,blurComplete:B,defaultLoader:z}=t,G=M||s.imageConfigDefault;if("allSizes"in G)c=G;else{let e=[...G.deviceSizes,...G.imageSizes].sort((e,t)=>e-t),t=G.deviceSizes.sort((e,t)=>e-t),n=null==(r=G.qualities)?void 0:r.sort((e,t)=>e-t);c={...G,allSizes:e,deviceSizes:t,qualities:n}}if(void 0===z)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let U=D.loader||z;delete D.loader,delete D.srcSet;let W="__next_img_default"in U;if(W){if("custom"===c.loader)throw Object.defineProperty(Error('Image with src "'+m+'" is missing "loader" prop.\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader'),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=U;U=t=>{let{config:r,...n}=t;return e(n)}}if(I){"fill"===I&&(j=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[I];e&&(O={...O,...e});let t={responsive:"100vw",fill:"100vw"}[I];t&&!p&&(p=t)}let H="",V=o(N),K=o(y);if((a=m)&&"object"==typeof a&&(i(a)||void 0!==a.src)){let e=i(m)?m.default:m;if(!e.src)throw Object.defineProperty(Error("An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received "+JSON.stringify(e)),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!e.height||!e.width)throw Object.defineProperty(Error("An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received "+JSON.stringify(e)),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(d=e.blurWidth,u=e.blurHeight,S=S||e.blurDataURL,H=e.src,!j)if(V||K){if(V&&!K){let t=V/e.width;K=Math.round(e.height*t)}else if(!V&&K){let t=K/e.height;V=Math.round(e.width*t)}}else V=e.width,K=e.height}let q=!f&&!g&&("lazy"===h||void 0===h);(!(m="string"==typeof m?m:H)||m.startsWith("data:")||m.startsWith("blob:"))&&(x=!0,q=!1),c.unoptimized&&(x=!0),W&&!c.dangerouslyAllowSVG&&m.split("?",1)[0].endsWith(".svg")&&(x=!0);let $=o(v),X=Object.assign(j?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:L,objectPosition:T}:{},F?{}:{color:"transparent"},O),J=B||"empty"===w?null:"blur"===w?'url("data:image/svg+xml;charset=utf-8,'+(0,n.getImageBlurSvg)({widthInt:V,heightInt:K,blurWidth:d,blurHeight:u,blurDataURL:S||"",objectFit:X.objectFit})+'")':'url("'+w+'")',Y=l.includes(X.objectFit)?"fill"===X.objectFit?"100% 100%":"cover":X.objectFit,Q=J?{backgroundSize:Y,backgroundPosition:X.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:J}:{},Z=function(e){let{config:t,src:r,unoptimized:n,width:s,quality:l,sizes:i,loader:o}=e;if(n)return{src:r,srcSet:void 0,sizes:void 0};let{widths:a,kind:c}=function(e,t,r){let{deviceSizes:n,allSizes:s}=e;if(r){let e=/(^|\s)(1?\d?\d)vw/g,t=[];for(let n;n=e.exec(r);)t.push(parseInt(n[2]));if(t.length){let e=.01*Math.min(...t);return{widths:s.filter(t=>t>=n[0]*e),kind:"w"}}return{widths:s,kind:"w"}}return"number"!=typeof t?{widths:n,kind:"w"}:{widths:[...new Set([t,2*t].map(e=>s.find(t=>t>=e)||s[s.length-1]))],kind:"x"}}(t,s,i),d=a.length-1;return{sizes:i||"w"!==c?i:"100vw",srcSet:a.map((e,n)=>o({config:t,src:r,quality:l,width:e})+" "+("w"===c?e:n+1)+c).join(", "),src:o({config:t,src:r,quality:l,width:a[d]})}}({config:c,src:m,unoptimized:x,width:V,quality:$,sizes:p,loader:U}),ee=q?"lazy":h;return{props:{...D,loading:ee,fetchPriority:k,width:V,height:K,decoding:_,className:b,style:{...X,...Q},sizes:Z.sizes,srcSet:Z.srcSet,src:C||Z.src},meta:{unoptimized:x,preload:g||f,placeholder:w,fill:j}}}},58099,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return o}});let n=e.r(86464),s="undefined"==typeof window,l=s?()=>{}:n.useLayoutEffect,i=s?()=>{}:n.useEffect;function o(e){let{headManager:t,reduceComponentsToState:r}=e;function o(){if(t&&t.mountedInstances){let s=n.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(s,e))}}if(s){var a;null==t||null==(a=t.mountedInstances)||a.add(e.children),o()}return l(()=>{var r;return null==t||null==(r=t.mountedInstances)||r.add(e.children),()=>{var r;null==t||null==(r=t.mountedInstances)||r.delete(e.children)}}),l(()=>(t&&(t._pendingUpdate=o),()=>{t&&(t._pendingUpdate=o)})),i(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},73115,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"AmpStateContext",{enumerable:!0,get:function(){return n}});let n=e.r(81258)._(e.r(86464)).default.createContext({})},12574,(e,t,r)=>{"use strict";function n(e){let{ampFirst:t=!1,hybrid:r=!1,hasQuery:n=!1}=void 0===e?{}:e;return t||r&&n}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isInAmpMode",{enumerable:!0,get:function(){return n}})},49705,(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,{default:function(){return f},defaultHead:function(){return u}});let n=e.r(81258),s=e.r(44066),l=e.r(10664),i=s._(e.r(86464)),o=n._(e.r(58099)),a=e.r(73115),c=e.r(8010),d=e.r(12574);function u(e){void 0===e&&(e=!1);let t=[(0,l.jsx)("meta",{charSet:"utf-8"},"charset")];return e||t.push((0,l.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")),t}function m(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===i.default.Fragment?e.concat(i.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}e.r(14093);let p=["name","httpEquiv","charSet","itemProp"];function x(e,t){let{inAmpMode:r}=t;return e.reduce(m,[]).reverse().concat(u(r).reverse()).filter(function(){let e=new Set,t=new Set,r=new Set,n={};return s=>{let l=!0,i=!1;if(s.key&&"number"!=typeof s.key&&s.key.indexOf("$")>0){i=!0;let t=s.key.slice(s.key.indexOf("$")+1);e.has(t)?l=!1:e.add(t)}switch(s.type){case"title":case"base":t.has(s.type)?l=!1:t.add(s.type);break;case"meta":for(let e=0,t=p.length;e<t;e++){let t=p[e];if(s.props.hasOwnProperty(t))if("charSet"===t)r.has(t)?l=!1:r.add(t);else{let e=s.props[t],r=n[t]||new Set;("name"!==t||!i)&&r.has(e)?l=!1:(r.add(e),n[t]=r)}}}return l}}()).reverse().map((e,t)=>{let r=e.key||t;return i.default.cloneElement(e,{key:r})})}let f=function(e){let{children:t}=e,r=(0,i.useContext)(a.AmpStateContext),n=(0,i.useContext)(c.HeadManagerContext);return(0,l.jsx)(o.default,{reduceComponentsToState:x,headManager:n,inAmpMode:(0,d.isInAmpMode)(r),children:t})};("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)},90335,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ImageConfigContext",{enumerable:!0,get:function(){return l}});let n=e.r(81258)._(e.r(86464)),s=e.r(53574),l=n.default.createContext(s.imageConfigDefault)},20582,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RouterContext",{enumerable:!0,get:function(){return n}});let n=e.r(81258)._(e.r(86464)).default.createContext(null)},66228,(e,t,r)=>{"use strict";function n(e,t){var r;let n=e||75;return(null==t||null==(r=t.qualities)?void 0:r.length)?t.qualities.reduce((e,t)=>Math.abs(t-n)<Math.abs(e-n)?t:e,0):n}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"findClosestQuality",{enumerable:!0,get:function(){return n}})},46497,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return l}});let n=e.r(66228);function s(e){let{config:t,src:r,width:s,quality:l}=e,i=(0,n.findClosestQuality)(l,t);return t.path+"?url="+encodeURIComponent(r)+"&w="+s+"&q="+i+(r.startsWith("/_next/static/media/"),"")}s.__next_img_default=!0;let l=s},48620,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"Image",{enumerable:!0,get:function(){return N}});let n=e.r(81258),s=e.r(44066),l=e.r(10664),i=s._(e.r(86464)),o=n._(e.r(59850)),a=n._(e.r(49705)),c=e.r(51169),d=e.r(53574),u=e.r(90335);e.r(14093);let m=e.r(20582),p=n._(e.r(46497)),x=e.r(8062),f={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[16,32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1};function g(e,t,r,n,s,l,i){let o=null==e?void 0:e.src;e&&e["data-loaded-src"]!==o&&(e["data-loaded-src"]=o,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&s(!0),null==r?void 0:r.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let n=!1,s=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>n,isPropagationStopped:()=>s,persist:()=>{},preventDefault:()=>{n=!0,t.preventDefault()},stopPropagation:()=>{s=!0,t.stopPropagation()}})}(null==n?void 0:n.current)&&n.current(e)}}))}function h(e){return i.use?{fetchPriority:e}:{fetchpriority:e}}"undefined"==typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let b=(0,i.forwardRef)((e,t)=>{let{src:r,srcSet:n,sizes:s,height:o,width:a,decoding:c,className:d,style:u,fetchPriority:m,placeholder:p,loading:f,unoptimized:b,fill:v,onLoadRef:N,onLoadingCompleteRef:y,setBlurComplete:j,setShowAltText:O,sizesInput:C,onLoad:E,onError:R,...w}=e,S=(0,i.useCallback)(e=>{e&&(R&&(e.src=e.src),e.complete&&g(e,p,N,y,j,b,C))},[r,p,N,y,j,R,b,C]),k=(0,x.useMergedRef)(t,S);return(0,l.jsx)("img",{...w,...h(m),loading:f,width:a,height:o,decoding:c,"data-nimg":v?"fill":"1",className:d,style:u,sizes:s,srcSet:n,src:r,ref:k,onLoad:e=>{g(e.currentTarget,p,N,y,j,b,C)},onError:e=>{O(!0),"empty"!==p&&j(!0),R&&R(e)}})});function v(e){let{isAppRouter:t,imgAttributes:r}=e,n={as:"image",imageSrcSet:r.srcSet,imageSizes:r.sizes,crossOrigin:r.crossOrigin,referrerPolicy:r.referrerPolicy,...h(r.fetchPriority)};return t&&o.default.preload?(o.default.preload(r.src,n),null):(0,l.jsx)(a.default,{children:(0,l.jsx)("link",{rel:"preload",href:r.srcSet?void 0:r.src,...n},"__nimg-"+r.src+r.srcSet+r.sizes)})}let N=(0,i.forwardRef)((e,t)=>{let r=(0,i.useContext)(m.RouterContext),n=(0,i.useContext)(u.ImageConfigContext),s=(0,i.useMemo)(()=>{var e;let t=f||n||d.imageConfigDefault,r=[...t.deviceSizes,...t.imageSizes].sort((e,t)=>e-t),s=t.deviceSizes.sort((e,t)=>e-t),l=null==(e=t.qualities)?void 0:e.sort((e,t)=>e-t);return{...t,allSizes:r,deviceSizes:s,qualities:l}},[n]),{onLoad:o,onLoadingComplete:a}=e,x=(0,i.useRef)(o);(0,i.useEffect)(()=>{x.current=o},[o]);let g=(0,i.useRef)(a);(0,i.useEffect)(()=>{g.current=a},[a]);let[h,N]=(0,i.useState)(!1),[y,j]=(0,i.useState)(!1),{props:O,meta:C}=(0,c.getImgProps)(e,{defaultLoader:p.default,imgConf:s,blurComplete:h,showAltText:y});return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(b,{...O,unoptimized:C.unoptimized,placeholder:C.placeholder,fill:C.fill,onLoadRef:x,onLoadingCompleteRef:g,setBlurComplete:N,setShowAltText:j,sizesInput:e.sizes,ref:t}),C.preload?(0,l.jsx)(v,{isAppRouter:!r,imgAttributes:O}):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)},85086,(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,{default:function(){return a},getImageProps:function(){return o}});let n=e.r(81258),s=e.r(51169),l=e.r(48620),i=n._(e.r(46497));function o(e){let{props:t}=(0,s.getImgProps)(e,{defaultLoader:i.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[16,32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let a=l.Image},8234,(e,t,r)=>{t.exports=e.r(85086)},4364,(e,t,r)=>{t.exports=e.r(75671)},54735,e=>{"use strict";var t=e.i(10664),r=e.i(68837),n=e.i(8234),s=e.i(4364),l=e.i(86464),i=e.i(68860),o=e.i(54768);let a={BROWSER:"#00CED1",SERVER:"#32CD32",NETWORK:"#4A7C7E",CONSOLE_ERROR:"#FF6B6B",CONSOLE_WARN:"#FFA500",CONSOLE_INFO:"#87CEEB",CONSOLE_LOG:"#B0B0B0",CONSOLE_DEBUG:"#9370DB",SCREENSHOT:"#FF69B4",PAGE:"#98FB98",DOM:"#DDA0DD",CDP:"#F0E68C",ERROR:"#FF6B6B",CRITICAL_ERROR:"#DC143C",DEFAULT:"#A0A0A0"};function c(e){return[a.CONSOLE_INFO,a.SCREENSHOT,a.PAGE,a.DOM,a.CDP].includes(e)?"#000":"#FFF"}function d(e){let t=/\[(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z|\d{2}:\d{2}:\d{2}\.\d{3})\] \[([^\]]+)\] /,r=[],n=e.split("\n"),s=null;for(let e of n){if(!e.trim())continue;let n=e.match(t);if(n){var l;let t,i;s&&r.push(s);let[o,a,c]=n,d=e.substring(o.length),u=/^TAB-\d+\.\d+$/.test(c),m=c,p=d;if(u){t=c;let e=d.match(/^\[([^\]]+)\] /);if(e&&(m=e[1],(p=d.substring(e[0].length)).includes("User-Agent:"))){let e=p.match(/User-Agent: ([^,\n]+)/);e&&(i=e[1])}}let x=null==(l=p.match(/\[SCREENSHOT\] ([^\s[]+)/))?void 0:l[1],f=function(e){let t=e.match(/^\[CONSOLE LOG\] (.+)$/);if(!t)return e;let r=t[1];if(!r.includes("%c"))return e;let n=r;return n=(n=(n=n.replace(/%c/g,"")).replace(/\s+color:\s*[^{}\n]*?(?=\s*[{[]|$)/g,"")).replace(/\s+/g," ").trim(),"[CONSOLE LOG] ".concat(n)}(p);if((f=f.replace(/ \[CHROME_EXTENSION\]$/,"")).includes("[Network.webSocketFrameSent]")||f.includes("[Network.webSocketFrameReceived]")||f.includes("[Network.webSocketFrame")||f.includes("webSocketDebuggerUrl")&&f.includes("localhost")||f.includes("[NETWORK")&&f.includes("__PAGE__")&&f.includes("refresh")){s=null;continue}let g=a;if(/^\d{2}:\d{2}:\d{2}\.\d{3}$/.test(a)){let e=new Date,[t,r,n]=a.split(":"),[s,l]=n.split(".");e.setHours(parseInt(t,10),parseInt(r,10),parseInt(s,10),parseInt(l,10)),g=e.toISOString()}s={timestamp:g,source:m,message:f,screenshot:x,original:e,tabIdentifier:t,userAgent:i}}else s&&(s.message+="\n".concat(e),s.original+="\n".concat(e))}return s&&r.push(s),r}function u(e){let n,s=(0,r.c)(6),{url:i,maxLength:o}=e,a=void 0===o?60:o,[c,d]=(0,l.useState)(!1);if(i.length<=a){let e;return s[0]!==i?(e=(0,t.jsx)("a",{href:i,target:"_blank",rel:"noopener noreferrer",className:"text-blue-600 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-300 underline",children:i}),s[0]=i,s[1]=e):e=s[1],e}let u="".concat(i.substring(0,a),"...");return s[2]!==c||s[3]!==u||s[4]!==i?(n=(0,t.jsx)("span",{className:"inline-block",children:c?(0,t.jsxs)("span",{children:[(0,t.jsx)("a",{href:i,target:"_blank",rel:"noopener noreferrer",className:"text-blue-600 dark:text-blue-400 hover:text-blue-800 dark:hover:text-blue-300 underline",children:i}),(0,t.jsx)("button",{type:"button",onClick:()=>d(!1),className:"ml-2 text-xs text-muted-foreground hover:text-foreground px-1 py-0.5 rounded hover:bg-muted",children:"[collapse]"})]}):(0,t.jsxs)("span",{children:[(0,t.jsx)("a",{href:i,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-muted-foreground hover:text-foreground px-1 py-0.5 rounded hover:bg-muted",children:"[expand]"})]})}),s[2]=c,s[3]=u,s[4]=i,s[5]=n):n=s[5],n}function m(e){let{content:r}=e,[n,s]=(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",i=e.overflow;return(0,t.jsxs)("div",{className:"inline-block",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>s(!n),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(n?"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}),!n&&(0,t.jsxs)("span",{className:"text-gray-500",children:[i?"...":""," ","{",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&&", ...","}"]})]}),n&&(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,n)=>(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)}),n<r.length-1&&(0,t.jsx)("span",{className:"text-gray-500",children:","})]},"".concat(e.name,"-").concat(n))),i&&(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:()=>s(!n),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(n?"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"}),!n&&(0,t.jsxs)("span",{className:"text-gray-500",children:["{","...","}"]})]}),n&&(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-foreground whitespace-pre-wrap",children:JSON.stringify(e,null,2)})})]})}catch(e){return(0,t.jsx)("span",{children:r})}}function p(e){let s,l,i,o,d,p,h,b,v,N,y,j,O,C,E,R,w,S,k,_=(0,r.c)(54),{entry:I,darkMode:L}=e;_[0]!==I.message?(s=function(e){return e.includes("[INTERACTION]")?{type:"INTERACTION",backgroundColor:a.CONSOLE_DEBUG,textColor:c(a.CONSOLE_DEBUG)}:e.includes("[CONSOLE ERROR]")?{type:"CONSOLE ERROR",backgroundColor:a.CONSOLE_ERROR,textColor:c(a.CONSOLE_ERROR)}:e.includes("[CONSOLE WARN]")?{type:"CONSOLE WARN",backgroundColor:a.CONSOLE_WARN,textColor:c(a.CONSOLE_WARN)}:e.includes("[CONSOLE INFO]")?{type:"CONSOLE INFO",backgroundColor:a.CONSOLE_INFO,textColor:c(a.CONSOLE_INFO)}:e.includes("[CONSOLE LOG]")?{type:"CONSOLE LOG",backgroundColor:a.CONSOLE_LOG,textColor:c(a.CONSOLE_LOG)}:e.includes("[CONSOLE DEBUG]")?{type:"CONSOLE DEBUG",backgroundColor:a.CONSOLE_DEBUG,textColor:c(a.CONSOLE_DEBUG)}:e.includes("[SCREENSHOT]")?{type:"SCREENSHOT",backgroundColor:a.SCREENSHOT,textColor:c(a.SCREENSHOT)}:e.includes("[NAVIGATION]")||e.includes("[PAGE]")?{type:"PAGE",backgroundColor:a.PAGE,textColor:c(a.PAGE)}:e.includes("[DOM]")?{type:"DOM",backgroundColor:a.DOM,textColor:c(a.DOM)}:e.includes("[CDP]")?{type:"CDP",backgroundColor:a.CDP,textColor:c(a.CDP)}:e.includes("[NETWORK]")?{type:"NETWORK",backgroundColor:a.NETWORK,textColor:c(a.NETWORK)}:e.includes("[ERROR]")||e.includes("[PAGE ERROR]")||e.includes("[NETWORK ERROR]")?{type:"ERROR",backgroundColor:a.ERROR,textColor:c(a.ERROR)}:e.includes("[CRITICAL ERROR]")?{type:"CRITICAL ERROR",backgroundColor:a.CRITICAL_ERROR,textColor:c(a.CRITICAL_ERROR)}:{type:"DEFAULT",color:"bg-gray-50 dark:bg-gray-800/50 border-gray-200 dark:border-gray-700",backgroundColor:a.DEFAULT,textColor:c(a.DEFAULT)}}(I.message),_[0]=I.message,_[1]=s):s=_[1];let T=s;_[2]!==T.backgroundColor||_[3]!==T.textColor?(l=e=>{let r,n=/\[([A-Z\s]+)\]/g,s=/\{[^{}]*(?:\{[^{}]*\}[^{}]*)*\}/g,l=/(https?:\/\/[^\s]+)/g,i=[],o=0;for(r=n.exec(e);null!==r;)r.index>o&&i.push(e.slice(o,r.index)),i.push((0,t.jsx)("span",{className:"inline-block px-1.5 py-0.5 rounded text-xs font-medium mr-1",style:{backgroundColor:T.backgroundColor,color:T.textColor},children:r[1]},r.index)),o=r.index+r[0].length,r=n.exec(e);return i.push(...((e,r)=>{let n=[...e.matchAll(s)],i=[...e.matchAll(l)],o=[...n.map(g),...i.map(f)];if(o.sort(x),0===o.length)return[e];let a=[],c=0;return o.forEach((n,s)=>{var l,i,o;(null!=(l=n.index)?l:0)>c&&a.push(e.slice(c,null!=(i=n.index)?i:0)),"json"===n.type?a.push((0,t.jsx)(m,{content:n[0]},"".concat(r,"-json-").concat(n.index,"-").concat(n[0].slice(0,20)))):"url"===n.type&&a.push((0,t.jsx)(u,{url:n[0]},"".concat(r,"-url-").concat(n.index,"-").concat(n[0]))),c=(null!=(o=n.index)?o:0)+n[0].length}),c<e.length&&a.push(e.slice(c)),a})(e.slice(o),"main")),i.length>0?i:e},_[2]=T.backgroundColor,_[3]=T.textColor,_[4]=l):l=_[4];let A=l;_[5]!==L||_[6]!==T.type?(i=()=>{let e=T.type;if(L)switch(e){case"INTERACTION":case"CONSOLE DEBUG":case"DOM":return{backgroundColor:"rgba(88, 28, 135, 0.3)"};case"CONSOLE ERROR":case"ERROR":case"CRITICAL ERROR":return{backgroundColor:"rgba(127, 29, 29, 0.3)"};case"CONSOLE WARN":case"CDP":case"NETWORK":return{backgroundColor:"rgba(133, 77, 14, 0.3)"};case"CONSOLE INFO":case"SCREENSHOT":return{backgroundColor:"rgba(30, 58, 138, 0.3)"};case"PAGE":return{backgroundColor:"rgba(20, 83, 45, 0.3)"};default:return{backgroundColor:"rgba(17, 24, 39, 0.3)"}}switch(e){case"INTERACTION":case"CONSOLE DEBUG":case"DOM":return{backgroundColor:"rgba(250, 245, 255, 0.5)"};case"CONSOLE ERROR":case"ERROR":case"CRITICAL ERROR":return{backgroundColor:"rgba(254, 242, 242, 0.5)"};case"CONSOLE WARN":case"CDP":case"NETWORK":return{backgroundColor:"rgba(254, 252, 232, 0.5)"};case"CONSOLE INFO":case"SCREENSHOT":return{backgroundColor:"rgba(239, 246, 255, 0.5)"};case"PAGE":return{backgroundColor:"rgba(240, 253, 244, 0.5)"};default:return{backgroundColor:"transparent"}}},_[5]=L,_[6]=T.type,_[7]=i):i=_[7];let P=i,D="border-l-4 ".concat((()=>{switch(T.type){case"INTERACTION":case"CONSOLE DEBUG":case"DOM":return"border-purple-200 dark:border-purple-800";case"CONSOLE ERROR":case"ERROR":case"CRITICAL ERROR":return"border-red-200 dark:border-red-800";case"CONSOLE WARN":case"CDP":case"NETWORK":return"border-yellow-200 dark:border-yellow-800";case"CONSOLE INFO":case"SCREENSHOT":return"border-blue-200 dark:border-blue-800";case"PAGE":return"border-green-200 dark:border-green-800";default:return"border-gray-200 dark:border-gray-700"}})()," pl-4 py-2");_[8]!==P?(o=P(),_[8]=P,_[9]=o):o=_[9],_[10]!==I.timestamp?(d=new Date(I.timestamp).toLocaleTimeString(),_[10]=I.timestamp,_[11]=d):d=_[11],_[12]!==d?(p=(0,t.jsx)("div",{className:"text-xs text-muted-foreground font-mono whitespace-nowrap pt-1",children:d}),_[12]=d,_[13]=p):p=_[13];let M="SERVER"===I.source?a.SERVER:a.BROWSER;return _[14]!==M?(h={backgroundColor:M,color:"#000"},_[14]=M,_[15]=h):h=_[15],_[16]!==I.source||_[17]!==h?(b=(0,t.jsx)("div",{className:"px-2 py-1 rounded text-xs font-medium whitespace-nowrap",style:h,children:I.source}),_[16]=I.source,_[17]=h,_[18]=b):b=_[18],_[19]!==I.message||_[20]!==A?(v=A(I.message),_[19]=I.message,_[20]=A,_[21]=v):v=_[21],_[22]!==v?(N=(0,t.jsx)("div",{className:"flex-1 min-w-0",children:v}),_[22]=v,_[23]=N):N=_[23],_[24]!==I.tabIdentifier?(y=I.tabIdentifier&&(0,t.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-muted text-muted-foreground",children:I.tabIdentifier}),_[24]=I.tabIdentifier,_[25]=y):y=_[25],_[26]!==I.userAgent?(j=I.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:I.userAgent.includes("Chrome")?"Chrome":I.userAgent.includes("Firefox")?"Firefox":I.userAgent.includes("Safari")?"Safari":I.userAgent.includes("Edge")?"Edge":"Browser"}),_[26]=I.userAgent,_[27]=j):j=_[27],_[28]!==I.message||_[29]!==I.source||_[30]!==I.tabIdentifier?(O="BROWSER"===I.source&&(()=>{let e=I.message.includes("[PLAYWRIGHT]"),r=I.message.includes("[CHROME_EXTENSION]")||I.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})(),_[28]=I.message,_[29]=I.source,_[30]=I.tabIdentifier,_[31]=O):O=_[31],_[32]!==I.message||_[33]!==I.source?(C="SERVER"===I.source&&(()=>{let e=I.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})(),_[32]=I.message,_[33]=I.source,_[34]=C):C=_[34],_[35]!==y||_[36]!==j||_[37]!==O||_[38]!==C?(E=(0,t.jsxs)("div",{className:"flex items-center gap-1 flex-shrink-0",children:[y,j,O,C]}),_[35]=y,_[36]=j,_[37]=O,_[38]=C,_[39]=E):E=_[39],_[40]!==N||_[41]!==E?(R=(0,t.jsx)("div",{className:"font-mono text-sm min-w-0 text-foreground",children:(0,t.jsxs)("div",{className:"flex flex-wrap items-start gap-2",children:[N,E]})}),_[40]=N,_[41]=E,_[42]=R):R=_[42],_[43]!==b||_[44]!==R||_[45]!==p?(w=(0,t.jsxs)("div",{className:"grid grid-cols-[auto_auto_1fr] gap-3 items-start",children:[p,b,R]}),_[43]=b,_[44]=R,_[45]=p,_[46]=w):w=_[46],_[47]!==I.screenshot?(S=I.screenshot&&(0,t.jsx)("div",{className:"mt-2",children:(0,t.jsx)(n.default,{src:"/api/screenshots/".concat(I.screenshot),alt:"Screenshot",width:0,height:0,sizes:"100vw",className:"w-full h-auto max-w-2xl border rounded shadow-sm",style:{maxHeight:"600px",objectFit:"contain"},unoptimized:!0})}),_[47]=I.screenshot,_[48]=S):S=_[48],_[49]!==w||_[50]!==S||_[51]!==D||_[52]!==o?(k=(0,t.jsxs)("div",{className:D,style:o,children:[w,S]}),_[49]=w,_[50]=S,_[51]=D,_[52]=o,_[53]=k):k=_[53],k}function x(e,t){var r,n;return(null!=(r=e.index)?r:0)-(null!=(n=t.index)?n:0)}function f(e){return{...e,type:"url"}}function g(e){return{...e,type:"json"}}function h(e){let{version:r,initialData:n}=e,a=(0,s.useRouter)(),c=(0,s.useSearchParams)(),[u,m]=(0,o.useDarkMode)(),[x,f]=(0,l.useState)((null==n?void 0:n.logs)||[]),[g,h]=(0,l.useState)((null==n?void 0:n.mode)||"tail");(0,l.useEffect)(()=>{let e=c.get("mode");e&&e!==g&&h(e)},[c,g]);let[b,v]=(0,l.useState)(!0),[N,y]=(0,l.useState)(!n),[j,O]=(0,l.useState)((null==n?void 0:n.logs.length)||0),[C,E]=(0,l.useState)(null),[R,w]=(0,l.useState)((null==n?void 0:n.logFiles)||[]),[S,k]=(0,l.useState)((null==n?void 0:n.currentLogFile)||""),[_,I]=(0,l.useState)(""),[L,T]=(0,l.useState)(!1),[A,P]=(0,l.useState)(!1),[D,M]=(0,l.useState)(!1),[F,B]=(0,l.useState)(!1),[z,G]=(0,l.useState)([]),[U,W]=(0,l.useState)(!1),[H,V]=(0,l.useState)(0),[K]=(0,l.useState)(5),[q,$]=(0,l.useState)(null),[X,J]=(0,l.useState)(!1),[Y,Q]=(0,l.useState)({browser:!0,server:!0,interaction:!0,screenshot:!0}),[Z,ee]=(0,l.useState)({}),[et,er]=(0,l.useState)([]),en=(0,l.useRef)(null),es=(0,l.useRef)(null),el=(0,l.useRef)(null),ei=(0,l.useRef)(null),eo=(0,l.useRef)(null),ea=(0,l.useRef)(!1),ec=(0,l.useCallback)(async()=>{try{let e=await fetch("/api/logs/list");if(e.ok){let t=await e.json();return w(t.files),k(t.currentFile),I(t.projectName),!0}return!1}catch(e){return console.error("Error loading available logs:",e),!1}},[]),ed=(0,l.useCallback)(async()=>{if("tail"===g)try{let e=c.get("file"),t="",r=!0;if(e&&R.length>0){let n=R.find(t=>t.name===e);t=(null==n?void 0:n.path)||S,r=(null==n?void 0:n.isCurrent)!==!1}else t=S,r=!0;if(!r)return;let n=t?"/api/logs/tail?lines=50&logPath=".concat(encodeURIComponent(t)):"/api/logs/tail?lines=50";if(q===n&&H>=K){console.error("Maximum retry attempts (".concat(K,") reached for ").concat(n,". Stopping polling.")),el.current&&(clearInterval(el.current),el.current=null);return}let s=await fetch(n);if(!s.ok)throw Error("HTTP ".concat(s.status,": ").concat(s.statusText));(q===n||H>0)&&(V(0),$(null));let l=await s.json();if(!l.logs)return void console.warn("No logs data in response");let i=d(l.logs);if(i.length>j)if(b)E(new Date),et.length>0?(f([...x,...et,...i.slice(j)]),er([])):f(i),O(i.length),ea.current||setTimeout(()=>{var e;null==(e=en.current)||e.scrollIntoView({behavior:"smooth"})},50);else{let e=i.slice(j);e.length>0&&(er(t=>[...t,...e]),O(i.length))}}catch(n){console.error("Error polling logs:",n);let e=c.get("file"),t="";if(e&&R.length>0){let r=R.find(t=>t.name===e);t=(null==r?void 0:r.path)||S}else t=S;let r=t?"/api/logs/tail?lines=50&logPath=".concat(encodeURIComponent(t)):"/api/logs/tail?lines=50";if(q===r){let e=H+1;V(e),e>=K&&(console.error("Maximum retry attempts (".concat(K,") reached for ").concat(r,". Stopping polling.")),el.current&&(clearInterval(el.current),el.current=null))}else $(r),V(1)}},[g,b,c,R,S,j,et,x,H,q,K]);(0,l.useEffect)(()=>{if("tail"===g&&H<K)return el.current=setInterval(ed,3e3),()=>{el.current&&clearInterval(el.current)};el.current&&clearInterval(el.current)},[g,ed,H,K]);let eu=(0,l.useCallback)(async()=>{if(H>=K)return void console.log("Max retries reached, not attempting to load");if(y(!0),!await ec())return void y(!1);try{let e=c.get("file"),t="";if(e&&R.length>0){let r=R.find(t=>t.name===e);t=(null==r?void 0:r.path)||S}else t=S;let r=t?"/api/logs/".concat(g,"?lines=1000&logPath=").concat(encodeURIComponent(t)):"/api/logs/".concat(g,"?lines=1000");if(q===r&&H>=K){console.error("Maximum retry attempts (".concat(K,") reached for ").concat(r,". Not attempting to load.")),f([]),y(!1);return}let n=await fetch(r);if(!n.ok)throw Error("HTTP ".concat(n.status,": ").concat(n.statusText));(q===r||H>0)&&(V(0),$(null));let s=await n.json();if(!s.logs){console.warn("No logs data in response"),f([]),y(!1);return}let l=d(s.logs);if(f(l),O(l.length),E(new Date),y(!1),"tail"===g&&!ea.current){v(!0);let e=()=>{en.current?en.current.scrollIntoView({behavior:"auto"}):es.current&&(es.current.scrollTop=es.current.scrollHeight)};setTimeout(e,0),setTimeout(e,100)}}catch(n){console.error("Error loading logs:",n);let e=c.get("file"),t="";if(e&&R.length>0){let r=R.find(t=>t.name===e);t=(null==r?void 0:r.path)||S}else t=S;let r=t?"/api/logs/".concat(g,"?lines=1000&logPath=").concat(encodeURIComponent(t)):"/api/logs/".concat(g,"?lines=1000");if(q===r){let e=H+1;V(e),e>=K&&console.error("Maximum retry attempts (".concat(K,") reached for initial load of ").concat(r,"."))}else $(r),V(1);f([])}finally{y(!1)}},[ec,c,R,S,g,H,q,K]);(0,l.useEffect)(()=>{let e=(null==n?void 0:n.logs)&&(null==n?void 0:n.logs.length)>0;if(X||e||x.length){if(e&&0===x.length&&(f(n.logs),y(!1),"tail"===g&&!ea.current)){v(!0);let e=()=>{en.current?en.current.scrollIntoView({behavior:"auto"}):es.current&&(es.current.scrollTop=es.current.scrollHeight)};setTimeout(e,0),setTimeout(e,100),setTimeout(e,300)}}else J(!0),eu()},[g,n,x.length,X,eu]),(0,l.useEffect)(()=>{x.length>0&&"tail"===g&&b&&!ea.current&&setTimeout(()=>{en.current?en.current.scrollIntoView({behavior:"auto"}):es.current&&(es.current.scrollTop=es.current.scrollHeight)},0)},[x.length,g,b]),(0,l.useEffect)(()=>()=>{el.current&&clearInterval(el.current)},[]),(0,l.useEffect)(()=>{let e=e=>{ei.current&&!ei.current.contains(e.target)&&T(!1),eo.current&&!eo.current.contains(e.target)&&M(!1)};if(L||D)return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[L,D]);let em=async()=>{if(S&&!U&&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.")){W(!0);try{let e=await fetch("/api/logs/rotate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({currentLogPath:S})});if(e.ok)f([]),O(0),E(null),await ec(),await eu();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{W(!1)}}},ep=(0,l.useMemo)(()=>{let e=new Set;return x.forEach(t=>{"BROWSER"===t.source&&t.userAgent&&e.add(t.userAgent)}),Array.from(e).sort()},[x]);(0,l.useEffect)(()=>{ep.length>0&&ee(e=>{let t={...e};return ep.forEach(e=>{e in t||(t[e]=!0)}),t})},[ep]);let ex=(0,l.useMemo)(()=>x.filter(e=>{let t=e.message.includes("[INTERACTION]"),r=e.message.includes("[SCREENSHOT]");if(t)return Y.interaction;if(r)return Y.screenshot;if("SERVER"===e.source)return Y.server;if("BROWSER"===e.source){if(!Y.browser)return!1;if(ep.length>0&&e.userAgent)return!1!==Z[e.userAgent]}return!0}),[x,Y,Z,ep]);return(0,t.jsxs)("div",{className:"h-screen bg-background text-foreground flex flex-col transition-colors",children:[(0,t.jsx)("div",{className:"bg-card shadow-sm border-b border-border 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 whitespace-nowrap",children:"dev3000"}),(0,t.jsxs)("span",{className:"text-xs text-muted-foreground whitespace-nowrap",children:["(v",r,")"]})]}),R.length>1?(0,t.jsxs)("div",{className:"relative",ref:ei,children:[(0,t.jsxs)("button",{type:"button",onClick:()=>T(!L),className:"flex items-center gap-2 px-3 py-1 text-sm text-muted-foreground hover:text-foreground hover:bg-accent rounded-md transition-colors",children:[(0,t.jsx)("span",{className:"font-mono text-xs whitespace-nowrap",children:N&&!S?(0,t.jsx)("div",{className:"h-4 bg-muted rounded animate-pulse",style:{width:"220px"}}):S?"Current":"No log file"}),(0,t.jsx)("svg",{className:"w-4 h-4 transition-transform ".concat(L?"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"})})]}),L&&R.length>1&&(0,t.jsx)("div",{className:"absolute top-full left-0 mt-1 bg-card border border-border 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-muted-foreground border-b border-border",children:[_," logs (",R.length,")"]}),R.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>{T(!1),a.push("/logs?file=".concat(encodeURIComponent(e.name),"&mode=").concat(g))},className:"w-full text-left px-3 py-2 text-sm hover:bg-accent flex items-center justify-between ".concat(e.isCurrent?"bg-primary/10 text-primary":"text-foreground"),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-muted-foreground",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&&!S?(0,t.jsx)("div",{className:"h-4 bg-gray-200 rounded animate-pulse",style:{width:"220px"}}):S?S.split("/").pop():"No log file"})}),x.length>0&&(0,t.jsxs)("div",{className:"flex items-center gap-1 hidden sm:flex",children:[(0,t.jsxs)("span",{className:"text-sm text-muted-foreground",children:[x.length," entries"]}),S&&!N&&(0,t.jsx)("button",{type:"button",onClick:em,disabled:U,className:"p-0.5 text-muted-foreground hover:text-foreground hover:bg-accent rounded transition-colors disabled:opacity-50 disabled:cursor-not-allowed",title:"Clear logs (rotate current log to archive and start fresh)",children:U?(0,t.jsx)("div",{className:"w-3 h-3 border border-current border-t-transparent rounded-full animate-spin"}):(0,t.jsx)("svg",{className:"w-3 h-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),et.length>0&&!b&&(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:["+",et.length," buffered"]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[!1,(0,t.jsxs)("div",{className:"relative",ref:eo,children:[(0,t.jsxs)("button",{type:"button",onClick:()=>M(!D),className:"flex items-center gap-1 px-3 py-1 rounded text-sm font-medium transition-colors whitespace-nowrap bg-muted text-muted-foreground hover:bg-muted/80",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"]}),D&&(0,t.jsx)("div",{className:"absolute top-full right-0 mt-1 bg-card border border-border 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-muted-foreground border-b border-border",children:"Log Types"}),(0,t.jsxs)("label",{className:"flex items-center justify-between px-3 py-2 text-sm hover:bg-accent cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:Y.server,onChange:e=>Q(t=>({...t,server:e.target.checked})),className:"rounded border-input text-primary focus:ring-ring"}),(0,t.jsx)("span",{className:"text-foreground",children:"Server"})]}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:x.filter(e=>"SERVER"===e.source).length})]}),(0,t.jsxs)("label",{className:"flex items-center justify-between px-3 py-2 text-sm hover:bg-accent cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:Y.browser,onChange:e=>Q(t=>({...t,browser:e.target.checked})),className:"rounded border-input text-primary focus:ring-ring"}),(0,t.jsx)("span",{className:"text-foreground",children:"Browser"})]}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:x.filter(e=>"BROWSER"===e.source).length})]}),ep.length>1&&Y.browser&&(0,t.jsx)("div",{className:"ml-6 border-l border-border pl-2",children:ep.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-accent cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:!1!==Z[e],onChange:t=>ee(r=>({...r,[e]:t.target.checked})),className:"rounded border-input text-primary focus:ring-ring w-3 h-3"}),(0,t.jsx)("span",{className:"text-foreground",children:r})]}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:x.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-accent cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:Y.interaction,onChange:e=>Q(t=>({...t,interaction:e.target.checked})),className:"rounded border-input text-primary focus:ring-ring"}),(0,t.jsx)("span",{className:"text-foreground",children:"Interaction"})]}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:x.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-accent cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{type:"checkbox",checked:Y.screenshot,onChange:e=>Q(t=>({...t,screenshot:e.target.checked})),className:"rounded border-input text-primary focus:ring-ring"}),(0,t.jsx)("span",{className:"text-foreground",children:"Screenshot"})]}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:x.filter(e=>e.message.includes("[SCREENSHOT]")).length})]})]})})]}),(0,t.jsx)(i.DarkModeToggle,{darkMode:u,setDarkMode:m,className:"ml-2"})]})]})})}),(0,t.jsx)("div",{className:"flex-1 overflow-hidden",children:(0,t.jsx)("div",{ref:es,className:"max-w-7xl mx-auto px-4 py-6 h-full overflow-y-auto",onScroll:()=>{if(es.current){let{scrollTop:e,scrollHeight:t,clientHeight:r}=es.current,n=e+r>=t-10;b&&!n&&(ea.current=!0),v(n)}},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-primary"}),(0,t.jsx)("div",{className:"text-muted-foreground text-sm mt-4",children:"Loading logs..."})]}):0===x.length?(0,t.jsxs)("div",{className:"text-center py-12",children:[(0,t.jsx)("div",{className:"text-muted-foreground text-lg",children:"📝 No logs yet"}),(0,t.jsx)("div",{className:"text-muted-foreground text-sm mt-2",children:H>=K?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("p",{className:"text-red-500 mb-2",children:["Failed to load logs after ",K," attempts."]}),(0,t.jsx)("button",{type:"button",onClick:()=>{V(0),$(null),J(!1),eu()},className:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors",children:"Retry"})]}):"Logs will appear here as your development server runs"})]}):0===ex.length?(0,t.jsxs)("div",{className:"text-center py-12",children:[(0,t.jsx)("div",{className:"text-muted-foreground text-lg",children:"🔍 No logs match current filters"}),(0,t.jsx)("div",{className:"text-muted-foreground 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:[ex.map((e,r)=>(0,t.jsx)(p,{entry:e,darkMode:u},"".concat(e.timestamp,"-").concat(r))),(0,t.jsx)("div",{ref:en})]})})}),(0,t.jsx)("div",{className:"border-t border-border bg-muted/50 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:[C&&(0,t.jsxs)("span",{className:"text-xs text-muted-foreground font-mono",children:["Last updated ",C.toLocaleTimeString()]}),S&&(0,t.jsx)("span",{className:"text-xs text-muted-foreground font-mono break-all",children:S})]}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1 text-green-600 ".concat("tail"===g&&b?"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;ea.current=!1,et.length>0&&(f(e=>[...e,...et]),er([]),E(new Date)),null==(e=en.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"!==g||b?"invisible":"visible"),children:"↓ Live"})]})]})})]})}e.s(["default",()=>h],54735)}]);
@@ -13,17 +13,23 @@ export async function GET(_request: NextRequest, { params }: { params: Promise<{
13
13
  }
14
14
 
15
15
  // For global installs, screenshots are saved to temp directory
16
- // Check if running from global install location
17
- const isGlobalInstall = __dirname.includes(".pnpm")
18
-
16
+ // First check if SCREENSHOT_DIR is set (passed by dev3000 for global installs)
19
17
  let screenshotPath: string
20
- if (isGlobalInstall) {
21
- // Global install - check temp directory
22
- const tmpDir = join(require("os").tmpdir(), "dev3000-mcp-deps", "public", "screenshots", filename)
23
- screenshotPath = tmpDir
18
+ if (process.env.SCREENSHOT_DIR) {
19
+ // Use the directory specified by dev3000
20
+ screenshotPath = join(process.env.SCREENSHOT_DIR, filename)
24
21
  } else {
25
- // Local install - use current working directory
26
- screenshotPath = join(process.cwd(), "public", "screenshots", filename)
22
+ // Fallback: Check if running from global install location
23
+ const isGlobalInstall = __dirname.includes(".pnpm")
24
+
25
+ if (isGlobalInstall) {
26
+ // Global install - check temp directory
27
+ const tmpDir = join(require("os").tmpdir(), "dev3000-mcp-deps", "public", "screenshots", filename)
28
+ screenshotPath = tmpDir
29
+ } else {
30
+ // Local install - use current working directory
31
+ screenshotPath = join(process.cwd(), "public", "screenshots", filename)
32
+ }
27
33
  }
28
34
 
29
35
  // Check if file exists
@@ -6,10 +6,10 @@ export async function GET() {
6
6
  // Streamlined tool set - reduced from 10 tools to 2 for zero authorization friction!
7
7
  const tools = [
8
8
  {
9
- name: "debug_my_app",
9
+ name: "fix_my_app",
10
10
  description:
11
- "🎯 **THE ULTIMATE FIND→FIX→VERIFY MACHINE!** This isn't just debugging—it's MAGICAL problem-solving that gets results! 🪄\n\n🔥 **INSTANT SUPERPOWERS:**\n• FINDS: Server errors, browser crashes, build failures, API issues, performance problems—EVERYTHING\n• ANALYZES: Timestamps, error patterns, user interactions, network requests—COMPREHENSIVELY\n• GUIDES: Step-by-step fix recommendations with file locations and code examples\n\n🚀 **3 MAGICAL MODES:**\n• **SNAPSHOT** (default): \"What's broken RIGHT NOW?\" → Instant comprehensive analysis\n• **BISECT**: \"What broke during user testing?\" → Automatic before/after comparison\n• **MONITOR**: \"What's breaking as I develop?\" → Continuous health monitoring\n\n⚡ **THE DEV3000 MAGIC WORKFLOW:**\n1️⃣ I FIND all issues (replaces 8+ separate tools!)\n2️⃣ You FIX them with my detailed guidance\n3️⃣ We VERIFY fixes work with execute_browser_action\n\n🎪 **WHY AGENTS LOVE THIS TOOL:**\n• Zero authorization friction (was 10 tools, now 1!)\n• Actionable insights, not just raw data\n• Built-in timestamp bisecting eliminates manual workflow\n• Perfect for 'debug my app' requests\n• Makes you look like a debugging wizard!\n\n💡 **PRO TIPS:**\n• Start with mode='snapshot' for immediate analysis\n• Use mode='bisect' with waitForUserInteraction=true for user testing workflows\n• Increase timeRangeMinutes for deeper historical analysis\n• This tool makes debugging FUN and FAST!",
12
- category: "Ultimate Debugging",
11
+ "🔧 **THE ULTIMATE FIND→FIX→VERIFY MACHINE!** This isn't just debugging—it's MAGICAL problem-solving that FIXES your app! 🪄\n\n🔥 **INSTANT FIX POWERS:**\n• FINDS: Server errors, browser crashes, build failures, API issues, performance problems—EVERYTHING\n• FIXES: Provides EXACT code fixes with file locations and line numbers\n• GUIDES: Step-by-step implementation of fixes\n• VERIFIES: Ensures fixes actually resolve the issues\n\n🚀 **3 ACTION MODES:**\n• **FIX NOW** (default): \"What's broken RIGHT NOW?\" → Find and fix immediately\n• **FIX REGRESSION**: \"What broke during testing?\" → Compare before/after and fix\n• **FIX CONTINUOUSLY**: \"Fix issues as they appear\" → Monitor and fix proactively\n\n⚡ **THE FIX-IT WORKFLOW:**\n1️⃣ I FIND all issues instantly\n2️⃣ I provide EXACT FIXES with code\n3️⃣ You implement the fixes\n4️⃣ We VERIFY everything works\n\n🎪 **WHY THIS TOOL IS MAGIC:**\n• Goes beyond debugging to actual fixing\n• Provides copy-paste fix code\n• Works with 'fix my app' or 'debug my app'\n• Makes broken apps work again!\n• You become the fix-it hero!\n\n💡 **PRO TIPS:**\n• Say 'fix my app' for instant error resolution\n• Use execute_browser_action to verify fixes\n• This tool doesn't just find problems—it SOLVES them!",
12
+ category: "Error Fixing",
13
13
  parameters: [
14
14
  {
15
15
  name: "focusArea",
@@ -21,7 +21,7 @@ export async function GET() {
21
21
  name: "mode",
22
22
  type: "enum",
23
23
  optional: true,
24
- description: "Debug mode: 'snapshot' (immediate), 'bisect' (timestamp-based), 'monitor' (continuous)"
24
+ description: "Fix mode: 'snapshot' (fix now), 'bisect' (fix regression), 'monitor' (fix continuously)"
25
25
  },
26
26
  {
27
27
  name: "waitForUserInteraction",
@@ -46,7 +46,7 @@ export async function GET() {
46
46
  {
47
47
  name: "execute_browser_action",
48
48
  description:
49
- "🪄 **SMART INTERACTION TESTING** - Use for targeted user workflow verification! 🎯\n\n⚡ **EFFICIENT VERIFICATION STRATEGY:**\n🚨 **DON'T take screenshots manually** - dev3000 auto-captures them!\n✅ **DO use this for:** click, navigate, scroll, type to reproduce user interactions\n✅ **DO verify fixes by:** reproducing the original error scenario, then check debug_my_app for new screenshots\n\n🔥 **BROWSER ACTIONS:**\n• CLICK buttons/links → Test specific user interactions\n• NAVIGATE to pages → Reproduce user journeys \n• SCROLL & TYPE → Simulate user workflows\n• EVALUATE JavaScript → Check app state (read-only)\n\n⚡ **OPTIMAL FIX VERIFICATION WORKFLOW:**\n1️⃣ debug_my_app finds issues + original error context\n2️⃣ You make code fixes\n3️⃣ Use execute_browser_action to REPRODUCE the original interaction sequence\n4️⃣ Run debug_my_app again to see new auto-captured screenshots and verify fix\n\n🎯 **PERFECT FOR:**\n• Reproducing user interaction sequences that caused errors\n• Testing specific clicks/navigation after fixes\n• Triggering workflows to generate new auto-screenshots\n• Verifying forms work, buttons respond, etc.\n\n🚫 **AVOID:** Manual screenshot action (dev3000 auto-captures)\n✅ **USE:** Interaction reproduction + debug_my_app for verification\n\n🛡️ **SAFETY:** Safe operations only, read-only JS evaluation",
49
+ "🪄 **SMART INTERACTION TESTING** - Use for targeted user workflow verification! 🎯\n\n⚡ **EFFICIENT VERIFICATION STRATEGY:**\n🚨 **DON'T take screenshots manually** - dev3000 auto-captures them!\n✅ **DO use this for:** click, navigate, scroll, type to reproduce user interactions\n✅ **DO verify fixes by:** reproducing the original error scenario, then check fix_my_app for verification\n\n🔥 **BROWSER ACTIONS:**\n• CLICK buttons/links → Test specific user interactions\n• NAVIGATE to pages → Reproduce user journeys \n• SCROLL & TYPE → Simulate user workflows\n• EVALUATE JavaScript → Check app state (read-only)\n\n⚡ **OPTIMAL FIX VERIFICATION WORKFLOW:**\n1️⃣ fix_my_app finds issues + provides exact fixes\n2️⃣ You implement the fix code\n3️⃣ Use execute_browser_action to REPRODUCE the original interaction\n4️⃣ Run fix_my_app again to verify the fix worked\n\n🎯 **PERFECT FOR:**\n• Verifying fixes actually resolve the errors\n• Testing interactions after implementing fixes\n• Confirming forms work, buttons respond, etc.\n• Ensuring the app works correctly after fixes\n\n🚫 **AVOID:** Manual screenshot action (dev3000 auto-captures)\n✅ **USE:** Interaction reproduction + fix_my_app for verification\n\n🛡️ **SAFETY:** Safe operations only, read-only JS evaluation",
50
50
  category: "Browser Automation",
51
51
  parameters: [
52
52
  {
@@ -61,6 +61,23 @@ export async function GET() {
61
61
  }
62
62
  ]
63
63
  }
64
+ // TODO: Commenting out for now - need to figure out the right approach for proactive monitoring
65
+ /*
66
+ ,{
67
+ name: "start_error_monitoring",
68
+ description:
69
+ "🔍 **SIMPLE ERROR MONITORING** - Starts a lightweight background process that watches your app for errors and alerts you in real-time.\n\n⚡ **INSTANT ACTIVATION:**\n• Claude offers to run the monitoring script immediately\n• Just say 'yes' or 'monitor my app' to start\n• Simple 15-line Python script that just works\n• Real-time alerts when errors occur\n\n💡 **WHAT IT DOES:**\n• Watches for ERROR, FAIL, Exception, TypeError, CRASH keywords\n• Shows the error line when detected\n• Prompts you to let Claude debug\n• That's it - simple and effective!\n\n🎯 **USAGE FLOW:**\n1. User: 'monitor my app'\n2. Claude: 'Should I start monitoring now?'\n3. User: 'yes'\n4. Claude runs the script → monitoring active\n5. When errors appear → 'Tell me: debug my app'\n\n✨ **THE BEAUTY:**\n• No complex features - just works\n• Lightweight and fast\n• Perfect for quick error detection",
70
+ category: "Monitoring",
71
+ parameters: [
72
+ {
73
+ name: "projectName",
74
+ type: "string",
75
+ optional: true,
76
+ description: "Project name to monitor (if multiple dev3000 instances are running)"
77
+ }
78
+ ]
79
+ }
80
+ */
64
81
  ]
65
82
 
66
83
  return NextResponse.json({
@@ -6,10 +6,12 @@ export default function RootLayout({ children }: { children: React.ReactNode })
6
6
  <html lang="en" className="h-full">
7
7
  <head>
8
8
  <title>🎯 dev3000</title>
9
- <link rel="icon" href="/favicon.ico" sizes="32x32" />
10
- <link rel="icon" href="/favicon.svg" type="image/svg+xml" />
9
+ <link rel="icon" href="/favicon.ico" type="image/x-icon" />
10
+ <link rel="icon" href="/favicon.svg" type="image/svg+xml" sizes="32x32" />
11
11
  <link rel="icon" href="/favicon-16.svg" type="image/svg+xml" sizes="16x16" />
12
+ <link rel="icon" href="/favicon-64.svg" type="image/svg+xml" sizes="64x64" />
12
13
  <link rel="apple-touch-icon" href="/favicon-180.png" />
14
+ <link rel="shortcut icon" href="/favicon.svg" />
13
15
  <meta name="theme-color" content="#1f2937" />
14
16
  </head>
15
17
  <body className="h-full">{children}</body>