@hotmeshio/long-tail 0.8.1 → 0.8.2

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 (305) hide show
  1. package/dashboard/dist/assets/AdminDashboard-Nvja-XIJ.js +2 -0
  2. package/dashboard/dist/assets/{AdminDashboard-Ck5-jV9T.js.map → AdminDashboard-Nvja-XIJ.js.map} +1 -1
  3. package/dashboard/dist/assets/AgentConfigPage-Sf2god7q.js +16 -0
  4. package/dashboard/dist/assets/{AgentConfigPage-DFiXRBWs.js.map → AgentConfigPage-Sf2god7q.js.map} +1 -1
  5. package/dashboard/dist/assets/AgentDetailPage-DtgDeZJR.js +4 -0
  6. package/dashboard/dist/assets/{AgentDetailPage-BBgM_pMe.js.map → AgentDetailPage-DtgDeZJR.js.map} +1 -1
  7. package/dashboard/dist/assets/AgentsPage-C6zqP_xC.js +2 -0
  8. package/dashboard/dist/assets/{AgentsPage-DxwFuedf.js.map → AgentsPage-C6zqP_xC.js.map} +1 -1
  9. package/dashboard/dist/assets/AvailableEscalationsPage-D61kC7Is.js +2 -0
  10. package/dashboard/dist/assets/{AvailableEscalationsPage-DNQbeIcn.js.map → AvailableEscalationsPage-D61kC7Is.js.map} +1 -1
  11. package/dashboard/dist/assets/BotPicker-ChgljKHj.js +2 -0
  12. package/dashboard/dist/assets/{BotPicker-mqwKVOE3.js.map → BotPicker-ChgljKHj.js.map} +1 -1
  13. package/dashboard/dist/assets/CapabilitiesPage-DeybKoZM.js +2 -0
  14. package/dashboard/dist/assets/{CapabilitiesPage-Biffm0kW.js.map → CapabilitiesPage-DeybKoZM.js.map} +1 -1
  15. package/dashboard/dist/assets/CollapsibleSection-BPiTuPBk.js +2 -0
  16. package/dashboard/dist/assets/{CollapsibleSection-Bn6Ks79X.js.map → CollapsibleSection-BPiTuPBk.js.map} +1 -1
  17. package/dashboard/dist/assets/ConfirmDeleteModal-D9_1b4MW.js +2 -0
  18. package/dashboard/dist/assets/{ConfirmDeleteModal-no0-c_1G.js.map → ConfirmDeleteModal-D9_1b4MW.js.map} +1 -1
  19. package/dashboard/dist/assets/CopyableId-blg-gZvT.js +2 -0
  20. package/dashboard/dist/assets/{CopyableId-DS6IDMIX.js.map → CopyableId-blg-gZvT.js.map} +1 -1
  21. package/dashboard/dist/assets/CredentialsPage-DXOcPWtd.js +2 -0
  22. package/dashboard/dist/assets/{CredentialsPage-C3NyncEB.js.map → CredentialsPage-DXOcPWtd.js.map} +1 -1
  23. package/dashboard/dist/assets/CronLabel-D3411N8x.js +2 -0
  24. package/dashboard/dist/assets/{CronLabel-DQWBx57H.js.map → CronLabel-D3411N8x.js.map} +1 -1
  25. package/dashboard/dist/assets/CustomDurationPicker-WG2tPSbV.js +2 -0
  26. package/dashboard/dist/assets/{CustomDurationPicker-DV42oZ1G.js.map → CustomDurationPicker-WG2tPSbV.js.map} +1 -1
  27. package/dashboard/dist/assets/DataTable-ZWgVQg7F.js +2 -0
  28. package/dashboard/dist/assets/{DataTable-Bf4dgxll.js.map → DataTable-ZWgVQg7F.js.map} +1 -1
  29. package/dashboard/dist/assets/DropZone-SgiK1WOl.js +2 -0
  30. package/dashboard/dist/assets/{DropZone-CTSXBb3c.js.map → DropZone-SgiK1WOl.js.map} +1 -1
  31. package/dashboard/dist/assets/ElapsedCell-BFWEGSD7.js +2 -0
  32. package/dashboard/dist/assets/{ElapsedCell-roy4G5SQ.js.map → ElapsedCell-BFWEGSD7.js.map} +1 -1
  33. package/dashboard/dist/assets/EmptyState-BcsfPq9T.js +2 -0
  34. package/dashboard/dist/assets/{EmptyState-CLVm9KmA.js.map → EmptyState-BcsfPq9T.js.map} +1 -1
  35. package/dashboard/dist/assets/EscalationSchemaPage-D2Y5Yeqn.js +9 -0
  36. package/dashboard/dist/assets/{EscalationSchemaPage-DulCCxea.js.map → EscalationSchemaPage-D2Y5Yeqn.js.map} +1 -1
  37. package/dashboard/dist/assets/EscalationsOverview-VlLcX2YM.js +2 -0
  38. package/dashboard/dist/assets/{EscalationsOverview-DDwxn_mT.js.map → EscalationsOverview-VlLcX2YM.js.map} +1 -1
  39. package/dashboard/dist/assets/EventTable-3MJw14jp.js +2 -0
  40. package/dashboard/dist/assets/{EventTable-BaLNvCew.js.map → EventTable-3MJw14jp.js.map} +1 -1
  41. package/dashboard/dist/assets/FilterBar-B4Mk2PvT.js +2 -0
  42. package/dashboard/dist/assets/{FilterBar-DEAbNQqp.js.map → FilterBar-B4Mk2PvT.js.map} +1 -1
  43. package/dashboard/dist/assets/GraphInvokePage-QaUUrPnh.js +2 -0
  44. package/dashboard/dist/assets/{GraphInvokePage-BmM8r0R3.js.map → GraphInvokePage-QaUUrPnh.js.map} +1 -1
  45. package/dashboard/dist/assets/HomePage-Br0A3iOp.js +2 -0
  46. package/dashboard/dist/assets/HomePage-Br0A3iOp.js.map +1 -0
  47. package/dashboard/dist/assets/ListToolbar-d4MGQefV.js +2 -0
  48. package/dashboard/dist/assets/{ListToolbar-Dviaskni.js.map → ListToolbar-d4MGQefV.js.map} +1 -1
  49. package/dashboard/dist/assets/McpOverview-CUzJD5Z5.js +2 -0
  50. package/dashboard/dist/assets/{McpOverview-BBm66wbF.js.map → McpOverview-CUzJD5Z5.js.map} +1 -1
  51. package/dashboard/dist/assets/McpQueryDetailPage-pYSZmV3M.js +5 -0
  52. package/dashboard/dist/assets/{McpQueryDetailPage-B6GJOMcz.js.map → McpQueryDetailPage-pYSZmV3M.js.map} +1 -1
  53. package/dashboard/dist/assets/McpQueryPage-CA5C5dss.js +2 -0
  54. package/dashboard/dist/assets/{McpQueryPage-C-8nIdBL.js.map → McpQueryPage-CA5C5dss.js.map} +1 -1
  55. package/dashboard/dist/assets/McpRunDetailPage-CrRkXwAe.js +2 -0
  56. package/dashboard/dist/assets/{McpRunDetailPage-CSq_0qqi.js.map → McpRunDetailPage-CrRkXwAe.js.map} +1 -1
  57. package/dashboard/dist/assets/McpRunsPage-BqRBDbkn.js +2 -0
  58. package/dashboard/dist/assets/McpRunsPage-BqRBDbkn.js.map +1 -0
  59. package/dashboard/dist/assets/Modal-CSrxpXeM.js +2 -0
  60. package/dashboard/dist/assets/{Modal-C6HI6btY.js.map → Modal-CSrxpXeM.js.map} +1 -1
  61. package/dashboard/dist/assets/NamespacePill-SErKwgkb.js +2 -0
  62. package/dashboard/dist/assets/{NamespacePill-eGsbJBFa.js.map → NamespacePill-SErKwgkb.js.map} +1 -1
  63. package/dashboard/dist/assets/OperationsPage--uVJxzmP.js +2 -0
  64. package/dashboard/dist/assets/OperationsPage--uVJxzmP.js.map +1 -0
  65. package/dashboard/dist/assets/OperatorDashboard-D-UMrTqI.js +2 -0
  66. package/dashboard/dist/assets/{OperatorDashboard-BbmgsOmQ.js.map → OperatorDashboard-D-UMrTqI.js.map} +1 -1
  67. package/dashboard/dist/assets/PageHeader-DJo7yMUR.js +2 -0
  68. package/dashboard/dist/assets/{PageHeader-DcgGV0Y2.js.map → PageHeader-DJo7yMUR.js.map} +1 -1
  69. package/dashboard/dist/assets/PageHeaderWithStats-W3akV6nB.js +2 -0
  70. package/dashboard/dist/assets/{PageHeaderWithStats-Cf8TYFRh.js.map → PageHeaderWithStats-W3akV6nB.js.map} +1 -1
  71. package/dashboard/dist/assets/PriorityBadge-B4ykBH7f.js +2 -0
  72. package/dashboard/dist/assets/{PriorityBadge-a7u8C9uY.js.map → PriorityBadge-B4ykBH7f.js.map} +1 -1
  73. package/dashboard/dist/assets/ProcessDetailPage-BV6D_wuR.js +2 -0
  74. package/dashboard/dist/assets/{ProcessDetailPage-D80w44rV.js.map → ProcessDetailPage-BV6D_wuR.js.map} +1 -1
  75. package/dashboard/dist/assets/ProcessesListPage-BAalEHpx.js +2 -0
  76. package/dashboard/dist/assets/{ProcessesListPage-BjW5xUkv.js.map → ProcessesListPage-BAalEHpx.js.map} +1 -1
  77. package/dashboard/dist/assets/RoleDetailPage-ClE7rUoo.js +11 -0
  78. package/dashboard/dist/assets/{RoleDetailPage-oahg0cdT.js.map → RoleDetailPage-ClE7rUoo.js.map} +1 -1
  79. package/dashboard/dist/assets/RolePill-DHWixsQR.js +2 -0
  80. package/dashboard/dist/assets/{RolePill-BAeaQUXX.js.map → RolePill-DHWixsQR.js.map} +1 -1
  81. package/dashboard/dist/assets/RolesPage-DMsgZioQ.js +2 -0
  82. package/dashboard/dist/assets/{RolesPage-BI1Xtqq_.js.map → RolesPage-DMsgZioQ.js.map} +1 -1
  83. package/dashboard/dist/assets/RowActions-BA9L9djf.js +2 -0
  84. package/dashboard/dist/assets/{RowActions--m4F6GW8.js.map → RowActions-BA9L9djf.js.map} +1 -1
  85. package/dashboard/dist/assets/RunAsSelector-VCnEYIwj.js +2 -0
  86. package/dashboard/dist/assets/{RunAsSelector-DiGzSfiG.js.map → RunAsSelector-VCnEYIwj.js.map} +1 -1
  87. package/dashboard/dist/assets/StatCard-DrdlUeQz.js +2 -0
  88. package/dashboard/dist/assets/{StatCard-DCPGFzCv.js.map → StatCard-DrdlUeQz.js.map} +1 -1
  89. package/dashboard/dist/assets/StatusBadge-DZ9137bI.js +2 -0
  90. package/dashboard/dist/assets/{StatusBadge-mk-dJwPT.js.map → StatusBadge-DZ9137bI.js.map} +1 -1
  91. package/dashboard/dist/assets/StickyPagination-3eCY2-_V.js +2 -0
  92. package/dashboard/dist/assets/{StickyPagination-Clm9H840.js.map → StickyPagination-3eCY2-_V.js.map} +1 -1
  93. package/dashboard/dist/assets/StreamMessageDetail-70kDFH4o.js +2 -0
  94. package/dashboard/dist/assets/{StreamMessageDetail-Bikvs1Cz.js.map → StreamMessageDetail-70kDFH4o.js.map} +1 -1
  95. package/dashboard/dist/assets/SwimlaneTimeline-BOXRit6t.js +2 -0
  96. package/dashboard/dist/assets/{SwimlaneTimeline-C9X3IVqI.js.map → SwimlaneTimeline-BOXRit6t.js.map} +1 -1
  97. package/dashboard/dist/assets/TagInput-CGGC3DTR.js +2 -0
  98. package/dashboard/dist/assets/{TagInput-DmJLnghg.js.map → TagInput-CGGC3DTR.js.map} +1 -1
  99. package/dashboard/dist/assets/TaskDetailPage-YxGQE9Qg.js +2 -0
  100. package/dashboard/dist/assets/TaskDetailPage-YxGQE9Qg.js.map +1 -0
  101. package/dashboard/dist/assets/TaskQueuePill-D6omQJNY.js +2 -0
  102. package/dashboard/dist/assets/{TaskQueuePill--1OX6egx.js.map → TaskQueuePill-D6omQJNY.js.map} +1 -1
  103. package/dashboard/dist/assets/TasksListPage-DuLJQN7Q.js +2 -0
  104. package/dashboard/dist/assets/{TasksListPage-DcYV-GMA.js.map → TasksListPage-DuLJQN7Q.js.map} +1 -1
  105. package/dashboard/dist/assets/TimeAgo-dnc1ZjKc.js +2 -0
  106. package/dashboard/dist/assets/{TimeAgo-pYn3T9IZ.js.map → TimeAgo-dnc1ZjKc.js.map} +1 -1
  107. package/dashboard/dist/assets/TimestampCell-CDR6cTyq.js +2 -0
  108. package/dashboard/dist/assets/{TimestampCell-BPMCscic.js.map → TimestampCell-CDR6cTyq.js.map} +1 -1
  109. package/dashboard/dist/assets/ToolPill-BW0iRwZu.js +2 -0
  110. package/dashboard/dist/assets/{ToolPill-BnF9lCUX.js.map → ToolPill-BW0iRwZu.js.map} +1 -1
  111. package/dashboard/dist/assets/ToolTestPanel-CfwGdRdz.js +2 -0
  112. package/dashboard/dist/assets/{ToolTestPanel-Bw4z_Tya.js.map → ToolTestPanel-CfwGdRdz.js.map} +1 -1
  113. package/dashboard/dist/assets/TopicDetailPage-f2qaeGFz.js +9 -0
  114. package/dashboard/dist/assets/{TopicDetailPage-CtFztOnn.js.map → TopicDetailPage-f2qaeGFz.js.map} +1 -1
  115. package/dashboard/dist/assets/TopicsPage-CwYdVmyK.js +2 -0
  116. package/dashboard/dist/assets/{TopicsPage-BXdc6pAU.js.map → TopicsPage-CwYdVmyK.js.map} +1 -1
  117. package/dashboard/dist/assets/UserName-CRE7EZPU.js +2 -0
  118. package/dashboard/dist/assets/{UserName-R96NG6xB.js.map → UserName-CRE7EZPU.js.map} +1 -1
  119. package/dashboard/dist/assets/WorkflowExecutionPage-BjNBu-Zt.js +2 -0
  120. package/dashboard/dist/assets/{WorkflowExecutionPage-DmRJabMQ.js.map → WorkflowExecutionPage-BjNBu-Zt.js.map} +1 -1
  121. package/dashboard/dist/assets/WorkflowPill-BtNBSplz.js +2 -0
  122. package/dashboard/dist/assets/{WorkflowPill-Cc2MlYbB.js.map → WorkflowPill-BtNBSplz.js.map} +1 -1
  123. package/dashboard/dist/assets/WorkflowsDashboard-DfpvbzNt.js +2 -0
  124. package/dashboard/dist/assets/WorkflowsDashboard-DfpvbzNt.js.map +1 -0
  125. package/dashboard/dist/assets/WorkflowsOverview-BwD2lQwj.js +2 -0
  126. package/dashboard/dist/assets/{WorkflowsOverview-BhgE0RS8.js.map → WorkflowsOverview-BwD2lQwj.js.map} +1 -1
  127. package/dashboard/dist/assets/YamlWorkflowDetailPage-BhHb7j2s.js +33 -0
  128. package/dashboard/dist/assets/{YamlWorkflowDetailPage-CvIgB5y7.js.map → YamlWorkflowDetailPage-BhHb7j2s.js.map} +1 -1
  129. package/dashboard/dist/assets/YamlWorkflowsPage-SBRpY2dI.js +2 -0
  130. package/dashboard/dist/assets/YamlWorkflowsPage-SBRpY2dI.js.map +1 -0
  131. package/dashboard/dist/assets/{agents-BpYMwrsB.js → agents-VbkdqWCr.js} +2 -2
  132. package/dashboard/dist/assets/{agents-BpYMwrsB.js.map → agents-VbkdqWCr.js.map} +1 -1
  133. package/dashboard/dist/assets/{bots-DI6Wqp5X.js → bots-CsgYcYU_.js} +2 -2
  134. package/dashboard/dist/assets/{bots-DI6Wqp5X.js.map → bots-CsgYcYU_.js.map} +1 -1
  135. package/dashboard/dist/assets/capabilities-CMhFyoDl.js +2 -0
  136. package/dashboard/dist/assets/{capabilities-BKZZb8eM.js.map → capabilities-CMhFyoDl.js.map} +1 -1
  137. package/dashboard/dist/assets/{controlplane-Djshb7fm.js → controlplane-BstXtPbV.js} +2 -2
  138. package/dashboard/dist/assets/{controlplane-Djshb7fm.js.map → controlplane-BstXtPbV.js.map} +1 -1
  139. package/dashboard/dist/assets/escalation-C0BNAeIG.js +2 -0
  140. package/dashboard/dist/assets/{escalation-D8mrXtjS.js.map → escalation-C0BNAeIG.js.map} +1 -1
  141. package/dashboard/dist/assets/escalation-columns-DajPgfuV.js +2 -0
  142. package/dashboard/dist/assets/{escalation-columns-CyLzgPkz.js.map → escalation-columns-DajPgfuV.js.map} +1 -1
  143. package/dashboard/dist/assets/index-BWLVqWLU.js +2 -0
  144. package/dashboard/dist/assets/{index-CQtv2rj6.js.map → index-BWLVqWLU.js.map} +1 -1
  145. package/dashboard/dist/assets/index-BY5m8rhE.js +2 -0
  146. package/dashboard/dist/assets/{index-CwAmiy_j.js.map → index-BY5m8rhE.js.map} +1 -1
  147. package/dashboard/dist/assets/index-BYf0oNSQ.js +6 -0
  148. package/dashboard/dist/assets/{index-eshNd6NY.js.map → index-BYf0oNSQ.js.map} +1 -1
  149. package/dashboard/dist/assets/index-BcaQ_hCz.js +9 -0
  150. package/dashboard/dist/assets/{index-Y6yj36QR.js.map → index-BcaQ_hCz.js.map} +1 -1
  151. package/dashboard/dist/assets/index-BdqKh0UK.css +1 -0
  152. package/dashboard/dist/assets/index-C8k3Z2su.js +63 -0
  153. package/dashboard/dist/assets/index-C8k3Z2su.js.map +1 -0
  154. package/dashboard/dist/assets/index-CSixdp5W.js +2 -0
  155. package/dashboard/dist/assets/{index-yxnQew1X.js.map → index-CSixdp5W.js.map} +1 -1
  156. package/dashboard/dist/assets/index-CXnSqSFH.js +2 -0
  157. package/dashboard/dist/assets/{index-B5MAG4Uv.js.map → index-CXnSqSFH.js.map} +1 -1
  158. package/dashboard/dist/assets/index-CaSMWhLU.js +2 -0
  159. package/dashboard/dist/assets/{index-C71I-f5G.js.map → index-CaSMWhLU.js.map} +1 -1
  160. package/dashboard/dist/assets/index-Cl1vY8Lg.js +2 -0
  161. package/dashboard/dist/assets/{index-xn9fmkHC.js.map → index-Cl1vY8Lg.js.map} +1 -1
  162. package/dashboard/dist/assets/index-CvFQtPWA.js +2 -0
  163. package/dashboard/dist/assets/{index-CJb3dXku.js.map → index-CvFQtPWA.js.map} +1 -1
  164. package/dashboard/dist/assets/index-DWlPFH3T.js +6 -0
  165. package/dashboard/dist/assets/{index-BfxiRwk2.js.map → index-DWlPFH3T.js.map} +1 -1
  166. package/dashboard/dist/assets/index-D_6JFBiM.js +2 -0
  167. package/dashboard/dist/assets/{index-DkbnD-Te.js.map → index-D_6JFBiM.js.map} +1 -1
  168. package/dashboard/dist/assets/index-fqU_l4dC.js +2 -0
  169. package/dashboard/dist/assets/{index-CphzO7b8.js.map → index-fqU_l4dC.js.map} +1 -1
  170. package/dashboard/dist/assets/{knowledge-C_1r0faY.js → knowledge-Bskl1MbC.js} +2 -2
  171. package/dashboard/dist/assets/{knowledge-C_1r0faY.js.map → knowledge-Bskl1MbC.js.map} +1 -1
  172. package/dashboard/dist/assets/{mcp-BtG54ZAx.js → mcp-C_qz25AB.js} +2 -2
  173. package/dashboard/dist/assets/{mcp-BtG54ZAx.js.map → mcp-C_qz25AB.js.map} +1 -1
  174. package/dashboard/dist/assets/{mcp-query-CSdQWxmv.js → mcp-query-CJx58s1A.js} +2 -2
  175. package/dashboard/dist/assets/{mcp-query-CSdQWxmv.js.map → mcp-query-CJx58s1A.js.map} +1 -1
  176. package/dashboard/dist/assets/{pipelines-DVkwxN64.js → pipelines-B6GzpgtG.js} +2 -2
  177. package/dashboard/dist/assets/{pipelines-DVkwxN64.js.map → pipelines-B6GzpgtG.js.map} +1 -1
  178. package/dashboard/dist/assets/roles-D8lPvFgG.js +2 -0
  179. package/dashboard/dist/assets/{roles-CpRcUIMm.js.map → roles-D8lPvFgG.js.map} +1 -1
  180. package/dashboard/dist/assets/tasks-BWHakSYf.js +2 -0
  181. package/dashboard/dist/assets/{tasks-DNdvW5H6.js.map → tasks-BWHakSYf.js.map} +1 -1
  182. package/dashboard/dist/assets/{topics-DNC77Chw.js → topics-0dXzPX8t.js} +2 -2
  183. package/dashboard/dist/assets/{topics-DNC77Chw.js.map → topics-0dXzPX8t.js.map} +1 -1
  184. package/dashboard/dist/assets/{useCollapsedSections-CGNA5oKV.js → useCollapsedSections-BU5HULGs.js} +2 -2
  185. package/dashboard/dist/assets/{useCollapsedSections-CGNA5oKV.js.map → useCollapsedSections-BU5HULGs.js.map} +1 -1
  186. package/dashboard/dist/assets/{useDebouncedValue-DmL3uNt_.js → useDebouncedValue-BA5S7V54.js} +2 -2
  187. package/dashboard/dist/assets/{useDebouncedValue-DmL3uNt_.js.map → useDebouncedValue-BA5S7V54.js.map} +1 -1
  188. package/dashboard/dist/assets/{useEventHooks-CUUeBSH1.js → useEventHooks-Dpixlgp-.js} +2 -2
  189. package/dashboard/dist/assets/{useEventHooks-CUUeBSH1.js.map → useEventHooks-Dpixlgp-.js.map} +1 -1
  190. package/dashboard/dist/assets/{useFilterParams-Ch-a71bE.js → useFilterParams-x-Dg0Vgz.js} +2 -2
  191. package/dashboard/dist/assets/{useFilterParams-Ch-a71bE.js.map → useFilterParams-x-Dg0Vgz.js.map} +1 -1
  192. package/dashboard/dist/assets/{useNamespace-D-AjLnPK.js → useNamespace-DQMc77ok.js} +2 -2
  193. package/dashboard/dist/assets/{useNamespace-D-AjLnPK.js.map → useNamespace-DQMc77ok.js.map} +1 -1
  194. package/dashboard/dist/assets/{useYamlActivityEvents-DRdetOb_.js → useYamlActivityEvents-DO5bHOVE.js} +2 -2
  195. package/dashboard/dist/assets/{useYamlActivityEvents-DRdetOb_.js.map → useYamlActivityEvents-DO5bHOVE.js.map} +1 -1
  196. package/dashboard/dist/assets/{users-BUgdEsec.js → users-B_LVbnUk.js} +2 -2
  197. package/dashboard/dist/assets/{users-BUgdEsec.js.map → users-B_LVbnUk.js.map} +1 -1
  198. package/dashboard/dist/assets/{vendor-icons-CNyYGNsk.js → vendor-icons-DOIDKgo6.js} +116 -121
  199. package/dashboard/dist/assets/{vendor-icons-CNyYGNsk.js.map → vendor-icons-DOIDKgo6.js.map} +1 -1
  200. package/dashboard/dist/assets/vendor-query-B2UbickB.js +18 -0
  201. package/dashboard/dist/assets/vendor-query-B2UbickB.js.map +1 -0
  202. package/dashboard/dist/assets/vendor-react-CXumBFUA.js +22 -0
  203. package/dashboard/dist/assets/vendor-react-CXumBFUA.js.map +1 -0
  204. package/dashboard/dist/assets/{workflows-BfyR5VJt.js → workflows-WmmGDAvo.js} +2 -2
  205. package/dashboard/dist/assets/{workflows-BfyR5VJt.js.map → workflows-WmmGDAvo.js.map} +1 -1
  206. package/dashboard/dist/assets/{yaml-workflows-Bz7yEnhl.js → yaml-workflows-BS7KHhU1.js} +2 -2
  207. package/dashboard/dist/assets/{yaml-workflows-Bz7yEnhl.js.map → yaml-workflows-BS7KHhU1.js.map} +1 -1
  208. package/dashboard/dist/index.html +5 -5
  209. package/docs/dashboard.md +58 -42
  210. package/package.json +1 -1
  211. package/dashboard/dist/assets/AdminDashboard-Ck5-jV9T.js +0 -2
  212. package/dashboard/dist/assets/AgentConfigPage-DFiXRBWs.js +0 -16
  213. package/dashboard/dist/assets/AgentDetailPage-BBgM_pMe.js +0 -4
  214. package/dashboard/dist/assets/AgentsPage-DxwFuedf.js +0 -2
  215. package/dashboard/dist/assets/AvailableEscalationsPage-DNQbeIcn.js +0 -2
  216. package/dashboard/dist/assets/BotPicker-mqwKVOE3.js +0 -2
  217. package/dashboard/dist/assets/CapabilitiesPage-Biffm0kW.js +0 -2
  218. package/dashboard/dist/assets/CollapsibleSection-Bn6Ks79X.js +0 -2
  219. package/dashboard/dist/assets/ConfirmDeleteModal-no0-c_1G.js +0 -2
  220. package/dashboard/dist/assets/CopyableId-DS6IDMIX.js +0 -2
  221. package/dashboard/dist/assets/CredentialsPage-C3NyncEB.js +0 -2
  222. package/dashboard/dist/assets/CronLabel-DQWBx57H.js +0 -2
  223. package/dashboard/dist/assets/CustomDurationPicker-DV42oZ1G.js +0 -2
  224. package/dashboard/dist/assets/DataTable-Bf4dgxll.js +0 -2
  225. package/dashboard/dist/assets/DropZone-CTSXBb3c.js +0 -2
  226. package/dashboard/dist/assets/ElapsedCell-roy4G5SQ.js +0 -2
  227. package/dashboard/dist/assets/EmptyState-CLVm9KmA.js +0 -2
  228. package/dashboard/dist/assets/EscalationSchemaPage-DulCCxea.js +0 -9
  229. package/dashboard/dist/assets/EscalationsOverview-DDwxn_mT.js +0 -2
  230. package/dashboard/dist/assets/EventTable-BaLNvCew.js +0 -2
  231. package/dashboard/dist/assets/FilterBar-DEAbNQqp.js +0 -2
  232. package/dashboard/dist/assets/GraphInvokePage-BmM8r0R3.js +0 -2
  233. package/dashboard/dist/assets/HomePage-Ds3PzWWr.js +0 -2
  234. package/dashboard/dist/assets/HomePage-Ds3PzWWr.js.map +0 -1
  235. package/dashboard/dist/assets/ListToolbar-Dviaskni.js +0 -2
  236. package/dashboard/dist/assets/McpOverview-BBm66wbF.js +0 -2
  237. package/dashboard/dist/assets/McpQueryDetailPage-B6GJOMcz.js +0 -5
  238. package/dashboard/dist/assets/McpQueryPage-C-8nIdBL.js +0 -2
  239. package/dashboard/dist/assets/McpRunDetailPage-CSq_0qqi.js +0 -2
  240. package/dashboard/dist/assets/McpRunsPage-BdK8ahX7.js +0 -2
  241. package/dashboard/dist/assets/McpRunsPage-BdK8ahX7.js.map +0 -1
  242. package/dashboard/dist/assets/Modal-C6HI6btY.js +0 -2
  243. package/dashboard/dist/assets/NamespacePill-eGsbJBFa.js +0 -2
  244. package/dashboard/dist/assets/OperationsPage-DODPFmf2.js +0 -2
  245. package/dashboard/dist/assets/OperationsPage-DODPFmf2.js.map +0 -1
  246. package/dashboard/dist/assets/OperatorDashboard-BbmgsOmQ.js +0 -2
  247. package/dashboard/dist/assets/PageHeader-DcgGV0Y2.js +0 -2
  248. package/dashboard/dist/assets/PageHeaderWithStats-Cf8TYFRh.js +0 -2
  249. package/dashboard/dist/assets/PriorityBadge-a7u8C9uY.js +0 -2
  250. package/dashboard/dist/assets/ProcessDetailPage-D80w44rV.js +0 -2
  251. package/dashboard/dist/assets/ProcessesListPage-BjW5xUkv.js +0 -2
  252. package/dashboard/dist/assets/RoleDetailPage-oahg0cdT.js +0 -11
  253. package/dashboard/dist/assets/RolePill-BAeaQUXX.js +0 -2
  254. package/dashboard/dist/assets/RolesPage-BI1Xtqq_.js +0 -2
  255. package/dashboard/dist/assets/RowActions--m4F6GW8.js +0 -2
  256. package/dashboard/dist/assets/RunAsSelector-DiGzSfiG.js +0 -2
  257. package/dashboard/dist/assets/StatCard-DCPGFzCv.js +0 -2
  258. package/dashboard/dist/assets/StatusBadge-mk-dJwPT.js +0 -2
  259. package/dashboard/dist/assets/StickyPagination-Clm9H840.js +0 -2
  260. package/dashboard/dist/assets/StreamMessageDetail-Bikvs1Cz.js +0 -2
  261. package/dashboard/dist/assets/SwimlaneTimeline-C9X3IVqI.js +0 -2
  262. package/dashboard/dist/assets/TagInput-DmJLnghg.js +0 -2
  263. package/dashboard/dist/assets/TaskDetailPage-C0tbiUi7.js +0 -2
  264. package/dashboard/dist/assets/TaskDetailPage-C0tbiUi7.js.map +0 -1
  265. package/dashboard/dist/assets/TaskQueuePill--1OX6egx.js +0 -2
  266. package/dashboard/dist/assets/TasksListPage-DcYV-GMA.js +0 -2
  267. package/dashboard/dist/assets/TimeAgo-pYn3T9IZ.js +0 -2
  268. package/dashboard/dist/assets/TimestampCell-BPMCscic.js +0 -2
  269. package/dashboard/dist/assets/ToolPill-BnF9lCUX.js +0 -2
  270. package/dashboard/dist/assets/ToolTestPanel-Bw4z_Tya.js +0 -2
  271. package/dashboard/dist/assets/TopicDetailPage-CtFztOnn.js +0 -9
  272. package/dashboard/dist/assets/TopicsPage-BXdc6pAU.js +0 -2
  273. package/dashboard/dist/assets/UserName-R96NG6xB.js +0 -2
  274. package/dashboard/dist/assets/WorkflowExecutionPage-DmRJabMQ.js +0 -2
  275. package/dashboard/dist/assets/WorkflowPill-Cc2MlYbB.js +0 -2
  276. package/dashboard/dist/assets/WorkflowsDashboard-uLU5ZToY.js +0 -2
  277. package/dashboard/dist/assets/WorkflowsDashboard-uLU5ZToY.js.map +0 -1
  278. package/dashboard/dist/assets/WorkflowsOverview-BhgE0RS8.js +0 -2
  279. package/dashboard/dist/assets/YamlWorkflowDetailPage-CvIgB5y7.js +0 -33
  280. package/dashboard/dist/assets/YamlWorkflowsPage-DWnsgl2v.js +0 -2
  281. package/dashboard/dist/assets/YamlWorkflowsPage-DWnsgl2v.js.map +0 -1
  282. package/dashboard/dist/assets/capabilities-BKZZb8eM.js +0 -2
  283. package/dashboard/dist/assets/escalation-D8mrXtjS.js +0 -2
  284. package/dashboard/dist/assets/escalation-columns-CyLzgPkz.js +0 -2
  285. package/dashboard/dist/assets/index-B5MAG4Uv.js +0 -2
  286. package/dashboard/dist/assets/index-BfxiRwk2.js +0 -6
  287. package/dashboard/dist/assets/index-C71I-f5G.js +0 -2
  288. package/dashboard/dist/assets/index-CC4g-6QE.css +0 -1
  289. package/dashboard/dist/assets/index-CJb3dXku.js +0 -2
  290. package/dashboard/dist/assets/index-CQtv2rj6.js +0 -2
  291. package/dashboard/dist/assets/index-CphzO7b8.js +0 -2
  292. package/dashboard/dist/assets/index-CwAmiy_j.js +0 -2
  293. package/dashboard/dist/assets/index-DgCS2Frb.js +0 -281
  294. package/dashboard/dist/assets/index-DgCS2Frb.js.map +0 -1
  295. package/dashboard/dist/assets/index-DkbnD-Te.js +0 -2
  296. package/dashboard/dist/assets/index-Y6yj36QR.js +0 -9
  297. package/dashboard/dist/assets/index-eshNd6NY.js +0 -6
  298. package/dashboard/dist/assets/index-xn9fmkHC.js +0 -2
  299. package/dashboard/dist/assets/index-yxnQew1X.js +0 -2
  300. package/dashboard/dist/assets/roles-CpRcUIMm.js +0 -2
  301. package/dashboard/dist/assets/tasks-DNdvW5H6.js +0 -2
  302. package/dashboard/dist/assets/vendor-query-DLp59M9_.js +0 -35
  303. package/dashboard/dist/assets/vendor-query-DLp59M9_.js.map +0 -1
  304. package/dashboard/dist/assets/vendor-react-zA2lQFDs.js +0 -26
  305. package/dashboard/dist/assets/vendor-react-zA2lQFDs.js.map +0 -1
