agent-insight 0.5.2 → 0.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (832) hide show
  1. package/.env.example +6 -0
  2. package/.next/standalone/.next/BUILD_ID +1 -1
  3. package/.next/standalone/.next/app-path-routes-manifest.json +9 -0
  4. package/.next/standalone/.next/build-manifest.json +2 -2
  5. package/.next/standalone/.next/prerender-manifest.json +51 -3
  6. package/.next/standalone/.next/routes-manifest.json +60 -0
  7. package/.next/standalone/.next/server/app/(main)/accessconfig/channels/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/.next/server/app/(main)/accessconfig/health/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/(main)/accessconfig/install/page.js.nft.json +1 -1
  10. package/.next/standalone/.next/server/app/(main)/accessconfig/install/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/(main)/accessconfig/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/(main)/accessconfig/webhooks/page_client-reference-manifest.js +1 -1
  13. package/.next/standalone/.next/server/app/(main)/agents/page.js.nft.json +1 -1
  14. package/.next/standalone/.next/server/app/(main)/agents/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/.next/server/app/(main)/dashboard/page.js.nft.json +1 -1
  16. package/.next/standalone/.next/server/app/(main)/dashboard/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/(main)/dataset/[id]/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/.next/server/app/(main)/dataset/page_client-reference-manifest.js +1 -1
  19. package/.next/standalone/.next/server/app/(main)/eval/page.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/(main)/eval/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/.next/server/app/(main)/eval/run/[runId]/page_client-reference-manifest.js +1 -1
  22. package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/trace/page.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/(main)/eval/trajectory/[taskId]/trace/page_client-reference-manifest.js +1 -1
  25. package/.next/standalone/.next/server/app/(main)/eval/trajectory/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/(main)/evaluation/[id]/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/(main)/fault/page.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/(main)/fault/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/.next/server/app/(main)/infra/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/(main)/infra/source/[id]/page_client-reference-manifest.js +1 -1
  31. package/.next/standalone/.next/server/app/(main)/infra/sources/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/(main)/memory/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/.next/server/app/(main)/metrics/evaluators/[id]/page_client-reference-manifest.js +1 -1
  34. package/.next/standalone/.next/server/app/(main)/metrics/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/(main)/modelconfig/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/(main)/modelconfig/registry/page.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/(main)/modelconfig/registry/page_client-reference-manifest.js +1 -1
  38. package/.next/standalone/.next/server/app/(main)/modelconfig/web-search/page.js.nft.json +1 -1
  39. package/.next/standalone/.next/server/app/(main)/modelconfig/web-search/page_client-reference-manifest.js +1 -1
  40. package/.next/standalone/.next/server/app/(main)/optapi/page_client-reference-manifest.js +1 -1
  41. package/.next/standalone/.next/server/app/(main)/quality/page.js.nft.json +1 -1
  42. package/.next/standalone/.next/server/app/(main)/quality/page_client-reference-manifest.js +1 -1
  43. package/.next/standalone/.next/server/app/(main)/security/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/(main)/skill-eval/grayscale/page.js.nft.json +1 -1
  45. package/.next/standalone/.next/server/app/(main)/skill-eval/grayscale/page_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/(main)/skill-eval/page.js.nft.json +1 -1
  47. package/.next/standalone/.next/server/app/(main)/skill-eval/page_client-reference-manifest.js +1 -1
  48. package/.next/standalone/.next/server/app/(main)/skill-eval/trigger/[skillName]/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/(main)/skill-generator/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/(main)/skill-history/page.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/app/(main)/skill-history/page_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/(main)/skill-opt/[name]/[version]/page_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/(main)/skill-opt/page_client-reference-manifest.js +1 -1
  54. package/.next/standalone/.next/server/app/(main)/skill-release/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app/(main)/skills/page.js.nft.json +1 -1
  56. package/.next/standalone/.next/server/app/(main)/skills/page_client-reference-manifest.js +1 -1
  57. package/.next/standalone/.next/server/app/(main)/trace/page.js.nft.json +1 -1
  58. package/.next/standalone/.next/server/app/(main)/trace/page_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/app/(main)/version-analysis/page/app-paths-manifest.json +3 -0
  60. package/.next/standalone/.next/server/app/(main)/version-analysis/page/build-manifest.json +17 -0
  61. package/.next/standalone/.next/server/app/(main)/version-analysis/page/next-font-manifest.json +6 -0
  62. package/.next/standalone/.next/server/app/(main)/version-analysis/page/react-loadable-manifest.json +1 -0
  63. package/.next/standalone/.next/server/app/(main)/version-analysis/page/server-reference-manifest.json +4 -0
  64. package/.next/standalone/.next/server/app/(main)/version-analysis/page.js +17 -0
  65. package/.next/standalone/.next/server/app/(main)/version-analysis/page.js.map +5 -0
  66. package/.next/standalone/.next/server/app/(main)/version-analysis/page.js.nft.json +1 -0
  67. package/.next/standalone/.next/server/app/(main)/version-analysis/page_client-reference-manifest.js +2 -0
  68. package/.next/standalone/.next/server/app/(main)/version-management/page/app-paths-manifest.json +3 -0
  69. package/.next/standalone/.next/server/app/(main)/version-management/page/build-manifest.json +17 -0
  70. package/.next/standalone/.next/server/app/(main)/version-management/page/next-font-manifest.json +6 -0
  71. package/.next/standalone/.next/server/app/(main)/version-management/page/react-loadable-manifest.json +1 -0
  72. package/.next/standalone/.next/server/app/(main)/version-management/page/server-reference-manifest.json +4 -0
  73. package/.next/standalone/.next/server/app/(main)/version-management/page.js +17 -0
  74. package/.next/standalone/.next/server/app/(main)/version-management/page.js.map +5 -0
  75. package/.next/standalone/.next/server/app/(main)/version-management/page.js.nft.json +1 -0
  76. package/.next/standalone/.next/server/app/(main)/version-management/page_client-reference-manifest.js +2 -0
  77. package/.next/standalone/.next/server/app/_global-error.html +2 -2
  78. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  79. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  80. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  81. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  82. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  83. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  84. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  86. package/.next/standalone/.next/server/app/_not-found.rsc +3 -3
  87. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  88. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  89. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  90. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  91. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  92. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  93. package/.next/standalone/.next/server/app/accessconfig/channels.html +1 -1
  94. package/.next/standalone/.next/server/app/accessconfig/channels.rsc +5 -5
  95. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig/channels/__PAGE__.segment.rsc +2 -2
  96. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig/channels.segment.rsc +1 -1
  97. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  98. package/.next/standalone/.next/server/app/accessconfig/channels.segments/!KG1haW4p.segment.rsc +2 -2
  99. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_full.segment.rsc +5 -5
  100. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_head.segment.rsc +1 -1
  101. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_index.segment.rsc +3 -3
  102. package/.next/standalone/.next/server/app/accessconfig/channels.segments/_tree.segment.rsc +2 -2
  103. package/.next/standalone/.next/server/app/accessconfig/health.html +1 -1
  104. package/.next/standalone/.next/server/app/accessconfig/health.rsc +5 -5
  105. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig/health/__PAGE__.segment.rsc +2 -2
  106. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig/health.segment.rsc +1 -1
  107. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  108. package/.next/standalone/.next/server/app/accessconfig/health.segments/!KG1haW4p.segment.rsc +2 -2
  109. package/.next/standalone/.next/server/app/accessconfig/health.segments/_full.segment.rsc +5 -5
  110. package/.next/standalone/.next/server/app/accessconfig/health.segments/_head.segment.rsc +1 -1
  111. package/.next/standalone/.next/server/app/accessconfig/health.segments/_index.segment.rsc +3 -3
  112. package/.next/standalone/.next/server/app/accessconfig/health.segments/_tree.segment.rsc +2 -2
  113. package/.next/standalone/.next/server/app/accessconfig/install.html +2 -2
  114. package/.next/standalone/.next/server/app/accessconfig/install.rsc +5 -5
  115. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig/install/__PAGE__.segment.rsc +2 -2
  116. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig/install.segment.rsc +1 -1
  117. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  118. package/.next/standalone/.next/server/app/accessconfig/install.segments/!KG1haW4p.segment.rsc +2 -2
  119. package/.next/standalone/.next/server/app/accessconfig/install.segments/_full.segment.rsc +5 -5
  120. package/.next/standalone/.next/server/app/accessconfig/install.segments/_head.segment.rsc +1 -1
  121. package/.next/standalone/.next/server/app/accessconfig/install.segments/_index.segment.rsc +3 -3
  122. package/.next/standalone/.next/server/app/accessconfig/install.segments/_tree.segment.rsc +2 -2
  123. package/.next/standalone/.next/server/app/accessconfig/webhooks.html +1 -1
  124. package/.next/standalone/.next/server/app/accessconfig/webhooks.rsc +5 -5
  125. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig/webhooks/__PAGE__.segment.rsc +2 -2
  126. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig/webhooks.segment.rsc +1 -1
  127. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  128. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/!KG1haW4p.segment.rsc +2 -2
  129. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_full.segment.rsc +5 -5
  130. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_head.segment.rsc +1 -1
  131. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_index.segment.rsc +3 -3
  132. package/.next/standalone/.next/server/app/accessconfig/webhooks.segments/_tree.segment.rsc +2 -2
  133. package/.next/standalone/.next/server/app/accessconfig.html +1 -1
  134. package/.next/standalone/.next/server/app/accessconfig.rsc +4 -4
  135. package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p/accessconfig/__PAGE__.segment.rsc +1 -1
  136. package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p/accessconfig.segment.rsc +1 -1
  137. package/.next/standalone/.next/server/app/accessconfig.segments/!KG1haW4p.segment.rsc +2 -2
  138. package/.next/standalone/.next/server/app/accessconfig.segments/_full.segment.rsc +4 -4
  139. package/.next/standalone/.next/server/app/accessconfig.segments/_head.segment.rsc +1 -1
  140. package/.next/standalone/.next/server/app/accessconfig.segments/_index.segment.rsc +3 -3
  141. package/.next/standalone/.next/server/app/accessconfig.segments/_tree.segment.rsc +2 -2
  142. package/.next/standalone/.next/server/app/agents.html +1 -1
  143. package/.next/standalone/.next/server/app/agents.rsc +5 -5
  144. package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p/agents/__PAGE__.segment.rsc +2 -2
  145. package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p/agents.segment.rsc +1 -1
  146. package/.next/standalone/.next/server/app/agents.segments/!KG1haW4p.segment.rsc +2 -2
  147. package/.next/standalone/.next/server/app/agents.segments/_full.segment.rsc +5 -5
  148. package/.next/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  149. package/.next/standalone/.next/server/app/agents.segments/_index.segment.rsc +3 -3
  150. package/.next/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  151. package/.next/standalone/.next/server/app/api/agent/run/route.js.nft.json +1 -1
  152. package/.next/standalone/.next/server/app/api/agent/stream/route.js.nft.json +1 -1
  153. package/.next/standalone/.next/server/app/api/agent-datasets/[id]/route.js.nft.json +1 -1
  154. package/.next/standalone/.next/server/app/api/agent-datasets/route.js.nft.json +1 -1
  155. package/.next/standalone/.next/server/app/api/agents/[id]/route.js.nft.json +1 -1
  156. package/.next/standalone/.next/server/app/api/agents/route.js.nft.json +1 -1
  157. package/.next/standalone/.next/server/app/api/auth/apikey/route.js.nft.json +1 -1
  158. package/.next/standalone/.next/server/app/api/auth/organization/route.js.nft.json +1 -1
  159. package/.next/standalone/.next/server/app/api/dashboard/stats/route.js.nft.json +1 -1
  160. package/.next/standalone/.next/server/app/api/debug/batch-tasks/[taskId]/route.js.nft.json +1 -1
  161. package/.next/standalone/.next/server/app/api/debug/batch-tasks/route.js.nft.json +1 -1
  162. package/.next/standalone/.next/server/app/api/debug/execute/[jobId]/route.js.nft.json +1 -1
  163. package/.next/standalone/.next/server/app/api/debug/execute/route.js.nft.json +1 -1
  164. package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/[taskId]/route.js +10 -10
  165. package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/[taskId]/route.js.nft.json +1 -1
  166. package/.next/standalone/.next/server/app/api/debug/grayscale-tasks/route.js.nft.json +1 -1
  167. package/.next/standalone/.next/server/app/api/debug/history/[id]/route.js.nft.json +1 -1
  168. package/.next/standalone/.next/server/app/api/debug/history/route.js.nft.json +1 -1
  169. package/.next/standalone/.next/server/app/api/eval/config/backfill-routing/route.js +6 -6
  170. package/.next/standalone/.next/server/app/api/eval/config/backfill-routing/route.js.nft.json +1 -1
  171. package/.next/standalone/.next/server/app/api/eval/config/create/route.js.nft.json +1 -1
  172. package/.next/standalone/.next/server/app/api/eval/config/reparse/route.js.nft.json +1 -1
  173. package/.next/standalone/.next/server/app/api/eval/config/route.js +6 -6
  174. package/.next/standalone/.next/server/app/api/eval/config/route.js.nft.json +1 -1
  175. package/.next/standalone/.next/server/app/api/eval/config/status/route.js.nft.json +1 -1
  176. package/.next/standalone/.next/server/app/api/eval/evaluation/route.js.nft.json +1 -1
  177. package/.next/standalone/.next/server/app/api/eval/rejudge/route.js +6 -6
  178. package/.next/standalone/.next/server/app/api/eval/rejudge/route.js.nft.json +1 -1
  179. package/.next/standalone/.next/server/app/api/eval/settings/route.js.nft.json +1 -1
  180. package/.next/standalone/.next/server/app/api/eval/settings/test/route.js.nft.json +1 -1
  181. package/.next/standalone/.next/server/app/api/eval/terminate-all/route.js.nft.json +1 -1
  182. package/.next/standalone/.next/server/app/api/eval/trajectory/results/[id]/route.js.nft.json +1 -1
  183. package/.next/standalone/.next/server/app/api/eval/trajectory/results/route.js +5 -5
  184. package/.next/standalone/.next/server/app/api/eval/trajectory/results/route.js.nft.json +1 -1
  185. package/.next/standalone/.next/server/app/api/eval/trajectory/run/route.js +13 -13
  186. package/.next/standalone/.next/server/app/api/eval/trajectory/run/route.js.nft.json +1 -1
  187. package/.next/standalone/.next/server/app/api/eval/trajectory/runs/route.js.nft.json +1 -1
  188. package/.next/standalone/.next/server/app/api/evaluation/[id]/route.js.nft.json +1 -1
  189. package/.next/standalone/.next/server/app/api/evaluation/cancel/route.js.nft.json +1 -1
  190. package/.next/standalone/.next/server/app/api/fault/diagnosis/session/route.js.nft.json +1 -1
  191. package/.next/standalone/.next/server/app/api/fault/diagnosis/stream/route.js.nft.json +1 -1
  192. package/.next/standalone/.next/server/app/api/fleet/agent/route/app-paths-manifest.json +3 -0
  193. package/.next/standalone/.next/server/app/api/fleet/agent/route/build-manifest.json +11 -0
  194. package/.next/standalone/.next/server/app/api/fleet/agent/route/server-reference-manifest.json +4 -0
  195. package/.next/standalone/.next/server/app/api/fleet/agent/route.js +8 -0
  196. package/.next/standalone/.next/server/app/api/fleet/agent/route.js.map +5 -0
  197. package/.next/standalone/.next/server/app/api/fleet/agent/route.js.nft.json +1 -0
  198. package/.next/standalone/.next/server/app/api/fleet/agent/route_client-reference-manifest.js +2 -0
  199. package/.next/standalone/.next/server/app/api/fleet/breakdowns/route.js +1 -1
  200. package/.next/standalone/.next/server/app/api/fleet/breakdowns/route.js.nft.json +1 -1
  201. package/.next/standalone/.next/server/app/api/fleet/trends/route.js +2 -2
  202. package/.next/standalone/.next/server/app/api/fleet/trends/route.js.nft.json +1 -1
  203. package/.next/standalone/.next/server/app/api/guide/route.js.nft.json +1 -1
  204. package/.next/standalone/.next/server/app/api/ingest/opencode/session-complete/route.js +3 -3
  205. package/.next/standalone/.next/server/app/api/ingest/opencode/session-complete/route.js.nft.json +1 -1
  206. package/.next/standalone/.next/server/app/api/ingest/otel/v1/logs/route.js.nft.json +1 -1
  207. package/.next/standalone/.next/server/app/api/ingest/otel/v1/metrics/route.js.nft.json +1 -1
  208. package/.next/standalone/.next/server/app/api/ingest/otel/v1/traces/route.js +5 -5
  209. package/.next/standalone/.next/server/app/api/ingest/otel/v1/traces/route.js.nft.json +1 -1
  210. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/[...path]/route.js.nft.json +1 -1
  211. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/end/route.js +9 -9
  212. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/end/route.js.nft.json +1 -1
  213. package/.next/standalone/.next/server/app/api/ingest/proxy/[taskId]/start/route.js.nft.json +1 -1
  214. package/.next/standalone/.next/server/app/api/ingest/sync/manifest/route.js.nft.json +1 -1
  215. package/.next/standalone/.next/server/app/api/ingest/sync/opencode/route.js.nft.json +1 -1
  216. package/.next/standalone/.next/server/app/api/ingest/upload/route.js +8 -8
  217. package/.next/standalone/.next/server/app/api/ingest/upload/route.js.nft.json +1 -1
  218. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route/app-paths-manifest.json +3 -0
  219. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route/build-manifest.json +11 -0
  220. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route/server-reference-manifest.json +4 -0
  221. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route.js +8 -0
  222. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route.js.map +5 -0
  223. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route.js.nft.json +1 -0
  224. package/.next/standalone/.next/server/app/api/modelconfig/pricing/route_client-reference-manifest.js +2 -0
  225. package/.next/standalone/.next/server/app/api/observe/data/route.js +3 -3
  226. package/.next/standalone/.next/server/app/api/observe/data/route.js.nft.json +1 -1
  227. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/route.js.nft.json +1 -1
  228. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/skills-analysis/route.js +13 -13
  229. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/agent-debug/skills-analysis/route.js.nft.json +1 -1
  230. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/analyze-match/route.js.nft.json +1 -1
  231. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/infra/route.js.nft.json +1 -1
  232. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route/app-paths-manifest.json +3 -0
  233. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route/build-manifest.json +11 -0
  234. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route/server-reference-manifest.json +4 -0
  235. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route.js +8 -0
  236. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route.js.map +5 -0
  237. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route.js.nft.json +1 -0
  238. package/.next/standalone/.next/server/app/api/observe/executions/[executionId]/tags/route_client-reference-manifest.js +2 -0
  239. package/.next/standalone/.next/server/app/api/observe/infra/history/route.js.nft.json +1 -1
  240. package/.next/standalone/.next/server/app/api/observe/infra/poll/route.js.nft.json +1 -1
  241. package/.next/standalone/.next/server/app/api/observe/infra/sources/derive/route.js.nft.json +1 -1
  242. package/.next/standalone/.next/server/app/api/observe/infra/sources/overview/route.js.nft.json +1 -1
  243. package/.next/standalone/.next/server/app/api/observe/infra/sources/route.js.nft.json +1 -1
  244. package/.next/standalone/.next/server/app/api/observe/infra/sources/sessions/route.js.nft.json +1 -1
  245. package/.next/standalone/.next/server/app/api/observe/infra/sources/test/route.js.nft.json +1 -1
  246. package/.next/standalone/.next/server/app/api/observe/session/route.js.nft.json +1 -1
  247. package/.next/standalone/.next/server/app/api/observe/task-stats/route.js +3 -3
  248. package/.next/standalone/.next/server/app/api/observe/task-stats/route.js.nft.json +1 -1
  249. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route/app-paths-manifest.json +3 -0
  250. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route/build-manifest.json +11 -0
  251. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route/server-reference-manifest.json +4 -0
  252. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route.js +8 -0
  253. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route.js.map +5 -0
  254. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route.js.nft.json +1 -0
  255. package/.next/standalone/.next/server/app/api/observe/version-analysis/compare/route_client-reference-manifest.js +2 -0
  256. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route/app-paths-manifest.json +3 -0
  257. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route/build-manifest.json +11 -0
  258. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route/server-reference-manifest.json +4 -0
  259. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route.js +8 -0
  260. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route.js.map +5 -0
  261. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route.js.nft.json +1 -0
  262. package/.next/standalone/.next/server/app/api/observe/version-analysis/tags/[tagId]/traces/route_client-reference-manifest.js +2 -0
  263. package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route.js +5 -5
  264. package/.next/standalone/.next/server/app/api/public/otel/v1/traces/route.js.nft.json +1 -1
  265. package/.next/standalone/.next/server/app/api/quality/agents/route.js +7 -7
  266. package/.next/standalone/.next/server/app/api/quality/agents/route.js.nft.json +1 -1
  267. package/.next/standalone/.next/server/app/api/quality/backfill/route.js.nft.json +1 -1
  268. package/.next/standalone/.next/server/app/api/quality/executions/route.js +7 -7
  269. package/.next/standalone/.next/server/app/api/quality/executions/route.js.nft.json +1 -1
  270. package/.next/standalone/.next/server/app/api/quality/report/route.js.nft.json +1 -1
  271. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/draft/route.js.nft.json +1 -1
  272. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/route.js.nft.json +1 -1
  273. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/run/[runId]/cancel/route.js.nft.json +1 -1
  274. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/run/route.js.nft.json +1 -1
  275. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/runs/route.js.nft.json +1 -1
  276. package/.next/standalone/.next/server/app/api/skill-eval/trigger/[skillName]/upload/route.js.nft.json +1 -1
  277. package/.next/standalone/.next/server/app/api/skill-generator/attachments/route.js.nft.json +1 -1
  278. package/.next/standalone/.next/server/app/api/skill-generator/chat/route.js.nft.json +1 -1
  279. package/.next/standalone/.next/server/app/api/skill-generator/download/[sessionId]/route.js.nft.json +1 -1
  280. package/.next/standalone/.next/server/app/api/skill-generator/files/content/route.js.nft.json +1 -1
  281. package/.next/standalone/.next/server/app/api/skill-generator/files/download/route.js.nft.json +1 -1
  282. package/.next/standalone/.next/server/app/api/skill-generator/files/info/route.js.nft.json +1 -1
  283. package/.next/standalone/.next/server/app/api/skill-generator/files/list/route.js.nft.json +1 -1
  284. package/.next/standalone/.next/server/app/api/skill-generator/sessions/[id]/route.js.nft.json +1 -1
  285. package/.next/standalone/.next/server/app/api/skill-generator/sessions/route.js.nft.json +1 -1
  286. package/.next/standalone/.next/server/app/api/skill-opt/chat/route.js.nft.json +1 -1
  287. package/.next/standalone/.next/server/app/api/skill-opt/plan/items/[id]/route.js.nft.json +1 -1
  288. package/.next/standalone/.next/server/app/api/skill-opt/plan/route.js.nft.json +1 -1
  289. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/iterations/[draftNumber]/apply/route.js.nft.json +1 -1
  290. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/iterations/route.js.nft.json +1 -1
  291. package/.next/standalone/.next/server/app/api/skill-opt/sessions/[id]/route.js.nft.json +1 -1
  292. package/.next/standalone/.next/server/app/api/skill-opt/sessions/route.js.nft.json +1 -1
  293. package/.next/standalone/.next/server/app/api/skills/[id]/activate/route.js.nft.json +1 -1
  294. package/.next/standalone/.next/server/app/api/skills/[id]/benchmark-generate/route.js +7 -7
  295. package/.next/standalone/.next/server/app/api/skills/[id]/benchmark-generate/route.js.nft.json +1 -1
  296. package/.next/standalone/.next/server/app/api/skills/[id]/runs/route.js +2 -2
  297. package/.next/standalone/.next/server/app/api/skills/[id]/runs/route.js.nft.json +1 -1
  298. package/.next/standalone/.next/server/app/api/skills/[id]/toggle/route.js.nft.json +1 -1
  299. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/download/route.js.nft.json +1 -1
  300. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/evaluate/route.js.nft.json +1 -1
  301. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/evaluation-summary/route.js.nft.json +1 -1
  302. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/files/[...path]/route.js.nft.json +1 -1
  303. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/parse-flow/route.js.nft.json +1 -1
  304. package/.next/standalone/.next/server/app/api/skills/[id]/versions/[version]/route.js.nft.json +1 -1
  305. package/.next/standalone/.next/server/app/api/skills/[id]/versions/route.js.nft.json +1 -1
  306. package/.next/standalone/.next/server/app/api/skills/automation/import/route.js.nft.json +1 -1
  307. package/.next/standalone/.next/server/app/api/skills/automation/push/route.js.nft.json +1 -1
  308. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/analysis-diagnosis/route.js.nft.json +1 -1
  309. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/optimization-points/resolve/route.js.nft.json +1 -1
  310. package/.next/standalone/.next/server/app/api/skills/by-name/[name]/optimization-points/route.js.nft.json +1 -1
  311. package/.next/standalone/.next/server/app/api/skills/by-name/route.js.nft.json +1 -1
  312. package/.next/standalone/.next/server/app/api/skills/logs/route.js +6 -6
  313. package/.next/standalone/.next/server/app/api/skills/logs/route.js.nft.json +1 -1
  314. package/.next/standalone/.next/server/app/api/skills/publish/route.js.nft.json +1 -1
  315. package/.next/standalone/.next/server/app/api/skills/route.js.nft.json +1 -1
  316. package/.next/standalone/.next/server/app/api/skills/sync-enterprise/route.js.nft.json +1 -1
  317. package/.next/standalone/.next/server/app/api/skills/upload/route.js.nft.json +1 -1
  318. package/.next/standalone/.next/server/app/api/tags/[id]/route/app-paths-manifest.json +3 -0
  319. package/.next/standalone/.next/server/app/api/tags/[id]/route/build-manifest.json +11 -0
  320. package/.next/standalone/.next/server/app/api/tags/[id]/route/server-reference-manifest.json +4 -0
  321. package/.next/standalone/.next/server/app/api/tags/[id]/route.js +8 -0
  322. package/.next/standalone/.next/server/app/api/tags/[id]/route.js.map +5 -0
  323. package/.next/standalone/.next/server/app/api/tags/[id]/route.js.nft.json +1 -0
  324. package/.next/standalone/.next/server/app/api/tags/[id]/route_client-reference-manifest.js +2 -0
  325. package/.next/standalone/.next/server/app/api/tags/route/app-paths-manifest.json +3 -0
  326. package/.next/standalone/.next/server/app/api/tags/route/build-manifest.json +11 -0
  327. package/.next/standalone/.next/server/app/api/tags/route/server-reference-manifest.json +4 -0
  328. package/.next/standalone/.next/server/app/api/tags/route.js +8 -0
  329. package/.next/standalone/.next/server/app/api/tags/route.js.map +5 -0
  330. package/.next/standalone/.next/server/app/api/tags/route.js.nft.json +1 -0
  331. package/.next/standalone/.next/server/app/api/tags/route_client-reference-manifest.js +2 -0
  332. package/.next/standalone/.next/server/app/api/user-evaluators/route.js.nft.json +1 -1
  333. package/.next/standalone/.next/server/app/dashboard.html +1 -1
  334. package/.next/standalone/.next/server/app/dashboard.rsc +5 -5
  335. package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p/dashboard/__PAGE__.segment.rsc +2 -2
  336. package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p/dashboard.segment.rsc +1 -1
  337. package/.next/standalone/.next/server/app/dashboard.segments/!KG1haW4p.segment.rsc +2 -2
  338. package/.next/standalone/.next/server/app/dashboard.segments/_full.segment.rsc +5 -5
  339. package/.next/standalone/.next/server/app/dashboard.segments/_head.segment.rsc +1 -1
  340. package/.next/standalone/.next/server/app/dashboard.segments/_index.segment.rsc +3 -3
  341. package/.next/standalone/.next/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  342. package/.next/standalone/.next/server/app/dataset.html +1 -1
  343. package/.next/standalone/.next/server/app/dataset.rsc +5 -5
  344. package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p/dataset/__PAGE__.segment.rsc +2 -2
  345. package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p/dataset.segment.rsc +1 -1
  346. package/.next/standalone/.next/server/app/dataset.segments/!KG1haW4p.segment.rsc +2 -2
  347. package/.next/standalone/.next/server/app/dataset.segments/_full.segment.rsc +5 -5
  348. package/.next/standalone/.next/server/app/dataset.segments/_head.segment.rsc +1 -1
  349. package/.next/standalone/.next/server/app/dataset.segments/_index.segment.rsc +3 -3
  350. package/.next/standalone/.next/server/app/dataset.segments/_tree.segment.rsc +2 -2
  351. package/.next/standalone/.next/server/app/eval/trajectory.html +1 -1
  352. package/.next/standalone/.next/server/app/eval/trajectory.rsc +5 -5
  353. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval/trajectory/__PAGE__.segment.rsc +2 -2
  354. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval/trajectory.segment.rsc +1 -1
  355. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p/eval.segment.rsc +1 -1
  356. package/.next/standalone/.next/server/app/eval/trajectory.segments/!KG1haW4p.segment.rsc +2 -2
  357. package/.next/standalone/.next/server/app/eval/trajectory.segments/_full.segment.rsc +5 -5
  358. package/.next/standalone/.next/server/app/eval/trajectory.segments/_head.segment.rsc +1 -1
  359. package/.next/standalone/.next/server/app/eval/trajectory.segments/_index.segment.rsc +3 -3
  360. package/.next/standalone/.next/server/app/eval/trajectory.segments/_tree.segment.rsc +2 -2
  361. package/.next/standalone/.next/server/app/eval.html +1 -1
  362. package/.next/standalone/.next/server/app/eval.rsc +5 -5
  363. package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p/eval/__PAGE__.segment.rsc +2 -2
  364. package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p/eval.segment.rsc +1 -1
  365. package/.next/standalone/.next/server/app/eval.segments/!KG1haW4p.segment.rsc +2 -2
  366. package/.next/standalone/.next/server/app/eval.segments/_full.segment.rsc +5 -5
  367. package/.next/standalone/.next/server/app/eval.segments/_head.segment.rsc +1 -1
  368. package/.next/standalone/.next/server/app/eval.segments/_index.segment.rsc +3 -3
  369. package/.next/standalone/.next/server/app/eval.segments/_tree.segment.rsc +2 -2
  370. package/.next/standalone/.next/server/app/fault.html +1 -1
  371. package/.next/standalone/.next/server/app/fault.rsc +5 -5
  372. package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p/fault/__PAGE__.segment.rsc +2 -2
  373. package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p/fault.segment.rsc +1 -1
  374. package/.next/standalone/.next/server/app/fault.segments/!KG1haW4p.segment.rsc +2 -2
  375. package/.next/standalone/.next/server/app/fault.segments/_full.segment.rsc +5 -5
  376. package/.next/standalone/.next/server/app/fault.segments/_head.segment.rsc +1 -1
  377. package/.next/standalone/.next/server/app/fault.segments/_index.segment.rsc +3 -3
  378. package/.next/standalone/.next/server/app/fault.segments/_tree.segment.rsc +2 -2
  379. package/.next/standalone/.next/server/app/index.html +1 -1
  380. package/.next/standalone/.next/server/app/index.rsc +3 -3
  381. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  382. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
  383. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  384. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +3 -3
  385. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  386. package/.next/standalone/.next/server/app/infra/sources.html +1 -1
  387. package/.next/standalone/.next/server/app/infra/sources.rsc +5 -5
  388. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra/sources/__PAGE__.segment.rsc +2 -2
  389. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra/sources.segment.rsc +1 -1
  390. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p/infra.segment.rsc +1 -1
  391. package/.next/standalone/.next/server/app/infra/sources.segments/!KG1haW4p.segment.rsc +2 -2
  392. package/.next/standalone/.next/server/app/infra/sources.segments/_full.segment.rsc +5 -5
  393. package/.next/standalone/.next/server/app/infra/sources.segments/_head.segment.rsc +1 -1
  394. package/.next/standalone/.next/server/app/infra/sources.segments/_index.segment.rsc +3 -3
  395. package/.next/standalone/.next/server/app/infra/sources.segments/_tree.segment.rsc +2 -2
  396. package/.next/standalone/.next/server/app/infra.html +1 -1
  397. package/.next/standalone/.next/server/app/infra.rsc +5 -5
  398. package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p/infra/__PAGE__.segment.rsc +2 -2
  399. package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p/infra.segment.rsc +1 -1
  400. package/.next/standalone/.next/server/app/infra.segments/!KG1haW4p.segment.rsc +2 -2
  401. package/.next/standalone/.next/server/app/infra.segments/_full.segment.rsc +5 -5
  402. package/.next/standalone/.next/server/app/infra.segments/_head.segment.rsc +1 -1
  403. package/.next/standalone/.next/server/app/infra.segments/_index.segment.rsc +3 -3
  404. package/.next/standalone/.next/server/app/infra.segments/_tree.segment.rsc +2 -2
  405. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  406. package/.next/standalone/.next/server/app/login.html +1 -1
  407. package/.next/standalone/.next/server/app/login.rsc +4 -4
  408. package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +4 -4
  409. package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
  410. package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +3 -3
  411. package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  412. package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  413. package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
  414. package/.next/standalone/.next/server/app/memory.html +1 -1
  415. package/.next/standalone/.next/server/app/memory.rsc +5 -5
  416. package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p/memory/__PAGE__.segment.rsc +2 -2
  417. package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p/memory.segment.rsc +1 -1
  418. package/.next/standalone/.next/server/app/memory.segments/!KG1haW4p.segment.rsc +2 -2
  419. package/.next/standalone/.next/server/app/memory.segments/_full.segment.rsc +5 -5
  420. package/.next/standalone/.next/server/app/memory.segments/_head.segment.rsc +1 -1
  421. package/.next/standalone/.next/server/app/memory.segments/_index.segment.rsc +3 -3
  422. package/.next/standalone/.next/server/app/memory.segments/_tree.segment.rsc +2 -2
  423. package/.next/standalone/.next/server/app/metrics.html +1 -1
  424. package/.next/standalone/.next/server/app/metrics.rsc +5 -5
  425. package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p/metrics/__PAGE__.segment.rsc +2 -2
  426. package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p/metrics.segment.rsc +1 -1
  427. package/.next/standalone/.next/server/app/metrics.segments/!KG1haW4p.segment.rsc +2 -2
  428. package/.next/standalone/.next/server/app/metrics.segments/_full.segment.rsc +5 -5
  429. package/.next/standalone/.next/server/app/metrics.segments/_head.segment.rsc +1 -1
  430. package/.next/standalone/.next/server/app/metrics.segments/_index.segment.rsc +3 -3
  431. package/.next/standalone/.next/server/app/metrics.segments/_tree.segment.rsc +2 -2
  432. package/.next/standalone/.next/server/app/modelconfig/registry.html +1 -1
  433. package/.next/standalone/.next/server/app/modelconfig/registry.rsc +5 -5
  434. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig/registry/__PAGE__.segment.rsc +2 -2
  435. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig/registry.segment.rsc +1 -1
  436. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
  437. package/.next/standalone/.next/server/app/modelconfig/registry.segments/!KG1haW4p.segment.rsc +2 -2
  438. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_full.segment.rsc +5 -5
  439. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_head.segment.rsc +1 -1
  440. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_index.segment.rsc +3 -3
  441. package/.next/standalone/.next/server/app/modelconfig/registry.segments/_tree.segment.rsc +2 -2
  442. package/.next/standalone/.next/server/app/modelconfig/web-search.html +1 -1
  443. package/.next/standalone/.next/server/app/modelconfig/web-search.rsc +5 -5
  444. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig/web-search/__PAGE__.segment.rsc +2 -2
  445. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig/web-search.segment.rsc +1 -1
  446. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
  447. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/!KG1haW4p.segment.rsc +2 -2
  448. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_full.segment.rsc +5 -5
  449. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_head.segment.rsc +1 -1
  450. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_index.segment.rsc +3 -3
  451. package/.next/standalone/.next/server/app/modelconfig/web-search.segments/_tree.segment.rsc +2 -2
  452. package/.next/standalone/.next/server/app/modelconfig.html +1 -1
  453. package/.next/standalone/.next/server/app/modelconfig.rsc +4 -4
  454. package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p/modelconfig/__PAGE__.segment.rsc +1 -1
  455. package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p/modelconfig.segment.rsc +1 -1
  456. package/.next/standalone/.next/server/app/modelconfig.segments/!KG1haW4p.segment.rsc +2 -2
  457. package/.next/standalone/.next/server/app/modelconfig.segments/_full.segment.rsc +4 -4
  458. package/.next/standalone/.next/server/app/modelconfig.segments/_head.segment.rsc +1 -1
  459. package/.next/standalone/.next/server/app/modelconfig.segments/_index.segment.rsc +3 -3
  460. package/.next/standalone/.next/server/app/modelconfig.segments/_tree.segment.rsc +2 -2
  461. package/.next/standalone/.next/server/app/optapi.html +1 -1
  462. package/.next/standalone/.next/server/app/optapi.rsc +5 -5
  463. package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p/optapi/__PAGE__.segment.rsc +2 -2
  464. package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p/optapi.segment.rsc +1 -1
  465. package/.next/standalone/.next/server/app/optapi.segments/!KG1haW4p.segment.rsc +2 -2
  466. package/.next/standalone/.next/server/app/optapi.segments/_full.segment.rsc +5 -5
  467. package/.next/standalone/.next/server/app/optapi.segments/_head.segment.rsc +1 -1
  468. package/.next/standalone/.next/server/app/optapi.segments/_index.segment.rsc +3 -3
  469. package/.next/standalone/.next/server/app/optapi.segments/_tree.segment.rsc +2 -2
  470. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  471. package/.next/standalone/.next/server/app/quality.html +1 -1
  472. package/.next/standalone/.next/server/app/quality.rsc +5 -5
  473. package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p/quality/__PAGE__.segment.rsc +2 -2
  474. package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p/quality.segment.rsc +1 -1
  475. package/.next/standalone/.next/server/app/quality.segments/!KG1haW4p.segment.rsc +2 -2
  476. package/.next/standalone/.next/server/app/quality.segments/_full.segment.rsc +5 -5
  477. package/.next/standalone/.next/server/app/quality.segments/_head.segment.rsc +1 -1
  478. package/.next/standalone/.next/server/app/quality.segments/_index.segment.rsc +3 -3
  479. package/.next/standalone/.next/server/app/quality.segments/_tree.segment.rsc +2 -2
  480. package/.next/standalone/.next/server/app/security.html +1 -1
  481. package/.next/standalone/.next/server/app/security.rsc +5 -5
  482. package/.next/standalone/.next/server/app/security.segments/!KG1haW4p/security/__PAGE__.segment.rsc +2 -2
  483. package/.next/standalone/.next/server/app/security.segments/!KG1haW4p/security.segment.rsc +1 -1
  484. package/.next/standalone/.next/server/app/security.segments/!KG1haW4p.segment.rsc +2 -2
  485. package/.next/standalone/.next/server/app/security.segments/_full.segment.rsc +5 -5
  486. package/.next/standalone/.next/server/app/security.segments/_head.segment.rsc +1 -1
  487. package/.next/standalone/.next/server/app/security.segments/_index.segment.rsc +3 -3
  488. package/.next/standalone/.next/server/app/security.segments/_tree.segment.rsc +2 -2
  489. package/.next/standalone/.next/server/app/skill-detail/page_client-reference-manifest.js +1 -1
  490. package/.next/standalone/.next/server/app/skill-detail.html +1 -1
  491. package/.next/standalone/.next/server/app/skill-detail.rsc +4 -4
  492. package/.next/standalone/.next/server/app/skill-detail.segments/_full.segment.rsc +4 -4
  493. package/.next/standalone/.next/server/app/skill-detail.segments/_head.segment.rsc +1 -1
  494. package/.next/standalone/.next/server/app/skill-detail.segments/_index.segment.rsc +3 -3
  495. package/.next/standalone/.next/server/app/skill-detail.segments/_tree.segment.rsc +2 -2
  496. package/.next/standalone/.next/server/app/skill-detail.segments/skill-detail/__PAGE__.segment.rsc +2 -2
  497. package/.next/standalone/.next/server/app/skill-detail.segments/skill-detail.segment.rsc +1 -1
  498. package/.next/standalone/.next/server/app/skill-eval/grayscale.html +2 -2
  499. package/.next/standalone/.next/server/app/skill-eval/grayscale.rsc +6 -6
  500. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval/grayscale/__PAGE__.segment.rsc +2 -2
  501. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval/grayscale.segment.rsc +1 -1
  502. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p/skill-eval.segment.rsc +1 -1
  503. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/!KG1haW4p.segment.rsc +2 -2
  504. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_full.segment.rsc +6 -6
  505. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_head.segment.rsc +1 -1
  506. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_index.segment.rsc +3 -3
  507. package/.next/standalone/.next/server/app/skill-eval/grayscale.segments/_tree.segment.rsc +2 -2
  508. package/.next/standalone/.next/server/app/skill-eval.html +1 -1
  509. package/.next/standalone/.next/server/app/skill-eval.rsc +6 -6
  510. package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p/skill-eval/__PAGE__.segment.rsc +2 -2
  511. package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p/skill-eval.segment.rsc +1 -1
  512. package/.next/standalone/.next/server/app/skill-eval.segments/!KG1haW4p.segment.rsc +2 -2
  513. package/.next/standalone/.next/server/app/skill-eval.segments/_full.segment.rsc +6 -6
  514. package/.next/standalone/.next/server/app/skill-eval.segments/_head.segment.rsc +1 -1
  515. package/.next/standalone/.next/server/app/skill-eval.segments/_index.segment.rsc +3 -3
  516. package/.next/standalone/.next/server/app/skill-eval.segments/_tree.segment.rsc +2 -2
  517. package/.next/standalone/.next/server/app/skill-generator.html +1 -1
  518. package/.next/standalone/.next/server/app/skill-generator.rsc +5 -5
  519. package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p/skill-generator/__PAGE__.segment.rsc +2 -2
  520. package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p/skill-generator.segment.rsc +1 -1
  521. package/.next/standalone/.next/server/app/skill-generator.segments/!KG1haW4p.segment.rsc +2 -2
  522. package/.next/standalone/.next/server/app/skill-generator.segments/_full.segment.rsc +5 -5
  523. package/.next/standalone/.next/server/app/skill-generator.segments/_head.segment.rsc +1 -1
  524. package/.next/standalone/.next/server/app/skill-generator.segments/_index.segment.rsc +3 -3
  525. package/.next/standalone/.next/server/app/skill-generator.segments/_tree.segment.rsc +2 -2
  526. package/.next/standalone/.next/server/app/skill-history.html +1 -1
  527. package/.next/standalone/.next/server/app/skill-history.rsc +6 -6
  528. package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p/skill-history/__PAGE__.segment.rsc +2 -2
  529. package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p/skill-history.segment.rsc +1 -1
  530. package/.next/standalone/.next/server/app/skill-history.segments/!KG1haW4p.segment.rsc +2 -2
  531. package/.next/standalone/.next/server/app/skill-history.segments/_full.segment.rsc +6 -6
  532. package/.next/standalone/.next/server/app/skill-history.segments/_head.segment.rsc +1 -1
  533. package/.next/standalone/.next/server/app/skill-history.segments/_index.segment.rsc +3 -3
  534. package/.next/standalone/.next/server/app/skill-history.segments/_tree.segment.rsc +2 -2
  535. package/.next/standalone/.next/server/app/skill-opt.html +1 -1
  536. package/.next/standalone/.next/server/app/skill-opt.rsc +5 -5
  537. package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p/skill-opt/__PAGE__.segment.rsc +2 -2
  538. package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p/skill-opt.segment.rsc +1 -1
  539. package/.next/standalone/.next/server/app/skill-opt.segments/!KG1haW4p.segment.rsc +2 -2
  540. package/.next/standalone/.next/server/app/skill-opt.segments/_full.segment.rsc +5 -5
  541. package/.next/standalone/.next/server/app/skill-opt.segments/_head.segment.rsc +1 -1
  542. package/.next/standalone/.next/server/app/skill-opt.segments/_index.segment.rsc +3 -3
  543. package/.next/standalone/.next/server/app/skill-opt.segments/_tree.segment.rsc +2 -2
  544. package/.next/standalone/.next/server/app/skill-release.html +1 -1
  545. package/.next/standalone/.next/server/app/skill-release.rsc +5 -5
  546. package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p/skill-release/__PAGE__.segment.rsc +2 -2
  547. package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p/skill-release.segment.rsc +1 -1
  548. package/.next/standalone/.next/server/app/skill-release.segments/!KG1haW4p.segment.rsc +2 -2
  549. package/.next/standalone/.next/server/app/skill-release.segments/_full.segment.rsc +5 -5
  550. package/.next/standalone/.next/server/app/skill-release.segments/_head.segment.rsc +1 -1
  551. package/.next/standalone/.next/server/app/skill-release.segments/_index.segment.rsc +3 -3
  552. package/.next/standalone/.next/server/app/skill-release.segments/_tree.segment.rsc +2 -2
  553. package/.next/standalone/.next/server/app/skills.html +1 -1
  554. package/.next/standalone/.next/server/app/skills.rsc +5 -5
  555. package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p/skills/__PAGE__.segment.rsc +2 -2
  556. package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p/skills.segment.rsc +1 -1
  557. package/.next/standalone/.next/server/app/skills.segments/!KG1haW4p.segment.rsc +2 -2
  558. package/.next/standalone/.next/server/app/skills.segments/_full.segment.rsc +5 -5
  559. package/.next/standalone/.next/server/app/skills.segments/_head.segment.rsc +1 -1
  560. package/.next/standalone/.next/server/app/skills.segments/_index.segment.rsc +3 -3
  561. package/.next/standalone/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
  562. package/.next/standalone/.next/server/app/trace.html +1 -1
  563. package/.next/standalone/.next/server/app/trace.rsc +7 -7
  564. package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p/trace/__PAGE__.segment.rsc +2 -2
  565. package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p/trace.segment.rsc +1 -1
  566. package/.next/standalone/.next/server/app/trace.segments/!KG1haW4p.segment.rsc +2 -2
  567. package/.next/standalone/.next/server/app/trace.segments/_full.segment.rsc +7 -7
  568. package/.next/standalone/.next/server/app/trace.segments/_head.segment.rsc +1 -1
  569. package/.next/standalone/.next/server/app/trace.segments/_index.segment.rsc +3 -3
  570. package/.next/standalone/.next/server/app/trace.segments/_tree.segment.rsc +2 -2
  571. package/.next/standalone/.next/server/app/version-analysis.html +1 -0
  572. package/.next/standalone/.next/server/app/version-analysis.meta +16 -0
  573. package/.next/standalone/.next/server/app/version-analysis.rsc +23 -0
  574. package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p/version-analysis/__PAGE__.segment.rsc +9 -0
  575. package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p/version-analysis.segment.rsc +4 -0
  576. package/.next/standalone/.next/server/app/version-analysis.segments/!KG1haW4p.segment.rsc +7 -0
  577. package/.next/standalone/.next/server/app/version-analysis.segments/_full.segment.rsc +23 -0
  578. package/.next/standalone/.next/server/app/version-analysis.segments/_head.segment.rsc +6 -0
  579. package/.next/standalone/.next/server/app/version-analysis.segments/_index.segment.rsc +6 -0
  580. package/.next/standalone/.next/server/app/version-analysis.segments/_tree.segment.rsc +2 -0
  581. package/.next/standalone/.next/server/app/version-management.html +1 -0
  582. package/.next/standalone/.next/server/app/version-management.meta +16 -0
  583. package/.next/standalone/.next/server/app/version-management.rsc +22 -0
  584. package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p/version-management/__PAGE__.segment.rsc +9 -0
  585. package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p/version-management.segment.rsc +4 -0
  586. package/.next/standalone/.next/server/app/version-management.segments/!KG1haW4p.segment.rsc +7 -0
  587. package/.next/standalone/.next/server/app/version-management.segments/_full.segment.rsc +22 -0
  588. package/.next/standalone/.next/server/app/version-management.segments/_head.segment.rsc +6 -0
  589. package/.next/standalone/.next/server/app/version-management.segments/_index.segment.rsc +6 -0
  590. package/.next/standalone/.next/server/app/version-management.segments/_tree.segment.rsc +2 -0
  591. package/.next/standalone/.next/server/app-paths-manifest.json +9 -0
  592. package/.next/standalone/.next/server/chunks/[root-of-the-server]__096d00c3._.js +3 -0
  593. package/.next/standalone/.next/server/chunks/[root-of-the-server]__28078c4e._.js +1 -1
  594. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4509f30c._.js +1 -1
  595. package/.next/standalone/.next/server/chunks/[root-of-the-server]__51f686fd._.js +22 -0
  596. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5386e9b4._.js +22 -0
  597. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5cb21a03._.js +3 -0
  598. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6fe0c73e._.js +1 -1
  599. package/.next/standalone/.next/server/chunks/[root-of-the-server]__88e070f0._.js +1 -1
  600. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8b872712._.js +22 -0
  601. package/.next/standalone/.next/server/chunks/[root-of-the-server]__98ce63c7._.js +1 -1
  602. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9f6a4627._.js +1 -1
  603. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c875b500._.js +3 -0
  604. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c8b9af98._.js +1 -1
  605. package/.next/standalone/.next/server/chunks/[root-of-the-server]__cfcf074d._.js +3 -0
  606. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d754b2c2._.js +3 -0
  607. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e60b9568._.js +22 -0
  608. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e8b9c639._.js +22 -0
  609. package/.next/standalone/.next/server/chunks/[root-of-the-server]__f30eea21._.js +3 -0
  610. package/.next/standalone/.next/server/chunks/_05c80664._.js +1 -1
  611. package/.next/standalone/.next/server/chunks/_1c2f3589._.js +1 -1
  612. package/.next/standalone/.next/server/chunks/{_1a32fa23._.js → _5090183e._.js} +2 -2
  613. package/.next/standalone/.next/server/chunks/{_e84c3e5f._.js → _6a203624._.js} +1 -1
  614. package/.next/standalone/.next/server/chunks/{_a0074544._.js → _70b9b972._.js} +1 -1
  615. package/.next/standalone/.next/server/chunks/_78c6471e._.js +1 -1
  616. package/.next/standalone/.next/server/chunks/{_547fcde4._.js → _d02fac80._.js} +2 -2
  617. package/.next/standalone/.next/server/chunks/_d043f698._.js +1 -1
  618. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_fleet_agent_route_actions_b98e2c99.js +3 -0
  619. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_modelconfig_pricing_route_actions_bca6856d.js +3 -0
  620. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_tags_[id]_route_actions_a6f8b324.js +3 -0
  621. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_tags_route_actions_caf13f5f.js +3 -0
  622. package/.next/standalone/.next/server/chunks/bec2d_app_api_observe_version-analysis_tags_[tagId]_traces_route_actions_ff37f2d3.js +3 -0
  623. package/.next/standalone/.next/server/chunks/ce889_server_app_api_observe_executions_[executionId]_tags_route_actions_08aa41a4.js +3 -0
  624. package/.next/standalone/.next/server/chunks/ce889_server_app_api_observe_version-analysis_compare_route_actions_b48ab573.js +3 -0
  625. package/.next/standalone/.next/server/chunks/src_lib_266d6cf4._.js +51 -0
  626. package/.next/standalone/.next/server/chunks/src_lib_5d95b500._.js +3 -0
  627. package/.next/standalone/.next/server/chunks/src_lib_67530201._.js +51 -0
  628. package/.next/standalone/.next/server/chunks/src_lib_9513f84d._.js +48 -0
  629. package/.next/standalone/.next/server/chunks/src_lib_9d09752c._.js +1 -1
  630. package/.next/standalone/.next/server/chunks/src_lib_a03a423b._.js +48 -0
  631. package/.next/standalone/.next/server/chunks/src_lib_a2a34aa6._.js +1 -1
  632. package/.next/standalone/.next/server/chunks/{src_lib_4751db31._.js → src_lib_dc72b90b._.js} +1 -1
  633. package/.next/standalone/.next/server/chunks/src_lib_ea85a447._.js +1 -1
  634. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0eb5d21d._.js +3 -0
  635. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__143c2f65._.js +3 -0
  636. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__85e7edfe._.js +3 -0
  637. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__c9cf8076._.js → [root-of-the-server]__90686664._.js} +2 -2
  638. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__96628a39._.js +3 -0
  639. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__c69baa4a._.js +3 -0
  640. package/.next/standalone/.next/server/chunks/ssr/_051b1443._.js +3 -0
  641. package/.next/standalone/.next/server/chunks/ssr/_0ae78458._.js +3 -0
  642. package/.next/standalone/.next/server/chunks/ssr/{_400d0da3._.js → _1278164d._.js} +2 -2
  643. package/.next/standalone/.next/server/chunks/ssr/_15e714f2._.js +3 -0
  644. package/.next/standalone/.next/server/chunks/ssr/_2f20fbfc._.js +3 -0
  645. package/.next/standalone/.next/server/chunks/ssr/_4e720925._.js +3 -0
  646. package/.next/standalone/.next/server/chunks/ssr/_5aa55aa6._.js +3 -0
  647. package/.next/standalone/.next/server/chunks/ssr/_8b68f69f._.js +3 -0
  648. package/.next/standalone/.next/server/chunks/ssr/_8d4b753e._.js +3 -0
  649. package/.next/standalone/.next/server/chunks/ssr/_976dfbab._.js +4 -0
  650. package/.next/standalone/.next/server/chunks/ssr/_aab048d0._.js +1 -1
  651. package/.next/standalone/.next/server/chunks/ssr/_be1ffbbf._.js +12 -0
  652. package/.next/standalone/.next/server/chunks/ssr/_c815e0e7._.js +4 -0
  653. package/.next/standalone/.next/server/chunks/ssr/_e4c81263._.js +3 -0
  654. package/.next/standalone/.next/server/chunks/ssr/{_a3d5f9bc._.js → _e5ee8977._.js} +2 -2
  655. package/.next/standalone/.next/server/chunks/ssr/_f634ea15._.js +12 -0
  656. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_(main)_version-analysis_page_actions_479d49a7.js +3 -0
  657. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_(main)_version-management_page_actions_aea5ae93.js +3 -0
  658. package/.next/standalone/.next/server/chunks/ssr/{node_modules_a443e166._.js → node_modules_3b1fd8eb._.js} +2 -2
  659. package/.next/standalone/.next/server/chunks/ssr/node_modules_7680a21d._.js +3 -0
  660. package/.next/standalone/.next/server/chunks/ssr/node_modules_bda25b86._.js +3 -0
  661. package/.next/standalone/.next/server/chunks/ssr/node_modules_bfffaa78._.js +3 -0
  662. package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_2e7afafc._.js +3 -0
  663. package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_cd0b182b._.js +3 -0
  664. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_accessconfig_install_page_tsx_6f4ef3fc._.js +3 -3
  665. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_dashboard_page_tsx_7eac7774._.js +1 -1
  666. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_modelconfig_registry_page_tsx_1ead2fd4._.js +1 -1
  667. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_quality_page_tsx_26bb8e80._.js +1 -1
  668. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_trace_page_tsx_41e7865d._.js +1 -1
  669. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_version-analysis_page_tsx_63ae8791._.js +3 -0
  670. package/.next/standalone/.next/server/chunks/ssr/src_app_(main)_version-management_page_tsx_87fe0372._.js +3 -0
  671. package/.next/standalone/.next/server/chunks/ssr/src_components_ui_select_tsx_4c0f64d8._.js +1 -1
  672. package/.next/standalone/.next/server/chunks/ssr/src_lib_client_locale-context_tsx_7184d9aa._.js +1 -1
  673. package/.next/standalone/.next/server/pages/404.html +1 -1
  674. package/.next/standalone/.next/server/pages/500.html +2 -2
  675. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  676. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  677. package/.next/standalone/.next/static/chunks/0257c68e82e9f2b0.js +1 -0
  678. package/.next/standalone/.next/static/chunks/{8754e0cf40813330.js → 06ac4297aa02f40a.js} +1 -1
  679. package/.next/standalone/.next/static/chunks/0fe047909a490ef0.js +1 -0
  680. package/.next/standalone/.next/static/chunks/151b95e65092aa16.js +1 -0
  681. package/.next/standalone/.next/static/chunks/1624a1adcb73d784.js +1 -0
  682. package/.next/standalone/.next/static/chunks/1cb2cee6b2f89fb7.js +1 -0
  683. package/.next/standalone/.next/static/chunks/1f173de64ad85757.js +10 -0
  684. package/.next/standalone/.next/static/chunks/{4dcd21eef469e66b.js → 2064add303799ffc.js} +1 -1
  685. package/.next/standalone/.next/static/chunks/25a9b2907e03a172.css +1 -0
  686. package/.next/standalone/.next/static/chunks/2fb55cc737806639.js +1 -0
  687. package/.next/standalone/.next/static/chunks/30a686796d86273c.js +1 -0
  688. package/.next/standalone/.next/static/chunks/3184105f3d2b47a1.js +10 -0
  689. package/.next/standalone/.next/static/chunks/379315313d164a57.js +1 -0
  690. package/.next/standalone/.next/static/chunks/39157b51ed6489eb.js +1 -0
  691. package/.next/standalone/.next/static/chunks/{dc22f906bd43e9a3.js → 46308ae9f83ac112.js} +3 -3
  692. package/.next/standalone/.next/static/chunks/4b72abe72a9b6cd9.js +6 -0
  693. package/.next/standalone/.next/static/chunks/54538e1a80e53392.js +1 -0
  694. package/.next/standalone/.next/static/chunks/599fdc4cf6eb9e95.js +1 -0
  695. package/.next/standalone/.next/static/chunks/63220d0acc5073cc.js +1 -0
  696. package/.next/standalone/.next/static/chunks/6da1d3424f804755.js +1 -0
  697. package/.next/standalone/.next/static/chunks/6e6f2418240877c6.js +1 -0
  698. package/.next/standalone/.next/static/chunks/8668d6f4c34d1e67.js +3 -0
  699. package/.next/standalone/.next/static/chunks/946d260668afc16b.js +1 -0
  700. package/.next/standalone/.next/static/chunks/97822ca2c186f93d.js +1 -0
  701. package/.next/{static/chunks/96c7e2e47438553a.js → standalone/.next/static/chunks/98588c35b1e00bea.js} +1 -1
  702. package/.next/standalone/.next/static/chunks/a99fb4f44f9a41f3.js +1 -0
  703. package/.next/standalone/.next/static/chunks/b223106f6c610a67.js +1 -0
  704. package/.next/standalone/.next/static/chunks/b5e671771efd9e7d.js +1 -0
  705. package/.next/standalone/.next/static/chunks/cc9a7b6a8edabe81.js +1 -0
  706. package/.next/standalone/.next/static/chunks/cfb3924a60d22c64.js +1 -0
  707. package/.next/standalone/.next/static/chunks/d15d7f6146b85000.js +1 -0
  708. package/.next/standalone/.next/static/chunks/dee90c3e29cd39bb.js +1 -0
  709. package/.next/standalone/.next/static/chunks/{bf909bd0ff1898e4.js → f6954ae67d81050e.js} +1 -1
  710. package/.next/standalone/.next/static/chunks/fc7f5db841a7032a.js +1 -0
  711. package/.next/standalone/node_modules/.prisma/client/edge.js +26 -3
  712. package/.next/standalone/node_modules/.prisma/client/index-browser.js +23 -0
  713. package/.next/standalone/node_modules/.prisma/client/index.js +26 -3
  714. package/.next/standalone/node_modules/.prisma/client/package.json +1 -1
  715. package/.next/standalone/node_modules/.prisma/client/schema.prisma +39 -0
  716. package/.next/standalone/node_modules/.prisma/client/wasm.js +23 -0
  717. package/.next/standalone/package.json +1 -1
  718. package/.next/standalone/prisma/schema.prisma +38 -0
  719. package/.next/static/chunks/0257c68e82e9f2b0.js +1 -0
  720. package/.next/static/chunks/{8754e0cf40813330.js → 06ac4297aa02f40a.js} +1 -1
  721. package/.next/static/chunks/0fe047909a490ef0.js +1 -0
  722. package/.next/static/chunks/151b95e65092aa16.js +1 -0
  723. package/.next/static/chunks/1624a1adcb73d784.js +1 -0
  724. package/.next/static/chunks/1cb2cee6b2f89fb7.js +1 -0
  725. package/.next/static/chunks/1f173de64ad85757.js +10 -0
  726. package/.next/static/chunks/{4dcd21eef469e66b.js → 2064add303799ffc.js} +1 -1
  727. package/.next/static/chunks/25a9b2907e03a172.css +1 -0
  728. package/.next/static/chunks/2fb55cc737806639.js +1 -0
  729. package/.next/static/chunks/30a686796d86273c.js +1 -0
  730. package/.next/static/chunks/3184105f3d2b47a1.js +10 -0
  731. package/.next/static/chunks/379315313d164a57.js +1 -0
  732. package/.next/static/chunks/39157b51ed6489eb.js +1 -0
  733. package/.next/static/chunks/{dc22f906bd43e9a3.js → 46308ae9f83ac112.js} +3 -3
  734. package/.next/static/chunks/4b72abe72a9b6cd9.js +6 -0
  735. package/.next/static/chunks/54538e1a80e53392.js +1 -0
  736. package/.next/static/chunks/599fdc4cf6eb9e95.js +1 -0
  737. package/.next/static/chunks/63220d0acc5073cc.js +1 -0
  738. package/.next/static/chunks/6da1d3424f804755.js +1 -0
  739. package/.next/static/chunks/6e6f2418240877c6.js +1 -0
  740. package/.next/static/chunks/8668d6f4c34d1e67.js +3 -0
  741. package/.next/static/chunks/946d260668afc16b.js +1 -0
  742. package/.next/static/chunks/97822ca2c186f93d.js +1 -0
  743. package/.next/{standalone/.next/static/chunks/96c7e2e47438553a.js → static/chunks/98588c35b1e00bea.js} +1 -1
  744. package/.next/static/chunks/a99fb4f44f9a41f3.js +1 -0
  745. package/.next/static/chunks/b223106f6c610a67.js +1 -0
  746. package/.next/static/chunks/b5e671771efd9e7d.js +1 -0
  747. package/.next/static/chunks/cc9a7b6a8edabe81.js +1 -0
  748. package/.next/static/chunks/cfb3924a60d22c64.js +1 -0
  749. package/.next/static/chunks/d15d7f6146b85000.js +1 -0
  750. package/.next/static/chunks/dee90c3e29cd39bb.js +1 -0
  751. package/.next/static/chunks/{bf909bd0ff1898e4.js → f6954ae67d81050e.js} +1 -1
  752. package/.next/static/chunks/fc7f5db841a7032a.js +1 -0
  753. package/package.json +1 -1
  754. package/prisma/schema.prisma +38 -0
  755. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2574e6ed._.js +0 -3
  756. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2710fb53._.js +0 -3
  757. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8cc92af1._.js +0 -3
  758. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9d2e5f60._.js +0 -3
  759. package/.next/standalone/.next/server/chunks/[root-of-the-server]__bd3dc3ab._.js +0 -3
  760. package/.next/standalone/.next/server/chunks/src_lib_6cb48964._.js +0 -32
  761. package/.next/standalone/.next/server/chunks/src_lib_a3155704._.js +0 -3
  762. package/.next/standalone/.next/server/chunks/src_lib_baaf83ef._.js +0 -29
  763. package/.next/standalone/.next/server/chunks/src_lib_bf0ee699._.js +0 -32
  764. package/.next/standalone/.next/server/chunks/src_lib_dbf3c792._.js +0 -29
  765. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__2ec2bb09._.js +0 -3
  766. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__3cb83dc3._.js +0 -3
  767. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__fc94ba06._.js +0 -3
  768. package/.next/standalone/.next/server/chunks/ssr/_0141e5c7._.js +0 -3
  769. package/.next/standalone/.next/server/chunks/ssr/_0acdaaae._.js +0 -3
  770. package/.next/standalone/.next/server/chunks/ssr/_231821bd._.js +0 -3
  771. package/.next/standalone/.next/server/chunks/ssr/_5d1f8671._.js +0 -12
  772. package/.next/standalone/.next/server/chunks/ssr/_8bba8b8d._.js +0 -3
  773. package/.next/standalone/.next/server/chunks/ssr/_96725836._.js +0 -12
  774. package/.next/standalone/.next/server/chunks/ssr/_b08dc931._.js +0 -3
  775. package/.next/standalone/.next/server/chunks/ssr/_c4db9cec._.js +0 -3
  776. package/.next/standalone/.next/server/chunks/ssr/node_modules_8bfa35b3._.js +0 -3
  777. package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_30858f09._.js +0 -3
  778. package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_f1e06ad8._.js +0 -3
  779. package/.next/standalone/.next/static/chunks/0b6bd84bf10579a4.js +0 -10
  780. package/.next/standalone/.next/static/chunks/0bca64d67dceae3f.js +0 -1
  781. package/.next/standalone/.next/static/chunks/16047b19dda5c90d.js +0 -10
  782. package/.next/standalone/.next/static/chunks/3a0f454536f3ebc8.js +0 -1
  783. package/.next/standalone/.next/static/chunks/3d19f62114122bd3.js +0 -1
  784. package/.next/standalone/.next/static/chunks/3d6127f72467176d.js +0 -1
  785. package/.next/standalone/.next/static/chunks/44545e70bb7a33b8.js +0 -1
  786. package/.next/standalone/.next/static/chunks/4e52a5c5e332595a.js +0 -1
  787. package/.next/standalone/.next/static/chunks/6238734a2f04b1f9.js +0 -1
  788. package/.next/standalone/.next/static/chunks/66b23011cd8544ad.js +0 -1
  789. package/.next/standalone/.next/static/chunks/7a758615e3d35d6d.js +0 -1
  790. package/.next/standalone/.next/static/chunks/7a7dc24eed0484dc.js +0 -1
  791. package/.next/standalone/.next/static/chunks/7d4fa817c5229801.js +0 -1
  792. package/.next/standalone/.next/static/chunks/8f18a711543d804a.js +0 -1
  793. package/.next/standalone/.next/static/chunks/9155a6c07dc0502d.js +0 -6
  794. package/.next/standalone/.next/static/chunks/94fdb955b1dc512a.js +0 -1
  795. package/.next/standalone/.next/static/chunks/97b8d7ea5d04e2a2.js +0 -1
  796. package/.next/standalone/.next/static/chunks/a31bf4e176b5e90c.js +0 -3
  797. package/.next/standalone/.next/static/chunks/b9597989b5b0abd3.js +0 -1
  798. package/.next/standalone/.next/static/chunks/d170174df1128338.js +0 -1
  799. package/.next/standalone/.next/static/chunks/d91c2c0bbe0b59ab.js +0 -1
  800. package/.next/standalone/.next/static/chunks/e159d293fc72e91b.css +0 -1
  801. package/.next/standalone/.next/static/chunks/e45a4e085c7ce03c.js +0 -1
  802. package/.next/standalone/.next/static/chunks/ffd21617593aaafd.js +0 -1
  803. package/.next/static/chunks/0b6bd84bf10579a4.js +0 -10
  804. package/.next/static/chunks/0bca64d67dceae3f.js +0 -1
  805. package/.next/static/chunks/16047b19dda5c90d.js +0 -10
  806. package/.next/static/chunks/3a0f454536f3ebc8.js +0 -1
  807. package/.next/static/chunks/3d19f62114122bd3.js +0 -1
  808. package/.next/static/chunks/3d6127f72467176d.js +0 -1
  809. package/.next/static/chunks/44545e70bb7a33b8.js +0 -1
  810. package/.next/static/chunks/4e52a5c5e332595a.js +0 -1
  811. package/.next/static/chunks/6238734a2f04b1f9.js +0 -1
  812. package/.next/static/chunks/66b23011cd8544ad.js +0 -1
  813. package/.next/static/chunks/7a758615e3d35d6d.js +0 -1
  814. package/.next/static/chunks/7a7dc24eed0484dc.js +0 -1
  815. package/.next/static/chunks/7d4fa817c5229801.js +0 -1
  816. package/.next/static/chunks/8f18a711543d804a.js +0 -1
  817. package/.next/static/chunks/9155a6c07dc0502d.js +0 -6
  818. package/.next/static/chunks/94fdb955b1dc512a.js +0 -1
  819. package/.next/static/chunks/97b8d7ea5d04e2a2.js +0 -1
  820. package/.next/static/chunks/a31bf4e176b5e90c.js +0 -3
  821. package/.next/static/chunks/b9597989b5b0abd3.js +0 -1
  822. package/.next/static/chunks/d170174df1128338.js +0 -1
  823. package/.next/static/chunks/d91c2c0bbe0b59ab.js +0 -1
  824. package/.next/static/chunks/e159d293fc72e91b.css +0 -1
  825. package/.next/static/chunks/e45a4e085c7ce03c.js +0 -1
  826. package/.next/static/chunks/ffd21617593aaafd.js +0 -1
  827. /package/.next/standalone/.next/static/{iE8084jR9Kgb7Bhs3Xokh → VeFGnFbPjqrwSXp9h5AgX}/_buildManifest.js +0 -0
  828. /package/.next/standalone/.next/static/{iE8084jR9Kgb7Bhs3Xokh → VeFGnFbPjqrwSXp9h5AgX}/_clientMiddlewareManifest.json +0 -0
  829. /package/.next/standalone/.next/static/{iE8084jR9Kgb7Bhs3Xokh → VeFGnFbPjqrwSXp9h5AgX}/_ssgManifest.js +0 -0
  830. /package/.next/static/{iE8084jR9Kgb7Bhs3Xokh → VeFGnFbPjqrwSXp9h5AgX}/_buildManifest.js +0 -0
  831. /package/.next/static/{iE8084jR9Kgb7Bhs3Xokh → VeFGnFbPjqrwSXp9h5AgX}/_clientMiddlewareManifest.json +0 -0
  832. /package/.next/static/{iE8084jR9Kgb7Bhs3Xokh → VeFGnFbPjqrwSXp9h5AgX}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,776639,e=>{"use strict";var t=e.i(843476),n=e.i(271645),r=e.i(981140),o=e.i(820783),a=e.i(30030),i=e.i(610772),c=e.i(369340),u=e.i(726330),l=e.i(765491),s=e.i(774606),d=e.i(296626),f=e.i(248425),p=e.i(303536),v=e.i(985369),m=e.i(186312),h=e.i(991918),g="Dialog",[y,b]=(0,a.createContextScope)(g),[w,E]=y(g),x=e=>{let{__scopeDialog:r,children:o,open:a,defaultOpen:u,onOpenChange:l,modal:s=!0}=e,d=n.useRef(null),f=n.useRef(null),[p,v]=(0,c.useControllableState)({prop:a,defaultProp:u??!1,onChange:l,caller:g});return(0,t.jsx)(w,{scope:r,triggerRef:d,contentRef:f,contentId:(0,i.useId)(),titleId:(0,i.useId)(),descriptionId:(0,i.useId)(),open:p,onOpenChange:v,onOpenToggle:n.useCallback(()=>v(e=>!e),[v]),modal:s,children:o})};x.displayName=g;var C="DialogTrigger";n.forwardRef((e,n)=>{let{__scopeDialog:a,...i}=e,c=E(C,a),u=(0,o.useComposedRefs)(n,c.triggerRef);return(0,t.jsx)(f.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":c.open,"aria-controls":c.open?c.contentId:void 0,"data-state":H(c.open),...i,ref:u,onClick:(0,r.composeEventHandlers)(e.onClick,c.onOpenToggle)})}).displayName=C;var R="DialogPortal",[S,N]=y(R,{forceMount:void 0}),k=e=>{let{__scopeDialog:r,forceMount:o,children:a,container:i}=e,c=E(R,r);return(0,t.jsx)(S,{scope:r,forceMount:o,children:n.Children.map(a,e=>(0,t.jsx)(d.Presence,{present:o||c.open,children:(0,t.jsx)(s.Portal,{asChild:!0,container:i,children:e})}))})};k.displayName=R;var j="DialogOverlay",D=n.forwardRef((e,n)=>{let r=N(j,e.__scopeDialog),{forceMount:o=r.forceMount,...a}=e,i=E(j,e.__scopeDialog);return i.modal?(0,t.jsx)(d.Presence,{present:o||i.open,children:(0,t.jsx)(O,{...a,ref:n})}):null});D.displayName=j;var A=(0,h.createSlot)("DialogOverlay.RemoveScroll"),O=n.forwardRef((e,n)=>{let{__scopeDialog:r,...a}=e,i=E(j,r),c=(0,u.useDismissableLayerSurface)(),l=(0,o.useComposedRefs)(n,c);return(0,t.jsx)(v.RemoveScroll,{as:A,allowPinchZoom:!0,shards:[i.contentRef],children:(0,t.jsx)(f.Primitive.div,{"data-state":H(i.open),...a,ref:l,style:{pointerEvents:"auto",...a.style}})})}),P="DialogContent",M=n.forwardRef((e,n)=>{let r=N(P,e.__scopeDialog),{forceMount:o=r.forceMount,...a}=e,i=E(P,e.__scopeDialog);return(0,t.jsx)(d.Presence,{present:o||i.open,children:i.modal?(0,t.jsx)(T,{...a,ref:n}):(0,t.jsx)(F,{...a,ref:n})})});M.displayName=P;var T=n.forwardRef((e,a)=>{let i=E(P,e.__scopeDialog),c=n.useRef(null),u=(0,o.useComposedRefs)(a,i.contentRef,c);return n.useEffect(()=>{let e=c.current;if(e)return(0,m.hideOthers)(e)},[]),(0,t.jsx)(I,{...e,ref:u,trapFocus:i.open,disableOutsidePointerEvents:i.open,onCloseAutoFocus:(0,r.composeEventHandlers)(e.onCloseAutoFocus,e=>{e.preventDefault(),i.triggerRef.current?.focus()}),onPointerDownOutside:(0,r.composeEventHandlers)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=0===t.button&&!0===t.ctrlKey;(2===t.button||n)&&e.preventDefault()}),onFocusOutside:(0,r.composeEventHandlers)(e.onFocusOutside,e=>e.preventDefault())})}),F=n.forwardRef((e,r)=>{let o=E(P,e.__scopeDialog),a=n.useRef(!1),i=n.useRef(!1);return(0,t.jsx)(I,{...e,ref:r,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(a.current||o.triggerRef.current?.focus(),t.preventDefault()),a.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(a.current=!0,"pointerdown"===t.detail.originalEvent.type&&(i.current=!0));let n=t.target;o.triggerRef.current?.contains(n)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&i.current&&t.preventDefault()}})}),I=n.forwardRef((e,n)=>{let{__scopeDialog:r,trapFocus:o,onOpenAutoFocus:a,onCloseAutoFocus:i,...c}=e,s=E(P,r);return(0,p.useFocusGuards)(),(0,t.jsx)(t.Fragment,{children:(0,t.jsx)(l.FocusScope,{asChild:!0,loop:!0,trapped:o,onMountAutoFocus:a,onUnmountAutoFocus:i,children:(0,t.jsx)(u.DismissableLayer,{role:"dialog",id:s.contentId,"aria-describedby":s.descriptionId,"aria-labelledby":s.titleId,"data-state":H(s.open),...c,ref:n,deferPointerDownOutside:!0,onDismiss:()=>s.onOpenChange(!1)})})})}),L="DialogTitle",_=n.forwardRef((e,n)=>{let{__scopeDialog:r,...o}=e,a=E(L,r);return(0,t.jsx)(f.Primitive.h2,{id:a.titleId,...o,ref:n})});_.displayName=L;var W="DialogDescription",z=n.forwardRef((e,n)=>{let{__scopeDialog:r,...o}=e,a=E(W,r);return(0,t.jsx)(f.Primitive.p,{id:a.descriptionId,...o,ref:n})});z.displayName=W;var B="DialogClose",K=n.forwardRef((e,n)=>{let{__scopeDialog:o,...a}=e,i=E(B,o);return(0,t.jsx)(f.Primitive.button,{type:"button",...a,ref:n,onClick:(0,r.composeEventHandlers)(e.onClick,()=>i.onOpenChange(!1))})});function H(e){return e?"open":"closed"}K.displayName=B;var X=e.i(263676),U=e.i(975157);function Y({className:e,...n}){return(0,t.jsx)(D,{"data-slot":"dialog-overlay",className:(0,U.cn)("fixed inset-0 z-50 bg-black/50 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...n})}function Z({className:e,children:n,...r}){return(0,t.jsxs)(k,{children:[(0,t.jsx)(Y,{}),(0,t.jsxs)(M,{"data-slot":"dialog-content",className:(0,U.cn)("fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 rounded-lg border border-card-border bg-card p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",e),...r,children:[n,(0,t.jsx)(K,{className:"absolute right-4 top-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring","aria-label":"Close",children:(0,t.jsx)(X.X,{className:"size-4"})})]})]})}function G({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"dialog-header",className:(0,U.cn)("flex flex-col gap-1.5 text-left",e),...n})}function q({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"dialog-footer",className:(0,U.cn)("flex flex-row justify-end gap-2 pt-2",e),...n})}function V({className:e,...n}){return(0,t.jsx)(_,{"data-slot":"dialog-title",className:(0,U.cn)("text-base font-semibold text-foreground",e),...n})}function $({className:e,...n}){return(0,t.jsx)(z,{"data-slot":"dialog-description",className:(0,U.cn)("text-sm text-foreground-secondary",e),...n})}e.s(["Dialog",()=>x,"DialogContent",()=>Z,"DialogDescription",()=>$,"DialogFooter",()=>q,"DialogHeader",()=>G,"DialogTitle",()=>V],776639)},519455,225913,e=>{"use strict";var t=e.i(843476),n=e.i(991918),r=e.i(207670);let o=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,a=r.clsx,i=(e,t)=>n=>{var r;if((null==t?void 0:t.variants)==null)return a(e,null==n?void 0:n.class,null==n?void 0:n.className);let{variants:i,defaultVariants:c}=t,u=Object.keys(i).map(e=>{let t=null==n?void 0:n[e],r=null==c?void 0:c[e];if(null===t)return null;let a=o(t)||o(r);return i[e][a]}),l=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return void 0===r||(e[n]=r),e},{});return a(e,u,null==t||null==(r=t.compoundVariants)?void 0:r.reduce((e,t)=>{let{class:n,className:r,...o}=t;return Object.entries(o).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...c,...l}[t]):({...c,...l})[t]===n})?[...e,n,r]:e},[]),null==n?void 0:n.class,null==n?void 0:n.className)};e.s(["cva",0,i],225913);var c=e.i(975157);let u=i("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-[color,box-shadow] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_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",outline:"border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline",brand:"bg-[#2F6868] hover:bg-[#2F6868]/90 border-[#2F6868] text-white"},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 l({className:e,variant:r,size:o,asChild:a=!1,...i}){let l=a?n.Slot:"button";return(0,t.jsx)(l,{"data-slot":"button",className:(0,c.cn)(u({variant:r,size:o,className:e})),...i})}e.s(["Button",()=>l],519455)},765491,e=>{"use strict";let t;var n=e.i(271645),r=e.i(820783),o=e.i(248425),a=e.i(30207),i=e.i(843476),c="focusScope.autoFocusOnMount",u="focusScope.autoFocusOnUnmount",l={bubbles:!1,cancelable:!0},s=n.forwardRef((e,t)=>{let{loop:s=!1,trapped:m=!1,onMountAutoFocus:h,onUnmountAutoFocus:g,...y}=e,[b,w]=n.useState(null),E=(0,a.useCallbackRef)(h),x=(0,a.useCallbackRef)(g),C=n.useRef(null),R=(0,r.useComposedRefs)(t,w),S=n.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;n.useEffect(()=>{if(m){let e=function(e){if(S.paused||!b)return;let t=e.target;b.contains(t)?C.current=t:p(C.current,{select:!0})},t=function(e){if(S.paused||!b)return;let t=e.relatedTarget;null!==t&&(b.contains(t)||p(C.current,{select:!0}))};document.addEventListener("focusin",e),document.addEventListener("focusout",t);let n=new MutationObserver(function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&p(b)});return b&&n.observe(b,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",e),document.removeEventListener("focusout",t),n.disconnect()}}},[m,b,S.paused]),n.useEffect(()=>{if(b){v.add(S);let e=document.activeElement;if(!b.contains(e)){let t=new CustomEvent(c,l);b.addEventListener(c,E),b.dispatchEvent(t),t.defaultPrevented||(function(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(p(r,{select:t}),document.activeElement!==n)return}(d(b).filter(e=>"A"!==e.tagName),{select:!0}),document.activeElement===e&&p(b))}return()=>{b.removeEventListener(c,E),setTimeout(()=>{let t=new CustomEvent(u,l);b.addEventListener(u,x),b.dispatchEvent(t),t.defaultPrevented||p(e??document.body,{select:!0}),b.removeEventListener(u,x),v.remove(S)},0)}}},[b,E,x,S]);let N=n.useCallback(e=>{if(!s&&!m||S.paused)return;let t="Tab"===e.key&&!e.altKey&&!e.ctrlKey&&!e.metaKey,n=document.activeElement;if(t&&n){var r;let t,o=e.currentTarget,[a,i]=[f(t=d(r=o),r),f(t.reverse(),r)];a&&i?e.shiftKey||n!==i?e.shiftKey&&n===a&&(e.preventDefault(),s&&p(i,{select:!0})):(e.preventDefault(),s&&p(a,{select:!0})):n===o&&e.preventDefault()}},[s,m,S.paused]);return(0,i.jsx)(o.Primitive.div,{tabIndex:-1,...y,ref:R,onKeyDown:N})});function d(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t="INPUT"===e.tagName&&"hidden"===e.type;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function f(e,t){for(let n of e)if(!function(e,{upTo:t}){if("hidden"===getComputedStyle(e).visibility)return!0;for(;e&&(void 0===t||e!==t);){if("none"===getComputedStyle(e).display)return!0;e=e.parentElement}return!1}(n,{upTo:t}))return n}function p(e,{select:t=!1}={}){if(e&&e.focus){var n;let r=document.activeElement;e.focus({preventScroll:!0}),e!==r&&(n=e)instanceof HTMLInputElement&&"select"in n&&t&&e.select()}}s.displayName="FocusScope";var v=(t=[],{add(e){let n=t[0];e!==n&&n?.pause(),(t=m(t,e)).unshift(e)},remove(e){t=m(t,e),t[0]?.resume()}});function m(e,t){let n=[...e],r=n.indexOf(t);return -1!==r&&n.splice(r,1),n}e.s(["FocusScope",()=>s])},303536,e=>{"use strict";var t=e.i(271645),n=0,r=null;function o(){t.useEffect(()=>{r||(r={start:a(),end:a()});let{start:e,end:t}=r;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),n++,()=>{1===n&&(r?.start.remove(),r?.end.remove(),r=null),n=Math.max(0,n-1)}},[])}function a(){let e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}e.s(["useFocusGuards",()=>o])},985369,e=>{"use strict";var t,n,r,o,a,i,c,u=function(){return(u=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function l(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&0>t.indexOf(r)&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)0>t.indexOf(r[o])&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]]);return n}var s=("function"==typeof SuppressedError&&SuppressedError,e.i(271645)),d="right-scroll-bar-position",f="width-before-scroll-bar";function p(e,t){return"function"==typeof e?e(t):e&&(e.current=t),e}var v="u">typeof window?s.useLayoutEffect:s.useEffect,m=new WeakMap,h=(void 0===t&&(t={}),(void 0===n&&(n=function(e){return e}),r=[],o=!1,a={read:function(){if(o)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:null},useMedium:function(e){var t=n(e,o);return r.push(t),function(){r=r.filter(function(e){return e!==t})}},assignSyncMedium:function(e){for(o=!0;r.length;){var t=r;r=[],t.forEach(e)}r={push:function(t){return e(t)},filter:function(){return r}}},assignMedium:function(e){o=!0;var t=[];if(r.length){var n=r;r=[],n.forEach(e),t=r}var a=function(){var n=t;t=[],n.forEach(e)},i=function(){return Promise.resolve().then(a)};i(),r={push:function(e){t.push(e),i()},filter:function(e){return t=t.filter(e),r}}}}).options=u({async:!0,ssr:!1},t),a),g=function(){},y=s.forwardRef(function(e,t){var n,r,o,a,i=s.useRef(null),c=s.useState({onScrollCapture:g,onWheelCapture:g,onTouchMoveCapture:g}),d=c[0],f=c[1],y=e.forwardProps,b=e.children,w=e.className,E=e.removeScrollBar,x=e.enabled,C=e.shards,R=e.sideCar,S=e.noRelative,N=e.noIsolation,k=e.inert,j=e.allowPinchZoom,D=e.as,A=e.gapMode,O=l(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),P=(n=[i,t],r=function(e){return n.forEach(function(t){return p(t,e)})},(o=(0,s.useState)(function(){return{value:null,callback:r,facade:{get current(){return o.value},set current(value){var e=o.value;e!==value&&(o.value=value,o.callback(value,e))}}}})[0]).callback=r,a=o.facade,v(function(){var e=m.get(a);if(e){var t=new Set(e),r=new Set(n),o=a.current;t.forEach(function(e){r.has(e)||p(e,null)}),r.forEach(function(e){t.has(e)||p(e,o)})}m.set(a,n)},[n]),a),M=u(u({},O),d);return s.createElement(s.Fragment,null,x&&s.createElement(R,{sideCar:h,removeScrollBar:E,shards:C,noRelative:S,noIsolation:N,inert:k,setCallbacks:f,allowPinchZoom:!!j,lockRef:i,gapMode:A}),y?s.cloneElement(s.Children.only(b),u(u({},M),{ref:P})):s.createElement(void 0===D?"div":D,u({},M,{className:w,ref:P}),b))});y.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},y.classNames={fullWidth:f,zeroRight:d};var b=function(e){var t=e.sideCar,n=l(e,["sideCar"]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error("Sidecar medium not found");return s.createElement(r,u({},n))};b.isSideCarExport=!0;var w=function(){var e=0,t=null;return{add:function(n){if(0==e&&(t=function(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=c||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return t&&e.setAttribute("nonce",t),e}())){var r,o;(r=t).styleSheet?r.styleSheet.cssText=n:r.appendChild(document.createTextNode(n)),o=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(o)}e++},remove:function(){--e||!t||(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},E=function(){var e=w();return function(t,n){s.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},x=function(){var e=E();return function(t){return e(t.styles,t.dynamic),null}},C={left:0,top:0,right:0,gap:0},R=function(e){return parseInt(e||"",10)||0},S=function(e){var t=window.getComputedStyle(document.body),n=t["padding"===e?"paddingLeft":"marginLeft"],r=t["padding"===e?"paddingTop":"marginTop"],o=t["padding"===e?"paddingRight":"marginRight"];return[R(n),R(r),R(o)]},N=function(e){if(void 0===e&&(e="margin"),"u"<typeof window)return C;var t=S(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},k=x(),j="data-scroll-locked",D=function(e,t,n,r){var o=e.left,a=e.top,i=e.right,c=e.gap;return void 0===n&&(n="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(r,";\n padding-right: ").concat(c,"px ").concat(r,";\n }\n body[").concat(j,"] {\n overflow: hidden ").concat(r,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(r,";"),"margin"===n&&"\n padding-left: ".concat(o,"px;\n padding-top: ").concat(a,"px;\n padding-right: ").concat(i,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(c,"px ").concat(r,";\n "),"padding"===n&&"padding-right: ".concat(c,"px ").concat(r,";")].filter(Boolean).join(""),"\n }\n \n .").concat(d," {\n right: ").concat(c,"px ").concat(r,";\n }\n \n .").concat(f," {\n margin-right: ").concat(c,"px ").concat(r,";\n }\n \n .").concat(d," .").concat(d," {\n right: 0 ").concat(r,";\n }\n \n .").concat(f," .").concat(f," {\n margin-right: 0 ").concat(r,";\n }\n \n body[").concat(j,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(c,"px;\n }\n")},A=function(){var e=parseInt(document.body.getAttribute(j)||"0",10);return isFinite(e)?e:0},O=function(){s.useEffect(function(){return document.body.setAttribute(j,(A()+1).toString()),function(){var e=A()-1;e<=0?document.body.removeAttribute(j):document.body.setAttribute(j,e.toString())}},[])},P=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,o=void 0===r?"margin":r;O();var a=s.useMemo(function(){return N(o)},[o]);return s.createElement(k,{styles:D(a,!t,o,n?"":"!important")})},M=!1;if("u">typeof window)try{var T=Object.defineProperty({},"passive",{get:function(){return M=!0,!0}});window.addEventListener("test",T,T),window.removeEventListener("test",T,T)}catch(e){M=!1}var F=!!M&&{passive:!1},I=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return"hidden"!==n[t]&&(n.overflowY!==n.overflowX||"TEXTAREA"===e.tagName||"visible"!==n[t])},L=function(e,t){var n=t.ownerDocument,r=t;do{if("u">typeof ShadowRoot&&r instanceof ShadowRoot&&(r=r.host),_(e,r)){var o=W(e,r);if(o[1]>o[2])return!0}r=r.parentNode}while(r&&r!==n.body)return!1},_=function(e,t){return"v"===e?I(t,"overflowY"):I(t,"overflowX")},W=function(e,t){return"v"===e?[t.scrollTop,t.scrollHeight,t.clientHeight]:[t.scrollLeft,t.scrollWidth,t.clientWidth]},z=function(e,t,n,r,o){var a,i=(a=window.getComputedStyle(t).direction,"h"===e&&"rtl"===a?-1:1),c=i*r,u=n.target,l=t.contains(u),s=!1,d=c>0,f=0,p=0;do{if(!u)break;var v=W(e,u),m=v[0],h=v[1]-v[2]-i*m;(m||h)&&_(e,u)&&(f+=h,p+=m);var g=u.parentNode;u=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!l&&u!==document.body||l&&(t.contains(u)||t===u))return d&&(o&&1>Math.abs(f)||!o&&c>f)?s=!0:!d&&(o&&1>Math.abs(p)||!o&&-c>p)&&(s=!0),s},B=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},K=function(e){return[e.deltaX,e.deltaY]},H=function(e){return e&&"current"in e?e.current:e},X=0,U=[];let Y=(i=function(e){var t=s.useRef([]),n=s.useRef([0,0]),r=s.useRef(),o=s.useState(X++)[0],a=s.useState(x)[0],i=s.useRef(e);s.useEffect(function(){i.current=e},[e]),s.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var t=(function(e,t,n){if(n||2==arguments.length)for(var r,o=0,a=t.length;o<a;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))})([e.lockRef.current],(e.shards||[]).map(H),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),t.forEach(function(e){return e.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var c=s.useCallback(function(e,t){if("touches"in e&&2===e.touches.length||"wheel"===e.type&&e.ctrlKey)return!i.current.allowPinchZoom;var o,a=B(e),c=n.current,u="deltaX"in e?e.deltaX:c[0]-a[0],l="deltaY"in e?e.deltaY:c[1]-a[1],s=e.target,d=Math.abs(u)>Math.abs(l)?"h":"v";if("touches"in e&&"h"===d&&"range"===s.type)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===s||p.contains(s)))return!1;var v=L(d,s);if(!v)return!0;if(v?o=d:(o="v"===d?"h":"v",v=L(d,s)),!v)return!1;if(!r.current&&"changedTouches"in e&&(u||l)&&(r.current=o),!o)return!0;var m=r.current||o;return z(m,t,e,"h"===m?u:l,!0)},[]),u=s.useCallback(function(e){if(U.length&&U[U.length-1]===a){var n="deltaY"in e?K(e):B(e),r=t.current.filter(function(t){var r;return t.name===e.type&&(t.target===e.target||e.target===t.shadowParent)&&(r=t.delta,r[0]===n[0]&&r[1]===n[1])})[0];if(r&&r.should){e.cancelable&&e.preventDefault();return}if(!r){var o=(i.current.shards||[]).map(H).filter(Boolean).filter(function(t){return t.contains(e.target)});(o.length>0?c(e,o[0]):!i.current.noIsolation)&&e.cancelable&&e.preventDefault()}}},[]),l=s.useCallback(function(e,n,r,o){var a={name:e,delta:n,target:r,should:o,shadowParent:function(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),d=s.useCallback(function(e){n.current=B(e),r.current=void 0},[]),f=s.useCallback(function(t){l(t.type,K(t),t.target,c(t,e.lockRef.current))},[]),p=s.useCallback(function(t){l(t.type,B(t),t.target,c(t,e.lockRef.current))},[]);s.useEffect(function(){return U.push(a),e.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:p}),document.addEventListener("wheel",u,F),document.addEventListener("touchmove",u,F),document.addEventListener("touchstart",d,F),function(){U=U.filter(function(e){return e!==a}),document.removeEventListener("wheel",u,F),document.removeEventListener("touchmove",u,F),document.removeEventListener("touchstart",d,F)}},[]);var v=e.removeScrollBar,m=e.inert;return s.createElement(s.Fragment,null,m?s.createElement(a,{styles:"\n .block-interactivity-".concat(o," {pointer-events: none;}\n .allow-interactivity-").concat(o," {pointer-events: all;}\n")}):null,v?s.createElement(P,{noRelative:e.noRelative,gapMode:e.gapMode}):null)},h.useMedium(i),b);var Z=s.forwardRef(function(e,t){return s.createElement(y,u({},e,{ref:t,sideCar:Y}))});Z.classNames=y.classNames,e.s(["RemoveScroll",0,Z],985369)},186312,e=>{"use strict";var t=new WeakMap,n=new WeakMap,r={},o=0,a=function(e){return e&&(e.host||a(e.parentNode))},i=function(e,i,c,u){var l=(Array.isArray(e)?e:[e]).map(function(e){if(i.contains(e))return e;var t=a(e);return t&&i.contains(t)?t:(console.error("aria-hidden",e,"in not contained inside",i,". Doing nothing"),null)}).filter(function(e){return!!e});r[c]||(r[c]=new WeakMap);var s=r[c],d=[],f=new Set,p=new Set(l),v=function(e){!e||f.has(e)||(f.add(e),v(e.parentNode))};l.forEach(v);var m=function(e){!e||p.has(e)||Array.prototype.forEach.call(e.children,function(e){if(f.has(e))m(e);else try{var r=e.getAttribute(u),o=null!==r&&"false"!==r,a=(t.get(e)||0)+1,i=(s.get(e)||0)+1;t.set(e,a),s.set(e,i),d.push(e),1===a&&o&&n.set(e,!0),1===i&&e.setAttribute(c,"true"),o||e.setAttribute(u,"true")}catch(t){console.error("aria-hidden: cannot operate on ",e,t)}})};return m(i),f.clear(),o++,function(){d.forEach(function(e){var r=t.get(e)-1,o=s.get(e)-1;t.set(e,r),s.set(e,o),r||(n.has(e)||e.removeAttribute(u),n.delete(e)),o||e.removeAttribute(c)}),--o||(t=new WeakMap,t=new WeakMap,n=new WeakMap,r={})}},c=function(e,t,n){void 0===n&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=t||("u"<typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live], script"))),i(r,o,n,"aria-hidden")):function(){return null}};e.s(["hideOthers",()=>c])},853138,e=>{"use strict";let t=(0,e.i(456420).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",()=>t],853138)},263676,e=>{"use strict";let t=(0,e.i(456420).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);e.s(["X",()=>t],263676)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,860958,e=>{"use strict";function t(e){e.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/}}t.displayName="clike",t.aliases=[],e.s(["default",()=>t])},453687,e=>{"use strict";function t(e){e.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},e.languages.markup.tag.inside["attr-value"].inside.entity=e.languages.markup.entity,e.languages.markup.doctype.inside["internal-subset"].inside=e.languages.markup,e.hooks.add("wrap",function(e){"entity"===e.type&&(e.attributes.title=e.content.value.replace(/&amp;/,"&"))}),Object.defineProperty(e.languages.markup.tag,"addInlined",{value:function(t,n){var r={};r["language-"+n]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:e.languages[n]},r.cdata=/^<!\[CDATA\[|\]\]>$/i;var a={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:r}};a["language-"+n]={pattern:/[\s\S]+/,inside:e.languages[n]};var o={};o[t]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return t}),"i"),lookbehind:!0,greedy:!0,inside:a},e.languages.insertBefore("markup","cdata",o)}}),Object.defineProperty(e.languages.markup.tag,"addAttribute",{value:function(t,n){e.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+t+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[n,"language-"+n],inside:e.languages[n]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),e.languages.html=e.languages.markup,e.languages.mathml=e.languages.markup,e.languages.svg=e.languages.markup,e.languages.xml=e.languages.extend("markup",{}),e.languages.ssml=e.languages.xml,e.languages.atom=e.languages.xml,e.languages.rss=e.languages.xml}t.displayName="markup",t.aliases=["atom","html","mathml","rss","ssml","svg","xml"],e.s(["default",()=>t])},352316,e=>{"use strict";function t(e){var t,n;t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/,e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+t.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css,(n=e.languages.markup)&&(n.tag.addInlined("style","css"),n.tag.addAttribute("style","css"))}t.displayName="css",t.aliases=[],e.s(["default",()=>t])},716327,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>t],716327)},867927,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],867927)},643957,e=>{"use strict";let t=(0,e.i(456420).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",()=>t])},519455,225913,e=>{"use strict";var t=e.i(843476),n=e.i(991918),r=e.i(207670);let a=e=>"boolean"==typeof e?`${e}`:0===e?"0":e,o=r.clsx,i=(e,t)=>n=>{var r;if((null==t?void 0:t.variants)==null)return o(e,null==n?void 0:n.class,null==n?void 0:n.className);let{variants:i,defaultVariants:s}=t,l=Object.keys(i).map(e=>{let t=null==n?void 0:n[e],r=null==s?void 0:s[e];if(null===t)return null;let o=a(t)||a(r);return i[e][o]}),u=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return void 0===r||(e[n]=r),e},{});return o(e,l,null==t||null==(r=t.compoundVariants)?void 0:r.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...s,...u}[t]):({...s,...u})[t]===n})?[...e,n,r]:e},[]),null==n?void 0:n.class,null==n?void 0:n.className)};e.s(["cva",0,i],225913);var s=e.i(975157);let l=i("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-[color,box-shadow] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_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",outline:"border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline",brand:"bg-[#2F6868] hover:bg-[#2F6868]/90 border-[#2F6868] text-white"},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 u({className:e,variant:r,size:a,asChild:o=!1,...i}){let u=o?n.Slot:"button";return(0,t.jsx)(u,{"data-slot":"button",className:(0,s.cn)(l({variant:r,size:a,className:e})),...i})}e.s(["Button",()=>u],519455)},689664,e=>{"use strict";var t=e.i(643957);e.s(["Check",()=>t.default])},765491,e=>{"use strict";let t;var n=e.i(271645),r=e.i(820783),a=e.i(248425),o=e.i(30207),i=e.i(843476),s="focusScope.autoFocusOnMount",l="focusScope.autoFocusOnUnmount",u={bubbles:!1,cancelable:!0},c=n.forwardRef((e,t)=>{let{loop:c=!1,trapped:g=!1,onMountAutoFocus:v,onUnmountAutoFocus:h,...b}=e,[y,x]=n.useState(null),w=(0,o.useCallbackRef)(v),k=(0,o.useCallbackRef)(h),E=n.useRef(null),C=(0,r.useComposedRefs)(t,x),j=n.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;n.useEffect(()=>{if(g){let e=function(e){if(j.paused||!y)return;let t=e.target;y.contains(t)?E.current=t:p(E.current,{select:!0})},t=function(e){if(j.paused||!y)return;let t=e.relatedTarget;null!==t&&(y.contains(t)||p(E.current,{select:!0}))};document.addEventListener("focusin",e),document.addEventListener("focusout",t);let n=new MutationObserver(function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&p(y)});return y&&n.observe(y,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",e),document.removeEventListener("focusout",t),n.disconnect()}}},[g,y,j.paused]),n.useEffect(()=>{if(y){m.add(j);let e=document.activeElement;if(!y.contains(e)){let t=new CustomEvent(s,u);y.addEventListener(s,w),y.dispatchEvent(t),t.defaultPrevented||(function(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(p(r,{select:t}),document.activeElement!==n)return}(d(y).filter(e=>"A"!==e.tagName),{select:!0}),document.activeElement===e&&p(y))}return()=>{y.removeEventListener(s,w),setTimeout(()=>{let t=new CustomEvent(l,u);y.addEventListener(l,k),y.dispatchEvent(t),t.defaultPrevented||p(e??document.body,{select:!0}),y.removeEventListener(l,k),m.remove(j)},0)}}},[y,w,k,j]);let N=n.useCallback(e=>{if(!c&&!g||j.paused)return;let t="Tab"===e.key&&!e.altKey&&!e.ctrlKey&&!e.metaKey,n=document.activeElement;if(t&&n){var r;let t,a=e.currentTarget,[o,i]=[f(t=d(r=a),r),f(t.reverse(),r)];o&&i?e.shiftKey||n!==i?e.shiftKey&&n===o&&(e.preventDefault(),c&&p(i,{select:!0})):(e.preventDefault(),c&&p(o,{select:!0})):n===a&&e.preventDefault()}},[c,g,j.paused]);return(0,i.jsx)(a.Primitive.div,{tabIndex:-1,...b,ref:C,onKeyDown:N})});function d(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t="INPUT"===e.tagName&&"hidden"===e.type;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function f(e,t){for(let n of e)if(!function(e,{upTo:t}){if("hidden"===getComputedStyle(e).visibility)return!0;for(;e&&(void 0===t||e!==t);){if("none"===getComputedStyle(e).display)return!0;e=e.parentElement}return!1}(n,{upTo:t}))return n}function p(e,{select:t=!1}={}){if(e&&e.focus){var n;let r=document.activeElement;e.focus({preventScroll:!0}),e!==r&&(n=e)instanceof HTMLInputElement&&"select"in n&&t&&e.select()}}c.displayName="FocusScope";var m=(t=[],{add(e){let n=t[0];e!==n&&n?.pause(),(t=g(t,e)).unshift(e)},remove(e){t=g(t,e),t[0]?.resume()}});function g(e,t){let n=[...e],r=n.indexOf(t);return -1!==r&&n.splice(r,1),n}e.s(["FocusScope",()=>c])},303536,e=>{"use strict";var t=e.i(271645),n=0,r=null;function a(){t.useEffect(()=>{r||(r={start:o(),end:o()});let{start:e,end:t}=r;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),n++,()=>{1===n&&(r?.start.remove(),r?.end.remove(),r=null),n=Math.max(0,n-1)}},[])}function o(){let e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}e.s(["useFocusGuards",()=>a])},985369,e=>{"use strict";var t,n,r,a,o,i,s,l=function(){return(l=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var a in t=arguments[n])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}).apply(this,arguments)};function u(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&0>t.indexOf(r)&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var a=0,r=Object.getOwnPropertySymbols(e);a<r.length;a++)0>t.indexOf(r[a])&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(n[r[a]]=e[r[a]]);return n}var c=("function"==typeof SuppressedError&&SuppressedError,e.i(271645)),d="right-scroll-bar-position",f="width-before-scroll-bar";function p(e,t){return"function"==typeof e?e(t):e&&(e.current=t),e}var m="u">typeof window?c.useLayoutEffect:c.useEffect,g=new WeakMap,v=(void 0===t&&(t={}),(void 0===n&&(n=function(e){return e}),r=[],a=!1,o={read:function(){if(a)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:null},useMedium:function(e){var t=n(e,a);return r.push(t),function(){r=r.filter(function(e){return e!==t})}},assignSyncMedium:function(e){for(a=!0;r.length;){var t=r;r=[],t.forEach(e)}r={push:function(t){return e(t)},filter:function(){return r}}},assignMedium:function(e){a=!0;var t=[];if(r.length){var n=r;r=[],n.forEach(e),t=r}var o=function(){var n=t;t=[],n.forEach(e)},i=function(){return Promise.resolve().then(o)};i(),r={push:function(e){t.push(e),i()},filter:function(e){return t=t.filter(e),r}}}}).options=l({async:!0,ssr:!1},t),o),h=function(){},b=c.forwardRef(function(e,t){var n,r,a,o,i=c.useRef(null),s=c.useState({onScrollCapture:h,onWheelCapture:h,onTouchMoveCapture:h}),d=s[0],f=s[1],b=e.forwardProps,y=e.children,x=e.className,w=e.removeScrollBar,k=e.enabled,E=e.shards,C=e.sideCar,j=e.noRelative,N=e.noIsolation,S=e.inert,R=e.allowPinchZoom,A=e.as,M=e.gapMode,P=u(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),T=(n=[i,t],r=function(e){return n.forEach(function(t){return p(t,e)})},(a=(0,c.useState)(function(){return{value:null,callback:r,facade:{get current(){return a.value},set current(value){var e=a.value;e!==value&&(a.value=value,a.callback(value,e))}}}})[0]).callback=r,o=a.facade,m(function(){var e=g.get(o);if(e){var t=new Set(e),r=new Set(n),a=o.current;t.forEach(function(e){r.has(e)||p(e,null)}),r.forEach(function(e){t.has(e)||p(e,a)})}g.set(o,n)},[n]),o),D=l(l({},P),d);return c.createElement(c.Fragment,null,k&&c.createElement(C,{sideCar:v,removeScrollBar:w,shards:E,noRelative:j,noIsolation:N,inert:S,setCallbacks:f,allowPinchZoom:!!R,lockRef:i,gapMode:M}),b?c.cloneElement(c.Children.only(y),l(l({},D),{ref:T})):c.createElement(void 0===A?"div":A,l({},D,{className:x,ref:T}),y))});b.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},b.classNames={fullWidth:f,zeroRight:d};var y=function(e){var t=e.sideCar,n=u(e,["sideCar"]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error("Sidecar medium not found");return c.createElement(r,l({},n))};y.isSideCarExport=!0;var x=function(){var e=0,t=null;return{add:function(n){if(0==e&&(t=function(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=s||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return t&&e.setAttribute("nonce",t),e}())){var r,a;(r=t).styleSheet?r.styleSheet.cssText=n:r.appendChild(document.createTextNode(n)),a=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(a)}e++},remove:function(){--e||!t||(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},w=function(){var e=x();return function(t,n){c.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},k=function(){var e=w();return function(t){return e(t.styles,t.dynamic),null}},E={left:0,top:0,right:0,gap:0},C=function(e){return parseInt(e||"",10)||0},j=function(e){var t=window.getComputedStyle(document.body),n=t["padding"===e?"paddingLeft":"marginLeft"],r=t["padding"===e?"paddingTop":"marginTop"],a=t["padding"===e?"paddingRight":"marginRight"];return[C(n),C(r),C(a)]},N=function(e){if(void 0===e&&(e="margin"),"u"<typeof window)return E;var t=j(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},S=k(),R="data-scroll-locked",A=function(e,t,n,r){var a=e.left,o=e.top,i=e.right,s=e.gap;return void 0===n&&(n="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(r,";\n padding-right: ").concat(s,"px ").concat(r,";\n }\n body[").concat(R,"] {\n overflow: hidden ").concat(r,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(r,";"),"margin"===n&&"\n padding-left: ".concat(a,"px;\n padding-top: ").concat(o,"px;\n padding-right: ").concat(i,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(s,"px ").concat(r,";\n "),"padding"===n&&"padding-right: ".concat(s,"px ").concat(r,";")].filter(Boolean).join(""),"\n }\n \n .").concat(d," {\n right: ").concat(s,"px ").concat(r,";\n }\n \n .").concat(f," {\n margin-right: ").concat(s,"px ").concat(r,";\n }\n \n .").concat(d," .").concat(d," {\n right: 0 ").concat(r,";\n }\n \n .").concat(f," .").concat(f," {\n margin-right: 0 ").concat(r,";\n }\n \n body[").concat(R,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(s,"px;\n }\n")},M=function(){var e=parseInt(document.body.getAttribute(R)||"0",10);return isFinite(e)?e:0},P=function(){c.useEffect(function(){return document.body.setAttribute(R,(M()+1).toString()),function(){var e=M()-1;e<=0?document.body.removeAttribute(R):document.body.setAttribute(R,e.toString())}},[])},T=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,a=void 0===r?"margin":r;P();var o=c.useMemo(function(){return N(a)},[a]);return c.createElement(S,{styles:A(o,!t,a,n?"":"!important")})},D=!1;if("u">typeof window)try{var _=Object.defineProperty({},"passive",{get:function(){return D=!0,!0}});window.addEventListener("test",_,_),window.removeEventListener("test",_,_)}catch(e){D=!1}var F=!!D&&{passive:!1},O=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return"hidden"!==n[t]&&(n.overflowY!==n.overflowX||"TEXTAREA"===e.tagName||"visible"!==n[t])},L=function(e,t){var n=t.ownerDocument,r=t;do{if("u">typeof ShadowRoot&&r instanceof ShadowRoot&&(r=r.host),z(e,r)){var a=I(e,r);if(a[1]>a[2])return!0}r=r.parentNode}while(r&&r!==n.body)return!1},z=function(e,t){return"v"===e?O(t,"overflowY"):O(t,"overflowX")},I=function(e,t){return"v"===e?[t.scrollTop,t.scrollHeight,t.clientHeight]:[t.scrollLeft,t.scrollWidth,t.clientWidth]},B=function(e,t,n,r,a){var o,i=(o=window.getComputedStyle(t).direction,"h"===e&&"rtl"===o?-1:1),s=i*r,l=n.target,u=t.contains(l),c=!1,d=s>0,f=0,p=0;do{if(!l)break;var m=I(e,l),g=m[0],v=m[1]-m[2]-i*g;(g||v)&&z(e,l)&&(f+=v,p+=g);var h=l.parentNode;l=h&&h.nodeType===Node.DOCUMENT_FRAGMENT_NODE?h.host:h}while(!u&&l!==document.body||u&&(t.contains(l)||t===l))return d&&(a&&1>Math.abs(f)||!a&&s>f)?c=!0:!d&&(a&&1>Math.abs(p)||!a&&-s>p)&&(c=!0),c},$=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},H=function(e){return[e.deltaX,e.deltaY]},W=function(e){return e&&"current"in e?e.current:e},q=0,K=[];let X=(i=function(e){var t=c.useRef([]),n=c.useRef([0,0]),r=c.useRef(),a=c.useState(q++)[0],o=c.useState(k)[0],i=c.useRef(e);c.useEffect(function(){i.current=e},[e]),c.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(a));var t=(function(e,t,n){if(n||2==arguments.length)for(var r,a=0,o=t.length;a<o;a++)!r&&a in t||(r||(r=Array.prototype.slice.call(t,0,a)),r[a]=t[a]);return e.concat(r||Array.prototype.slice.call(t))})([e.lockRef.current],(e.shards||[]).map(W),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add("allow-interactivity-".concat(a))}),function(){document.body.classList.remove("block-interactivity-".concat(a)),t.forEach(function(e){return e.classList.remove("allow-interactivity-".concat(a))})}}},[e.inert,e.lockRef.current,e.shards]);var s=c.useCallback(function(e,t){if("touches"in e&&2===e.touches.length||"wheel"===e.type&&e.ctrlKey)return!i.current.allowPinchZoom;var a,o=$(e),s=n.current,l="deltaX"in e?e.deltaX:s[0]-o[0],u="deltaY"in e?e.deltaY:s[1]-o[1],c=e.target,d=Math.abs(l)>Math.abs(u)?"h":"v";if("touches"in e&&"h"===d&&"range"===c.type)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===c||p.contains(c)))return!1;var m=L(d,c);if(!m)return!0;if(m?a=d:(a="v"===d?"h":"v",m=L(d,c)),!m)return!1;if(!r.current&&"changedTouches"in e&&(l||u)&&(r.current=a),!a)return!0;var g=r.current||a;return B(g,t,e,"h"===g?l:u,!0)},[]),l=c.useCallback(function(e){if(K.length&&K[K.length-1]===o){var n="deltaY"in e?H(e):$(e),r=t.current.filter(function(t){var r;return t.name===e.type&&(t.target===e.target||e.target===t.shadowParent)&&(r=t.delta,r[0]===n[0]&&r[1]===n[1])})[0];if(r&&r.should){e.cancelable&&e.preventDefault();return}if(!r){var a=(i.current.shards||[]).map(W).filter(Boolean).filter(function(t){return t.contains(e.target)});(a.length>0?s(e,a[0]):!i.current.noIsolation)&&e.cancelable&&e.preventDefault()}}},[]),u=c.useCallback(function(e,n,r,a){var o={name:e,delta:n,target:r,should:a,shadowParent:function(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}(r)};t.current.push(o),setTimeout(function(){t.current=t.current.filter(function(e){return e!==o})},1)},[]),d=c.useCallback(function(e){n.current=$(e),r.current=void 0},[]),f=c.useCallback(function(t){u(t.type,H(t),t.target,s(t,e.lockRef.current))},[]),p=c.useCallback(function(t){u(t.type,$(t),t.target,s(t,e.lockRef.current))},[]);c.useEffect(function(){return K.push(o),e.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:p}),document.addEventListener("wheel",l,F),document.addEventListener("touchmove",l,F),document.addEventListener("touchstart",d,F),function(){K=K.filter(function(e){return e!==o}),document.removeEventListener("wheel",l,F),document.removeEventListener("touchmove",l,F),document.removeEventListener("touchstart",d,F)}},[]);var m=e.removeScrollBar,g=e.inert;return c.createElement(c.Fragment,null,g?c.createElement(o,{styles:"\n .block-interactivity-".concat(a," {pointer-events: none;}\n .allow-interactivity-").concat(a," {pointer-events: all;}\n")}):null,m?c.createElement(T,{noRelative:e.noRelative,gapMode:e.gapMode}):null)},v.useMedium(i),y);var Y=c.forwardRef(function(e,t){return c.createElement(b,l({},e,{ref:t,sideCar:X}))});Y.classNames=b.classNames,e.s(["RemoveScroll",0,Y],985369)},186312,e=>{"use strict";var t=new WeakMap,n=new WeakMap,r={},a=0,o=function(e){return e&&(e.host||o(e.parentNode))},i=function(e,i,s,l){var u=(Array.isArray(e)?e:[e]).map(function(e){if(i.contains(e))return e;var t=o(e);return t&&i.contains(t)?t:(console.error("aria-hidden",e,"in not contained inside",i,". Doing nothing"),null)}).filter(function(e){return!!e});r[s]||(r[s]=new WeakMap);var c=r[s],d=[],f=new Set,p=new Set(u),m=function(e){!e||f.has(e)||(f.add(e),m(e.parentNode))};u.forEach(m);var g=function(e){!e||p.has(e)||Array.prototype.forEach.call(e.children,function(e){if(f.has(e))g(e);else try{var r=e.getAttribute(l),a=null!==r&&"false"!==r,o=(t.get(e)||0)+1,i=(c.get(e)||0)+1;t.set(e,o),c.set(e,i),d.push(e),1===o&&a&&n.set(e,!0),1===i&&e.setAttribute(s,"true"),a||e.setAttribute(l,"true")}catch(t){console.error("aria-hidden: cannot operate on ",e,t)}})};return g(i),f.clear(),a++,function(){d.forEach(function(e){var r=t.get(e)-1,a=c.get(e)-1;t.set(e,r),c.set(e,a),r||(n.has(e)||e.removeAttribute(l),n.delete(e)),a||e.removeAttribute(s)}),--a||(t=new WeakMap,t=new WeakMap,n=new WeakMap,r={})}},s=function(e,t,n){void 0===n&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),a=t||("u"<typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body);return a?(r.push.apply(r,Array.from(a.querySelectorAll("[aria-live], script"))),i(r,a,n,"aria-hidden")):function(){return null}};e.s(["hideOthers",()=>s])},853138,e=>{"use strict";let t=(0,e.i(456420).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",()=>t],853138)},263676,e=>{"use strict";let t=(0,e.i(456420).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);e.s(["X",()=>t],263676)},776639,e=>{"use strict";var t=e.i(843476),n=e.i(271645),r=e.i(981140),a=e.i(820783),o=e.i(30030),i=e.i(610772),s=e.i(369340),l=e.i(726330),u=e.i(765491),c=e.i(774606),d=e.i(296626),f=e.i(248425),p=e.i(303536),m=e.i(985369),g=e.i(186312),v=e.i(991918),h="Dialog",[b,y]=(0,o.createContextScope)(h),[x,w]=b(h),k=e=>{let{__scopeDialog:r,children:a,open:o,defaultOpen:l,onOpenChange:u,modal:c=!0}=e,d=n.useRef(null),f=n.useRef(null),[p,m]=(0,s.useControllableState)({prop:o,defaultProp:l??!1,onChange:u,caller:h});return(0,t.jsx)(x,{scope:r,triggerRef:d,contentRef:f,contentId:(0,i.useId)(),titleId:(0,i.useId)(),descriptionId:(0,i.useId)(),open:p,onOpenChange:m,onOpenToggle:n.useCallback(()=>m(e=>!e),[m]),modal:c,children:a})};k.displayName=h;var E="DialogTrigger";n.forwardRef((e,n)=>{let{__scopeDialog:o,...i}=e,s=w(E,o),l=(0,a.useComposedRefs)(n,s.triggerRef);return(0,t.jsx)(f.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":s.open,"aria-controls":s.open?s.contentId:void 0,"data-state":W(s.open),...i,ref:l,onClick:(0,r.composeEventHandlers)(e.onClick,s.onOpenToggle)})}).displayName=E;var C="DialogPortal",[j,N]=b(C,{forceMount:void 0}),S=e=>{let{__scopeDialog:r,forceMount:a,children:o,container:i}=e,s=w(C,r);return(0,t.jsx)(j,{scope:r,forceMount:a,children:n.Children.map(o,e=>(0,t.jsx)(d.Presence,{present:a||s.open,children:(0,t.jsx)(c.Portal,{asChild:!0,container:i,children:e})}))})};S.displayName=C;var R="DialogOverlay",A=n.forwardRef((e,n)=>{let r=N(R,e.__scopeDialog),{forceMount:a=r.forceMount,...o}=e,i=w(R,e.__scopeDialog);return i.modal?(0,t.jsx)(d.Presence,{present:a||i.open,children:(0,t.jsx)(P,{...o,ref:n})}):null});A.displayName=R;var M=(0,v.createSlot)("DialogOverlay.RemoveScroll"),P=n.forwardRef((e,n)=>{let{__scopeDialog:r,...o}=e,i=w(R,r),s=(0,l.useDismissableLayerSurface)(),u=(0,a.useComposedRefs)(n,s);return(0,t.jsx)(m.RemoveScroll,{as:M,allowPinchZoom:!0,shards:[i.contentRef],children:(0,t.jsx)(f.Primitive.div,{"data-state":W(i.open),...o,ref:u,style:{pointerEvents:"auto",...o.style}})})}),T="DialogContent",D=n.forwardRef((e,n)=>{let r=N(T,e.__scopeDialog),{forceMount:a=r.forceMount,...o}=e,i=w(T,e.__scopeDialog);return(0,t.jsx)(d.Presence,{present:a||i.open,children:i.modal?(0,t.jsx)(_,{...o,ref:n}):(0,t.jsx)(F,{...o,ref:n})})});D.displayName=T;var _=n.forwardRef((e,o)=>{let i=w(T,e.__scopeDialog),s=n.useRef(null),l=(0,a.useComposedRefs)(o,i.contentRef,s);return n.useEffect(()=>{let e=s.current;if(e)return(0,g.hideOthers)(e)},[]),(0,t.jsx)(O,{...e,ref:l,trapFocus:i.open,disableOutsidePointerEvents:i.open,onCloseAutoFocus:(0,r.composeEventHandlers)(e.onCloseAutoFocus,e=>{e.preventDefault(),i.triggerRef.current?.focus()}),onPointerDownOutside:(0,r.composeEventHandlers)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=0===t.button&&!0===t.ctrlKey;(2===t.button||n)&&e.preventDefault()}),onFocusOutside:(0,r.composeEventHandlers)(e.onFocusOutside,e=>e.preventDefault())})}),F=n.forwardRef((e,r)=>{let a=w(T,e.__scopeDialog),o=n.useRef(!1),i=n.useRef(!1);return(0,t.jsx)(O,{...e,ref:r,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(o.current||a.triggerRef.current?.focus(),t.preventDefault()),o.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(o.current=!0,"pointerdown"===t.detail.originalEvent.type&&(i.current=!0));let n=t.target;a.triggerRef.current?.contains(n)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&i.current&&t.preventDefault()}})}),O=n.forwardRef((e,n)=>{let{__scopeDialog:r,trapFocus:a,onOpenAutoFocus:o,onCloseAutoFocus:i,...s}=e,c=w(T,r);return(0,p.useFocusGuards)(),(0,t.jsx)(t.Fragment,{children:(0,t.jsx)(u.FocusScope,{asChild:!0,loop:!0,trapped:a,onMountAutoFocus:o,onUnmountAutoFocus:i,children:(0,t.jsx)(l.DismissableLayer,{role:"dialog",id:c.contentId,"aria-describedby":c.descriptionId,"aria-labelledby":c.titleId,"data-state":W(c.open),...s,ref:n,deferPointerDownOutside:!0,onDismiss:()=>c.onOpenChange(!1)})})})}),L="DialogTitle",z=n.forwardRef((e,n)=>{let{__scopeDialog:r,...a}=e,o=w(L,r);return(0,t.jsx)(f.Primitive.h2,{id:o.titleId,...a,ref:n})});z.displayName=L;var I="DialogDescription",B=n.forwardRef((e,n)=>{let{__scopeDialog:r,...a}=e,o=w(I,r);return(0,t.jsx)(f.Primitive.p,{id:o.descriptionId,...a,ref:n})});B.displayName=I;var $="DialogClose",H=n.forwardRef((e,n)=>{let{__scopeDialog:a,...o}=e,i=w($,a);return(0,t.jsx)(f.Primitive.button,{type:"button",...o,ref:n,onClick:(0,r.composeEventHandlers)(e.onClick,()=>i.onOpenChange(!1))})});function W(e){return e?"open":"closed"}H.displayName=$;var q=e.i(263676),K=e.i(975157);function X({className:e,...n}){return(0,t.jsx)(A,{"data-slot":"dialog-overlay",className:(0,K.cn)("fixed inset-0 z-50 bg-black/50 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...n})}function Y({className:e,children:n,...r}){return(0,t.jsxs)(S,{children:[(0,t.jsx)(X,{}),(0,t.jsxs)(D,{"data-slot":"dialog-content",className:(0,K.cn)("fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 rounded-lg border border-card-border bg-card p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95",e),...r,children:[n,(0,t.jsx)(H,{className:"absolute right-4 top-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring","aria-label":"Close",children:(0,t.jsx)(q.X,{className:"size-4"})})]})]})}function U({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"dialog-header",className:(0,K.cn)("flex flex-col gap-1.5 text-left",e),...n})}function Z({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"dialog-footer",className:(0,K.cn)("flex flex-row justify-end gap-2 pt-2",e),...n})}function G({className:e,...n}){return(0,t.jsx)(z,{"data-slot":"dialog-title",className:(0,K.cn)("text-base font-semibold text-foreground",e),...n})}function V({className:e,...n}){return(0,t.jsx)(B,{"data-slot":"dialog-description",className:(0,K.cn)("text-sm text-foreground-secondary",e),...n})}e.s(["Dialog",()=>k,"DialogContent",()=>Y,"DialogDescription",()=>V,"DialogFooter",()=>Z,"DialogHeader",()=>U,"DialogTitle",()=>G],776639)},746798,e=>{"use strict";var t=e.i(843476),n=e.i(186336),r=e.i(975157);function a({delayDuration:e=0,...r}){return(0,t.jsx)(n.Provider,{"data-slot":"tooltip-provider",delayDuration:e,...r})}function o({...e}){return(0,t.jsx)(a,{children:(0,t.jsx)(n.Root,{"data-slot":"tooltip",...e})})}function i({...e}){return(0,t.jsx)(n.Trigger,{"data-slot":"tooltip-trigger",...e})}function s({className:e,sideOffset:a=0,children:o,...i}){return(0,t.jsx)(n.Portal,{children:(0,t.jsxs)(n.Content,{"data-slot":"tooltip-content",sideOffset:a,className:(0,r.cn)("bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit rounded-md px-3 py-1.5 text-xs text-balance",e),...i,children:[o,(0,t.jsx)(n.Arrow,{className:"bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]"})]})})}e.s(["Tooltip",()=>o,"TooltipContent",()=>s,"TooltipProvider",()=>a,"TooltipTrigger",()=>i])},583967,e=>{"use strict";let t=(0,e.i(456420).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["XCircle",()=>t],583967)},632781,e=>{"use strict";let t=(0,e.i(456420).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["Loader2",()=>t],632781)},616933,e=>{"use strict";let t=(0,e.i(456420).default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["default",()=>t])},741120,e=>{"use strict";let t=(0,e.i(456420).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",()=>t],741120)},77071,e=>{"use strict";let t=(0,e.i(456420).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",()=>t],77071)},847211,e=>{"use strict";let t=(0,e.i(456420).default)("ban",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}]]);e.s(["Ban",()=>t],847211)},551757,e=>{"use strict";var t=e.i(616933);e.s(["CheckCircle2",()=>t.default])},474544,e=>{"use strict";let t=(0,e.i(456420).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",()=>t],474544)},51907,e=>{"use strict";var t=e.i(843476),n=e.i(853138),r=e.i(847211),a=e.i(551757),o=e.i(474544),i=e.i(632781),s=e.i(583967),l=e.i(975157);let u={running:{subtle:"bg-blue-50 text-blue-700 border-blue-200 dark:bg-blue-500/10 dark:text-blue-300 dark:border-blue-400/30",outline:"bg-transparent text-blue-700 border-blue-300 dark:text-blue-300 dark:border-blue-400/40",iconClass:"animate-spin"},success:{subtle:"bg-success-subtle text-success border-success-border",outline:"bg-transparent text-success border-success/40"},warning:{subtle:"bg-warning-subtle text-warning border-warning-border",outline:"bg-transparent text-warning border-warning/40"},error:{subtle:"bg-error-subtle text-error border-error-border",outline:"bg-transparent text-error border-error/40"},cancelled:{subtle:"bg-background-secondary text-foreground-muted border-border",outline:"bg-transparent text-foreground-muted border-border-dark"},pending:{subtle:"bg-background-secondary text-foreground-muted border-border",outline:"bg-transparent text-foreground-muted border-border"}},c={running:i.Loader2,success:a.CheckCircle2,warning:n.AlertTriangle,error:s.XCircle,cancelled:r.Ban,pending:o.Clock};function d({status:e,label:n,variant:r="subtle",size:a="sm",className:o,...i}){let s=c[e],d=u[e];return(0,t.jsxs)("span",{role:"status",className:(0,l.cn)("inline-flex items-center rounded-sm border font-medium whitespace-nowrap","sm"===a?"h-5 px-1.5 text-xs gap-1":"h-6 px-2 text-sm gap-1.5",d[r],o),...i,children:[(0,t.jsx)(s,{className:(0,l.cn)("size-3.5 shrink-0",d.iconClass),"aria-hidden":!0}),(0,t.jsx)("span",{children:n})]})}e.s(["StatusBadge",()=>d])},604139,e=>{"use strict";let t=(0,e.i(456420).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>t],604139)},882303,e=>{"use strict";let t=(0,e.i(456420).default)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]);e.s(["Users",()=>t],882303)},711241,395925,e=>{"use strict";var t=e.i(456420);let n=(0,t.default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",()=>n],711241);let r=(0,t.default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);e.s(["RotateCcw",()=>r],395925)},793479,e=>{"use strict";var t=e.i(843476),n=e.i(975157);function r({className:e,type:r,...a}){return(0,t.jsx)("input",{type:r,"data-slot":"input",className:(0,n.cn)("border-input file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...a})}e.s(["Input",()=>r])},708511,570059,e=>{"use strict";var t=e.i(843476),n=e.i(975157);let r={default:"w-full px-6 py-6",wide:"w-full px-8 py-6",canvas:"w-full p-0"};function a({variant:e="default",className:a,children:o}){return(0,t.jsx)("div",{className:(0,n.cn)("flex-1 flex flex-col min-h-0 overflow-y-auto",r[e],a),children:o})}function o({title:e,description:r,actions:a,className:o}){return(0,t.jsxs)("div",{className:(0,n.cn)("flex items-start justify-between gap-4 mb-4",o),children:[(0,t.jsxs)("div",{className:"min-w-0 space-y-1",children:[(0,t.jsx)("h1",{className:"text-xl font-semibold text-foreground truncate",children:e}),r&&(0,t.jsx)("p",{className:"text-sm text-foreground-muted",children:r})]}),a&&(0,t.jsx)("div",{className:"flex items-center gap-2 shrink-0",children:a})]})}function i({className:e,children:r}){return(0,t.jsx)("div",{className:(0,n.cn)("flex flex-wrap items-center gap-2 mb-3",e),children:r})}function s({className:e,children:r}){return(0,t.jsx)("div",{className:(0,n.cn)("flex-1 min-h-0",e),children:r})}function l({className:e,children:r}){return(0,t.jsx)("div",{className:(0,n.cn)("flex items-center justify-between gap-3 mt-4 pt-3 border-t border-border",e),children:r})}e.s(["PageContainer",()=>a,"PageContent",()=>s,"PageFooter",()=>l,"PageHeader",()=>o,"PageToolbar",()=>i],708511);let u=(0,e.i(456420).default)("inbox",[["polyline",{points:"22 12 16 12 14 15 10 15 8 12 2 12",key:"o97t9d"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}]]);function c({icon:e=u,title:r,description:a,action:o,className:i}){return(0,t.jsxs)("div",{className:(0,n.cn)("flex flex-col items-center justify-center gap-3 text-center py-12 px-6","text-foreground-muted",i),children:[(0,t.jsx)("div",{className:"size-10 rounded-full bg-background-secondary text-foreground-muted flex items-center justify-center",children:(0,t.jsx)(e,{className:"size-5","aria-hidden":!0})}),(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("p",{className:"text-base font-semibold text-foreground",children:r}),a&&(0,t.jsx)("p",{className:"text-sm text-foreground-muted max-w-md",children:a})]}),o&&(0,t.jsx)("div",{className:"pt-1",children:o})]})}e.s(["EmptyState",()=>c],570059)},762368,e=>{"use strict";let t=(0,e.i(456420).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);e.s(["Download",()=>t],762368)},642726,e=>{"use strict";let t=["evaluator","checker","judge","locator","assessor","grader","评估器"],n=["你是「轨迹评估器」的总协调者","你是「Agent 任务完成度」评估器","trace-quality-evaluator","task-completion-evaluator","reference_trajectory","actual_trace","key_point_findings","key-points-checker","detect_redundancy_and_loops","已写入 final_result.json"],r=new Set(["trace-quality-evaluator","task-completion-evaluator"]);function a(e){let n=String(e||"").trim().toLowerCase();return!!n&&(!!r.has(n)||t.some(e=>n.includes(e)))}function o(e){return!!e&&(a(e.name)||a(e.parentAgent))}function i(e){return!!e&&(!![e.agentName,e.agent,...Array.isArray(e.agents)?e.agents:[]].some(e=>a(e))||!!e&&[e.query,e.final_result,e.label].some(e=>{let t=String(e||"");return!!t&&n.some(e=>t.includes(e))}))}function s(e){return e?String([e.agentName,e.agent,...Array.isArray(e.agents)?e.agents:[]].find(e=>{let t=String(e||"").trim();return t&&!a(t)})||"").trim():""}e.s(["getPrimaryExecutionAgentName",()=>s,"isEvaluatorAgent",()=>o,"isEvaluatorTraceRecord",()=>i])},24071,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);e.s(["ChevronLeft",()=>t],24071)},658512,e=>{"use strict";var t=e.i(843476),n=e.i(24071),r=e.i(867927),a=e.i(519455),o=e.i(967489),i=e.i(975157);function s({page:e,pageSize:s,total:l,onPageChange:u,onPageSizeChange:c,pageSizes:d=[20,50,100],summary:f,pageSizeLabel:p=e=>`${e} / page`,className:m}){let g=Math.max(1,Math.ceil(l/s)),v=0===l?0:(e-1)*s+1,h=Math.min(e*s,l),b=g<=7?Array.from({length:g},(e,t)=>t+1):e<=3?[1,2,3,4,"ellipsis",g]:e>=g-2?[1,"ellipsis",g-3,g-2,g-1,g]:[1,"ellipsis",e-1,e,e+1,"ellipsis",g];return(0,t.jsxs)("div",{className:(0,i.cn)("flex items-center justify-between gap-3",m),children:[(0,t.jsx)("p",{className:"text-xs text-foreground-muted",children:f?f(v,h,l):`${v}–${h} of ${l}`}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)(a.Button,{variant:"outline",size:"sm",onClick:()=>u(e-1),disabled:e<=1,className:"size-8 p-0","aria-label":"Previous page",children:(0,t.jsx)(n.ChevronLeft,{className:"size-4"})}),b.map((n,r)=>"ellipsis"===n?(0,t.jsx)("span",{className:"px-1 text-foreground-muted text-xs",children:"…"},`e-${r}`):(0,t.jsx)(a.Button,{variant:n===e?"default":"outline",size:"sm",onClick:()=>u(n),className:"size-8 p-0 text-xs tabular-nums","aria-current":n===e?"page":void 0,children:n},`p-${n}`)),(0,t.jsx)(a.Button,{variant:"outline",size:"sm",onClick:()=>u(e+1),disabled:e>=g,className:"size-8 p-0","aria-label":"Next page",children:(0,t.jsx)(r.ChevronRight,{className:"size-4"})}),c&&(0,t.jsx)(o.Select,{className:"ml-2",value:String(s),onChange:e=>c(Number(e)),options:d.map(e=>({value:String(e),label:p(e)}))})]})]})}e.s(["Pagination",()=>s])}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,628867,e=>{"use strict";var o=e.i(843476),t=e.i(540568),r=e.i(271645),l=e.i(77071),i=e.i(566595),a=e.i(456420);let s=(0,a.default)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]);var n=e.i(61876),d=e.i(515281),c=e.i(573474),p=e.i(689664),g=e.i(810818),u=e.i(285595);let h=(0,a.default)("badge-check",[["path",{d:"M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z",key:"3c2336"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]),m=(0,a.default)("star",[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]]),f=(0,a.default)("heart-pulse",[["path",{d:"M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5",key:"mvr1a0"}],["path",{d:"M3.22 13H9.5l.5-1 2 4.5 2-7 1.5 3.5h5.27",key:"auskq0"}]]);var x=e.i(856423),y=e.i(482022),b=e.i(741120),v=e.i(632781),j=e.i(583967),k=e.i(183752),S=e.i(927643),w=e.i(726526),z=e.i(347101);let C=[{id:"openai",label:"OpenAI",category:"frontier",baseUrl:"https://api.openai.com/v1",defaultModel:"gpt-4o-mini",suggestedModels:["gpt-5","gpt-5-mini","gpt-4o","gpt-4o-mini","gpt-4.1","o3","o3-mini","o4-mini"],docsUrl:"https://platform.openai.com/docs/models",oaiCompat:!0,initials:"OA",logoSlug:"openai"},{id:"anthropic",label:"Anthropic",category:"frontier",baseUrl:"https://api.anthropic.com/v1",defaultModel:"claude-sonnet-4-6",suggestedModels:["claude-opus-4-7","claude-sonnet-4-6","claude-haiku-4-5","claude-3-5-sonnet-latest"],docsUrl:"https://docs.anthropic.com/en/docs/models-overview",oaiCompat:!0,initials:"AN",logoSlug:"anthropic",note:"使用 Anthropic OpenAI 兼容端点(/v1/messages 自动转换)。"},{id:"gemini",label:"Google Gemini",category:"frontier",baseUrl:"https://generativelanguage.googleapis.com/v1beta/openai/",defaultModel:"gemini-2.5-flash",suggestedModels:["gemini-2.5-pro","gemini-2.5-flash","gemini-2.0-flash","gemini-1.5-pro"],docsUrl:"https://ai.google.dev/gemini-api/docs/openai",oaiCompat:!0,initials:"GM",logoSlug:"gemini",note:"走 Gemini OpenAI 兼容层(generativelanguage.googleapis.com)。"},{id:"azure-openai",label:"Azure OpenAI",category:"frontier",baseUrl:"https://YOUR-RESOURCE.openai.azure.com/openai",defaultModel:"gpt-4o",suggestedModels:["gpt-4o","gpt-4o-mini","gpt-4-turbo","o1-mini"],docsUrl:"https://learn.microsoft.com/azure/ai-services/openai/reference",oaiCompat:!0,initials:"AZ",logoSlug:"azure",note:"Base URL 形如 https://<resource>.openai.azure.com/openai/deployments/<deployment>"},{id:"xai",label:"xAI Grok",category:"frontier",baseUrl:"https://api.x.ai/v1",defaultModel:"grok-3",suggestedModels:["grok-4","grok-3","grok-3-mini","grok-2-1212","grok-2-vision-1212"],docsUrl:"https://docs.x.ai/api",oaiCompat:!0,initials:"GR",logoSlug:"grok"},{id:"mistral",label:"Mistral AI",category:"frontier",baseUrl:"https://api.mistral.ai/v1",defaultModel:"mistral-large-latest",suggestedModels:["mistral-large-latest","mistral-large-2411","mistral-small-latest","codestral-2501","open-mistral-nemo"],docsUrl:"https://docs.mistral.ai/getting-started/models/models_overview/",oaiCompat:!0,initials:"MI",logoSlug:"mistral"},{id:"cohere",label:"Cohere",category:"frontier",baseUrl:"https://api.cohere.ai/compatibility/v1",defaultModel:"command-r-plus",suggestedModels:["command-r-plus","command-r","command-r7b"],docsUrl:"https://docs.cohere.com/docs/compatibility-api",oaiCompat:!0,initials:"CO",logoSlug:"cohere"},{id:"openrouter",label:"OpenRouter",category:"aggregator",baseUrl:"https://openrouter.ai/api/v1",defaultModel:"openai/gpt-4o-mini",suggestedModels:["anthropic/claude-3.5-sonnet","openai/gpt-4o","meta-llama/llama-3.3-70b-instruct","google/gemini-2.0-flash-exp:free"],docsUrl:"https://openrouter.ai/docs",oaiCompat:!0,initials:"OR",logoSlug:"openrouter"},{id:"together",label:"Together AI",category:"aggregator",baseUrl:"https://api.together.xyz/v1",defaultModel:"meta-llama/Llama-3.3-70B-Instruct-Turbo",suggestedModels:["meta-llama/Llama-3.3-70B-Instruct-Turbo","deepseek-ai/DeepSeek-V3","Qwen/Qwen2.5-72B-Instruct-Turbo"],docsUrl:"https://docs.together.ai/docs/quickstart",oaiCompat:!0,initials:"TG",logoSlug:"together"},{id:"fireworks",label:"Fireworks AI",category:"aggregator",baseUrl:"https://api.fireworks.ai/inference/v1",defaultModel:"accounts/fireworks/models/llama-v3p3-70b-instruct",suggestedModels:["accounts/fireworks/models/llama-v3p3-70b-instruct","accounts/fireworks/models/deepseek-v3","accounts/fireworks/models/qwen2p5-72b-instruct"],docsUrl:"https://docs.fireworks.ai",oaiCompat:!0,initials:"FW",logoSlug:"fireworks"},{id:"groq",label:"Groq",category:"aggregator",baseUrl:"https://api.groq.com/openai/v1",defaultModel:"llama-3.3-70b-versatile",suggestedModels:["llama-3.3-70b-versatile","llama-3.1-8b-instant","mixtral-8x7b-32768"],docsUrl:"https://console.groq.com/docs/models",oaiCompat:!0,initials:"GQ",logoSlug:"groq"},{id:"deepinfra",label:"DeepInfra",category:"aggregator",baseUrl:"https://api.deepinfra.com/v1/openai",defaultModel:"meta-llama/Meta-Llama-3.1-70B-Instruct",suggestedModels:["meta-llama/Meta-Llama-3.1-70B-Instruct","deepseek-ai/DeepSeek-V3","Qwen/Qwen2.5-72B-Instruct"],docsUrl:"https://deepinfra.com/docs",oaiCompat:!0,initials:"DI",logoSlug:"deepinfra"},{id:"perplexity",label:"Perplexity",category:"aggregator",baseUrl:"https://api.perplexity.ai",defaultModel:"sonar",suggestedModels:["sonar","sonar-pro","sonar-reasoning","sonar-reasoning-pro"],docsUrl:"https://docs.perplexity.ai",oaiCompat:!0,initials:"PX",logoSlug:"perplexity"},{id:"nvidia",label:"NVIDIA NIM",category:"aggregator",baseUrl:"https://integrate.api.nvidia.com/v1",defaultModel:"meta/llama-3.3-70b-instruct",suggestedModels:["meta/llama-3.3-70b-instruct","deepseek-ai/deepseek-r1","nvidia/llama-3.1-nemotron-70b-instruct"],docsUrl:"https://docs.api.nvidia.com",oaiCompat:!0,initials:"NV",logoSlug:"nvidia"},{id:"databricks",label:"Databricks",category:"aggregator",baseUrl:"https://YOUR-WORKSPACE.cloud.databricks.com/serving-endpoints",defaultModel:"databricks-meta-llama-3-3-70b-instruct",suggestedModels:["databricks-meta-llama-3-3-70b-instruct","databricks-dbrx-instruct"],docsUrl:"https://docs.databricks.com/aws/en/machine-learning/foundation-models/api-reference",oaiCompat:!0,initials:"DB",logoSlug:"databricks",note:"Base URL 形如 https://<workspace>.cloud.databricks.com/serving-endpoints"},{id:"novita",label:"Novita AI",category:"aggregator",baseUrl:"https://api.novita.ai/v3/openai",defaultModel:"meta-llama/llama-3.3-70b-instruct",suggestedModels:["meta-llama/llama-3.3-70b-instruct","qwen/qwen-2.5-72b-instruct"],docsUrl:"https://novita.ai/docs/api-reference",oaiCompat:!0,initials:"NV",logoSlug:"novita"},{id:"hyperbolic",label:"Hyperbolic",category:"aggregator",baseUrl:"https://api.hyperbolic.xyz/v1",defaultModel:"meta-llama/Meta-Llama-3.1-70B-Instruct",suggestedModels:["meta-llama/Meta-Llama-3.1-70B-Instruct","Qwen/Qwen2.5-Coder-32B-Instruct"],docsUrl:"https://docs.hyperbolic.xyz",oaiCompat:!0,initials:"HY",logoSlug:"hyperbolic"},{id:"deepseek-official",label:"DeepSeek (Official)",category:"china",baseUrl:"https://api.deepseek.com",defaultModel:"deepseek-chat",suggestedModels:["deepseek-chat","deepseek-reasoner","deepseek-v3.1"],docsUrl:"https://api-docs.deepseek.com",oaiCompat:!0,initials:"DS",logoSlug:"deepseek"},{id:"siliconflow",label:"SiliconFlow / 硅基流动",category:"china",baseUrl:"https://api.siliconflow.cn/v1",defaultModel:"deepseek-ai/DeepSeek-V3",suggestedModels:["deepseek-ai/DeepSeek-V3","deepseek-ai/DeepSeek-R1","Qwen/Qwen2.5-72B-Instruct","meta-llama/Meta-Llama-3.1-70B-Instruct"],docsUrl:"https://docs.siliconflow.cn",oaiCompat:!0,initials:"SF",logoSlug:"siliconcloud"},{id:"moonshot",label:"Moonshot / Kimi",category:"china",baseUrl:"https://api.moonshot.cn/v1",defaultModel:"kimi-latest",suggestedModels:["kimi-k2","kimi-latest","moonshot-v1-128k","moonshot-v1-32k","moonshot-v1-8k"],docsUrl:"https://platform.moonshot.cn/docs",oaiCompat:!0,initials:"MK",logoSlug:"moonshot"},{id:"zhipu",label:"Zhipu GLM / 智谱",category:"china",baseUrl:"https://open.bigmodel.cn/api/paas/v4",defaultModel:"glm-4.5",suggestedModels:["glm-4.5","glm-4-plus","glm-4-air","glm-4-long","glm-4-flash"],docsUrl:"https://bigmodel.cn/dev/api",oaiCompat:!0,initials:"ZP",logoSlug:"zhipu"},{id:"doubao",label:"Doubao / 火山方舟",category:"china",baseUrl:"https://ark.cn-beijing.volces.com/api/v3",defaultModel:"doubao-1.5-pro-32k",suggestedModels:["doubao-1.5-pro-32k","doubao-1.5-pro-256k","doubao-pro-32k","doubao-lite-32k"],docsUrl:"https://www.volcengine.com/docs/82379",oaiCompat:!0,initials:"DB",logoSlug:"doubao",note:'模型名通常是火山方舟"接入点 ID",不是发布的模型名。'},{id:"qwen",label:"Tongyi Qwen / 通义千问",category:"china",baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1",defaultModel:"qwen-plus",suggestedModels:["qwen3-max","qwen3-plus","qwen-max","qwen-plus","qwen-turbo","qwen2.5-72b-instruct"],docsUrl:"https://help.aliyun.com/zh/model-studio/developer-reference/use-qwen-by-calling-api",oaiCompat:!0,initials:"QW",logoSlug:"qwen"},{id:"hunyuan",label:"Tencent Hunyuan / 腾讯混元",category:"china",baseUrl:"https://api.hunyuan.cloud.tencent.com/v1",defaultModel:"hunyuan-pro",suggestedModels:["hunyuan-turbo","hunyuan-pro","hunyuan-standard","hunyuan-lite"],docsUrl:"https://cloud.tencent.com/document/product/1729/97732",oaiCompat:!0,initials:"HY",logoSlug:"hunyuan"},{id:"yi",label:"01.AI Yi / 零一万物",category:"china",baseUrl:"https://api.lingyiwanwu.com/v1",defaultModel:"yi-large",suggestedModels:["yi-large","yi-large-turbo","yi-medium","yi-vision"],docsUrl:"https://platform.lingyiwanwu.com/docs",oaiCompat:!0,initials:"YI",logoSlug:"yi"},{id:"modelscope",label:"ModelScope / 魔搭",category:"china",baseUrl:"https://api-inference.modelscope.cn/v1",defaultModel:"Qwen/Qwen2.5-72B-Instruct",suggestedModels:["Qwen/Qwen2.5-72B-Instruct","deepseek-ai/DeepSeek-V3","meta-llama/Llama-3.3-70B-Instruct"],docsUrl:"https://modelscope.cn/docs/model-service/API-Inference",oaiCompat:!0,initials:"MS",logoSlug:"modelscope"},{id:"ppio",label:"PPIO / 派欧云",category:"china",baseUrl:"https://api.ppinfra.com/v3/openai",defaultModel:"deepseek/deepseek-v3",suggestedModels:["deepseek/deepseek-v3","deepseek/deepseek-r1","qwen/qwen2.5-72b-instruct","meta-llama/llama-3.3-70b-instruct"],docsUrl:"https://ppinfra.com/docs",oaiCompat:!0,initials:"PP",logoSlug:"ppio"},{id:"baidu",label:"Baidu Qianfan / 文心一言",category:"china",baseUrl:"https://qianfan.baidubce.com/v2",defaultModel:"ernie-4.0-8k",suggestedModels:["ernie-4.0-8k","ernie-4.0-turbo-8k","ernie-3.5-8k"],docsUrl:"https://cloud.baidu.com/doc/qianfan-api/index.html",oaiCompat:!0,initials:"BD",logoSlug:"wenxin"},{id:"minimax",label:"MiniMax",category:"china",baseUrl:"https://api.minimax.chat/v1",defaultModel:"abab6.5s-chat",suggestedModels:["abab6.5s-chat","abab6.5-chat","minimax-text-01"],docsUrl:"https://platform.minimaxi.com/document/algorithm-concept",oaiCompat:!0,initials:"MM",logoSlug:"minimax"},{id:"stepfun",label:"Stepfun / 阶跃星辰",category:"china",baseUrl:"https://api.stepfun.com/v1",defaultModel:"step-1-8k",suggestedModels:["step-1-8k","step-1-32k","step-2-16k"],docsUrl:"https://platform.stepfun.com/docs",oaiCompat:!0,initials:"ST",logoSlug:"stepfun"},{id:"ollama",label:"Ollama",category:"selfhost",baseUrl:"http://localhost:11434/v1",defaultModel:"llama3.3",suggestedModels:["llama3.3","qwen2.5","deepseek-r1","mistral"],docsUrl:"https://ollama.com/library",oaiCompat:!0,initials:"OL",logoSlug:"ollama",note:"本地 Ollama 通常无需 API Key,留空即可。"},{id:"vllm",label:"vLLM",category:"selfhost",baseUrl:"http://localhost:8000/v1",defaultModel:"meta-llama/Meta-Llama-3-8B-Instruct",suggestedModels:["meta-llama/Meta-Llama-3-8B-Instruct","Qwen/Qwen2.5-7B-Instruct"],docsUrl:"https://docs.vllm.ai/en/stable/serving/openai_compatible_server.html",oaiCompat:!0,initials:"VL",logoSlug:"vllm",note:"vLLM 默认以 OpenAI 兼容模式启动,API Key 任意字符串即可。"},{id:"lmstudio",label:"LM Studio",category:"selfhost",baseUrl:"http://localhost:1234/v1",defaultModel:"local-model",suggestedModels:["local-model"],docsUrl:"https://lmstudio.ai/docs/local-server",oaiCompat:!0,initials:"LM",logoSlug:"lmstudio",note:'在 LM Studio 中开启 "Local Inference Server",端口默认 1234。'},{id:"tgi",label:"Text Generation Inference (TGI)",category:"selfhost",baseUrl:"http://localhost:8080/v1",defaultModel:"tgi",suggestedModels:["tgi"],docsUrl:"https://huggingface.co/docs/text-generation-inference/messages_api",oaiCompat:!0,initials:"TG",logoSlug:"huggingface"},{id:"xinference",label:"Xinference",category:"selfhost",baseUrl:"http://localhost:9997/v1",defaultModel:"qwen2.5-instruct",suggestedModels:["qwen2.5-instruct","llama-3.3-instruct","deepseek-r1-distill-qwen"],docsUrl:"https://inference.readthedocs.io/en/latest/models/builtin/llm.html",oaiCompat:!0,initials:"XI",logoSlug:"xinference",note:"通过模型 UID 接入 Xinference 本地实例。"},{id:"localai",label:"LocalAI",category:"selfhost",baseUrl:"http://localhost:8080/v1",defaultModel:"gpt-3.5-turbo",suggestedModels:["gpt-3.5-turbo"],docsUrl:"https://localai.io",oaiCompat:!0,initials:"LA",logoSlug:"localai",note:"OpenAI 兼容的本地推理网关,模型名按本地配置填写。"},{id:"custom",label:"Custom (OpenAI Compatible)",category:"selfhost",baseUrl:"",defaultModel:"",suggestedModels:[],oaiCompat:!0,initials:"CU",note:"任何兼容 OpenAI /v1/chat/completions 协议的端点。"}],M=C.reduce((e,o)=>(e[o.id]=o,e),{}),U=[{id:"frontier",labelZh:"主流闭源 SaaS",labelEn:"Frontier SaaS"},{id:"aggregator",labelZh:"推理聚合 / 路由",labelEn:"Inference Aggregators"},{id:"china",labelZh:"国内厂商",labelEn:"China Providers"},{id:"selfhost",labelZh:"本地 / 自部署",labelEn:"Self-hosted"}],I={"deepseek-official":{baseUrl:"https://api.deepseek.com",model:"deepseek-chat"},siliconflow:{baseUrl:"https://api.siliconflow.cn/v1",model:"deepseek-ai/DeepSeek-V3"},openai:{baseUrl:"https://api.openai.com/v1",model:"gpt-4o"},anthropic:{baseUrl:"https://api.anthropic.com/v1",model:"claude-3-5-sonnet-20240620"},custom:{baseUrl:"",model:""}},W={"deepseek-official":{label:"DeepSeek (Official)",monogram:"DS",category:"cn"},siliconflow:{label:"SiliconFlow",monogram:"SF",category:"cn"},openai:{label:"OpenAI",monogram:"OA",category:"saas"},anthropic:{label:"Anthropic",monogram:"AN",category:"saas"},custom:{label:"Custom (OpenAI Compatible)",monogram:"CX",category:"other"}},R=e=>!!e&&e.startsWith("default_"),A=e=>e.apiKey?"ok":"unconfigured";function T({}={}){let{user:e}=(0,S.useAuth)(),{t,locale:a}=(0,w.useLocale)(),[s,n]=(0,r.useState)([]),[d,c]=(0,r.useState)("default"),[p,u]=(0,r.useState)(null),[h,m]=(0,r.useState)({id:"new",name:"zh"===a?"新配置":"New Config",provider:"deepseek-official",model:"deepseek-chat"}),[f,x]=(0,r.useState)(!1),[y,b]=(0,r.useState)(null),[v,j]=(0,r.useState)(!1),[C,M]=(0,r.useState)(""),[U,I]=(0,r.useState)("all"),[K,q]=(0,r.useState)(null),[N,Q]=(0,r.useState)({}),[er,el]=(0,r.useState)(!1),[ei,ea]=(0,r.useState)(!1),[es,en]=(0,r.useState)(null),ed=(0,r.useCallback)(async()=>{if(!e)return void j(!0);try{let o=await (0,k.apiFetch)(`/api/eval/settings?user=${encodeURIComponent(e)}`);if(o.ok){let e=await o.json();e.configs&&(n(e.configs),c(e.activeConfigId||e.configs[0]?.id||"default"))}}catch(e){console.error("Failed to fetch settings",e)}finally{j(!0)}},[e]);(0,r.useEffect)(()=>{ed()},[ed]),(0,r.useEffect)(()=>{Q(e=>{let o={...e};for(let e of s)e.id in o||(o[e.id]=A(e));for(let e of Object.keys(o))s.find(o=>o.id===e)||delete o[e];return o})},[s]);let ec=(0,r.useCallback)(async()=>{if(er||0===s.length)return;el(!0),Q(e=>{let o={...e};for(let e of s)o[e.id]=e.apiKey?"checking":"unconfigured";return o});let o=await Promise.all(s.map(async o=>{if(!o.apiKey)return[o.id,"unconfigured"];try{let t=await (0,k.apiFetch)("/api/eval/settings/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:o.provider,apiKey:o.apiKey,baseUrl:o.baseUrl,model:o.model,user:e,configId:o.id})}),r=await t.json().catch(()=>({success:!1}));return[o.id,r.success?"ok":"failed"]}catch{return[o.id,"failed"]}}));Q(e=>{let t={...e};for(let[e,r]of o)t[e]=r;return t}),el(!1)},[s,er]),ep=(0,r.useCallback)(async(o,t)=>(0,k.apiFetch)("/api/eval/settings",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({settings:{activeConfigId:t,configs:o},user:e})}),[e]),eg=async()=>{x(!0),b({type:"info",msg:"zh"===a?"正在测试连接…":"Testing connection…"});try{let o=[...s],t={...h};"new"===t.id?(t.id=`config_${Date.now()}`,o.push(t)):o=o.map(e=>e.id===t.id?t:e);let r=await (0,k.apiFetch)("/api/eval/settings/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:t.provider,apiKey:t.apiKey,baseUrl:t.baseUrl,model:t.model,user:e,configId:t.id})}),l=await r.json();if(!l.success){b({type:"error",msg:("zh"===a?"连接测试失败:":"Connection test failed: ")+l.error}),x(!1);return}let i=d;(1===o.length||"default"===d)&&(i=t.id);let n=await ep(o,i);if(n.ok)await ed(),u(null),en(null),b({type:"success",msg:"zh"===a?"已保存":"Saved"}),setTimeout(()=>b(null),1500);else{let e=await n.json().catch(()=>({}));b({type:"error",msg:("zh"===a?"保存失败:":"Save failed: ")+(e.error||n.statusText)})}}catch(e){b({type:"error",msg:`Error: ${e.message}`})}finally{x(!1)}},ex=async e=>{(await ep(s,e)).ok&&(c(e),b({type:"success",msg:"zh"===a?"默认模型已切换":"Active model updated"}),setTimeout(()=>b(null),1500))},ey=async e=>{let o=s.filter(o=>o.id!==e),t=d;e===d&&(t=o[0]?.id||"default"),(await ep(o,t)).ok&&(n(o),c(t),b({type:"success",msg:"zh"===a?"已删除":"Deleted"}),setTimeout(()=>b(null),1500))},eb=()=>{ea(!0),en(null),u(null),b(null)},ev=(0,r.useMemo)(()=>{let e=C.trim().toLowerCase();return s.filter(o=>("all"===U||W[o.provider]?.category===U)&&(!e||o.name.toLowerCase().includes(e)||(o.model||"").toLowerCase().includes(e)||(o.baseUrl||"").toLowerCase().includes(e)||(W[o.provider]?.label||o.provider||"").toLowerCase().includes(e)))},[s,C,U]),ej=(0,r.useMemo)(()=>{let e={saas:0,cn:0,local:0,other:0};for(let o of s){let t=W[o.provider]?.category;t&&(e[t]+=1)}return e},[s]),ek=s.find(e=>e.id===d),eS=new Set(s.map(e=>e.provider)).size;return v?(0,o.jsxs)("div",{style:G,children:[(0,o.jsxs)("div",{style:_,children:[y&&(0,o.jsx)(L,{status:y}),ei?(0,o.jsx)(H,{onPick:e=>{var o;m({id:"new",name:e.label,provider:"openai"===(o=e.id)?"openai":"anthropic"===o?"anthropic":"deepseek-official"===o?"deepseek-official":"siliconflow"===o?"siliconflow":"custom",baseUrl:e.baseUrl,model:e.defaultModel,apiKey:""}),en(e),ea(!1),u("new"),b(null)},onCancel:()=>ea(!1),locale:a}):p?(0,o.jsx)($,{config:h,setConfig:m,onCancel:()=>{u(null),en(null)},onReselect:"new"===p?()=>{u(null),ea(!0)}:void 0,onSave:eg,isSaving:f,isDefault:R(p),pickedProvider:es,locale:a}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{style:Y,children:[(0,o.jsx)("p",{style:V,children:"zh"===a?(0,o.jsxs)(o.Fragment,{children:["注册并管理评测 / 优化使用的 ",(0,o.jsx)("b",{style:Z,children:"LLM"}),",可切换默认、编辑参数、管理 API Key。兼容 ",(0,o.jsx)("b",{style:Z,children:"OpenAI / Anthropic / DeepSeek"})," 等主流厂商,亦支持",(0,o.jsx)("b",{style:Z,children:"国内厂商"}),"与",(0,o.jsx)("b",{style:Z,children:"本地推理"}),"部署。"]}):(0,o.jsxs)(o.Fragment,{children:["Register and manage LLMs used for evaluation/optimization. Set the default, edit parameters, and manage API keys. Compatible with ",(0,o.jsx)("b",{style:Z,children:"OpenAI / Anthropic / DeepSeek"})," as well as ",(0,o.jsx)("b",{style:Z,children:"regional providers"})," and ",(0,o.jsx)("b",{style:Z,children:"self-hosted"})," inference."]})}),(0,o.jsxs)("button",{style:eD,onClick:eb,children:[(0,o.jsx)(l.Plus,{size:14,strokeWidth:2.4}),"zh"===a?"新增模型":"New Model"]})]}),(0,o.jsxs)("div",{style:X,children:[(0,o.jsxs)("div",{style:J,children:[(0,o.jsxs)("div",{style:eu,children:[(0,o.jsxs)("div",{style:eh,children:[(0,o.jsx)(i.Search,{size:14,strokeWidth:2,style:{position:"absolute",left:11,top:"50%",transform:"translateY(-50%)",color:"var(--foreground-muted)"}}),(0,o.jsx)("input",{type:"text",placeholder:"zh"===a?"搜索名称 / 模型 / Base URL":"Search name / model / Base URL",value:C,onChange:e=>M(e.target.value),style:em})]}),(0,o.jsxs)("div",{style:ef,children:[(0,o.jsx)(B,{active:"all"===U,onClick:()=>I("all"),count:s.length,children:"zh"===a?"全部":"All"}),(0,o.jsx)(B,{active:"saas"===U,onClick:()=>I("saas"),count:ej.saas,children:"zh"===a?"主流闭源":"SaaS"}),(0,o.jsx)(B,{active:"cn"===U,onClick:()=>I("cn"),count:ej.cn,children:"zh"===a?"国内厂商":"Regional"}),(0,o.jsx)(B,{active:"other"===U,onClick:()=>I("other"),count:ej.other,children:"zh"===a?"自定义":"Custom"})]})]}),(0,o.jsxs)("div",{style:eo,children:[(0,o.jsx)("span",{style:{fontSize:13.5,fontWeight:600,color:"var(--foreground)"},children:"zh"===a?"已注册模型":"Registered Models"}),(0,o.jsx)("span",{style:et,children:ev.length}),(0,o.jsx)("span",{style:{flex:1}}),(0,o.jsx)("span",{style:{fontSize:11.5,color:"var(--foreground-muted)"},children:"zh"===a?`容量 ${s.length} / 32`:`Capacity ${s.length} / 32`})]}),0===ev.length?(0,o.jsx)(E,{locale:a,hasConfigs:s.length>0,onAdd:eb,onReset:()=>{M(""),I("all")}}):(0,o.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:10},children:ev.map(e=>(0,o.jsx)(P,{config:e,isActive:e.id===d,isDefault:R(e.id),health:N[e.id],onActivate:()=>ex(e.id),onEdit:()=>{m({...e}),en(null),u(e.id),ea(!1),b(null)},onDelete:()=>q(e),locale:a},e.id))}),(0,o.jsxs)("div",{style:eH,children:[(0,o.jsx)("div",{style:e$,children:(0,o.jsx)(g.Info,{size:16})}),(0,o.jsxs)("div",{style:{flex:1,fontSize:12.5,color:"var(--foreground-secondary)",lineHeight:1.6},children:[(0,o.jsx)("b",{style:{color:"var(--foreground)",fontWeight:600},children:"zh"===a?"提示":"Tip"})," · ","zh"===a?"至少保留一个默认模型,用于评测与优化任务的兜底调用。删除默认模型前,请先指定其它模型为默认。":"Keep at least one default model for evaluation/optimization fallback. Switch the default before deleting it."]})]})]}),(0,o.jsxs)("aside",{style:ee,children:[(0,o.jsx)(D,{active:ek,providerKinds:eS,registeredCount:s.length,locale:a}),(0,o.jsx)(O,{configs:s,healthMap:N,isRechecking:er,onRecheck:ec,locale:a}),(0,o.jsx)(F,{locale:a})]})]})]})]}),(0,o.jsx)(z.ConfirmDialog,{open:!!K,onOpenChange:e=>!e&&q(null),tone:"danger",title:"zh"===a?"删除该模型?":"Delete this model?",description:K?"zh"===a?`将永久删除「${K.name}」配置,无法恢复。`:`"${K.name}" will be permanently removed.`:"",confirmText:"zh"===a?"删除":"Delete",cancelText:"zh"===a?"取消":"Cancel",onConfirm:async()=>{K&&await ey(K.id)}})]}):(0,o.jsx)("div",{style:{padding:32,color:"var(--foreground-muted)",fontSize:12},children:t("common.loading")})}function L({status:e}){let t="success"===e.type?{bg:"var(--success-subtle)",fg:"var(--success)",border:"var(--success-subtle-border)"}:"error"===e.type?{bg:"var(--error-subtle)",fg:"var(--error)",border:"var(--error-subtle-border)"}:{bg:"var(--primary-subtle)",fg:"var(--primary)",border:"var(--primary-subtle-border)"};return(0,o.jsxs)("div",{style:{padding:"8px 12px",marginBottom:14,borderRadius:8,background:t.bg,color:t.fg,border:`1px solid ${t.border}`,fontSize:12,fontWeight:500,display:"flex",alignItems:"center",gap:6},children:["success"===e.type&&(0,o.jsx)(p.Check,{size:13,strokeWidth:2.5}),e.msg]})}function B({active:e,onClick:t,count:r,children:l}){return(0,o.jsxs)("button",{type:"button",onClick:t,"aria-pressed":e,className:"ai-filter-chip","data-active":e?"true":"false",style:ex,children:[l,"number"==typeof r&&r>0&&(0,o.jsx)("span",{className:"ai-filter-chip__count",children:r})]})}function P({config:e,isActive:t,isDefault:r,health:l,onActivate:i,onEdit:a,onDelete:s,locale:g}){let m=W[e.provider]??{label:e.provider||"Unknown",monogram:(e.provider?.slice(0,2)||"??").toUpperCase(),category:"other"},f=function(e,o){let t=M[e];if(t)return t;if(!o)return;let r=o.replace(/\/+$/,"").toLowerCase();return C.find(e=>{if(!e.baseUrl)return!1;let o=e.baseUrl.replace(/\/+$/,"").toLowerCase();return r===o||r.startsWith(o)})}(e.provider,e.baseUrl),x=l??A(e);return(0,o.jsxs)("article",{style:{...ey,borderColor:t?"var(--primary-subtle-border)":"var(--card-border)",background:t?"linear-gradient(180deg, var(--primary-subtle) 0%, var(--card-bg) 56px)":"var(--card-bg)"},children:[t&&(0,o.jsx)("span",{style:eb}),(0,o.jsx)(q,{slug:f?.logoSlug,initials:m.monogram,size:48,radius:12}),(0,o.jsxs)("div",{style:{minWidth:0},children:[(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,flexWrap:"wrap",marginBottom:6},children:[(0,o.jsx)("span",{style:ej,children:e.name}),t&&(0,o.jsxs)("span",{style:eS,children:[(0,o.jsx)(h,{size:11,strokeWidth:2.5}),"zh"===g?"当前默认":"Default"]}),"ok"===x&&(0,o.jsxs)("span",{style:ew,children:[(0,o.jsx)("span",{style:eI}),"zh"===g?"正常":"Healthy"]}),"checking"===x&&(0,o.jsxs)("span",{style:eC,children:[(0,o.jsx)(v.Loader2,{size:11,strokeWidth:2.4,style:{animation:"spin 1s linear infinite"}}),"zh"===g?"连接中":"Checking"]}),"failed"===x&&(0,o.jsxs)("span",{style:eM,children:[(0,o.jsx)(j.XCircle,{size:11,strokeWidth:2.4}),"zh"===g?"Key 已失效":"Key invalid"]}),"unconfigured"===x&&(0,o.jsx)("span",{style:ez,children:"zh"===g?"未设置 Key":"No key"}),r&&(0,o.jsx)("span",{style:eU,children:"zh"===g?"系统默认":"System"})]}),(0,o.jsxs)("div",{style:eW,children:[(0,o.jsxs)("span",{style:eR,children:[(0,o.jsx)("span",{style:eA,children:"Provider"}),(0,o.jsx)("span",{style:{...eT,fontFamily:"var(--font-mono)",fontSize:12},children:m.label})]}),(0,o.jsx)("span",{style:eL}),(0,o.jsxs)("span",{style:eR,children:[(0,o.jsx)("span",{style:eA,children:"Model"}),(0,o.jsx)("span",{style:{...eT,fontFamily:"var(--font-mono)",fontSize:12},children:e.model||"—"})]}),e.baseUrl&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("span",{style:eL}),(0,o.jsxs)("span",{style:eR,children:[(0,o.jsx)("span",{style:eA,children:"Base URL"}),(0,o.jsx)("span",{style:{...eT,fontFamily:"var(--font-mono)",fontSize:12},title:e.baseUrl,children:e.baseUrl})]})]})]}),(0,o.jsxs)("div",{style:eB,children:[(0,o.jsx)(n.Key,{size:12,strokeWidth:2.2,style:{color:"var(--primary)"}}),e.apiKey?(0,o.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:12},children:e.apiKey}):(0,o.jsx)("span",{style:{color:"var(--foreground-muted)",fontFamily:"var(--font-mono)",fontSize:12},children:"zh"===g?"(未设置)":"(not set)"})]})]}),(0,o.jsxs)("div",{style:eP,children:[t?(0,o.jsxs)("button",{style:eK,disabled:!0,children:[(0,o.jsx)(u.CircleCheck,{size:13,strokeWidth:2.4}),"zh"===g?"当前使用":"In use"]}):(0,o.jsxs)("button",{style:eF,onClick:i,children:[(0,o.jsx)(p.Check,{size:13,strokeWidth:2.2}),"zh"===g?"设为默认":"Set default"]}),!r&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("button",{style:eF,onClick:a,children:[(0,o.jsx)(d.Pencil,{size:13,strokeWidth:2.2}),"zh"===g?"编辑":"Edit"]}),(0,o.jsxs)("button",{style:eq,onClick:s,children:[(0,o.jsx)(c.Trash2,{size:13,strokeWidth:2.2}),"zh"===g?"删除":"Delete"]})]})]})]})}function D({active:e,providerKinds:t,registeredCount:r,locale:l}){return(0,o.jsxs)("section",{style:er,children:[(0,o.jsxs)("header",{style:el,children:[(0,o.jsx)(m,{size:13,strokeWidth:2.2,style:{color:"var(--primary)"}}),(0,o.jsx)("span",{children:"zh"===l?"当前默认":"Current Default"})]}),e?(0,o.jsxs)("ul",{style:ei,children:[(0,o.jsx)(K,{label:"zh"===l?"名称":"Name",value:e.name,bold:!0}),(0,o.jsx)(K,{label:"Provider",value:e.provider,mono:!0}),(0,o.jsx)(K,{label:"Model",value:e.model||"—",mono:!0}),e.baseUrl&&(0,o.jsx)(K,{label:"Base URL",value:e.baseUrl,mono:!0,ellipsis:!0}),(0,o.jsx)(K,{label:"zh"===l?"已注册":"Registered",value:`${r} / 32`}),(0,o.jsx)(K,{label:"zh"===l?"供应商种类":"Providers",value:String(t)})]}):(0,o.jsx)("div",{style:{padding:"4px 0",fontSize:12,color:"var(--foreground-muted)"},children:"zh"===l?"尚未选定默认模型。":"No default selected."})]})}function O({configs:e,healthMap:t,isRechecking:r,onRecheck:l,locale:i}){return(0,o.jsxs)("section",{style:er,children:[(0,o.jsxs)("header",{style:el,children:[(0,o.jsx)(f,{size:13,strokeWidth:2.2,style:{color:"var(--success)"}}),(0,o.jsx)("span",{children:"zh"===i?"健康检查":"Health Check"})]}),0===e.length?(0,o.jsx)("div",{style:{padding:"4px 0",fontSize:12,color:"var(--foreground-muted)"},children:"zh"===i?"暂无模型可检查。":"No models to check."}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("ul",{style:{display:"flex",flexDirection:"column",gap:8,padding:0,margin:0,listStyle:"none"},children:e.map(e=>{let r=t[e.id]??A(e);return(0,o.jsxs)("li",{style:ea,children:[(0,o.jsx)("span",{style:{flex:1,minWidth:0,fontSize:12.5,color:"var(--foreground)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:e.model||e.name,children:e.model||e.name}),(0,o.jsx)(N,{state:r,locale:i})]},e.id)})}),(0,o.jsxs)("button",{style:es,onClick:l,disabled:r,children:[(0,o.jsx)(b.RefreshCw,{size:12,strokeWidth:2.2,style:r?{animation:"spin 1s linear infinite"}:void 0}),r?"zh"===i?"检查中…":"Checking…":"zh"===i?"重新检查":"Re-check"]})]})]})}function F({locale:e}){return(0,o.jsxs)("section",{style:er,children:[(0,o.jsxs)("header",{style:el,children:[(0,o.jsx)(x.BookOpen,{size:13,strokeWidth:2.2,style:{color:"var(--foreground-secondary)"}}),(0,o.jsx)("span",{children:"zh"===e?"相关文档":"Related Docs"})]}),(0,o.jsx)("ul",{style:{display:"flex",flexDirection:"column",gap:2,padding:0,margin:0,listStyle:"none"},children:("zh"===e?[{label:"如何获取 API Key",href:"#"},{label:"密钥加密与轮转策略",href:"#"},{label:"模型注册最佳实践",href:"#"}]:[{label:"How to obtain an API Key",href:"#"},{label:"Key encryption & rotation",href:"#"},{label:"Model registry best practices",href:"#"}]).map(e=>(0,o.jsx)("li",{children:(0,o.jsxs)("a",{href:e.href,style:en,children:[(0,o.jsx)("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.label}),(0,o.jsx)(y.ExternalLink,{size:12,strokeWidth:2,style:{color:"var(--foreground-muted)",flexShrink:0}})]})},e.label))})]})}function K({label:e,value:t,mono:r,bold:l,ellipsis:i}){return(0,o.jsxs)("li",{style:{display:"flex",alignItems:"center",gap:12,padding:"5px 0",borderBottom:"1px dashed var(--border)",minWidth:0},children:[(0,o.jsx)("span",{style:{fontSize:11.5,color:"var(--foreground-muted)",flexShrink:0},children:e}),(0,o.jsx)("span",{style:{flex:1,minWidth:0,textAlign:"right",fontSize:12,color:"var(--foreground)",fontWeight:l?600:500,fontFamily:r?"var(--font-mono)":"inherit",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:i?t:void 0,children:t})]})}function q({slug:e,initials:t,size:l=36,radius:i=10}){let[a,s]=(0,r.useState)("color");(0,r.useEffect)(()=>{s("color")},[e]);let n="failed"===a?void 0:function(e,o="color"){if(e)return`https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@latest/icons/${e}${"color"===o?"-color":""}.svg`}(e,a),d=!!n;return(0,o.jsx)("div",{style:{...ev,width:l,height:l,borderRadius:i,fontSize:Math.round(.32*l),background:d?"#ffffff":"var(--background-secondary)",padding:d?Math.round(.16*l):0,color:"var(--foreground)"},children:d?(0,o.jsx)("img",{src:n,alt:t,onError:()=>s("color"===a?"plain":"failed"),style:{width:"100%",height:"100%",objectFit:"contain"},loading:"lazy"}):t})}function N({state:e,locale:t}){return"ok"===e?(0,o.jsxs)("span",{style:ew,children:[(0,o.jsx)(u.CircleCheck,{size:11,strokeWidth:2.4}),"zh"===t?"正常":"OK"]}):"checking"===e?(0,o.jsxs)("span",{style:eC,children:[(0,o.jsx)(v.Loader2,{size:11,strokeWidth:2.4,style:{animation:"spin 1s linear infinite"}}),"zh"===t?"检测中":"Checking"]}):"failed"===e?(0,o.jsxs)("span",{style:eM,children:[(0,o.jsx)(j.XCircle,{size:11,strokeWidth:2.4}),"zh"===t?"失效":"Failed"]}):(0,o.jsx)("span",{style:ez,children:"zh"===t?"未配置":"No key"})}function E({locale:e,hasConfigs:t,onAdd:r,onReset:i}){return(0,o.jsxs)("div",{style:eQ,children:[(0,o.jsx)("div",{style:eG,children:(0,o.jsx)(s,{size:20})}),(0,o.jsx)("div",{style:{fontSize:13.5,color:"var(--foreground)",fontWeight:500,marginBottom:4},children:t?"zh"===e?"没有匹配的模型":"No matching models":"zh"===e?"尚未注册任何模型":"No models registered yet"}),(0,o.jsx)("div",{style:{fontSize:12,color:"var(--foreground-muted)",marginBottom:14,textAlign:"center",maxWidth:360},children:t?"zh"===e?"试试调整搜索关键字或筛选条件。":"Try a different keyword or filter.":"zh"===e?"注册首个 LLM 后即可在评测、优化、对比中使用。":"Register your first LLM to use it for evaluation, optimization and comparison."}),t?(0,o.jsx)("button",{style:eF,onClick:i,children:"zh"===e?"清除筛选":"Reset filters"}):(0,o.jsxs)("button",{style:eD,onClick:r,children:[(0,o.jsx)(l.Plus,{size:14,strokeWidth:2.4}),"zh"===e?"注册首个模型":"Register your first model"]})]})}function H({onPick:e,onCancel:t,locale:l}){let[a,s]=(0,r.useState)(""),[n,d]=(0,r.useState)("all"),c=(0,r.useMemo)(()=>{let e=a.trim().toLowerCase();return C.filter(o=>("all"===n||o.category===n)&&(!e||o.label.toLowerCase().includes(e)||o.id.toLowerCase().includes(e)||o.defaultModel.toLowerCase().includes(e)||o.suggestedModels.some(o=>o.toLowerCase().includes(e))))},[a,n]),p=(0,r.useMemo)(()=>{let e={};for(let o of c)e[o.category]||(e[o.category]=[]),e[o.category].push(o);return e},[c]),g=(0,r.useMemo)(()=>{let e={all:C.length};for(let o of C)e[o.category]=(e[o.category]||0)+1;return e},[]);return(0,o.jsxs)("div",{style:eN,children:[(0,o.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",marginBottom:16,gap:16},children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("div",{style:{fontSize:15,fontWeight:600,color:"var(--foreground)",letterSpacing:"-0.01em"},children:"zh"===l?"选择模型供应商":"Choose a Model Provider"}),(0,o.jsx)("div",{style:{fontSize:12,color:"var(--foreground-muted)",marginTop:3},children:"zh"===l?"挑选预置供应商即可自动填写 Base URL 与默认模型,下一步只需录入 API Key。":"Pick a built-in provider — Base URL and default model auto-fill. You only need to paste an API key next."})]}),(0,o.jsx)("button",{style:eF,onClick:t,children:"zh"===l?"返回列表":"Back to list"})]}),(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:12,marginBottom:14,flexWrap:"wrap"},children:[(0,o.jsxs)("div",{style:{...eh,width:280},children:[(0,o.jsx)(i.Search,{size:14,strokeWidth:2,style:{position:"absolute",left:11,top:"50%",transform:"translateY(-50%)",color:"var(--foreground-muted)"}}),(0,o.jsx)("input",{type:"text",placeholder:"zh"===l?"搜索供应商 / 模型":"Search provider / model",value:a,onChange:e=>s(e.target.value),style:em})]}),(0,o.jsxs)("div",{style:ef,children:[(0,o.jsx)(B,{active:"all"===n,onClick:()=>d("all"),count:g.all,children:"zh"===l?"全部":"All"}),U.map(e=>(0,o.jsx)(B,{active:n===e.id,onClick:()=>d(e.id),count:g[e.id]||0,children:"zh"===l?e.labelZh:e.labelEn},e.id))]})]}),0===c.length?(0,o.jsx)("div",{style:{padding:"40px 0",textAlign:"center",fontSize:13,color:"var(--foreground-muted)"},children:"zh"===l?"没有匹配的供应商。":"No matching provider."}):(0,o.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:22},children:U.map(t=>{let r=p[t.id];return r&&0!==r.length?(0,o.jsxs)("section",{children:[(0,o.jsxs)("div",{style:ed,children:[(0,o.jsx)("span",{children:"zh"===l?t.labelZh:t.labelEn}),(0,o.jsx)("span",{style:et,children:r.length})]}),(0,o.jsx)("div",{style:ec,children:r.map(t=>(0,o.jsxs)("button",{type:"button",onClick:()=>e(t),style:ep,className:"provider-pick-card",children:[(0,o.jsx)(q,{slug:t.logoSlug,initials:t.initials,size:36,radius:9}),(0,o.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,o.jsx)("div",{style:{fontSize:13.5,fontWeight:600,color:"var(--foreground)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:t.label}),(0,o.jsx)("div",{style:{marginTop:3,fontSize:11.5,color:"var(--foreground-muted)",fontFamily:"var(--font-mono)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:t.suggestedModels.join(" · ")||t.defaultModel,children:t.suggestedModels.slice(0,3).join(" · ")||t.defaultModel||("zh"===l?"自填模型":"Custom model")})]})]},t.id))})]},t.id):null})})]})}function $({config:e,setConfig:t,onCancel:r,onReselect:l,onSave:i,isSaving:a,isDefault:s,pickedProvider:n,locale:d}){return(0,o.jsxs)("div",{style:eN,children:[(0,o.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",marginBottom:18,gap:16},children:[(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:12,minWidth:0},children:[n&&(0,o.jsx)(q,{slug:n.logoSlug,initials:n.initials,size:40,radius:10}),(0,o.jsxs)("div",{style:{minWidth:0},children:[(0,o.jsx)("div",{style:{fontSize:15,fontWeight:600,color:"var(--foreground)",letterSpacing:"-0.01em"},children:"new"===e.id?n?n.label:"zh"===d?"新增模型":"New Model":"zh"===d?"编辑模型":"Edit Model"}),(0,o.jsx)("div",{style:{fontSize:12,color:"var(--foreground-muted)",marginTop:3},children:n?.note?n.note:"zh"===d?"保存前会自动测试连接,连通后才会写入。":"Connection is tested before saving."})]})]}),(0,o.jsxs)("div",{style:{display:"flex",gap:8,flexShrink:0},children:[l&&(0,o.jsx)("button",{style:eF,onClick:l,children:"zh"===d?"← 选择其它供应商":"← Choose other provider"}),(0,o.jsx)("button",{style:eF,onClick:r,children:"zh"===d?"返回列表":"Back to list"})]})]}),(0,o.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(2, minmax(0, 1fr))",gap:"14px 18px"},children:[(0,o.jsx)(Q,{label:"zh"===d?"配置名称":"Config Name",children:(0,o.jsx)("input",{style:eE,placeholder:"zh"===d?"例如:我的 DeepSeek":"e.g. My DeepSeek",value:e.name||"",disabled:s,onChange:o=>t({...e,name:o.target.value})})}),(0,o.jsx)(Q,{label:"zh"===d?"供应商":"Provider",children:(0,o.jsxs)("select",{style:eE,value:e.provider,disabled:s,onChange:o=>{var r;let l;return l=I[r=o.target.value],void t({...e,provider:r,baseUrl:l.baseUrl||e.baseUrl,model:l.model||e.model})},children:[(0,o.jsx)("option",{value:"deepseek-official",children:"DeepSeek (Official)"}),(0,o.jsx)("option",{value:"siliconflow",children:"SiliconFlow"}),(0,o.jsx)("option",{value:"openai",children:"OpenAI"}),(0,o.jsx)("option",{value:"anthropic",children:"Anthropic"}),(0,o.jsx)("option",{value:"custom",children:"Custom (OpenAI Compatible)"})]})}),(0,o.jsx)(Q,{label:"Base URL",children:(0,o.jsx)("input",{style:eE,placeholder:"https://api.deepseek.com",value:e.baseUrl||"",disabled:s,onChange:o=>t({...e,baseUrl:o.target.value.replace(/\/chat\/completions\/?$/,"")})})}),(0,o.jsxs)(Q,{label:"zh"===d?"模型名":"Model Name",children:[(0,o.jsx)("input",{style:eE,placeholder:"deepseek-chat / gpt-4o / ...",value:e.model||"",disabled:s,onChange:o=>t({...e,model:o.target.value})}),n&&n.suggestedModels.length>0&&(0,o.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:5,marginTop:7},children:n.suggestedModels.slice(0,6).map(r=>(0,o.jsx)("button",{type:"button",onClick:()=>t({...e,model:r}),style:{...eg,background:e.model===r?"var(--primary-subtle)":"var(--background-secondary)",color:e.model===r?"var(--primary)":"var(--foreground-secondary)",borderColor:e.model===r?"var(--primary-subtle-border)":"var(--border)"},children:r},r))})]}),(0,o.jsx)("div",{style:{gridColumn:"1 / -1"},children:(0,o.jsxs)(Q,{label:"zh"===d?"API 密钥":"API Key",children:[(0,o.jsx)("input",{style:{...eE,fontFamily:"var(--font-mono, ui-monospace, monospace)"},type:"text",placeholder:"sk-...",value:e.apiKey||"",disabled:s,onChange:o=>t({...e,apiKey:o.target.value})}),(e.apiKey||"").includes("•")&&(0,o.jsx)("div",{style:{marginTop:6,fontSize:11.5,color:"var(--foreground-muted)"},children:"zh"===d?"出于安全考虑仅显示掩码。保持不变则沿用原 Key;如需更换请清空后输入新 Key。":"Masked for security. Leave unchanged to keep the current key; clear and type a new key to replace it."}),n?.docsUrl&&(0,o.jsx)("div",{style:{marginTop:6,fontSize:11.5,color:"var(--foreground-muted)"},children:(0,o.jsxs)("a",{href:n.docsUrl,target:"_blank",rel:"noreferrer",style:{color:"var(--primary)",textDecoration:"none",display:"inline-flex",alignItems:"center",gap:4},children:["zh"===d?"如何获取 API Key":"How to obtain an API Key",(0,o.jsx)(y.ExternalLink,{size:11,strokeWidth:2})]})})]})})]}),(0,o.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:20},children:[(0,o.jsx)("button",{style:eF,onClick:r,children:"zh"===d?"取消":"Cancel"}),!s&&(0,o.jsx)("button",{style:a?eO:eD,disabled:a,onClick:i,children:a?"zh"===d?"测试并保存中…":"Testing & Saving…":"zh"===d?"测试连接并保存":"Test & Save"})]})]})}function Q({label:e,children:t}){return(0,o.jsxs)("div",{children:[(0,o.jsx)("div",{style:{fontSize:11.5,fontWeight:500,color:"var(--foreground-secondary)",marginBottom:6,letterSpacing:"0.01em"},children:e}),t]})}let G={flex:1,minHeight:0,overflowY:"auto",padding:"24px 28px 40px",width:"100%"},_={maxWidth:1320,margin:"0 auto"},Y={display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:24,marginBottom:22},V={margin:0,fontSize:13,lineHeight:1.65,color:"var(--foreground-secondary)",maxWidth:720},Z={color:"var(--foreground)",fontWeight:600},X={display:"grid",gridTemplateColumns:"minmax(0, 1fr) 300px",gap:22,alignItems:"flex-start"},J={minWidth:0,display:"flex",flexDirection:"column",gap:14},ee={display:"flex",flexDirection:"column",gap:14,position:"sticky",top:0},eo={display:"flex",alignItems:"center",gap:8,padding:"2px 2px 6px",borderBottom:"1px solid var(--border)"},et={display:"inline-flex",alignItems:"center",padding:"1px 8px",fontSize:11,fontWeight:600,fontFamily:"var(--font-mono)",color:"var(--foreground-secondary)",background:"var(--background-secondary)",border:"1px solid var(--border)",borderRadius:999,lineHeight:1.5},er={background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:12,padding:"14px 16px 12px",display:"flex",flexDirection:"column",gap:10},el={display:"flex",alignItems:"center",gap:7,fontSize:13,fontWeight:600,color:"var(--foreground)",letterSpacing:"-0.005em",paddingBottom:8,borderBottom:"1px solid var(--border)"},ei={display:"flex",flexDirection:"column",padding:0,margin:0,listStyle:"none"},ea={display:"flex",alignItems:"center",gap:10,padding:"5px 0",minWidth:0},es={width:"100%",display:"inline-flex",alignItems:"center",justifyContent:"center",gap:6,padding:"7px 10px",marginTop:4,background:"var(--card-bg)",color:"var(--foreground-secondary)",border:"1px solid var(--border)",borderRadius:7,fontSize:12,fontWeight:500,cursor:"pointer",transition:"all .12s ease"},en={display:"flex",alignItems:"center",gap:8,padding:"7px 8px",fontSize:12.5,color:"var(--foreground-secondary)",textDecoration:"none",borderRadius:6,transition:"background .1s"},ed={display:"flex",alignItems:"center",gap:8,marginBottom:10,fontSize:12,fontWeight:600,color:"var(--foreground-secondary)",textTransform:"uppercase",letterSpacing:"0.08em"},ec={display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(220px, 1fr))",gap:10},ep={display:"flex",alignItems:"center",gap:12,padding:"11px 12px",background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:10,cursor:"pointer",textAlign:"left",fontFamily:"inherit",transition:"all .12s ease",minWidth:0},eg={padding:"3px 10px",fontSize:11,fontFamily:"var(--font-mono)",border:"1px solid var(--border)",borderRadius:999,cursor:"pointer",transition:"all .12s",lineHeight:1.5},eu={display:"flex",alignItems:"center",gap:14,marginBottom:14,flexWrap:"wrap"},eh={position:"relative",width:280},em={width:"100%",height:34,padding:"0 12px 0 32px",border:"1px solid var(--input-border)",borderRadius:8,background:"var(--input-bg)",fontSize:12.5,color:"var(--foreground)",outline:"none"},ef={display:"inline-flex",flexWrap:"wrap",gap:6},ex={padding:"6px 12px",fontSize:12,fontWeight:500,borderRadius:6,cursor:"pointer",fontFamily:"inherit",display:"inline-flex",alignItems:"center",gap:6,whiteSpace:"nowrap",lineHeight:1.4},ey={background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:12,padding:"18px 22px",display:"grid",gridTemplateColumns:"auto 1fr auto",gap:22,alignItems:"center",transition:"all .15s ease",position:"relative",overflow:"hidden"},eb={position:"absolute",left:0,top:0,bottom:0,width:3,background:"var(--primary)"},ev={width:48,height:48,borderRadius:12,background:"var(--background-secondary)",border:"1px solid var(--card-border)",display:"grid",placeItems:"center",fontWeight:600,fontSize:14,color:"var(--foreground-secondary)",letterSpacing:"0.02em",flexShrink:0},ej={fontSize:16,fontWeight:600,color:"var(--foreground)",letterSpacing:"-0.01em"},ek={display:"inline-flex",alignItems:"center",gap:4,padding:"2px 8px",fontSize:10.5,fontWeight:600,borderRadius:999,lineHeight:1.5,letterSpacing:"0.01em"},eS={...ek,background:"var(--primary)",color:"var(--primary-foreground)"},ew={...ek,background:"var(--success-subtle)",color:"var(--success)"},ez={...ek,background:"var(--warning-subtle)",color:"var(--warning)"},eC={...ek,background:"var(--primary-subtle)",color:"var(--primary)"},eM={...ek,background:"var(--error-subtle)",color:"var(--error)"},eU={...ek,background:"var(--background-secondary)",color:"var(--foreground-secondary)",border:"1px solid var(--border)"},eI={width:5,height:5,background:"var(--success)",borderRadius:"50%"},eW={display:"flex",alignItems:"center",gap:12,flexWrap:"wrap",marginBottom:10,fontSize:12.5,color:"var(--foreground-secondary)"},eR={display:"inline-flex",alignItems:"center",gap:6,minWidth:0},eA={fontSize:10.5,fontWeight:500,color:"var(--foreground-muted)",textTransform:"uppercase",letterSpacing:"0.06em"},eT={color:"var(--foreground)",fontWeight:500,maxWidth:280,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},eL={width:1,height:11,background:"var(--border)"},eB={display:"inline-flex",alignItems:"center",gap:8,padding:"5px 10px",background:"var(--background-secondary)",border:"1px solid var(--border)",borderRadius:7,color:"var(--foreground-secondary)",maxWidth:"fit-content"},eP={display:"flex",alignItems:"center",gap:6,paddingLeft:16,borderLeft:"1px dashed var(--border)"},eD={display:"inline-flex",alignItems:"center",gap:6,padding:"7px 14px",background:"var(--primary)",color:"var(--primary-foreground)",border:"none",borderRadius:8,fontSize:12.5,fontWeight:500,cursor:"pointer",transition:"background .12s ease",lineHeight:1.4},eO={...eD,opacity:.6,cursor:"not-allowed"},eF={display:"inline-flex",alignItems:"center",gap:5,padding:"6px 12px",background:"var(--card-bg)",color:"var(--foreground-secondary)",borderWidth:1,borderStyle:"solid",borderColor:"var(--border)",borderRadius:7,fontSize:12,fontWeight:500,cursor:"pointer",transition:"all .12s ease",lineHeight:1.4},eK={...eF,background:"var(--success-subtle)",color:"var(--success)",borderColor:"var(--success-subtle-border)",cursor:"default"},eq={...eF,color:"var(--foreground-secondary)"},eN={background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:12,padding:"22px 26px"},eE={width:"100%",padding:"8px 10px",background:"var(--input-bg)",border:"1px solid var(--input-border)",borderRadius:7,color:"var(--foreground)",fontSize:12.5,outline:"none"},eH={marginTop:24,padding:"14px 18px",border:"1px dashed var(--border-dark)",borderRadius:10,background:"var(--background-secondary)",display:"flex",alignItems:"center",gap:12},e$={width:30,height:30,borderRadius:8,background:"var(--primary-subtle)",color:"var(--primary)",display:"grid",placeItems:"center",flexShrink:0},eQ={padding:"40px 24px",background:"var(--card-bg)",border:"1px dashed var(--border-dark)",borderRadius:12,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},eG={width:44,height:44,borderRadius:10,background:"var(--background-secondary)",color:"var(--foreground-muted)",display:"grid",placeItems:"center",marginBottom:12},e_=e=>null==e?"":String(e),eY=e=>({key:e.key,input:e_(e.inputTokenPrice),output:e_(e.outputTokenPrice),cacheRead:e_(e.cacheReadInputTokenPrice),cacheCreation:e_(e.cacheCreationInputTokenPrice),ctx:e_(e.contextWindow)});function eV(){let{user:e}=(0,S.useAuth)(),[t,l]=(0,r.useState)(null),[i,a]=(0,r.useState)([]),[s,n]=(0,r.useState)(!0),[d,c]=(0,r.useState)(!1),[p,g]=(0,r.useState)(null),[u,h]=(0,r.useState)(!1),m=(0,r.useCallback)(async()=>{if(e){n(!0),g(null);try{let o=await (0,k.apiFetch)(`/api/modelconfig/pricing?user=${encodeURIComponent(e)}`);if(!o.ok)throw Error(`HTTP ${o.status}`);let t=await o.json();l(t),a(t.custom.map(eY))}catch(e){g({type:"err",text:e instanceof Error?e.message:"加载失败"})}finally{n(!1)}}},[e]);(0,r.useEffect)(()=>{m()},[m]);let f=!!t?.isAdmin,x=(e,o)=>a(t=>t.map((t,r)=>r===e?{...t,...o}:t)),y=(e="")=>a(o=>o.some(o=>o.key.trim()===e&&e)?o:[...o,{key:e,input:"",output:"",cacheRead:"",cacheCreation:"",ctx:""}]),b=async()=>{if(!e)return;let o={};for(let e of i){let t=e.key.trim();t&&(o[t]={inputTokenPrice:e.input,outputTokenPrice:e.output,cacheReadInputTokenPrice:e.cacheRead,cacheCreationInputTokenPrice:e.cacheCreation,contextWindow:e.ctx})}c(!0),g(null);try{let t=await (0,k.apiFetch)(`/api/modelconfig/pricing?user=${encodeURIComponent(e)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({custom:o})}),r=await t.json();if(!t.ok)throw Error(r.error||`HTTP ${t.status}`);g({type:"ok",text:`已保存 ${r.count} 个模型单价`}),await m()}catch(e){g({type:"err",text:e instanceof Error?e.message:"保存失败"})}finally{c(!1)}},v=(t?.observed||[]).filter(e=>!e.hasPricing);return(0,o.jsx)("div",{style:{padding:"0 28px 32px",width:"100%"},children:(0,o.jsx)("div",{style:{maxWidth:1320,margin:"0 auto"},children:(0,o.jsxs)("section",{style:{background:"var(--card-bg)",border:"1px solid var(--card-border)",borderRadius:12},children:[(0,o.jsxs)("div",{style:{padding:"13px 18px",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",gap:10,flexWrap:"wrap"},children:[(0,o.jsx)("span",{style:{fontSize:14,fontWeight:800,color:"var(--foreground)"},children:"模型单价"}),(0,o.jsxs)("span",{style:{fontSize:11,color:"var(--foreground-muted)"},children:["按模型名(前缀)配置 · 单位 ",t?.currency??"USD"," / 百万 token · 用于成本计算"]}),(0,o.jsx)("span",{style:{flex:1}}),!s&&(f?(0,o.jsx)("span",{style:{fontSize:10.5,color:"var(--success)",border:"1px solid var(--success-subtle-border)",background:"var(--success-subtle)",borderRadius:6,padding:"2px 8px"},children:"管理员 · 可编辑"}):(0,o.jsx)("span",{style:{fontSize:10.5,color:"var(--foreground-muted)",border:"1px solid var(--border)",borderRadius:6,padding:"2px 8px"},children:"只读 · 仅管理员可改"}))]}),(0,o.jsxs)("div",{style:{padding:18,display:"flex",flexDirection:"column",gap:16},children:[s&&(0,o.jsx)("div",{style:{color:"var(--foreground-muted)",fontSize:13},children:"加载中…"}),p&&(0,o.jsx)("div",{style:{fontSize:12,color:"ok"===p.type?"var(--success)":"var(--error)"},children:p.text}),!s&&!f&&(0,o.jsxs)("div",{style:{fontSize:11.5,color:"var(--foreground-muted)",background:"var(--background-secondary)",border:"1px solid var(--border)",borderRadius:8,padding:"10px 12px",lineHeight:1.6},children:["模型单价为全局配置,只有管理员可修改。部署时在环境变量 ",(0,o.jsx)("code",{style:{color:"var(--foreground-secondary)"},children:"AGENT_INSIGHT_ADMIN_USERS"}),"(逗号分隔用户名)中加入你的账号即可获得编辑权限。"]}),!s&&v.length>0&&(0,o.jsxs)("div",{children:[(0,o.jsxs)("div",{style:{fontSize:12,fontWeight:700,color:"var(--warning)",marginBottom:8},children:["⚠ 链路中出现但缺单价的模型(",v.length,")——成本按 0 计"]}),(0,o.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:8},children:v.map(e=>(0,o.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6,fontSize:11.5,border:"1px solid var(--warning-subtle-border)",background:"var(--warning-subtle)",color:"var(--foreground-secondary)",borderRadius:7,padding:"3px 8px",fontFamily:"var(--font-mono, monospace)"},children:[e.model,f&&(0,o.jsx)("button",{onClick:()=>y(e.model),style:{border:"none",background:"var(--primary)",color:"#fff",borderRadius:5,fontSize:10.5,padding:"1px 7px",cursor:"pointer"},children:"补价"})]},e.model))})]}),!s&&(0,o.jsx)("div",{style:{overflowX:"auto"},children:(0,o.jsxs)("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:12},children:[(0,o.jsx)("thead",{children:(0,o.jsx)("tr",{children:["模型名(前缀)","input","output","缓存读","缓存写","上下文窗",""].map((e,t)=>(0,o.jsx)("th",{style:{textAlign:0===t?"left":"right",padding:"7px 10px",color:"var(--foreground-muted)",fontWeight:600,borderBottom:"1px solid var(--border)",whiteSpace:"nowrap"},children:e},t))})}),(0,o.jsxs)("tbody",{children:[i.map((e,t)=>(0,o.jsxs)("tr",{children:[(0,o.jsx)(eZ,{children:(0,o.jsx)(eX,{v:e.key,on:e=>x(t,{key:e}),admin:f,w:200,mono:!0,placeholder:"如 GLM-5"})}),(0,o.jsx)(eZ,{right:!0,children:(0,o.jsx)(eX,{v:e.input,on:e=>x(t,{input:e}),admin:f,w:80,num:!0})}),(0,o.jsx)(eZ,{right:!0,children:(0,o.jsx)(eX,{v:e.output,on:e=>x(t,{output:e}),admin:f,w:80,num:!0})}),(0,o.jsx)(eZ,{right:!0,children:(0,o.jsx)(eX,{v:e.cacheRead,on:e=>x(t,{cacheRead:e}),admin:f,w:80,num:!0,placeholder:"—"})}),(0,o.jsx)(eZ,{right:!0,children:(0,o.jsx)(eX,{v:e.cacheCreation,on:e=>x(t,{cacheCreation:e}),admin:f,w:80,num:!0,placeholder:"—"})}),(0,o.jsx)(eZ,{right:!0,children:(0,o.jsx)(eX,{v:e.ctx,on:e=>x(t,{ctx:e}),admin:f,w:90,num:!0,placeholder:"—"})}),(0,o.jsx)(eZ,{right:!0,children:f&&(0,o.jsx)("button",{onClick:()=>a(e=>e.filter((e,o)=>o!==t)),style:{border:"none",background:"transparent",color:"var(--error)",cursor:"pointer",fontSize:12},children:"删除"})})]},t)),0===i.length&&(0,o.jsx)("tr",{children:(0,o.jsxs)("td",{colSpan:7,style:{padding:18,textAlign:"center",color:"var(--foreground-muted)"},children:["暂无自定义单价",f?",点下方「添加模型」或上面缺价模型的「补价」":""]})})]})]})}),f&&!s&&(0,o.jsxs)("div",{style:{display:"flex",gap:10},children:[(0,o.jsx)("button",{onClick:()=>y(),style:e1,children:"+ 添加模型"}),(0,o.jsx)("span",{style:{flex:1}}),(0,o.jsx)("button",{onClick:b,disabled:d,style:{...e0,opacity:d?.6:1},children:d?"保存中…":"保存"})]}),!s&&t&&(0,o.jsxs)("div",{children:[(0,o.jsxs)("button",{onClick:()=>h(e=>!e),style:{border:"none",background:"transparent",color:"var(--primary)",cursor:"pointer",fontSize:11.5,padding:0},children:[u?"▾":"▸"," 内置默认单价(",t.builtin.length,",只读兜底,自定义会覆盖同前缀)"]}),u&&(0,o.jsx)("div",{style:{overflowX:"auto",marginTop:8},children:(0,o.jsxs)("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:11.5},children:[(0,o.jsx)("thead",{children:(0,o.jsx)("tr",{children:["模型名(前缀)","input","output","缓存读","缓存写","上下文窗"].map((e,t)=>(0,o.jsx)("th",{style:{textAlign:0===t?"left":"right",padding:"6px 10px",color:"var(--foreground-muted)",fontWeight:600,borderBottom:"1px solid var(--border)"},children:e},t))})}),(0,o.jsx)("tbody",{children:t.builtin.map(e=>(0,o.jsxs)("tr",{style:{color:"var(--foreground-secondary)"},children:[(0,o.jsx)("td",{style:{padding:"6px 10px",fontFamily:"var(--font-mono, monospace)"},children:e.key}),(0,o.jsx)("td",{style:eJ,children:e.inputTokenPrice}),(0,o.jsx)("td",{style:eJ,children:e.outputTokenPrice}),(0,o.jsx)("td",{style:eJ,children:e.cacheReadInputTokenPrice??"—"}),(0,o.jsx)("td",{style:eJ,children:e.cacheCreationInputTokenPrice??"—"}),(0,o.jsx)("td",{style:eJ,children:e.contextWindow??"—"})]},e.key))})]})})]})]})]})})})}function eZ({children:e,right:t}){return(0,o.jsx)("td",{style:{padding:"5px 10px",borderBottom:"1px solid var(--border)",textAlign:t?"right":"left"},children:e})}function eX({v:e,on:t,admin:r,w:l,num:i,mono:a,placeholder:s}){return r?(0,o.jsx)("input",{value:e,onChange:e=>t(e.target.value),placeholder:s,inputMode:i?"decimal":"text",style:{width:l,maxWidth:"100%",padding:"4px 7px",fontSize:12,textAlign:i?"right":"left",borderRadius:6,border:"1px solid var(--border)",background:"var(--background)",color:"var(--foreground)",fontFamily:a||i?"var(--font-mono, monospace)":void 0}}):(0,o.jsx)("span",{style:{fontFamily:a||i?"var(--font-mono, monospace)":void 0,color:e?"var(--foreground)":"var(--foreground-muted)"},children:e||s||"—"})}let eJ={padding:"6px 10px",textAlign:"right",fontFamily:"var(--font-mono, monospace)"},e0={border:"none",background:"var(--primary)",color:"var(--primary-foreground, #fff)",borderRadius:8,fontSize:12.5,fontWeight:600,padding:"7px 18px",cursor:"pointer"},e1={border:"1px solid var(--border)",background:"var(--card-bg)",color:"var(--foreground-secondary)",borderRadius:8,fontSize:12.5,padding:"7px 14px",cursor:"pointer"};var e2=e.i(460435);function e5(){let{t:e}=(0,w.useLocale)();return(0,o.jsxs)("div",{style:{height:"100%",overflowY:"auto"},children:[(0,o.jsx)(t.AppTopBar,{title:(0,o.jsx)(e2.Term,{id:"model-registry",label:e("nav.modelRegistry")})}),(0,o.jsx)(T,{}),(0,o.jsx)(eV,{})]})}e.s(["default",()=>e5],628867)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,233634,e=>{"use strict";function t(e){!function(e){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",n={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},r={bash:n,environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?:\.\w+)*(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},parameter:{pattern:/(^|\s)-{1,2}(?:\w+:[+-]?)?\w+(?:\.\w+)*(?=[=\s]|$)/,alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:r},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:n}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:r.entity}}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:r.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},n.inside=e.languages.bash;for(var a=["comment","function-name","for-or-select","assign-left","parameter","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],i=r.variable[1].inside,s=0;s<a.length;s++)i[a[s]]=e.languages.bash[a[s]];e.languages.sh=e.languages.bash,e.languages.shell=e.languages.bash}(e)}t.displayName="bash",t.aliases=["sh","shell"],e.s(["default",()=>t])},484755,e=>{"use strict";var t=e.i(860958);function n(e){e.register(t.default),e.languages.go=e.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),e.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete e.languages.go["class-name"]}n.displayName="go",n.aliases=[],e.s(["default",()=>n])},129228,e=>{"use strict";var t=e.i(271645),n=e.i(925949),r=e.i(433369),a=["axis"],i=(0,t.forwardRef)((e,i)=>t.createElement(r.CartesianChart,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:a,tooltipPayloadSearcher:n.arrayTooltipSearcher,categoricalChartProps:e,ref:i}));e.s(["LineChart",()=>i])},823197,e=>{"use strict";class t{constructor(e){var t=e.x,n=e.y;this.xAxisScale=t,this.yAxisScale=n}map(e,t){var n,r,a=t.position;return{x:null!=(n=this.xAxisScale.map(e.x,{position:a}))?n:0,y:null!=(r=this.yAxisScale.map(e.y,{position:a}))?r:0}}mapWithFallback(e,t){var n,r,a,i,s=t.position,o=t.fallback;return a="rangeMin"===o?this.yAxisScale.rangeMin():"rangeMax"===o?this.yAxisScale.rangeMax():0,i="rangeMin"===o?this.xAxisScale.rangeMin():"rangeMax"===o?this.xAxisScale.rangeMax():0,{x:null!=(n=this.xAxisScale.map(e.x,{position:s}))?n:i,y:null!=(r=this.yAxisScale.map(e.y,{position:s}))?r:a}}isInRange(e){var t=e.x,n=e.y,r=null==t||this.xAxisScale.isInRange(t),a=null==n||this.yAxisScale.isInRange(n);return r&&a}}e.s(["CartesianScaleHelperImpl",()=>t])},440435,e=>{"use strict";function t(e){e.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/}}t.displayName="sql",t.aliases=[],e.s(["default",()=>t])},909483,e=>{"use strict";function t(e){e.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},e.languages.webmanifest=e.languages.json}t.displayName="json",t.aliases=["webmanifest"],e.s(["default",()=>t])},182840,e=>{"use strict";function t(e){!function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r="(?:"+n.source+"(?:[ ]+"+t.source+")?|"+t.source+"(?:[ ]+"+n.source+")?)",a=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source}),i=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function s(e,t){return t=(t||"").replace(/m/g,"")+"m",RegExp(/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,function(){return r}).replace(/<<value>>/g,function(){return e}),t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,function(){return r})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,function(){return r}).replace(/<<key>>/g,function(){return"(?:"+a+"|"+i+")"})),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:s(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:s(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:s(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:s(i),lookbehind:!0,greedy:!0},number:{pattern:s(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(e)}t.displayName="yaml",t.aliases=["yml"],e.s(["default",()=>t])},508734,e=>{"use strict";var t=e.i(526347);e.s(["Copy",()=>t.default])},566595,e=>{"use strict";let t=(0,e.i(456420).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["Search",()=>t],566595)},747925,e=>{"use strict";let t=(0,e.i(456420).default)("wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]]);e.s(["Wrench",()=>t],747925)},476472,e=>{"use strict";function t(e){for(var t=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|<self>)*\*\//.source,n=0;n<2;n++)t=t.replace(/<self>/g,function(){return t});t=t.replace(/<self>/g,function(){return/[^\s\S]/.source}),e.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/},e.languages.rust["closure-params"].inside.rest=e.languages.rust,e.languages.rust.attribute.inside.string=e.languages.rust.string}t.displayName="rust",t.aliases=[],e.s(["default",()=>t])},766504,e=>{"use strict";var t=e.i(453687);function n(e){e.register(t.default),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(/<inner>/g,function(){return t}),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var r=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,a=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,function(){return r}),i=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+a+i+"(?:"+a+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+a+i+")(?:"+a+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+a+")"+i+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+a+"$"),inside:{"table-header":{pattern:RegExp(r),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\b|\*\*(?:(?!\*)<inner>|\*(?:(?!\*)<inner>)+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\b|\*(?:(?!\*)<inner>|\*\*(?:(?!\*)<inner>)+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~)<inner>)+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\])<inner>)+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach(function(t){["url","bold","italic","strike","code-snippet"].forEach(function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])})}),e.hooks.add("after-tokenize",function(e){("markdown"===e.language||"md"===e.language)&&function e(t){if(t&&"string"!=typeof t)for(var n=0,r=t.length;n<r;n++){var a=t[n];if("code"!==a.type){e(a.content);continue}var i=a.content[1],s=a.content[3];if(i&&s&&"code-language"===i.type&&"code-block"===s.type&&"string"==typeof i.content){var o=i.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp"),l="language-"+(o=(/[a-z][\w-]*/i.exec(o)||[""])[0].toLowerCase());s.alias?"string"==typeof s.alias?s.alias=[s.alias,l]:s.alias.push(l):s.alias=[l]}}}(e.tokens)}),e.hooks.add("wrap",function(t){if("code-block"===t.type){for(var n="",r=0,a=t.classes.length;r<a;r++){var i=t.classes[r],s=/language-(.+)/.exec(i);if(s){n=s[1];break}}var o=e.languages[n];if(o)t.content=e.highlight(t.content.value,o,n);else if(n&&"none"!==n&&e.plugins.autoloader){var l="md-"+new Date().valueOf()+"-"+Math.floor(1e16*Math.random());t.attributes.id=l,e.plugins.autoloader.loadLanguages(n,function(){var t=document.getElementById(l);t&&(t.innerHTML=e.highlight(t.textContent,e.languages[n],n))})}}}),RegExp(e.languages.markup.tag.pattern.source,"gi"),e.languages.md=e.languages.markdown}(e)}n.displayName="markdown",n.aliases=["md"],e.s(["default",()=>n])},468590,434567,e=>{"use strict";let t=(0,e.i(456420).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);function n(e){if(null==e)return"";if("string"==typeof e)return e;if("number"==typeof e||"boolean"==typeof e)return String(e);if(Array.isArray(e))return e.map(function e(t){if(null==t)return"";if("string"==typeof t)return t;if("number"==typeof t||"boolean"==typeof t)return String(t);if(Array.isArray(t))return t.map(e).filter(Boolean).join("");if("object"==typeof t){if("string"==typeof t.text)return t.text;if("string"==typeof t.content)return t.content;if(Array.isArray(t.content))return e(t.content)}return""}).filter(Boolean).join("");if("object"==typeof e){if("string"==typeof e.text)return e.text;if("string"==typeof e.content)return e.content;if(Array.isArray(e.content))return n(e.content)}return""}function r(e){if(!e||0===e.length)return null;let t=0,r=()=>`n${++t}`,c=e.find(e=>e.agent)?.agent||"Agent",d=i({id:r(),agentName:c,subagentType:null,sessionId:"TOP",parentId:null,depth:0}),p=[],f=new Map;f.set("TOP",d);let g=new Map;for(let t=0;t<e.length;t++){var E,m,h,b;let S,T=e[t];if("system"===T.role){let e={text:n(T.content),sha256:T.system_prompt_sha256,length:T.system_prompt_length,modelID:T.system_prompt_modelID,providerID:T.system_prompt_providerID};if(!e.text)continue;let t=T.subagent_session_id;if(t)if(f.has(t)){let n=f.get(t);n.systemPrompts||(n.systemPrompts=[]),n.systemPrompts.some(t=>e.sha256&&t.sha256===e.sha256||!e.sha256&&t.text===e.text)||n.systemPrompts.push(e)}else g.has(t)||g.set(t,[]),g.get(t).push(e);else d.systemPrompts||(d.systemPrompts=[]),d.systemPrompts.some(t=>e.sha256&&t.sha256===e.sha256||!e.sha256&&t.text===e.text)||d.systemPrompts.push(e);continue}let A="subagent"===T.role&&!!T.subagent_session_id,I=A?T.subagent_session_id:"TOP",N=T.agent||(A?T.subagent_name||"Subagent":c);if(A){let e=function(e){let t=(e.subagent_name||e.agent||"").trim();if(!t)return null;let n=t.match(/^([A-Za-z][\w-]*)/);return n?n[1].toLowerCase():t.toLowerCase()}(T),t=function(e,t){let n=p.findIndex(n=>n.expectedSessionId===e&&(!t||n.subagentType===t));if(n>=0)return p.splice(n,1)[0];if(!t)return;let r=p.findIndex(e=>!e.expectedSessionId&&e.subagentType===t);return r>=0?p.splice(r,1)[0]:void 0}(I,e);if(t){let n=t.parentNode;for(let a of(S=i({id:r(),agentName:N,subagentType:t.subagentType||e,sessionId:I,parentId:n.id,depth:n.depth+1}),t.parallelCount>1&&(S.parallelCallCount=t.parallelCount),n.children.push(S),f.set(I,S),t.spawnEvents))a.spawnedChildId=S.id;null==t.startedAt||S.startedAt||(S.startedAt=t.startedAt),function(e,t){let n=g.get(t);if(n&&n.length){for(let t of(e.systemPrompts||(e.systemPrompts=[]),n))e.systemPrompts.some(e=>t.sha256&&e.sha256===t.sha256||!t.sha256&&e.text===t.text)||e.systemPrompts.push(t);g.delete(t)}}(S,I)}else S=f.get(I)}else S=f.get(I)||d;if(S||(S=d),function(e){if("user"!==e.role&&"opencode"!==e.role&&"subagent"!==e.role||n(e.content).trim())return!1;let t=e.parts;return!!Array.isArray(t)&&0!==t.length&&t.every(e=>"compaction"===(e?.type||"").toLowerCase())}(T))continue;let y=o(T),O=l(T)??y;null!=y&&(!S.startedAt||y<S.startedAt)&&(S.startedAt=y),null!=O&&(!S.endedAt||O>S.endedAt)&&(S.endedAt=O);let R=T.usage;if(R&&(S.stats.inputTokens+=R.input||0,S.stats.outputTokens+=R.output||0,S.stats.cacheReadTokens+=R.cache?.read||0,S.stats.cacheWriteTokens+=R.cache?.write||0,S.stats.reasoningTokens+=R.reasoning||0,S.stats.totalTokens+=R.total||0),"compaction"===(E=T).mode&&!0===E.summary){let e={interactionIndex:t,summaryText:u(T.parts,"text"),reasoningText:u(T.parts,"reasoning")||void 0,modelID:T.modelID,providerID:T.providerID,startedAt:y,completedAt:O,usage:T.usage};S.compactions||(S.compactions=[]),S.compactions.push(e);continue}for(let e of(S.interactionIndices.push(t),S.stats.interactions++,"Agent"===S.agentName&&N&&(S.agentName=N),function(e,t){let r=[],a=o(e),i=l(e),c=n(e.content),d=function(e){let t=[],n=new Map;for(let r of e){let e=function(e){let t=e.id;if("string"==typeof t&&t.trim())return`id:${t.trim()}`;let n=e.function?.name||e.name||"unknown",r=e.function?.arguments??e.arguments??"";return`sig:${n}:${function(e){if(null==e)return"";if("string"==typeof e)return e;try{return JSON.stringify(e)}catch{return String(e)}}(r)}`}(r),a=n.get(e);null==a?(n.set(e,t.length),t.push(r)):t[a]=function(e,t){let n={...e,...t};return void 0!==e.output&&void 0===t.output&&(n.output=e.output),void 0!==e.result&&void 0===t.result&&(n.result=e.result),e.timing&&!t.timing&&(n.timing=e.timing),n}(t[a],r)}return t}(e.tool_calls||[]);"user"===e.role&&c.trim()&&r.push({kind:"user",interaction:e,interactionIndex:t,startedAt:a,completedAt:i,summary:c});let p="assistant"===e.role||"subagent"===e.role||"opencode"===e.role,f=c.trim()?c:u(e.parts,"reasoning");if(0===d.length)return p&&f.trim()&&r.push({kind:"llm",interaction:e,interactionIndex:t,startedAt:a,completedAt:i,summary:f,usage:e.usage}),r;for(let n of(p&&r.push({kind:"llm",interaction:e,interactionIndex:t,startedAt:a,completedAt:i,summary:f,usage:e.usage}),d)){let i,o=n.function?.name||n.name||"unknown",l=n.function?.arguments??n.arguments;if("string"==typeof l)try{i=JSON.parse(l)}catch{i=l}else i=l;let u=o.toLowerCase(),c={kind:"task"===u?"task":"skill"===u||"load_skill"===u||"skill_view"===u||"skill_tool"===u?"skill":"tool",name:o,args:i,output:n.output??n.result,toolCallId:n.id,toolStatus:n.state,interaction:e,interactionIndex:t,startedAt:s(n.timing?.started_at)??a,completedAt:s(n.timing?.completed_at),summary:function(e,t){if(!t||"object"!=typeof t)return e;if("task"===e){let e=t.description||t.subagent_type||"",n=t.subagent_type?`[${t.subagent_type}]`:"";return`task ${n} ${e}`.trim()}return"skill"===e?`skill: ${t.name||""}`:"bash"===e?`bash: ${(t.command||"").slice(0,80)}`:"read"===e?`read: ${t.path||t.file_path||""}`:"write"===e?`write: ${t.path||t.file_path||""}`:"glob"===e?`glob: ${t.pattern||""}`:e}(o,i)};c._toolCallId=n.id,c.splitParallelTask=!!n.trace_split_parallel_task,r.push(c)}return r}(T,t)))if(S.events.push(e),"llm"===e.kind)S.stats.llmCalls++;else if("skill"===e.kind)S.stats.skillCalls++;else if("task"===e.kind){S.stats.taskCalls++;let n=e.args?.subagent_type||e.args?.subagentType;n&&(m=S,h=t,p.push({parentNode:m,subagentType:n,expectedSessionId:a((b=e).args)??a(b.output),startedAt:e.startedAt,spawnEvents:[e],parallelCount:1,parentInteractionIndex:h}))}else"tool"===e.kind&&S.stats.toolCalls++}return function e(t){if(Number.isFinite(t.startedAt)&&Number.isFinite(t.endedAt)){let e=t.endedAt-t.startedAt;t.stats.durationMs=e>=0?e:void 0}for(let n of t.children)e(n)}(d),d}function a(e,t=0){if(null!=e&&!(t>3)){if("string"==typeof e){let n=e.trim();if(!n)return;if(n.startsWith("{")||n.startsWith("["))try{let e=JSON.parse(n),r=a(e,t+1);if(r)return r}catch{}let r=n.match(/\b(?:session_id|sessionId|subagent_session_id|subagentSessionId)\s*[:=]\s*([A-Za-z0-9_.:-]+)/);return r?.[1]}if(Array.isArray(e)){for(let n of e){let e=a(n,t+1);if(e)return e}return}if("object"==typeof e){let n=e.session_id??e.sessionId??e.subagent_session_id??e.subagentSessionId;if("string"==typeof n&&n.trim())return n.trim();for(let n of Object.values(e)){let e=a(n,t+1);if(e)return e}}}}function i(e){return{...e,events:[],children:[],startedAt:void 0,endedAt:void 0,stats:{interactions:0,llmCalls:0,toolCalls:0,skillCalls:0,taskCalls:0,inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheWriteTokens:0,reasoningTokens:0,totalTokens:0,durationMs:void 0},interactionIndices:[]}}function s(e){if(null!=e){if("number"==typeof e&&Number.isFinite(e))return e>0&&e<1e10?1e3*e:e;if("string"==typeof e){let t=e.trim();if(!t)return;if(/^\d+(\.\d+)?$/.test(t)){let e=Number(t);if(!Number.isFinite(e))return;return e>0&&e<1e10?1e3*e:e}let n=Date.parse(t);return Number.isFinite(n)?n:void 0}}}function o(e){return s(e.timeInfo?.created)??s(e.timestamp)}function l(e){return s(e.timeInfo?.completed)}function u(e,t){if(!Array.isArray(e)||0===e.length)return"";let n=[];for(let r of e){if((r?.type||"").toLowerCase()!==t)continue;let e="string"==typeof r?.text?r.text:"";e&&n.push(e)}return n.join("")}function c(e){if(null==e||!Number.isFinite(e)||e<0)return"-";if(e<1e3)return`${Math.round(e)}ms`;let t=Math.floor(e/1e3);if(t<60)return`${(e/1e3).toFixed(+(e<1e4))}s`;let n=Math.floor(t/3600),r=Math.floor(t%3600/60),a=t%60,i=[];return n>0&&i.push(`${n}h`),(r>0||n>0)&&i.push(`${r}m`),(a>0||0===i.length)&&i.push(`${a}s`),i.join(" ")}function d(e){return e?e<1e3?e.toString():e<1e6?`${(e/1e3).toFixed(+(e<1e4))}k`:`${(e/1e6).toFixed(1)}M`:"0"}e.s(["MessageSquare",()=>t],468590),e.s(["buildAgentCallTree",()=>r,"findNode",()=>function e(t,n){if(t.id===n)return t;for(let r of t.children){let t=e(r,n);if(t)return t}return null},"formatDuration",()=>c,"formatTokens",()=>d,"walkTree",()=>function e(t,n){for(let r of(n(t),t.children))e(r,n)}],434567)},96747,e=>{"use strict";var t=e.i(346367);let n=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"],r={0:"�",128:"€",130:"‚",131:"ƒ",132:"„",133:"…",134:"†",135:"‡",136:"ˆ",137:"‰",138:"Š",139:"‹",140:"Œ",142:"Ž",145:"‘",146:"’",147:"“",148:"”",149:"•",150:"–",151:"—",152:"˜",153:"™",154:"š",155:"›",156:"œ",158:"ž",159:"Ÿ"};function a(e){let t="string"==typeof e?e.charCodeAt(0):e;return t>=48&&t<=57}function i(e){let t="string"==typeof e?e.charCodeAt(0):e;return t>=97&&t<=102||t>=65&&t<=70||t>=48&&t<=57}function s(e){let t;return(t="string"==typeof e?e.charCodeAt(0):e)>=97&&t<=122||t>=65&&t<=90||a(e)}var o=e.i(849087);let l=["","Named character references must be terminated by a semicolon","Numeric character references must be terminated by a semicolon","Named character references cannot be empty","Numeric character references cannot be empty","Named character references must be known","Numeric character references cannot be disallowed","Numeric character references cannot be outside the permissible Unicode range"];var u=0,c={},d={util:{type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++u}),e.__id},clone:function e(t,n){var r,a;switch(n=n||{},d.util.type(t)){case"Object":if(n[a=d.util.objId(t)])return n[a];for(var i in r={},n[a]=r,t)t.hasOwnProperty(i)&&(r[i]=e(t[i],n));return r;case"Array":if(n[a=d.util.objId(t)])return n[a];return r=[],n[a]=r,t.forEach(function(t,a){r[a]=e(t,n)}),r;default:return t}}},languages:{plain:c,plaintext:c,text:c,txt:c,extend:function(e,t){var n=d.util.clone(d.languages[e]);for(var r in t)n[r]=t[r];return n},insertBefore:function(e,t,n,r){var a=(r=r||d.languages)[e],i={};for(var s in a)if(a.hasOwnProperty(s)){if(s==t)for(var o in n)n.hasOwnProperty(o)&&(i[o]=n[o]);n.hasOwnProperty(s)||(i[s]=a[s])}var l=r[e];return r[e]=i,d.languages.DFS(d.languages,function(t,n){n===l&&t!=e&&(this[t]=i)}),i},DFS:function e(t,n,r,a){a=a||{};var i=d.util.objId;for(var s in t)if(t.hasOwnProperty(s)){n.call(t,s,t[s],r||s);var o=t[s],l=d.util.type(o);"Object"!==l||a[i(o)]?"Array"!==l||a[i(o)]||(a[i(o)]=!0,e(o,n,s,a)):(a[i(o)]=!0,e(o,n,null,a))}}},plugins:{},highlight:function(e,t,n){var r={code:e,grammar:t,language:n};if(d.hooks.run("before-tokenize",r),!r.grammar)throw Error('The language "'+r.language+'" has no grammar.');return r.tokens=d.tokenize(r.code,r.grammar),d.hooks.run("after-tokenize",r),p.stringify(d.util.encode(r.tokens),r.language)},tokenize:function(e,t){var n=t.rest;if(n){for(var r in n)t[r]=n[r];delete t.rest}var a=new g;return E(a,a.head,e),function e(t,n,r,a,i,s){for(var o in r)if(r.hasOwnProperty(o)&&r[o]){var l=r[o];l=Array.isArray(l)?l:[l];for(var u=0;u<l.length;++u){if(s&&s.cause==o+","+u)return;var c=l[u],g=c.inside,m=!!c.lookbehind,h=!!c.greedy,b=c.alias;if(h&&!c.pattern.global){var S=c.pattern.toString().match(/[imsuy]*$/)[0];c.pattern=RegExp(c.pattern.source,S+"g")}for(var T=c.pattern||c,A=a.next,I=i;A!==n.tail&&(!s||!(I>=s.reach));I+=A.value.length,A=A.next){var N,y=A.value;if(n.length>t.length)return;if(!(y instanceof p)){var O=1;if(h){if(!(N=f(T,I,t,m))||N.index>=t.length)break;var R=N.index,k=N.index+N[0].length,C=I;for(C+=A.value.length;R>=C;)C+=(A=A.next).value.length;if(C-=A.value.length,I=C,A.value instanceof p)continue;for(var L=A;L!==n.tail&&(C<k||"string"==typeof L.value);L=L.next)O++,C+=L.value.length;O--,y=t.slice(I,C),N.index-=I}else if(!(N=f(T,0,y,m)))continue;var R=N.index,_=N[0],v=y.slice(0,R),x=y.slice(R+_.length),D=I+y.length;s&&D>s.reach&&(s.reach=D);var P=A.prev;if(v&&(P=E(n,P,v),I+=v.length),function(e,t,n){for(var r=t.next,a=0;a<n&&r!==e.tail;a++)r=r.next;t.next=r,r.prev=t,e.length-=a}(n,P,O),A=E(n,P,new p(o,g?d.tokenize(_,g):_,b,_)),x&&E(n,A,x),O>1){var w={cause:o+","+u,reach:D};e(t,n,r,A.prev,I,w),s&&w.reach>s.reach&&(s.reach=w.reach)}}}}}}(e,a,t,a.head,0),function(e){for(var t=[],n=e.head.next;n!==e.tail;)t.push(n.value),n=n.next;return t}(a)},hooks:{all:{},add:function(e,t){var n=d.hooks.all;n[e]=n[e]||[],n[e].push(t)},run:function(e,t){var n=d.hooks.all[e];if(n&&n.length)for(var r,a=0;r=n[a++];)r(t)}},Token:p};function p(e,t,n,r){this.type=e,this.content=t,this.alias=n,this.length=0|(r||"").length}function f(e,t,n,r){e.lastIndex=t;var a=e.exec(n);if(a&&r&&a[1]){var i=a[1].length;a.index+=i,a[0]=a[0].slice(i)}return a}function g(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function E(e,t,n){var r=t.next,a={value:n,prev:t,next:r};return t.next=a,r.prev=a,e.length++,a}function m(){}m.prototype=d;let h=new m;h.highlight=function(e,t){let n,r;if("string"!=typeof e)throw TypeError("Expected `string` for `value`, got `"+e+"`");if(t&&"object"==typeof t)n=t;else{if("string"!=typeof(r=t))throw TypeError("Expected `string` for `name`, got `"+r+"`");if(Object.hasOwn(h.languages,r))n=h.languages[r];else throw Error("Unknown language: `"+r+"` is not registered")}return{type:"root",children:d.highlight.call(h,e,n,r)}},h.register=function(e){if("function"!=typeof e||!e.displayName)throw Error("Expected `function` for `syntax`, got `"+e+"`");Object.hasOwn(h.languages,e.displayName)||e(h)},h.alias=function(e,t){let n,r=h.languages,a={};for(n in"string"==typeof e?t&&(a[e]=t):a=e,a)if(Object.hasOwn(a,n)){let e=a[n],t="string"==typeof e?[e]:e,i=-1;for(;++i<t.length;)r[t[i]]=r[n]}},h.registered=function(e){if("string"!=typeof e)throw TypeError("Expected `string` for `aliasOrLanguage`, got `"+e+"`");return Object.hasOwn(h.languages,e)},h.listLanguages=function(){let e,t=h.languages,n=[];for(e in t)Object.hasOwn(t,e)&&"object"==typeof t[e]&&n.push(e);return n},h.util.encode=function(e){return e},h.Token.stringify=function e(u,c){if("string"==typeof u)return{type:"text",value:u};if(Array.isArray(u)){let t=[],n=-1;for(;++n<u.length;)null!==u[n]&&void 0!==u[n]&&""!==u[n]&&t.push(e(u[n],c));return t}let d={attributes:{},classes:["token",u.type],content:e(u.content,c),language:c,tag:"span",type:u.type};return u.alias&&d.classes.push(..."string"==typeof u.alias?[u.alias]:u.alias),h.hooks.run("wrap",d),(0,t.h)(d.tag+"."+d.classes.join("."),function(e){let t;for(t in e)Object.hasOwn(e,t)&&(e[t]=function(e,t){let u,c,d,p={},f="string"==typeof p.additional?p.additional.charCodeAt(0):p.additional,g=[],E=0,m=-1,h="";p.position&&("start"in p.position||"indent"in p.position?(c=p.position.indent,u=p.position.start):u=p.position);let b=(u?u.line:0)||1,S=(u?u.column:0)||1,T=N();for(E--;++E<=e.length;)if(10===d&&(S=(c?c[m]:0)||1),38===(d=e.charCodeAt(E))){let t,l=e.charCodeAt(E+1);if(9===l||10===l||12===l||32===l||38===l||60===l||Number.isNaN(l)||f&&l===f){h+=String.fromCharCode(d),S++;continue}let u=E+1,c=u,m=u;if(35===l){m=++c;let n=e.charCodeAt(m);88===n||120===n?(t="hexadecimal",m=++c):t="decimal"}else t="named";let b="",R="",k="",C="named"===t?s:"decimal"===t?a:i;for(m--;++m<=e.length;){let r=e.charCodeAt(m);if(!C(r))break;k+=String.fromCharCode(r),"named"===t&&n.includes(k)&&(b=k,R=(0,o.decodeNamedCharacterReference)(k))}let L=59===e.charCodeAt(m);if(L){m++;let e="named"===t&&(0,o.decodeNamedCharacterReference)(k);e&&(b=k,R=e)}let _=1+m-u,v="";if(L||!1!==p.nonTerminated)if(k)if("named"===t){if(L&&!R)y(5,1);else if(b!==k&&(_=1+(m=c+b.length)-c,L=!1),!L){let t=b?1:3;if(p.attribute){let n=e.charCodeAt(m);61===n?(y(t,_),R=""):s(n)?R="":y(t,_)}else y(t,_)}v=R}else{var A,I;L||y(2,_);let e=Number.parseInt(k,"hexadecimal"===t?16:10);if((A=e)>=55296&&A<=57343||A>1114111)y(7,_),v=String.fromCharCode(65533);else if(e in r)y(6,_),v=r[e];else{let t="";((I=e)>=1&&I<=8||11===I||I>=13&&I<=31||I>=127&&I<=159||I>=64976&&I<=65007||(65535&I)==65535||(65535&I)==65534)&&y(6,_),e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10|55296),e=56320|1023&e),v=t+String.fromCharCode(e)}}else"named"!==t&&y(4,_);if(v){O(),T=N(),E=m-1,S+=m-u+1,g.push(v);let t=N();t.offset++,p.reference&&p.reference.call(p.referenceContext||void 0,v,{start:T,end:t},e.slice(u-1,m)),T=t}else k=e.slice(u-1,m),h+=k,S+=k.length,E=m-1}else 10===d&&(b++,m++,S=0),Number.isNaN(d)?O():(h+=String.fromCharCode(d),S++);return g.join("");function N(){return{line:b,column:S,offset:E+((u?u.offset:0)||0)}}function y(e,t){let n;p.warning&&(n=N(),n.column+=t,n.offset+=t,p.warning.call(p.warningContext||void 0,l[e],n,e))}function O(){h&&(g.push(h),p.text&&p.text.call(p.textContext||void 0,h,{start:T,end:N()}),h="")}}(e[t]));return e}(d.attributes),d.content)},e.s(["refractor",0,h],96747)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,716327,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>t],716327)},867927,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],867927)},632781,e=>{"use strict";let t=(0,e.i(456420).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["Loader2",()=>t],632781)},129228,e=>{"use strict";var t=e.i(271645),a=e.i(925949),r=e.i(433369),s=["axis"],n=(0,t.forwardRef)((e,n)=>t.createElement(r.CartesianChart,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:s,tooltipPayloadSearcher:a.arrayTooltipSearcher,categoricalChartProps:e,ref:n}));e.s(["LineChart",()=>n])},980799,e=>{"use strict";let t=(0,e.i(456420).default)("tag",[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]]);e.s(["Tag",()=>t],980799)},779432,e=>{"use strict";let t=(0,e.i(456420).default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);e.s(["Activity",()=>t],779432)},708511,570059,e=>{"use strict";var t=e.i(843476),a=e.i(975157);let r={default:"w-full px-6 py-6",wide:"w-full px-8 py-6",canvas:"w-full p-0"};function s({variant:e="default",className:s,children:n}){return(0,t.jsx)("div",{className:(0,a.cn)("flex-1 flex flex-col min-h-0 overflow-y-auto",r[e],s),children:n})}function n({title:e,description:r,actions:s,className:n}){return(0,t.jsxs)("div",{className:(0,a.cn)("flex items-start justify-between gap-4 mb-4",n),children:[(0,t.jsxs)("div",{className:"min-w-0 space-y-1",children:[(0,t.jsx)("h1",{className:"text-xl font-semibold text-foreground truncate",children:e}),r&&(0,t.jsx)("p",{className:"text-sm text-foreground-muted",children:r})]}),s&&(0,t.jsx)("div",{className:"flex items-center gap-2 shrink-0",children:s})]})}function l({className:e,children:r}){return(0,t.jsx)("div",{className:(0,a.cn)("flex flex-wrap items-center gap-2 mb-3",e),children:r})}function o({className:e,children:r}){return(0,t.jsx)("div",{className:(0,a.cn)("flex-1 min-h-0",e),children:r})}function i({className:e,children:r}){return(0,t.jsx)("div",{className:(0,a.cn)("flex items-center justify-between gap-3 mt-4 pt-3 border-t border-border",e),children:r})}e.s(["PageContainer",()=>s,"PageContent",()=>o,"PageFooter",()=>i,"PageHeader",()=>n,"PageToolbar",()=>l],708511);let c=(0,e.i(456420).default)("inbox",[["polyline",{points:"22 12 16 12 14 15 10 15 8 12 2 12",key:"o97t9d"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}]]);function d({icon:e=c,title:r,description:s,action:n,className:l}){return(0,t.jsxs)("div",{className:(0,a.cn)("flex flex-col items-center justify-center gap-3 text-center py-12 px-6","text-foreground-muted",l),children:[(0,t.jsx)("div",{className:"size-10 rounded-full bg-background-secondary text-foreground-muted flex items-center justify-center",children:(0,t.jsx)(e,{className:"size-5","aria-hidden":!0})}),(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("p",{className:"text-base font-semibold text-foreground",children:r}),s&&(0,t.jsx)("p",{className:"text-sm text-foreground-muted max-w-md",children:s})]}),n&&(0,t.jsx)("div",{className:"pt-1",children:n})]})}e.s(["EmptyState",()=>d],570059)},762368,e=>{"use strict";let t=(0,e.i(456420).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);e.s(["Download",()=>t],762368)},511811,e=>{"use strict";var t=e.i(167225),a=e.i(843476),r=e.i(522016),s=e.i(271645),n=e.i(779432);let l=(0,e.i(456420).default)("chart-column",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]]);var o=e.i(762368),i=e.i(632781),c=e.i(980799),d=e.i(872526),u=e.i(555706),m=e.i(129228),x=e.i(731195),h=e.i(234239),g=e.i(785183),p=e.i(93230),b=e.i(846696),f=e.i(540568),v=e.i(708511),j=e.i(519455),y=e.i(967489),w=e.i(570059),N=e.i(927643),k=e.i(183752),T=e.i(726526),C=e.i(975157);let S=t.default.env.NEXT_PUBLIC_URL_PREFIX||"";function A(e){return[{value:"1h",label:e.last1h},{value:"1d",label:e.last1d},{value:"7d",label:e.last7d},{value:"30d",label:e.last30d},{value:"all",label:e.allTime}]}function F(e){return null!=e&&Number.isFinite(e)?e<=1?100*e:e:null}function L(e){return"accuracy"===e?"var(--success)":"tokens"===e?"var(--warning)":"latency"===e?"#0ea5e9":"#14b8a6"}function q(e){if(!Number.isFinite(e))return"-";let t=Math.abs(e),a=e=>e.endsWith(".0")?e.slice(0,-2):e;return t>=1e6?a((e/1e6).toFixed(t>=1e7?0:1))+"M":t>=1e3?a((e/1e3).toFixed(t>=1e5?0:1))+"k":Math.round(e).toLocaleString()}function D(e){return Number.isFinite(e)?e<1?Math.round(1e3*e).toLocaleString()+"ms":e<60?e.toFixed(+(e<10))+"s":(e/60).toFixed(+(e<600))+"m":"-"}function R(e){return Number.isFinite(e)?"$"+e.toFixed(e<.01?5:4):"-"}function H(e,t){if(!Number.isFinite(e))return"";switch(t){case"accuracy":return Math.round(e).toLocaleString()+"%";case"tokens":return q(e);case"latency":return D(e);case"cost":return R(e)}}function z(e,t,a){if(null==e||!Number.isFinite(e))return"-";switch(t){case"accuracy":return String((F(e)??0).toFixed(1))+"%";case"tokens":return q(e);case"latency":return D(e);case"cost":return R(e)}}function E(e){return null!=e&&Number.isFinite(e)?`${(100*e).toFixed(0)}%`:"-"}function M(e){if(!e)return"-";let t=new Date(e);return Number.isFinite(t.getTime())?`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")} ${String(t.getHours()).padStart(2,"0")}:${String(t.getMinutes()).padStart(2,"0")}`:"-"}async function $(e,t){try{let a=await e.json();return String(a?.error||t)}catch{return t}}function P(){let{user:e}=(0,N.useAuth)(),{locale:t}=(0,T.useLocale)(),q=t.toLowerCase().startsWith("zh")?{title:"版本分析",subtitle:"按版本标签聚合 root Trace,对比质量、成本和性能指标",manageTags:"版本管理",exportData:"导出数据",exportEmpty:"没有可导出的版本分析数据",agent:"Agent",framework:"框架",window:"时间窗口",question:"问题",metric:"指标",all:"全部",allQuestions:"全部问题(聚合)",allAgents:"全部 Agent",allFrameworks:"全部框架",last1h:"近 1 时",last1d:"近 1 天",last7d:"近 7 天",last30d:"近 30 天",allTime:"全部时间",accuracy:"准确率",tokens:"平均 Token",latency:"p95 时延",cost:"单次成本",overview:"版本总览",versionTagCount:"版本标签",traceTotal:"Trace 总数",availableTags:"可用标签",currentWindow:"当前时间窗口",compareChartAll:"跨版本指标演进 · 全部问题",compareChartQuestion:"跨版本指标演进 · 单问题",compareTableAll:"版本对比明细 · 全部问题",compareTableQuestion:"版本对比明细 · 单问题",compareTableHint:"按版本名排序",detailOverview:"单版本指标概览",detailChartTitle:"版本内 Trace 指标趋势",detailChartHint:"每个点=一条 Trace;点击可进入 Trace 详情;警告色=未完成 Trace。",openTraceHint:"点击节点可在新页面打开 Trace 详情",compare:"版本对比",detail:"版本详情",compareObject:"对比对象",compareHint:"全部聚合 / 下钻单问题",questions:"问题覆盖",traces:"Trace 明细",traceCount:"Trace 数",scoreCoverage:"评分覆盖率",runSuccessRate:"运行成功率",noTagsTitle:"还没有版本标签",noTagsDesc:"先在版本管理中新建版本标签,再从链路追踪给 Trace 打标。",noTraceTitle:"当前筛选下没有已打版本标签的 Trace",noTraceDesc:"调整筛选条件,或先在链路追踪中给 Trace 绑定版本标签。",loadFailed:"加载版本分析失败",detailFailed:"加载版本详情失败",derivedHint:"口径:只统计 root Trace;准确率来自 Execution.answerScore;运行成功率由 Trace 完成状态派生,不是独立存储字段。版本分析暂不支持业务标签二次过滤。",selected:"版本标签",description:"说明",noDesc:"无说明",created:"创建时间",query:"任务",time:"时间",status:"状态",viewTrace:"查看 Trace",running:"运行中",success:"成功",loading:"加载中...",chartHint:"曲线节点可点击;版本对比节点进入版本详情,版本详情节点进入 Trace 详情。"}:{title:"Version Analysis",subtitle:"Compare root traces grouped by version tags across quality and cost metrics",manageTags:"Manage tags",exportData:"Export data",exportEmpty:"No version analysis data to export",agent:"Agent",framework:"Framework",window:"Window",question:"Question",metric:"Metric",all:"All",allQuestions:"All questions",allAgents:"All agents",allFrameworks:"All frameworks",last1h:"Last 1h",last1d:"Last 1d",last7d:"Last 7d",last30d:"Last 30d",allTime:"All time",accuracy:"Accuracy",tokens:"Avg tokens",latency:"P95 latency",cost:"Avg cost",overview:"Version overview",versionTagCount:"Version tags",traceTotal:"Total traces",availableTags:"Available tags",currentWindow:"Current window",compareChartAll:"Cross-version metric trend · All questions",compareChartQuestion:"Cross-version metric trend · Single question",compareTableAll:"Version comparison details · All questions",compareTableQuestion:"Version comparison details · Single question",compareTableHint:"Sorted by version name",detailOverview:"Single-version metric overview",detailChartTitle:"In-version trace metric trend",detailChartHint:"Each point is one Trace; click to open Trace detail; warning color marks unfinished Trace.",openTraceHint:"Click a node to open Trace detail in a new page",compare:"Version comparison",detail:"Version detail",compareObject:"Compare object",compareHint:"Aggregate / drill into one question",questions:"Question coverage",traces:"Trace details",traceCount:"Traces",scoreCoverage:"Score coverage",runSuccessRate:"Run success rate",noTagsTitle:"No version tags yet",noTagsDesc:"Create version tags, then attach them to traces from Trace.",noTraceTitle:"No tagged traces match the current filters",noTraceDesc:"Adjust filters or attach version tags from Trace first.",loadFailed:"Failed to load version analysis",detailFailed:"Failed to load version detail",derivedHint:"Run success rate is derived from trace completion state. Accuracy uses Execution.answerScore with coverage shown.",selected:"Version tag",description:"Description",noDesc:"No description",created:"Created",query:"Task",time:"Time",status:"Status",viewTrace:"View trace",running:"Running",success:"Success",loading:"Loading...",chartHint:"Chart nodes are clickable: comparison nodes open version detail, detail nodes open Trace."},[D,R]=(0,s.useState)("compare"),[P,V]=(0,s.useState)("all"),[G,X]=(0,s.useState)("all"),[Y,J]=(0,s.useState)("7d"),[Z,ee]=(0,s.useState)("all"),[et,ea]=(0,s.useState)("tokens"),[er,es]=(0,s.useState)([]),[en,el]=(0,s.useState)([]),[eo,ei]=(0,s.useState)(null),[ec,ed]=(0,s.useState)(null),[eu,em]=(0,s.useState)(null),[ex,eh]=(0,s.useState)(!1),[eg,ep]=(0,s.useState)(!1),eb=(0,s.useCallback)((t=!0)=>{let a=new URLSearchParams;e&&a.set("user",e),"all"!==P&&a.set("agent",P),"all"!==G&&a.set("framework",G);let r=function(e){if("all"===e)return{};let t=new Date;return{from:new Date(t.getTime()-36e5*("1h"===e?1:"1d"===e?24:"7d"===e?168:720)).toISOString(),to:t.toISOString()}}(Y);return r.from&&a.set("from",r.from),r.to&&a.set("to",r.to),t&&"all"!==Z&&a.set("questionKey",Z),a},[P,G,Z,e,Y]);(0,s.useEffect)(()=>{e&&((0,k.apiFetch)(`/api/quality/agents?user=${encodeURIComponent(e)}`).then(e=>e.ok?e.json():Promise.reject(e)).then(e=>es(Array.isArray(e?.agents)?e.agents:[])).catch(()=>es([])),(0,k.apiFetch)(`/api/observe/data?user=${encodeURIComponent(e)}&facet=values&column=framework`).then(e=>e.ok?e.json():Promise.reject(e)).then(e=>el(Array.isArray(e)?e:[])).catch(()=>el([])))},[e]);let ef=(0,s.useCallback)(async()=>{if(e){eh(!0);try{let e=await (0,k.apiFetch)(`/api/observe/version-analysis/compare?${eb().toString()}`);if(!e.ok)throw Error(await $(e,q.loadFailed));let t=await e.json();ei(t)}catch(e){b.toast.error(e?.message||q.loadFailed),ei(null)}finally{eh(!1)}}},[eb,q.loadFailed,e]);(0,s.useEffect)(()=>{ef()},[ef]),(0,s.useEffect)(()=>{eo?.versions.length?eu&&eo.versions.some(e=>e.tag.id===eu)||em((eo.versions.find(e=>e.traceCount>0)??eo.versions[0]).tag.id):em(null)},[eo,eu]),(0,s.useEffect)(()=>{if(!e||!eu)return void ed(null);let t=!0;ep(!0);let a=eb(!1);return a.set("limit","100"),(0,k.apiFetch)(`/api/observe/version-analysis/tags/${encodeURIComponent(eu)}/traces?${a.toString()}`).then(async e=>{if(!e.ok)throw Error(await $(e,q.detailFailed));return e.json()}).then(e=>{t&&ed(e)}).catch(e=>{t&&(b.toast.error(e?.message||q.detailFailed),ed(null))}).finally(()=>{t&&ep(!1)}),()=>{t=!1}},[eb,q.detailFailed,eu,e]);let ev=(0,s.useMemo)(()=>[{value:"all",label:q.allAgents},...er.map(e=>({value:e.name,label:`${e.name}${e.traceCount?` (${e.traceCount})`:""}`}))],[er,q.allAgents]),ej=(0,s.useMemo)(()=>[{value:"all",label:q.allFrameworks},...en.map(e=>({value:e.value,label:`${e.value} (${e.count})`}))],[q.allFrameworks,en]);(0,s.useMemo)(()=>[{value:"all",label:q.allQuestions},...(eo?.questions??[]).slice(0,80).map(e=>({value:e.key,label:`${e.label} (${e.traceCount})`}))],[q.allQuestions,eo?.questions]);let ey=eo?.versions??[],ew=eo?.summary??null,eN=A(q).find(e=>e.value===Y)?.label??q.allTime,ek=ew?[{label:q.versionTagCount,value:ew.versionTagCount.toLocaleString(),detail:q.availableTags,tone:"var(--foreground)"},{label:q.traceTotal,value:ew.traceCount.toLocaleString(),detail:eN,tone:"var(--foreground)"},{label:q.accuracy,value:z(ew.answerScoreAvg,"accuracy",t),detail:q.currentWindow,tone:"var(--success)"},{label:q.tokens,value:z(ew.avgTokens,"tokens",t),detail:q.currentWindow,tone:"var(--warning)"},{label:q.latency,value:z(ew.p95LatencySec,"latency",t),detail:q.currentWindow,tone:"#0ea5e9"},{label:q.cost,value:z(ew.avgCost,"cost",t),detail:q.currentWindow,tone:"#14b8a6"}]:[],eT=(0,s.useMemo)(()=>ey.map(e=>({value:e.tag.id,label:e.tag.name+(e.traceCount?" ("+e.traceCount.toLocaleString()+")":"")})),[ey]),eC=ey.length>0,eS=ey.some(e=>e.traceCount>0),eA=ey.find(e=>e.tag.id===eu)??null,eF=ey.map(e=>({id:e.tag.id,name:e.tag.name,color:e.tag.color,value:function(e,t){switch(t){case"accuracy":return F(e.answerScoreAvg);case"tokens":return e.avgTokens;case"latency":return e.p95LatencySec;case"cost":return e.avgCost}}(e,et),traceCount:e.traceCount})),eL=(ec?.traces??[]).slice().reverse().map((e,t)=>({index:t+1,value:function(e,t){switch(t){case"accuracy":return F(e.answerScore);case"tokens":return e.tokens;case"latency":return e.latencySec;case"cost":return e.cost}}(e,et),status:e.traceStatus,label:M(e.timestamp),query:e.query,answerScore:e.answerScore,tokens:e.tokens,latencySec:e.latencySec,cost:e.cost,traceHref:S+"/trace?taskId="+encodeURIComponent(e.taskId||e.id)})),eq=(0,s.useCallback)(()=>{if(!eo)return void b.toast.error(q.exportEmpty);let e={exportedAt:new Date().toISOString(),filters:{agent:P,framework:G,window:Y,questionKey:Z,metric:et},versions:eo.versions,questions:eo.questions,selectedVersion:eA,selectedVersionDetails:ec},t=new Blob([JSON.stringify(e,null,2)],{type:"application/json;charset=utf-8"}),a=URL.createObjectURL(t),r=document.createElement("a"),s=e.exportedAt.replace(/[:.]/g,"-");r.href=a,r.download="version-analysis-"+s+".json",document.body.appendChild(r),r.click(),r.remove(),URL.revokeObjectURL(a)},[P,q.exportEmpty,eo,ec,G,et,Z,eA,Y]);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(f.AppTopBar,{title:q.title,showDefaultActions:!1}),(0,a.jsxs)(v.PageContainer,{variant:"wide",className:"bg-background",children:[(0,a.jsx)(v.PageHeader,{title:q.title,description:q.subtitle,actions:(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsxs)(j.Button,{variant:"outline",size:"sm",onClick:eq,disabled:!eo||ex,children:[(0,a.jsx)(o.Download,{className:"size-4"}),q.exportData]}),(0,a.jsx)(j.Button,{variant:"outline",size:"sm",asChild:!0,children:(0,a.jsxs)(r.default,{href:S+"/version-management",children:[(0,a.jsx)(c.Tag,{className:"size-4"}),q.manageTags]})})]})}),(0,a.jsxs)(v.PageToolbar,{className:"items-center",children:[(0,a.jsx)(y.Select,{value:P,onChange:V,options:ev,label:q.agent,active:"all"!==P}),(0,a.jsx)(y.Select,{value:G,onChange:X,options:ej,label:q.framework,active:"all"!==G}),(0,a.jsx)(y.Select,{value:Y,onChange:J,options:A(q),label:q.window,active:"7d"!==Y})]}),ek.length>0&&(0,a.jsx)("section",{className:"mb-4 grid gap-3 sm:grid-cols-2 xl:grid-cols-6","aria-label":q.overview,children:ek.map(e=>(0,a.jsx)(O,{label:e.label,value:e.value,detail:e.detail,tone:e.tone},e.label))}),ex&&!eo?(0,a.jsxs)("div",{className:"flex items-center justify-center gap-2 py-16 text-sm text-foreground-muted",children:[(0,a.jsx)(i.Loader2,{className:"size-4 animate-spin"}),q.loading]}):eC?eS?(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"inline-flex rounded-md border border-border bg-background p-1 shadow-sm",children:[(0,a.jsxs)("button",{type:"button",onClick:()=>R("compare"),className:(0,C.cn)("inline-flex h-8 items-center gap-2 rounded-sm px-3 text-sm font-medium text-foreground-muted hover:text-foreground","compare"===D&&"bg-primary text-primary-foreground shadow-sm hover:text-primary-foreground"),children:[(0,a.jsx)(l,{className:"size-4"}),q.compare]}),(0,a.jsxs)("button",{type:"button",onClick:()=>R("detail"),className:(0,C.cn)("inline-flex h-8 items-center gap-2 rounded-sm px-3 text-sm font-medium text-foreground-muted hover:text-foreground","detail"===D&&"bg-primary text-primary-foreground shadow-sm hover:text-primary-foreground"),children:[(0,a.jsx)(n.Activity,{className:"size-4"}),q.detail]})]}),(0,a.jsxs)("div",{className:(0,C.cn)("grid gap-4","compare"===D?"xl:grid-cols-[minmax(280px,340px)_minmax(0,1fr)]":"xl:grid-cols-1"),children:[(0,a.jsxs)("section",{className:(0,C.cn)("rounded-md border border-border bg-card overflow-hidden","compare"!==D&&"hidden"),children:[(0,a.jsxs)("div",{className:"border-b border-border px-4 py-3",children:[(0,a.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:q.compareObject}),(0,a.jsx)("p",{className:"mt-1 text-xs text-foreground-muted",children:q.compareHint})]}),(0,a.jsxs)("div",{className:"max-h-[520px] overflow-y-auto p-2",children:[(0,a.jsxs)("button",{type:"button",onClick:()=>ee("all"),className:(0,C.cn)("mb-1 flex w-full items-start justify-between gap-3 rounded-md px-3 py-2 text-left text-sm hover:bg-background-secondary","all"===Z&&"bg-primary-subtle text-primary"),children:[(0,a.jsx)("span",{className:"font-medium text-foreground-secondary",children:q.allQuestions}),(0,a.jsx)("span",{className:"text-xs text-foreground-muted",children:eo?.questions.length??0})]}),(0,a.jsx)("div",{className:"my-2 h-px bg-border"}),(eo?.questions??[]).slice(0,80).map(e=>(0,a.jsxs)("button",{type:"button",onClick:()=>ee(e.key),className:(0,C.cn)("mb-1 flex w-full items-start justify-between gap-3 rounded-md px-3 py-2 text-left text-sm hover:bg-background-secondary",Z===e.key&&"bg-primary-subtle text-primary"),children:[(0,a.jsx)("span",{className:"line-clamp-2 min-w-0 text-foreground-secondary",children:e.label}),(0,a.jsx)("span",{className:"shrink-0 text-xs tabular-nums text-foreground-muted",children:e.traceCount})]},e.key))]})]}),(0,a.jsxs)("div",{className:(0,C.cn)("space-y-4 min-w-0","compare"!==D&&"hidden"),children:[(0,a.jsxs)("section",{className:"rounded-md border border-border bg-card p-4",children:[(0,a.jsxs)("div",{className:"mb-3 flex flex-wrap items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:"all"===Z?q.compareChartAll:q.compareChartQuestion}),(0,a.jsxs)("p",{className:"mt-1 text-xs text-foreground-muted",children:[q.traceCount,": ",ey.reduce((e,t)=>e+t.traceCount,0).toLocaleString()]})]}),(0,a.jsx)(I,{value:et,onChange:ea,copy:q})]}),(0,a.jsx)("div",{className:"h-72 min-w-0",children:(0,a.jsx)(x.ResponsiveContainer,{width:"100%",height:"100%",children:(0,a.jsxs)(m.LineChart,{data:eF,margin:{top:14,right:18,bottom:4,left:-4},onClick:e=>{let t=e?.activePayload?.[0]?.payload?.id;t&&(em(t),R("detail"))},children:[(0,a.jsx)("defs",{children:(0,a.jsxs)("linearGradient",{id:"versionCompareFill",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,a.jsx)("stop",{offset:"0%",stopColor:L(et),stopOpacity:"0.18"}),(0,a.jsx)("stop",{offset:"100%",stopColor:L(et),stopOpacity:"0.02"})]})}),(0,a.jsx)(d.CartesianGrid,{stroke:"var(--border)",strokeDasharray:"3 3",vertical:!1}),(0,a.jsx)(g.XAxis,{dataKey:"name",tick:{fontSize:11,fill:"var(--foreground-muted)"},interval:0,minTickGap:8}),(0,a.jsx)(p.YAxis,{tick:{fontSize:11,fill:"var(--foreground-muted)"},tickFormatter:e=>H(Number(e),et),width:64}),(0,a.jsx)(h.Tooltip,{cursor:{stroke:"var(--border-dark)",strokeDasharray:"4 4"},formatter:e=>[z(Number(e),et,t),q[et]],labelStyle:{color:"var(--foreground)"},contentStyle:{background:"var(--card-bg)",border:"1px solid var(--border)",borderRadius:6,color:"var(--foreground)"}}),(0,a.jsx)(u.Line,{type:"monotone",dataKey:"value",stroke:L(et),strokeWidth:2.8,dot:{r:4,strokeWidth:2,stroke:"var(--card-bg)",fill:L(et)},activeDot:{r:6},connectNulls:!0})]})})})]}),(0,a.jsxs)("section",{className:"rounded-md border border-border bg-card overflow-hidden",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3 border-b border-border px-4 py-3",children:[(0,a.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:"all"===Z?q.compareTableAll:q.compareTableQuestion}),(0,a.jsx)("span",{className:"text-xs text-foreground-muted",children:q.compareTableHint})]}),(0,a.jsx)("div",{className:"overflow-x-auto",children:(0,a.jsxs)("table",{className:"w-full min-w-[760px] text-sm",children:[(0,a.jsx)("thead",{className:"bg-background-secondary text-xs text-foreground-muted",children:(0,a.jsxs)("tr",{children:[(0,a.jsx)(K,{children:q.selected}),(0,a.jsx)(K,{children:q.description}),(0,a.jsx)(K,{children:q.traceCount}),(0,a.jsx)(K,{children:q.accuracy}),(0,a.jsx)(K,{children:q.scoreCoverage}),(0,a.jsx)(K,{children:q.runSuccessRate}),(0,a.jsx)(K,{children:q.tokens}),(0,a.jsx)(K,{children:q.latency}),(0,a.jsx)(K,{children:q.cost})]})}),(0,a.jsx)("tbody",{children:ey.map(e=>(0,a.jsxs)("tr",{onClick:()=>em(e.tag.id),className:(0,C.cn)("cursor-pointer border-t border-border hover:bg-background-secondary",eu===e.tag.id&&"bg-primary-subtle"),children:[(0,a.jsx)(_,{children:(0,a.jsxs)("span",{className:"inline-flex max-w-[240px] items-center gap-2 truncate font-medium text-foreground",children:[(0,a.jsx)("span",{className:"size-2.5 rounded-full",style:{backgroundColor:e.tag.color}}),(0,a.jsx)("span",{className:"truncate",children:e.tag.name})]})}),(0,a.jsx)(_,{children:(0,a.jsx)("span",{className:"line-clamp-2 max-w-[260px]",children:e.tag.description||q.noDesc})}),(0,a.jsx)(_,{children:e.traceCount.toLocaleString()}),(0,a.jsx)(_,{children:z(e.answerScoreAvg,"accuracy",t)}),(0,a.jsx)(_,{children:E(e.answerScoreCoverage)}),(0,a.jsx)(_,{children:E(e.runSuccessRate)}),(0,a.jsx)(_,{children:z(e.avgTokens,"tokens",t)}),(0,a.jsx)(_,{children:z(e.p95LatencySec,"latency",t)}),(0,a.jsx)(_,{children:z(e.avgCost,"cost",t)})]},e.tag.id))})]})})]})]}),(0,a.jsxs)("aside",{className:(0,C.cn)("space-y-4 min-w-0","detail"!==D&&"hidden"),children:[(0,a.jsxs)("section",{className:"rounded-md border border-border bg-card px-4 py-3",children:[(0,a.jsx)("div",{className:"mb-2 flex items-center justify-between gap-3",children:(0,a.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:q.detailOverview})}),(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-3",children:[(0,a.jsxs)("div",{className:"inline-flex max-w-full items-center gap-1.5 rounded-md border border-border bg-background px-2 py-1",children:[(0,a.jsx)("span",{className:"shrink-0 text-xs font-medium text-foreground-muted",children:q.selected}),(0,a.jsx)(y.Select,{value:eu??"",onChange:e=>em(e||null),options:eT,"aria-label":q.selected,className:"h-7 max-w-[180px] border-0 bg-background-secondary px-2 text-sm font-medium text-foreground hover:bg-background-secondary"})]}),eA&&(0,a.jsxs)("div",{className:"grid min-w-[520px] flex-1 grid-cols-2 gap-2 sm:grid-cols-3 xl:grid-cols-6",children:[(0,a.jsx)(U,{label:q.traceCount,value:eA.traceCount.toLocaleString()}),(0,a.jsx)(U,{label:q.accuracy,value:z(eA.answerScoreAvg,"accuracy",t)}),(0,a.jsx)(U,{label:q.tokens,value:z(eA.avgTokens,"tokens",t)}),(0,a.jsx)(U,{label:q.latency,value:z(eA.p95LatencySec,"latency",t)}),(0,a.jsx)(U,{label:q.cost,value:z(eA.avgCost,"cost",t)}),(0,a.jsx)(U,{label:q.runSuccessRate,value:E(eA.runSuccessRate)})]})]})]}),(0,a.jsxs)("section",{className:"rounded-md border border-border bg-card p-4",children:[(0,a.jsxs)("div",{className:"mb-3 flex flex-wrap items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("h2",{className:"truncate text-sm font-semibold text-foreground",children:eA?eA.tag.name+" · "+q.detailChartTitle:q.detailChartTitle}),(0,a.jsx)("p",{className:"mt-1 text-xs text-foreground-muted",children:q.detailChartHint})]}),(0,a.jsx)(I,{value:et,onChange:ea,copy:q})]}),(0,a.jsx)("div",{className:"h-48",children:eg?(0,a.jsxs)("div",{className:"flex h-full items-center justify-center gap-2 text-sm text-foreground-muted",children:[(0,a.jsx)(i.Loader2,{className:"size-4 animate-spin"}),q.loading]}):eL.length?(0,a.jsx)(x.ResponsiveContainer,{width:"100%",height:"100%",children:(0,a.jsxs)(m.LineChart,{data:eL,margin:{top:8,right:12,bottom:2,left:-4},children:[(0,a.jsx)(d.CartesianGrid,{stroke:"var(--border)",strokeDasharray:"3 3",vertical:!1}),(0,a.jsx)(g.XAxis,{dataKey:"index",tick:{fontSize:11,fill:"var(--foreground-muted)"}}),(0,a.jsx)(p.YAxis,{tick:{fontSize:11,fill:"var(--foreground-muted)"},tickFormatter:e=>H(Number(e),et),width:64}),(0,a.jsx)(h.Tooltip,{content:(0,a.jsx)(Q,{metric:et,copy:q,locale:t}),cursor:{stroke:"var(--border-dark)",strokeDasharray:"4 4"}}),(0,a.jsx)(u.Line,{type:"monotone",dataKey:"value",stroke:L(et),strokeWidth:2.8,dot:(0,a.jsx)(W,{metric:et}),activeDot:(0,a.jsx)(W,{metric:et,active:!0}),connectNulls:!0})]})}):(0,a.jsx)("div",{className:"flex h-full items-center justify-center text-sm text-foreground-muted",children:"-"})})]}),(0,a.jsxs)("section",{className:"rounded-md border border-border bg-card overflow-hidden",children:[(0,a.jsx)("div",{className:"border-b border-border px-4 py-3",children:(0,a.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:q.questions})}),(0,a.jsx)("div",{className:"max-h-64 overflow-y-auto p-2",children:(eo?.questions??[]).slice(0,20).map(e=>(0,a.jsxs)("div",{className:"flex w-full items-start justify-between gap-3 rounded-md px-2 py-2 text-sm",children:[(0,a.jsx)("span",{className:"line-clamp-2 min-w-0 text-foreground-secondary",children:e.label}),(0,a.jsx)("span",{className:"shrink-0 text-xs tabular-nums text-foreground-muted",children:e.traceCount})]},e.key))})]})]}),(0,a.jsxs)("section",{className:(0,C.cn)("rounded-md border border-border bg-card overflow-hidden","detail"!==D&&"hidden"),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3 border-b border-border px-4 py-3",children:[(0,a.jsx)("h2",{className:"text-sm font-semibold text-foreground",children:q.traces}),(0,a.jsx)("span",{className:"text-xs text-foreground-muted",children:ec?.total??0})]}),(0,a.jsx)("div",{className:"overflow-x-auto",children:(0,a.jsxs)("table",{className:"w-full min-w-[860px] text-sm",children:[(0,a.jsx)("thead",{className:"bg-background-secondary text-xs text-foreground-muted",children:(0,a.jsxs)("tr",{children:[(0,a.jsx)(K,{children:q.time}),(0,a.jsx)(K,{children:q.status}),(0,a.jsx)(K,{children:q.query}),(0,a.jsx)(K,{children:q.accuracy}),(0,a.jsx)(K,{children:q.tokens}),(0,a.jsx)(K,{children:q.latency}),(0,a.jsx)(K,{children:q.cost}),(0,a.jsx)(K,{children:q.viewTrace})]})}),(0,a.jsxs)("tbody",{children:[(ec?.traces??[]).map(e=>(0,a.jsxs)("tr",{className:"border-t border-border hover:bg-background-secondary",children:[(0,a.jsx)(_,{children:M(e.timestamp)}),(0,a.jsx)(_,{children:(0,a.jsx)(B,{status:e.traceStatus,copy:q})}),(0,a.jsx)(_,{children:(0,a.jsx)("span",{className:"line-clamp-2 max-w-[360px] text-foreground-secondary",children:e.query||"-"})}),(0,a.jsx)(_,{children:z(e.answerScore,"accuracy",t)}),(0,a.jsx)(_,{children:z(e.tokens,"tokens",t)}),(0,a.jsx)(_,{children:z(e.latencySec,"latency",t)}),(0,a.jsx)(_,{children:z(e.cost,"cost",t)}),(0,a.jsx)(_,{children:(0,a.jsx)(j.Button,{variant:"ghost",size:"sm",asChild:!0,className:"h-7 px-2 text-xs",children:(0,a.jsx)(r.default,{href:`${S}/trace?taskId=${encodeURIComponent(e.taskId||e.id)}`,children:q.viewTrace})})})]},e.id)),!eg&&!(ec?.traces??[]).length&&(0,a.jsx)("tr",{children:(0,a.jsx)("td",{colSpan:8,className:"px-4 py-8 text-center text-sm text-foreground-muted",children:q.noTraceTitle})})]})]})})]})]})]}):(0,a.jsx)(w.EmptyState,{icon:n.Activity,title:q.noTraceTitle,description:q.noTraceDesc}):(0,a.jsx)(w.EmptyState,{icon:c.Tag,title:q.noTagsTitle,description:q.noTagsDesc,action:(0,a.jsx)(j.Button,{asChild:!0,children:(0,a.jsx)(r.default,{href:`${S}/version-management`,children:q.manageTags})})})]})]})}function O({label:e,value:t,detail:r,tone:s}){return(0,a.jsxs)("div",{className:"rounded-md border border-border bg-card px-3 py-2.5",children:[(0,a.jsx)("div",{className:"text-[11px] text-foreground-muted",children:e}),(0,a.jsx)("div",{className:"mt-1 truncate text-lg font-semibold tabular-nums",style:{color:s},children:t}),(0,a.jsx)("div",{className:"mt-1 truncate text-[11px] text-foreground-muted",children:r})]})}function I({value:e,onChange:t,copy:r}){return(0,a.jsx)("div",{className:"inline-flex flex-wrap gap-1 rounded-md border border-border bg-background p-1",children:[{value:"accuracy",label:r.accuracy},{value:"tokens",label:r.tokens},{value:"latency",label:r.latency},{value:"cost",label:r.cost}].map(r=>(0,a.jsxs)("button",{type:"button",onClick:()=>t(r.value),className:(0,C.cn)("inline-flex h-7 items-center gap-1.5 rounded-sm px-2 text-xs font-medium text-foreground-muted hover:bg-background-secondary hover:text-foreground",e===r.value&&"bg-primary-subtle text-primary"),children:[(0,a.jsx)("span",{className:"size-2 rounded-full",style:{backgroundColor:L(r.value)}}),r.label]},r.value))})}function U({label:e,value:t}){return(0,a.jsxs)("div",{className:"min-w-0 rounded-sm border border-border bg-background px-2 py-1.5",children:[(0,a.jsx)("div",{className:"truncate text-[10px] leading-none text-foreground-muted",children:e}),(0,a.jsx)("div",{className:"mt-1 truncate text-xs font-semibold tabular-nums text-foreground",children:t})]})}function Q({active:e,payload:t,label:r,metric:s,copy:n,locale:l}){let o=t?.[0]?.payload;if(!e||!o)return null;let i="success"===o.status?n.success:n.running;return(0,a.jsxs)("div",{className:"min-w-60 max-w-80 rounded-md border border-border bg-card p-3 text-xs text-foreground shadow-lg",children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsxs)("div",{className:"font-semibold text-foreground",children:["Trace #",r]}),(0,a.jsx)("div",{className:"mt-0.5 text-[11px] text-foreground-muted",children:o.label})]}),(0,a.jsx)("span",{className:(0,C.cn)("shrink-0 rounded-sm border px-1.5 py-0.5 text-[11px] font-medium","success"===o.status?"border-success-subtle bg-success-subtle text-success":"border-error-border bg-error-subtle text-error"),children:i})]}),o.query&&(0,a.jsx)("div",{className:"mt-2 line-clamp-2 text-foreground-secondary",children:o.query}),(0,a.jsxs)("div",{className:"mt-3 grid gap-1.5",children:[(0,a.jsx)(V,{color:"var(--success)",label:n.accuracy,value:z(o.answerScore,"accuracy",l)}),(0,a.jsx)(V,{color:"var(--warning)",label:n.tokens,value:z(o.tokens,"tokens",l)}),(0,a.jsx)(V,{color:"#0ea5e9",label:n.latency,value:z(o.latencySec,"latency",l)}),(0,a.jsx)(V,{color:"#14b8a6",label:n.cost,value:z(o.cost,"cost",l)})]}),(0,a.jsx)("div",{className:"mt-2 border-t border-border pt-2 text-[11px] font-medium text-primary",children:n.openTraceHint})]})}function V({color:e,label:t,value:r}){return(0,a.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,a.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-foreground-muted",children:[(0,a.jsx)("span",{className:"size-2 rounded-full",style:{backgroundColor:e}}),t]}),(0,a.jsx)("span",{className:"font-semibold tabular-nums text-foreground",children:r})]})}function W(e){let{cx:t,cy:r,payload:s,metric:n,active:l}=e;if(null==t||null==r)return null;let o=s?.traceHref,i=s?.status==="success"?L(n):"var(--error)",c=(0,a.jsxs)("g",{style:{cursor:o?"pointer":"default"},children:[(0,a.jsx)("circle",{cx:t,cy:r,r:l?13:11,fill:"transparent"}),(0,a.jsx)("circle",{cx:t,cy:r,r:l?10:8,fill:i,opacity:l?.18:.12}),(0,a.jsx)("circle",{cx:t,cy:r,r:l?5.8:4.8,fill:i,stroke:l?i:"var(--card-bg)",strokeWidth:l?1.5:2,children:(0,a.jsx)("title",{children:s?.label??"Trace"})})]});return o?(0,a.jsx)("a",{href:o,target:"_blank",rel:"noreferrer","aria-label":"Open trace",children:c}):c}function B({status:e,copy:t}){let r="success"===e;return(0,a.jsx)("span",{className:(0,C.cn)("inline-flex items-center rounded-sm border px-1.5 py-0.5 text-xs font-medium",r?"border-success-subtle bg-success-subtle text-success":"border-warning-subtle bg-warning-subtle text-warning"),children:r?t.success:t.running})}function K({children:e}){return(0,a.jsx)("th",{className:"px-3 py-2 text-left font-medium whitespace-nowrap",children:e})}function _({children:e}){return(0,a.jsx)("td",{className:"px-3 py-2 align-top text-foreground-secondary",children:e})}e.s(["default",()=>P],511811)}]);