@seed-ship/mcp-ui-solid 4.0.6 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/components/AgentCard.cjs +122 -0
  2. package/dist/components/AgentCard.cjs.map +1 -0
  3. package/dist/components/AgentCard.d.ts +20 -0
  4. package/dist/components/AgentCard.d.ts.map +1 -0
  5. package/dist/components/AgentCard.js +122 -0
  6. package/dist/components/AgentCard.js.map +1 -0
  7. package/dist/components/AgentHandoff.cjs +49 -0
  8. package/dist/components/AgentHandoff.cjs.map +1 -0
  9. package/dist/components/AgentHandoff.d.ts +12 -0
  10. package/dist/components/AgentHandoff.d.ts.map +1 -0
  11. package/dist/components/AgentHandoff.js +49 -0
  12. package/dist/components/AgentHandoff.js.map +1 -0
  13. package/dist/components/BriefingDiff.cjs +165 -0
  14. package/dist/components/BriefingDiff.cjs.map +1 -0
  15. package/dist/components/BriefingDiff.d.ts +12 -0
  16. package/dist/components/BriefingDiff.d.ts.map +1 -0
  17. package/dist/components/BriefingDiff.js +165 -0
  18. package/dist/components/BriefingDiff.js.map +1 -0
  19. package/dist/components/FormFieldRenderer.cjs +314 -264
  20. package/dist/components/FormFieldRenderer.cjs.map +1 -1
  21. package/dist/components/FormFieldRenderer.d.ts.map +1 -1
  22. package/dist/components/FormFieldRenderer.js +315 -265
  23. package/dist/components/FormFieldRenderer.js.map +1 -1
  24. package/dist/components/FormRenderer.cjs +74 -17
  25. package/dist/components/FormRenderer.cjs.map +1 -1
  26. package/dist/components/FormRenderer.d.ts.map +1 -1
  27. package/dist/components/FormRenderer.js +76 -19
  28. package/dist/components/FormRenderer.js.map +1 -1
  29. package/dist/components/ScratchpadPanel.cjs +618 -411
  30. package/dist/components/ScratchpadPanel.cjs.map +1 -1
  31. package/dist/components/ScratchpadPanel.d.ts.map +1 -1
  32. package/dist/components/ScratchpadPanel.js +619 -412
  33. package/dist/components/ScratchpadPanel.js.map +1 -1
  34. package/dist/components/SplitStepper.cjs +121 -0
  35. package/dist/components/SplitStepper.cjs.map +1 -0
  36. package/dist/components/SplitStepper.d.ts +12 -0
  37. package/dist/components/SplitStepper.d.ts.map +1 -0
  38. package/dist/components/SplitStepper.js +121 -0
  39. package/dist/components/SplitStepper.js.map +1 -0
  40. package/dist/components/index.d.ts +8 -0
  41. package/dist/components/index.d.ts.map +1 -1
  42. package/dist/components.cjs +9 -0
  43. package/dist/components.cjs.map +1 -1
  44. package/dist/components.d.cts +8 -0
  45. package/dist/components.d.ts +8 -0
  46. package/dist/components.js +9 -0
  47. package/dist/components.js.map +1 -1
  48. package/dist/index.cjs +9 -0
  49. package/dist/index.cjs.map +1 -1
  50. package/dist/index.d.cts +9 -1
  51. package/dist/index.d.ts +9 -1
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +9 -0
  54. package/dist/index.js.map +1 -1
  55. package/dist/types/chat-bus.d.ts +81 -1
  56. package/dist/types/chat-bus.d.ts.map +1 -1
  57. package/dist/types/index.d.ts +15 -0
  58. package/dist/types/index.d.ts.map +1 -1
  59. package/dist/types.d.cts +15 -0
  60. package/dist/types.d.ts +15 -0
  61. package/package.json +1 -1
  62. package/src/components/AgentCard.tsx +109 -0
  63. package/src/components/AgentHandoff.tsx +64 -0
  64. package/src/components/BriefingDiff.tsx +93 -0
  65. package/src/components/FormFieldRenderer.tsx +35 -4
  66. package/src/components/FormRenderer.tsx +74 -4
  67. package/src/components/ScratchpadPanel.tsx +131 -49
  68. package/src/components/SplitStepper.tsx +111 -0
  69. package/src/components/index.ts +13 -0
  70. package/src/index.ts +15 -0
  71. package/src/types/chat-bus.ts +70 -1
  72. package/src/types/index.ts +18 -0
  73. package/tsconfig.tsbuildinfo +1 -1
@@ -7,9 +7,13 @@ const VerifiedText = require("./VerifiedText.cjs");
7
7
  const DataPreviewSection = require("./DataPreviewSection.cjs");
8
8
  const MapRenderer = require("./MapRenderer.cjs");
9
9
  const ChartJSRenderer = require("./ChartJSRenderer.cjs");