@@ -1,2 +0,0 @@
1
- import{j as e}from"./index-DgCS2Frb.js";import{a as b}from"./vendor-query-DLp59M9_.js";import{d as F,e as B,f as H,g as O}from"./mcp-BtG54ZAx.js";import{P as U}from"./PageHeader-DcgGV0Y2.js";import{T as z}from"./TagInput-DmJLnghg.js";import{X as J,O as Y,ao as q,ap as K}from"./vendor-icons-CNyYGNsk.js";import{e as X,c as G,f as W}from"./vendor-react-zA2lQFDs.js";function Q({steps:s,currentStep:a,onStepClick:i}){return e.jsxDEV("div",{className:"flex items-center justify-center gap-1 pb-4 border-b border-surface-border mb-4",children:s.map((r,o)=>{const l=o<a,c=o===a,t=!!i;return e.jsxDEV("div",{className:"flex items-center gap-1",children:[o>0&&e.jsxDEV("div",{className:`w-4 h-px ${l?"bg-accent":"bg-surface-border"}`},void 0,!1,{fileName:"/app/dashboard/src/components/common/layout/StepIndicator.tsx",lineNumber:17,columnNumber:15},this),e.jsxDEV("button",{type:"button",onClick:t?()=>i(o):void 0,className:`flex items-center gap-1 ${t?"cursor-pointer":"cursor-default"}`,children:[e.jsxDEV("span",{className:`w-5 h-5 rounded-full text-[10px] font-semibold flex items-center justify-center shrink-0 transition-colors ${c?"bg-accent text-text-inverse":l?"bg-accent-muted text-accent":"bg-surface-sunken text-text-tertiary"} ${t&&!c?"hover:bg-accent-muted hover:text-accent":""}`,children:o+1},void 0,!1,{fileName:"/app/dashboard/src/components/common/layout/StepIndicator.tsx",lineNumber:24,columnNumber:15},this),e.jsxDEV("span",{className:`text-[10px] font-semibold uppercase tracking-wider whitespace-nowrap transition-colors ${c?"text-text-primary":"text-text-tertiary"} ${t&&!c?"hover:text-text-primary":""}`,children:r},void 0,!1,{fileName:"/app/dashboard/src/components/common/layout/StepIndicator.tsx",lineNumber:35,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/common/layout/StepIndicator.tsx",lineNumber:19,columnNumber:13},this)]},r,!0,{fileName:"/app/dashboard/src/components/common/layout/StepIndicator.tsx",lineNumber:15,columnNumber:11},this)})},void 0,!1,{fileName:"/app/dashboard/src/components/common/layout/StepIndicator.tsx",lineNumber:9,columnNumber:5},this)}const _={name:"",description:"",mode:"network",transport_type:"sse",command:"",args:"",env_vars:"{}",url:"",auto_connect:!1,tags:[],compile_hints:"",credential_providers:[],discovered_tools:null};function Z(s){const a=s.transport_config??{},i=!!a.builtin;let r="network";return i?r="in-process":s.transport_type==="stdio"&&(r="local-process"),{name:s.name,description:s.description??"",mode:r,transport_type:s.transport_type,command:a.command??"",args:(a.args??[]).join(", "),env_vars:a.env?JSON.stringify(a.env,null,2):"{}",url:a.url??"",auto_connect:s.auto_connect,tags:s.tags??[],compile_hints:s.compile_hints??"",credential_providers:s.credential_providers??[],discovered_tools:s.tool_manifest??null}}function R(s){let a={};return s.mode==="local-process"?a={command:s.command.trim(),args:s.args.split(",").map(i=>i.trim()).filter(Boolean),env:s.env_vars.trim()?JSON.parse(s.env_vars):void 0}:s.mode==="network"&&(a={url:s.url.trim()}),{name:s.name.trim(),description:s.description.trim()||void 0,transport_type:s.mode==="local-process"?"stdio":s.transport_type,transport_config:a,auto_connect:s.auto_connect,tags:s.tags,compile_hints:s.compile_hints.trim()||void 0,credential_providers:s.credential_providers.length>0?s.credential_providers:void 0}}const P=["Transport","Discovery","Test","Review"];function C(s,a){return s===1?!(!a.name.trim()||a.mode==="network"&&!a.url.trim()||a.mode==="local-process"&&!a.command.trim()):!0}const n="label",N="hint",ee=[{value:"in-process",label:"In-Process",hint:"Built-in server running inside the app"},{value:"network",label:"Network Service",hint:"Remote server via SSE or Streamable HTTP"},{value:"local-process",label:"Local Process",hint:"Spawn a local command via stdio"}];function se({form:s,set:a,isBuiltin:i}){return e.jsxDEV("div",{className:"space-y-5",children:[e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Connection Mode"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:21,columnNumber:9},this),e.jsxDEV("div",{className:"grid grid-cols-3 gap-3 mt-1",children:ee.map(r=>{const o=s.mode===r.value,l=i&&r.value!=="in-process";return e.jsxDEV("button",{type:"button",disabled:l,onClick:()=>{a("mode",r.value),r.value==="local-process"&&a("transport_type","stdio"),r.value==="network"&&a("transport_type","sse")},className:`text-left p-3 rounded-md border transition-colors ${o?"border-accent bg-accent/5":l?"border-surface-border bg-surface-sunken opacity-50 cursor-not-allowed":"border-surface-border hover:border-text-tertiary cursor-pointer"}`,children:[e.jsxDEV("span",{className:`text-xs font-medium ${o?"text-accent":"text-text-primary"}`,children:r.label},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:44,columnNumber:17},this),e.jsxDEV("span",{className:"block text-[10px] text-text-tertiary mt-0.5",children:r.hint},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:47,columnNumber:17},this)]},r.value,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:27,columnNumber:15},this)})},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:22,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:20,columnNumber:7},this),e.jsxDEV("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Name"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:57,columnNumber:11},this),e.jsxDEV("input",{type:"text",value:s.name,onChange:r=>a("name",r.target.value),placeholder:"e.g., vision-server",className:"input text-xs w-full",disabled:i},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:58,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:56,columnNumber:9},this),e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Description"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:68,columnNumber:11},this),e.jsxDEV("input",{type:"text",value:s.description,onChange:r=>a("description",r.target.value),placeholder:"Optional description",className:"input text-xs w-full"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:69,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:67,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:55,columnNumber:7},this),s.mode==="in-process"&&e.jsxDEV("div",{children:e.jsxDEV("p",{className:N,children:"This server runs in-process via InMemoryTransport. Transport is managed automatically — no configuration needed."},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:82,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:81,columnNumber:9},this),s.mode==="network"&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Server URL"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:92,columnNumber:13},this),e.jsxDEV("input",{type:"text",value:s.url,onChange:r=>a("url",r.target.value),placeholder:"https://mcp-server.example.com/sse",className:"input text-xs w-full font-mono"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:93,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:91,columnNumber:11},this),e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Transport Protocol"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:102,columnNumber:13},this),e.jsxDEV("div",{className:"flex gap-2 mt-1",children:["sse","streamable-http"].map(r=>e.jsxDEV("button",{type:"button",onClick:()=>a("transport_type",r),className:`px-3 py-1.5 text-xs rounded-md border transition-colors ${s.transport_type===r?"border-accent bg-accent/5 text-accent font-medium":"border-surface-border text-text-secondary hover:border-text-tertiary"}`,children:r==="sse"?"SSE":"Streamable HTTP"},r,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:105,columnNumber:17},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:103,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:101,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:90,columnNumber:9},this),s.mode==="local-process"&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Command"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:127,columnNumber:13},this),e.jsxDEV("input",{type:"text",value:s.command,onChange:r=>a("command",r.target.value),placeholder:"e.g., npx",className:"input text-xs w-full font-mono"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:128,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:126,columnNumber:11},this),e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Arguments (comma-separated)"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:137,columnNumber:13},this),e.jsxDEV("input",{type:"text",value:s.args,onChange:r=>a("args",r.target.value),placeholder:"e.g., -y, @modelcontextprotocol/server-filesystem, /tmp",className:"input text-xs w-full font-mono"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:138,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:136,columnNumber:11},this),e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Environment Variables (JSON)"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:147,columnNumber:13},this),e.jsxDEV("textarea",{value:s.env_vars,onChange:r=>a("env_vars",r.target.value),className:"input-json w-full",rows:3,spellCheck:!1},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:148,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:146,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:125,columnNumber:9},this),e.jsxDEV("label",{className:"flex items-center gap-2 cursor-pointer",children:[e.jsxDEV("input",{type:"checkbox",checked:s.auto_connect,onChange:r=>a("auto_connect",r.target.checked),className:"w-4 h-4 rounded border-border accent-accent"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:161,columnNumber:9},this),e.jsxDEV("span",{className:"text-xs text-text-primary",children:"Auto-connect on startup"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:167,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:160,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TransportStep.tsx",lineNumber:18,columnNumber:5},this)}function ae({form:s,set:a}){const[i,r]=b.useState(""),o=t=>{const p=t.trim().toLowerCase();p&&!s.credential_providers.includes(p)&&a("credential_providers",[...s.credential_providers,p]),r("")},l=t=>{a("credential_providers",s.credential_providers.filter(p=>p!==t))},c=t=>{t.key==="Enter"||t.key===","?(t.preventDefault(),o(i)):t.key==="Backspace"&&!i&&s.credential_providers.length>0&&l(s.credential_providers[s.credential_providers.length-1])};return e.jsxDEV("div",{className:"space-y-5",children:[e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Tags"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:40,columnNumber:9},this),e.jsxDEV(z,{tags:s.tags,onChange:t=>a("tags",t),placeholder:"Add tag (e.g., database, analytics)..."},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:41,columnNumber:9},this),e.jsxDEV("p",{className:N,children:"Tags enable tool discovery. Workflows filter available MCP servers by tags to find relevant tools."},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:46,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:39,columnNumber:7},this),e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Compile Hints"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:53,columnNumber:9},this),e.jsxDEV("textarea",{value:s.compile_hints,onChange:t=>a("compile_hints",t.target.value),placeholder:"Guidance for the workflow compiler when generating YAML from this server's tools...",className:"input text-xs w-full leading-relaxed",rows:4,spellCheck:!1},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:54,columnNumber:9},this),e.jsxDEV("p",{className:N,children:"Free-form text that guides the workflow compiler. Describe how tools should be composed, sequenced, or parameterized."},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:62,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:52,columnNumber:7},this),e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Credential Providers"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:69,columnNumber:9},this),e.jsxDEV("div",{className:"flex flex-wrap items-center gap-1.5 bg-surface-sunken border border-surface-border rounded-md px-2 py-1.5 focus-within:ring-1 focus-within:ring-accent-primary",children:[s.credential_providers.map(t=>e.jsxDEV("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-accent/10 text-accent text-[11px] font-medium",children:[t,e.jsxDEV("button",{type:"button",onClick:()=>l(t),className:"hover:text-status-error transition-colors",children:e.jsxDEV(J,{className:"w-2.5 h-2.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:82,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:77,columnNumber:15},this)]},t,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:72,columnNumber:13},this)),e.jsxDEV("input",{type:"text",value:i,onChange:t=>r(t.target.value),onKeyDown:c,onBlur:()=>{i.trim()&&o(i)},placeholder:s.credential_providers.length===0?"Add provider (e.g., github, slack)...":"",className:"flex-1 min-w-[80px] bg-transparent text-xs text-text-primary outline-none placeholder:text-text-tertiary"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:86,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:70,columnNumber:9},this),e.jsxDEV("p",{className:N,children:"IAM credential providers required by this server's tools. Users will be prompted to connect these before tool execution."},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:96,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:68,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/DiscoveryStep.tsx",lineNumber:37,columnNumber:5},this)}function re({form:s,set:a}){const i=F(),r=s.mode==="in-process",o=()=>{const t=R(s);i.mutate({transport_type:t.transport_type,transport_config:t.transport_config},{onSuccess:p=>{p.success&&a("discovered_tools",p.tools)}})},l=i.data,c=s.discovered_tools??(l==null?void 0:l.tools)??[];return e.jsxDEV("div",{className:"space-y-5",children:r?e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-sm text-text-secondary",children:"In-process servers connect lazily on first tool call. No connection test needed."},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:37,columnNumber:11},this),s.discovered_tools&&s.discovered_tools.length>0&&e.jsxDEV("div",{className:"mt-4",children:[e.jsxDEV("p",{className:"text-xs text-text-tertiary mb-2",children:[s.discovered_tools.length," tool",s.discovered_tools.length!==1?"s":""," cached from last connection"]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:42,columnNumber:15},this),e.jsxDEV(k,{tools:s.discovered_tools},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:45,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:41,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:36,columnNumber:9},this):e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"flex items-center gap-3",children:[e.jsxDEV("button",{type:"button",onClick:o,disabled:i.isPending,className:"btn-primary text-xs",children:i.isPending?e.jsxDEV("span",{className:"flex items-center gap-1.5",children:[e.jsxDEV(Y,{className:"w-3 h-3 animate-spin"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:60,columnNumber:19},this),"Connecting..."]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:59,columnNumber:17},this):"Test Connection"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:52,columnNumber:13},this),(l==null?void 0:l.success)&&e.jsxDEV("span",{className:"flex items-center gap-1 text-xs text-status-success",children:[e.jsxDEV(q,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:69,columnNumber:17},this),"Connected — ",c.length," tool",c.length!==1?"s":""," discovered"]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:68,columnNumber:15},this),l&&!l.success&&e.jsxDEV("span",{className:"flex items-center gap-1 text-xs text-status-error",children:[e.jsxDEV(K,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:75,columnNumber:17},this),l.error||"Connection failed"]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:74,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:51,columnNumber:11},this),c.length>0&&e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-xs text-text-tertiary mb-2",children:"Discovered tools"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:83,columnNumber:15},this),e.jsxDEV(k,{tools:c},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:84,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:82,columnNumber:13},this),e.jsxDEV("p",{className:N,children:"Tests connectivity by connecting to the server and listing available tools. The server must be reachable from this machine."},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:88,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:50,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:34,columnNumber:5},this)}function k({tools:s}){return e.jsxDEV("div",{className:"max-h-[280px] overflow-y-auto border border-surface-border rounded-md divide-y divide-surface-border",children:s.map(a=>e.jsxDEV("div",{className:"px-3 py-2",children:[e.jsxDEV("span",{className:"text-xs font-medium text-text-primary font-mono",children:a.name},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:102,columnNumber:11},this),a.description&&e.jsxDEV("span",{className:"block text-[10px] text-text-tertiary mt-0.5 line-clamp-2",children:a.description},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:104,columnNumber:13},this)]},a.name,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:101,columnNumber:9},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/TestStep.tsx",lineNumber:99,columnNumber:5},this)}const te={"in-process":"In-Process",network:"Network Service","local-process":"Local Process"},ie={stdio:"stdio",sse:"SSE","streamable-http":"Streamable HTTP"};function le({form:s}){const a=s.discovered_tools??[];return e.jsxDEV("div",{className:"space-y-4",children:[e.jsxDEV(m,{label:"Name",value:s.name},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:25,columnNumber:7},this),s.description&&e.jsxDEV(m,{label:"Description",value:s.description},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:26,columnNumber:28},this),e.jsxDEV(m,{label:"Mode",value:te[s.mode]??s.mode},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:27,columnNumber:7},this),s.mode==="network"&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV(m,{label:"Transport",value:ie[s.transport_type]??s.transport_type},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:31,columnNumber:11},this),e.jsxDEV(m,{label:"URL",value:s.url,mono:!0},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:32,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:30,columnNumber:9},this),s.mode==="local-process"&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV(m,{label:"Command",value:s.command,mono:!0},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:37,columnNumber:11},this),s.args&&e.jsxDEV(m,{label:"Args",value:s.args,mono:!0},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:38,columnNumber:25},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:36,columnNumber:9},this),e.jsxDEV(m,{label:"Auto-connect",value:s.auto_connect?"Yes":"No"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:42,columnNumber:7},this),s.tags.length>0&&e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Tags"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:46,columnNumber:11},this),e.jsxDEV("div",{className:"flex flex-wrap gap-1.5 mt-1",children:s.tags.map(i=>e.jsxDEV("span",{className:"px-2 py-0.5 rounded-full bg-accent/10 text-accent text-[11px] font-medium",children:i},i,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:49,columnNumber:15},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:47,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:45,columnNumber:9},this),s.credential_providers.length>0&&e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:"Credential Providers"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:59,columnNumber:11},this),e.jsxDEV("div",{className:"flex flex-wrap gap-1.5 mt-1",children:s.credential_providers.map(i=>e.jsxDEV("span",{className:"px-2 py-0.5 rounded-full bg-accent/10 text-accent text-[11px] font-medium",children:i},i,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:62,columnNumber:15},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:60,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:58,columnNumber:9},this),s.compile_hints&&e.jsxDEV(m,{label:"Compile Hints",value:s.compile_hints},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:70,columnNumber:30},this),a.length>0&&e.jsxDEV(m,{label:"Discovered Tools",value:`${a.length} tool${a.length!==1?"s":""}`},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:73,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:24,columnNumber:5},this)}function m({label:s,value:a,mono:i}){return e.jsxDEV("div",{children:[e.jsxDEV("label",{className:n,children:s},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:82,columnNumber:7},this),e.jsxDEV("p",{className:`text-xs text-text-primary mt-0.5 ${i?"font-mono":""}`,children:a},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:83,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/ReviewStep.tsx",lineNumber:81,columnNumber:5},this)}function be(){var y,T,w;const{serverId:s}=X(),a=!s,i=G(),{data:r,isLoading:o}=B(s??""),l=H(),c=O(),[t,p]=b.useState(_),[g,D]=b.useState(!1),[M,S]=b.useState(""),[I,E]=W(),d=parseInt(I.get("step")||"1",10),x=b.useCallback(u=>{E(v=>{const h=new URLSearchParams(v);return h.set("step",String(u)),h},{replace:!1})},[E]);b.useEffect(()=>{if(!g){if(a){p(_),D(!0);return}r&&(p(Z(r)),D(!0))}},[r,a,g]);const f=(u,v)=>p(h=>({...h,[u]:v})),L=!!((y=r==null?void 0:r.transport_config)!=null&&y.builtin),$=()=>{S("");const u=R(t);r?c.mutate({id:r.id,...u},{onSuccess:()=>i("/mcp/servers")}):l.mutate(u,{onSuccess:()=>i("/mcp/servers"),onError:v=>S(v.message)})};if(!a&&o)return e.jsxDEV("div",{className:"animate-pulse space-y-4",children:[e.jsxDEV("div",{className:"h-8 bg-surface-sunken rounded w-48"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:82,columnNumber:9},this),e.jsxDEV("div",{className:"h-60 bg-surface-sunken rounded"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:83,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:81,columnNumber:7},this);if(!a&&!r&&!o)return e.jsxDEV("p",{className:"text-sm text-text-secondary",children:"Server not found."},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:89,columnNumber:12},this);const A=d===P.length,j=l.isPending||c.isPending,V=M||((T=l.error)==null?void 0:T.message)||((w=c.error)==null?void 0:w.message);return e.jsxDEV("div",{children:[e.jsxDEV(U,{title:a?"Register MCP Server":(r==null?void 0:r.name)??""},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:98,columnNumber:7},this),e.jsxDEV("div",{className:"max-w-3xl",children:[e.jsxDEV(Q,{steps:P,currentStep:d-1,onStepClick:u=>x(u+1)},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:101,columnNumber:9},this),e.jsxDEV("div",{className:"min-h-[360px] py-2",children:[d===1&&e.jsxDEV(se,{form:t,set:f,isBuiltin:L},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:104,columnNumber:26},this),d===2&&e.jsxDEV(ae,{form:t,set:f},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:105,columnNumber:26},this),d===3&&e.jsxDEV(re,{form:t,set:f},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:106,columnNumber:26},this),d===4&&e.jsxDEV(le,{form:t},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:107,columnNumber:26},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:103,columnNumber:9},this),V&&e.jsxDEV("p",{className:"text-xs text-status-error mt-4",children:V},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:111,columnNumber:11},this),e.jsxDEV("div",{className:"flex justify-between items-center pt-4 border-t border-surface-border mt-4",children:[e.jsxDEV("div",{children:d>1&&e.jsxDEV("button",{onClick:()=>x(d-1),className:"btn-secondary text-xs",children:"Back"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:118,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:116,columnNumber:11},this),e.jsxDEV("div",{className:"flex gap-3",children:[e.jsxDEV("button",{onClick:()=>i("/mcp/servers"),className:"btn-ghost text-xs",children:"Cancel"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:124,columnNumber:13},this),A?e.jsxDEV("button",{onClick:$,disabled:!C(d,t)||j,className:"btn-primary text-xs",children:j?"Saving...":r?"Save":"Register"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:128,columnNumber:15},this):e.jsxDEV("button",{onClick:()=>x(d+1),disabled:!C(d,t),className:"btn-primary text-xs",children:"Next"},void 0,!1,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:136,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:123,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:115,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:100,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/mcp/servers/detail/McpServerDetailPage.tsx",lineNumber:97,columnNumber:5},this)}export{be as McpServerDetailPage};
2
- //# sourceMappingURL=index-DkbnD-Te.js.map
@@ -1,9 +0,0 @@
1
- import{j as e}from"./index-DgCS2Frb.js";import{a as u}from"./vendor-query-DLp59M9_.js";import{d as ee,h as J,u as se,i as re,b as oe}from"./workflows-BfyR5VJt.js";import{F as ae,b as te,a as ie}from"./FilterBar-DEAbNQqp.js";import{C as Q}from"./ConfirmDeleteModal-no0-c_1G.js";import{R as U}from"./RolePill-BAeaQUXX.js";import{W as le}from"./WorkflowPill-Cc2MlYbB.js";import{P as ne}from"./PageHeader-DcgGV0Y2.js";import{t as me,ab as q,ad as I,aj as ce,P as M,ak as fe,al as A,y as ue,U as F,X as z,i as B,V as H,W as O,C as de}from"./vendor-icons-CNyYGNsk.js";import{c as K,e as pe,f as ge}from"./vendor-react-zA2lQFDs.js";import{u as he}from"./roles-CpRcUIMm.js";import{B as we}from"./BotPicker-mqwKVOE3.js";import{N as Ne}from"./NamespacePill-eGsbJBFa.js";import"./Modal-C6HI6btY.js";import"./bots-DI6Wqp5X.js";function be({tier:s}){return s==="certified"?e.jsxDEV("span",{className:"inline-flex items-center gap-1 text-[10px] font-medium text-status-success",children:[e.jsxDEV(I,{className:"w-3 h-3"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:22,columnNumber:105},this),"Certified"]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:22,columnNumber:12},this):s==="registered"?e.jsxDEV("span",{className:"inline-flex items-center gap-1 text-[10px] font-medium text-text-secondary",children:[e.jsxDEV(ue,{className:"w-3 h-3"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:24,columnNumber:105},this),"Registered"]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:24,columnNumber:12},this):e.jsxDEV("span",{className:"inline-flex items-center gap-1 text-[10px] font-medium text-text-quaternary",children:[e.jsxDEV(q,{className:"w-3 h-3"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:25,columnNumber:104},this),"Durable"]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:25,columnNumber:10},this)}function Le(){const s=K(),{data:t,isLoading:f}=ee(),g=J(),[m,h]=u.useState(""),[i,b]=u.useState(null),[N,x]=u.useState(null),a=t??[],c=u.useMemo(()=>[...new Set(a.map(l=>l.task_queue).filter(Boolean))].sort(),[a]),n=u.useMemo(()=>{const l=m.toLowerCase().trim();return(i?[i]:c).map(w=>({queue:w,workflows:a.filter(C=>{var p;return C.task_queue===w&&(!l||C.workflow_type.toLowerCase().includes(l)||((p=C.description)==null?void 0:p.toLowerCase().includes(l)))})})).filter(w=>w.workflows.length>0)},[a,c,m,i]),d=u.useMemo(()=>{const l=m.toLowerCase().trim();return i?[]:a.filter(k=>{var w;return!k.task_queue&&(!l||k.workflow_type.toLowerCase().includes(l)||((w=k.description)==null?void 0:w.toLowerCase().includes(l)))})},[a,m,i]),o=l=>{l.registered?s(`/workflows/registry/${encodeURIComponent(l.workflow_type)}`):s(`/workflows/registry/new?workflow_type=${encodeURIComponent(l.workflow_type)}&task_queue=${encodeURIComponent(l.task_queue??"")}`)},P=()=>{N&&g.mutate(N,{onSuccess:()=>x(null)})};return e.jsxDEV("div",{children:[e.jsxDEV(ne,{title:"Registered Workflows",docsHash:"#docs:dashboard.md:workflow-registry",actions:e.jsxDEV("button",{onClick:()=>s("/workflows/registry/new"),className:"btn-primary text-xs",children:"Register Workflow"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:93,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:89,columnNumber:7},this),!f&&c.length>0&&e.jsxDEV(ae,{children:[e.jsxDEV(te,{label:"Queue",value:i??"",onChange:l=>b(l||null),options:c.map(l=>({value:l,label:l}))},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:102,columnNumber:11},this),e.jsxDEV(ie,{label:"Search",value:m,onChange:h,placeholder:`${a.length} workflows…`},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:108,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:101,columnNumber:9},this),f?e.jsxDEV(xe,{},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:119,columnNumber:9},this):n.length===0&&d.length===0?e.jsxDEV("p",{className:"text-sm text-text-tertiary mt-8",children:m||i?"No workflows match your filter.":"No workflows discovered yet."},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:121,columnNumber:9},this):e.jsxDEV("div",{className:"space-y-10",children:[n.map(({queue:l,workflows:k})=>e.jsxDEV("div",{children:[e.jsxDEV("div",{className:"sticky top-[60px] z-10 bg-surface flex items-center gap-2 py-2 mb-2 border-b border-surface-border",children:[e.jsxDEV(me,{className:"w-3 h-3 text-accent",strokeWidth:1.5},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:129,columnNumber:17},this),e.jsxDEV("h2",{className:"section-h2",children:l},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:130,columnNumber:17},this),e.jsxDEV("span",{className:"text-xs text-text-quaternary",children:k.length},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:131,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:128,columnNumber:15},this),e.jsxDEV(L,{},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:133,columnNumber:15},this),e.jsxDEV("div",{className:"divide-y divide-surface-border/30",children:k.map(w=>e.jsxDEV(T,{wf:w,onRowClick:o,onDelete:x,onNavigate:s},w.workflow_type,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:136,columnNumber:19},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:134,columnNumber:15},this)]},l,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:127,columnNumber:13},this)),d.length>0&&e.jsxDEV("div",{children:[e.jsxDEV("div",{className:"sticky top-[60px] z-10 bg-surface flex items-center gap-2 py-2 mb-2 border-b border-surface-border",children:[e.jsxDEV(q,{className:"w-3 h-3 text-text-quaternary",strokeWidth:1.5},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:151,columnNumber:17},this),e.jsxDEV("h2",{className:"section-h2",children:"No Queue"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:152,columnNumber:17},this),e.jsxDEV("span",{className:"text-xs text-text-quaternary",children:d.length},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:153,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:150,columnNumber:15},this),e.jsxDEV(L,{},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:155,columnNumber:15},this),e.jsxDEV("div",{className:"divide-y divide-surface-border/30",children:d.map(l=>e.jsxDEV(T,{wf:l,onRowClick:o,onDelete:x,onNavigate:s},l.workflow_type,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:158,columnNumber:19},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:156,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:149,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:125,columnNumber:9},this),e.jsxDEV(Q,{open:!!N,onClose:()=>x(null),onConfirm:P,title:"Unregister Workflow",description:e.jsxDEV(e.Fragment,{children:["Delete the registration for"," ",e.jsxDEV("span",{className:"font-mono font-medium text-text-primary",children:N},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:180,columnNumber:13},this),"? This removes its invocation settings, certification, and interceptor treatment; the workflow keeps running as a plain durable workflow. To demote certified → registered instead, open the workflow and uncheck Certify — that keeps every setting."]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:178,columnNumber:11},this),isPending:g.isPending,error:g.error},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:172,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:88,columnNumber:5},this)}const X="grid grid-cols-[minmax(0,1fr)_7rem_13rem_4.5rem] gap-x-6";function L(){return e.jsxDEV("div",{className:`${X} px-3 pb-2 pt-1`,children:[e.jsxDEV("span",{className:"text-[10px] font-medium text-text-quaternary",children:"Workflow"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:200,columnNumber:7},this),e.jsxDEV("span",{className:"text-[10px] font-medium text-text-quaternary",children:"Tier"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:201,columnNumber:7},this),e.jsxDEV("span",{className:"text-[10px] font-medium text-text-quaternary",children:"Access"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:202,columnNumber:7},this),e.jsxDEV("span",{},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:203,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:199,columnNumber:5},this)}function T({wf:s,onRowClick:t,onDelete:f,onNavigate:g}){const m=s.roles??[],h=s.invocation_roles??[];return e.jsxDEV("div",{role:"button",tabIndex:0,onClick:()=>t(s),onKeyDown:i=>{(i.key==="Enter"||i.key===" ")&&t(s)},className:`group ${X} py-2 px-3 -mx-3 rounded-md cursor-pointer transition-colors items-center`,children:[e.jsxDEV("div",{className:"flex items-center gap-3 min-w-0",children:[e.jsxDEV(le,{type:s.workflow_type,size:"md",variant:s.tier==="certified"?"certified":s.tier==="registered"?"registered":"durable"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:234,columnNumber:9},this),s.description&&e.jsxDEV("p",{className:"flex-1 min-w-0 truncate text-[10px] text-text-tertiary group-hover:text-text-secondary transition-colors",children:s.description},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:240,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:233,columnNumber:7},this),e.jsxDEV("div",{children:e.jsxDEV(be,{tier:s.tier??"durable"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:248,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:247,columnNumber:7},this),e.jsxDEV("div",{className:"flex items-center gap-1.5 min-w-0 overflow-hidden whitespace-nowrap",children:[m.length>0&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("span",{title:"Escalation roles",children:e.jsxDEV(I,{className:"w-3 h-3 text-text-quaternary shrink-0"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:255,columnNumber:44},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:255,columnNumber:13},this),m.map(i=>e.jsxDEV(U,{role:i},`e-${i}`,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:256,columnNumber:34},this))]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:254,columnNumber:11},this),h.length>0&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("span",{title:"Invocation roles",children:e.jsxDEV(ce,{className:"w-3 h-3 text-text-quaternary shrink-0"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:261,columnNumber:44},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:261,columnNumber:13},this),h.map(i=>e.jsxDEV(U,{role:i},`i-${i}`,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:262,columnNumber:37},this))]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:260,columnNumber:11},this),m.length===0&&h.length===0&&e.jsxDEV("span",{className:"text-xs text-text-quaternary",children:"—"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:266,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:252,columnNumber:7},this),e.jsxDEV("div",{className:"flex items-center justify-end gap-2.5 opacity-0 group-hover:opacity-100 transition-opacity",children:[s.invocable&&e.jsxDEV("button",{title:"Invoke workflow",onClick:i=>{i.stopPropagation(),g(`/workflows/start?type=${encodeURIComponent(s.workflow_type)}&mode=now`)},className:"text-text-quaternary hover:text-status-success transition-colors",children:e.jsxDEV(M,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:278,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:273,columnNumber:11},this),s.tier==="durable"&&e.jsxDEV("button",{title:"Configure workflow",onClick:i=>{i.stopPropagation(),g(`/workflows/registry/new?workflow_type=${encodeURIComponent(s.workflow_type)}&task_queue=${encodeURIComponent(s.task_queue??"")}`)},className:"text-text-quaternary hover:text-status-info transition-colors",children:e.jsxDEV(q,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:287,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:282,columnNumber:11},this),s.tier==="registered"&&e.jsxDEV("button",{title:"Certify workflow",onClick:i=>{i.stopPropagation(),g(`/workflows/registry/${encodeURIComponent(s.workflow_type)}`)},className:"text-text-quaternary hover:text-status-success transition-colors",children:e.jsxDEV(fe,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:296,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:291,columnNumber:11},this),s.registered&&e.jsxDEV("button",{title:"Unregister workflow",onClick:i=>{i.stopPropagation(),f(s.workflow_type)},className:"text-text-quaternary hover:text-status-warning transition-colors",children:e.jsxDEV(A,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:305,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:300,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:271,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:225,columnNumber:5},this)}function xe(){return e.jsxDEV("div",{className:"animate-pulse space-y-8 mt-4",children:[1,2].map(s=>e.jsxDEV("div",{children:[e.jsxDEV("div",{className:"h-4 bg-surface-sunken rounded w-36 mb-4"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:320,columnNumber:11},this),e.jsxDEV("div",{className:"space-y-4",children:[1,2,3].map(t=>e.jsxDEV("div",{className:"space-y-1.5",children:[e.jsxDEV("div",{className:"h-3 bg-surface-sunken rounded w-48"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:324,columnNumber:17},this),e.jsxDEV("div",{className:"h-3 bg-surface-sunken rounded w-full"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:325,columnNumber:17},this)]},t,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:323,columnNumber:15},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:321,columnNumber:11},this)]},s,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:319,columnNumber:9},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigsPage.tsx",lineNumber:317,columnNumber:5},this)}function V({selected:s,onChange:t,single:f,placeholder:g}){const{data:m}=he(),h=(m==null?void 0:m.roles)??[],[i,b]=u.useState(!1),N=u.useRef(null);u.useEffect(()=>{const n=d=>{N.current&&!N.current.contains(d.target)&&b(!1)};return document.addEventListener("mousedown",n),()=>document.removeEventListener("mousedown",n)},[]);const x=n=>{f?(t(s.includes(n)?[]:[n]),b(!1)):t(s.includes(n)?s.filter(d=>d!==n):[...s,n])},a=n=>{t(s.filter(d=>d!==n))},c=g??(f?"Select role...":"Add roles...");return e.jsxDEV("div",{ref:N,className:"relative",children:[e.jsxDEV("button",{type:"button",onClick:()=>b(!i),className:"flex flex-wrap items-center gap-1.5 w-full min-h-[34px] px-2 py-1.5 bg-surface-sunken border border-surface-border rounded-md text-left cursor-pointer hover:border-accent/40 transition-colors focus:ring-1 focus:ring-accent focus:outline-none",children:[s.length===0&&e.jsxDEV("span",{className:"text-xs text-text-tertiary",children:c},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:55,columnNumber:11},this),s.map(n=>e.jsxDEV("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-lg bg-accent/[0.08] text-text-secondary text-[11px]",children:[e.jsxDEV(F,{className:"w-2.5 h-2.5 shrink-0 text-accent/75"},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:62,columnNumber:13},this),n,e.jsxDEV("span",{role:"button",onClick:d=>{d.stopPropagation(),a(n)},className:"ml-0.5 hover:text-status-error transition-colors",children:e.jsxDEV(z,{className:"w-2.5 h-2.5"},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:69,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:64,columnNumber:13},this)]},n,!0,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:58,columnNumber:11},this)),e.jsxDEV(B,{className:`w-3.5 h-3.5 ml-auto shrink-0 text-text-tertiary transition-transform ${i?"rotate-180":""}`},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:73,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:49,columnNumber:7},this),i&&e.jsxDEV("div",{className:"absolute z-20 mt-1 w-full bg-white border border-surface-border rounded-md shadow-lg max-h-48 overflow-y-auto",children:h.length===0?e.jsxDEV("p",{className:"px-3 py-2 text-xs text-text-tertiary",children:"No roles defined"},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:80,columnNumber:13},this):h.map(n=>{const d=s.includes(n);return e.jsxDEV("button",{type:"button",onClick:()=>x(n),className:`flex items-center gap-2 w-full px-3 py-1.5 text-left text-xs transition-colors ${d?"bg-accent/[0.06] text-accent":"text-text-primary hover:bg-surface-sunken"}`,children:[e.jsxDEV(F,{className:"w-3 h-3 shrink-0 text-accent/60"},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:95,columnNumber:19},this),e.jsxDEV("span",{className:"flex-1",children:n},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:96,columnNumber:19},this),d&&e.jsxDEV(H,{className:"w-3 h-3 shrink-0"},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:97,columnNumber:34},this)]},n,!0,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:85,columnNumber:17},this)})},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:78,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/common/form/RolePicker.tsx",lineNumber:47,columnNumber:5},this)}function ke({options:s,selected:t,onChange:f,placeholder:g}){const[m,h]=u.useState(!1),i=u.useRef(null);u.useEffect(()=>{const a=c=>{i.current&&!i.current.contains(c.target)&&h(!1)};return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[]);const b=a=>{f(t.includes(a)?t.filter(c=>c!==a):[...t,a])},N=a=>{f(t.filter(c=>c!==a))},x=g??"Add workflows...";return e.jsxDEV("div",{ref:i,className:"relative",children:[e.jsxDEV("button",{type:"button",onClick:()=>h(!m),className:"flex flex-wrap items-center gap-1.5 w-full min-h-[34px] px-2 py-1.5 bg-surface-sunken border border-surface-border rounded-md text-left cursor-pointer hover:border-accent/40 transition-colors focus:ring-1 focus:ring-accent focus:outline-none",children:[t.length===0&&e.jsxDEV("span",{className:"text-xs text-text-tertiary",children:x},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:45,columnNumber:11},this),t.map(a=>e.jsxDEV("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-lg bg-accent/[0.08] text-text-secondary text-[11px] font-mono",children:[e.jsxDEV(O,{className:"w-2.5 h-2.5 shrink-0 text-accent/75"},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:52,columnNumber:13},this),a,e.jsxDEV("span",{role:"button",onClick:c=>{c.stopPropagation(),N(a)},className:"ml-0.5 hover:text-status-error transition-colors",children:e.jsxDEV(z,{className:"w-2.5 h-2.5"},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:59,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:54,columnNumber:13},this)]},a,!0,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:48,columnNumber:11},this)),e.jsxDEV(B,{className:`w-3.5 h-3.5 ml-auto shrink-0 text-text-tertiary transition-transform ${m?"rotate-180":""}`},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:63,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:39,columnNumber:7},this),m&&e.jsxDEV("div",{className:"absolute z-20 mt-1 w-full bg-white border border-surface-border rounded-md shadow-lg max-h-48 overflow-y-auto",children:s.length===0?e.jsxDEV("p",{className:"px-3 py-2 text-xs text-text-tertiary",children:"No registered workflows"},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:69,columnNumber:13},this):s.map(a=>{const c=t.includes(a);return e.jsxDEV("button",{type:"button",onClick:()=>b(a),className:`flex items-center gap-2 w-full px-3 py-1.5 text-left text-xs font-mono transition-colors ${c?"bg-accent/[0.06] text-accent":"text-text-primary hover:bg-surface-sunken"}`,children:[e.jsxDEV(O,{className:"w-3 h-3 shrink-0 text-accent/60"},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:84,columnNumber:19},this),e.jsxDEV("span",{className:"flex-1",children:a},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:85,columnNumber:19},this),c&&e.jsxDEV(H,{className:"w-3 h-3 shrink-0"},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:86,columnNumber:34},this)]},a,!0,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:74,columnNumber:17},this)})},void 0,!1,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:67,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/common/form/WorkflowPicker.tsx",lineNumber:38,columnNumber:5},this)}function j(s){return s.split(",").map(t=>t.trim()).filter(Boolean)}const _={workflow_type:"",description:"",task_queue:"",default_role:"reviewer",invocable:!1,roles:"",invocation_roles:"",consumes:"",envelope_schema:"",resolver_schema:"",cron_schedule:"",execute_as:"",certified:!1};function ve(s){const t=(s.roles??[]).join(", "),f=(s.consumes??[]).join(", ");return{workflow_type:s.workflow_type,description:s.description??"",task_queue:s.task_queue??"",default_role:s.default_role,invocable:s.invocable,roles:t,invocation_roles:(s.invocation_roles??[]).join(", "),consumes:f,envelope_schema:s.envelope_schema?JSON.stringify(s.envelope_schema,null,2):"",resolver_schema:s.resolver_schema?JSON.stringify(s.resolver_schema,null,2):"",cron_schedule:s.cron_schedule??"",execute_as:s.execute_as??"",certified:s.certified}}function E(s){if(!s.trim())return!0;try{return JSON.parse(s),!0}catch{return!1}}function S({icon:s,color:t,children:f}){return e.jsxDEV("div",{className:"flex items-center gap-2 mb-4 pb-2 border-b border-surface-border",children:[e.jsxDEV(s,{className:`w-4 h-4 ${t}`,strokeWidth:1.5},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:21,columnNumber:7},this),e.jsxDEV("h2",{className:"section-h2",children:f},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:22,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:20,columnNumber:5},this)}function v({label:s,hint:t,children:f}){return e.jsxDEV("div",{className:"space-y-1.5",children:[e.jsxDEV("label",{className:"label",children:s},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:30,columnNumber:7},this),f,t&&e.jsxDEV("p",{className:"hint",children:t},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:32,columnNumber:16},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:29,columnNumber:5},this)}const $="input-json w-full";function W(s){return j(s)}function R(s){return s.join(", ")}const ye=new Set(["mcpQuery","mcpDeterministic","mcpQueryRouter","mcpTriage","mcpTriageRouter","mcpTriageDeterministic","insightQuery"]);function Te(){const{workflowType:s}=pe(),t=!s,f=K(),[g]=ge(),{data:m,isLoading:h}=se(),i=re(),b=J(),[N,x]=u.useState(!1),a=(m==null?void 0:m.find(r=>r.workflow_type===s))??null,{data:c}=oe({limit:500}),n=u.useMemo(()=>{const r=new Set((m??[]).map(D=>D.workflow_type));return[...new Set(((c==null?void 0:c.jobs)??[]).map(D=>D.entity))].filter(D=>!r.has(D)&&!ye.has(D)).sort()},[m,c]),d=u.useMemo(()=>{if(!t)return _;const r=g.get("workflow_type")??"",y=g.get("task_queue")??"";return r||y?{..._,workflow_type:r,task_queue:y}:_},[t,g]),[o,P]=u.useState(d),[l,k]=u.useState(""),[w,C]=u.useState(!1),p=u.useCallback((r,y)=>P(D=>({...D,[r]:y})),[]);u.useEffect(()=>{if(!w){if(t){P(d),C(!0);return}a&&(P(ve(a)),C(!0))}},[a,t,w,d]);const Y=()=>{if(!o.workflow_type.trim())return;k("");let r=null,y=null;try{o.envelope_schema.trim()&&(r=JSON.parse(o.envelope_schema))}catch{k("Invalid JSON in Envelope Schema");return}try{o.resolver_schema.trim()&&(y=JSON.parse(o.resolver_schema))}catch{k("Invalid JSON in Resolver Schema");return}i.mutate({workflow_type:o.workflow_type.trim(),description:o.description.trim()||null,task_queue:o.task_queue.trim()||null,default_role:o.default_role.trim()||"reviewer",invocable:o.invocable,certified:o.certified,roles:j(o.roles),invocation_roles:j(o.invocation_roles),consumes:j(o.consumes),envelope_schema:r,resolver_schema:y,cron_schedule:o.cron_schedule.trim()||null,execute_as:o.execute_as.trim()||null},{onSuccess:()=>f("/workflows/registry")})};if(h)return e.jsxDEV("div",{className:"animate-pulse space-y-4",children:[e.jsxDEV("div",{className:"h-8 bg-surface-sunken rounded w-64"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:131,columnNumber:9},this),e.jsxDEV("div",{className:"h-40 bg-surface-sunken rounded"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:132,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:130,columnNumber:7},this);if(!t&&!a)return e.jsxDEV("p",{className:"text-sm text-text-secondary",children:"Config not found."},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:137,columnNumber:12},this);const G=!!o.workflow_type.trim()&&E(o.envelope_schema)&&E(o.resolver_schema),Z=t&&!o.workflow_type&&n.length>0;return e.jsxDEV("div",{children:[e.jsxDEV("div",{className:"flex items-start justify-between mb-8",children:[e.jsxDEV("div",{children:[e.jsxDEV("h1",{className:"text-3xl font-light font-mono text-text-primary",children:t?"New Workflow":(a==null?void 0:a.workflow_type)??""},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:148,columnNumber:11},this),a&&e.jsxDEV("div",{className:"flex items-center gap-2 mt-2",children:e.jsxDEV(Ne,{namespace:"durable"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:153,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:152,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:147,columnNumber:9},this),e.jsxDEV("div",{className:"flex items-center gap-3 mt-1",children:[e.jsxDEV("button",{onClick:()=>f("/workflows/registry"),className:"btn-ghost text-xs",children:"Cancel"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:158,columnNumber:11},this),e.jsxDEV("button",{onClick:Y,disabled:!G||i.isPending,className:"btn-primary text-xs",children:i.isPending?"Saving…":t?"Register":"Save"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:161,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:157,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:146,columnNumber:7},this),e.jsxDEV("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-x-14 gap-y-10",children:[e.jsxDEV("div",{children:[e.jsxDEV(S,{icon:de,color:"text-accent",children:"Identity"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:176,columnNumber:11},this),e.jsxDEV("div",{className:"space-y-5",children:[e.jsxDEV(v,{label:"Workflow Type",hint:"Register a workflow to configure invocation and HITL escalation routing.",children:Z?e.jsxDEV("div",{className:"space-y-2",children:[e.jsxDEV("p",{className:"text-xs text-text-secondary",children:"Select a durable workflow to register:"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:184,columnNumber:19},this),e.jsxDEV("div",{className:"grid gap-1",children:n.map(r=>e.jsxDEV("button",{onClick:()=>p("workflow_type",r),className:"flex items-center gap-2 px-3 py-2 text-left text-xs font-mono rounded-md border border-surface-border hover:border-accent/50 hover:bg-accent/[0.04] transition-colors",children:r},r,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:187,columnNumber:23},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:185,columnNumber:19},this),e.jsxDEV("div",{className:"flex items-center gap-2 pt-1",children:[e.jsxDEV("span",{className:"text-[10px] text-text-tertiary",children:"or"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:197,columnNumber:21},this),e.jsxDEV("input",{type:"text",onChange:r=>p("workflow_type",r.target.value),placeholder:"Enter type manually",className:"input font-mono flex-1"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:198,columnNumber:21},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:196,columnNumber:19},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:183,columnNumber:17},this):e.jsxDEV(e.Fragment,{children:[e.jsxDEV("input",{type:"text",value:o.workflow_type,onChange:r=>p("workflow_type",r.target.value),disabled:!t,placeholder:"reviewContent",className:"input font-mono w-full"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:208,columnNumber:19},this),t&&o.workflow_type&&n.length>0&&e.jsxDEV("button",{onClick:()=>p("workflow_type",""),className:"text-[10px] text-accent hover:underline mt-1",children:"Choose from durable workflows"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:217,columnNumber:21},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:207,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:178,columnNumber:13},this),e.jsxDEV(v,{label:"Description",children:e.jsxDEV("input",{type:"text",value:o.description,onChange:r=>p("description",r.target.value),placeholder:"Describe what this workflow does",className:"input text-xs w-full"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:229,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:228,columnNumber:13},this),e.jsxDEV(v,{label:"Task Queue",hint:"Durable task queue this workflow listens on.",children:e.jsxDEV("input",{type:"text",value:o.task_queue,onChange:r=>p("task_queue",r.target.value),placeholder:"lt-review",className:"input font-mono w-full"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:239,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:238,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:177,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:175,columnNumber:9},this),e.jsxDEV("div",{children:[e.jsxDEV(S,{icon:M,color:"text-accent",children:"Invocation"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:252,columnNumber:11},this),e.jsxDEV("div",{className:"space-y-5",children:[e.jsxDEV("div",{className:"space-y-1",children:[e.jsxDEV("label",{className:"flex items-center gap-2 cursor-pointer",children:[e.jsxDEV("input",{type:"checkbox",checked:o.invocable,onChange:r=>p("invocable",r.target.checked),className:"w-4 h-4 rounded border-border accent-accent"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:256,columnNumber:17},this),e.jsxDEV("span",{className:"text-xs text-text-primary font-medium",children:"Invocable"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:262,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:255,columnNumber:15},this),e.jsxDEV("p",{className:"hint",children:"Allow this workflow to be started from the dashboard or API."},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:264,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:254,columnNumber:13},this),o.invocable?e.jsxDEV(e.Fragment,{children:[e.jsxDEV(v,{label:"Run As",hint:"Bot identity to run under. Default runs as the invoking user.",children:e.jsxDEV(we,{selected:o.execute_as,onChange:r=>p("execute_as",r)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:270,columnNumber:19},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:269,columnNumber:17},this),e.jsxDEV(v,{label:"Invocation Roles",hint:"Only users with these roles can start this workflow. Empty = all authenticated users.",children:e.jsxDEV(V,{selected:W(o.invocation_roles),onChange:r=>p("invocation_roles",R(r)),placeholder:"Select roles…"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:274,columnNumber:19},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:273,columnNumber:17},this),e.jsxDEV(v,{label:"Envelope Schema",hint:e.jsxDEV(e.Fragment,{children:["Pre-fills the JSON editor when invoking. Include ",e.jsxDEV("code",{className:"font-mono",children:"data"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:281,columnNumber:105},this)," (input) and optional ",e.jsxDEV("code",{className:"font-mono",children:"metadata"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:281,columnNumber:166},this),"."]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:281,columnNumber:54},this),children:[e.jsxDEV("textarea",{value:o.envelope_schema,onChange:r=>p("envelope_schema",r.target.value),placeholder:`{
2
- "data": {},
3
- "metadata": {}
4
- }`,className:$,rows:8,spellCheck:!1},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:282,columnNumber:19},this),o.envelope_schema.trim()&&!E(o.envelope_schema)&&e.jsxDEV("p",{className:"text-[10px] text-status-error mt-1",children:"Invalid JSON"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:291,columnNumber:21},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:281,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:268,columnNumber:15},this):e.jsxDEV("p",{className:"text-[11px] text-text-tertiary py-2",children:["Enable ",e.jsxDEV("span",{className:"font-medium text-text-secondary",children:"Invocable"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:297,columnNumber:24},this)," to configure invocation roles and an input template."]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:296,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:253,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:251,columnNumber:9},this),e.jsxDEV("div",{children:[e.jsxDEV(S,{icon:I,color:"text-accent",children:"Certification"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:305,columnNumber:11},this),e.jsxDEV("div",{className:"space-y-5",children:[e.jsxDEV(v,{label:"Resolver Schema",hint:e.jsxDEV(e.Fragment,{children:["Default form for resolving escalations. Use ",e.jsxDEV("code",{className:"font-mono",children:"properties"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:309,columnNumber:67},this)," with ",e.jsxDEV("code",{className:"font-mono",children:"type"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:309,columnNumber:118},this),", ",e.jsxDEV("code",{className:"font-mono",children:"default"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:309,columnNumber:159},this),", ",e.jsxDEV("code",{className:"font-mono",children:"description"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:309,columnNumber:203},this),"."]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:309,columnNumber:21},this),children:[e.jsxDEV("textarea",{value:o.resolver_schema,onChange:r=>p("resolver_schema",r.target.value),placeholder:`{
5
- "properties": {
6
- "approved": { "type": "boolean", "default": false }
7
- }
8
- }`,className:$,rows:6,spellCheck:!1},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:311,columnNumber:15},this),o.resolver_schema.trim()&&!E(o.resolver_schema)&&e.jsxDEV("p",{className:"text-[10px] text-status-error mt-1",children:"Invalid JSON"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:320,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:307,columnNumber:13},this),e.jsxDEV("div",{className:"space-y-1",children:[e.jsxDEV("label",{className:"flex items-center gap-2 cursor-pointer",children:[e.jsxDEV("input",{type:"checkbox",checked:o.certified,onChange:r=>p("certified",r.target.checked),className:"w-4 h-4 rounded border-border accent-accent"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:326,columnNumber:17},this),e.jsxDEV("span",{className:"text-xs text-text-primary font-medium",children:"Certify for HITL Escalation"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:332,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:325,columnNumber:15},this),e.jsxDEV("p",{className:"hint",children:"Certified workflows use the interceptor — failures escalate to human reviewers. Unchecking demotes this workflow to registered on save; escalation roles and dependencies below are kept."},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:334,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:324,columnNumber:13},this),o.certified?e.jsxDEV(e.Fragment,{children:[e.jsxDEV(v,{label:"Default Escalation Role",hint:"The role surface interceptor-raised escalations target.",children:e.jsxDEV(V,{selected:W(o.default_role),onChange:r=>p("default_role",r[0]??""),single:!0,placeholder:"Select role…"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:344,columnNumber:19},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:343,columnNumber:17},this),e.jsxDEV(v,{label:"Escalation Roles",hint:"Interceptor default for who can claim and resolve. Escalations raised in workflow code choose their own role, whose versioned schema takes precedence.",children:e.jsxDEV(V,{selected:W(o.roles),onChange:r=>p("roles",R(r)),placeholder:"Select roles…"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:356,columnNumber:19},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:352,columnNumber:17},this),e.jsxDEV(v,{label:"Consumes",hint:"Upstream workflows whose output is injected into this workflow's envelope.",children:e.jsxDEV(ke,{options:(m??[]).map(r=>r.workflow_type).filter(r=>r!==o.workflow_type),selected:W(o.consumes),onChange:r=>p("consumes",R(r)),placeholder:"Select dependencies…"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:364,columnNumber:19},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:363,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:342,columnNumber:15},this):e.jsxDEV("p",{className:"text-[11px] text-text-tertiary py-2",children:["Enable ",e.jsxDEV("span",{className:"font-medium text-text-secondary",children:"Certify"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:376,columnNumber:24},this)," to add automatic escalation routing and role-based resolution."]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:375,columnNumber:15},this),a&&e.jsxDEV("div",{className:"pt-4 border-t border-surface-border/50",children:e.jsxDEV("button",{onClick:()=>x(!0),className:"flex items-center gap-1.5 text-[11px] text-status-warning hover:underline",title:"Delete this registration — the workflow returns to plain durable",children:[e.jsxDEV(A,{className:"w-3 h-3"},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:387,columnNumber:19},this)," Unregister workflow"]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:382,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:381,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:306,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:304,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:172,columnNumber:7},this),(l||i.error)&&e.jsxDEV("p",{className:"text-xs text-status-error mt-8",children:l||i.error.message},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:396,columnNumber:9},this),e.jsxDEV(Q,{open:N,onClose:()=>x(!1),onConfirm:()=>b.mutate(a.workflow_type,{onSuccess:()=>f("/workflows/registry")}),title:"Unregister Workflow",description:e.jsxDEV(e.Fragment,{children:["Delete the registration for"," ",e.jsxDEV("span",{className:"font-mono font-medium text-text-primary",children:a==null?void 0:a.workflow_type},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:413,columnNumber:13},this),"? This removes its invocation settings, certification, and interceptor treatment; the workflow keeps running as a plain durable workflow. Escalation schemas versioned on roles are untouched."]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:411,columnNumber:11},this),isPending:b.isPending,error:b.error},void 0,!1,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:401,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/workflows/registry/WorkflowConfigDetailPage.tsx",lineNumber:144,columnNumber:5},this)}export{Te as WorkflowConfigDetailPage,Le as WorkflowConfigsPage};
9
- //# sourceMappingURL=index-Y6yj36QR.js.map
@@ -1,6 +0,0 @@
1
- import{A as pe,j as e,w as ve,b as z,C as na,J as oe,k as ca,B as da,g as ma,h as ua,E as pa,G as xa,u as ba}from"./index-DgCS2Frb.js";import{a as N,b as Na}from"./vendor-query-DLp59M9_.js";import{u as ha}from"./useCollapsedSections-CGNA5oKV.js";import{u as fa,C as ga,a as va}from"./CustomDurationPicker-DV42oZ1G.js";import{a as Ea,b as Da,c as ja}from"./roles-CpRcUIMm.js";import{P as Va}from"./PageHeader-DcgGV0Y2.js";import{a as Je,C as fe,i as ya}from"./escalation-D8mrXtjS.js";import{L as wa}from"./ListToolbar-Dviaskni.js";import{u as Ca}from"./workflows-BfyR5VJt.js";import{g as Ra}from"./useEventHooks-CUUeBSH1.js";import{U as ge}from"./UserName-R96NG6xB.js";import{S as Ae}from"./StatusBadge-mk-dJwPT.js";import{R as He}from"./RolePill-BAeaQUXX.js";import{C as S}from"./CopyableId-DS6IDMIX.js";import{U as $e,a9 as ka,a7 as Sa,aa as Be}from"./vendor-icons-CNyYGNsk.js";import{C as re}from"./CollapsibleSection-Bn6Ks79X.js";import{L as ze,e as _a,c as Ta}from"./vendor-react-zA2lQFDs.js";import"./Modal-C6HI6btY.js";import"./constants-BHkpVaqx.js";import"./users-BUgdEsec.js";const We="lt_view_mode";function Fa(a){const[o,r]=N.useState(()=>{try{const t=localStorage.getItem(We);if(t!==null)return t==="dev"}catch{}return a}),s=N.useCallback(()=>{r(t=>{const l=!t;try{localStorage.setItem(We,l?"dev":"user")}catch{}return l})},[]);return{isDevMode:o,toggleMode:s}}const xe=4;function Me({pct:a,place:o,label:r,title:s,emphasis:t}){const l=e.jsxDEV("span",{className:"w-px h-1.5 bg-surface-border","aria-hidden":!0},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:15,columnNumber:16},this),m=e.jsxDEV("span",{className:`whitespace-nowrap leading-none ${t?"text-text-secondary":"text-text-tertiary"}`,children:r},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:17,columnNumber:5},this);return e.jsxDEV("div",{title:s,className:`absolute ${o==="above"?"bottom-0":"top-0"} flex flex-col items-center gap-0.5 -translate-x-1/2 cursor-help`,style:{left:`${a}%`},children:o==="above"?e.jsxDEV(e.Fragment,{children:[m,l]},void 0,!0,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:28,columnNumber:28},this):e.jsxDEV(e.Fragment,{children:[l,m]},void 0,!0,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:28,columnNumber:48},this)},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:22,columnNumber:5},this)}function Aa({esc:a,className:o=""}){const r=new Date(a.created_at).getTime(),s=a.claimed_at?new Date(a.claimed_at).getTime():null,t=a.status==="resolved",l=a.status==="cancelled",m=t||l,d=Je(a),i=!!s&&(d||m),n=t&&a.resolved_at?new Date(a.resolved_at).getTime():l?new Date(a.updated_at).getTime():Date.now(),c=Math.max(n-r,1),p=i&&s?Math.max(s-r,0):c,b=i&&s?Math.max(n-s,0):0,g=Math.min(100,Math.max(0,p/c*100)),u=i?Math.max(0,100-g):0,f=t?"bg-status-success":l?"bg-status-error":"bg-status-active",h=t?"Worked":l?"Open before cancel":"In progress",x=pe(p),y=pe(c),w=t?`Resolved in ${y} total`:l?`Cancelled after ${y}`:`Open ${y} so far (current age)`,_=`Lifecycle: amber = time spent waiting to be claimed, the colored end = ${h.toLowerCase()} after the claim. Top label is time-to-claim, bottom is total time.`;return e.jsxDEV("div",{className:o,title:_,children:[e.jsxDEV("div",{className:"relative h-3.5 text-[9px] font-mono",children:i&&e.jsxDEV(Me,{pct:g,place:"above",label:x,title:`Time to claim: ${x} (created → claimed)`},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:79,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:77,columnNumber:7},this),e.jsxDEV("div",{className:"flex w-full rounded-full overflow-hidden bg-surface-sunken cursor-help",style:{height:xe},title:_,children:[e.jsxDEV("div",{style:{width:`${g}%`,minWidth:xe},className:"bg-status-pending",title:`Waiting ${x} — created → claimed`},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:84,columnNumber:9},this),i&&e.jsxDEV("div",{style:{width:`${u}%`,minWidth:xe},className:f,title:`${h} ${pe(b)} — claimed → ${t?"resolved":l?"cancelled":"now"}`},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:90,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:83,columnNumber:7},this),e.jsxDEV("div",{className:"relative h-3.5 text-[9px] font-mono",children:e.jsxDEV(Me,{pct:100,place:"below",emphasis:!0,label:y,title:w},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:100,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:99,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/common/display/EscalationTimeline.tsx",lineNumber:75,columnNumber:5},this)}function Ha(a){const{mode:o,activeView:r,onActiveViewChange:s,onClaim:t,claimPending:l,workflowType:m,json:d,onResolve:i,resolvePending:n,resolveError:c,requestTriage:p,triageNotes:b,currentRole:g,escalationTargets:u,onEscalate:f,escalatePending:h,escalateError:x,onRelease:y,releasePending:w,onCancel:_,assignedTo:F,assignedUntil:A,onSubmitAttempt:C}=a,R=fa(),[v,j]=N.useState("30"),[D,T]=N.useState(0),[B,H]=N.useState(""),[W,M]=N.useState(""),P=v==="custom",U=N.useCallback(E=>T(E),[]);if(o==="terminal")return null;const ne=()=>{const E=P?D:parseInt(v);!E||E<=0||t(E)},ce=()=>{if(H(""),p){const X={_lt:{needsTriage:!0}};b.trim()&&(X.notes=b.trim()),i(X);return}let E;try{E=JSON.parse(d)}catch{H("Invalid JSON");return}const J=E._form_schema,I=J==null?void 0:J.required;if(I!=null&&I.length){const X=I.filter($=>{const L=E[$];return L==null||typeof L=="string"&&L.trim()===""});if(X.length>0){C==null||C();const $=X.map(ee=>ee.replace(/[_-]/g," ")),L=$.length<=2?$.join(", "):`${$.slice(0,2).join(", ")}...`;H(`Required: ${L}`);return}}i(E)},G=E=>`text-xs transition-colors ${E?"text-accent font-medium":"text-text-tertiary hover:text-accent"}`;return e.jsxDEV("div",{className:"sticky bottom-0 h-[80px] bg-surface/95 backdrop-blur-sm border-t border-surface-border -mx-10 px-10 pt-3 pb-5 z-10","data-testid":"escalation-action-bar",children:[o==="available"&&e.jsxDEV("div",{"data-testid":"claim-bar",children:[e.jsxDEV("div",{className:"flex items-center gap-4 mb-2",children:[R.map(E=>e.jsxDEV("button",{onClick:()=>{j(E.value),T(0)},className:G(!P&&v===E.value),children:E.label},E.value,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:148,columnNumber:17},this)),e.jsxDEV("button",{onClick:()=>j("custom"),className:G(P),children:"Other"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:156,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:146,columnNumber:13},this),e.jsxDEV("div",{className:"flex items-center gap-3",children:[e.jsxDEV("button",{onClick:_,className:"text-xs text-text-tertiary hover:text-status-error transition-colors",children:"Cancel escalation"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:165,columnNumber:15},this),e.jsxDEV("div",{className:"flex-1"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:171,columnNumber:15},this),P&&e.jsxDEV(ga,{onChange:U,compact:!0,autoFocus:!0},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:173,columnNumber:17},this),e.jsxDEV("button",{onClick:ne,disabled:l||P&&D<=0,className:"btn-primary text-xs",children:l?"Claiming...":"Claim"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:175,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:164,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:144,columnNumber:11},this),o==="claimed_by_other"&&e.jsxDEV("div",{className:"flex items-center gap-4","data-testid":"claimed-other-bar",children:[e.jsxDEV("p",{className:"text-sm text-text-secondary",children:["Claimed by ",e.jsxDEV("span",{className:"font-medium text-text-primary",children:F?e.jsxDEV(ge,{userId:F},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:190,columnNumber:88},this):"unknown"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:190,columnNumber:26},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:189,columnNumber:13},this),A&&e.jsxDEV(fe,{until:A},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:192,columnNumber:31},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:188,columnNumber:11},this),o==="claimed_by_me"&&e.jsxDEV("div",{"data-testid":"action-bar",children:[e.jsxDEV("div",{className:"flex items-center gap-4 mb-2",children:[e.jsxDEV("button",{onClick:()=>s("resolve"),className:G(r==="resolve"),children:m?"Resolve":"Acknowledge"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:201,columnNumber:15},this),u.length>0&&e.jsxDEV("button",{onClick:()=>s("escalate"),className:G(r==="escalate"),children:"Escalate"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:208,columnNumber:17},this),e.jsxDEV("button",{onClick:()=>s("release"),className:`text-xs transition-colors ${r==="release"?"text-status-error font-medium":"text-text-tertiary hover:text-status-error"}`,children:"Release"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:215,columnNumber:15},this),e.jsxDEV("button",{onClick:_,className:"text-xs transition-colors text-text-tertiary hover:text-status-error",children:"Cancel"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:221,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:200,columnNumber:13},this),r==="resolve"&&(m?e.jsxDEV("div",{className:"flex items-center gap-4",children:[e.jsxDEV("div",{className:"flex-1"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:233,columnNumber:19},this),B&&e.jsxDEV("span",{className:"text-xs text-status-error",children:B},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:235,columnNumber:34},this),c&&e.jsxDEV("span",{className:"text-xs text-status-error",children:c.message},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:236,columnNumber:36},this),e.jsxDEV("button",{onClick:ce,disabled:n,className:"btn-primary text-xs",children:n?"Submitting...":p?"Send to Triage":"Submit"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:238,columnNumber:19},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:232,columnNumber:17},this):e.jsxDEV("div",{className:"flex items-center",children:[e.jsxDEV("span",{className:"text-xs text-text-secondary",children:"Notification — acknowledge to resolve"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:248,columnNumber:19},this),e.jsxDEV("div",{className:"flex-1"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:249,columnNumber:19},this),c&&e.jsxDEV("span",{className:"text-xs text-status-error mr-3",children:c.message},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:250,columnNumber:36},this),e.jsxDEV("button",{onClick:()=>i({acknowledged:!0}),disabled:n,className:"btn-primary text-xs",children:n?"Acknowledging...":"Acknowledge"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:251,columnNumber:19},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:247,columnNumber:17},this)),r==="escalate"&&e.jsxDEV("div",{className:"flex items-center gap-3",children:[e.jsxDEV("span",{className:"text-xs text-text-secondary",children:["From ",e.jsxDEV("span",{className:"font-medium text-text-primary",children:g},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:266,columnNumber:24},this)," to"]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:265,columnNumber:17},this),e.jsxDEV("select",{value:W,onChange:E=>M(E.target.value),className:"select text-xs","data-testid":"escalate-select",children:[e.jsxDEV("option",{value:"",children:"Select role..."},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:274,columnNumber:19},this),u.map(E=>e.jsxDEV("option",{value:E,children:E},E,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:276,columnNumber:21},this))]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:268,columnNumber:17},this),e.jsxDEV("div",{className:"flex-1"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:279,columnNumber:17},this),x&&e.jsxDEV("span",{className:"text-xs text-status-error",children:x.message},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:280,columnNumber:35},this),e.jsxDEV("button",{onClick:()=>f(W),disabled:!W||h,className:"btn-primary text-xs",children:h?"Escalating...":"Escalate"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:281,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:264,columnNumber:15},this),r==="release"&&e.jsxDEV("div",{className:"flex items-center gap-3",children:[e.jsxDEV("span",{className:"text-xs text-text-secondary",children:"Release back to pool?"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:294,columnNumber:17},this),e.jsxDEV("div",{className:"flex-1"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:295,columnNumber:17},this),e.jsxDEV("button",{onClick:()=>s("resolve"),className:"btn-secondary text-xs",children:"Back"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:296,columnNumber:17},this),e.jsxDEV("button",{onClick:y,disabled:w,className:"btn-primary text-xs bg-status-error hover:bg-status-error/80",children:w?"Releasing...":"Yes, Release"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:299,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:293,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:198,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationActionBar.tsx",lineNumber:140,columnNumber:5},this)}const $a={1:{pad:"px-3 py-2.5",label:"text-[9px] mb-1.5",value:"text-xs",bg:"bg-surface-sunken/60"},2:{pad:"px-3 py-2",label:"text-[8px] mb-1",value:"text-[11px]",bg:"bg-surface-sunken/30"},3:{pad:"px-2.5 py-1.5",label:"text-[8px] mb-0.5",value:"text-[10px]",bg:"bg-surface-sunken/15"}};function k({label:a,children:o,tier:r=1,className:s=""}){const t=$a[r];return e.jsxDEV("div",{className:`flex-1 min-w-0 rounded-lg ${t.bg} ${t.pad} ${s}`,children:[e.jsxDEV("p",{className:`font-semibold uppercase tracking-widest text-text-tertiary leading-none ${t.label}`,children:a},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/MetaCell.tsx",lineNumber:31,columnNumber:7},this),e.jsxDEV("div",{className:`text-text-secondary leading-tight min-w-0 ${t.value}`,children:o},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/MetaCell.tsx",lineNumber:34,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/common/display/MetaCell.tsx",lineNumber:30,columnNumber:5},this)}const Pe=56;function Ba({value:a}){const[o,r]=N.useState(!1),s=typeof a=="object"?JSON.stringify(a):String(a??"");return s.length<=Pe?e.jsxDEV("span",{className:"font-mono break-all",title:s,children:s},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:22,columnNumber:12},this):e.jsxDEV("button",{onClick:()=>r(t=>!t),title:s,className:"font-mono break-all text-left hover:text-accent transition-colors",children:o?s:`${s.slice(0,Pe)}…`},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:25,columnNumber:5},this)}function Wa({esc:a,claimedByMe:o,claimed:r,isTerminal:s,traceUrl:t,isDevMode:l,showDetails:m,onToggleDetails:d}){const{isBuilder:i}=ve(),n=ya(a);return l?e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"flex items-center gap-3 mb-2",children:[n&&e.jsxDEV(Sa,{className:"w-5 h-5 text-text-tertiary shrink-0"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:153,columnNumber:19},this),e.jsxDEV("p",{className:"text-[1.5rem] leading-snug font-light text-text-secondary",children:[a.type,a.subtype?` / ${a.subtype}`:""]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:154,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:152,columnNumber:7},this),a.description&&e.jsxDEV("p",{className:"text-sm leading-relaxed text-text-tertiary mb-4",children:a.description},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:161,columnNumber:9},this),e.jsxDEV("div",{className:"flex flex-wrap items-end gap-x-6 gap-y-3 mt-4 mb-2",children:[e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-1.5",children:"Status"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:169,columnNumber:11},this),e.jsxDEV("span",{className:"mb-1 inline-block",children:e.jsxDEV(Ae,{status:a.status},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:170,columnNumber:47},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:170,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:168,columnNumber:9},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-1.5",children:"Role"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:173,columnNumber:11},this),e.jsxDEV(He,{role:a.role,size:"md"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:174,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:172,columnNumber:9},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-1.5",children:"Created"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:177,columnNumber:11},this),e.jsxDEV("span",{className:"inline-flex items-center mb-1 text-xs text-text-secondary",children:e.jsxDEV(z,{date:a.created_at},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:179,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:178,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:176,columnNumber:9},this),(r||s)&&a.assigned_to&&e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-1.5",children:"Claimed by"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:184,columnNumber:13},this),e.jsxDEV("span",{className:"inline-flex items-center gap-1.5 text-xs font-medium text-text-primary",children:[e.jsxDEV($e,{className:"w-3 h-3 shrink-0 text-accent/75"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:186,columnNumber:15},this),e.jsxDEV(ge,{userId:a.assigned_to},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:187,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:185,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:183,columnNumber:11},this),r&&!s&&a.assigned_until&&e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-1.5",children:"Time left"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:193,columnNumber:13},this),e.jsxDEV("span",{className:"inline-flex items-center h-5",children:e.jsxDEV(fe,{until:a.assigned_until},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:194,columnNumber:60},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:194,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:192,columnNumber:11},this),a.resolved_at&&e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-1.5",children:"Resolved"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:199,columnNumber:13},this),e.jsxDEV("span",{className:"inline-flex items-center h-5 text-xs text-text-secondary",children:e.jsxDEV(z,{date:a.resolved_at},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:201,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:200,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:198,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:167,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:150,columnNumber:5},this):e.jsxDEV("div",{className:"-mt-6 mb-2",children:[a.description&&e.jsxDEV("p",{className:"text-2xl font-light text-text-primary leading-relaxed mb-5",children:a.description},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:63,columnNumber:11},this),e.jsxDEV("div",{className:"flex gap-1 items-stretch",children:[e.jsxDEV(k,{label:"Status",children:e.jsxDEV(Ae,{status:a.status},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:70,columnNumber:36},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:70,columnNumber:11},this),e.jsxDEV(k,{label:"Assigned to Role",children:e.jsxDEV(He,{role:a.role,size:"md"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:71,columnNumber:46},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:71,columnNumber:11},this),(r||s)&&a.assigned_to&&e.jsxDEV(k,{label:"Claimed By",children:e.jsxDEV("span",{className:"inline-flex items-center gap-1.5 font-medium text-text-primary",children:[e.jsxDEV($e,{className:"w-3 h-3 shrink-0 text-accent/75"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:78,columnNumber:17},this),e.jsxDEV(ge,{userId:a.assigned_to},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:79,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:77,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:76,columnNumber:13},this),e.jsxDEV(k,{label:"Created",children:e.jsxDEV(z,{date:a.created_at},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:83,columnNumber:37},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:83,columnNumber:11},this),(r||s)&&a.claimed_at&&e.jsxDEV(k,{label:"Claimed",children:e.jsxDEV(z,{date:a.claimed_at},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:85,columnNumber:39},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:85,columnNumber:13},this),r&&!s&&a.assigned_until&&e.jsxDEV(k,{label:"Time Remaining",children:e.jsxDEV(fe,{until:a.assigned_until},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:88,columnNumber:46},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:88,columnNumber:13},this),a.resolved_at&&e.jsxDEV(k,{label:"Completed",children:e.jsxDEV("span",{className:"text-status-success",children:e.jsxDEV(z,{date:a.resolved_at},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:91,columnNumber:79},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:91,columnNumber:41},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:91,columnNumber:13},this),e.jsxDEV(k,{label:"Priority",children:["P",a.priority]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:93,columnNumber:11},this),i&&e.jsxDEV("button",{onClick:d,title:m?"Hide details":"Show details",className:"shrink-0 rounded-lg bg-surface-sunken/60 px-3 flex items-center text-text-tertiary/60 hover:text-accent transition-colors",children:e.jsxDEV(ka,{className:`w-3.5 h-3.5 ${m?"text-accent":""}`},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:100,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:95,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:69,columnNumber:9},this),i&&e.jsxDEV(na,{open:m,children:[e.jsxDEV("div",{className:"flex gap-1 mt-1",children:[e.jsxDEV(k,{tier:2,label:"Escalation ID",children:e.jsxDEV(S,{bare:!0,value:a.id},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:109,columnNumber:54},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:109,columnNumber:13},this),a.task_id&&e.jsxDEV(k,{tier:2,label:"Task ID",children:e.jsxDEV(S,{bare:!0,value:a.task_id,href:`/workflows/tasks/detail/${a.task_id}`},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:111,columnNumber:50},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:111,columnNumber:15},this),a.workflow_type&&e.jsxDEV(k,{tier:2,label:"Workflow Name",children:e.jsxDEV(S,{bare:!0,value:a.workflow_type,href:`/workflows/executions?entity=${encodeURIComponent(a.workflow_type)}`},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:114,columnNumber:56},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:114,columnNumber:15},this),a.workflow_id&&e.jsxDEV(k,{tier:2,label:"Workflow ID",children:e.jsxDEV(S,{bare:!0,value:a.workflow_id,href:`/workflows/executions/${a.workflow_id}`},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:117,columnNumber:54},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:117,columnNumber:15},this),a.task_queue&&e.jsxDEV(k,{tier:2,label:"Task Queue",children:e.jsxDEV(S,{bare:!0,value:a.task_queue,href:`/admin/controlplane?queue=${encodeURIComponent(a.task_queue)}`},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:120,columnNumber:53},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:120,columnNumber:15},this),a.origin_id&&a.origin_id!==a.workflow_id&&e.jsxDEV(k,{tier:2,label:"Origin",children:e.jsxDEV(S,{bare:!0,value:a.origin_id,href:`/processes/detail/${a.origin_id}`},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:123,columnNumber:49},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:123,columnNumber:15},this),a.trace_id&&e.jsxDEV(k,{tier:2,label:"Trace",children:e.jsxDEV(S,{bare:!0,value:a.trace_id,href:t?t.replace("{traceId}",a.trace_id):void 0,external:!0},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:127,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:126,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:108,columnNumber:11},this),a.metadata&&Object.keys(a.metadata).filter(c=>!c.startsWith("_")).length>0&&e.jsxDEV("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-1 mt-1",children:Object.entries(a.metadata).filter(([c])=>!c.startsWith("_")).map(([c,p])=>e.jsxDEV(k,{tier:3,label:c,children:e.jsxDEV(Ba,{value:p},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:138,columnNumber:60},this)},c,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:138,columnNumber:19},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:134,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:106,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationHero.tsx",lineNumber:60,columnNumber:7},this)}function K(a){return a.replace(/`([^`]+)`/g,'<code class="px-1 py-0.5 bg-surface-sunken rounded text-xs font-mono">$1</code>').replace(/\*\*\*(.+?)\*\*\*/g,"<strong><em>$1</em></strong>").replace(/\*\*(.+?)\*\*/g,"<strong>$1</strong>").replace(/\*(.+?)\*/g,"<em>$1</em>").replace(/\[([^\]]+)\]\(([^)]+)\)/g,'<a href="$2" class="text-accent-primary hover:underline" target="_blank" rel="noopener noreferrer">$1</a>')}function be({content:a,compact:o}){const r=[],s=/^```(\w*)\n([\s\S]*?)^```$/gm;let t=0,l;for(;(l=s.exec(a))!==null;)l.index>t&&r.push({type:"text",text:a.slice(t,l.index)}),r.push({type:"code",lang:l[1],code:l[2].replace(/\n$/,"")}),t=l.index+l[0].length;t<a.length&&r.push({type:"text",text:a.slice(t)});const m=o?{text:"text-xs",heading:"text-xs",list:"text-xs",code:"text-[11px]"}:{text:"text-sm",heading:"text-sm",list:"text-sm",code:"text-xs"},d=[];for(const i of r){if(i.type==="code"){const n=i.code.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");d.push(`<pre class="my-2 p-2.5 bg-surface-sunken rounded-md overflow-x-auto"><code class="${m.code} font-mono text-text-secondary leading-relaxed">${n}</code></pre>`);continue}d.push(...Ma(i.text,m))}return e.jsxDEV("div",{className:"prose-sm",dangerouslySetInnerHTML:{__html:d.join(`
2
- `)}},void 0,!1,{fileName:"/app/dashboard/src/components/common/display/SimpleMarkdown.tsx",lineNumber:54,columnNumber:5},this)}function Ma(a,o){const r=a.split(`
3
- `),s=[];let t=!1,l=!1,m=[];for(const d of r){const i=d.trim();if(i.startsWith("|")&&i.endsWith("|")){const n=i.slice(1,-1).split("|").map(c=>c.trim());if(n.every(c=>/^[-:]+$/.test(c)))continue;l||(l=!0,m=[]),m.push(n);continue}if(l){l=!1;const[n,...c]=m;s.push('<div class="overflow-x-auto my-2"><table class="text-xs w-full"><thead><tr>');for(const p of n)s.push(`<th class="text-left py-1 px-2 border-b border-border text-text-secondary font-medium">${K(p)}</th>`);s.push("</tr></thead><tbody>");for(const p of c){s.push("<tr>");for(const b of p)s.push(`<td class="py-1 px-2 border-b border-border/50">${K(b)}</td>`);s.push("</tr>")}s.push("</tbody></table></div>"),m=[]}if(!i){t&&(s.push("</ul>"),t=!1);continue}if(i.startsWith("### ")){t&&(s.push("</ul>"),t=!1),s.push(`<h4 class="${o.heading} font-semibold text-text-primary mt-3 mb-1">${K(i.slice(4))}</h4>`);continue}if(i.startsWith("## ")){t&&(s.push("</ul>"),t=!1),s.push(`<h3 class="${o.heading} font-semibold text-text-primary mt-3 mb-1">${K(i.slice(3))}</h3>`);continue}if(/^[-*_]{3,}$/.test(i)){t&&(s.push("</ul>"),t=!1),s.push('<hr class="border-border my-3" />');continue}if(/^[-*] /.test(i)){t||(s.push('<ul class="space-y-1 my-1">'),t=!0),s.push(`<li class="${o.list} text-text-secondary flex gap-2"><span class="text-text-tertiary shrink-0">-</span><span>${K(i.slice(2))}</span></li>`);continue}t&&(s.push("</ul>"),t=!1),s.push(`<p class="${o.text} text-text-secondary my-1">${K(i)}</p>`)}if(l&&m.length){const[d,...i]=m;s.push('<div class="overflow-x-auto my-2"><table class="text-xs w-full"><thead><tr>');for(const n of d)s.push(`<th class="text-left py-1 px-2 border-b border-border text-text-secondary font-medium">${K(n)}</th>`);s.push("</tr></thead><tbody>");for(const n of i){s.push("<tr>");for(const c of n)s.push(`<td class="py-1 px-2 border-b border-border/50">${K(c)}</td>`);s.push("</tr>")}s.push("</tbody></table></div>")}return t&&s.push("</ul>"),s}function Ne({children:a}){return e.jsxDEV("p",{className:"text-[10px] font-semibold uppercase tracking-widest text-text-tertiary mb-1.5",children:a},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:17,columnNumber:5},this)}function Pa({payload:a,isTerminal:o,resolverPayload:r,onRetryTriage:s,isRetrying:t}){const l=a.title,m=a.summary,d=a.diagnosis,i=a.tool_calls_made,n=a.result,c=r==null?void 0:r._lt,p=(c==null?void 0:c.triaged)===!0,b=c==null?void 0:c.triageWorkflowId,g=o&&p,[u,f]=N.useState(!1);return g?e.jsxDEV("div",{className:"rounded-md border border-status-success/30 bg-surface-raised",children:[e.jsxDEV("div",{className:"flex items-center justify-between px-4 py-3 border-b border-surface-border",children:[e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV("svg",{className:"w-4 h-4 text-status-success shrink-0",viewBox:"0 0 16 16",fill:"currentColor",children:e.jsxDEV("path",{d:"M8 1a7 7 0 110 14A7 7 0 018 1zm3.36 4.65a.5.5 0 00-.72 0L7 9.29 5.36 7.65a.5.5 0 10-.72.7l2 2a.5.5 0 00.72 0l4-4a.5.5 0 000-.7z"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:44,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:43,columnNumber:13},this),e.jsxDEV("span",{className:"text-xs font-medium text-status-success",children:"Resolved by AI Triage"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:46,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:42,columnNumber:11},this),typeof i=="number"&&e.jsxDEV("span",{className:"text-[10px] font-mono px-2 py-0.5 rounded-full bg-status-success/10 text-status-success",children:[i," tool calls used"]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:49,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:41,columnNumber:9},this),e.jsxDEV("div",{className:"px-4 py-4 space-y-4",children:[l&&e.jsxDEV("p",{className:"text-sm font-medium text-text-primary",children:l},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:58,columnNumber:13},this),d&&e.jsxDEV("div",{children:[e.jsxDEV(Ne,{children:"Triage diagnosis"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:63,columnNumber:15},this),e.jsxDEV("div",{className:"text-xs text-text-primary leading-relaxed",children:e.jsxDEV(be,{content:d},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:65,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:64,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:62,columnNumber:13},this),e.jsxDEV("div",{className:"flex items-center gap-3",children:b&&e.jsxDEV(ze,{to:`/workflows/executions/${b}`,className:"text-[10px] text-accent hover:underline",children:"View triage execution"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:72,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:70,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:56,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:39,columnNumber:7},this):e.jsxDEV("div",{className:"rounded-md border border-status-warning/30 bg-surface-raised",children:[e.jsxDEV("div",{className:"flex items-center justify-between px-4 py-3 border-b border-surface-border",children:[e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV("svg",{className:"w-4 h-4 text-status-warning shrink-0",viewBox:"0 0 16 16",fill:"currentColor",children:e.jsxDEV("path",{d:"M8 1a7 7 0 110 14A7 7 0 018 1zm0 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 4zm0 7a.75.75 0 100-1.5.75.75 0 000 1.5z"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:92,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:91,columnNumber:11},this),e.jsxDEV("span",{className:"text-xs font-medium text-status-warning",children:"Tool Rounds Exhausted"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:94,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:90,columnNumber:9},this),typeof i=="number"&&e.jsxDEV("span",{className:"text-[10px] font-mono px-2 py-0.5 rounded-full bg-status-warning/10 text-status-warning",children:[i," tool calls used"]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:97,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:89,columnNumber:7},this),e.jsxDEV("div",{className:"px-4 py-4 space-y-4",children:[l&&e.jsxDEV("p",{className:"text-sm font-medium text-text-primary",children:l},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:106,columnNumber:11},this),m&&e.jsxDEV("div",{children:[e.jsxDEV(Ne,{children:"What happened"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:111,columnNumber:13},this),e.jsxDEV("div",{className:"text-xs text-text-secondary leading-relaxed",children:e.jsxDEV(be,{content:m},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:113,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:112,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:110,columnNumber:11},this),d&&e.jsxDEV("div",{children:[e.jsxDEV(Ne,{children:"What went wrong"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:120,columnNumber:13},this),e.jsxDEV("div",{className:"text-xs text-text-primary leading-relaxed",children:e.jsxDEV(be,{content:d},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:122,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:121,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:119,columnNumber:11},this),n!=null&&e.jsxDEV("div",{children:[e.jsxDEV("button",{onClick:()=>f(!u),className:"flex items-center gap-1 text-[10px] font-semibold uppercase tracking-widest text-text-tertiary hover:text-text-secondary transition-colors",children:[e.jsxDEV("svg",{className:`w-3 h-3 transition-transform ${u?"rotate-90":""}`,viewBox:"0 0 12 12",fill:"currentColor",children:e.jsxDEV("path",{d:"M4.5 2l4 4-4 4"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:134,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:133,columnNumber:15},this),"Partial results"]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:129,columnNumber:13},this),u&&e.jsxDEV("div",{className:"mt-2",children:e.jsxDEV(oe,{data:n,defaultMode:"tree"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:140,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:139,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:128,columnNumber:11},this),s&&!o&&e.jsxDEV("div",{className:"pt-2",children:e.jsxDEV("button",{onClick:s,disabled:t,className:"inline-flex items-center gap-2 px-4 py-2 text-xs font-medium bg-accent text-text-inverse rounded-md hover:bg-accent/90 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:[e.jsxDEV("svg",{className:"w-3.5 h-3.5",viewBox:"0 0 14 14",fill:"currentColor",children:e.jsxDEV("path",{d:"M7 1a6 6 0 100 12A6 6 0 007 1zm2.5 6.5l-3.5 2V5.5l3.5 2z"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:154,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:153,columnNumber:15},this),t?"Sending to triage...":"Retry with AI Triage"]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:148,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:147,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:104,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/RoundsExhaustedContext.tsx",lineNumber:87,columnNumber:5},this)}function Ia({triage:a,payload:o}){const r=a.confidence??0,s=r>=.8?"text-status-success":r>=.5?"text-status-pending":"text-status-error",t=La(a.originalData,o);return e.jsxDEV("div",{className:"space-y-5",children:[a.diagnosis&&e.jsxDEV("p",{className:"text-sm text-text-primary leading-relaxed",children:a.diagnosis},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:37,columnNumber:9},this),e.jsxDEV("div",{className:"flex flex-wrap items-center gap-3 text-xs text-text-tertiary",children:[a.tool_calls_made!=null&&e.jsxDEV("span",{children:[a.tool_calls_made," tool call",a.tool_calls_made!==1?"s":""]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:44,columnNumber:11},this),a.tool_calls_made!=null&&e.jsxDEV("span",{className:"text-text-quaternary",children:"·"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:46,columnNumber:44},this),e.jsxDEV("span",{className:`font-medium ${s}`,children:[Math.round(r*100),"% confidence"]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:47,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:42,columnNumber:7},this),a.actions_taken&&a.actions_taken.length>0&&e.jsxDEV("div",{className:"flex flex-wrap gap-1.5",children:a.actions_taken.map((l,m)=>e.jsxDEV("span",{className:`inline-flex items-center gap-1.5 px-2 py-0.5 text-[11px]
4
- text-text-secondary`,children:[e.jsxDEV("svg",{className:"w-3 h-3 text-status-success shrink-0",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2.5,children:e.jsxDEV("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M5 13l4 4L19 7"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:61,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:60,columnNumber:15},this),l]},m,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:55,columnNumber:13},this))},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:53,columnNumber:9},this),a.recommendation&&e.jsxDEV("p",{className:"text-[11px] text-text-tertiary italic",children:a.recommendation},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:70,columnNumber:9},this),t.length>0&&e.jsxDEV("div",{className:"space-y-4 pt-2",children:t.map(l=>e.jsxDEV(Oa,{diff:l},l.key,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:79,columnNumber:13},this))},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:77,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:34,columnNumber:5},this)}function La(a,o){if(!a)return[];const r=[];for(const s of Object.keys(a)){if(s.startsWith("_"))continue;const t=a[s],l=o[s];l!==void 0&&JSON.stringify(t)!==JSON.stringify(l)&&r.push({key:s,label:s.replace(/[_-]/g," "),original:t,corrected:l})}return r}function Oa({diff:a}){const o=Ie(a.original),r=Ie(a.corrected);return o!==null&&r!==null?e.jsxDEV("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-x-8 gap-y-3",children:[e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[10px] font-semibold uppercase tracking-widest text-text-tertiary mb-1",children:[a.label," ",e.jsxDEV("span",{className:"normal-case font-normal",children:"(original)"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:130,columnNumber:26},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:129,columnNumber:11},this),e.jsxDEV("p",{className:"text-sm text-text-tertiary leading-relaxed line-through decoration-text-tertiary/30",children:o},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:132,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:128,columnNumber:9},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[10px] font-semibold uppercase tracking-widest text-text-tertiary mb-1",children:[a.label," ",e.jsxDEV("span",{className:"normal-case font-normal text-status-success",children:"(corrected)"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:138,columnNumber:26},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:137,columnNumber:11},this),e.jsxDEV("p",{className:"text-sm text-text-primary leading-relaxed",children:r},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:140,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:136,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:127,columnNumber:7},this):e.jsxDEV("div",{className:"space-y-3",children:[e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[10px] font-semibold uppercase tracking-widest text-text-tertiary mb-1",children:[a.label," ",e.jsxDEV("span",{className:"normal-case font-normal",children:"(original)"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:153,columnNumber:24},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:152,columnNumber:9},this),e.jsxDEV("pre",{className:"text-xs text-text-tertiary font-mono whitespace-pre-wrap leading-relaxed",children:typeof a.original=="object"?JSON.stringify(a.original,null,2):String(a.original)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:155,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:151,columnNumber:7},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[10px] font-semibold uppercase tracking-widest text-text-tertiary mb-1",children:[a.label," ",e.jsxDEV("span",{className:"normal-case font-normal text-status-success",children:"(corrected)"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:161,columnNumber:24},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:160,columnNumber:9},this),e.jsxDEV("pre",{className:"text-xs text-text-primary font-mono whitespace-pre-wrap leading-relaxed",children:typeof a.corrected=="object"?JSON.stringify(a.corrected,null,2):String(a.corrected)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:163,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:159,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/TriageContext.tsx",lineNumber:150,columnNumber:5},this)}function Ie(a){return a==null?"null":typeof a=="string"?a:typeof a=="number"||typeof a=="boolean"?String(a):null}function Le({src:a,escalation:o,schema:r,onResolve:s,onEscalate:t,submitAttempted:l}){const m=N.useRef(null),d=N.useRef("");N.useEffect(()=>{try{const n=new URL(a);d.current=n.origin}catch{d.current=""}},[a]);const i=N.useCallback(()=>{const n=m.current;if(!(n!=null&&n.contentWindow)||!d.current)return;const p={type:"lt:init",escalation:{id:o.id,type:o.type,subtype:o.subtype,description:o.description,status:o.status,priority:o.priority,role:o.role,workflow_type:o.workflow_type},schema:r};n.contentWindow.postMessage(p,d.current)},[o,r]);return N.useEffect(()=>{const n=c=>{if(c.origin!==d.current)return;const p=c.data;if(!(!p||typeof p!="object"||typeof p.type!="string"))switch(p.type){case"lt:ready":i();break;case"lt:submit":p.payload&&typeof p.payload=="object"&&s(p.payload);break;case"lt:escalate":typeof p.target=="string"&&p.target&&t(p.target);break;case"lt:resize":{const b=m.current;b&&typeof p.height=="number"&&p.height>0&&(b.style.height=`${Math.min(p.height,2e3)}px`);break}}};return window.addEventListener("message",n),()=>window.removeEventListener("message",n)},[i,s,t]),N.useEffect(()=>{if(!l)return;const n=m.current;n!=null&&n.contentWindow&&d.current&&n.contentWindow.postMessage({type:"lt:validate"},d.current)},[l]),e.jsxDEV("div",{className:"rounded-md border border-surface-border overflow-hidden bg-white",children:e.jsxDEV("iframe",{ref:m,src:a,sandbox:"allow-scripts allow-same-origin allow-forms",className:"w-full border-0",style:{minHeight:"400px"},title:"HITL Viewport",onLoad:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/IframeViewport.tsx",lineNumber:144,columnNumber:7},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/IframeViewport.tsx",lineNumber:143,columnNumber:5},this)}function Ua({fieldKey:a,value:o,onChange:r,schema:s}){const t=N.useRef(null),l=(s==null?void 0:s.accept)??void 0,m=a.replace(/[_-]/g," "),d=s==null?void 0:s.description,i=N.useCallback(c=>{var g;const p=(g=c.target.files)==null?void 0:g[0];if(!p)return;const b=new FileReader;b.onload=()=>{typeof b.result=="string"&&r(b.result)},b.readAsDataURL(p)},[r]),n=o.startsWith("data:");return e.jsxDEV("div",{children:[e.jsxDEV("label",{className:"text-[10px] font-semibold uppercase tracking-widest text-text-tertiary",children:m},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/FileUploadWidget.tsx",lineNumber:36,columnNumber:7},this),d&&e.jsxDEV("p",{className:"text-[10px] text-text-tertiary mt-0.5",children:d},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/FileUploadWidget.tsx",lineNumber:39,columnNumber:22},this),e.jsxDEV("div",{className:"mt-1",children:[e.jsxDEV("input",{ref:t,type:"file",accept:l,onChange:i,className:"hidden"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/FileUploadWidget.tsx",lineNumber:41,columnNumber:9},this),e.jsxDEV("button",{type:"button",onClick:()=>{var c;return(c=t.current)==null?void 0:c.click()},className:"btn-secondary text-xs px-3 py-1.5",children:n?"Replace file":"Choose file"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/FileUploadWidget.tsx",lineNumber:48,columnNumber:9},this),n&&e.jsxDEV("span",{className:"ml-2 text-xs text-status-success",children:"File attached"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/FileUploadWidget.tsx",lineNumber:56,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/widgets/FileUploadWidget.tsx",lineNumber:40,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/widgets/FileUploadWidget.tsx",lineNumber:35,columnNumber:5},this)}function Ja({fieldKey:a,value:o,onChange:r,schema:s}){const t=a.replace(/[_-]/g," "),l=s==null?void 0:s.description,m=(s==null?void 0:s["x-lt-language"])??"",d=N.useCallback(i=>{if(i.key==="Tab"){i.preventDefault();const n=i.currentTarget,c=n.selectionStart,p=n.selectionEnd,b=o.substring(0,c)+" "+o.substring(p);r(b),requestAnimationFrame(()=>{n.selectionStart=n.selectionEnd=c+2})}},[o,r]);return e.jsxDEV("div",{children:[e.jsxDEV("label",{className:"text-[10px] font-semibold uppercase tracking-widest text-text-tertiary",children:[t,m&&e.jsxDEV("span",{className:"ml-2 text-text-tertiary/60 normal-case font-normal",children:m},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/CodeEditorWidget.tsx",lineNumber:37,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/widgets/CodeEditorWidget.tsx",lineNumber:34,columnNumber:7},this),l&&e.jsxDEV("p",{className:"text-[10px] text-text-tertiary mt-0.5",children:l},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/CodeEditorWidget.tsx",lineNumber:40,columnNumber:22},this),e.jsxDEV("textarea",{value:o,onChange:i=>r(i.target.value),onKeyDown:d,className:"input w-full mt-1 font-mono text-xs leading-relaxed",rows:10,spellCheck:!1},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/CodeEditorWidget.tsx",lineNumber:41,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/widgets/CodeEditorWidget.tsx",lineNumber:33,columnNumber:5},this)}function za({fieldKey:a,value:o,onChange:r,schema:s}){const t=N.useRef(null),[l,m]=N.useState(!1),d=a.replace(/[_-]/g," "),i=s==null?void 0:s.description;N.useEffect(()=>{const u=t.current;if(!u)return;const f=u.getContext("2d");if(f&&(f.lineWidth=2,f.lineCap="round",f.strokeStyle="#1E1535",o&&o.startsWith("data:"))){const h=new Image;h.onload=()=>f.drawImage(h,0,0),h.src=o}},[]);const n=N.useCallback(u=>{const h=t.current.getBoundingClientRect();return"touches"in u?{x:u.touches[0].clientX-h.left,y:u.touches[0].clientY-h.top}:{x:u.clientX-h.left,y:u.clientY-h.top}},[]),c=N.useCallback(u=>{var x;m(!0);const f=(x=t.current)==null?void 0:x.getContext("2d");if(!f)return;const h=n(u);f.beginPath(),f.moveTo(h.x,h.y)},[n]),p=N.useCallback(u=>{var x;if(!l)return;const f=(x=t.current)==null?void 0:x.getContext("2d");if(!f)return;const h=n(u);f.lineTo(h.x,h.y),f.stroke()},[l,n]),b=N.useCallback(()=>{m(!1);const u=t.current;u&&r(u.toDataURL("image/png"))},[r]),g=N.useCallback(()=>{const u=t.current;if(!u)return;const f=u.getContext("2d");f&&(f.clearRect(0,0,u.width,u.height),r(""))},[r]);return e.jsxDEV("div",{children:[e.jsxDEV("label",{className:"text-[10px] font-semibold uppercase tracking-widest text-text-tertiary",children:d},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/SignatureWidget.tsx",lineNumber:81,columnNumber:7},this),i&&e.jsxDEV("p",{className:"text-[10px] text-text-tertiary mt-0.5",children:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/SignatureWidget.tsx",lineNumber:84,columnNumber:22},this),e.jsxDEV("div",{className:"mt-1 border border-surface-border rounded-md overflow-hidden bg-white",children:e.jsxDEV("canvas",{ref:t,width:400,height:150,className:"w-full cursor-crosshair touch-none",onMouseDown:c,onMouseMove:p,onMouseUp:b,onMouseLeave:b,onTouchStart:c,onTouchMove:p,onTouchEnd:b},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/SignatureWidget.tsx",lineNumber:86,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/SignatureWidget.tsx",lineNumber:85,columnNumber:7},this),e.jsxDEV("button",{type:"button",onClick:g,className:"mt-1 text-[10px] text-text-tertiary hover:text-accent transition-colors",children:"Clear"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/SignatureWidget.tsx",lineNumber:100,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/widgets/SignatureWidget.tsx",lineNumber:80,columnNumber:5},this)}function qa({fieldKey:a,value:o,onChange:r,schema:s}){const t=a.replace(/[_-]/g," "),l=s==null?void 0:s.description;return e.jsxDEV("div",{children:[e.jsxDEV("label",{className:"text-[10px] font-semibold uppercase tracking-widest text-text-tertiary",children:t},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/RichTextWidget.tsx",lineNumber:18,columnNumber:7},this),l&&e.jsxDEV("p",{className:"text-[10px] text-text-tertiary mt-0.5",children:l},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/RichTextWidget.tsx",lineNumber:21,columnNumber:22},this),e.jsxDEV("textarea",{value:o,onChange:m=>r(m.target.value),className:"input w-full mt-1 text-sm leading-relaxed",rows:8,placeholder:"Supports plain text. Markdown formatting is preserved."},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/widgets/RichTextWidget.tsx",lineNumber:22,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/widgets/RichTextWidget.tsx",lineNumber:17,columnNumber:5},this)}const Oe={"file-upload":Ua,"code-editor":Ja,signature:za,"rich-text":qa};function qe({value:a,onChange:o,disabled:r,submitAttempted:s}){const[t,l]=N.useState({}),[m,d]=N.useState({}),[i,n]=N.useState(null),[c,p]=N.useState(!1),[b,g]=N.useState(new Set);N.useEffect(()=>{try{const v=JSON.parse(a);if(typeof v=="object"&&v!==null&&!Array.isArray(v)){const j={},D={};for(const[T,B]of Object.entries(v))T.startsWith("_")?D[T]=B:j[T]=B;l(j),d(D),n(D._form_schema&&typeof D._form_schema=="object"?D._form_schema:null),p(!1)}}catch{p(!0)}},[a]);const u=N.useCallback(v=>{l(v),o(JSON.stringify({...v,...m},null,2))},[m,o]),f=N.useCallback((v,j)=>{u({...t,[v]:j})},[t,u]),h=N.useCallback(v=>{g(j=>{if(j.has(v))return j;const D=new Set(j);return D.add(v),D})},[]);if(c)return e.jsxDEV("p",{className:"text-xs text-status-error",children:"Unable to parse resolver data as form. Use the JSON editor below."},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:79,columnNumber:7},this);const x=Object.entries(t);if(x.length===0)return e.jsxDEV("p",{className:"text-xs text-text-tertiary italic",children:"No resolver fields defined."},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:88,columnNumber:7},this);const y=i==null?void 0:i["x-lt-order"],w=y?[...x].sort((v,j)=>{const D=y.indexOf(v[0]),T=y.indexOf(j[0]);return(D===-1?1/0:D)-(T===-1?1/0:T)}):x,_=new Set((i==null?void 0:i.required)??[]),F=i==null?void 0:i["x-lt-layout"],A=i==null?void 0:i.title,C=i==null?void 0:i.description,R=w.map(([v,j])=>{var P;const D=(P=i==null?void 0:i.properties)==null?void 0:P[v],T=(D==null?void 0:D.readOnly)===!0,B=(D==null?void 0:D["x-lt-span"])??1,H=_.has(v),W=b.has(v)||!!s;let M;if(H&&W&&(j==null||typeof j=="string"&&j.trim()==="")&&(M="Required"),W&&typeof j=="string"&&j.trim()!==""&&D){const U=D.format;U==="email"&&!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(j)&&(M="Enter a valid email address"),U==="uri"&&!/^https?:\/\/.+/.test(j)&&(M="Enter a valid URL")}return e.jsxDEV("div",{className:F==="two-column"&&B>=2?"col-span-2":"",children:e.jsxDEV(Ke,{fieldKey:v,value:j,onChange:U=>f(v,U),onBlur:()=>h(v),schema:i,isRequired:H,isReadOnly:T,error:M},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:141,columnNumber:9},this)},v,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:137,columnNumber:7},this)});return e.jsxDEV("div",{className:`pb-8 ${r?"opacity-60 pointer-events-none":""}`,children:[A&&e.jsxDEV("h3",{className:"text-lg font-light text-text-primary mb-1",children:A},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:159,columnNumber:9},this),C&&e.jsxDEV("p",{className:"text-sm text-text-secondary leading-relaxed mb-6",children:C},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:162,columnNumber:9},this),F==="two-column"?e.jsxDEV("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-x-14 gap-y-6",children:R},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:167,columnNumber:9},this):e.jsxDEV("div",{className:"space-y-6",children:R},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:169,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:156,columnNumber:5},this)}function Ke({fieldKey:a,value:o,onChange:r,onBlur:s,schema:t,isRequired:l,isReadOnly:m,error:d}){var p;const i=a.replace(/[_-]/g," "),n=(p=t==null?void 0:t.properties)==null?void 0:p[a];if(m){const b=o===null?"null":typeof o=="object"?JSON.stringify(o,null,2):String(o);return e.jsxDEV("div",{children:[e.jsxDEV(O,{isRequired:l,children:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:199,columnNumber:9},this),e.jsxDEV("p",{className:"text-sm text-text-secondary mt-0.5 whitespace-pre-wrap",children:b},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:200,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:198,columnNumber:7},this)}const c=n==null?void 0:n["x-lt-widget"];if(c&&c in Oe&&typeof o=="string"){const b=Oe[c];return e.jsxDEV(b,{fieldKey:a,value:o,onChange:g=>r(g),schema:n},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:209,columnNumber:12},this)}if(typeof o=="boolean")return e.jsxDEV("div",{children:[e.jsxDEV("label",{className:"flex items-center gap-2 cursor-pointer",children:[e.jsxDEV("input",{type:"checkbox",checked:o,onChange:b=>{r(b.target.checked),s==null||s()},className:"w-3.5 h-3.5 rounded accent-accent"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:217,columnNumber:11},this),e.jsxDEV("span",{className:"text-[11px] font-semibold uppercase tracking-wider text-text-secondary",children:[i,l&&e.jsxDEV("span",{className:"text-status-error ml-0.5",children:"*"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:225,columnNumber:28},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:223,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:216,columnNumber:9},this),e.jsxDEV(Y,{error:d},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:228,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:215,columnNumber:7},this);if(typeof o=="number")return e.jsxDEV("div",{children:[e.jsxDEV(O,{isRequired:l,children:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:237,columnNumber:9},this),e.jsxDEV("input",{type:"number",value:o,onChange:b=>r(parseFloat(b.target.value)||0),onBlur:s,step:"any",className:Z(!!d)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:238,columnNumber:9},this),e.jsxDEV(Y,{error:d},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:246,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:236,columnNumber:7},this);if(typeof o=="string"){const b=(n==null?void 0:n.format)==="password",g=n==null?void 0:n.enum,u=n==null?void 0:n.description;if(g!=null&&g.length)return e.jsxDEV("div",{children:[e.jsxDEV(O,{isRequired:l,children:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:260,columnNumber:11},this),u&&e.jsxDEV("p",{className:"text-[10px] text-text-tertiary mt-0.5",children:u},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:261,columnNumber:26},this),e.jsxDEV("select",{value:o,onChange:x=>r(x.target.value),onBlur:s,className:Z(!!d),children:g.map(x=>e.jsxDEV("option",{value:x,children:x},x,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:269,columnNumber:15},this))},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:262,columnNumber:11},this),e.jsxDEV(Y,{error:d},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:272,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:259,columnNumber:9},this);if(b)return e.jsxDEV("div",{children:[e.jsxDEV(O,{isRequired:l,children:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:280,columnNumber:11},this),u&&e.jsxDEV("p",{className:"text-[10px] text-text-tertiary mt-0.5",children:u},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:281,columnNumber:26},this),e.jsxDEV("input",{type:"password",value:o,onChange:x=>r(x.target.value),onBlur:s,className:Z(!!d),autoComplete:"off"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:282,columnNumber:11},this),e.jsxDEV(Y,{error:d},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:290,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:279,columnNumber:9},this);const f=n==null?void 0:n.format,h={date:"date","date-time":"datetime-local",email:"email",uri:"url"};return f&&f in h?e.jsxDEV("div",{children:[e.jsxDEV(O,{isRequired:l,children:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:306,columnNumber:11},this),u&&e.jsxDEV("p",{className:"text-[10px] text-text-tertiary mt-0.5",children:u},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:307,columnNumber:26},this),e.jsxDEV("input",{type:h[f],value:o,onChange:x=>r(x.target.value),onBlur:s,className:Z(!!d)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:308,columnNumber:11},this),e.jsxDEV(Y,{error:d},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:315,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:305,columnNumber:9},this):f==="textarea"||o.length>80?e.jsxDEV("div",{children:[e.jsxDEV(O,{isRequired:l,children:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:324,columnNumber:11},this),u&&e.jsxDEV("p",{className:"text-[10px] text-text-tertiary mt-0.5",children:u},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:325,columnNumber:26},this),e.jsxDEV("textarea",{value:o,onChange:x=>r(x.target.value),onBlur:s,className:`${Z(!!d)} leading-relaxed`,rows:Math.min(6,Math.max(3,Math.ceil(o.length/60)))},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:326,columnNumber:11},this),e.jsxDEV(Y,{error:d},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:333,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:323,columnNumber:9},this):e.jsxDEV("div",{children:[e.jsxDEV(O,{isRequired:l,children:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:340,columnNumber:9},this),u&&e.jsxDEV("p",{className:"text-[10px] text-text-tertiary mt-0.5",children:u},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:341,columnNumber:24},this),e.jsxDEV("input",{type:"text",value:o,onChange:x=>r(x.target.value),onBlur:s,className:Z(!!d)},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:342,columnNumber:9},this),e.jsxDEV(Y,{error:d},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:349,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:339,columnNumber:7},this)}if(o===null)return e.jsxDEV("div",{children:[e.jsxDEV(O,{isRequired:l,children:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:358,columnNumber:9},this),e.jsxDEV("p",{className:"text-xs text-text-tertiary italic mt-1",children:"null"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:359,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:357,columnNumber:7},this);if(Array.isArray(o))return e.jsxDEV("div",{children:[e.jsxDEV(O,{isRequired:l,children:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:368,columnNumber:9},this),e.jsxDEV("div",{className:"flex flex-wrap gap-1.5 mt-1",children:o.map((b,g)=>e.jsxDEV("span",{className:"px-2 py-0.5 text-[11px] font-mono bg-surface-sunken rounded text-text-secondary",children:String(b)},g,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:371,columnNumber:13},this))},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:369,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:367,columnNumber:7},this);if(typeof o=="object"){const b=Object.entries(o);return e.jsxDEV("div",{children:[e.jsxDEV(O,{isRequired:l,children:i},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:388,columnNumber:9},this),e.jsxDEV("div",{className:"ml-4 mt-2 pl-4 border-l border-accent-faint space-y-3",children:b.map(([g,u])=>e.jsxDEV(Ke,{fieldKey:g,value:u,onChange:f=>r({...o,[g]:f})},g,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:391,columnNumber:13},this))},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:389,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:387,columnNumber:7},this)}return null}function O({children:a,isRequired:o}){return e.jsxDEV("label",{className:"text-[11px] font-semibold uppercase tracking-wider text-text-secondary",children:[a,o&&e.jsxDEV("span",{className:"text-status-error ml-0.5",children:"*"},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:410,columnNumber:22},this)]},void 0,!0,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:408,columnNumber:5},this)}function Y({error:a}){return a?e.jsxDEV("p",{className:"text-[10px] text-status-error mt-1 animate-[field-error-in_0.3s_ease-out]",children:a},void 0,!1,{fileName:"/app/dashboard/src/components/escalation/ResolverForm.tsx",lineNumber:418,columnNumber:5},this):null}function Z(a){return a?"input text-sm w-full mt-1 border-status-error/50 focus:border-status-error animate-[field-shake_0.4s_ease-in-out]":"input text-sm w-full mt-1"}function Ue({json:a,onJsonChange:o,requestTriage:r,onRequestTriageChange:s,triageNotes:t,onTriageNotesChange:l,isDevMode:m=!0,disabled:d=!1,submitAttempted:i=!1,showTriage:n=!1}){const[c,p]=N.useState("form"),{visibleJson:b,hiddenFields:g}=N.useMemo(()=>{try{const h=JSON.parse(a);if(typeof h=="object"&&h!==null&&!Array.isArray(h)){const x={},y={};for(const[w,_]of Object.entries(h))w.startsWith("_")?x[w]=_:y[w]=_;return{visibleJson:JSON.stringify(y,null,2),hiddenFields:x}}}catch{}return{visibleJson:a,hiddenFields:{}}},[a]),u=N.useCallback(h=>{try{const x=JSON.parse(h);o(JSON.stringify({...x,...g},null,2))}catch{o(h)}},[g,o]),f=Object.keys(g).length>0;return e.jsxDEV(e.Fragment,{children:[(n||m)&&e.jsxDEV("div",{className:"flex items-center justify-between mb-3",children:[n?r?e.jsxDEV("button",{onClick:()=>s(!1),className:"group flex items-center gap-2 text-left","data-testid":"triage-cancel",children:[e.jsxDEV("span",{className:"flex items-center justify-center w-5 h-5 rounded-full bg-accent/10 text-accent shrink-0",children:e.jsxDEV("svg",{className:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:e.jsxDEV("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18L18 6M6 6l12 12"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:75,columnNumber:21},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:74,columnNumber:19},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:73,columnNumber:17},this),e.jsxDEV("span",{className:"text-xs text-text-secondary group-hover:text-text-primary transition-colors",children:["AI Triage active."," ",e.jsxDEV("span",{className:"text-accent group-hover:underline",children:"Cancel"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:80,columnNumber:19},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:78,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:68,columnNumber:15},this):e.jsxDEV("button",{onClick:()=>s(!0),className:"group flex items-center gap-2.5 text-left my-4","data-testid":"triage-callout",children:[e.jsxDEV("span",{className:"flex items-center justify-center w-6 h-6 rounded-full bg-accent/10 text-accent shrink-0 animate-[triage-glow_6s_ease-in-out_infinite]",children:e.jsxDEV("svg",{className:"w-3.5 h-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:e.jsxDEV("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9.663 17h4.674M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:91,columnNumber:21},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:90,columnNumber:19},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:89,columnNumber:17},this),e.jsxDEV("span",{className:"text-[13px] text-text-secondary group-hover:text-text-primary transition-colors",children:["This form doesn't capture the issue?"," ",e.jsxDEV("span",{className:"text-accent group-hover:underline",children:"Request AI Triage"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:96,columnNumber:19},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:94,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:84,columnNumber:15},this):e.jsxDEV("span",{},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:101,columnNumber:13},this),m&&!r&&e.jsxDEV("button",{onClick:()=>p(c==="form"?"json":"form"),className:"text-[10px] text-text-tertiary hover:text-accent transition-colors",children:c==="form"?"Raw JSON":"Form"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:105,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:65,columnNumber:9},this),e.jsxDEV("div",{className:"relative min-h-[200px]",children:[e.jsxDEV("div",{className:r?"pointer-events-none select-none":"",children:c==="form"?e.jsxDEV(qe,{value:a,onChange:o,disabled:d,submitAttempted:i},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:119,columnNumber:13},this):e.jsxDEV("div",{children:[f&&e.jsxDEV("p",{className:"text-[10px] text-text-quaternary mb-2 italic",children:"Form schema hidden. Edit the resolver values below — they will be merged with the schema on submit."},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:123,columnNumber:17},this),e.jsxDEV("textarea",{value:b,onChange:h=>u(h.target.value),className:"input-json w-full",rows:Math.max(8,b.split(`
5
- `).length+2),spellCheck:!1,"data-testid":"resolve-json"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:127,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:121,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:117,columnNumber:9},this),r&&e.jsxDEV("div",{className:"absolute inset-0 z-10 flex flex-col bg-surface/90 backdrop-blur-[2px] rounded-md border border-accent/20 p-5","data-testid":"triage-overlay",children:[e.jsxDEV("p",{className:"text-xs text-text-secondary mb-3 leading-relaxed",children:"The resolution form will not be submitted. Describe the issue so AI triage can diagnose and fix it using available tools. The corrected result will come back as a new escalation for your review."},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:145,columnNumber:13},this),e.jsxDEV("textarea",{value:t,onChange:h=>l(h.target.value),placeholder:"e.g. Content is in Spanish — needs translation to English before review...",className:"input text-xs w-full flex-1 min-h-[80px] resize-none",autoFocus:!0,"data-testid":"triage-notes"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:151,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:141,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:115,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/ResolverSection.tsx",lineNumber:62,columnNumber:5},this)}function Q({children:a}){return e.jsxDEV("span",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary",children:a},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:19,columnNumber:10},this)}function le({children:a}){return e.jsxDEV("p",{className:"text-[12px] text-text-secondary mt-0.5 font-mono",children:a},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:23,columnNumber:10},this)}function Ka({esc:a}){const{isBuilder:o}=ve();return e.jsxDEV("div",{className:"space-y-6",children:[e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[10px] font-semibold uppercase tracking-wider text-accent/60 mb-3",children:"Classification"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:32,columnNumber:9},this),e.jsxDEV("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-x-8 gap-y-4",children:[e.jsxDEV("div",{children:[e.jsxDEV(Q,{children:"Type"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:35,columnNumber:13},this),e.jsxDEV(le,{children:a.type},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:36,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:34,columnNumber:11},this),a.subtype&&e.jsxDEV("div",{children:[e.jsxDEV(Q,{children:"Subtype"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:40,columnNumber:15},this),e.jsxDEV(le,{children:a.subtype},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:41,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:39,columnNumber:13},this),e.jsxDEV("div",{children:[e.jsxDEV(Q,{children:"Priority"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:45,columnNumber:13},this),e.jsxDEV(le,{children:["P",a.priority]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:46,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:44,columnNumber:11},this),e.jsxDEV("div",{children:[e.jsxDEV(Q,{children:"Status"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:49,columnNumber:13},this),e.jsxDEV(le,{children:a.status},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:50,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:48,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:33,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:31,columnNumber:7},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[10px] font-semibold uppercase tracking-wider text-accent/60 mb-3",children:"References"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:57,columnNumber:9},this),e.jsxDEV("div",{className:"flex flex-wrap gap-x-8 gap-y-4",children:[e.jsxDEV(S,{label:"Escalation ID",value:a.id},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:59,columnNumber:11},this),a.task_id&&e.jsxDEV(S,{label:"Task ID",value:a.task_id,href:o?`/workflows/tasks/detail/${a.task_id}`:void 0},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:60,columnNumber:27},this),a.workflow_type&&e.jsxDEV(S,{label:"Workflow Name",value:a.workflow_type,href:o?`/workflows/executions?entity=${encodeURIComponent(a.workflow_type)}`:void 0},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:61,columnNumber:33},this),a.workflow_id&&e.jsxDEV(S,{label:"Workflow ID",value:a.workflow_id,href:o?`/workflows/executions/${a.workflow_id}`:void 0},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:62,columnNumber:31},this),a.task_queue&&e.jsxDEV(S,{label:"Task Queue",value:a.task_queue,href:o?`/admin/controlplane?queue=${encodeURIComponent(a.task_queue)}`:void 0},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:63,columnNumber:30},this),a.origin_id&&a.origin_id!==a.workflow_id&&e.jsxDEV(S,{label:"Origin ID",value:a.origin_id},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:64,columnNumber:66},this),a.parent_id&&e.jsxDEV(S,{label:"Parent ID",value:a.parent_id},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:65,columnNumber:29},this),a.trace_id&&e.jsxDEV(S,{label:"Trace ID",value:a.trace_id},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:66,columnNumber:28},this),a.span_id&&e.jsxDEV(S,{label:"Span ID",value:a.span_id},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:67,columnNumber:27},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:58,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:56,columnNumber:7},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[10px] font-semibold uppercase tracking-wider text-accent/60 mb-3",children:"Timeline"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:73,columnNumber:9},this),e.jsxDEV("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-x-8 gap-y-4",children:[e.jsxDEV("div",{children:[e.jsxDEV(Q,{children:"Created"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:76,columnNumber:13},this),e.jsxDEV("p",{className:"text-[12px] text-text-secondary mt-0.5",children:e.jsxDEV(z,{date:a.created_at},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:77,columnNumber:67},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:77,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:75,columnNumber:11},this),a.claimed_at&&e.jsxDEV("div",{children:[e.jsxDEV(Q,{children:"Claimed"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:81,columnNumber:15},this),e.jsxDEV("p",{className:"text-[12px] text-text-secondary mt-0.5",children:e.jsxDEV(z,{date:a.claimed_at},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:82,columnNumber:69},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:82,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:80,columnNumber:13},this),a.resolved_at&&e.jsxDEV("div",{children:[e.jsxDEV(Q,{children:"Resolved"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:87,columnNumber:15},this),e.jsxDEV("p",{className:"text-[12px] text-text-secondary mt-0.5",children:e.jsxDEV(z,{date:a.resolved_at},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:88,columnNumber:69},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:88,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:86,columnNumber:13},this),e.jsxDEV("div",{children:[e.jsxDEV(Q,{children:"Updated"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:92,columnNumber:13},this),e.jsxDEV("p",{className:"text-[12px] text-text-secondary mt-0.5",children:e.jsxDEV(z,{date:a.updated_at},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:93,columnNumber:67},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:93,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:91,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:74,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:72,columnNumber:7},this),a.metadata&&Object.keys(a.metadata).length>0&&e.jsxDEV("div",{children:e.jsxDEV(oe,{data:a.metadata,label:"Metadata"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:101,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:100,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:29,columnNumber:5},this)}function Qa({isRoundsExhausted:a,payloadObj:o,isTerminal:r,resolverPayload:s,onRetryTriage:t,isRetrying:l}){return e.jsxDEV(e.Fragment,{children:[a&&o&&e.jsxDEV("div",{className:"mt-8",children:e.jsxDEV(Pa,{payload:o,isTerminal:r,resolverPayload:s,onRetryTriage:t,isRetrying:l},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:130,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:129,columnNumber:9},this),(o==null?void 0:o.category)==="missing_credential"&&e.jsxDEV("div",{className:"mt-8 bg-status-warning/10 border border-status-warning/30 rounded-md px-5 py-4 flex items-start gap-3",children:[e.jsxDEV(Be,{size:20,className:"text-status-warning mt-0.5 shrink-0"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:143,columnNumber:11},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-sm font-medium text-text-primary mb-1",children:"Missing Credential"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:145,columnNumber:13},this),e.jsxDEV("p",{className:"text-xs text-text-secondary mb-3",children:["This workflow requires a ",e.jsxDEV("span",{className:"font-medium capitalize",children:String(o.provider)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:147,columnNumber:40},this)," credential to continue. Register one and then resolve this escalation to retry."]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:146,columnNumber:13},this),e.jsxDEV(ze,{to:"/credentials",className:"btn-primary text-xs inline-flex items-center gap-1.5",children:[e.jsxDEV(Be,{size:12},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:154,columnNumber:15},this),"Go to Credentials"]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:150,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:144,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:142,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:126,columnNumber:5},this)}function Ya({isCollapsed:a,toggleSection:o,esc:r,escalationPayload:s,resolverPayload:t,triageData:l,payloadObj:m,isTerminal:d,claimedByMe:i,activeView:n,metadataFormSchema:c,json:p,onJsonChange:b,requestTriage:g,onRequestTriageChange:u,triageNotes:f,onTriageNotesChange:h,isDevMode:x,onResolve:y,onEscalate:w,submitAttempted:_,isCertified:F,hasAI:A}){return e.jsxDEV("div",{className:"mt-8 space-y-6",children:[x&&e.jsxDEV(re,{title:"Escalation Record",sectionKey:"record",isCollapsed:a("record"),onToggle:o,contentClassName:"mt-4 ml-9",children:e.jsxDEV(Ka,{esc:r},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:226,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:219,columnNumber:9},this),x&&e.jsxDEV(re,{title:"Input / Output",sectionKey:"context",isCollapsed:a("context"),onToggle:o,contentClassName:"mt-4 ml-9",children:e.jsxDEV("div",{className:"space-y-6",children:[e.jsxDEV("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[!!r.envelope&&e.jsxDEV("div",{children:e.jsxDEV(oe,{data:r.envelope,label:"Input Envelope"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:243,columnNumber:19},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:242,columnNumber:17},this),s!=null&&e.jsxDEV("div",{children:e.jsxDEV(oe,{data:s,label:"Escalation Context"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:248,columnNumber:19},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:247,columnNumber:17},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:240,columnNumber:13},this),t!=null&&e.jsxDEV("div",{className:"max-w-xl",children:e.jsxDEV(oe,{data:t,label:"Resolver Payload"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:255,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:254,columnNumber:15},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:239,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:232,columnNumber:9},this),x&&l&&m&&e.jsxDEV(re,{title:"AI Triage",sectionKey:"triage",isCollapsed:a("triage"),onToggle:o,contentClassName:"mt-4 ml-9",children:e.jsxDEV(Ia,{triage:l,payload:m},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:271,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:264,columnNumber:9},this),!x&&d&&t!=null&&(()=>{const C=typeof t=="object"&&t!==null?t:{},R=c,v=R?{...C,_form_schema:R}:C;return e.jsxDEV("div",{className:"pt-6",children:e.jsxDEV(qe,{value:JSON.stringify(v,null,2),onChange:()=>{},disabled:!0},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:284,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:283,columnNumber:11},this)})(),!d&&(i||!x)&&n==="resolve"&&!!(r.workflow_type||c)&&(()=>{const C=c,R=C==null?void 0:C["x-lt-viewport"],v=(R==null?void 0:R.type)==="iframe"&&!!R.src&&y&&w;return x?e.jsxDEV(re,{title:"Submit Your Resolution",sectionKey:"resolver",isCollapsed:a("resolver"),onToggle:o,contentClassName:"mt-4 ml-9",children:v?e.jsxDEV(Le,{src:R.src,escalation:r,schema:C,onResolve:y,onEscalate:w},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:341,columnNumber:15},this):e.jsxDEV(Ue,{json:p,onJsonChange:b,requestTriage:g,onRequestTriageChange:u,triageNotes:f,onTriageNotesChange:h,isDevMode:x,submitAttempted:_,showTriage:!!F&&!!A},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:349,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:333,columnNumber:11},this):e.jsxDEV("div",{className:"pt-6",children:v?e.jsxDEV(Le,{src:R.src,escalation:r,schema:C,onResolve:y,onEscalate:w},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:306,columnNumber:17},this):e.jsxDEV(Ue,{json:p,onJsonChange:b,requestTriage:g,onRequestTriageChange:u,triageNotes:f,onTriageNotesChange:h,isDevMode:x,disabled:!i,submitAttempted:_,showTriage:!!F&&!!A},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:314,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:302,columnNumber:13},this)})()]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailSections.tsx",lineNumber:216,columnNumber:5},this)}function he(a){if(!a)return null;try{return JSON.parse(a)}catch{return a}}function Ga(a){if(!a)return!1;try{const o=JSON.parse(a);return!!(o&&typeof o=="object"&&o._triage)}catch{return!1}}function ft(){var Ce,Re,ke,Se,_e,Te;const{id:a}=_a(),{user:o}=ca(),r=Ta(),s=Na(),{data:t,isLoading:l,refetch:m,isFetching:d}=da(a);Ra(a);const i=ma(),n=ua(),c=pa(),p=xa(),[b,g]=N.useState(!1),{data:u}=Ea((t==null?void 0:t.role)??""),{data:f}=Ca(),{data:h}=Da(),{data:x}=ba(),{isBuilder:y}=ve(),{isDevMode:w,toggleMode:_}=Fa(!1),F=f==null?void 0:f.find(V=>V.workflow_type===(t==null?void 0:t.workflow_type)),A=h==null?void 0:h.roles.find(V=>V.role===(t==null?void 0:t.role)),C=((Ce=x==null?void 0:x.telemetry)==null?void 0:Ce.traceUrl)??null,[R,v]=N.useState("resolve"),[j,D]=N.useState("{}"),{isCollapsed:T,toggle:B,collapse:H,expand:W}=ha("escalation-detail"),[M,P]=N.useState(!1),[U,ne]=N.useState(""),[ce,G]=N.useState(!1),E=((Re=t==null?void 0:t.metadata)==null?void 0:Re.form_schema)??null,J=((ke=t==null?void 0:t.metadata)==null?void 0:ke.schema_version)??null,I=ja((t==null?void 0:t.role)??"",J??void 0,J!=null),$=(J!=null?((Se=I.data)==null?void 0:Se.form_schema)??null:null)??(F==null?void 0:F.resolver_schema)??(A==null?void 0:A.form_schema)??null,L=E??$,ee=N.useRef(!1);N.useEffect(()=>{if(ee.current||J!=null&&!E&&I.data===void 0&&!I.isError)return;const V=E??($!=null&&$.properties?$:null);if(V!=null&&V.properties){ee.current=!0;const Fe={_form_schema:V};for(const[ia,ra]of Object.entries(V.properties)){const la=ra;Fe[ia]=la.default??""}D(JSON.stringify(Fe,null,2))}else L&&(ee.current=!0,D(JSON.stringify(L,null,2)))},[L,E,$,J,I.data,I.isError]);const Ee=Ga(t==null?void 0:t.escalation_payload),de=(t==null?void 0:t.subtype)==="rounds_exhausted",De=(t==null?void 0:t.subtype)==="wait_for_human";if(N.useEffect(()=>{(Ee||de)&&H("context"),De&&E&&(H("context"),W("resolver"))},[Ee,de,De,E,H,W]),l)return e.jsxDEV("div",{className:"animate-pulse space-y-8",children:[e.jsxDEV("div",{className:"h-8 bg-surface-sunken rounded w-64"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:141,columnNumber:9},this),e.jsxDEV("div",{className:"h-32 bg-surface-sunken rounded w-full"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:142,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:140,columnNumber:7},this);if(!t)return e.jsxDEV("p",{className:"text-sm text-text-secondary",children:"Escalation not found."},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:148,columnNumber:12},this);const me=Je(t),ae=me&&t.assigned_to===(o==null?void 0:o.userId),Qe=me&&!ae,ie=t.status==="resolved"||t.status==="cancelled",te=he(t.escalation_payload),je=he(t.resolver_payload),ue=he(t.envelope),Ye=!!((_e=ue==null?void 0:ue.metadata)!=null&&_e.certified),Ge=!!((Te=x==null?void 0:x.ai)!=null&&Te.enabled),q=typeof te=="object"&&te!==null&&!Array.isArray(te)?te:null,Xe=q==null?void 0:q._triage,Ze=ie?"terminal":ae?"claimed_by_me":Qe?"claimed_by_other":"available",ea=V=>{i.mutate({id:t.id,durationMinutes:V}),H("context"),H("triage"),W("resolver")},se=()=>{s.resetQueries({queryKey:["escalations"]}),s.resetQueries({queryKey:["escalationStats"]}),r(-1)},Ve=async V=>{await n.mutateAsync({id:t.id,resolverPayload:V}),se()},ye=async V=>{V&&(await c.mutateAsync({id:t.id,targetRole:V}),se())},aa=async()=>{ae||await i.mutateAsync({id:t.id,durationMinutes:30});const V=(q==null?void 0:q.diagnosis)||t.description||"";await n.mutateAsync({id:t.id,resolverPayload:{_lt:{needsTriage:!0},notes:V}}),se()},ta=async()=>{await i.mutateAsync({id:t.id,durationMinutes:0}),se()},sa=async()=>{await p.mutateAsync(t.id),g(!1),se()},we=y?e.jsxDEV("button",{onClick:_,className:"text-text-tertiary hover:text-accent transition-colors",title:w?"Switch to user view":"Switch to developer view",children:w?e.jsxDEV("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:1.5,children:e.jsxDEV("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M17.25 6.75L22.5 12l-5.25 5.25m-10.5 0L1.5 12l5.25-5.25m7.5-3l-4.5 16.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:231,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:230,columnNumber:9},this):e.jsxDEV("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:1.5,children:e.jsxDEV("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:236,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:235,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:223,columnNumber:5},this):void 0,oa=e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV(wa,{onRefresh:()=>m(),isFetching:d,apiPath:`/escalations/${t.id}`},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:244,columnNumber:7},this),we&&e.jsxDEV("div",{className:"ml-4",children:we},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:249,columnNumber:22},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:243,columnNumber:5},this);return e.jsxDEV("div",{className:"min-h-[calc(100vh-9rem)] flex flex-col",children:[e.jsxDEV(Va,{title:"Escalation",actions:oa,center:e.jsxDEV(Aa,{esc:t,className:"w-[25%] shrink-0"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:258,columnNumber:17},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:255,columnNumber:7},this),e.jsxDEV(Wa,{esc:t,claimedByMe:ae,claimed:me,isTerminal:ie,traceUrl:C,isDevMode:w,showDetails:!T("details"),onToggleDetails:()=>B("details")},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:261,columnNumber:7},this),e.jsxDEV(Qa,{isRoundsExhausted:de,payloadObj:q,isTerminal:ie,resolverPayload:je,onRetryTriage:aa,isRetrying:i.isPending||n.isPending},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:272,columnNumber:7},this),e.jsxDEV(Ya,{isCollapsed:T,toggleSection:B,esc:t,escalationPayload:te,resolverPayload:je,triageData:Xe,payloadObj:q,isTerminal:ie,claimedByMe:ae,activeView:R,metadataFormSchema:E,json:j,onJsonChange:D,requestTriage:M,onRequestTriageChange:P,triageNotes:U,onTriageNotesChange:ne,isDevMode:w,onResolve:Ve,onEscalate:ye,submitAttempted:ce,isCertified:Ye,hasAI:Ge},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:281,columnNumber:7},this),e.jsxDEV("div",{className:"flex-1"},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:307,columnNumber:7},this),e.jsxDEV(Ha,{mode:Ze,activeView:R,onActiveViewChange:v,onClaim:ea,claimPending:i.isPending,workflowType:t.workflow_type,json:j,onResolve:Ve,resolvePending:n.isPending,resolveError:n.error,requestTriage:M,triageNotes:U,currentRole:t.role,escalationTargets:((u==null?void 0:u.targets)??[]).filter(V=>V!==t.role),onEscalate:ye,escalatePending:c.isPending,escalateError:c.error,onRelease:ta,releasePending:i.isPending,onCancel:()=>g(!0),assignedTo:t.assigned_to,assignedUntil:t.assigned_until,onSubmitAttempt:()=>G(!0)},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:309,columnNumber:7},this),e.jsxDEV(va,{open:b,onClose:()=>g(!1),onConfirm:sa,isPending:p.isPending,error:p.error},void 0,!1,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:335,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/operator/escalation-detail/EscalationDetailPage.tsx",lineNumber:254,columnNumber:5},this)}export{ft as EscalationDetailPage};
6
- //# sourceMappingURL=index-eshNd6NY.js.map