10
- var _tmpl$ = /* @__PURE__ */ web.template(`<svg fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M19 9l-7 7-7-7">`), _tmpl$2 = /* @__PURE__ */ web.template(`<button class="p-1 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors"aria-label=Close><svg class="w-4 h-4"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M6 18L18 6M6 6l12 12">`), _tmpl$3 = /* @__PURE__ */ web.template(`<div class="px-4 py-2 border-b border-gray-100 dark:border-gray-700 flex flex-wrap items-center gap-1.5">`), _tmpl$4 = /* @__PURE__ */ web.template(`<div class="px-4 py-3 border-t border-gray-100 dark:border-gray-700 space-y-2">`), _tmpl$5 = /* @__PURE__ */ web.template(`<div class="flex flex-col items-center gap-2 py-4 text-center"><span class=text-2xl>&#128269;</span><p class="text-sm text-gray-500 dark:text-gray-400">No results for these filters</p><button type=button class="px-3 py-1.5 text-xs font-medium text-blue-600 dark:text-blue-400 hover:bg-blue-50 dark:hover:bg-blue-900/20 rounded-lg transition-colors">Modify filters`), _tmpl$6 = /* @__PURE__ */ web.template(`<div class="px-4 py-3 border-t border-gray-100 dark:border-gray-700">`), _tmpl$7 = /* @__PURE__ */ web.template(`<p class="text-xs text-red-500 dark:text-red-500 mt-0.5">Code: <!$><!/>`), _tmpl$8 = /* @__PURE__ */ web.template(`<button type=button class="px-3 py-1.5 text-sm font-medium rounded-lg bg-red-600 text-white hover:bg-red-700 transition-colors flex items-center gap-1">&#128260; Retry`), _tmpl$9 = /* @__PURE__ */ web.template(`<button type=button class="px-3 py-1.5 text-sm font-medium rounded-lg border border-gray-200 dark:border-gray-600 text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors">Close`), _tmpl$0 = /* @__PURE__ */ web.template(`<div class="px-4 py-3 border-t border-red-100 dark:border-red-900/30 bg-red-50 dark:bg-red-900/10"><div class="flex items-start gap-2 text-sm text-red-700 dark:text-red-400"><span class="flex-shrink-0 mt-0.5">⚠️</span><div class=flex-1><p class=font-medium></p><!$><!/></div></div><div class="flex gap-2 mt-2"><!$><!/><!$><!/>`), _tmpl$1 = /* @__PURE__ */ web.template(`<div class="px-4 py-3 border-t border-gray-100 dark:border-gray-700"><button type=button class="w-full px-4 py-2.5 text-sm font-semibold rounded-lg text-white bg-blue-600 hover:bg-blue-700 transition-colors flex items-center justify-center gap-2"><svg class="w-4 h-4"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg>Search`), _tmpl$10 = /* @__PURE__ */ web.template(`<div style=overflow-y:auto><!$><!/><div class="divide-y divide-gray-100 dark:divide-gray-700"></div><!$><!/><!$><!/><!$><!/><!$><!/>`), _tmpl$11 = /* @__PURE__ */ web.template(`<div class="absolute bottom-1 right-1 px-2 py-1 text-[9px] font-mono bg-black/80 text-green-400 rounded z-50 pointer-events-none"><!$><!/> | ev:<!$><!/> | sec:<!$><!/> | <!$><!/> | last:<!$><!/>`), _tmpl$12 = /* @__PURE__ */ web.template(`<div style="animation:scratchpad-slide-down 0.2s ease-out"><div><div class="flex items-center gap-2"><span class=text-base>&#128221;</span><h3 class="text-sm font-semibold text-gray-900 dark:text-white"></h3><!$><!/></div><div class="flex items-center gap-2"><span></span><!$><!/></div></div><!$><!/><style>
10
+ const AgentCard = require("./AgentCard.cjs");
11
+ const SplitStepper = require("./SplitStepper.cjs");
12
+ const AgentHandoff = require("./AgentHandoff.cjs");
13
+ const BriefingDiff = require("./BriefingDiff.cjs");
14
+ var _tmpl$ = /* @__PURE__ */ web.template(`<svg fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M19 9l-7 7-7-7">`), _tmpl$2 = /* @__PURE__ */ web.template(`<button class="p-1 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors"aria-label=Close><svg class="w-4 h-4"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M6 18L18 6M6 6l12 12">`), _tmpl$3 = /* @__PURE__ */ web.template(`<div class="px-4 py-2 border-b border-gray-100 dark:border-gray-700 flex flex-wrap items-center gap-1.5">`), _tmpl$4 = /* @__PURE__ */ web.template(`<div class="px-4 py-3 border-t border-gray-100 dark:border-gray-700 space-y-2">`), _tmpl$5 = /* @__PURE__ */ web.template(`<div class="flex flex-col items-center gap-2 py-4 text-center"><span class=text-2xl>&#128269;</span><p class="text-sm text-gray-500 dark:text-gray-400">No results for these filters</p><button type=button class="px-3 py-1.5 text-xs font-medium text-blue-600 dark:text-blue-400 hover:bg-blue-50 dark:hover:bg-blue-900/20 rounded-lg transition-colors">Modify filters`), _tmpl$6 = /* @__PURE__ */ web.template(`<div class="px-4 py-3 border-t border-gray-100 dark:border-gray-700">`), _tmpl$7 = /* @__PURE__ */ web.template(`<p class="text-xs text-red-500 dark:text-red-500 mt-0.5">Code: <!$><!/>`), _tmpl$8 = /* @__PURE__ */ web.template(`<button type=button class="px-3 py-1.5 text-sm font-medium rounded-lg bg-red-600 text-white hover:bg-red-700 transition-colors flex items-center gap-1">&#128260; Retry`), _tmpl$9 = /* @__PURE__ */ web.template(`<button type=button class="px-3 py-1.5 text-sm font-medium rounded-lg border border-gray-200 dark:border-gray-600 text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors">Close`), _tmpl$0 = /* @__PURE__ */ web.template(`<div class="px-4 py-3 border-t border-red-100 dark:border-red-900/30 bg-red-50 dark:bg-red-900/10"><div class="flex items-start gap-2 text-sm text-red-700 dark:text-red-400"><span class="flex-shrink-0 mt-0.5">⚠️</span><div class=flex-1><p class=font-medium></p><!$><!/></div></div><div class="flex gap-2 mt-2"><!$><!/><!$><!/>`), _tmpl$1 = /* @__PURE__ */ web.template(`<div class="px-4 py-3 border-t border-gray-100 dark:border-gray-700"><button type=button class="w-full px-4 py-2.5 text-sm font-semibold rounded-lg text-white bg-blue-600 hover:bg-blue-700 transition-colors flex items-center justify-center gap-2"><svg class="w-4 h-4"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg>Search`), _tmpl$10 = /* @__PURE__ */ web.template(`<div style=overflow-y:auto><!$><!/><div class="divide-y divide-gray-100 dark:divide-gray-700"></div><!$><!/><!$><!/><!$><!/><!$><!/>`), _tmpl$11 = /* @__PURE__ */ web.template(`<div class="absolute bottom-1 right-1 px-2 py-1 text-[9px] font-mono bg-black/80 text-green-400 rounded z-50 pointer-events-none"><!$><!/> | ev:<!$><!/> | sec:<!$><!/> | <!$><!/> | last:<!$><!/>`), _tmpl$12 = /* @__PURE__ */ web.template(`<div style="animation:scratchpad-slide-down 0.2s ease-out"><div><div class="flex items-center gap-2"><span class=text-base>&#128221;</span><h3 class="text-sm font-semibold text-gray-900 dark:text-white"></h3><!$><!/><!$><!/></div><div class="flex items-center gap-2"><span></span><!$><!/></div></div><!$><!/><style>
11
15
  @keyframes scratchpad-slide-down { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }
12
- </style><!$><!/>`), _tmpl$13 = /* @__PURE__ */ web.template(`<svg class="w-3 h-3 text-gray-300 dark:text-gray-600 flex-shrink-0"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M9 5l7 7-7 7">`), _tmpl$14 = /* @__PURE__ */ web.template(`<span class="ml-1 font-normal opacity-75">— <!$><!/>`), _tmpl$15 = /* @__PURE__ */ web.template(`<span><!$><!/> <!$><!/><!$><!/>`), _tmpl$16 = /* @__PURE__ */ web.template(`<div><span class="flex-shrink-0 mt-0.5"></span><p>`), _tmpl$17 = /* @__PURE__ */ web.template(`<div class="flex items-center gap-2 mb-2"><span class="text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wide">Preview</span><span class="px-1.5 py-0.5 text-xs font-bold bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300 rounded">`), _tmpl$18 = /* @__PURE__ */ web.template(`<p class="text-sm text-gray-700 dark:text-gray-300">`), _tmpl$19 = /* @__PURE__ */ web.template(`<div class="mt-2 overflow-x-auto"><table class="min-w-full text-xs"><thead><tr></tr></thead><tbody>`), _tmpl$20 = /* @__PURE__ */ web.template(`<th class="px-2 py-1 text-left font-medium text-gray-500 dark:text-gray-400">`), _tmpl$21 = /* @__PURE__ */ web.template(`<tr class="border-t border-gray-100 dark:border-gray-700">`), _tmpl$22 = /* @__PURE__ */ web.template(`<td class="px-2 py-1 text-gray-700 dark:text-gray-300">`), _tmpl$23 = /* @__PURE__ */ web.template(`<pre class="text-xs text-gray-500 overflow-auto">`), _tmpl$24 = /* @__PURE__ */ web.template(`<div class="px-4 py-3"><h4 class="text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wide mb-2"></h4><!$><!/>`), _tmpl$25 = /* @__PURE__ */ web.template(`<div class=space-y-1>`), _tmpl$26 = /* @__PURE__ */ web.template(`<div class="flex gap-2 text-xs"><span class="text-gray-500 dark:text-gray-400 font-mono min-w-[120px]"><!$><!/>:</span><span class="text-gray-900 dark:text-white">`), _tmpl$27 = /* @__PURE__ */ web.template(`<p class="text-xs text-gray-400 italic">No filters`), _tmpl$28 = /* @__PURE__ */ web.template(`<div class="flex flex-wrap gap-1.5"><!$><!/><!$><!/>`), _tmpl$29 = /* @__PURE__ */ web.template(`<button type=button class="ml-0.5 hover:text-blue-900 dark:hover:text-blue-100">&times;`), _tmpl$30 = /* @__PURE__ */ web.template(`<span class="inline-flex items-center gap-1 px-2.5 py-1 text-xs font-medium bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300 rounded-full"><button type=button class=hover:underline><span class="text-blue-500 dark:text-blue-400"><!$><!/>:</span> <!$><!/></button><!$><!/>`), _tmpl$31 = /* @__PURE__ */ web.template(`<div class="max-h-48 overflow-y-auto">`), _tmpl$32 = /* @__PURE__ */ web.template(`<button type=button class="mt-1 w-full px-2 py-1 text-xs text-gray-500 hover:text-gray-700 text-center">Cancel`), _tmpl$33 = /* @__PURE__ */ web.template(`<div class="absolute z-50 mt-1 left-0 bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600 rounded-lg shadow-lg p-2 min-w-[200px]">`), _tmpl$34 = /* @__PURE__ */ web.template(`<div class=relative><!$><!/><!$><!/>`), _tmpl$35 = /* @__PURE__ */ web.template(`<button type=button class="inline-flex items-center gap-1 px-2.5 py-1 text-xs font-medium border border-dashed border-gray-300 dark:border-gray-600 text-gray-500 dark:text-gray-400 rounded-full hover:border-blue-400 hover:text-blue-500 transition-colors">+ <!$><!/>`), _tmpl$36 = /* @__PURE__ */ web.template(`<form class="flex gap-1"><input type=text autofocus class="flex-1 px-2 py-1 text-sm border border-gray-200 dark:border-gray-600 rounded bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:border-blue-400 outline-none"><button type=submit class="px-2 py-1 text-xs bg-blue-600 text-white rounded hover:bg-blue-700">OK</button><button type=button class="px-2 py-1 text-xs text-gray-500 hover:text-gray-700">Cancel`), _tmpl$37 = /* @__PURE__ */ web.template(`<span class=ml-1>✓`), _tmpl$38 = /* @__PURE__ */ web.template(`<button type=button><!$><!/><!$><!/>`), _tmpl$39 = /* @__PURE__ */ web.template(`<form class="flex flex-col gap-3"><!$><!/><div class="flex justify-end"><button type=submit class="px-4 py-2 text-sm font-medium rounded-lg text-white bg-blue-600 hover:bg-blue-700 transition-colors">`), _tmpl$40 = /* @__PURE__ */ web.template(`<div class="flex justify-end"><button type=button class="px-3 py-1.5 text-sm font-medium text-blue-600 dark:text-blue-400 hover:bg-blue-50 dark:hover:bg-blue-900/20 rounded-lg transition-colors flex items-center gap-1">Next <svg class="w-3.5 h-3.5"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M9 5l7 7-7 7">`), _tmpl$41 = /* @__PURE__ */ web.template(`<div class=space-y-3><!$><!/><!$><!/>`), _tmpl$42 = /* @__PURE__ */ web.template(`<span class="text-xs font-normal text-gray-500 dark:text-gray-400">— <!$><!/>`), _tmpl$43 = /* @__PURE__ */ web.template(`<div class="mt-2 ml-6">`), _tmpl$44 = /* @__PURE__ */ web.template(`<div><div><span></span><!$><!/><!$><!/></div><!$><!/>`), _tmpl$45 = /* @__PURE__ */ web.template(`<div class="flex flex-wrap gap-2">`), _tmpl$46 = /* @__PURE__ */ web.template(`<span class=mr-1>`), _tmpl$47 = /* @__PURE__ */ web.template(`<div class=space-y-2><div class=space-y-1.5></div><!$><!/>`), _tmpl$48 = /* @__PURE__ */ web.template(`<div class="flex items-center gap-2 text-sm"><span></span><span class="text-gray-900 dark:text-white">`), _tmpl$49 = /* @__PURE__ */ web.template(`<div class="flex items-start gap-1.5 text-xs text-amber-600 dark:text-amber-400"><span class=flex-shrink-0>⚠️</span><span>`), _tmpl$50 = /* @__PURE__ */ web.template(`<div class="flex gap-1"><input type=text class="flex-1 px-3 py-2 text-sm border border-gray-200 dark:border-gray-600 rounded-lg bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:border-blue-400 outline-none"><button type=button class="px-3 py-2 text-sm bg-blue-600 text-white rounded-lg hover:bg-blue-700">Send`), _tmpl$51 = /* @__PURE__ */ web.template(`<div class=space-y-3><p class="text-sm text-gray-700 dark:text-gray-300"></p><div class="flex flex-wrap gap-2"></div><!$><!/>`), _tmpl$52 = /* @__PURE__ */ web.template(`<span>`), _tmpl$53 = /* @__PURE__ */ web.template(`<p class="text-xs text-gray-500 dark:text-gray-400 italic">"<!$><!/>"`), _tmpl$54 = /* @__PURE__ */ web.template(`<div class="mt-2 px-3 py-2 bg-blue-50 dark:bg-blue-900/10 rounded-lg text-sm text-blue-700 dark:text-blue-300"><span class=font-medium>Plan:</span> <!$><!/>`), _tmpl$55 = /* @__PURE__ */ web.template(`<button type=button class="text-xs text-blue-600 dark:text-blue-400 hover:underline flex items-center gap-1">&#9998; Modify`), _tmpl$56 = /* @__PURE__ */ web.template(`<div class=space-y-2><!$><!/><div class=space-y-1></div><!$><!/><!$><!/>`), _tmpl$57 = /* @__PURE__ */ web.template(`<div class="flex gap-2 text-sm"><span class="text-gray-500 dark:text-gray-400 font-medium min-w-[80px]"><!$><!/>:</span><span class="text-gray-900 dark:text-white">`), _tmpl$58 = /* @__PURE__ */ web.template(`<div class="flex items-center gap-1 flex-wrap">`), _tmpl$59 = /* @__PURE__ */ web.template(`<div class=space-y-2>`), _tmpl$60 = /* @__PURE__ */ web.template(`<span class="ml-1 text-xs text-gray-500 dark:text-gray-400">— <!$><!/>`), _tmpl$61 = /* @__PURE__ */ web.template(`<span class="ml-1 text-xs text-gray-400">(<!$><!/>ms)`), _tmpl$62 = /* @__PURE__ */ web.template(`<div><span class=flex-shrink-0></span><div><span></span><!$><!/><!$><!/>`), _tmpl$63 = /* @__PURE__ */ web.template(`<span class="text-[10px] opacity-75">`), _tmpl$64 = /* @__PURE__ */ web.template(`<div><span></span><span></span><!$><!/>`), _tmpl$65 = /* @__PURE__ */ web.template(`<button type=button>&#128260; <!$><!/>`), _tmpl$66 = /* @__PURE__ */ web.template(`<button type=button class="px-2 py-1 text-xs opacity-70 hover:opacity-100">&#9654; Details`), _tmpl$67 = /* @__PURE__ */ web.template(`<pre class="mt-2 text-xs opacity-70 overflow-x-auto">`), _tmpl$68 = /* @__PURE__ */ web.template(`<div><div class="flex items-start gap-2"><span class=flex-shrink-0></span><div class=flex-1><p></p><div class="flex gap-2 mt-2"><!$><!/><!$><!/></div><!$><!/>`), _tmpl$69 = /* @__PURE__ */ web.template(`<span class="text-xs font-bold text-blue-600 dark:text-blue-400"><!$><!/> results`), _tmpl$70 = /* @__PURE__ */ web.template(`<p class="text-[10px] text-gray-400">`), _tmpl$71 = /* @__PURE__ */ web.template(`<div class="rounded-lg border border-gray-200 dark:border-gray-700 px-3 py-2"><div class="flex items-center justify-between mb-1.5"><span class="text-sm font-medium text-gray-900 dark:text-white"><!$><!/> <!$><!/></span><!$><!/></div><div class="flex flex-wrap gap-1.5 mb-1"></div><!$><!/>`), _tmpl$72 = /* @__PURE__ */ web.template(`<span><!$><!/> <!$><!/>`), _tmpl$73 = /* @__PURE__ */ web.template(`<div class=overflow-x-auto><table class="min-w-full text-xs"><thead><tr><th class="px-2 py-1 text-left text-gray-500 dark:text-gray-400"></th><th class="px-2 py-1 text-left font-medium text-blue-600 dark:text-blue-400"></th><th class="px-2 py-1 text-left font-medium text-purple-600 dark:text-purple-400"></th></tr></thead><tbody>`), _tmpl$74 = /* @__PURE__ */ web.template(`<tr><td class="px-2 py-1 font-mono text-gray-500 dark:text-gray-400"></td><td class="px-2 py-1 text-gray-900 dark:text-white"></td><td class="px-2 py-1 text-gray-900 dark:text-white">`);
16
+ </style><!$><!/>`), _tmpl$13 = /* @__PURE__ */ web.template(`<svg class="w-3 h-3 text-gray-300 dark:text-gray-600 flex-shrink-0"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M9 5l7 7-7 7">`), _tmpl$14 = /* @__PURE__ */ web.template(`<span class="ml-1 font-normal opacity-75">— <!$><!/>`), _tmpl$15 = /* @__PURE__ */ web.template(`<span><!$><!/> <!$><!/><!$><!/>`), _tmpl$16 = /* @__PURE__ */ web.template(`<div><span class="flex-shrink-0 mt-0.5"></span><p>`), _tmpl$17 = /* @__PURE__ */ web.template(`<div class="flex items-center gap-2 mb-2"><span class="text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wide">Preview</span><span class="px-1.5 py-0.5 text-xs font-bold bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300 rounded">`), _tmpl$18 = /* @__PURE__ */ web.template(`<p class="text-sm text-gray-700 dark:text-gray-300">`), _tmpl$19 = /* @__PURE__ */ web.template(`<div class="mt-2 overflow-x-auto"><table class="min-w-full text-xs"><thead><tr></tr></thead><tbody>`), _tmpl$20 = /* @__PURE__ */ web.template(`<th class="px-2 py-1 text-left font-medium text-gray-500 dark:text-gray-400">`), _tmpl$21 = /* @__PURE__ */ web.template(`<tr class="border-t border-gray-100 dark:border-gray-700">`), _tmpl$22 = /* @__PURE__ */ web.template(`<td class="px-2 py-1 text-gray-700 dark:text-gray-300">`), _tmpl$23 = /* @__PURE__ */ web.template(`<pre class="text-xs text-gray-500 overflow-auto">`), _tmpl$24 = /* @__PURE__ */ web.template(`<div class="px-4 py-3 animate-[slideDown_0.2s_ease-out]"><h4 class="text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wide mb-2"></h4><!$><!/>`), _tmpl$25 = /* @__PURE__ */ web.template(`<div class=space-y-1>`), _tmpl$26 = /* @__PURE__ */ web.template(`<div class="flex gap-2 text-xs"><span class="text-gray-500 dark:text-gray-400 font-mono min-w-[120px]"><!$><!/>:</span><span class="text-gray-900 dark:text-white">`), _tmpl$27 = /* @__PURE__ */ web.template(`<p class="text-xs text-gray-400 italic">No filters`), _tmpl$28 = /* @__PURE__ */ web.template(`<div class="flex flex-wrap gap-1.5"><!$><!/><!$><!/>`), _tmpl$29 = /* @__PURE__ */ web.template(`<button type=button class="ml-0.5 hover:text-blue-900 dark:hover:text-blue-100">&times;`), _tmpl$30 = /* @__PURE__ */ web.template(`<span class="inline-flex items-center gap-1 px-2.5 py-1 text-xs font-medium bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300 rounded-full"><button type=button class=hover:underline><span class="text-blue-500 dark:text-blue-400"><!$><!/>:</span> <!$><!/></button><!$><!/>`), _tmpl$31 = /* @__PURE__ */ web.template(`<div class="max-h-48 overflow-y-auto">`), _tmpl$32 = /* @__PURE__ */ web.template(`<button type=button class="mt-1 w-full px-2 py-1 text-xs text-gray-500 hover:text-gray-700 text-center">Cancel`), _tmpl$33 = /* @__PURE__ */ web.template(`<div class="absolute z-50 mt-1 left-0 bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600 rounded-lg shadow-lg p-2 min-w-[200px]">`), _tmpl$34 = /* @__PURE__ */ web.template(`<div class=relative><!$><!/><!$><!/>`), _tmpl$35 = /* @__PURE__ */ web.template(`<button type=button class="inline-flex items-center gap-1 px-2.5 py-1 text-xs font-medium border border-dashed border-gray-300 dark:border-gray-600 text-gray-500 dark:text-gray-400 rounded-full hover:border-blue-400 hover:text-blue-500 transition-colors">+ <!$><!/>`), _tmpl$36 = /* @__PURE__ */ web.template(`<form class="flex gap-1"><input type=text autofocus class="flex-1 px-2 py-1 text-sm border border-gray-200 dark:border-gray-600 rounded bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:border-blue-400 outline-none"><button type=submit class="px-2 py-1 text-xs bg-blue-600 text-white rounded hover:bg-blue-700">OK</button><button type=button class="px-2 py-1 text-xs text-gray-500 hover:text-gray-700">Cancel`), _tmpl$37 = /* @__PURE__ */ web.template(`<span class=ml-1>✓`), _tmpl$38 = /* @__PURE__ */ web.template(`<button type=button><!$><!/><!$><!/>`), _tmpl$39 = /* @__PURE__ */ web.template(`<form class="flex flex-col gap-3"><!$><!/><div class="flex justify-end"><button type=submit class="px-4 py-2 text-sm font-medium rounded-lg text-white bg-blue-600 hover:bg-blue-700 transition-colors">`), _tmpl$40 = /* @__PURE__ */ web.template(`<div class="flex justify-end"><button type=button class="px-3 py-1.5 text-sm font-medium text-blue-600 dark:text-blue-400 hover:bg-blue-50 dark:hover:bg-blue-900/20 rounded-lg transition-colors flex items-center gap-1">Next <svg class="w-3.5 h-3.5"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M9 5l7 7-7 7">`), _tmpl$41 = /* @__PURE__ */ web.template(`<div class=space-y-3><!$><!/><!$><!/>`), _tmpl$42 = /* @__PURE__ */ web.template(`<span class="text-xs font-normal text-gray-500 dark:text-gray-400">— <!$><!/>`), _tmpl$43 = /* @__PURE__ */ web.template(`<div class="mt-2 ml-6">`), _tmpl$44 = /* @__PURE__ */ web.template(`<div><div><span></span><!$><!/><!$><!/></div><!$><!/>`), _tmpl$45 = /* @__PURE__ */ web.template(`<p class="text-sm font-medium text-gray-800 dark:text-gray-200 mb-2">`), _tmpl$46 = /* @__PURE__ */ web.template(`<span class=text-amber-600>(<!$><!/> unverified)`), _tmpl$47 = /* @__PURE__ */ web.template(`<div class="mb-2 flex items-center gap-2 text-xs"><span><!$><!/>% verified</span><!$><!/>`), _tmpl$48 = /* @__PURE__ */ web.template(`<div><!$><!/><!$><!/><!$><!/><div class="flex flex-wrap gap-2">`), _tmpl$49 = /* @__PURE__ */ web.template(`<span class="font-medium text-gray-800 dark:text-gray-200">`), _tmpl$50 = /* @__PURE__ */ web.template(`<span class=ml-1>&mdash; <!$><!/>`), _tmpl$51 = /* @__PURE__ */ web.template(`<div class="mb-2 p-2 rounded bg-gray-50 dark:bg-gray-800 border border-gray-200 dark:border-gray-700 text-xs text-gray-600 dark:text-gray-400"><!$><!/><!$><!/>`), _tmpl$52 = /* @__PURE__ */ web.template(`<span class=mr-1>`), _tmpl$53 = /* @__PURE__ */ web.template(`<div class=space-y-2><div class=space-y-1.5></div><!$><!/>`), _tmpl$54 = /* @__PURE__ */ web.template(`<div class="flex items-center gap-2 text-sm"><span></span><span class="text-gray-900 dark:text-white">`), _tmpl$55 = /* @__PURE__ */ web.template(`<div class="flex items-start gap-1.5 text-xs text-amber-600 dark:text-amber-400"><span class=flex-shrink-0>⚠️</span><span>`), _tmpl$56 = /* @__PURE__ */ web.template(`<span class=italic>&mdash; <!$><!/>`), _tmpl$57 = /* @__PURE__ */ web.template(`<div class="flex items-center gap-2 text-xs text-gray-500 dark:text-gray-400"><span><!$><!/> <!$><!/></span><!$><!/>`), _tmpl$58 = /* @__PURE__ */ web.template(`<div class="flex flex-wrap gap-2">`), _tmpl$59 = /* @__PURE__ */ web.template(`<div class="flex gap-1"><input type=text class="flex-1 px-3 py-2 text-sm border border-gray-200 dark:border-gray-600 rounded-lg bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:border-blue-400 outline-none"><button type=button class="px-3 py-2 text-sm bg-blue-600 text-white rounded-lg hover:bg-blue-700">Send`), _tmpl$60 = /* @__PURE__ */ web.template(`<div class=space-y-3><p class="text-sm text-gray-700 dark:text-gray-300"></p><!$><!/><!$><!/>`), _tmpl$61 = /* @__PURE__ */ web.template(`<span>`), _tmpl$62 = /* @__PURE__ */ web.template(`<p class="text-xs text-gray-500 dark:text-gray-400 italic">"<!$><!/>"`), _tmpl$63 = /* @__PURE__ */ web.template(`<div class="mt-2 px-3 py-2 bg-blue-50 dark:bg-blue-900/10 rounded-lg text-sm text-blue-700 dark:text-blue-300"><span class=font-medium>Plan:</span> <!$><!/>`), _tmpl$64 = /* @__PURE__ */ web.template(`<button type=button class="text-xs text-blue-600 dark:text-blue-400 hover:underline flex items-center gap-1">&#9998; Modify`), _tmpl$65 = /* @__PURE__ */ web.template(`<div class=space-y-2><!$><!/><div class=space-y-1></div><!$><!/><!$><!/>`), _tmpl$66 = /* @__PURE__ */ web.template(`<div class="flex gap-2 text-sm"><span class="text-gray-500 dark:text-gray-400 font-medium min-w-[80px]"><!$><!/>:</span><span class="text-gray-900 dark:text-white">`), _tmpl$67 = /* @__PURE__ */ web.template(`<div class="flex items-center gap-1 flex-wrap">`), _tmpl$68 = /* @__PURE__ */ web.template(`<div class=space-y-2>`), _tmpl$69 = /* @__PURE__ */ web.template(`<span class="ml-1 text-xs text-gray-500 dark:text-gray-400">— <!$><!/>`), _tmpl$70 = /* @__PURE__ */ web.template(`<span class="ml-1 text-xs text-gray-400">(<!$><!/>ms)`), _tmpl$71 = /* @__PURE__ */ web.template(`<div><span class=flex-shrink-0></span><div><span></span><!$><!/><!$><!/>`), _tmpl$72 = /* @__PURE__ */ web.template(`<span class="text-[10px] opacity-75">`), _tmpl$73 = /* @__PURE__ */ web.template(`<div><span></span><span></span><!$><!/>`), _tmpl$74 = /* @__PURE__ */ web.template(`<button type=button>&#128260; <!$><!/>`), _tmpl$75 = /* @__PURE__ */ web.template(`<button type=button class="px-2 py-1 text-xs opacity-70 hover:opacity-100">&#9654; Details`), _tmpl$76 = /* @__PURE__ */ web.template(`<pre class="mt-2 text-xs opacity-70 overflow-x-auto">`), _tmpl$77 = /* @__PURE__ */ web.template(`<div><div class="flex items-start gap-2"><span class=flex-shrink-0></span><div class=flex-1><p></p><div class="flex gap-2 mt-2"><!$><!/><!$><!/></div><!$><!/>`), _tmpl$78 = /* @__PURE__ */ web.template(`<span class="text-xs font-bold text-blue-600 dark:text-blue-400"><!$><!/> results`), _tmpl$79 = /* @__PURE__ */ web.template(`<p class="text-[10px] text-gray-400">`), _tmpl$80 = /* @__PURE__ */ web.template(`<div class="rounded-lg border border-gray-200 dark:border-gray-700 px-3 py-2"><div class="flex items-center justify-between mb-1.5"><span class="text-sm font-medium text-gray-900 dark:text-white"><!$><!/> <!$><!/></span><!$><!/></div><div class="flex flex-wrap gap-1.5 mb-1"></div><!$><!/>`), _tmpl$81 = /* @__PURE__ */ web.template(`<span><!$><!/> <!$><!/>`), _tmpl$82 = /* @__PURE__ */ web.template(`<div class=overflow-x-auto><table class="min-w-full text-xs"><thead><tr><th class="px-2 py-1 text-left text-gray-500 dark:text-gray-400"></th><th class="px-2 py-1 text-left font-medium text-blue-600 dark:text-blue-400"></th><th class="px-2 py-1 text-left font-medium text-purple-600 dark:text-purple-400"></th></tr></thead><tbody>`), _tmpl$83 = /* @__PURE__ */ web.template(`<tr><td class="px-2 py-1 font-mono text-gray-500 dark:text-gray-400"></td><td class="px-2 py-1 text-gray-900 dark:text-white"></td><td class="px-2 py-1 text-gray-900 dark:text-white">`);
13
17
  const STATUS_BADGES = {
14
18
  loading: {
15
19
  label: "Loading...",
@@ -148,9 +152,23 @@ const ScratchpadPanel = (props) => {
148
152
  if (previewTimer) clearTimeout(previewTimer);
149
153
  });
150
154
  return (() => {
151
- var _el$ = web.getNextElement(_tmpl$12), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.firstChild, _el$5 = _el$4.nextSibling, _el$7 = _el$5.nextSibling, [_el$8, _co$] = web.getNextMarker(_el$7.nextSibling), _el$9 = _el$3.nextSibling, _el$0 = _el$9.firstChild, _el$10 = _el$0.nextSibling, [_el$11, _co$2] = web.getNextMarker(_el$10.nextSibling), _el$67 = _el$2.nextSibling, [_el$68, _co$15] = web.getNextMarker(_el$67.nextSibling), _el$51 = _el$68.nextSibling, _el$69 = _el$51.nextSibling, [_el$70, _co$16] = web.getNextMarker(_el$69.nextSibling);
155
+ var _el$ = web.getNextElement(_tmpl$12), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild, _el$4 = _el$3.firstChild, _el$5 = _el$4.nextSibling, _el$7 = _el$5.nextSibling, [_el$8, _co$] = web.getNextMarker(_el$7.nextSibling), _el$9 = _el$8.nextSibling, [_el$0, _co$2] = web.getNextMarker(_el$9.nextSibling), _el$1 = _el$3.nextSibling, _el$10 = _el$1.firstChild, _el$12 = _el$10.nextSibling, [_el$13, _co$3] = web.getNextMarker(_el$12.nextSibling), _el$69 = _el$2.nextSibling, [_el$70, _co$16] = web.getNextMarker(_el$69.nextSibling), _el$53 = _el$70.nextSibling, _el$71 = _el$53.nextSibling, [_el$72, _co$17] = web.getNextMarker(_el$71.nextSibling);
152
156
  _el$2.$$click = () => isCollapsible() && setCollapsed(!collapsed());
153
157
  web.insert(_el$5, () => props.state.title);
158
+ web.insert(_el$3, () => {
159
+ const agentSection = props.state.sections.find((s) => s.type === "agent_card");
160
+ if (!agentSection) return null;
161
+ const ac = parseContent(agentSection.content);
162
+ if (!(ac == null ? void 0 : ac.name)) return null;
163
+ return web.createComponent(AgentCard.AgentStatusBadge, {
164
+ get agentName() {
165
+ return ac.name;
166
+ },
167
+ get status() {
168
+ return ac.status || "idle";
169
+ }
170
+ });
171
+ }, _el$8, _co$);
154
172
  web.insert(_el$3, web.createComponent(solidJs.Show, {
155
173
  get when() {
156
174
  return isCollapsible();
@@ -160,36 +178,36 @@ const ScratchpadPanel = (props) => {
160
178
  web.effect(() => web.setAttribute(_el$6, "class", `w-3.5 h-3.5 text-gray-400 transition-transform ${collapsed() ? "-rotate-90" : ""}`));
161
179
  return _el$6;
162
180
  }
163
- }), _el$8, _co$);
164
- web.insert(_el$0, () => badge().label);
165
- web.insert(_el$9, web.createComponent(solidJs.Show, {
181
+ }), _el$0, _co$2);
182
+ web.insert(_el$10, () => badge().label);
183
+ web.insert(_el$1, web.createComponent(solidJs.Show, {
166
184
  get when() {
167
185
  return web.memo(() => !!isClosable())() && props.onClose;
168
186
  },
169
187
  get children() {
170
- var _el$1 = web.getNextElement(_tmpl$2);
171
- _el$1.$$click = (e) => {
188
+ var _el$11 = web.getNextElement(_tmpl$2);
189
+ _el$11.$$click = (e) => {
172
190
  var _a2;
173
191
  e.stopPropagation();
174
192
  (_a2 = props.onClose) == null ? void 0 : _a2.call(props);
175
193
  };
176
194
  web.runHydrationEvents();
177
- return _el$1;
195
+ return _el$11;
178
196
  }
179
- }), _el$11, _co$2);
197
+ }), _el$13, _co$3);
180
198
  web.insert(_el$, web.createComponent(solidJs.Show, {
181
199
  get when() {
182
200
  return !collapsed();
183
201
  },
184
202
  get children() {
185
- var _el$12 = web.getNextElement(_tmpl$10), _el$41 = _el$12.firstChild, [_el$42, _co$7] = web.getNextMarker(_el$41.nextSibling), _el$14 = _el$42.nextSibling, _el$43 = _el$14.nextSibling, [_el$44, _co$8] = web.getNextMarker(_el$43.nextSibling), _el$45 = _el$44.nextSibling, [_el$46, _co$9] = web.getNextMarker(_el$45.nextSibling), _el$47 = _el$46.nextSibling, [_el$48, _co$0] = web.getNextMarker(_el$47.nextSibling), _el$49 = _el$48.nextSibling, [_el$50, _co$1] = web.getNextMarker(_el$49.nextSibling);
186
- web.insert(_el$12, web.createComponent(solidJs.Show, {
203
+ var _el$14 = web.getNextElement(_tmpl$10), _el$43 = _el$14.firstChild, [_el$44, _co$8] = web.getNextMarker(_el$43.nextSibling), _el$16 = _el$44.nextSibling, _el$45 = _el$16.nextSibling, [_el$46, _co$9] = web.getNextMarker(_el$45.nextSibling), _el$47 = _el$46.nextSibling, [_el$48, _co$0] = web.getNextMarker(_el$47.nextSibling), _el$49 = _el$48.nextSibling, [_el$50, _co$1] = web.getNextMarker(_el$49.nextSibling), _el$51 = _el$50.nextSibling, [_el$52, _co$10] = web.getNextMarker(_el$51.nextSibling);
204
+ web.insert(_el$14, web.createComponent(solidJs.Show, {
187
205
  get when() {
188
206
  return web.memo(() => !!props.state.turnHistory)() && props.state.turnHistory.length > 0;
189
207
  },
190
208
  get children() {
191
- var _el$13 = web.getNextElement(_tmpl$3);
192
- web.insert(_el$13, web.createComponent(solidJs.For, {
209
+ var _el$15 = web.getNextElement(_tmpl$3);
210
+ web.insert(_el$15, web.createComponent(solidJs.For, {
193
211
  get each() {
194
212
  return props.state.turnHistory;
195
213
  },
@@ -201,30 +219,30 @@ const ScratchpadPanel = (props) => {
201
219
  return web.getNextElement(_tmpl$13);
202
220
  }
203
221
  }), (() => {
204
- var _el$72 = web.getNextElement(_tmpl$15), _el$78 = _el$72.firstChild, [_el$79, _co$18] = web.getNextMarker(_el$78.nextSibling), _el$73 = _el$79.nextSibling, _el$80 = _el$73.nextSibling, [_el$81, _co$19] = web.getNextMarker(_el$80.nextSibling), _el$82 = _el$81.nextSibling, [_el$83, _co$20] = web.getNextMarker(_el$82.nextSibling);
205
- web.insert(_el$72, (() => {
222
+ var _el$74 = web.getNextElement(_tmpl$15), _el$80 = _el$74.firstChild, [_el$81, _co$19] = web.getNextMarker(_el$80.nextSibling), _el$75 = _el$81.nextSibling, _el$82 = _el$75.nextSibling, [_el$83, _co$20] = web.getNextMarker(_el$82.nextSibling), _el$84 = _el$83.nextSibling, [_el$85, _co$21] = web.getNextMarker(_el$84.nextSibling);
223
+ web.insert(_el$74, (() => {
206
224
  var _c$ = web.memo(() => turn.status === "done");
207
225
  return () => _c$() ? "✅" : turn.status === "active" ? "●" : "○";
208
- })(), _el$79, _co$18);
209
- web.insert(_el$72, () => turn.label, _el$81, _co$19);
210
- web.insert(_el$72, web.createComponent(solidJs.Show, {
226
+ })(), _el$81, _co$19);
227
+ web.insert(_el$74, () => turn.label, _el$83, _co$20);
228
+ web.insert(_el$74, web.createComponent(solidJs.Show, {
211
229
  get when() {
212
230
  return turn.summary;
213
231
  },
214
232
  get children() {
215
- var _el$74 = web.getNextElement(_tmpl$14), _el$75 = _el$74.firstChild, _el$76 = _el$75.nextSibling, [_el$77, _co$17] = web.getNextMarker(_el$76.nextSibling);
216
- web.insert(_el$74, () => turn.summary, _el$77, _co$17);
217
- return _el$74;
233
+ var _el$76 = web.getNextElement(_tmpl$14), _el$77 = _el$76.firstChild, _el$78 = _el$77.nextSibling, [_el$79, _co$18] = web.getNextMarker(_el$78.nextSibling);
234
+ web.insert(_el$76, () => turn.summary, _el$79, _co$18);
235
+ return _el$76;
218
236
  }
219
- }), _el$83, _co$20);
220
- web.effect(() => web.className(_el$72, `text-xs font-medium px-2 py-0.5 rounded-full ${turn.status === "done" ? "bg-green-100 dark:bg-green-900/30 text-green-700 dark:text-green-400" : turn.status === "active" ? "bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-400" : turn.status === "skipped" ? "bg-gray-100 dark:bg-gray-700 text-gray-400 line-through" : "bg-gray-100 dark:bg-gray-700 text-gray-400"}`));
221
- return _el$72;
237
+ }), _el$85, _co$21);
238
+ web.effect(() => web.className(_el$74, `text-xs font-medium px-2 py-0.5 rounded-full ${turn.status === "done" ? "bg-green-100 dark:bg-green-900/30 text-green-700 dark:text-green-400" : turn.status === "active" ? "bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-400" : turn.status === "skipped" ? "bg-gray-100 dark:bg-gray-700 text-gray-400 line-through" : "bg-gray-100 dark:bg-gray-700 text-gray-400"}`));
239
+ return _el$74;
222
240
  })()]
223
241
  }));
224
- return _el$13;
242
+ return _el$15;
225
243
  }
226
- }), _el$42, _co$7);
227
- web.insert(_el$14, web.createComponent(solidJs.For, {
244
+ }), _el$44, _co$8);
245
+ web.insert(_el$16, web.createComponent(solidJs.For, {
228
246
  get each() {
229
247
  return props.state.sections;
230
248
  },
@@ -245,188 +263,188 @@ const ScratchpadPanel = (props) => {
245
263
  }
246
264
  })
247
265
  }));
248
- web.insert(_el$12, web.createComponent(solidJs.Show, {
266
+ web.insert(_el$14, web.createComponent(solidJs.Show, {
249
267
  get when() {
250
268
  return props.state.agentMessages.length > 0;
251
269
  },
252
270
  get children() {
253
- var _el$15 = web.getNextElement(_tmpl$4);
254
- web.insert(_el$15, web.createComponent(solidJs.For, {
271
+ var _el$17 = web.getNextElement(_tmpl$4);
272
+ web.insert(_el$17, web.createComponent(solidJs.For, {
255
273
  get each() {
256
274
  return props.state.agentMessages;
257
275
  },
258
276
  children: (msg) => (() => {
259
- var _el$84 = web.getNextElement(_tmpl$16), _el$85 = _el$84.firstChild, _el$86 = _el$85.nextSibling;
260
- web.insert(_el$85, (() => {
277
+ var _el$86 = web.getNextElement(_tmpl$16), _el$87 = _el$86.firstChild, _el$88 = _el$87.nextSibling;
278
+ web.insert(_el$87, (() => {
261
279
  var _c$2 = web.memo(() => msg.type === "warning");
262
280
  return () => _c$2() ? "⚠️" : msg.type === "question" ? "❓" : "ℹ️";
263
281
  })());
264
- web.insert(_el$86, () => msg.text);
265
- web.effect(() => web.className(_el$84, `flex items-start gap-2 text-sm rounded-lg px-3 py-2 ${msg.type === "warning" ? "bg-amber-50 dark:bg-amber-900/10 text-amber-700 dark:text-amber-400" : msg.type === "question" ? "bg-blue-50 dark:bg-blue-900/10 text-blue-700 dark:text-blue-400 border border-blue-200 dark:border-blue-800" : "bg-gray-50 dark:bg-gray-700/50 text-gray-600 dark:text-gray-400"}`));
266
- return _el$84;
282
+ web.insert(_el$88, () => msg.text);
283
+ web.effect(() => web.className(_el$86, `flex items-start gap-2 text-sm rounded-lg px-3 py-2 ${msg.type === "warning" ? "bg-amber-50 dark:bg-amber-900/10 text-amber-700 dark:text-amber-400" : msg.type === "question" ? "bg-blue-50 dark:bg-blue-900/10 text-blue-700 dark:text-blue-400 border border-blue-200 dark:border-blue-800" : "bg-gray-50 dark:bg-gray-700/50 text-gray-600 dark:text-gray-400"}`));
284
+ return _el$86;
267
285
  })()
268
286
  }));
269
- return _el$15;
287
+ return _el$17;
270
288
  }
271
- }), _el$44, _co$8);
272
- web.insert(_el$12, web.createComponent(solidJs.Show, {
289
+ }), _el$46, _co$9);
290
+ web.insert(_el$14, web.createComponent(solidJs.Show, {
273
291
  get when() {
274
292
  return preview();
275
293
  },
276
294
  get children() {
277
- var _el$16 = web.getNextElement(_tmpl$6);
278
- web.insert(_el$16, web.createComponent(solidJs.Show, {
295
+ var _el$18 = web.getNextElement(_tmpl$6);
296
+ web.insert(_el$18, web.createComponent(solidJs.Show, {
279
297
  get when() {
280
298
  return preview().count === 0;
281
299
  },
282
300
  get fallback() {
283
301
  return [(() => {
284
- var _el$87 = web.getNextElement(_tmpl$17), _el$88 = _el$87.firstChild, _el$89 = _el$88.nextSibling;
285
- web.insert(_el$89, () => preview().count.toLocaleString());
286
- return _el$87;
302
+ var _el$89 = web.getNextElement(_tmpl$17), _el$90 = _el$89.firstChild, _el$91 = _el$90.nextSibling;
303
+ web.insert(_el$91, () => preview().count.toLocaleString());
304
+ return _el$89;
287
305
  })(), (() => {
288
- var _el$90 = web.getNextElement(_tmpl$18);
289
- web.insert(_el$90, () => preview().summary);
290
- return _el$90;
306
+ var _el$92 = web.getNextElement(_tmpl$18);
307
+ web.insert(_el$92, () => preview().summary);
308
+ return _el$92;
291
309
  })(), web.createComponent(solidJs.Show, {
292
310
  get when() {
293
311
  return web.memo(() => !!preview().rows)() && preview().rows.length > 0;
294
312
  },
295
313
  get children() {
296
- var _el$91 = web.getNextElement(_tmpl$19), _el$92 = _el$91.firstChild, _el$93 = _el$92.firstChild, _el$94 = _el$93.firstChild, _el$95 = _el$93.nextSibling;
297
- web.insert(_el$94, web.createComponent(solidJs.For, {
314
+ var _el$93 = web.getNextElement(_tmpl$19), _el$94 = _el$93.firstChild, _el$95 = _el$94.firstChild, _el$96 = _el$95.firstChild, _el$97 = _el$95.nextSibling;
315
+ web.insert(_el$96, web.createComponent(solidJs.For, {
298
316
  get each() {
299
317
  return Object.keys(preview().rows[0]);
300
318
  },
301
319
  children: (k) => (() => {
302
- var _el$96 = web.getNextElement(_tmpl$20);
303
- web.insert(_el$96, k);
304
- return _el$96;
320
+ var _el$98 = web.getNextElement(_tmpl$20);
321
+ web.insert(_el$98, k);
322
+ return _el$98;
305
323
  })()
306
324
  }));
307
- web.insert(_el$95, web.createComponent(solidJs.For, {
325
+ web.insert(_el$97, web.createComponent(solidJs.For, {
308
326
  get each() {
309
327
  return preview().rows.slice(0, 5);
310
328
  },
311
329
  children: (row) => (() => {
312
- var _el$97 = web.getNextElement(_tmpl$21);
313
- web.insert(_el$97, web.createComponent(solidJs.For, {
330
+ var _el$99 = web.getNextElement(_tmpl$21);
331
+ web.insert(_el$99, web.createComponent(solidJs.For, {
314
332
  get each() {
315
333
  return Object.values(row);
316
334
  },
317
335
  children: (v) => (() => {
318
- var _el$98 = web.getNextElement(_tmpl$22);
319
- web.insert(_el$98, () => String(v));
320
- return _el$98;
336
+ var _el$100 = web.getNextElement(_tmpl$22);
337
+ web.insert(_el$100, () => String(v));
338
+ return _el$100;
321
339
  })()
322
340
  }));
323
- return _el$97;
341
+ return _el$99;
324
342
  })()
325
343
  }));
326
- return _el$91;
344
+ return _el$93;
327
345
  }
328
346
  })];
329
347
  },
330
348
  get children() {
331
- var _el$17 = web.getNextElement(_tmpl$5), _el$18 = _el$17.firstChild, _el$19 = _el$18.nextSibling, _el$20 = _el$19.nextSibling;
332
- _el$20.$$click = () => {
349
+ var _el$19 = web.getNextElement(_tmpl$5), _el$20 = _el$19.firstChild, _el$21 = _el$20.nextSibling, _el$22 = _el$21.nextSibling;
350
+ _el$22.$$click = () => {
333
351
  var _a2;
334
352
  return (_a2 = props.onAction) == null ? void 0 : _a2.call(props, "refine_filters");
335
353
  };
336
354
  web.runHydrationEvents();
337
- return _el$17;
355
+ return _el$19;
338
356
  }
339
357
  }));
340
- return _el$16;
358
+ return _el$18;
341
359
  }
342
- }), _el$46, _co$9);
343
- web.insert(_el$12, web.createComponent(solidJs.Show, {
360
+ }), _el$48, _co$0);
361
+ web.insert(_el$14, web.createComponent(solidJs.Show, {
344
362
  get when() {
345
363
  return web.memo(() => props.state.status === "error")() && props.state.error;
346
364
  },
347
365
  get children() {
348
- var _el$21 = web.getNextElement(_tmpl$0), _el$22 = _el$21.firstChild, _el$23 = _el$22.firstChild, _el$24 = _el$23.nextSibling, _el$25 = _el$24.firstChild, _el$30 = _el$25.nextSibling, [_el$31, _co$4] = web.getNextMarker(_el$30.nextSibling), _el$32 = _el$22.nextSibling, _el$35 = _el$32.firstChild, [_el$36, _co$5] = web.getNextMarker(_el$35.nextSibling), _el$37 = _el$36.nextSibling, [_el$38, _co$6] = web.getNextMarker(_el$37.nextSibling);
349
- web.insert(_el$25, () => props.state.error.message);
350
- web.insert(_el$24, web.createComponent(solidJs.Show, {
366
+ var _el$23 = web.getNextElement(_tmpl$0), _el$24 = _el$23.firstChild, _el$25 = _el$24.firstChild, _el$26 = _el$25.nextSibling, _el$27 = _el$26.firstChild, _el$32 = _el$27.nextSibling, [_el$33, _co$5] = web.getNextMarker(_el$32.nextSibling), _el$34 = _el$24.nextSibling, _el$37 = _el$34.firstChild, [_el$38, _co$6] = web.getNextMarker(_el$37.nextSibling), _el$39 = _el$38.nextSibling, [_el$40, _co$7] = web.getNextMarker(_el$39.nextSibling);
367
+ web.insert(_el$27, () => props.state.error.message);
368
+ web.insert(_el$26, web.createComponent(solidJs.Show, {
351
369
  get when() {
352
370
  return props.state.error.code;
353
371
  },
354
372
  get children() {
355
- var _el$26 = web.getNextElement(_tmpl$7), _el$27 = _el$26.firstChild, _el$28 = _el$27.nextSibling, [_el$29, _co$3] = web.getNextMarker(_el$28.nextSibling);
356
- web.insert(_el$26, () => props.state.error.code, _el$29, _co$3);
357
- return _el$26;
373
+ var _el$28 = web.getNextElement(_tmpl$7), _el$29 = _el$28.firstChild, _el$30 = _el$29.nextSibling, [_el$31, _co$4] = web.getNextMarker(_el$30.nextSibling);
374
+ web.insert(_el$28, () => props.state.error.code, _el$31, _co$4);
375
+ return _el$28;
358
376
  }
359
- }), _el$31, _co$4);
360
- web.insert(_el$32, web.createComponent(solidJs.Show, {
377
+ }), _el$33, _co$5);
378
+ web.insert(_el$34, web.createComponent(solidJs.Show, {
361
379
  get when() {
362
380
  return props.state.error.retryable !== false;
363
381
  },
364
382
  get children() {
365
- var _el$33 = web.getNextElement(_tmpl$8);
366
- _el$33.$$click = () => {
383
+ var _el$35 = web.getNextElement(_tmpl$8);
384
+ _el$35.$$click = () => {
367
385
  var _a2;
368
386
  return (_a2 = props.onRetry) == null ? void 0 : _a2.call(props);
369
387
  };
370
388
  web.runHydrationEvents();
371
- return _el$33;
389
+ return _el$35;
372
390
  }
373
- }), _el$36, _co$5);
374
- web.insert(_el$32, web.createComponent(solidJs.Show, {
391
+ }), _el$38, _co$6);
392
+ web.insert(_el$34, web.createComponent(solidJs.Show, {
375
393
  get when() {
376
394
  return props.onClose;
377
395
  },
378
396
  get children() {
379
- var _el$34 = web.getNextElement(_tmpl$9);
380
- _el$34.$$click = () => {
397
+ var _el$36 = web.getNextElement(_tmpl$9);
398
+ _el$36.$$click = () => {
381
399
  var _a2;
382
400
  return (_a2 = props.onClose) == null ? void 0 : _a2.call(props);
383
401
  };
384
402
  web.runHydrationEvents();
385
- return _el$34;
403
+ return _el$36;
386
404
  }
387
- }), _el$38, _co$6);
388
- return _el$21;
405
+ }), _el$40, _co$7);
406
+ return _el$23;
389
407
  }
390
- }), _el$48, _co$0);
391
- web.insert(_el$12, web.createComponent(solidJs.Show, {
408
+ }), _el$50, _co$1);
409
+ web.insert(_el$14, web.createComponent(solidJs.Show, {
392
410
  get when() {
393
411
  return web.memo(() => props.state.status === "waiting_human")() && hasFilters();
394
412
  },
395
413
  get children() {
396
- var _el$39 = web.getNextElement(_tmpl$1), _el$40 = _el$39.firstChild;
397
- _el$40.$$click = () => handleAction("search", {
414
+ var _el$41 = web.getNextElement(_tmpl$1), _el$42 = _el$41.firstChild;
415
+ _el$42.$$click = () => handleAction("search", {
398
416
  filters: props.state.filters
399
417
  });
400
418
  web.runHydrationEvents();
401
- return _el$39;
419
+ return _el$41;
402
420
  }
403
- }), _el$50, _co$1);
404
- web.effect((_$p) => web.setStyleProperty(_el$12, "max-height", props.maxHeight || "500px"));
405
- return _el$12;
421
+ }), _el$52, _co$10);
422
+ web.effect((_$p) => web.setStyleProperty(_el$14, "max-height", props.maxHeight || "500px"));
423
+ return _el$14;
406
424
  }
407
- }), _el$68, _co$15);
425
+ }), _el$70, _co$16);
408
426
  web.insert(_el$, web.createComponent(solidJs.Show, {
409
427
  get when() {
410
428
  return props.debugOverlay;
411
429
  },
412
430
  get children() {
413
- var _el$52 = web.getNextElement(_tmpl$11), _el$57 = _el$52.firstChild, [_el$58, _co$10] = web.getNextMarker(_el$57.nextSibling), _el$53 = _el$58.nextSibling, _el$59 = _el$53.nextSibling, [_el$60, _co$11] = web.getNextMarker(_el$59.nextSibling), _el$54 = _el$60.nextSibling, _el$61 = _el$54.nextSibling, [_el$62, _co$12] = web.getNextMarker(_el$61.nextSibling), _el$55 = _el$62.nextSibling, _el$63 = _el$55.nextSibling, [_el$64, _co$13] = web.getNextMarker(_el$63.nextSibling), _el$56 = _el$64.nextSibling, _el$65 = _el$56.nextSibling, [_el$66, _co$14] = web.getNextMarker(_el$65.nextSibling);
414
- web.insert(_el$52, () => props.state.id, _el$58, _co$10);
415
- web.insert(_el$52, eventCount, _el$60, _co$11);
416
- web.insert(_el$52, () => {
431
+ var _el$54 = web.getNextElement(_tmpl$11), _el$59 = _el$54.firstChild, [_el$60, _co$11] = web.getNextMarker(_el$59.nextSibling), _el$55 = _el$60.nextSibling, _el$61 = _el$55.nextSibling, [_el$62, _co$12] = web.getNextMarker(_el$61.nextSibling), _el$56 = _el$62.nextSibling, _el$63 = _el$56.nextSibling, [_el$64, _co$13] = web.getNextMarker(_el$63.nextSibling), _el$57 = _el$64.nextSibling, _el$65 = _el$57.nextSibling, [_el$66, _co$14] = web.getNextMarker(_el$65.nextSibling), _el$58 = _el$66.nextSibling, _el$67 = _el$58.nextSibling, [_el$68, _co$15] = web.getNextMarker(_el$67.nextSibling);
432
+ web.insert(_el$54, () => props.state.id, _el$60, _co$11);
433
+ web.insert(_el$54, eventCount, _el$62, _co$12);
434
+ web.insert(_el$54, () => {
417
435
  var _a2;
418
436
  return ((_a2 = props.state.sections) == null ? void 0 : _a2.length) || 0;
419
- }, _el$62, _co$12);
420
- web.insert(_el$52, () => props.state.status, _el$64, _co$13);
421
- web.insert(_el$52, lastEvent, _el$66, _co$14);
422
- return _el$52;
437
+ }, _el$64, _co$13);
438
+ web.insert(_el$54, () => props.state.status, _el$66, _co$14);
439
+ web.insert(_el$54, lastEvent, _el$68, _co$15);
440
+ return _el$54;
423
441
  }
424
- }), _el$70, _co$16);
442
+ }), _el$72, _co$17);
425
443
  web.effect((_p$) => {
426
444
  var _v$ = `w-full bg-white dark:bg-gray-800 rounded-xl border shadow-lg overflow-visible ${props.state.status === "waiting_human" ? "border-blue-300 dark:border-blue-600" : "border-gray-200 dark:border-gray-700"} ${props.pinned ? "sticky top-0 z-40" : ""}`, _v$2 = `flex items-center justify-between px-4 py-3 border-b border-gray-100 dark:border-gray-700 ${isCollapsible() ? "cursor-pointer select-none hover:bg-gray-50 dark:hover:bg-gray-750" : ""}`, _v$3 = `px-2 py-0.5 text-xs font-medium rounded-full ${badge().class}`;
427
445
  _v$ !== _p$.e && web.className(_el$, _p$.e = _v$);
428
446
  _v$2 !== _p$.t && web.className(_el$2, _p$.t = _v$2);
429
- _v$3 !== _p$.a && web.className(_el$0, _p$.a = _v$3);
447
+ _v$3 !== _p$.a && web.className(_el$10, _p$.a = _v$3);
430
448
  return _p$;
431
449
  }, {
432
450
  e: void 0,
@@ -449,9 +467,9 @@ function parseContent(content) {
449
467
  }
450
468
  const SectionRenderer = (props) => {
451
469
  return (() => {
452
- var _el$99 = web.getNextElement(_tmpl$24), _el$100 = _el$99.firstChild, _el$103 = _el$100.nextSibling, [_el$104, _co$21] = web.getNextMarker(_el$103.nextSibling);
453
- web.insert(_el$100, () => props.section.title);
454
- web.insert(_el$99, web.createComponent(solidJs.Switch, {
470
+ var _el$101 = web.getNextElement(_tmpl$24), _el$102 = _el$101.firstChild, _el$105 = _el$102.nextSibling, [_el$106, _co$22] = web.getNextMarker(_el$105.nextSibling);
471
+ web.insert(_el$102, () => props.section.title);
472
+ web.insert(_el$101, web.createComponent(solidJs.Switch, {
455
473
  get children() {
456
474
  return [web.createComponent(solidJs.Match, {
457
475
  get when() {
@@ -486,9 +504,9 @@ const SectionRenderer = (props) => {
486
504
  return props.section.type === "message";
487
505
  },
488
506
  get children() {
489
- var _el$101 = web.getNextElement(_tmpl$18);
490
- web.insert(_el$101, () => String(props.section.content));
491
- return _el$101;
507
+ var _el$103 = web.getNextElement(_tmpl$18);
508
+ web.insert(_el$103, () => String(props.section.content));
509
+ return _el$103;
492
510
  }
493
511
  }), web.createComponent(solidJs.Match, {
494
512
  get when() {
@@ -699,40 +717,84 @@ const SectionRenderer = (props) => {
699
717
  });
700
718
  })();
701
719
  }
720
+ }), web.createComponent(solidJs.Match, {
721
+ get when() {
722
+ return props.section.type === "agent_card";
723
+ },
724
+ get children() {
725
+ return web.createComponent(AgentCard.AgentCard, {
726
+ get content() {
727
+ return parseContent(props.section.content);
728
+ }
729
+ });
730
+ }
731
+ }), web.createComponent(solidJs.Match, {
732
+ get when() {
733
+ return props.section.type === "split_stepper";
734
+ },
735
+ get children() {
736
+ return web.createComponent(SplitStepper.SplitStepper, {
737
+ get content() {
738
+ return parseContent(props.section.content);
739
+ }
740
+ });
741
+ }
742
+ }), web.createComponent(solidJs.Match, {
743
+ get when() {
744
+ return props.section.type === "agent_handoff";
745
+ },
746
+ get children() {
747
+ return web.createComponent(AgentHandoff.AgentHandoff, {
748
+ get content() {
749
+ return parseContent(props.section.content);
750
+ }
751
+ });
752
+ }
753
+ }), web.createComponent(solidJs.Match, {
754
+ get when() {
755
+ return props.section.type === "briefing_diff";
756
+ },
757
+ get children() {
758
+ return web.createComponent(BriefingDiff.BriefingDiff, {
759
+ get content() {
760
+ return parseContent(props.section.content);
761
+ }
762
+ });
763
+ }
702
764
  }), web.createComponent(solidJs.Match, {
703
765
  when: true,
704
766
  get children() {
705
- var _el$102 = web.getNextElement(_tmpl$23);
706
- web.insert(_el$102, () => JSON.stringify(props.section.content, null, 2));
707
- return _el$102;
767
+ var _el$104 = web.getNextElement(_tmpl$23);
768
+ web.insert(_el$104, () => JSON.stringify(props.section.content, null, 2));
769
+ return _el$104;
708
770
  }
709
771
  })];
710
772
  }
711
- }), _el$104, _co$21);
712
- return _el$99;
773
+ }), _el$106, _co$22);
774
+ return _el$101;
713
775
  })();
714
776
  };
715
777
  const DataSection = (props) => {
716
778
  const entries = () => typeof props.content === "object" && props.content ? Object.entries(props.content) : [];
717
779
  return (() => {
718
- var _el$105 = web.getNextElement(_tmpl$25);
719
- web.insert(_el$105, web.createComponent(solidJs.For, {
780
+ var _el$107 = web.getNextElement(_tmpl$25);
781
+ web.insert(_el$107, web.createComponent(solidJs.For, {
720
782
  get each() {
721
783
  return entries();
722
784
  },
723
785
  children: ([k, v]) => (() => {
724
- var _el$106 = web.getNextElement(_tmpl$26), _el$107 = _el$106.firstChild, _el$109 = _el$107.firstChild, [_el$110, _co$22] = web.getNextMarker(_el$109.nextSibling);
725
- _el$110.nextSibling;
726
- var _el$111 = _el$107.nextSibling;
727
- web.insert(_el$107, k, _el$110, _co$22);
728
- web.insert(_el$111, (() => {
786
+ var _el$108 = web.getNextElement(_tmpl$26), _el$109 = _el$108.firstChild, _el$111 = _el$109.firstChild, [_el$112, _co$23] = web.getNextMarker(_el$111.nextSibling);
787
+ _el$112.nextSibling;
788
+ var _el$113 = _el$109.nextSibling;
789
+ web.insert(_el$109, k, _el$112, _co$23);
790
+ web.insert(_el$113, (() => {
729
791
  var _c$3 = web.memo(() => !!Array.isArray(v));
730
792
  return () => _c$3() ? v.join(", ") : String(v);
731
793
  })());
732
- return _el$106;
794
+ return _el$108;
733
795
  })()
734
796
  }));
735
- return _el$105;
797
+ return _el$107;
736
798
  })();
737
799
  };
738
800
  const InteractiveFilterSection = (props) => {
@@ -766,8 +828,8 @@ const InteractiveFilterSection = (props) => {
766
828
  };
767
829
  const getDef = (key) => filterDefs()[key] || {};
768
830
  return (() => {
769
- var _el$112 = web.getNextElement(_tmpl$28), _el$114 = _el$112.firstChild, [_el$115, _co$23] = web.getNextMarker(_el$114.nextSibling), _el$116 = _el$115.nextSibling, [_el$117, _co$24] = web.getNextMarker(_el$116.nextSibling);
770
- web.insert(_el$112, web.createComponent(solidJs.For, {
831
+ var _el$114 = web.getNextElement(_tmpl$28), _el$116 = _el$114.firstChild, [_el$117, _co$24] = web.getNextMarker(_el$116.nextSibling), _el$118 = _el$117.nextSibling, [_el$119, _co$25] = web.getNextMarker(_el$118.nextSibling);
832
+ web.insert(_el$114, web.createComponent(solidJs.For, {
771
833
  get each() {
772
834
  return allKeys();
773
835
  },
@@ -776,136 +838,136 @@ const InteractiveFilterSection = (props) => {
776
838
  const value = () => props.filters[key];
777
839
  const hasValue = () => value() !== void 0 && value() !== "";
778
840
  return (() => {
779
- var _el$118 = web.getNextElement(_tmpl$34), _el$134 = _el$118.firstChild, [_el$135, _co$28] = web.getNextMarker(_el$134.nextSibling), _el$136 = _el$135.nextSibling, [_el$137, _co$29] = web.getNextMarker(_el$136.nextSibling);
780
- web.insert(_el$118, web.createComponent(solidJs.Show, {
841
+ var _el$120 = web.getNextElement(_tmpl$34), _el$136 = _el$120.firstChild, [_el$137, _co$29] = web.getNextMarker(_el$136.nextSibling), _el$138 = _el$137.nextSibling, [_el$139, _co$30] = web.getNextMarker(_el$138.nextSibling);
842
+ web.insert(_el$120, web.createComponent(solidJs.Show, {
781
843
  get when() {
782
844
  return hasValue();
783
845
  },
784
846
  get fallback() {
785
847
  return (() => {
786
- var _el$138 = web.getNextElement(_tmpl$35), _el$139 = _el$138.firstChild, _el$140 = _el$139.nextSibling, [_el$141, _co$30] = web.getNextMarker(_el$140.nextSibling);
787
- _el$138.$$click = () => {
848
+ var _el$140 = web.getNextElement(_tmpl$35), _el$141 = _el$140.firstChild, _el$142 = _el$141.nextSibling, [_el$143, _co$31] = web.getNextMarker(_el$142.nextSibling);
849
+ _el$140.$$click = () => {
788
850
  setEditingKey(key);
789
851
  setEditValue("");
790
852
  };
791
- web.insert(_el$138, () => {
853
+ web.insert(_el$140, () => {
792
854
  var _a;
793
855
  return ((_a = def()) == null ? void 0 : _a.label) || key;
794
- }, _el$141, _co$30);
856
+ }, _el$143, _co$31);
795
857
  web.runHydrationEvents();
796
- return _el$138;
858
+ return _el$140;
797
859
  })();
798
860
  },
799
861
  get children() {
800
- var _el$119 = web.getNextElement(_tmpl$30), _el$120 = _el$119.firstChild, _el$121 = _el$120.firstChild, _el$123 = _el$121.firstChild, [_el$124, _co$25] = web.getNextMarker(_el$123.nextSibling);
801
- _el$124.nextSibling;
802
- var _el$125 = _el$121.nextSibling, _el$126 = _el$125.nextSibling, [_el$127, _co$26] = web.getNextMarker(_el$126.nextSibling), _el$129 = _el$120.nextSibling, [_el$130, _co$27] = web.getNextMarker(_el$129.nextSibling);
803
- _el$120.$$click = () => {
862
+ var _el$121 = web.getNextElement(_tmpl$30), _el$122 = _el$121.firstChild, _el$123 = _el$122.firstChild, _el$125 = _el$123.firstChild, [_el$126, _co$26] = web.getNextMarker(_el$125.nextSibling);
863
+ _el$126.nextSibling;
864
+ var _el$127 = _el$123.nextSibling, _el$128 = _el$127.nextSibling, [_el$129, _co$27] = web.getNextMarker(_el$128.nextSibling), _el$131 = _el$122.nextSibling, [_el$132, _co$28] = web.getNextMarker(_el$131.nextSibling);
865
+ _el$122.$$click = () => {
804
866
  setEditingKey(key);
805
867
  setEditValue(String(value() || ""));
806
868
  };
807
- web.insert(_el$121, () => {
869
+ web.insert(_el$123, () => {
808
870
  var _a;
809
871
  return ((_a = def()) == null ? void 0 : _a.label) || key;
810
- }, _el$124, _co$25);
811
- web.insert(_el$120, (() => {
872
+ }, _el$126, _co$26);
873
+ web.insert(_el$122, (() => {
812
874
  var _c$4 = web.memo(() => !!Array.isArray(value()));
813
875
  return () => _c$4() ? value().join(", ") : String(value());
814
- })(), _el$127, _co$26);
815
- web.insert(_el$119, web.createComponent(solidJs.Show, {
876
+ })(), _el$129, _co$27);
877
+ web.insert(_el$121, web.createComponent(solidJs.Show, {
816
878
  get when() {
817
879
  return props.onFilterChange;
818
880
  },
819
881
  get children() {
820
- var _el$128 = web.getNextElement(_tmpl$29);
821
- _el$128.$$click = () => removeFilter(key);
822
- web.setAttribute(_el$128, "aria-label", `Remove ${key}`);
882
+ var _el$130 = web.getNextElement(_tmpl$29);
883
+ _el$130.$$click = () => removeFilter(key);
884
+ web.setAttribute(_el$130, "aria-label", `Remove ${key}`);
823
885
  web.runHydrationEvents();
824
- return _el$128;
886
+ return _el$130;
825
887
  }
826
- }), _el$130, _co$27);
888
+ }), _el$132, _co$28);
827
889
  web.runHydrationEvents();
828
- return _el$119;
890
+ return _el$121;
829
891
  }
830
- }), _el$135, _co$28);
831
- web.insert(_el$118, web.createComponent(solidJs.Show, {
892
+ }), _el$137, _co$29);
893
+ web.insert(_el$120, web.createComponent(solidJs.Show, {
832
894
  get when() {
833
895
  return editingKey() === key;
834
896
  },
835
897
  get children() {
836
- var _el$131 = web.getNextElement(_tmpl$33);
837
- web.insert(_el$131, web.createComponent(solidJs.Show, {
898
+ var _el$133 = web.getNextElement(_tmpl$33);
899
+ web.insert(_el$133, web.createComponent(solidJs.Show, {
838
900
  get when() {
839
901
  var _a;
840
902
  return (_a = def()) == null ? void 0 : _a.options;
841
903
  },
842
904
  get fallback() {
843
905
  return (() => {
844
- var _el$142 = web.getNextElement(_tmpl$36), _el$143 = _el$142.firstChild, _el$144 = _el$143.nextSibling, _el$145 = _el$144.nextSibling;
845
- _el$142.addEventListener("submit", (e) => {
906
+ var _el$144 = web.getNextElement(_tmpl$36), _el$145 = _el$144.firstChild, _el$146 = _el$145.nextSibling, _el$147 = _el$146.nextSibling;
907
+ _el$144.addEventListener("submit", (e) => {
846
908
  e.preventDefault();
847
909
  setFilter(key, editValue());
848
910
  });
849
- _el$143.$$input = (e) => setEditValue(e.currentTarget.value);
850
- _el$145.$$click = () => setEditingKey(null);
911
+ _el$145.$$input = (e) => setEditValue(e.currentTarget.value);
912
+ _el$147.$$click = () => setEditingKey(null);
851
913
  web.effect(() => {
852
914
  var _a;
853
- return web.setAttribute(_el$143, "placeholder", ((_a = def()) == null ? void 0 : _a.placeholder) || key);
915
+ return web.setAttribute(_el$145, "placeholder", ((_a = def()) == null ? void 0 : _a.placeholder) || key);
854
916
  });
855
- web.effect(() => web.setProperty(_el$143, "value", editValue()));
917
+ web.effect(() => web.setProperty(_el$145, "value", editValue()));
856
918
  web.runHydrationEvents();
857
- return _el$142;
919
+ return _el$144;
858
920
  })();
859
921
  },
860
922
  get children() {
861
923
  return [(() => {
862
- var _el$132 = web.getNextElement(_tmpl$31);
863
- web.insert(_el$132, web.createComponent(solidJs.For, {
924
+ var _el$134 = web.getNextElement(_tmpl$31);
925
+ web.insert(_el$134, web.createComponent(solidJs.For, {
864
926
  get each() {
865
927
  return def().options;
866
928
  },
867
929
  children: (opt) => (() => {
868
- var _el$146 = web.getNextElement(_tmpl$38), _el$148 = _el$146.firstChild, [_el$149, _co$31] = web.getNextMarker(_el$148.nextSibling), _el$150 = _el$149.nextSibling, [_el$151, _co$32] = web.getNextMarker(_el$150.nextSibling);
869
- _el$146.$$click = () => setFilter(key, opt.value);
870
- web.insert(_el$146, () => opt.label, _el$149, _co$31);
871
- web.insert(_el$146, web.createComponent(solidJs.Show, {
930
+ var _el$148 = web.getNextElement(_tmpl$38), _el$150 = _el$148.firstChild, [_el$151, _co$32] = web.getNextMarker(_el$150.nextSibling), _el$152 = _el$151.nextSibling, [_el$153, _co$33] = web.getNextMarker(_el$152.nextSibling);
931
+ _el$148.$$click = () => setFilter(key, opt.value);
932
+ web.insert(_el$148, () => opt.label, _el$151, _co$32);
933
+ web.insert(_el$148, web.createComponent(solidJs.Show, {
872
934
  get when() {
873
935
  return String(value()) === opt.value;
874
936
  },
875
937
  get children() {
876
938
  return web.getNextElement(_tmpl$37);
877
939
  }
878
- }), _el$151, _co$32);
879
- web.effect(() => web.className(_el$146, `w-full text-left px-2 py-1.5 text-sm rounded hover:bg-blue-50 dark:hover:bg-blue-900/20 ${String(value()) === opt.value ? "text-blue-600 dark:text-blue-400 bg-blue-50/50 dark:bg-blue-900/10" : "text-gray-900 dark:text-white"}`));
940
+ }), _el$153, _co$33);
941
+ web.effect(() => web.className(_el$148, `w-full text-left px-2 py-1.5 text-sm rounded hover:bg-blue-50 dark:hover:bg-blue-900/20 ${String(value()) === opt.value ? "text-blue-600 dark:text-blue-400 bg-blue-50/50 dark:bg-blue-900/10" : "text-gray-900 dark:text-white"}`));
880
942
  web.runHydrationEvents();
881
- return _el$146;
943
+ return _el$148;
882
944
  })()
883
945
  }));
884
- return _el$132;
946
+ return _el$134;
885
947
  })(), (() => {
886
- var _el$133 = web.getNextElement(_tmpl$32);
887
- _el$133.$$click = () => setEditingKey(null);
948
+ var _el$135 = web.getNextElement(_tmpl$32);
949
+ _el$135.$$click = () => setEditingKey(null);
888
950
  web.runHydrationEvents();
889
- return _el$133;
951
+ return _el$135;
890
952
  })()];
891
953
  }
892
954
  }));
893
- return _el$131;
955
+ return _el$133;
894
956
  }
895
- }), _el$137, _co$29);
896
- return _el$118;
957
+ }), _el$139, _co$30);
958
+ return _el$120;
897
959
  })();
898
960
  }
899
- }), _el$115, _co$23);
900
- web.insert(_el$112, web.createComponent(solidJs.Show, {
961
+ }), _el$117, _co$24);
962
+ web.insert(_el$114, web.createComponent(solidJs.Show, {
901
963
  get when() {
902
964
  return allKeys().length === 0;
903
965
  },
904
966
  get children() {
905
967
  return web.getNextElement(_tmpl$27);
906
968
  }
907
- }), _el$117, _co$24);
908
- return _el$112;
969
+ }), _el$119, _co$25);
970
+ return _el$114;
909
971
  })();
910
972
  };
911
973
  const EmbeddedFormSection = (props) => {
@@ -972,9 +1034,9 @@ const EmbeddedFormSection = (props) => {
972
1034
  }
973
1035
  };
974
1036
  return (() => {
975
- var _el$152 = web.getNextElement(_tmpl$39), _el$155 = _el$152.firstChild, [_el$156, _co$33] = web.getNextMarker(_el$155.nextSibling), _el$153 = _el$156.nextSibling, _el$154 = _el$153.firstChild;
976
- _el$152.addEventListener("submit", handleSubmit);
977
- web.insert(_el$152, web.createComponent(solidJs.For, {
1037
+ var _el$154 = web.getNextElement(_tmpl$39), _el$157 = _el$154.firstChild, [_el$158, _co$34] = web.getNextMarker(_el$157.nextSibling), _el$155 = _el$158.nextSibling, _el$156 = _el$155.firstChild;
1038
+ _el$154.addEventListener("submit", handleSubmit);
1039
+ web.insert(_el$154, web.createComponent(solidJs.For, {
978
1040
  get each() {
979
1041
  return config().fields;
980
1042
  },
@@ -988,9 +1050,9 @@ const EmbeddedFormSection = (props) => {
988
1050
  onChange: (val) => updateField(field.name, val),
989
1051
  formData
990
1052
  })
991
- }), _el$156, _co$33);
992
- web.insert(_el$154, () => config().submitLabel);
993
- return _el$152;
1053
+ }), _el$158, _co$34);
1054
+ web.insert(_el$156, () => config().submitLabel);
1055
+ return _el$154;
994
1056
  })();
995
1057
  };
996
1058
  const EnrichedStepsSection = (props) => {
@@ -1002,35 +1064,35 @@ const EnrichedStepsSection = (props) => {
1002
1064
  };
1003
1065
  };
1004
1066
  return (() => {
1005
- var _el$157 = web.getNextElement(_tmpl$41), _el$160 = _el$157.firstChild, [_el$161, _co$34] = web.getNextMarker(_el$160.nextSibling), _el$162 = _el$161.nextSibling, [_el$163, _co$35] = web.getNextMarker(_el$162.nextSibling);
1006
- web.insert(_el$157, web.createComponent(solidJs.For, {
1067
+ var _el$159 = web.getNextElement(_tmpl$41), _el$162 = _el$159.firstChild, [_el$163, _co$35] = web.getNextMarker(_el$162.nextSibling), _el$164 = _el$163.nextSibling, [_el$165, _co$36] = web.getNextMarker(_el$164.nextSibling);
1068
+ web.insert(_el$159, web.createComponent(solidJs.For, {
1007
1069
  get each() {
1008
1070
  return stepsData().steps;
1009
1071
  },
1010
1072
  children: (step) => (() => {
1011
- var _el$164 = web.getNextElement(_tmpl$44), _el$165 = _el$164.firstChild, _el$166 = _el$165.firstChild, _el$171 = _el$166.nextSibling, [_el$172, _co$37] = web.getNextMarker(_el$171.nextSibling), _el$173 = _el$172.nextSibling, [_el$174, _co$38] = web.getNextMarker(_el$173.nextSibling), _el$176 = _el$165.nextSibling, [_el$177, _co$39] = web.getNextMarker(_el$176.nextSibling);
1012
- web.insert(_el$166, (() => {
1073
+ var _el$166 = web.getNextElement(_tmpl$44), _el$167 = _el$166.firstChild, _el$168 = _el$167.firstChild, _el$173 = _el$168.nextSibling, [_el$174, _co$38] = web.getNextMarker(_el$173.nextSibling), _el$175 = _el$174.nextSibling, [_el$176, _co$39] = web.getNextMarker(_el$175.nextSibling), _el$178 = _el$167.nextSibling, [_el$179, _co$40] = web.getNextMarker(_el$178.nextSibling);
1074
+ web.insert(_el$168, (() => {
1013
1075
  var _c$5 = web.memo(() => step.status === "done");
1014
1076
  return () => _c$5() ? "✅" : step.status === "active" ? "●" : "○";
1015
1077
  })());
1016
- web.insert(_el$165, () => step.label, _el$172, _co$37);
1017
- web.insert(_el$165, web.createComponent(solidJs.Show, {
1078
+ web.insert(_el$167, () => step.label, _el$174, _co$38);
1079
+ web.insert(_el$167, web.createComponent(solidJs.Show, {
1018
1080
  get when() {
1019
1081
  return web.memo(() => !!step.description)() && step.status === "active";
1020
1082
  },
1021
1083
  get children() {
1022
- var _el$167 = web.getNextElement(_tmpl$42), _el$168 = _el$167.firstChild, _el$169 = _el$168.nextSibling, [_el$170, _co$36] = web.getNextMarker(_el$169.nextSibling);
1023
- web.insert(_el$167, () => step.description, _el$170, _co$36);
1024
- return _el$167;
1084
+ var _el$169 = web.getNextElement(_tmpl$42), _el$170 = _el$169.firstChild, _el$171 = _el$170.nextSibling, [_el$172, _co$37] = web.getNextMarker(_el$171.nextSibling);
1085
+ web.insert(_el$169, () => step.description, _el$172, _co$37);
1086
+ return _el$169;
1025
1087
  }
1026
- }), _el$174, _co$38);
1027
- web.insert(_el$164, web.createComponent(solidJs.Show, {
1088
+ }), _el$176, _co$39);
1089
+ web.insert(_el$166, web.createComponent(solidJs.Show, {
1028
1090
  get when() {
1029
1091
  return web.memo(() => step.status === "active")() && step.content;
1030
1092
  },
1031
1093
  get children() {
1032
- var _el$175 = web.getNextElement(_tmpl$43);
1033
- web.insert(_el$175, web.createComponent(SectionRenderer, {
1094
+ var _el$177 = web.getNextElement(_tmpl$43);
1095
+ web.insert(_el$177, web.createComponent(SectionRenderer, {
1034
1096
  get section() {
1035
1097
  return step.content;
1036
1098
  },
@@ -1042,79 +1104,160 @@ const EnrichedStepsSection = (props) => {
1042
1104
  return props.onAction;
1043
1105
  }
1044
1106
  }));
1045
- return _el$175;
1107
+ return _el$177;
1046
1108
  }
1047
- }), _el$177, _co$39);
1109
+ }), _el$179, _co$40);
1048
1110
  web.effect((_p$) => {
1049
1111
  var _v$4 = `rounded-lg ${step.status === "active" ? "bg-blue-50/50 dark:bg-blue-900/10 border border-blue-200 dark:border-blue-800 p-3 animate-pulse" : "px-1"}`, _v$5 = `flex items-center gap-2 text-sm font-medium ${step.status === "done" ? "text-green-600 dark:text-green-400" : step.status === "active" ? "text-blue-600 dark:text-blue-400" : "text-gray-400"}`;
1050
- _v$4 !== _p$.e && web.className(_el$164, _p$.e = _v$4);
1051
- _v$5 !== _p$.t && web.className(_el$165, _p$.t = _v$5);
1112
+ _v$4 !== _p$.e && web.className(_el$166, _p$.e = _v$4);
1113
+ _v$5 !== _p$.t && web.className(_el$167, _p$.t = _v$5);
1052
1114
  return _p$;
1053
1115
  }, {
1054
1116
  e: void 0,
1055
1117
  t: void 0
1056
1118
  });
1057
- return _el$164;
1119
+ return _el$166;
1058
1120
  })()
1059
- }), _el$161, _co$34);
1060
- web.insert(_el$157, web.createComponent(solidJs.Show, {
1121
+ }), _el$163, _co$35);
1122
+ web.insert(_el$159, web.createComponent(solidJs.Show, {
1061
1123
  get when() {
1062
1124
  return stepsData().steps.some((s) => s.status === "active");
1063
1125
  },
1064
1126
  get children() {
1065
- var _el$158 = web.getNextElement(_tmpl$40), _el$159 = _el$158.firstChild;
1066
- _el$159.$$click = () => {
1127
+ var _el$160 = web.getNextElement(_tmpl$40), _el$161 = _el$160.firstChild;
1128
+ _el$161.$$click = () => {
1067
1129
  var _a;
1068
1130
  return (_a = props.onAction) == null ? void 0 : _a.call(props, "next_step", {
1069
1131
  step: stepsData().currentStep
1070
1132
  });
1071
1133
  };
1072
1134
  web.runHydrationEvents();
1073
- return _el$158;
1135
+ return _el$160;
1074
1136
  }
1075
- }), _el$163, _co$35);
1076
- return _el$157;
1137
+ }), _el$165, _co$36);
1138
+ return _el$159;
1077
1139
  })();
1078
1140
  };
1079
1141
  const ActionSection = (props) => {
1080
- const actions = () => {
1081
- if (Array.isArray(props.content)) return props.content;
1082
- const obj = props.content;
1083
- if (obj && Array.isArray(obj.actions)) {
1084
- console.warn("[MCP-UI] ActionSection: content should be an array, got { actions: [...] }. Unwrapping automatically.");
1085
- return obj.actions;
1086
- }
1087
- return [];
1142
+ const data = () => {
1143
+ const c = props.content;
1144
+ if (Array.isArray(c)) return {
1145
+ actions: c,
1146
+ title: void 0,
1147
+ preview: void 0,
1148
+ validation: void 0
1149
+ };
1150
+ if (c && Array.isArray(c.actions)) return {
1151
+ actions: c.actions,
1152
+ title: c.title,
1153
+ preview: c.preview,
1154
+ validation: c.validation
1155
+ };
1156
+ return {
1157
+ actions: [],
1158
+ title: void 0,
1159
+ preview: void 0,
1160
+ validation: void 0
1161
+ };
1088
1162
  };
1089
1163
  return (() => {
1090
- var _el$178 = web.getNextElement(_tmpl$45);
1091
- web.insert(_el$178, web.createComponent(solidJs.For, {
1164
+ var _el$180 = web.getNextElement(_tmpl$48), _el$195 = _el$180.firstChild, [_el$196, _co$44] = web.getNextMarker(_el$195.nextSibling), _el$197 = _el$196.nextSibling, [_el$198, _co$45] = web.getNextMarker(_el$197.nextSibling), _el$199 = _el$198.nextSibling, [_el$200, _co$46] = web.getNextMarker(_el$199.nextSibling), _el$194 = _el$200.nextSibling;
1165
+ web.insert(_el$180, web.createComponent(solidJs.Show, {
1166
+ get when() {
1167
+ return data().title;
1168
+ },
1169
+ get children() {
1170
+ var _el$181 = web.getNextElement(_tmpl$45);
1171
+ web.insert(_el$181, () => data().title);
1172
+ return _el$181;
1173
+ }
1174
+ }), _el$196, _co$44);
1175
+ web.insert(_el$180, web.createComponent(solidJs.Show, {
1176
+ get when() {
1177
+ return data().preview;
1178
+ },
1179
+ children: (preview) => (() => {
1180
+ var _el$201 = web.getNextElement(_tmpl$51), _el$207 = _el$201.firstChild, [_el$208, _co$48] = web.getNextMarker(_el$207.nextSibling), _el$209 = _el$208.nextSibling, [_el$210, _co$49] = web.getNextMarker(_el$209.nextSibling);
1181
+ web.insert(_el$201, web.createComponent(solidJs.Show, {
1182
+ get when() {
1183
+ return preview().count != null;
1184
+ },
1185
+ get children() {
1186
+ return [(() => {
1187
+ var _el$202 = web.getNextElement(_tmpl$49);
1188
+ web.insert(_el$202, () => preview().count);
1189
+ return _el$202;
1190
+ })(), " items"];
1191
+ }
1192
+ }), _el$208, _co$48);
1193
+ web.insert(_el$201, web.createComponent(solidJs.Show, {
1194
+ get when() {
1195
+ return preview().summary;
1196
+ },
1197
+ get children() {
1198
+ var _el$203 = web.getNextElement(_tmpl$50), _el$204 = _el$203.firstChild, _el$205 = _el$204.nextSibling, [_el$206, _co$47] = web.getNextMarker(_el$205.nextSibling);
1199
+ web.insert(_el$203, () => preview().summary, _el$206, _co$47);
1200
+ return _el$203;
1201
+ }
1202
+ }), _el$210, _co$49);
1203
+ return _el$201;
1204
+ })()
1205
+ }), _el$198, _co$45);
1206
+ web.insert(_el$180, web.createComponent(solidJs.Show, {
1207
+ get when() {
1208
+ return web.memo(() => !!data().validation)() && data().validation.confidence != null;
1209
+ },
1210
+ get children() {
1211
+ var _el$182 = web.getNextElement(_tmpl$47), _el$183 = _el$182.firstChild, _el$185 = _el$183.firstChild, [_el$186, _co$41] = web.getNextMarker(_el$185.nextSibling);
1212
+ _el$186.nextSibling;
1213
+ var _el$192 = _el$183.nextSibling, [_el$193, _co$43] = web.getNextMarker(_el$192.nextSibling);
1214
+ web.insert(_el$183, () => Math.round(data().validation.confidence * 100), _el$186, _co$41);
1215
+ web.insert(_el$182, web.createComponent(solidJs.Show, {
1216
+ get when() {
1217
+ var _a;
1218
+ return ((_a = data().validation.hallucinated) == null ? void 0 : _a.length) > 0;
1219
+ },
1220
+ get children() {
1221
+ var _el$187 = web.getNextElement(_tmpl$46), _el$188 = _el$187.firstChild, _el$190 = _el$188.nextSibling, [_el$191, _co$42] = web.getNextMarker(_el$190.nextSibling);
1222
+ _el$191.nextSibling;
1223
+ web.insert(_el$187, () => data().validation.hallucinated.length, _el$191, _co$42);
1224
+ return _el$187;
1225
+ }
1226
+ }), _el$193, _co$43);
1227
+ web.effect((_$p) => web.classList(_el$183, {
1228
+ "text-green-600 dark:text-green-400": data().validation.confidence >= 0.8,
1229
+ "text-amber-600 dark:text-amber-400": data().validation.confidence >= 0.5 && data().validation.confidence < 0.8,
1230
+ "text-red-600 dark:text-red-400": data().validation.confidence < 0.5
1231
+ }, _$p));
1232
+ return _el$182;
1233
+ }
1234
+ }), _el$200, _co$46);
1235
+ web.insert(_el$194, web.createComponent(solidJs.For, {
1092
1236
  get each() {
1093
- return actions();
1237
+ return data().actions;
1094
1238
  },
1095
1239
  children: (item) => (() => {
1096
- var _el$179 = web.getNextElement(_tmpl$38), _el$181 = _el$179.firstChild, [_el$182, _co$40] = web.getNextMarker(_el$181.nextSibling), _el$183 = _el$182.nextSibling, [_el$184, _co$41] = web.getNextMarker(_el$183.nextSibling);
1097
- _el$179.$$click = () => {
1240
+ var _el$211 = web.getNextElement(_tmpl$38), _el$213 = _el$211.firstChild, [_el$214, _co$50] = web.getNextMarker(_el$213.nextSibling), _el$215 = _el$214.nextSibling, [_el$216, _co$51] = web.getNextMarker(_el$215.nextSibling);
1241
+ web.addEventListener(_el$211, "click", () => {
1098
1242
  var _a;
1099
1243
  return (_a = props.onAction) == null ? void 0 : _a.call(props, item.value || item.action || item.label, item);
1100
- };
1101
- web.insert(_el$179, web.createComponent(solidJs.Show, {
1244
+ });
1245
+ web.insert(_el$211, web.createComponent(solidJs.Show, {
1102
1246
  get when() {
1103
1247
  return item.icon;
1104
1248
  },
1105
1249
  get children() {
1106
- var _el$180 = web.getNextElement(_tmpl$46);
1107
- web.insert(_el$180, () => item.icon);
1108
- return _el$180;
1250
+ var _el$212 = web.getNextElement(_tmpl$52);
1251
+ web.insert(_el$212, () => item.icon);
1252
+ return _el$212;
1109
1253
  }
1110
- }), _el$182, _co$40);
1111
- web.insert(_el$179, () => item.label, _el$184, _co$41);
1112
- web.effect(() => web.className(_el$179, `px-3 py-1.5 text-sm font-medium rounded-lg transition-colors ${item.variant === "primary" ? "bg-blue-600 text-white hover:bg-blue-700" : item.variant === "danger" ? "bg-red-600 text-white hover:bg-red-700" : "border border-gray-200 dark:border-gray-600 text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700"}`));
1113
- web.runHydrationEvents();
1114
- return _el$179;
1254
+ }), _el$214, _co$50);
1255
+ web.insert(_el$211, () => item.label, _el$216, _co$51);
1256
+ web.effect(() => web.className(_el$211, `px-3 py-1.5 text-sm font-medium rounded-lg transition-colors ${item.variant === "primary" ? "bg-blue-600 text-white hover:bg-blue-700" : item.variant === "danger" ? "bg-red-600 text-white hover:bg-red-700" : item.variant === "secondary" ? "border border-blue-300 dark:border-blue-600 text-blue-700 dark:text-blue-300 hover:bg-blue-50 dark:hover:bg-blue-900/20" : "border border-gray-200 dark:border-gray-600 text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700"}`));
1257
+ return _el$211;
1115
1258
  })()
1116
1259
  }));
1117
- return _el$178;
1260
+ return _el$180;
1118
1261
  })();
1119
1262
  };
1120
1263
  const UnderstandingSection = (props) => {
@@ -1138,44 +1281,45 @@ const UnderstandingSection = (props) => {
1138
1281
  }
1139
1282
  };
1140
1283
  return (() => {
1141
- var _el$185 = web.getNextElement(_tmpl$47), _el$186 = _el$185.firstChild, _el$188 = _el$186.nextSibling, [_el$189, _co$42] = web.getNextMarker(_el$188.nextSibling);
1142
- web.insert(_el$186, web.createComponent(solidJs.For, {
1284
+ var _el$217 = web.getNextElement(_tmpl$53), _el$218 = _el$217.firstChild, _el$220 = _el$218.nextSibling, [_el$221, _co$52] = web.getNextMarker(_el$220.nextSibling);
1285
+ web.insert(_el$218, web.createComponent(solidJs.For, {
1143
1286
  get each() {
1144
1287
  return data().detections;
1145
1288
  },
1146
1289
  children: (det) => (() => {
1147
- var _el$190 = web.getNextElement(_tmpl$48), _el$191 = _el$190.firstChild, _el$192 = _el$191.nextSibling;
1148
- web.insert(_el$191, () => det.label);
1149
- web.insert(_el$192, () => det.value);
1150
- web.effect(() => web.className(_el$191, `px-1.5 py-0.5 text-xs font-medium rounded ${confidenceClass(det.confidence)}`));
1151
- return _el$190;
1290
+ var _el$222 = web.getNextElement(_tmpl$54), _el$223 = _el$222.firstChild, _el$224 = _el$223.nextSibling;
1291
+ web.insert(_el$223, () => det.label);
1292
+ web.insert(_el$224, () => det.value);
1293
+ web.effect(() => web.className(_el$223, `px-1.5 py-0.5 text-xs font-medium rounded ${confidenceClass(det.confidence)}`));
1294
+ return _el$222;
1152
1295
  })()
1153
1296
  }));
1154
- web.insert(_el$185, web.createComponent(solidJs.Show, {
1297
+ web.insert(_el$217, web.createComponent(solidJs.Show, {
1155
1298
  get when() {
1156
1299
  return data().warnings.length > 0;
1157
1300
  },
1158
1301
  get children() {
1159
- var _el$187 = web.getNextElement(_tmpl$25);
1160
- web.insert(_el$187, web.createComponent(solidJs.For, {
1302
+ var _el$219 = web.getNextElement(_tmpl$25);
1303
+ web.insert(_el$219, web.createComponent(solidJs.For, {
1161
1304
  get each() {
1162
1305
  return data().warnings;
1163
1306
  },
1164
1307
  children: (w) => (() => {
1165
- var _el$193 = web.getNextElement(_tmpl$49), _el$194 = _el$193.firstChild, _el$195 = _el$194.nextSibling;
1166
- web.insert(_el$195, w);
1167
- return _el$193;
1308
+ var _el$225 = web.getNextElement(_tmpl$55), _el$226 = _el$225.firstChild, _el$227 = _el$226.nextSibling;
1309
+ web.insert(_el$227, w);
1310
+ return _el$225;
1168
1311
  })()
1169
1312
  }));
1170
- return _el$187;
1313
+ return _el$219;
1171
1314
  }
1172
- }), _el$189, _co$42);
1173
- return _el$185;
1315
+ }), _el$221, _co$52);
1316
+ return _el$217;
1174
1317
  })();
1175
1318
  };
1176
1319
  const FeedbackSection = (props) => {
1177
1320
  const [comment, setComment] = solidJs.createSignal("");
1178
1321
  const [showComment, setShowComment] = solidJs.createSignal(false);
1322
+ const [submitted, setSubmitted] = solidJs.createSignal(null);
1179
1323
  const data = () => {
1180
1324
  var _a, _b, _c, _d;
1181
1325
  const c = props.content;
@@ -1193,7 +1337,10 @@ const FeedbackSection = (props) => {
1193
1337
  question: (c == null ? void 0 : c.question) || "",
1194
1338
  options,
1195
1339
  allowFreeText: (c == null ? void 0 : c.allowFreeText) ?? (c == null ? void 0 : c.allowComment) ?? false,
1196
- placeholder: (c == null ? void 0 : c.placeholder) || (c == null ? void 0 : c.commentPlaceholder) || "Add a comment..."
1340
+ placeholder: (c == null ? void 0 : c.placeholder) || (c == null ? void 0 : c.commentPlaceholder) || "Add a comment...",
1341
+ // v4.1.0: per-step feedback
1342
+ agentId: c == null ? void 0 : c.agentId,
1343
+ stepId: c == null ? void 0 : c.stepId
1197
1344
  };
1198
1345
  };
1199
1346
  const handleOption = (option) => {
@@ -1202,66 +1349,126 @@ const FeedbackSection = (props) => {
1202
1349
  setShowComment(true);
1203
1350
  return;
1204
1351
  }
1205
- (_a = props.onAction) == null ? void 0 : _a.call(props, "feedback", {
1352
+ setSubmitted(option.value);
1353
+ const payload = {
1206
1354
  option: option.value,
1207
- comment: comment()
1355
+ comment: comment(),
1356
+ ...data().agentId ? {
1357
+ agentId: data().agentId
1358
+ } : {},
1359
+ ...data().stepId ? {
1360
+ stepId: data().stepId
1361
+ } : {}
1362
+ };
1363
+ console.info("[MCP-UI:HITL] user responded", {
1364
+ agentId: data().agentId,
1365
+ stepId: data().stepId,
1366
+ action: option.value
1208
1367
  });
1368
+ (_a = props.onAction) == null ? void 0 : _a.call(props, "feedback", payload);
1209
1369
  };
1210
1370
  return (() => {
1211
- var _el$196 = web.getNextElement(_tmpl$51), _el$197 = _el$196.firstChild, _el$198 = _el$197.nextSibling, _el$202 = _el$198.nextSibling, [_el$203, _co$43] = web.getNextMarker(_el$202.nextSibling);
1212
- web.insert(_el$197, () => data().question);
1213
- web.insert(_el$198, web.createComponent(solidJs.For, {
1214
- get each() {
1215
- return data().options;
1371
+ var _el$228 = web.getNextElement(_tmpl$60), _el$229 = _el$228.firstChild, _el$247 = _el$229.nextSibling, [_el$248, _co$57] = web.getNextMarker(_el$247.nextSibling), _el$249 = _el$248.nextSibling, [_el$250, _co$58] = web.getNextMarker(_el$249.nextSibling);
1372
+ web.insert(_el$229, () => data().question);
1373
+ web.insert(_el$228, web.createComponent(solidJs.Show, {
1374
+ get when() {
1375
+ return submitted();
1216
1376
  },
1217
- children: (option) => (() => {
1218
- var _el$204 = web.getNextElement(_tmpl$38), _el$206 = _el$204.firstChild, [_el$207, _co$44] = web.getNextMarker(_el$206.nextSibling), _el$208 = _el$207.nextSibling, [_el$209, _co$45] = web.getNextMarker(_el$208.nextSibling);
1219
- _el$204.$$click = () => handleOption(option);
1220
- web.insert(_el$204, web.createComponent(solidJs.Show, {
1377
+ get children() {
1378
+ var _el$230 = web.getNextElement(_tmpl$57), _el$231 = _el$230.firstChild, _el$233 = _el$231.firstChild, [_el$234, _co$53] = web.getNextMarker(_el$233.nextSibling), _el$232 = _el$234.nextSibling, _el$235 = _el$232.nextSibling, [_el$236, _co$54] = web.getNextMarker(_el$235.nextSibling), _el$241 = _el$231.nextSibling, [_el$242, _co$56] = web.getNextMarker(_el$241.nextSibling);
1379
+ web.insert(_el$231, (() => {
1380
+ var _c$6 = web.memo(() => submitted() === "approve");
1381
+ return () => _c$6() ? "✅" : submitted() === "reject" ? "❌" : "💬";
1382
+ })(), _el$234, _co$53);
1383
+ web.insert(_el$231, submitted, _el$236, _co$54);
1384
+ web.insert(_el$230, web.createComponent(solidJs.Show, {
1221
1385
  get when() {
1222
- return option.icon;
1386
+ return comment();
1223
1387
  },
1224
1388
  get children() {
1225
- var _el$205 = web.getNextElement(_tmpl$52);
1226
- web.insert(_el$205, () => option.icon);
1227
- return _el$205;
1389
+ var _el$237 = web.getNextElement(_tmpl$56), _el$238 = _el$237.firstChild, _el$239 = _el$238.nextSibling, [_el$240, _co$55] = web.getNextMarker(_el$239.nextSibling);
1390
+ web.insert(_el$237, comment, _el$240, _co$55);
1391
+ return _el$237;
1228
1392
  }
1229
- }), _el$207, _co$44);
1230
- web.insert(_el$204, () => option.label, _el$209, _co$45);
1231
- web.effect(() => web.className(_el$204, `px-3 py-1.5 text-sm font-medium rounded-lg transition-colors flex items-center gap-1 ${option.variant === "primary" ? "bg-blue-600 text-white hover:bg-blue-700" : option.variant === "danger" ? "bg-red-600 text-white hover:bg-red-700" : "border border-gray-200 dark:border-gray-600 text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700"}`));
1232
- web.runHydrationEvents();
1233
- return _el$204;
1234
- })()
1235
- }));
1236
- web.insert(_el$196, web.createComponent(solidJs.Show, {
1237
- get when() {
1238
- return data().allowFreeText || showComment();
1239
- },
1240
- get children() {
1241
- var _el$199 = web.getNextElement(_tmpl$50), _el$200 = _el$199.firstChild, _el$201 = _el$200.nextSibling;
1242
- _el$200.$$input = (e) => setComment(e.currentTarget.value);
1243
- _el$201.$$click = () => {
1244
- var _a;
1245
- return (_a = props.onAction) == null ? void 0 : _a.call(props, "feedback", {
1246
- option: "comment",
1247
- comment: comment()
1248
- });
1249
- };
1393
+ }), _el$242, _co$56);
1250
1394
  web.effect((_p$) => {
1251
- var _v$6 = data().placeholder, _v$7 = showComment();
1252
- _v$6 !== _p$.e && web.setAttribute(_el$200, "placeholder", _p$.e = _v$6);
1253
- _v$7 !== _p$.t && web.setProperty(_el$200, "autofocus", _p$.t = _v$7);
1395
+ var _v$6 = !!(submitted() === "approve"), _v$7 = !!(submitted() === "reject"), _v$8 = !!(submitted() !== "approve" && submitted() !== "reject");
1396
+ _v$6 !== _p$.e && _el$231.classList.toggle("text-green-600", _p$.e = _v$6);
1397
+ _v$7 !== _p$.t && _el$231.classList.toggle("text-red-600", _p$.t = _v$7);
1398
+ _v$8 !== _p$.a && _el$231.classList.toggle("text-blue-600", _p$.a = _v$8);
1254
1399
  return _p$;
1255
1400
  }, {
1256
1401
  e: void 0,
1257
- t: void 0
1402
+ t: void 0,
1403
+ a: void 0
1258
1404
  });
1259
- web.effect(() => web.setProperty(_el$200, "value", comment()));
1260
- web.runHydrationEvents();
1261
- return _el$199;
1405
+ return _el$230;
1262
1406
  }
1263
- }), _el$203, _co$43);
1264
- return _el$196;
1407
+ }), _el$248, _co$57);
1408
+ web.insert(_el$228, web.createComponent(solidJs.Show, {
1409
+ get when() {
1410
+ return !submitted();
1411
+ },
1412
+ get children() {
1413
+ return [(() => {
1414
+ var _el$243 = web.getNextElement(_tmpl$58);
1415
+ web.insert(_el$243, web.createComponent(solidJs.For, {
1416
+ get each() {
1417
+ return data().options;
1418
+ },
1419
+ children: (option) => (() => {
1420
+ var _el$251 = web.getNextElement(_tmpl$38), _el$253 = _el$251.firstChild, [_el$254, _co$59] = web.getNextMarker(_el$253.nextSibling), _el$255 = _el$254.nextSibling, [_el$256, _co$60] = web.getNextMarker(_el$255.nextSibling);
1421
+ web.addEventListener(_el$251, "click", () => handleOption(option));
1422
+ web.insert(_el$251, web.createComponent(solidJs.Show, {
1423
+ get when() {
1424
+ return option.icon;
1425
+ },
1426
+ get children() {
1427
+ var _el$252 = web.getNextElement(_tmpl$61);
1428
+ web.insert(_el$252, () => option.icon);
1429
+ return _el$252;
1430
+ }
1431
+ }), _el$254, _co$59);
1432
+ web.insert(_el$251, () => option.label, _el$256, _co$60);
1433
+ web.effect(() => web.className(_el$251, `px-3 py-1.5 text-sm font-medium rounded-lg transition-colors flex items-center gap-1 ${option.variant === "primary" ? "bg-blue-600 text-white hover:bg-blue-700" : option.variant === "danger" ? "bg-red-600 text-white hover:bg-red-700" : "border border-gray-200 dark:border-gray-600 text-gray-700 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-gray-700"}`));
1434
+ return _el$251;
1435
+ })()
1436
+ }));
1437
+ return _el$243;
1438
+ })(), web.createComponent(solidJs.Show, {
1439
+ get when() {
1440
+ return data().allowFreeText || showComment();
1441
+ },
1442
+ get children() {
1443
+ var _el$244 = web.getNextElement(_tmpl$59), _el$245 = _el$244.firstChild, _el$246 = _el$245.nextSibling;
1444
+ _el$245.$$input = (e) => setComment(e.currentTarget.value);
1445
+ web.addEventListener(_el$246, "click", () => {
1446
+ var _a;
1447
+ setSubmitted("comment");
1448
+ (_a = props.onAction) == null ? void 0 : _a.call(props, "feedback", {
1449
+ option: "comment",
1450
+ comment: comment(),
1451
+ agentId: data().agentId,
1452
+ stepId: data().stepId
1453
+ });
1454
+ });
1455
+ web.effect((_p$) => {
1456
+ var _v$9 = data().placeholder, _v$0 = showComment();
1457
+ _v$9 !== _p$.e && web.setAttribute(_el$245, "placeholder", _p$.e = _v$9);
1458
+ _v$0 !== _p$.t && web.setProperty(_el$245, "autofocus", _p$.t = _v$0);
1459
+ return _p$;
1460
+ }, {
1461
+ e: void 0,
1462
+ t: void 0
1463
+ });
1464
+ web.effect(() => web.setProperty(_el$245, "value", comment()));
1465
+ web.runHydrationEvents();
1466
+ return _el$244;
1467
+ }
1468
+ })];
1469
+ }
1470
+ }), _el$250, _co$58);
1471
+ return _el$228;
1265
1472
  })();
1266
1473
  };
1267
1474
  const PromptSection = (props) => {
@@ -1276,56 +1483,56 @@ const PromptSection = (props) => {
1276
1483
  };
1277
1484
  };
1278
1485
  return (() => {
1279
- var _el$210 = web.getNextElement(_tmpl$56), _el$223 = _el$210.firstChild, [_el$224, _co$48] = web.getNextMarker(_el$223.nextSibling), _el$216 = _el$224.nextSibling, _el$225 = _el$216.nextSibling, [_el$226, _co$49] = web.getNextMarker(_el$225.nextSibling), _el$227 = _el$226.nextSibling, [_el$228, _co$50] = web.getNextMarker(_el$227.nextSibling);
1280
- web.insert(_el$210, web.createComponent(solidJs.Show, {
1486
+ var _el$257 = web.getNextElement(_tmpl$65), _el$270 = _el$257.firstChild, [_el$271, _co$63] = web.getNextMarker(_el$270.nextSibling), _el$263 = _el$271.nextSibling, _el$272 = _el$263.nextSibling, [_el$273, _co$64] = web.getNextMarker(_el$272.nextSibling), _el$274 = _el$273.nextSibling, [_el$275, _co$65] = web.getNextMarker(_el$274.nextSibling);
1487
+ web.insert(_el$257, web.createComponent(solidJs.Show, {
1281
1488
  get when() {
1282
1489
  return data().originalQuery;
1283
1490
  },
1284
1491
  get children() {
1285
- var _el$211 = web.getNextElement(_tmpl$53), _el$212 = _el$211.firstChild, _el$214 = _el$212.nextSibling, [_el$215, _co$46] = web.getNextMarker(_el$214.nextSibling);
1286
- _el$215.nextSibling;
1287
- web.insert(_el$211, () => data().originalQuery, _el$215, _co$46);
1288
- return _el$211;
1492
+ var _el$258 = web.getNextElement(_tmpl$62), _el$259 = _el$258.firstChild, _el$261 = _el$259.nextSibling, [_el$262, _co$61] = web.getNextMarker(_el$261.nextSibling);
1493
+ _el$262.nextSibling;
1494
+ web.insert(_el$258, () => data().originalQuery, _el$262, _co$61);
1495
+ return _el$258;
1289
1496
  }
1290
- }), _el$224, _co$48);
1291
- web.insert(_el$216, web.createComponent(solidJs.For, {
1497
+ }), _el$271, _co$63);
1498
+ web.insert(_el$263, web.createComponent(solidJs.For, {
1292
1499
  get each() {
1293
1500
  return Object.entries(data().extracted);
1294
1501
  },
1295
1502
  children: ([key, value]) => (() => {
1296
- var _el$229 = web.getNextElement(_tmpl$57), _el$230 = _el$229.firstChild, _el$232 = _el$230.firstChild, [_el$233, _co$51] = web.getNextMarker(_el$232.nextSibling);
1297
- _el$233.nextSibling;
1298
- var _el$234 = _el$230.nextSibling;
1299
- web.insert(_el$230, key, _el$233, _co$51);
1300
- web.insert(_el$234, () => String(value));
1301
- return _el$229;
1503
+ var _el$276 = web.getNextElement(_tmpl$66), _el$277 = _el$276.firstChild, _el$279 = _el$277.firstChild, [_el$280, _co$66] = web.getNextMarker(_el$279.nextSibling);
1504
+ _el$280.nextSibling;
1505
+ var _el$281 = _el$277.nextSibling;
1506
+ web.insert(_el$277, key, _el$280, _co$66);
1507
+ web.insert(_el$281, () => String(value));
1508
+ return _el$276;
1302
1509
  })()
1303
1510
  }));
1304
- web.insert(_el$210, web.createComponent(solidJs.Show, {
1511
+ web.insert(_el$257, web.createComponent(solidJs.Show, {
1305
1512
  get when() {
1306
1513
  return data().plan;
1307
1514
  },
1308
1515
  get children() {
1309
- var _el$217 = web.getNextElement(_tmpl$54), _el$218 = _el$217.firstChild, _el$219 = _el$218.nextSibling, _el$220 = _el$219.nextSibling, [_el$221, _co$47] = web.getNextMarker(_el$220.nextSibling);
1310
- web.insert(_el$217, () => data().plan, _el$221, _co$47);
1311
- return _el$217;
1516
+ var _el$264 = web.getNextElement(_tmpl$63), _el$265 = _el$264.firstChild, _el$266 = _el$265.nextSibling, _el$267 = _el$266.nextSibling, [_el$268, _co$62] = web.getNextMarker(_el$267.nextSibling);
1517
+ web.insert(_el$264, () => data().plan, _el$268, _co$62);
1518
+ return _el$264;
1312
1519
  }
1313
- }), _el$226, _co$49);
1314
- web.insert(_el$210, web.createComponent(solidJs.Show, {
1520
+ }), _el$273, _co$64);
1521
+ web.insert(_el$257, web.createComponent(solidJs.Show, {
1315
1522
  get when() {
1316
1523
  return data().editable;
1317
1524
  },
1318
1525
  get children() {
1319
- var _el$222 = web.getNextElement(_tmpl$55);
1320
- _el$222.$$click = () => {
1526
+ var _el$269 = web.getNextElement(_tmpl$64);
1527
+ _el$269.$$click = () => {
1321
1528
  var _a;
1322
1529
  return (_a = props.onAction) == null ? void 0 : _a.call(props, "edit_prompt", data());
1323
1530
  };
1324
1531
  web.runHydrationEvents();
1325
- return _el$222;
1532
+ return _el$269;
1326
1533
  }
1327
- }), _el$228, _co$50);
1328
- return _el$210;
1534
+ }), _el$275, _co$65);
1535
+ return _el$257;
1329
1536
  })();
1330
1537
  };
1331
1538
  const StepperProgressSection = (props) => {
@@ -1355,46 +1562,46 @@ const StepperProgressSection = (props) => {
1355
1562
  },
1356
1563
  get fallback() {
1357
1564
  return (() => {
1358
- var _el$236 = web.getNextElement(_tmpl$59);
1359
- web.insert(_el$236, web.createComponent(solidJs.For, {
1565
+ var _el$283 = web.getNextElement(_tmpl$68);
1566
+ web.insert(_el$283, web.createComponent(solidJs.For, {
1360
1567
  get each() {
1361
1568
  return data().steps;
1362
1569
  },
1363
1570
  children: (step) => (() => {
1364
- var _el$237 = web.getNextElement(_tmpl$62), _el$238 = _el$237.firstChild, _el$239 = _el$238.nextSibling, _el$240 = _el$239.firstChild, _el$250 = _el$240.nextSibling, [_el$251, _co$54] = web.getNextMarker(_el$250.nextSibling), _el$252 = _el$251.nextSibling, [_el$253, _co$55] = web.getNextMarker(_el$252.nextSibling);
1365
- web.insert(_el$238, () => statusIcon(step.status));
1366
- web.insert(_el$240, () => step.label);
1367
- web.insert(_el$239, web.createComponent(solidJs.Show, {
1571
+ var _el$284 = web.getNextElement(_tmpl$71), _el$285 = _el$284.firstChild, _el$286 = _el$285.nextSibling, _el$287 = _el$286.firstChild, _el$297 = _el$287.nextSibling, [_el$298, _co$69] = web.getNextMarker(_el$297.nextSibling), _el$299 = _el$298.nextSibling, [_el$300, _co$70] = web.getNextMarker(_el$299.nextSibling);
1572
+ web.insert(_el$285, () => statusIcon(step.status));
1573
+ web.insert(_el$287, () => step.label);
1574
+ web.insert(_el$286, web.createComponent(solidJs.Show, {
1368
1575
  get when() {
1369
1576
  return step.summary;
1370
1577
  },
1371
1578
  get children() {
1372
- var _el$241 = web.getNextElement(_tmpl$60), _el$242 = _el$241.firstChild, _el$243 = _el$242.nextSibling, [_el$244, _co$52] = web.getNextMarker(_el$243.nextSibling);
1373
- web.insert(_el$241, () => step.summary, _el$244, _co$52);
1374
- return _el$241;
1579
+ var _el$288 = web.getNextElement(_tmpl$69), _el$289 = _el$288.firstChild, _el$290 = _el$289.nextSibling, [_el$291, _co$67] = web.getNextMarker(_el$290.nextSibling);
1580
+ web.insert(_el$288, () => step.summary, _el$291, _co$67);
1581
+ return _el$288;
1375
1582
  }
1376
- }), _el$251, _co$54);
1377
- web.insert(_el$239, web.createComponent(solidJs.Show, {
1583
+ }), _el$298, _co$69);
1584
+ web.insert(_el$286, web.createComponent(solidJs.Show, {
1378
1585
  get when() {
1379
1586
  return step.duration_ms;
1380
1587
  },
1381
1588
  get children() {
1382
- var _el$245 = web.getNextElement(_tmpl$61), _el$246 = _el$245.firstChild, _el$248 = _el$246.nextSibling, [_el$249, _co$53] = web.getNextMarker(_el$248.nextSibling);
1383
- _el$249.nextSibling;
1384
- web.insert(_el$245, () => step.duration_ms, _el$249, _co$53);
1385
- return _el$245;
1589
+ var _el$292 = web.getNextElement(_tmpl$70), _el$293 = _el$292.firstChild, _el$295 = _el$293.nextSibling, [_el$296, _co$68] = web.getNextMarker(_el$295.nextSibling);
1590
+ _el$296.nextSibling;
1591
+ web.insert(_el$292, () => step.duration_ms, _el$296, _co$68);
1592
+ return _el$292;
1386
1593
  }
1387
- }), _el$253, _co$55);
1388
- web.effect(() => web.className(_el$237, `flex items-start gap-2 text-sm ${step.status === "active" ? "font-medium" : ""} ${step.status === "pending" ? "text-gray-400" : "text-gray-700 dark:text-gray-300"}`));
1389
- return _el$237;
1594
+ }), _el$300, _co$70);
1595
+ web.effect(() => web.className(_el$284, `flex items-start gap-2 text-sm ${step.status === "active" ? "font-medium" : ""} ${step.status === "pending" ? "text-gray-400" : "text-gray-700 dark:text-gray-300"}`));
1596
+ return _el$284;
1390
1597
  })()
1391
1598
  }));
1392
- return _el$236;
1599
+ return _el$283;
1393
1600
  })();
1394
1601
  },
1395
1602
  get children() {
1396
- var _el$235 = web.getNextElement(_tmpl$58);
1397
- web.insert(_el$235, web.createComponent(solidJs.For, {
1603
+ var _el$282 = web.getNextElement(_tmpl$67);
1604
+ web.insert(_el$282, web.createComponent(solidJs.For, {
1398
1605
  get each() {
1399
1606
  return data().steps;
1400
1607
  },
@@ -1406,24 +1613,24 @@ const StepperProgressSection = (props) => {
1406
1613
  return web.getNextElement(_tmpl$13);
1407
1614
  }
1408
1615
  }), (() => {
1409
- var _el$255 = web.getNextElement(_tmpl$64), _el$256 = _el$255.firstChild, _el$257 = _el$256.nextSibling, _el$259 = _el$257.nextSibling, [_el$260, _co$56] = web.getNextMarker(_el$259.nextSibling);
1410
- web.insert(_el$256, () => statusIcon(step.status));
1411
- web.insert(_el$257, () => step.label);
1412
- web.insert(_el$255, web.createComponent(solidJs.Show, {
1616
+ var _el$302 = web.getNextElement(_tmpl$73), _el$303 = _el$302.firstChild, _el$304 = _el$303.nextSibling, _el$306 = _el$304.nextSibling, [_el$307, _co$71] = web.getNextMarker(_el$306.nextSibling);
1617
+ web.insert(_el$303, () => statusIcon(step.status));
1618
+ web.insert(_el$304, () => step.label);
1619
+ web.insert(_el$302, web.createComponent(solidJs.Show, {
1413
1620
  get when() {
1414
1621
  return step.summary;
1415
1622
  },
1416
1623
  get children() {
1417
- var _el$258 = web.getNextElement(_tmpl$63);
1418
- web.insert(_el$258, () => step.summary);
1419
- return _el$258;
1624
+ var _el$305 = web.getNextElement(_tmpl$72);
1625
+ web.insert(_el$305, () => step.summary);
1626
+ return _el$305;
1420
1627
  }
1421
- }), _el$260, _co$56);
1422
- web.effect(() => web.className(_el$255, `flex items-center gap-1 px-2 py-1 rounded text-xs ${step.status === "done" ? "bg-green-50 dark:bg-green-900/20 text-green-700 dark:text-green-400" : step.status === "active" ? "bg-blue-50 dark:bg-blue-900/20 text-blue-700 dark:text-blue-400 font-medium animate-pulse" : step.status === "error" ? "bg-red-50 dark:bg-red-900/20 text-red-700 dark:text-red-400" : "text-gray-400"}`));
1423
- return _el$255;
1628
+ }), _el$307, _co$71);
1629
+ web.effect(() => web.className(_el$302, `flex items-center gap-1 px-2 py-1 rounded text-xs ${step.status === "done" ? "bg-green-50 dark:bg-green-900/20 text-green-700 dark:text-green-400" : step.status === "active" ? "bg-blue-50 dark:bg-blue-900/20 text-blue-700 dark:text-blue-400 font-medium animate-pulse" : step.status === "error" ? "bg-red-50 dark:bg-red-900/20 text-red-700 dark:text-red-400" : "text-gray-400"}`));
1630
+ return _el$302;
1424
1631
  })()]
1425
1632
  }));
1426
- return _el$235;
1633
+ return _el$282;
1427
1634
  }
1428
1635
  });
1429
1636
  };
@@ -1444,48 +1651,48 @@ const ErrorSectionRenderer = (props) => {
1444
1651
  };
1445
1652
  const isWarning = () => data().severity === "warning";
1446
1653
  return (() => {
1447
- var _el$261 = web.getNextElement(_tmpl$68), _el$262 = _el$261.firstChild, _el$263 = _el$262.firstChild, _el$264 = _el$263.nextSibling, _el$265 = _el$264.firstChild, _el$266 = _el$265.nextSibling, _el$272 = _el$266.firstChild, [_el$273, _co$58] = web.getNextMarker(_el$272.nextSibling), _el$274 = _el$273.nextSibling, [_el$275, _co$59] = web.getNextMarker(_el$274.nextSibling), _el$277 = _el$266.nextSibling, [_el$278, _co$60] = web.getNextMarker(_el$277.nextSibling);
1448
- web.insert(_el$263, () => isWarning() ? "⚠️" : "❌");
1449
- web.insert(_el$265, () => data().message);
1450
- web.insert(_el$266, web.createComponent(solidJs.Show, {
1654
+ var _el$308 = web.getNextElement(_tmpl$77), _el$309 = _el$308.firstChild, _el$310 = _el$309.firstChild, _el$311 = _el$310.nextSibling, _el$312 = _el$311.firstChild, _el$313 = _el$312.nextSibling, _el$319 = _el$313.firstChild, [_el$320, _co$73] = web.getNextMarker(_el$319.nextSibling), _el$321 = _el$320.nextSibling, [_el$322, _co$74] = web.getNextMarker(_el$321.nextSibling), _el$324 = _el$313.nextSibling, [_el$325, _co$75] = web.getNextMarker(_el$324.nextSibling);
1655
+ web.insert(_el$310, () => isWarning() ? "⚠️" : "❌");
1656
+ web.insert(_el$312, () => data().message);
1657
+ web.insert(_el$313, web.createComponent(solidJs.Show, {
1451
1658
  get when() {
1452
1659
  return data().retryAction;
1453
1660
  },
1454
1661
  get children() {
1455
- var _el$267 = web.getNextElement(_tmpl$65), _el$268 = _el$267.firstChild, _el$269 = _el$268.nextSibling, [_el$270, _co$57] = web.getNextMarker(_el$269.nextSibling);
1456
- _el$267.$$click = () => {
1662
+ var _el$314 = web.getNextElement(_tmpl$74), _el$315 = _el$314.firstChild, _el$316 = _el$315.nextSibling, [_el$317, _co$72] = web.getNextMarker(_el$316.nextSibling);
1663
+ _el$314.$$click = () => {
1457
1664
  var _a;
1458
1665
  return (_a = props.onAction) == null ? void 0 : _a.call(props, data().retryAction);
1459
1666
  };
1460
- web.insert(_el$267, () => data().retryLabel, _el$270, _co$57);
1461
- web.effect(() => web.className(_el$267, `px-2 py-1 text-xs font-medium rounded ${isWarning() ? "bg-amber-600 text-white hover:bg-amber-700" : "bg-red-600 text-white hover:bg-red-700"} transition-colors`));
1667
+ web.insert(_el$314, () => data().retryLabel, _el$317, _co$72);
1668
+ web.effect(() => web.className(_el$314, `px-2 py-1 text-xs font-medium rounded ${isWarning() ? "bg-amber-600 text-white hover:bg-amber-700" : "bg-red-600 text-white hover:bg-red-700"} transition-colors`));
1462
1669
  web.runHydrationEvents();
1463
- return _el$267;
1670
+ return _el$314;
1464
1671
  }
1465
- }), _el$273, _co$58);
1466
- web.insert(_el$266, web.createComponent(solidJs.Show, {
1672
+ }), _el$320, _co$73);
1673
+ web.insert(_el$313, web.createComponent(solidJs.Show, {
1467
1674
  get when() {
1468
1675
  return data().details;
1469
1676
  },
1470
1677
  get children() {
1471
- var _el$271 = web.getNextElement(_tmpl$66);
1472
- _el$271.$$click = () => setShowDetails(!showDetails());
1678
+ var _el$318 = web.getNextElement(_tmpl$75);
1679
+ _el$318.$$click = () => setShowDetails(!showDetails());
1473
1680
  web.runHydrationEvents();
1474
- return _el$271;
1681
+ return _el$318;
1475
1682
  }
1476
- }), _el$275, _co$59);
1477
- web.insert(_el$264, web.createComponent(solidJs.Show, {
1683
+ }), _el$322, _co$74);
1684
+ web.insert(_el$311, web.createComponent(solidJs.Show, {
1478
1685
  get when() {
1479
1686
  return web.memo(() => !!showDetails())() && data().details;
1480
1687
  },
1481
1688
  get children() {
1482
- var _el$276 = web.getNextElement(_tmpl$67);
1483
- web.insert(_el$276, () => data().details);
1484
- return _el$276;
1689
+ var _el$323 = web.getNextElement(_tmpl$76);
1690
+ web.insert(_el$323, () => data().details);
1691
+ return _el$323;
1485
1692
  }
1486
- }), _el$278, _co$60);
1487
- web.effect(() => web.className(_el$261, `rounded-lg px-3 py-2 text-sm ${isWarning() ? "bg-amber-50 dark:bg-amber-900/10 text-amber-700 dark:text-amber-400 border border-amber-200 dark:border-amber-800" : "bg-red-50 dark:bg-red-900/10 text-red-700 dark:text-red-400 border border-red-200 dark:border-red-800"}`));
1488
- return _el$261;
1693
+ }), _el$325, _co$75);
1694
+ web.effect(() => web.className(_el$308, `rounded-lg px-3 py-2 text-sm ${isWarning() ? "bg-amber-50 dark:bg-amber-900/10 text-amber-700 dark:text-amber-400 border border-amber-200 dark:border-amber-800" : "bg-red-50 dark:bg-red-900/10 text-red-700 dark:text-red-400 border border-red-200 dark:border-red-800"}`));
1695
+ return _el$308;
1489
1696
  })();
1490
1697
  };
1491
1698
  const SourceCardSection = (props) => {
@@ -1506,46 +1713,46 @@ const SourceCardSection = (props) => {
1506
1713
  error: "❌"
1507
1714
  })[data().status] || "📦";
1508
1715
  return (() => {
1509
- var _el$279 = web.getNextElement(_tmpl$71), _el$280 = _el$279.firstChild, _el$281 = _el$280.firstChild, _el$283 = _el$281.firstChild, [_el$284, _co$61] = web.getNextMarker(_el$283.nextSibling), _el$282 = _el$284.nextSibling, _el$285 = _el$282.nextSibling, [_el$286, _co$62] = web.getNextMarker(_el$285.nextSibling), _el$291 = _el$281.nextSibling, [_el$292, _co$64] = web.getNextMarker(_el$291.nextSibling), _el$293 = _el$280.nextSibling, _el$295 = _el$293.nextSibling, [_el$296, _co$65] = web.getNextMarker(_el$295.nextSibling);
1510
- web.insert(_el$281, statusIcon, _el$284, _co$61);
1511
- web.insert(_el$281, () => data().name, _el$286, _co$62);
1512
- web.insert(_el$280, web.createComponent(solidJs.Show, {
1716
+ var _el$326 = web.getNextElement(_tmpl$80), _el$327 = _el$326.firstChild, _el$328 = _el$327.firstChild, _el$330 = _el$328.firstChild, [_el$331, _co$76] = web.getNextMarker(_el$330.nextSibling), _el$329 = _el$331.nextSibling, _el$332 = _el$329.nextSibling, [_el$333, _co$77] = web.getNextMarker(_el$332.nextSibling), _el$338 = _el$328.nextSibling, [_el$339, _co$79] = web.getNextMarker(_el$338.nextSibling), _el$340 = _el$327.nextSibling, _el$342 = _el$340.nextSibling, [_el$343, _co$80] = web.getNextMarker(_el$342.nextSibling);
1717
+ web.insert(_el$328, statusIcon, _el$331, _co$76);
1718
+ web.insert(_el$328, () => data().name, _el$333, _co$77);
1719
+ web.insert(_el$327, web.createComponent(solidJs.Show, {
1513
1720
  get when() {
1514
1721
  return data().row_count !== void 0;
1515
1722
  },
1516
1723
  get children() {
1517
- var _el$287 = web.getNextElement(_tmpl$69), _el$289 = _el$287.firstChild, [_el$290, _co$63] = web.getNextMarker(_el$289.nextSibling);
1518
- _el$290.nextSibling;
1519
- web.insert(_el$287, () => {
1724
+ var _el$334 = web.getNextElement(_tmpl$78), _el$336 = _el$334.firstChild, [_el$337, _co$78] = web.getNextMarker(_el$336.nextSibling);
1725
+ _el$337.nextSibling;
1726
+ web.insert(_el$334, () => {
1520
1727
  var _a;
1521
1728
  return (_a = data().row_count) == null ? void 0 : _a.toLocaleString();
1522
- }, _el$290, _co$63);
1523
- return _el$287;
1729
+ }, _el$337, _co$78);
1730
+ return _el$334;
1524
1731
  }
1525
- }), _el$292, _co$64);
1526
- web.insert(_el$293, web.createComponent(solidJs.For, {
1732
+ }), _el$339, _co$79);
1733
+ web.insert(_el$340, web.createComponent(solidJs.For, {
1527
1734
  get each() {
1528
1735
  return data().capabilities;
1529
1736
  },
1530
1737
  children: (cap) => (() => {
1531
- var _el$297 = web.getNextElement(_tmpl$72), _el$299 = _el$297.firstChild, [_el$300, _co$66] = web.getNextMarker(_el$299.nextSibling), _el$298 = _el$300.nextSibling, _el$301 = _el$298.nextSibling, [_el$302, _co$67] = web.getNextMarker(_el$301.nextSibling);
1532
- web.insert(_el$297, () => cap.supported ? "✅" : "❌", _el$300, _co$66);
1533
- web.insert(_el$297, () => cap.label, _el$302, _co$67);
1534
- web.effect(() => web.className(_el$297, `text-[10px] px-1.5 py-0.5 rounded ${cap.supported ? "bg-green-100 dark:bg-green-900/30 text-green-700 dark:text-green-400" : "bg-red-100 dark:bg-red-900/30 text-red-600 dark:text-red-400"}`));
1535
- return _el$297;
1738
+ var _el$344 = web.getNextElement(_tmpl$81), _el$346 = _el$344.firstChild, [_el$347, _co$81] = web.getNextMarker(_el$346.nextSibling), _el$345 = _el$347.nextSibling, _el$348 = _el$345.nextSibling, [_el$349, _co$82] = web.getNextMarker(_el$348.nextSibling);
1739
+ web.insert(_el$344, () => cap.supported ? "✅" : "❌", _el$347, _co$81);
1740
+ web.insert(_el$344, () => cap.label, _el$349, _co$82);
1741
+ web.effect(() => web.className(_el$344, `text-[10px] px-1.5 py-0.5 rounded ${cap.supported ? "bg-green-100 dark:bg-green-900/30 text-green-700 dark:text-green-400" : "bg-red-100 dark:bg-red-900/30 text-red-600 dark:text-red-400"}`));
1742
+ return _el$344;
1536
1743
  })()
1537
1744
  }));
1538
- web.insert(_el$279, web.createComponent(solidJs.Show, {
1745
+ web.insert(_el$326, web.createComponent(solidJs.Show, {
1539
1746
  get when() {
1540
1747
  return data().freshness || data().latency_ms;
1541
1748
  },
1542
1749
  get children() {
1543
- var _el$294 = web.getNextElement(_tmpl$70);
1544
- web.insert(_el$294, () => [data().freshness, data().latency_ms ? `${data().latency_ms}ms` : ""].filter(Boolean).join(" · "));
1545
- return _el$294;
1750
+ var _el$341 = web.getNextElement(_tmpl$79);
1751
+ web.insert(_el$341, () => [data().freshness, data().latency_ms ? `${data().latency_ms}ms` : ""].filter(Boolean).join(" · "));
1752
+ return _el$341;
1546
1753
  }
1547
- }), _el$296, _co$65);
1548
- return _el$279;
1754
+ }), _el$343, _co$80);
1755
+ return _el$326;
1549
1756
  })();
1550
1757
  };
1551
1758
  const DiffSection = (props) => {
@@ -1569,10 +1776,10 @@ const DiffSection = (props) => {
1569
1776
  return [.../* @__PURE__ */ new Set([...Object.keys(l), ...Object.keys(r)])];
1570
1777
  };
1571
1778
  return (() => {
1572
- var _el$303 = web.getNextElement(_tmpl$73), _el$304 = _el$303.firstChild, _el$305 = _el$304.firstChild, _el$306 = _el$305.firstChild, _el$307 = _el$306.firstChild, _el$308 = _el$307.nextSibling, _el$309 = _el$308.nextSibling, _el$310 = _el$305.nextSibling;
1573
- web.insert(_el$308, () => data().left.label);
1574
- web.insert(_el$309, () => data().right.label);
1575
- web.insert(_el$310, web.createComponent(solidJs.For, {
1779
+ var _el$350 = web.getNextElement(_tmpl$82), _el$351 = _el$350.firstChild, _el$352 = _el$351.firstChild, _el$353 = _el$352.firstChild, _el$354 = _el$353.firstChild, _el$355 = _el$354.nextSibling, _el$356 = _el$355.nextSibling, _el$357 = _el$352.nextSibling;
1780
+ web.insert(_el$355, () => data().left.label);
1781
+ web.insert(_el$356, () => data().right.label);
1782
+ web.insert(_el$357, web.createComponent(solidJs.For, {
1576
1783
  get each() {
1577
1784
  return allKeys();
1578
1785
  },
@@ -1587,22 +1794,22 @@ const DiffSection = (props) => {
1587
1794
  };
1588
1795
  const isDiff = () => String(lVal()) !== String(rVal()) && data().highlight.includes(key);
1589
1796
  return (() => {
1590
- var _el$311 = web.getNextElement(_tmpl$74), _el$312 = _el$311.firstChild, _el$313 = _el$312.nextSibling, _el$314 = _el$313.nextSibling;
1591
- web.insert(_el$312, key);
1592
- web.insert(_el$313, (() => {
1593
- var _c$6 = web.memo(() => lVal() !== void 0);
1594
- return () => _c$6() ? String(lVal()) : "—";
1797
+ var _el$358 = web.getNextElement(_tmpl$83), _el$359 = _el$358.firstChild, _el$360 = _el$359.nextSibling, _el$361 = _el$360.nextSibling;
1798
+ web.insert(_el$359, key);
1799
+ web.insert(_el$360, (() => {
1800
+ var _c$7 = web.memo(() => lVal() !== void 0);
1801
+ return () => _c$7() ? String(lVal()) : "—";
1595
1802
  })());
1596
- web.insert(_el$314, (() => {
1597
- var _c$7 = web.memo(() => rVal() !== void 0);
1598
- return () => _c$7() ? String(rVal()) : "—";
1803
+ web.insert(_el$361, (() => {
1804
+ var _c$8 = web.memo(() => rVal() !== void 0);
1805
+ return () => _c$8() ? String(rVal()) : "—";
1599
1806
  })());
1600
- web.effect(() => web.className(_el$311, `border-t border-gray-100 dark:border-gray-700 ${isDiff() ? "bg-yellow-50 dark:bg-yellow-900/10" : ""}`));
1601
- return _el$311;
1807
+ web.effect(() => web.className(_el$358, `border-t border-gray-100 dark:border-gray-700 ${isDiff() ? "bg-yellow-50 dark:bg-yellow-900/10" : ""}`));
1808
+ return _el$358;
1602
1809
  })();
1603
1810
  }
1604
1811
  }));
1605
- return _el$303;
1812
+ return _el$350;
1606
1813
  })();
1607
1814
  };
1608
1815
  web.delegateEvents(["click", "input"]);