@hotmeshio/long-tail 0.22.0 → 0.22.1

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 (265) hide show
  1. package/build/api/escalations/accumulate.d.ts +10 -1
  2. package/build/api/escalations/accumulate.js +83 -15
  3. package/build/api/escalations/metadata.d.ts +5 -0
  4. package/build/api/escalations/metadata.js +6 -2
  5. package/build/api/scan-codes/choice.js +3 -2
  6. package/build/api/scan-codes/verbs.d.ts +6 -1
  7. package/build/api/scan-codes/verbs.js +13 -3
  8. package/build/api/workflows/invocation.d.ts +8 -4
  9. package/build/api/workflows/invocation.js +26 -9
  10. package/build/lib/cli/commands/workflows.js +9 -4
  11. package/build/routes/escalations/accumulate.js +13 -6
  12. package/build/sdk/index.d.ts +3 -0
  13. package/build/services/escalation/crud.d.ts +2 -2
  14. package/build/services/escalation/crud.js +4 -2
  15. package/build/services/escalation/facet-sql.js +8 -0
  16. package/build/services/escalation/sql.d.ts +4 -2
  17. package/build/services/escalation/sql.js +10 -2
  18. package/build/services/export/index.d.ts +8 -3
  19. package/build/services/export/index.js +15 -21
  20. package/build/services/pipelines/events.js +2 -1
  21. package/build/services/pipelines/execution-builder.js +2 -1
  22. package/build/services/pipelines/queries.js +2 -1
  23. package/build/services/scan-code/validate.js +19 -0
  24. package/build/services/workflow-state.d.ts +21 -0
  25. package/build/services/workflow-state.js +39 -0
  26. package/build/shared/workflow-state.d.ts +17 -0
  27. package/build/shared/workflow-state.js +29 -0
  28. package/build/system/mcp-servers/admin/escalations.js +8 -4
  29. package/build/system/mcp-servers/admin/schemas.d.ts +38 -0
  30. package/build/system/mcp-servers/admin/schemas.js +4 -0
  31. package/build/system/mcp-servers/admin/workflows.js +20 -31
  32. package/build/system/seed/tool-manifests-admin.d.ts +94 -0
  33. package/build/system/seed/tool-manifests-admin.js +3 -3
  34. package/build/tsconfig.tsbuildinfo +1 -1
  35. package/build/types/facets.d.ts +14 -0
  36. package/build/types/index.d.ts +1 -1
  37. package/build/types/scan-code.d.ts +10 -1
  38. package/build/types/scan-code.js +0 -11
  39. package/dashboard/dist/assets/{AdminDashboard-Covdam48.js → AdminDashboard-BbWve-Ax.js} +2 -2
  40. package/dashboard/dist/assets/{AdminDashboard-Covdam48.js.map → AdminDashboard-BbWve-Ax.js.map} +1 -1
  41. package/dashboard/dist/assets/{AgentConfigPage-CE1k6J5r.js → AgentConfigPage-M-9eTKhP.js} +2 -2
  42. package/dashboard/dist/assets/{AgentConfigPage-CE1k6J5r.js.map → AgentConfigPage-M-9eTKhP.js.map} +1 -1
  43. package/dashboard/dist/assets/{AgentDetailPage-CWJZIZP1.js → AgentDetailPage-CsakSlx5.js} +3 -3
  44. package/dashboard/dist/assets/{AgentDetailPage-CWJZIZP1.js.map → AgentDetailPage-CsakSlx5.js.map} +1 -1
  45. package/dashboard/dist/assets/{AgentsPage---Dg5ufF.js → AgentsPage-Cj_cRTT1.js} +2 -2
  46. package/dashboard/dist/assets/{AgentsPage---Dg5ufF.js.map → AgentsPage-Cj_cRTT1.js.map} +1 -1
  47. package/dashboard/dist/assets/AvailableEscalationsPage-BXJmMBM1.js +2 -0
  48. package/dashboard/dist/assets/AvailableEscalationsPage-BXJmMBM1.js.map +1 -0
  49. package/dashboard/dist/assets/{BotPicker-D3drO3-T.js → BotPicker-CGB16rYU.js} +2 -2
  50. package/dashboard/dist/assets/{BotPicker-D3drO3-T.js.map → BotPicker-CGB16rYU.js.map} +1 -1
  51. package/dashboard/dist/assets/{BulkAssignModal-BOAWsViq.js → BulkAssignModal-MjxcU7N1.js} +2 -2
  52. package/dashboard/dist/assets/{BulkAssignModal-BOAWsViq.js.map → BulkAssignModal-MjxcU7N1.js.map} +1 -1
  53. package/dashboard/dist/assets/{CapabilitiesPage-RGgD3YZO.js → CapabilitiesPage-BxadotXn.js} +2 -2
  54. package/dashboard/dist/assets/{CapabilitiesPage-RGgD3YZO.js.map → CapabilitiesPage-BxadotXn.js.map} +1 -1
  55. package/dashboard/dist/assets/{CollapsibleSection-DNkZn87n.js → CollapsibleSection-BBNpP-6h.js} +2 -2
  56. package/dashboard/dist/assets/{CollapsibleSection-DNkZn87n.js.map → CollapsibleSection-BBNpP-6h.js.map} +1 -1
  57. package/dashboard/dist/assets/{ConfirmDeleteModal-BqzOwhPr.js → ConfirmDeleteModal-D_kAbT_D.js} +2 -2
  58. package/dashboard/dist/assets/{ConfirmDeleteModal-BqzOwhPr.js.map → ConfirmDeleteModal-D_kAbT_D.js.map} +1 -1
  59. package/dashboard/dist/assets/{CountdownTimer-BaexQMK6.js → CountdownTimer-CI_JOAvk.js} +2 -2
  60. package/dashboard/dist/assets/{CountdownTimer-BaexQMK6.js.map → CountdownTimer-CI_JOAvk.js.map} +1 -1
  61. package/dashboard/dist/assets/{CredentialsPage-D7abp0aS.js → CredentialsPage-C9OA1Q2J.js} +2 -2
  62. package/dashboard/dist/assets/{CredentialsPage-D7abp0aS.js.map → CredentialsPage-C9OA1Q2J.js.map} +1 -1
  63. package/dashboard/dist/assets/{CronLabel-DZiWmTwJ.js → CronLabel-sxLLBf2I.js} +2 -2
  64. package/dashboard/dist/assets/{CronLabel-DZiWmTwJ.js.map → CronLabel-sxLLBf2I.js.map} +1 -1
  65. package/dashboard/dist/assets/{DropZone-f1o-GLM8.js → DropZone-B1Tdfddc.js} +2 -2
  66. package/dashboard/dist/assets/{DropZone-f1o-GLM8.js.map → DropZone-B1Tdfddc.js.map} +1 -1
  67. package/dashboard/dist/assets/{ElapsedCell-BdGO_w4v.js → ElapsedCell-jH9m8Dgl.js} +2 -2
  68. package/dashboard/dist/assets/{ElapsedCell-BdGO_w4v.js.map → ElapsedCell-jH9m8Dgl.js.map} +1 -1
  69. package/dashboard/dist/assets/{EntityTimelinePanel-DIDcF5Yu.js → EntityTimelinePanel-Dl3Nr2kk.js} +2 -2
  70. package/dashboard/dist/assets/{EntityTimelinePanel-DIDcF5Yu.js.map → EntityTimelinePanel-Dl3Nr2kk.js.map} +1 -1
  71. package/dashboard/dist/assets/{EscalationListSchemaPage-C28rn9XC.js → EscalationListSchemaPage-DAK6It5J.js} +3 -3
  72. package/dashboard/dist/assets/{EscalationListSchemaPage-C28rn9XC.js.map → EscalationListSchemaPage-DAK6It5J.js.map} +1 -1
  73. package/dashboard/dist/assets/{EscalationListView-CkBnkpDJ.js → EscalationListView-CAHbdxKR.js} +2 -2
  74. package/dashboard/dist/assets/{EscalationListView-CkBnkpDJ.js.map → EscalationListView-CAHbdxKR.js.map} +1 -1
  75. package/dashboard/dist/assets/EscalationSchemaPage-DotfAMCL.js +9 -0
  76. package/dashboard/dist/assets/EscalationSchemaPage-DotfAMCL.js.map +1 -0
  77. package/dashboard/dist/assets/EscalationTimeline-DqmFydnU.js +2 -0
  78. package/dashboard/dist/assets/EscalationTimeline-DqmFydnU.js.map +1 -0
  79. package/dashboard/dist/assets/{EscalationTitleSelect-CzKfavri.js → EscalationTitleSelect-BpRquguO.js} +2 -2
  80. package/dashboard/dist/assets/{EscalationTitleSelect-CzKfavri.js.map → EscalationTitleSelect-BpRquguO.js.map} +1 -1
  81. package/dashboard/dist/assets/{EscalationsOverview-Tdu3Yx2c.js → EscalationsOverview-DtGOqnP4.js} +2 -2
  82. package/dashboard/dist/assets/{EscalationsOverview-Tdu3Yx2c.js.map → EscalationsOverview-DtGOqnP4.js.map} +1 -1
  83. package/dashboard/dist/assets/{EventTable-DiIxOJwO.js → EventTable-DSHqKyX2.js} +2 -2
  84. package/dashboard/dist/assets/{EventTable-DiIxOJwO.js.map → EventTable-DSHqKyX2.js.map} +1 -1
  85. package/dashboard/dist/assets/{FilterBar-CvMBCVIo.js → FilterBar-Dxd0wNSW.js} +2 -2
  86. package/dashboard/dist/assets/{FilterBar-CvMBCVIo.js.map → FilterBar-Dxd0wNSW.js.map} +1 -1
  87. package/dashboard/dist/assets/{GraphInvokePage-DO-yyhi6.js → GraphInvokePage-ChqqGkro.js} +2 -2
  88. package/dashboard/dist/assets/{GraphInvokePage-DO-yyhi6.js.map → GraphInvokePage-ChqqGkro.js.map} +1 -1
  89. package/dashboard/dist/assets/{HomePage-DSS3eHR2.js → HomePage-ByKesG8w.js} +2 -2
  90. package/dashboard/dist/assets/{HomePage-DSS3eHR2.js.map → HomePage-ByKesG8w.js.map} +1 -1
  91. package/dashboard/dist/assets/{ListToolbar-C3-Tqqub.js → ListToolbar-Ddz_S2av.js} +2 -2
  92. package/dashboard/dist/assets/{ListToolbar-C3-Tqqub.js.map → ListToolbar-Ddz_S2av.js.map} +1 -1
  93. package/dashboard/dist/assets/{McpOverview-DEJmsdVi.js → McpOverview-CVe13tEv.js} +2 -2
  94. package/dashboard/dist/assets/{McpOverview-DEJmsdVi.js.map → McpOverview-CVe13tEv.js.map} +1 -1
  95. package/dashboard/dist/assets/McpQueryDetailPage-BQYF2Mjq.js +5 -0
  96. package/dashboard/dist/assets/McpQueryDetailPage-BQYF2Mjq.js.map +1 -0
  97. package/dashboard/dist/assets/{McpQueryPage-BBcG_UuU.js → McpQueryPage-DZi5lm7s.js} +2 -2
  98. package/dashboard/dist/assets/{McpQueryPage-BBcG_UuU.js.map → McpQueryPage-DZi5lm7s.js.map} +1 -1
  99. package/dashboard/dist/assets/{McpRunDetailPage-C6xw0kBg.js → McpRunDetailPage-DreARTE1.js} +2 -2
  100. package/dashboard/dist/assets/{McpRunDetailPage-C6xw0kBg.js.map → McpRunDetailPage-DreARTE1.js.map} +1 -1
  101. package/dashboard/dist/assets/{McpRunsPage-CRQqrF4Q.js → McpRunsPage-DmO0YVhT.js} +2 -2
  102. package/dashboard/dist/assets/{McpRunsPage-CRQqrF4Q.js.map → McpRunsPage-DmO0YVhT.js.map} +1 -1
  103. package/dashboard/dist/assets/{NamespacePill-DADRJOUl.js → NamespacePill-DwM5pNA4.js} +2 -2
  104. package/dashboard/dist/assets/{NamespacePill-DADRJOUl.js.map → NamespacePill-DwM5pNA4.js.map} +1 -1
  105. package/dashboard/dist/assets/{OperationsPage-Dlfwzf-0.js → OperationsPage-DpjCO85T.js} +2 -2
  106. package/dashboard/dist/assets/{OperationsPage-Dlfwzf-0.js.map → OperationsPage-DpjCO85T.js.map} +1 -1
  107. package/dashboard/dist/assets/{OperatorDashboard-DoiDGZ9R.js → OperatorDashboard-Vv_MEBkv.js} +2 -2
  108. package/dashboard/dist/assets/{OperatorDashboard-DoiDGZ9R.js.map → OperatorDashboard-Vv_MEBkv.js.map} +1 -1
  109. package/dashboard/dist/assets/{PageHeader-Csq434-v.js → PageHeader-CMd3f4bz.js} +2 -2
  110. package/dashboard/dist/assets/{PageHeader-Csq434-v.js.map → PageHeader-CMd3f4bz.js.map} +1 -1
  111. package/dashboard/dist/assets/{PageHeaderWithStats-CSnk1p5A.js → PageHeaderWithStats-DHj8Mqox.js} +2 -2
  112. package/dashboard/dist/assets/{PageHeaderWithStats-CSnk1p5A.js.map → PageHeaderWithStats-DHj8Mqox.js.map} +1 -1
  113. package/dashboard/dist/assets/{PersonaDetailPage-BzbA4Prr.js → PersonaDetailPage-CW-2uBHY.js} +2 -2
  114. package/dashboard/dist/assets/{PersonaDetailPage-BzbA4Prr.js.map → PersonaDetailPage-CW-2uBHY.js.map} +1 -1
  115. package/dashboard/dist/assets/{PersonasPage-B36yn4hU.js → PersonasPage-CO6yYQdm.js} +2 -2
  116. package/dashboard/dist/assets/{PersonasPage-B36yn4hU.js.map → PersonasPage-CO6yYQdm.js.map} +1 -1
  117. package/dashboard/dist/assets/{PortalPage-BkD4YfDf.js → PortalPage-DcNqhBlg.js} +2 -2
  118. package/dashboard/dist/assets/{PortalPage-BkD4YfDf.js.map → PortalPage-DcNqhBlg.js.map} +1 -1
  119. package/dashboard/dist/assets/{ProcessDetailPage-BT0eiBWY.js → ProcessDetailPage-BuipGZcC.js} +2 -2
  120. package/dashboard/dist/assets/{ProcessDetailPage-BT0eiBWY.js.map → ProcessDetailPage-BuipGZcC.js.map} +1 -1
  121. package/dashboard/dist/assets/{ProcessesListPage-BEqeeNae.js → ProcessesListPage-D9DYntvl.js} +2 -2
  122. package/dashboard/dist/assets/{ProcessesListPage-BEqeeNae.js.map → ProcessesListPage-D9DYntvl.js.map} +1 -1
  123. package/dashboard/dist/assets/ResolverForm-BVG8X0sS.js +8 -0
  124. package/dashboard/dist/assets/ResolverForm-BVG8X0sS.js.map +1 -0
  125. package/dashboard/dist/assets/{RoleDetailPage-BFuLNJXa.js → RoleDetailPage-KCXDqoJz.js} +3 -3
  126. package/dashboard/dist/assets/{RoleDetailPage-BFuLNJXa.js.map → RoleDetailPage-KCXDqoJz.js.map} +1 -1
  127. package/dashboard/dist/assets/{RolePill-BafrASDX.js → RolePill-Di2CAHuD.js} +2 -2
  128. package/dashboard/dist/assets/{RolePill-BafrASDX.js.map → RolePill-Di2CAHuD.js.map} +1 -1
  129. package/dashboard/dist/assets/{RolesPage-80quJU5-.js → RolesPage-0QJOBSzF.js} +2 -2
  130. package/dashboard/dist/assets/{RolesPage-80quJU5-.js.map → RolesPage-0QJOBSzF.js.map} +1 -1
  131. package/dashboard/dist/assets/{RunAsSelector-BoePhWVD.js → RunAsSelector-Dh4lyyRo.js} +2 -2
  132. package/dashboard/dist/assets/{RunAsSelector-BoePhWVD.js.map → RunAsSelector-Dh4lyyRo.js.map} +1 -1
  133. package/dashboard/dist/assets/{ScanCodesPage-Cu1bKEix.js → ScanCodesPage-CUhCz-Yr.js} +2 -2
  134. package/dashboard/dist/assets/{ScanCodesPage-Cu1bKEix.js.map → ScanCodesPage-CUhCz-Yr.js.map} +1 -1
  135. package/dashboard/dist/assets/{ScanSchemeDetailPage-D9AbS6UY.js → ScanSchemeDetailPage-qzXKNqJK.js} +2 -2
  136. package/dashboard/dist/assets/{ScanSchemeDetailPage-D9AbS6UY.js.map → ScanSchemeDetailPage-qzXKNqJK.js.map} +1 -1
  137. package/dashboard/dist/assets/{ScanStationPage-gcZGefvT.js → ScanStationPage-D8e8cG3t.js} +2 -2
  138. package/dashboard/dist/assets/{ScanStationPage-gcZGefvT.js.map → ScanStationPage-D8e8cG3t.js.map} +1 -1
  139. package/dashboard/dist/assets/{ScopeBadge-b6MIBiYD.js → ScopeBadge-CSItPVOH.js} +2 -2
  140. package/dashboard/dist/assets/{ScopeBadge-b6MIBiYD.js.map → ScopeBadge-CSItPVOH.js.map} +1 -1
  141. package/dashboard/dist/assets/{StickyPagination-9ITrei_d.js → StickyPagination-BSUyf5ja.js} +2 -2
  142. package/dashboard/dist/assets/{StickyPagination-9ITrei_d.js.map → StickyPagination-BSUyf5ja.js.map} +1 -1
  143. package/dashboard/dist/assets/{StreamMessageDetail-BkYvEHFY.js → StreamMessageDetail--tp7l2Sd.js} +2 -2
  144. package/dashboard/dist/assets/{StreamMessageDetail-BkYvEHFY.js.map → StreamMessageDetail--tp7l2Sd.js.map} +1 -1
  145. package/dashboard/dist/assets/{SwimlaneTimeline-B1rotFix.js → SwimlaneTimeline-CxBZ2THh.js} +2 -2
  146. package/dashboard/dist/assets/{SwimlaneTimeline-B1rotFix.js.map → SwimlaneTimeline-CxBZ2THh.js.map} +1 -1
  147. package/dashboard/dist/assets/{TagInput-ZrIIrEUP.js → TagInput-CAgdLN_b.js} +2 -2
  148. package/dashboard/dist/assets/{TagInput-ZrIIrEUP.js.map → TagInput-CAgdLN_b.js.map} +1 -1
  149. package/dashboard/dist/assets/{TaskDetailPage-zhn_U_eC.js → TaskDetailPage-BJ1QrmPH.js} +2 -2
  150. package/dashboard/dist/assets/{TaskDetailPage-zhn_U_eC.js.map → TaskDetailPage-BJ1QrmPH.js.map} +1 -1
  151. package/dashboard/dist/assets/{TaskQueuePill-DkQ1uc6y.js → TaskQueuePill-h0oorVMe.js} +2 -2
  152. package/dashboard/dist/assets/{TaskQueuePill-DkQ1uc6y.js.map → TaskQueuePill-h0oorVMe.js.map} +1 -1
  153. package/dashboard/dist/assets/{TasksListPage-CNbNeagx.js → TasksListPage-5BydGWmt.js} +2 -2
  154. package/dashboard/dist/assets/{TasksListPage-CNbNeagx.js.map → TasksListPage-5BydGWmt.js.map} +1 -1
  155. package/dashboard/dist/assets/{TimeAgo-0YVMBwls.js → TimeAgo-CCnz84Y4.js} +2 -2
  156. package/dashboard/dist/assets/{TimeAgo-0YVMBwls.js.map → TimeAgo-CCnz84Y4.js.map} +1 -1
  157. package/dashboard/dist/assets/{TimestampCell-DB7r3np8.js → TimestampCell-D0ru7Lya.js} +2 -2
  158. package/dashboard/dist/assets/{TimestampCell-DB7r3np8.js.map → TimestampCell-D0ru7Lya.js.map} +1 -1
  159. package/dashboard/dist/assets/{ToolPill-Baxm02L6.js → ToolPill-CQCsVdzD.js} +2 -2
  160. package/dashboard/dist/assets/{ToolPill-Baxm02L6.js.map → ToolPill-CQCsVdzD.js.map} +1 -1
  161. package/dashboard/dist/assets/{ToolTestPanel-BLfA02wv.js → ToolTestPanel-3Kpofmen.js} +2 -2
  162. package/dashboard/dist/assets/{ToolTestPanel-BLfA02wv.js.map → ToolTestPanel-3Kpofmen.js.map} +1 -1
  163. package/dashboard/dist/assets/{TopicDetailPage-eAqPKShq.js → TopicDetailPage-BaBXD_AK.js} +4 -4
  164. package/dashboard/dist/assets/{TopicDetailPage-eAqPKShq.js.map → TopicDetailPage-BaBXD_AK.js.map} +1 -1
  165. package/dashboard/dist/assets/{TopicsPage-BNNWD-zl.js → TopicsPage-Cnm1AAjh.js} +2 -2
  166. package/dashboard/dist/assets/{TopicsPage-BNNWD-zl.js.map → TopicsPage-Cnm1AAjh.js.map} +1 -1
  167. package/dashboard/dist/assets/{UserName-Pw46tO_k.js → UserName-CXsdPiMZ.js} +2 -2
  168. package/dashboard/dist/assets/{UserName-Pw46tO_k.js.map → UserName-CXsdPiMZ.js.map} +1 -1
  169. package/dashboard/dist/assets/{WorkflowExecutionPage-DvA51lT3.js → WorkflowExecutionPage-zx3AUJFd.js} +2 -2
  170. package/dashboard/dist/assets/{WorkflowExecutionPage-DvA51lT3.js.map → WorkflowExecutionPage-zx3AUJFd.js.map} +1 -1
  171. package/dashboard/dist/assets/{WorkflowPill-ZepbO_ny.js → WorkflowPill-Dg7BDTyM.js} +2 -2
  172. package/dashboard/dist/assets/{WorkflowPill-ZepbO_ny.js.map → WorkflowPill-Dg7BDTyM.js.map} +1 -1
  173. package/dashboard/dist/assets/{WorkflowsDashboard-DFDTwnhn.js → WorkflowsDashboard-DfAGK1l7.js} +2 -2
  174. package/dashboard/dist/assets/{WorkflowsDashboard-DFDTwnhn.js.map → WorkflowsDashboard-DfAGK1l7.js.map} +1 -1
  175. package/dashboard/dist/assets/{WorkflowsOverview-5i2Tcy-p.js → WorkflowsOverview-QIYvoa13.js} +2 -2
  176. package/dashboard/dist/assets/{WorkflowsOverview-5i2Tcy-p.js.map → WorkflowsOverview-QIYvoa13.js.map} +1 -1
  177. package/dashboard/dist/assets/{YamlWorkflowDetailPage-p4VEYZS0.js → YamlWorkflowDetailPage-DGgO3hyB.js} +2 -2
  178. package/dashboard/dist/assets/{YamlWorkflowDetailPage-p4VEYZS0.js.map → YamlWorkflowDetailPage-DGgO3hyB.js.map} +1 -1
  179. package/dashboard/dist/assets/{YamlWorkflowsPage-Cq-hMVxl.js → YamlWorkflowsPage-CEsHm0B9.js} +2 -2
  180. package/dashboard/dist/assets/{YamlWorkflowsPage-Cq-hMVxl.js.map → YamlWorkflowsPage-CEsHm0B9.js.map} +1 -1
  181. package/dashboard/dist/assets/{agents-EyBPJMYa.js → agents-v_HH3Rji.js} +2 -2
  182. package/dashboard/dist/assets/{agents-EyBPJMYa.js.map → agents-v_HH3Rji.js.map} +1 -1
  183. package/dashboard/dist/assets/{bots-DX6jjqtF.js → bots-bwvWYrXz.js} +2 -2
  184. package/dashboard/dist/assets/{bots-DX6jjqtF.js.map → bots-bwvWYrXz.js.map} +1 -1
  185. package/dashboard/dist/assets/{capabilities-ZdLv9xBQ.js → capabilities-D4vaw_nQ.js} +2 -2
  186. package/dashboard/dist/assets/{capabilities-ZdLv9xBQ.js.map → capabilities-D4vaw_nQ.js.map} +1 -1
  187. package/dashboard/dist/assets/{controlplane-CpvZaJuw.js → controlplane-CiiZ6LJF.js} +2 -2
  188. package/dashboard/dist/assets/{controlplane-CpvZaJuw.js.map → controlplane-CiiZ6LJF.js.map} +1 -1
  189. package/dashboard/dist/assets/{escalation-columns-Mvsze5eV.js → escalation-columns-Dv-MB3eC.js} +2 -2
  190. package/dashboard/dist/assets/{escalation-columns-Mvsze5eV.js.map → escalation-columns-Dv-MB3eC.js.map} +1 -1
  191. package/dashboard/dist/assets/{index-oFKUFGQL.js → index-2tzsxFat.js} +2 -2
  192. package/dashboard/dist/assets/{index-oFKUFGQL.js.map → index-2tzsxFat.js.map} +1 -1
  193. package/dashboard/dist/assets/{index-DZhtP2Ok.js → index-BLB77tc8.js} +2 -2
  194. package/dashboard/dist/assets/{index-DZhtP2Ok.js.map → index-BLB77tc8.js.map} +1 -1
  195. package/dashboard/dist/assets/{index-PfSRKerc.js → index-C3WutFpT.js} +2 -2
  196. package/dashboard/dist/assets/{index-PfSRKerc.js.map → index-C3WutFpT.js.map} +1 -1
  197. package/dashboard/dist/assets/{index-DkrBFFSO.js → index-C4Lce2ET.js} +2 -2
  198. package/dashboard/dist/assets/{index-DkrBFFSO.js.map → index-C4Lce2ET.js.map} +1 -1
  199. package/dashboard/dist/assets/index-CT-FN6CW.js +3 -0
  200. package/dashboard/dist/assets/index-CT-FN6CW.js.map +1 -0
  201. package/dashboard/dist/assets/{index-Eo-l3Lqo.js → index-C_ISDOWJ.js} +2 -2
  202. package/dashboard/dist/assets/{index-Eo-l3Lqo.js.map → index-C_ISDOWJ.js.map} +1 -1
  203. package/dashboard/dist/assets/{index-Bhb89oHH.js → index-CcuvGdvf.js} +2 -2
  204. package/dashboard/dist/assets/{index-Bhb89oHH.js.map → index-CcuvGdvf.js.map} +1 -1
  205. package/dashboard/dist/assets/{index-BbCjGO3M.js → index-CjenRVX_.js} +2 -2
  206. package/dashboard/dist/assets/{index-BbCjGO3M.js.map → index-CjenRVX_.js.map} +1 -1
  207. package/dashboard/dist/assets/{index-DGmzBY9D.js → index-CzjUgFt_.js} +2 -2
  208. package/dashboard/dist/assets/{index-DGmzBY9D.js.map → index-CzjUgFt_.js.map} +1 -1
  209. package/dashboard/dist/assets/{index-D-Xs4rAW.js → index-D2VKBMng.js} +2 -2
  210. package/dashboard/dist/assets/{index-D-Xs4rAW.js.map → index-D2VKBMng.js.map} +1 -1
  211. package/dashboard/dist/assets/{index-z5Hpeidu.js → index-D6pBLZFu.js} +2 -2
  212. package/dashboard/dist/assets/{index-z5Hpeidu.js.map → index-D6pBLZFu.js.map} +1 -1
  213. package/dashboard/dist/assets/{index-Cn8uJsd7.js → index-IJmtbuLh.js} +2 -2
  214. package/dashboard/dist/assets/{index-Cn8uJsd7.js.map → index-IJmtbuLh.js.map} +1 -1
  215. package/dashboard/dist/assets/{index-CgUcYveM.js → index-N71QQ3J5.js} +5 -5
  216. package/dashboard/dist/assets/index-N71QQ3J5.js.map +1 -0
  217. package/dashboard/dist/assets/{knowledge-CgloEkaf.js → knowledge-D1YP2NzS.js} +2 -2
  218. package/dashboard/dist/assets/{knowledge-CgloEkaf.js.map → knowledge-D1YP2NzS.js.map} +1 -1
  219. package/dashboard/dist/assets/{mcp-Bix7QYO7.js → mcp-Bb5psC61.js} +2 -2
  220. package/dashboard/dist/assets/{mcp-Bix7QYO7.js.map → mcp-Bb5psC61.js.map} +1 -1
  221. package/dashboard/dist/assets/{mcp-query-o-sGX2ST.js → mcp-query-D5jUdZwN.js} +2 -2
  222. package/dashboard/dist/assets/{mcp-query-o-sGX2ST.js.map → mcp-query-D5jUdZwN.js.map} +1 -1
  223. package/dashboard/dist/assets/{personas-30azkJ_s.js → personas-CDndbkp4.js} +2 -2
  224. package/dashboard/dist/assets/{personas-30azkJ_s.js.map → personas-CDndbkp4.js.map} +1 -1
  225. package/dashboard/dist/assets/{pipelines-Bfk2GFK7.js → pipelines-Dq3kNhKu.js} +2 -2
  226. package/dashboard/dist/assets/{pipelines-Bfk2GFK7.js.map → pipelines-Dq3kNhKu.js.map} +1 -1
  227. package/dashboard/dist/assets/{tasks-CpdopewW.js → tasks-BlpDsWCy.js} +2 -2
  228. package/dashboard/dist/assets/{tasks-CpdopewW.js.map → tasks-BlpDsWCy.js.map} +1 -1
  229. package/dashboard/dist/assets/{topics--bvCV9Yp.js → topics-C0YaR9fu.js} +2 -2
  230. package/dashboard/dist/assets/{topics--bvCV9Yp.js.map → topics-C0YaR9fu.js.map} +1 -1
  231. package/dashboard/dist/assets/{useDebouncedValue-Da0lPmj3.js → useDebouncedValue-B-KC5ba3.js} +2 -2
  232. package/dashboard/dist/assets/{useDebouncedValue-Da0lPmj3.js.map → useDebouncedValue-B-KC5ba3.js.map} +1 -1
  233. package/dashboard/dist/assets/{useNamespace-DD_Esl6n.js → useNamespace-Dkr5g2Ac.js} +2 -2
  234. package/dashboard/dist/assets/{useNamespace-DD_Esl6n.js.map → useNamespace-Dkr5g2Ac.js.map} +1 -1
  235. package/dashboard/dist/assets/{useYamlActivityEvents-AeAhZJJk.js → useYamlActivityEvents-BANBOshA.js} +2 -2
  236. package/dashboard/dist/assets/{useYamlActivityEvents-AeAhZJJk.js.map → useYamlActivityEvents-BANBOshA.js.map} +1 -1
  237. package/dashboard/dist/assets/{vendor-icons-B7OcUM6b.js → vendor-icons-CeVtUKyP.js} +2 -2
  238. package/dashboard/dist/assets/{vendor-icons-B7OcUM6b.js.map → vendor-icons-CeVtUKyP.js.map} +1 -1
  239. package/dashboard/dist/assets/{yaml-workflows-BHAOOGvn.js → yaml-workflows-BLYoJfmB.js} +2 -2
  240. package/dashboard/dist/assets/{yaml-workflows-BHAOOGvn.js.map → yaml-workflows-BLYoJfmB.js.map} +1 -1
  241. package/dashboard/dist/index.html +2 -2
  242. package/docs/accumulator.md +37 -1
  243. package/docs/api/mcp/admin.md +3 -2
  244. package/docs/api/sdk/escalations.md +6 -0
  245. package/docs/api/sdk/exports.md +1 -1
  246. package/docs/api/sdk/workflows.md +23 -4
  247. package/docs/cli.md +1 -1
  248. package/docs/dashboard.md +1 -1
  249. package/docs/faceted-routing.md +2 -0
  250. package/docs/hitl/x-lt-widget.md +5 -0
  251. package/docs/scan-codes.md +40 -7
  252. package/package.json +1 -1
  253. package/dashboard/dist/assets/AvailableEscalationsPage-CpbC8oTN.js +0 -2
  254. package/dashboard/dist/assets/AvailableEscalationsPage-CpbC8oTN.js.map +0 -1
  255. package/dashboard/dist/assets/EscalationSchemaPage-W5r0A1kj.js +0 -9
  256. package/dashboard/dist/assets/EscalationSchemaPage-W5r0A1kj.js.map +0 -1
  257. package/dashboard/dist/assets/EscalationTimeline-DKyTz6sM.js +0 -2
  258. package/dashboard/dist/assets/EscalationTimeline-DKyTz6sM.js.map +0 -1
  259. package/dashboard/dist/assets/McpQueryDetailPage-DYJr16l7.js +0 -5
  260. package/dashboard/dist/assets/McpQueryDetailPage-DYJr16l7.js.map +0 -1
  261. package/dashboard/dist/assets/ResolverForm-BwgjIX97.js +0 -7
  262. package/dashboard/dist/assets/ResolverForm-BwgjIX97.js.map +0 -1
  263. package/dashboard/dist/assets/index-B_GT23TE.js +0 -3
  264. package/dashboard/dist/assets/index-B_GT23TE.js.map +0 -1
  265. package/dashboard/dist/assets/index-CgUcYveM.js.map +0 -1
@@ -1,7 +0,0 @@
1
- import{j as s,a as g}from"./vendor-query-DvWWuNIB.js";import{ai as rt,aj as Xt,ab as Kt,aH as je,aI as zt,aA as dt,aJ as Ne,Z as ve,aw as ke,aK as we,aL as Ee,m as Ae,p as Ie,U as Ce,aM as Oe,aN as Te,z as Re,aO as _e,aP as Le,aQ as Se,aR as Me,aS as Fe,aT as Pe,S as $e,aU as De,aV as We,az as Ue,K as Je,A as Ge,b as He,aW as qe,a as Ve,aX as Be,aY as Ye,aZ as Xe,af as Ke,am as ze,a_ as Qe,a$ as Ze,b0 as ts,b1 as es,b2 as ss,b3 as ns,b4 as rs,b5 as is,a2 as as,M as os,b6 as ls,b7 as cs,k as ds,b8 as us,b9 as xs,a1 as ps,ba as fs,bb as ms,bc as gs,bd as bs,G as hs,be as ys,bf as js,bg as Ns,bh as vs,bi as ks,bj as ws,q as Es,a6 as As,bk as Is,ax as Cs,bl as Os,bm as Ts,bn as Rs,bo as _s,bp as Ls,aq as Ss,bq as Ms,f as Fs,aC as Ps,br as $s,bs as Ds,bt as Ws,an as Qt,_ as Us,W as Js,bu as Gs,a5 as Zt}from"./vendor-icons-B7OcUM6b.js";import{m as te,g as xt,H as Hs,e as qs,a as q,r as pt,s as Vs,b as Bs,c as ee}from"./EscalationListView-CkBnkpDJ.js";import{af as K,al as Ys,aF as ft,$ as Xs,a9 as Ks,s as zs,aG as Qs,J as Zs,aH as tn,O as en,aI as sn,ar as nn,aJ as rn,aK as an,i as on,M as se,au as ln,av as cn,aw as dn}from"./index-CgUcYveM.js";import{L as it}from"./vendor-react-_9U4mKFr.js";import{S as un}from"./StatusBadge-DHVwxre2.js";import{E as xn}from"./constants-CeBBTzf5.js";import{V as pn}from"./WorkflowPill-ZepbO_ny.js";const fn={SCHEMA_VALIDATION:"schema_validation"};function mn(t){return typeof t=="object"&&t!==null&&t.code===fn.SCHEMA_VALIDATION&&Array.isArray(t.violations)}function Ot(t,e={}){const r=te(e,t),n={_form_schema:t};for(const[i,a]of Object.entries(t.properties??{})){const o=a.type==="object"?{}:"";n[i]=r[i]??a.default??o}return JSON.stringify(n,null,2)}function U(t,e){const r=e==null?void 0:e.title;if(typeof r=="string"&&r.trim().length>0)return r.trim();const n=t.split(/[_-]+/).filter(Boolean);return n.length<=1?t:n.map(i=>gn(i)?i:i.charAt(0).toUpperCase()+i.slice(1)).join(" ")}function gn(t){return t.length>1&&t===t.toUpperCase()&&/[A-Z]/.test(t)}function ne({errors:t,schema:e}){const r=n=>{const i=document.querySelector(`[data-field-key="${n}"]`);i&&(i.scrollIntoView({behavior:"smooth",block:"center"}),i.focus({preventScroll:!0}))};return t.length===0?s.jsx("p",{className:"text-xs text-text-tertiary italic",children:"No errors to display."}):s.jsxs("div",{className:"space-y-1",role:"alert","aria-live":"polite",children:[s.jsxs("p",{className:"text-2xs font-semibold uppercase tracking-wider text-status-error mb-4",children:[t.length," ",t.length===1?"issue":"issues"," to resolve"]}),s.jsx("div",{className:"space-y-1.5",children:t.map(({field:n,message:i})=>{var a;return s.jsxs("button",{onClick:()=>r(n),className:"w-full text-left flex items-start gap-3 px-3 py-2.5 rounded hover:bg-status-error/5 transition-colors group",children:[s.jsx(rt,{className:"w-3.5 h-3.5 mt-0.5 shrink-0 text-status-error/60 group-hover:text-status-error transition-colors"}),s.jsxs("div",{children:[s.jsx("p",{className:"text-2xs font-semibold text-text-primary leading-snug",children:U(n,(a=e==null?void 0:e.properties)==null?void 0:a[n])}),s.jsx("p",{className:"text-2xs text-text-tertiary group-hover:text-text-secondary transition-colors leading-snug mt-0.5",children:i})]})]},n)})}),s.jsx("p",{className:"text-2xs text-text-quaternary mt-4 px-3",children:"Click an issue to scroll to and focus the field."})]})}const bn=/\{\{\s*([^{}]+?)\s*\}\}/g;function et(t){return typeof t=="string"&&/\{\{[^{}]+\}\}/.test(t)}function Q(t,e){if(!e)return;const r=t.indexOf("."),n=e[r===-1?t:t.slice(0,r)];if(r===-1)return n;if(!(n===null||typeof n!="object"))return xt(n,t.slice(r+1))}function mt(t,e){let r=!1;const n=t.replace(bn,(i,a)=>{const o=Q(a,e);return typeof o=="string"&&o.trim().length>0?o:typeof o=="number"&&Number.isFinite(o)?String(o):(r=!0,"")});return r?null:n}const re="x-lt-options";function Tt(t){return typeof t=="string"||typeof t=="boolean"||typeof t=="number"&&Number.isFinite(t)}function hn(t){return Array.isArray(t)&&t.length>0&&!t.some(e=>typeof e=="string")}function Rt(t){if(Tt(t))return{value:t,label:String(t)};if(t&&typeof t=="object"&&!Array.isArray(t)){const e=t,r=e.value!==void 0?e.value:e.id;if(Tt(r)&&typeof e.label=="string"&&e.label.length>0)return{value:r,label:e.label}}return null}function gt(t,e){if(!t)return;const r=t.enum;if(Array.isArray(r)&&r.length>0)return r.map(o=>({value:o,label:String(o)}));const n=t[re];if(hn(n)){const o=n.map(Rt).filter(l=>l!==null);return o.length>0?o:void 0}const i=(typeof n=="string"?[n]:Array.isArray(n)?n:[]).filter(o=>typeof o=="string"&&o.length>0);if(i.length===0)return;const a=i.some(et)?[]:void 0;for(const o of i){let l=o;if(et(o)){const c=mt(o,e);if(c===null)continue;l=c}const d=Q(l,e);if(!Array.isArray(d))continue;const u=d.map(Rt).filter(c=>c!==null);if(u.length>0)return u}return a}function bt(t,e){const r=(typeof t=="string"?[t]:Array.isArray(t)?t:[]).filter(n=>typeof n=="string"&&n.length>0);if(r.length===0||!e)return[];for(const n of r){let i=n;if(et(n)){const o=mt(n,e);if(o===null)continue;i=o}const a=Q(i,e);if(Array.isArray(a)&&a.length>0)return a}return[]}const yn="x-lt-default-checked";function jn(t,e,r){if((t==null?void 0:t["x-lt-widget"])!=="checklist"||t[yn]!==!0||e&&typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length>0)return null;const n=bt(t["x-lt-source"],r);return n.length===0?null:Object.fromEntries(n.map(i=>[i.id,!0]))}function Nn(t,e,r){if((e==null?void 0:e["x-lt-widget"])!=="checklist"||e["x-lt-require-all"]!==!0)return;const i=bt(e["x-lt-source"],r).filter(l=>l.required!==!1);if(i.length===0)return;const a=typeof t=="object"&&t!==null&&!Array.isArray(t)?t:{},o=i.filter(l=>!a[l.id]).length;if(o!==0)return`${o} of ${i.length} checks incomplete`}const _t="Invalid JSON";function st(t){return(t==null?void 0:t["x-lt-widget"])==="json"}function ie(t){return st(t)||(t==null?void 0:t[re])!==void 0}function Lt(t,e){return`${t} ${e}${t===1?"":"s"}`}function ht(t,e){const r=e==null?void 0:e.type;if(typeof r=="string"&&!(t==null||t===""))switch(r){case"string":return typeof t=="string"?void 0:"Expected text";case"number":return typeof t=="number"&&Number.isFinite(t)?void 0:"Expected a number";case"integer":return typeof t=="number"&&Number.isInteger(t)?void 0:"Expected a whole number";case"boolean":return typeof t=="boolean"?void 0:"Expected true or false";case"array":return Array.isArray(t)?void 0:st(e)&&typeof t=="string"?_t:"Expected a list";case"object":return typeof t=="object"&&!Array.isArray(t)?void 0:st(e)&&typeof t=="string"?_t:"Expected an object";default:return}}function yt(t,e,r){if(!e)return;const n=gt(e,r);if(n!==void 0&&t!==void 0&&t!==null&&t!==""&&!Array.isArray(t)){if(n.length===0)return"No valid options for this selection";if(!n.some(i=>i.value===t))return`Must be one of: ${n.map(i=>String(i.value)).join(", ")}`}if(Array.isArray(t))return ie(e)?vn(t,e,n,r):void 0;if(t!==null&&typeof t=="object")return kn(t,e,r);if(typeof t=="string"){const i=t.trim();if(i==="")return;const a=H(e.minLength,e["x-lt-min-length"],r);if(a!==void 0&&i.length<a)return`Minimum ${a} character${a===1?"":"s"}`;const o=H(e.maxLength,e["x-lt-max-length"],r);if(o!==void 0&&i.length>o)return`Maximum ${o} characters (${i.length} entered)`;const l=e.pattern;if(l)try{if(!new RegExp(l).test(i))return e["x-lt-pattern-error"]??"Invalid format"}catch{}const d=e.format;if(d==="email"&&!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(i))return"Enter a valid email address";if(d==="uri"&&!/^https?:\/\/.+/.test(i))return"Enter a valid URL"}if(typeof t=="number"){const i=H(e.minimum,e["x-lt-minimum"],r),a=H(e.exclusiveMinimum,void 0,r),o=H(e.maximum,e["x-lt-maximum"],r),l=H(e.exclusiveMaximum,void 0,r);if(i!==void 0&&t<i)return`Minimum value is ${i}`;if(a!==void 0&&t<=a)return`Must be greater than ${a}`;if(o!==void 0&&t>o)return`Maximum value is ${o}`;if(l!==void 0&&t>=l)return`Must be less than ${l}`}}function vn(t,e,r,n){if(t.length===0)return;if(r!==void 0){if(r.length===0)return"No valid options for this selection";if(t.some(l=>!r.some(d=>d.value===l)))return`Must be one of: ${r.map(l=>String(l.value)).join(", ")}`}const i=H(e.minItems,void 0,n);if(i!==void 0&&t.length<i)return`At least ${Lt(i,"item")}`;const a=H(e.maxItems,void 0,n);if(a!==void 0&&t.length>a)return`At most ${Lt(a,"item")}`;const o=e.items;if(o&&typeof o=="object"&&!Array.isArray(o)){const l=o;for(let d=0;d<t.length;d++){const u=ht(t[d],l)??yt(t[d],l,n);if(u)return`Item ${d+1}: ${u}`}}}function kn(t,e,r){const n=Object.entries(t);if(n.length===0)return;const i=e.propertyNames,a=Array.isArray(i==null?void 0:i.enum)?i.enum.map(String):void 0;if(a){const l=n.find(([d])=>!a.includes(d));if(l)return`Unknown key "${l[0]}". Allowed: ${a.join(", ")}`}const o=e.additionalProperties;if(o&&typeof o=="object"&&!Array.isArray(o)){const l=o;for(const[d,u]of n){const c=ht(u,l)??yt(u,l,r);if(c)return`"${d}": ${c}`}}}function H(t,e,r){if(typeof t=="number")return t;if(typeof e=="string"&&r){const n=e.indexOf(".");if(n!==-1){const i=e.slice(0,n),a=e.slice(n+1),o=r[i];if(o&&typeof o=="object"){const l=a.split(".");let d=o;for(const u of l)if(d=d[u],d===void 0)break;if(typeof d=="number")return d;if(typeof d=="string"){const u=Number(d);if(!Number.isNaN(u))return u}}}}}function ae(t,e,r,n,i){if(!n)return;if(r){if(t==null||typeof t=="boolean"&&!t&&gt(e,i)===void 0||typeof t=="string"&&t.trim()===""||Array.isArray(t)&&t.length===0&&ie(e))return"Required";if(typeof t=="object"&&!Array.isArray(t)&&t!==null){const l=Object.values(t);if(l.length===0||!st(e)&&l.every(d=>!d))return"Required"}}const a=ht(t,e);if(a)return a;const o=Nn(t,e,i);return o||yt(t,e,i)}function St(t){return t!=null&&t!==""&&t!==!1&&t!==0}function wn(t){return t==null?"":typeof t=="object"?JSON.stringify(t):String(t)}function Mt(t,e){const r=t.indexOf("."),n=r===-1?t:t.slice(0,r);if(!Hs.includes(n))return{known:!1,value:void 0};const i=e[n];if(r===-1)return{known:!0,value:i};try{return{known:!0,value:xt(i,t.slice(r+1))}}catch{return{known:!0,value:void 0}}}function X(t,e){if(Array.isArray(t))return t.every(d=>X(d,e));if(typeof t!="string"||t.length===0||!e)return!0;const r=t.startsWith("!"),n=r?t.slice(1):t,i=n.indexOf("!="),a=n.indexOf("=");if(i!==-1||a!==-1&&a!==i+1){const d=i!==-1&&(a===-1||i<a),u=d?i:a,c=n.slice(0,u).trim(),x=n.slice(u+(d?2:1)).trim(),{known:p,value:m}=Mt(c,e);if(!p)return!0;const b=wn(m)===x,f=d?!b:b;return r?!f:f}const{known:o,value:l}=Mt(n,e);return o?r?!St(l):St(l):!0}function En(t,e){return(t==null?void 0:t["x-lt-hide-if-empty"])!==!0?!1:e==null||e===""||e===!1||e===0}const An="x-lt-require-any";function In(t){const e=t==null?void 0:t[An];return Array.isArray(e)?e.filter(r=>Array.isArray(r)).map(r=>r.filter(n=>typeof n=="string"&&n.length>0)).filter(r=>r.length>0):[]}function Cn(t){return t==null?!1:typeof t=="string"?t.trim().length>0:!0}const On="x-lt-require-sum";function Tn(t){const e=t==null?void 0:t[On];if(!Array.isArray(e))return[];const r=[];for(const n of e){if(!n||typeof n!="object"||Array.isArray(n))continue;const{fields:i,minimum:a}=n;if(!Array.isArray(i))continue;const o=i.filter(l=>typeof l=="string"&&l.length>0);o.length!==0&&(a!==void 0&&typeof a!="number"||r.push({fields:o,minimum:typeof a=="number"?a:1}))}return r}function Rn(t){if(typeof t=="number"&&Number.isFinite(t))return t;if(typeof t=="string"&&t.trim()!==""){const e=Number(t);if(!Number.isNaN(e))return e}return 0}function oe(t,e,r){if(!t)return[];const n=t.properties??{},i=new Set(t.required??[]),a={...r??{},resolver:e,input:e},o=[];for(const[l,d]of Object.entries(n)){if(!X(d["x-lt-showIf"],a))continue;const u=ae(e[l],d,i.has(l),!0,a);u&&o.push({field:l,message:u})}for(const l of In(t)){const d=l.filter(c=>n[c]&&X(n[c]["x-lt-showIf"],a));if(d.length===0||d.some(c=>Cn(e[c])))continue;const u=d.map(c=>n[c].title??c);o.push({field:d[0],message:`Enter a value for at least one of: ${u.join(", ")}`})}for(const l of Tn(t)){const d=l.fields.filter(x=>n[x]&&X(n[x]["x-lt-showIf"],a));if(d.length===0||d.reduce((x,p)=>x+Rn(e[p]),0)>=l.minimum)continue;const c=d.map(x=>n[x].title??x);o.push({field:d[0],message:`Combined value of ${c.join(", ")} must be at least ${l.minimum}`})}return o}function _n(t,e,r){if(!t)return[];const n=te(e,t);return oe(t,n,r)}function Ft(t,e){let r;try{r=JSON.parse(t)}catch{return{payload:null,errors:[],parseError:"Invalid JSON"}}const n=r._form_schema;if(n){const o=oe(n,r,e);if(o.length>0)return{payload:null,errors:o,parseError:null}}const{_form_schema:i,...a}=r;return{payload:qs(a,n),errors:[],parseError:null}}const Ln=2600;function Sn({hint:t,onLockedClick:e,children:r}){const[n,i]=g.useState(null);g.useEffect(()=>{if(!n)return;const o=setTimeout(()=>i(null),Ln);return()=>clearTimeout(o)},[n]);const a=o=>{if(e==null||e(),t){const l=Math.min(Math.max(o.clientX,96),window.innerWidth-96);i(d=>({x:l,y:o.clientY,n:((d==null?void 0:d.n)??0)+1}))}};return s.jsxs("div",{className:"pb-8 max-w-form",onClick:a,"data-testid":"locked-form-frame",children:[r,t&&n&&s.jsxs("div",{role:"status",className:"fixed z-[60] pointer-events-none flex items-center gap-2 px-3 py-1.5 rounded-md bg-surface-raised border border-surface-border shadow-lg text-xs font-medium text-text-primary whitespace-nowrap animate-[click-hint_2.6s_ease-in-out_both]",style:{left:n.x,top:n.y-12},onAnimationEnd:()=>i(null),"data-testid":"locked-form-hint",children:[s.jsx(Xt,{className:"w-3.5 h-3.5 text-accent shrink-0",strokeWidth:1.5}),t]},n.n)]})}function R({children:t,isRequired:e,htmlFor:r}){return s.jsxs("label",{htmlFor:r,className:"block text-2xs font-semibold uppercase tracking-wider text-text-secondary",children:[t,e&&s.jsx("span",{className:"text-status-error ml-0.5",children:"*"})]})}function P({id:t,children:e}){return s.jsx("p",{id:t,className:"text-2xs text-text-tertiary mt-0.5 leading-snug",children:e})}function D({error:t,id:e}){return t?s.jsx("p",{id:e,role:"alert",className:"text-2xs text-status-error mt-1 animate-[field-error-in_0.3s_ease-out]",children:t}):null}function Y(t){return t?"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 Mn(t){return t?"select text-sm mt-1 min-w-[min(16rem,100%)] max-w-full border-status-error/50 focus:border-status-error animate-[field-shake_0.4s_ease-in-out]":"select text-sm mt-1 min-w-[min(16rem,100%)] max-w-full"}function Fn({fieldKey:t,value:e,onChange:r,schema:n,isRequired:i}){const a=g.useRef(null),o=(n==null?void 0:n.accept)??void 0,l=U(t,n),d=n==null?void 0:n.description,u=g.useCallback(x=>{var b;const p=(b=x.target.files)==null?void 0:b[0];if(!p)return;const m=new FileReader;m.onload=()=>{typeof m.result=="string"&&r(m.result)},m.readAsDataURL(p)},[r]),c=e.startsWith("data:");return s.jsxs("div",{children:[s.jsx(R,{isRequired:i,children:l}),d&&s.jsx("p",{className:"text-2xs text-text-tertiary mt-0.5",children:d}),s.jsxs("div",{className:"mt-1",children:[s.jsx("input",{ref:a,type:"file",accept:o,onChange:u,className:"hidden"}),s.jsx("button",{type:"button",onClick:()=>{var x;return(x=a.current)==null?void 0:x.click()},className:"btn-secondary text-xs px-3 py-1.5",children:c?"Replace file":"Choose file"}),c&&s.jsx("span",{className:"ml-2 text-xs text-status-success",children:"File attached"})]})]})}function Pn({fieldKey:t,value:e,onChange:r,schema:n,isRequired:i}){const a=U(t,n),o=n==null?void 0:n.description,l=(n==null?void 0:n["x-lt-language"])??"",d=g.useCallback(u=>{if(u.key==="Tab"){u.preventDefault();const c=u.currentTarget,x=c.selectionStart,p=c.selectionEnd,m=e.substring(0,x)+" "+e.substring(p);r(m),requestAnimationFrame(()=>{c.selectionStart=c.selectionEnd=x+2})}},[e,r]);return s.jsxs("div",{children:[s.jsxs(R,{isRequired:i,children:[a,l&&s.jsx("span",{className:"ml-2 text-text-tertiary/60 normal-case font-normal",children:l})]}),o&&s.jsx("p",{className:"text-2xs text-text-tertiary mt-0.5",children:o}),s.jsx("textarea",{value:e,onChange:u=>r(u.target.value),onKeyDown:d,className:"input w-full mt-1 font-mono text-xs leading-relaxed",rows:10,spellCheck:!1})]})}function $n({fieldKey:t,value:e,onChange:r,schema:n,isRequired:i}){const a=g.useRef(null),[o,l]=g.useState(!1),d=U(t,n),u=n==null?void 0:n.description;g.useEffect(()=>{const f=a.current;if(!f)return;const h=f.getContext("2d");if(h&&(h.lineWidth=2,h.lineCap="round",h.strokeStyle="#1E1535",e&&e.startsWith("data:"))){const j=new Image;j.onload=()=>h.drawImage(j,0,0),j.src=e}},[]);const c=g.useCallback(f=>{const h=a.current,j=h.getBoundingClientRect(),A=j.width>0?h.width/j.width:1,y=j.height>0?h.height/j.height:1;return"touches"in f?{x:(f.touches[0].clientX-j.left)*A,y:(f.touches[0].clientY-j.top)*y}:{x:(f.clientX-j.left)*A,y:(f.clientY-j.top)*y}},[]),x=g.useCallback(f=>{var A;l(!0);const h=(A=a.current)==null?void 0:A.getContext("2d");if(!h)return;const j=c(f);h.beginPath(),h.moveTo(j.x,j.y)},[c]),p=g.useCallback(f=>{var A;if(!o)return;const h=(A=a.current)==null?void 0:A.getContext("2d");if(!h)return;const j=c(f);h.lineTo(j.x,j.y),h.stroke()},[o,c]),m=g.useCallback(()=>{l(!1);const f=a.current;f&&r(f.toDataURL("image/png"))},[r]),b=g.useCallback(()=>{const f=a.current;if(!f)return;const h=f.getContext("2d");h&&(h.clearRect(0,0,f.width,f.height),r(""))},[r]);return s.jsxs("div",{children:[s.jsx(R,{isRequired:i,children:d}),u&&s.jsx("p",{className:"text-2xs text-text-tertiary mt-0.5",children:u}),s.jsx("div",{className:"mt-1 max-w-[25rem] border border-surface-border rounded-md overflow-hidden bg-white",children:s.jsx("canvas",{ref:a,width:400,height:150,className:"w-full cursor-crosshair touch-none",onMouseDown:x,onMouseMove:p,onMouseUp:m,onMouseLeave:m,onTouchStart:x,onTouchMove:p,onTouchEnd:m})}),s.jsx("button",{type:"button",onClick:b,className:"mt-1 text-2xs text-text-tertiary hover:text-accent transition-colors",children:"Clear"})]})}function Dn({fieldKey:t,value:e,onChange:r,schema:n,isRequired:i}){const a=U(t,n),o=n==null?void 0:n.description;return s.jsxs("div",{children:[s.jsx(R,{isRequired:i,children:a}),o&&s.jsx("p",{className:"text-2xs text-text-tertiary mt-0.5",children:o}),s.jsx("textarea",{value:e,onChange:l=>r(l.target.value),className:"input w-full mt-1 text-sm leading-relaxed",rows:8,placeholder:"Supports plain text. Markdown formatting is preserved."})]})}function Wn({fieldKey:t,value:e,onChange:r,schema:n,isRequired:i}){const[a,o]=g.useState("write"),l=U(t,n),d=n==null?void 0:n.description;return(n==null?void 0:n.readOnly)===!0?s.jsx(K,{content:e,className:"my-1"}):s.jsxs("div",{children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx(R,{isRequired:i,children:l}),s.jsx("div",{className:"flex items-center gap-0.5",children:["write","preview"].map(c=>s.jsx("button",{type:"button",onClick:()=>o(c),className:`px-2 py-0.5 text-2xs rounded transition-colors ${a===c?"bg-accent/10 text-accent font-semibold":"text-text-quaternary hover:text-text-secondary"}`,children:c==="write"?"Write":"Preview"},c))})]}),d&&s.jsx("p",{className:"text-2xs text-text-tertiary mt-0.5",children:d}),a==="write"?s.jsx("textarea",{value:e,onChange:c=>r(c.target.value),className:"input w-full mt-1 text-sm font-mono leading-relaxed",rows:10,placeholder:"Write markdown — headings, lists, tables, code blocks, and links all render."}):s.jsx("div",{className:"mt-1 px-3 py-2 border border-surface-border rounded min-h-[120px]",children:e.trim()?s.jsx(K,{content:e}):s.jsx("p",{className:"text-xs text-text-quaternary italic",children:"Nothing to preview."})})]})}const Un=28;function Jn({fieldKey:t,value:e,onChange:r,schema:n,escalationContext:i,isRequired:a,submitAttempted:o,error:l}){const d=(n==null?void 0:n["x-lt-require-all"])===!0,u=bt(n==null?void 0:n["x-lt-source"],i);let c={};try{e&&(c=JSON.parse(e))}catch{}const x=(()=>{const y=jn(n,c,i);return y?JSON.stringify(y):null})();g.useEffect(()=>{x&&r(x)},[x]);const p=y=>r(JSON.stringify({...c,[y]:!c[y]})),m=U(t,n),b=n==null?void 0:n.description;if(u.length===0)return s.jsxs(s.Fragment,{children:[s.jsx("p",{className:"text-xs text-text-tertiary italic mt-1",children:"No checklist items. None of the field's x-lt-source paths resolved on this escalation."}),l&&s.jsx("p",{className:"text-2xs text-status-error mt-1 animate-[field-error-in_0.3s_ease-out]",children:l})]});const f=n==null?void 0:n["x-lt-variant"],h=f==="chips"||f==="rows"?f:d||u.some(y=>y.label.length>Un)?"rows":"chips",j=u.filter(y=>c[y.id]).length,A=(u.find(y=>!c[y.id]&&y.required!==!1)??u[0]).id;return s.jsxs("div",{role:"group","aria-label":m,"aria-required":a||void 0,"aria-invalid":l?!0:void 0,children:[s.jsx(R,{isRequired:a,children:m}),b&&s.jsx(P,{children:b}),h==="chips"?s.jsx("div",{className:"flex flex-wrap gap-2 mt-2",children:u.map(y=>{const N=c[y.id]??!1,v=!N&&!!o&&j===0&&(y.required||a);return s.jsxs("label",{className:`inline-flex items-center gap-1.5 cursor-pointer select-none px-3.5 py-2 text-sm border transition-colors rounded-[var(--lt-radius-field)] ${N?"bg-accent border-accent text-text-inverse":v?"bg-surface-field border-status-error/60 text-status-error":"bg-surface-field border-surface-field-border text-text-secondary hover:border-accent hover:text-text-primary"}`,children:[s.jsx("input",{type:"checkbox",checked:N,onChange:()=>p(y.id),className:"sr-only","data-testid":`checklist-item-${y.id}`,...y.id===A?{"data-field-key":t}:{}}),N&&s.jsx(Kt,{className:"w-3.5 h-3.5 shrink-0",strokeWidth:2.5}),y.label]},y.id)})}):s.jsx("div",{className:"space-y-2.5 mt-2",children:u.map(y=>{const N=c[y.id]??!1,v=!N&&!!o&&(d?y.required!==!1:j===0&&(y.required||a));return s.jsxs("label",{className:`flex items-start gap-3 cursor-pointer group select-none rounded px-2 py-1 -mx-2 transition-colors ${v?"bg-status-error/5":"hover:bg-surface-hover"}`,children:[s.jsx("input",{type:"checkbox",checked:N,onChange:()=>p(y.id),className:`mt-0.5 w-3.5 h-3.5 shrink-0 rounded ${v?"accent-status-error":"accent-accent"}`,"data-testid":`checklist-item-${y.id}`,...y.id===A?{"data-field-key":t}:{}}),s.jsxs("span",{className:`text-sm leading-snug transition-colors ${v?"text-status-error":"text-text-secondary group-hover:text-text-primary"}`,children:[y.label,y.required&&s.jsx("span",{className:`ml-0.5 text-2xs ${v?"text-status-error":"text-text-quaternary"}`,children:"*"})]})]},y.id)})}),s.jsx("p",{className:"text-2xs text-text-quaternary mt-3 tabular-nums",children:h==="chips"?s.jsxs(s.Fragment,{children:[j," selected",a&&j===0&&!!o&&s.jsx("span",{className:"ml-1 text-text-quaternary/60",children:"(check at least one)"})]}):s.jsxs(s.Fragment,{children:[j," / ",u.length," confirmed",d?s.jsxs("span",{className:"ml-1 text-text-quaternary/60",children:["(all required",u.some(y=>y.required===!1)?" except optional":"",")"]}):a&&j===0&&!!o&&s.jsx("span",{className:"ml-1 text-text-quaternary/60",children:"(at least one required)"})]})}),l&&s.jsx("p",{role:"alert",className:"text-2xs text-status-error mt-1 animate-[field-error-in_0.3s_ease-out]",children:l})]})}const Gn=/\.(png|jpe?g|gif|webp|avif|bmp|svg)(\?.*)?$/i;function Hn(t){var n,i,a,o;const e=t.trim();if(!e)return{kind:"none"};const r=(i=(n=/^data:([^;,]+)[;,]/.exec(e))==null?void 0:n[1])==null?void 0:i.toLowerCase();if(r)return r.startsWith("image/")?{kind:"image",src:e}:{kind:"file",href:e,label:r==="application/pdf"?"PDF":r,isData:!0};if(/^https?:\/\//i.test(e)){if(Gn.test(e))return{kind:"image",src:e};const l=(o=(a=/\.([a-z0-9]{2,5})(\?.*)?$/i.exec(e))==null?void 0:a[1])==null?void 0:o.toUpperCase();return{kind:"file",href:e,label:l??"attachment",isData:!1}}return{kind:"none"}}function Pt({fieldKey:t,value:e,schema:r}){const[n,i]=g.useState(!1),a=Hn(e??""),o=t.replace(/[_-]/g," "),l=r==null?void 0:r.description,d=s.jsxs(s.Fragment,{children:[s.jsx("label",{className:"text-2xs font-semibold uppercase tracking-widest text-text-tertiary",children:o}),l&&s.jsx("p",{className:"text-2xs text-text-tertiary mt-0.5",children:l})]});return a.kind==="none"?s.jsxs("div",{children:[d,s.jsx("p",{className:"text-xs text-text-quaternary italic mt-1",children:"No attachment"})]}):a.kind==="image"?s.jsxs("div",{children:[d,s.jsxs("div",{className:"mt-1",children:[s.jsx("button",{type:"button",onClick:()=>i(!0),className:"block rounded-[0.125em] border border-surface-border overflow-hidden hover:border-accent transition-colors",title:"View full size",children:s.jsx("img",{src:a.src,alt:t.replace(/[_-]/g," "),className:"max-h-48 max-w-full object-contain","data-testid":`attachment-image-${t}`})}),n&&s.jsx("div",{className:"fixed inset-0 z-[100] bg-text-primary/60 backdrop-blur-sm flex items-center justify-center p-8 cursor-zoom-out",onClick:()=>i(!1),role:"dialog","aria-modal":"true","aria-label":`${o} — full size`,children:s.jsx("img",{src:a.src,alt:o,className:"max-h-[90vh] max-w-[90vw] object-contain"})})]})]}):s.jsxs("div",{children:[d,s.jsx("div",{className:"mt-1",children:s.jsxs("a",{href:a.href,...a.isData?{download:`${t}.${a.label==="PDF"?"pdf":"bin"}`}:{target:"_blank",rel:"noopener noreferrer"},className:"inline-flex items-center gap-1.5 text-xs text-accent hover:text-accent-hover transition-colors","data-testid":`attachment-link-${t}`,children:[s.jsx(je,{className:"w-3.5 h-3.5",strokeWidth:1.5}),a.isData?`Download ${a.label}`:`Open ${a.label}`,a.isData?s.jsx(zt,{className:"w-3 h-3",strokeWidth:1.5}):s.jsx(dt,{className:"w-3 h-3",strokeWidth:1.5})]})})]})}function qn({fieldKey:t,schema:e,escalationContext:r}){const n=(e==null?void 0:e["x-lt-href"])??"",i=n&&r?q(n,r):n,a=(e==null?void 0:e.title)??(e==null?void 0:e.description)??"Open",o=e==null?void 0:e.description,l=i.startsWith("/"),d=!i.trim();return s.jsxs("div",{"data-field-key":t,children:[s.jsx(R,{children:a}),o&&s.jsx(P,{children:o}),s.jsx("div",{className:"mt-1",children:d?s.jsx("span",{className:"text-xs text-text-quaternary italic",children:"No link configured"}):l?s.jsxs(it,{to:i,className:"inline-flex items-center gap-1 text-xs text-accent hover:text-accent-hover transition-colors","data-testid":`link-widget-${t}`,children:[a,s.jsx(dt,{className:"w-3 h-3 shrink-0",strokeWidth:1.5})]}):s.jsxs("a",{href:i,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1 text-xs text-accent hover:text-accent-hover transition-colors","data-testid":`link-widget-${t}`,children:[a,s.jsx(dt,{className:"w-3 h-3 shrink-0",strokeWidth:1.5})]})})]})}function le({to:t,className:e=""}){return s.jsxs(it,{to:t,title:"View details",tabIndex:-1,className:`inline-flex items-center justify-center w-6 h-6 shrink-0 rounded border border-surface-border text-accent/70 hover:text-accent hover:border-accent/60 hover:bg-accent/5 transition-colors ${e}`,children:[s.jsx(Ne,{className:"w-3.5 h-3.5",strokeWidth:2}),s.jsx("span",{className:"sr-only",children:"View details"})]})}const $t="—";function Vn(t,e){if(!t||!e)return"";const r=t.indexOf(".");if(r===-1)return"";const n=t.slice(0,r),i=t.slice(r+1);try{const a=xt(e[n],i);return typeof a=="string"?a:""}catch{return""}}function Bn(t,e){if(!t||t===$t)return $t;if(e==="age"){const r=new Date(t);return Number.isNaN(r.getTime())?t:ft(t)}return t}function Yn({fieldKey:t,schema:e,escalationContext:r}){const n=e==null?void 0:e["x-lt-source"],i=(e==null?void 0:e["x-lt-fields"])??[],a=(e==null?void 0:e.title)??"Linked escalation",o=e==null?void 0:e.description,l=Vn(n,r),{data:d,isLoading:u,isError:c}=Ys(l);return s.jsxs("div",{"data-field-key":t,children:[s.jsx(R,{children:a}),o&&s.jsx(P,{children:o}),s.jsx("div",{className:"mt-1",children:!l||c?s.jsx("p",{className:"text-xs text-text-quaternary italic","data-testid":`escalation-widget-empty-${t}`,children:"No linked record"}):u?s.jsx(Kn,{}):d?s.jsx(Xn,{esc:d,fields:i,fieldKey:t}):s.jsx("p",{className:"text-xs text-text-quaternary italic",children:"No linked record"})})]})}function Xn({esc:t,fields:e,fieldKey:r}){if(!t)return null;const n=pt(t);return s.jsxs("div",{className:"border-l-2 border-accent-faint pl-3 py-2 space-y-2","data-testid":`escalation-widget-card-${r}`,children:[s.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[s.jsxs("span",{className:"text-2xs font-semibold uppercase tracking-wider text-text-secondary",children:[t.type,t.subtype&&t.subtype!==t.type?` · ${t.subtype}`:""]}),s.jsx(un,{status:t.status})]}),t.description&&s.jsx("p",{className:"text-xs text-text-primary leading-snug",children:t.description}),e.length>0&&s.jsx("dl",{className:"grid grid-cols-[auto_1fr] gap-x-4 gap-y-0.5",children:e.map(i=>{const a=q(i.value,n),o=Bn(a,i.format);return s.jsxs("div",{className:"contents",children:[s.jsx("dt",{className:"text-2xs text-text-tertiary whitespace-nowrap",children:i.label}),s.jsx("dd",{className:"text-2xs text-text-primary",children:o})]},i.label)})}),s.jsxs("div",{className:"flex items-center justify-between gap-2",children:[s.jsxs("span",{className:"text-2xs text-text-quaternary",children:[t.role," · ",ft(t.created_at)]}),s.jsx(le,{to:`/escalations/detail/${t.id}`})]})]})}function Kn(){return s.jsxs("div",{className:"border-l-2 border-accent-faint pl-3 py-2 space-y-2 animate-pulse",children:[s.jsx("div",{className:"h-3 w-32 bg-surface-sunken rounded"}),s.jsx("div",{className:"h-3 w-48 bg-surface-sunken rounded"}),s.jsx("div",{className:"h-3 w-24 bg-surface-sunken rounded"})]})}function zn(t,e){if(!t)return{};const r={};for(const[n,i]of Object.entries(t))r[n]=typeof i=="string"?q(i,e):i;return r}function Qn(t,e,r){const n=zn(t.facets,e),i={role:t.role,status:t.status??"pending",facets:n,limit:t.limit,enabled:!!(t.role||Object.keys(n).length)};return t.assigned==="me"?{...i,assigned_to:r,available:!1,enabled:i.enabled&&!!r}:t.assigned==="any"?i:{...i,available:t.available??!0}}const Zn=[{label:"Description",value:"{{escalation.description}}"},{label:"Role",value:"{{escalation.role}}"},{label:"Age",value:"{{escalation.created_at}}",format:"age"}],Dt="—";function tr(t,e){if(!t||t===Dt)return Dt;if(e==="age"){const r=new Date(t);return Number.isNaN(r.getTime())?t:ft(t)}return t}function ut(t,e){return typeof t=="string"?q(t,e):Array.isArray(t)?t.map(r=>ut(r,e)):t&&typeof t=="object"?Object.fromEntries(Object.entries(t).map(([r,n])=>[r,ut(n,e)])):t}function er({fieldKey:t,schema:e,escalationContext:r}){const n=(e==null?void 0:e["x-lt-query"])??{},i=(e==null?void 0:e["x-lt-columns"])??Zn,a=(e==null?void 0:e["x-lt-actions"])??[],o=(e==null?void 0:e.title)??"Related items",l=e==null?void 0:e.description,d=r??{},{user:u}=Xs(),c=Qn(n,d,u==null?void 0:u.userId),{data:x,isLoading:p}=Ks({role:c.role,status:c.status,facets:c.facets,assigned_to:c.assigned_to,available:c.available,limit:c.limit??5,enabled:c.enabled,include:Vs({columns:i,actions:a})?"envelope":void 0}),m=(x==null?void 0:x.escalations)??[],b=zs(),[f,h]=g.useState({}),[j,A]=g.useState(null),y=async(N,v)=>{const k=pt(N);if(!(v.confirm&&!window.confirm(q(v.confirm,k)))){A(N.id),h(C=>({...C,[N.id]:""}));try{await b.mutateAsync({id:N.id,resolverPayload:ut(v.resolverPayload,k)})}catch(C){h(M=>({...M,[N.id]:C.message}))}finally{A(null)}}};return s.jsxs("div",{"data-field-key":t,children:[s.jsx(R,{children:o}),l&&s.jsx(P,{children:l}),s.jsx("div",{className:"mt-1","data-testid":`escalation-list-widget-${t}`,children:p?s.jsx(nr,{columns:i.length}):s.jsx(sr,{escalations:m,columns:i,fieldKey:t,actions:a,onAction:y,pendingRow:j,rowErrors:f})})]})}function sr({escalations:t,columns:e,fieldKey:r,actions:n,onAction:i,pendingRow:a,rowErrors:o}){return t.length===0?s.jsx("p",{className:"text-xs text-text-quaternary italic py-1","data-testid":`escalation-list-empty-${r}`,children:"No items found"}):s.jsxs("table",{className:"w-full text-xs border-collapse","data-testid":`escalation-list-table-${r}`,children:[s.jsx("thead",{children:s.jsxs("tr",{className:"border-b border-surface-border",children:[e.map(l=>s.jsx("th",{className:"text-left text-2xs font-semibold uppercase tracking-wider text-text-tertiary pb-1 pr-3 last:pr-0",children:l.label},l.label)),n.length>0&&s.jsx("th",{className:"w-px"}),s.jsx("th",{className:"w-8"})]})}),s.jsx("tbody",{children:t.map(l=>{const d=pt(l),u=o[l.id];return s.jsxs("tr",{className:"border-b border-surface-border/50 last:border-0 hover:bg-surface-sunken/50 transition-colors",children:[e.map(c=>{const x=q(c.value,d),p=tr(x,c.format);return s.jsx("td",{className:"py-1 pr-3 last:pr-0 text-text-primary align-top",children:p},c.label)}),n.length>0&&s.jsxs("td",{className:"py-1 pr-2 align-top whitespace-nowrap",children:[n.map(c=>s.jsx("button",{type:"button",onClick:()=>i(l,c),disabled:a===l.id,className:"px-2 py-0.5 text-2xs font-medium text-accent border border-accent/40 rounded hover:bg-accent/10 disabled:opacity-40 disabled:cursor-default transition-colors ml-1 first:ml-0","data-testid":`escalation-list-action-${l.id}`,children:c.label},c.label)),u&&s.jsx("p",{className:"text-2xs text-status-error mt-0.5 whitespace-normal max-w-[16rem]","data-testid":`escalation-list-action-error-${l.id}`,children:u})]}),s.jsx("td",{className:"py-1 pl-2 align-top",children:s.jsx(le,{to:`/escalations/detail/${l.id}`})})]},l.id)})})]})}function nr({columns:t}){return s.jsx("div",{className:"space-y-1.5 animate-pulse",children:[0,1,2].map(e=>s.jsx("div",{className:"flex gap-4",children:Array.from({length:t},(r,n)=>s.jsx("div",{className:"h-3 bg-surface-sunken rounded flex-1"},n))},e))})}function ce(t,e){return{metadata:t??{},...e?{lookup:e}:{}}}const rr="x-lt-invoke",z={LINK:"link",BUTTON:"button"},ir=/^\{\{\s*([^{}]+?)\s*\}\}$/;function tt(t){return!!t&&typeof t=="object"&&!Array.isArray(t)}function ar(t){return t===z.LINK||t===z.BUTTON}function or(t){const e=t==null?void 0:t[rr];if(!tt(e))return null;const r=e.workflow;if(typeof r!="string"||r.trim().length===0)return null;const n=e.confirm;return{workflow:r.trim(),data:tt(e.data)?e.data:{},metadata:tt(e.metadata)?e.metadata:{},modal:e.modal===!0,confirm:typeof n=="string"&&n.trim().length>0?n:null,variant:ar(e.variant)?e.variant:z.LINK,icon:e.icon!==!1}}function nt(t,e){if(typeof t=="string"){const r=ir.exec(t);if(r){const n=Q(r[1],e??void 0);return n===null?void 0:n}return et(t)?mt(t,e??void 0)??void 0:t}if(Array.isArray(t))return t.map(r=>nt(r,e)).filter(r=>r!==void 0);if(tt(t)){const r={};for(const[n,i]of Object.entries(t)){const a=nt(i,e);a!==void 0&&(r[n]=a)}return r}return t}function lr(t,e){return{data:nt(t.data,e),metadata:nt(t.metadata,e)}}const jt={ACTIVITY:"Activity",ALERT:"AlertTriangle",ARCHIVE:"Archive",AWARD:"Award",BARCODE:"Barcode",BELL:"Bell",BOT:"Bot",BOX:"Box",BOXES:"Boxes",BUILDING:"Building2",CALENDAR:"Calendar",CAMERA:"Camera",CHECKLIST:"ListChecks",CLIPBOARD:"ClipboardList",CLIPBOARD_CHECK:"ClipboardCheck",CLOCK:"Clock",COG:"Cog",CPU:"Cpu",DATABASE:"Database",DOWNLOAD:"Download",DROPLETS:"Droplets",FACTORY:"Factory",FAN:"Fan",FILE:"FileText",FLAG:"Flag",FLAME:"Flame",GAUGE:"Gauge",HAMMER:"Hammer",HEART:"Heart",IMAGE:"Image",KEY:"Key",LAYERS:"Layers",LEAF:"Leaf",LIFEBUOY:"LifeBuoy",LOCK:"Lock",MAIL:"Mail",MAP:"Map",MEGAPHONE:"Megaphone",MESSAGE:"MessageSquare",PACKAGE:"Package",PALETTE:"Palette",PEN:"PenTool",PILL:"Pill",POWER:"Power",PRINTER:"Printer",RECEIPT:"Receipt",RECYCLE:"Recycle",REFRESH:"RefreshCw",ROCKET:"Rocket",ROUTE:"Route",RULER:"Ruler",SCALE:"Scale",SCAN:"ScanBarcode",SCISSORS:"Scissors",SEARCH:"Search",SEND:"Send",SERVER:"Server",SHIELD:"ShieldCheck",SHOPPING_CART:"ShoppingCart",SNOWFLAKE:"Snowflake",SPARKLES:"Sparkles",STAR:"Star",STORE:"Store",SUN:"Sun",TAG:"Tag",TEST_TUBE:"TestTube",THERMOMETER:"Thermometer",TRASH:"Trash2",TRUCK:"Truck",UPLOAD:"Upload",USER:"User",USERS:"Users",WAND:"Wand2",WAREHOUSE:"Warehouse",WIFI:"Wifi",WRENCH:"Wrench",ZAP:"Zap"},cr=new Set(Object.values(jt));function dr(t){return typeof t=="string"&&cr.has(t)}const ur={Activity:Us,AlertTriangle:Qt,Archive:Ws,Award:Ds,Barcode:$s,Bell:Ps,Bot:Fs,Box:Ms,Boxes:Ss,Building2:Ls,Calendar:_s,Camera:Rs,ClipboardCheck:Ts,ClipboardList:Os,Clock:Cs,Cog:Is,Cpu:As,Database:Es,Download:zt,Droplets:ws,Factory:ks,Fan:vs,FileText:Ns,Flag:js,Flame:ys,Gauge:hs,Hammer:bs,Heart:gs,Image:ms,Key:fs,Layers:ps,Leaf:xs,LifeBuoy:us,ListChecks:ds,Lock:Xt,Mail:cs,Map:ls,Megaphone:os,MessageSquare:as,Package:is,Palette:rs,PenTool:ns,Pill:ss,Power:es,Printer:ts,Receipt:Ze,Recycle:Qe,RefreshCw:ze,Rocket:Ke,Route:Xe,Ruler:Ye,Scale:Be,ScanBarcode:Ve,Scissors:qe,Search:He,Send:Ge,Server:Je,ShieldCheck:Ue,ShoppingCart:We,Snowflake:De,Sparkles:$e,Star:Pe,Store:Fe,Sun:Me,Tag:Se,TestTube:Le,Thermometer:_e,Trash2:Re,Truck:Te,Upload:Oe,User:Ce,Users:Ie,Wand2:Ae,Warehouse:Ee,Wifi:we,Wrench:ke,Zap:ve},Wt=Object.values(jt),xr=Object.fromEntries(Object.entries(jt).map(([t,e])=>[e,t]));function pr(t){return dr(t)?ur[t]:null}function Zr(t){const e=t.trim().toLowerCase().replace(/[\s_-]+/g,"");return e?Wt.filter(r=>r.toLowerCase().includes(e)||xr[r].toLowerCase().replace(/_/g,"").includes(e)):[...Wt]}function Nt({icon:t,tier:e,className:r,strokeWidth:n=1.5}){const i=pr(t)??pn[e]??Js;return s.jsx(i,{className:r,strokeWidth:n,"aria-hidden":!0})}const S={RUNNING:"running",COMPLETED:"completed",FAILED:"failed"};function Ut(t,e){return`lt.events.system.workflow.${t}.${e}`}function vt(t){const[e,r]=g.useState(S.RUNNING),[n,i]=g.useState(void 0);return g.useEffect(()=>{r(S.RUNNING),i(void 0)},[t]),Qs(t?[Ut(t,"completed"),Ut(t,"failed")]:[],a=>{a.workflowId===t&&(r(a.type.endsWith(".failed")?S.FAILED:S.COMPLETED),i(a.data))}),{outcome:e,payload:n}}const fr={[S.RUNNING]:"Working…",[S.COMPLETED]:"Completed",[S.FAILED]:"Failed"};function de({outcome:t,className:e=""}){const r=t===S.FAILED?"text-status-error":t===S.COMPLETED?"text-status-success":"text-text-secondary";return s.jsxs("p",{className:`flex items-center gap-1.5 text-xs ${r} ${e}`,role:"status","data-testid":"run-outcome",children:[fr[t],t===S.RUNNING&&s.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-accent animate-pulse","aria-hidden":!0})]})}function ue({payload:t}){return!t||Object.keys(t).length===0?null:s.jsx("div",{className:"max-h-72 overflow-y-auto px-3 py-2 bg-surface-sunken","data-testid":"run-outline",children:s.jsx(tn,{data:t})})}function mr({workflowId:t,outcome:e,executionPath:r}){const n=e===S.FAILED?"text-status-error":"text-status-success",i=e===S.RUNNING?"Started":e===S.COMPLETED?"Completed":"Failed";return s.jsxs("p",{className:"flex items-center gap-1.5 text-xs min-w-0",role:"status","data-testid":"started-run",children:[s.jsx("span",{className:n,children:i}),e===S.RUNNING&&s.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-accent animate-pulse","aria-hidden":!0}),s.jsx("span",{className:"text-text-quaternary",children:"·"}),s.jsx("span",{className:"font-mono text-text-secondary truncate",children:t}),r&&s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"text-text-quaternary",children:"·"}),s.jsx(it,{to:r,className:"text-accent hover:underline shrink-0",children:"View workflow →"})]})]})}function gr({payload:t}){return!t||Object.keys(t).length===0?null:s.jsx("div",{className:"mt-3 h-48 overflow-y-auto rounded-md border border-surface-border bg-surface-raised px-3 py-2","data-testid":"started-run-result",children:s.jsx(Zs,{data:t,label:"Result"})})}const br="/workflows/executions",$={PAGE:"page",MODAL:"modal"};function xe(t,e){const{realIsBuilder:r}=en(),n=sn(),[i,a]=g.useState(null),[o,l]=g.useState([]),[d,u]=g.useState(null),c=g.useCallback(()=>{a(null),l([]),u(null),n.reset()},[n]);return{submit:g.useCallback(async(p,m)=>{a(null),l([]),u(null);const b={...m};e.certified&&(b.certified=!0);try{const f=await n.mutateAsync({workflowType:t.workflow_type,data:p,metadata:b,...e.overrideBot?{execute_as:e.overrideBot}:{}});u(f.workflowId)}catch(f){f instanceof nn&&mn(f.body)?(l(f.body.violations),a(f.body.error)):a(f instanceof Error?f.message:"Invocation failed")}},[n,e.certified,e.overrideBot,t.workflow_type]),reset:c,pending:n.isPending,error:i,violations:o,startedId:d,executionPath:d&&r?`${br}/${encodeURIComponent(d)}`:null}}function kt(){const{connected:t}=rn();return t?null:s.jsxs("p",{className:"flex items-center gap-1.5 text-2xs text-status-warning","data-testid":"events-warning",children:[s.jsx(Gs,{className:"w-3 h-3 shrink-0",strokeWidth:1.5}),"Live events are off, so the result will not appear here.",s.jsx("button",{type:"button",onClick:()=>window.location.reload(),className:"text-accent hover:underline",children:"Reconnect events"})]})}const hr={[$.PAGE]:"sticky bottom-0 z-10 bg-surface border-t border-surface-border/40 pt-3 pb-16 -mb-16",[$.MODAL]:"border-t border-surface-border/40 pt-3"};function pe({onSubmit:t,onSubmitAgain:e,pending:r,error:n,issueCount:i=0,onShowIssues:a,startedId:o,executionPath:l,host:d=$.PAGE}){const u=d===$.PAGE,c=vt(u?o??"":""),x=u&&o!==null;return s.jsxs("div",{className:hr[d],children:[s.jsxs("div",{className:"flex items-center justify-between gap-6 min-h-9",children:[s.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-1",children:[s.jsx(kt,{}),i>0&&a?s.jsxs("button",{type:"button",onClick:a,className:"flex items-center gap-1.5 text-xs text-status-error hover:underline","data-testid":"invoke-issues",children:[s.jsx(rt,{className:"w-3.5 h-3.5",strokeWidth:1.5}),i," ",i===1?"issue":"issues"," to resolve"]}):n?s.jsx("p",{className:"text-xs text-status-error",role:"alert",children:n}):null,x&&s.jsx(mr,{workflowId:o,outcome:c.outcome,executionPath:l})]}),s.jsx("div",{className:"shrink-0",children:x?s.jsx("button",{type:"button",onClick:e,className:"text-xs text-accent hover:underline","data-testid":"invoke-again",children:"Submit again"}):s.jsx("button",{type:"button",onClick:t,disabled:r,className:"btn-primary px-8 py-2","data-testid":"invoke-start",children:r?"Submitting…":"Submit"})})]}),x&&c.outcome!==S.RUNNING&&s.jsx(gr,{payload:c.payload})]})}const Z="invoke-help",yr=380,W={INSTRUCTIONS:"instructions",ISSUES:"issues"};function jr({view:t,onViewChange:e,onClose:r,helpMarkdown:n,errors:i,schema:a}){const o=[];n&&o.push({id:W.INSTRUCTIONS,icon:Zt,label:"Instructions",content:s.jsx(K,{content:n})}),o.push({id:W.ISSUES,icon:rt,label:"Issues",content:s.jsx(ne,{errors:i,schema:a})});const l=o.some(d=>d.id===t)?t:o[0].id;return s.jsx(on,{views:o,activeId:l,onViewChange:d=>e(d),onClose:r,stickyClassName:"h-full min-h-0",labelInline:!0})}function Nr({schema:t,context:e,errors:r,enabled:n=!0}){const i=an(),a=n?i==null?void 0:i.setPanel:void 0,o=n?i==null?void 0:i.closePanel:void 0,l=(i==null?void 0:i.ownerKey)??null,d=(i==null?void 0:i.open)??!1,[u,c]=g.useState(null),x=g.useMemo(()=>Bs(t,e),[t,e]),p=g.useCallback(()=>{c(null),o==null||o(Z)},[o]);g.useEffect(()=>{!a||!u||a(s.jsx(jr,{view:u,onViewChange:c,onClose:p,helpMarkdown:x,errors:r,schema:t}),{key:Z,width:yr})},[a,u,x,r,t,p]),g.useEffect(()=>{u&&d&&l&&l!==Z&&c(null)},[u,d,l]);const m=g.useRef(o);return m.current=o,g.useEffect(()=>()=>{var b;(b=m.current)==null||b.call(m,Z)},[]),{helpMarkdown:x,hasInstructions:!!x,open:u!==null,showInstructions:()=>c(W.INSTRUCTIONS),showIssues:()=>c(W.ISSUES),close:p}}function vr({selected:t,schema:e,metadata:r,lookup:n,submission:i,lead:a,prefill:o,host:l=$.PAGE}){const d=l===$.MODAL,[u,c]=g.useState(()=>Ot(e,o)),[x,p]=g.useState(!1),[m,b]=g.useState([]),[f,h]=g.useState(null),[j,A]=g.useState(null);g.useEffect(()=>{c(Ot(e,o)),p(!1),b([]),h(null),A(null),i.reset()},[t.workflow_type]);const y=g.useMemo(()=>({...ce(r,n),resolver:null}),[r,n]),N=g.useMemo(()=>{try{const T=JSON.parse(u);return{...y,resolver:T,input:T}}catch{return y}},[u,y]);g.useEffect(()=>{x&&b(Ft(u,y).errors)},[u,x,y]);const v=m.length>0?m:i.violations,k=Nr({schema:e,context:N,errors:v,enabled:!d}),C=d?()=>A(W.ISSUES):k.showIssues,M=d?()=>A(T=>T===W.INSTRUCTIONS?null:W.INSTRUCTIONS):k.showInstructions;g.useEffect(()=>{i.violations.length>0&&C()},[i.violations]);const E=()=>{p(!0);const T=Ft(u,y);if(T.parseError){h(T.parseError);return}if(h(null),T.errors.length>0){b(T.errors),C();return}b([]),i.submit(T.payload,r)},_=d&&j===W.ISSUES&&v.length>0,O=d&&j===W.INSTRUCTIONS&&k.helpMarkdown;return s.jsxs("div",{"data-testid":"rich-invoke-form",children:[s.jsxs("div",{className:"space-y-6 pb-6",children:[a,O&&s.jsx("div",{className:"px-4 py-3 bg-surface-hover","data-testid":"invoke-inline-help",children:s.jsx(K,{content:k.helpMarkdown})}),s.jsx(Hr,{value:u,onChange:c,submitAttempted:x,escalationContext:y,onOpenHelp:k.hasInstructions?M:void 0}),_&&s.jsx("div",{"data-testid":"invoke-inline-issues",children:s.jsx(ne,{errors:v,schema:e})})]}),s.jsx(pe,{onSubmitAgain:i.reset,onSubmit:E,pending:i.pending,error:f??i.error,issueCount:v.length,onShowIssues:C,startedId:i.startedId,executionPath:i.executionPath,host:l})]})}const Jt=`{
2
- "data": {},
3
- "metadata": {}
4
- }`;function kr(t){return typeof t=="boolean"?"boolean":typeof t=="number"?"number":Array.isArray(t)?"array":t!==null&&typeof t=="object"?"object":"string"}function Gt(t){if(!t)return[];const e=t.data;return!e||typeof e!="object"?[]:Object.entries(e).map(([r,n])=>({key:r,type:kr(n),defaultValue:n}))}function ot(t){return{...t}}function Ht(t,e){return JSON.stringify({data:t,metadata:e},null,2)}function wr({selectedConfig:t,isJsonMode:e,hasFormView:r,jsonInput:n,formFields:i,dataFields:a,onJsonChange:o,onToggleMode:l,onUpdateFormField:d,onSetFormFields:u}){return s.jsxs("div",{children:[s.jsxs("div",{className:"flex items-baseline justify-between mb-2",children:[s.jsx("label",{className:"block text-xs text-text-secondary",children:"Envelope"}),s.jsxs("div",{className:"flex items-center gap-3",children:[r&&s.jsx("button",{type:"button",onClick:l,className:"text-2xs text-accent hover:underline",children:e?"Form view":"JSON view"}),t.envelope_schema?s.jsx("span",{className:"text-2xs text-accent",children:"Pre-filled from workflow config"}):s.jsx("span",{className:"text-2xs text-status-warning",children:"No template"})]})]}),!t.envelope_schema&&s.jsx("div",{className:"bg-surface-sunken border border-surface-border rounded px-4 py-3 mb-3",children:s.jsxs("p",{className:"text-xs text-text-secondary leading-relaxed",children:["This workflow has no input template. Edit the JSON directly below, or ",s.jsx(it,{to:"/workflows/registry/new",className:"text-status-success hover:underline",children:"register it"})," in the Workflow Registry with an envelope schema for pre-filled fields and form-based input."]})}),e||!r?s.jsx("textarea",{value:n,onChange:c=>o(c.target.value),className:"input-json",rows:12,spellCheck:!1}):s.jsx("div",{className:"space-y-3",children:a.map(({key:c,type:x})=>{var f,h;const p=i[c],m=typeof p=="string"?p:JSON.stringify(p??(x==="array"?[]:{}),null,2),b=Math.min(20,Math.max(4,((h=(f=m==null?void 0:m.split)==null?void 0:f.call(m,`
5
- `))==null?void 0:h.length)??4));return s.jsxs("div",{children:[s.jsxs("label",{className:"block text-2xs font-semibold uppercase tracking-widest text-text-tertiary mb-1",children:[c,s.jsx("span",{className:"ml-2 font-normal normal-case",children:x})]}),x==="boolean"?s.jsxs("select",{value:String(p??!1),onChange:j=>d(c,j.target.value,x),className:"select text-xs w-full",children:[s.jsx("option",{value:"true",children:"true"}),s.jsx("option",{value:"false",children:"false"})]}):x==="object"||x==="array"?s.jsx("textarea",{value:m,onChange:j=>{try{d(c,JSON.parse(j.target.value),x)}catch{u({...i,[c]:j.target.value})}},className:"input-json w-full",rows:b,spellCheck:!1}):s.jsx("input",{type:x==="number"?"number":"text",value:String(p??""),onChange:j=>d(c,j.target.value,x),className:"input text-xs w-full"})]},c)})}),s.jsxs("p",{className:"text-2xs text-text-tertiary mt-1.5",children:["The envelope wraps your workflow input. ",s.jsx("code",{className:"text-accent/80",children:"data"})," holds workflow-specific fields; ",s.jsx("code",{className:"text-accent/80",children:"metadata"})," is optional context."]})]})}const qt="lt:invoke:prefill";function Er({selected:t,metadata:e,submission:r,lead:n,prefill:i,host:a=$.PAGE}){const[o,l]=g.useState(Jt),[d,u]=g.useState(""),[c,x]=g.useState({}),[p,m]=g.useState(!1),b=g.useMemo(()=>{const N=t.envelope_schema??null;if(!i||Object.keys(i).length===0)return N;const v=N==null?void 0:N.data,k={...v&&typeof v=="object"?v:{},...i};return{...N??{},data:k}},[t.envelope_schema,i]),f=g.useMemo(()=>Gt(b),[b]),h=f.length>0;g.useEffect(()=>{u(""),r.reset();const N=a===$.PAGE?sessionStorage.getItem(qt):null;if(N){sessionStorage.removeItem(qt),l(N);try{const k=JSON.parse(N),C=(k==null?void 0:k.data)??k;C&&typeof C=="object"&&x(ot(C))}catch{}m(!0);return}l(b?JSON.stringify(b,null,2):Jt);const v=b==null?void 0:b.data;x(v&&typeof v=="object"?ot(v):{}),m(!Gt(b).length)},[t.workflow_type]);const j=()=>{if(p)try{const N=JSON.parse(o);N.data&&typeof N.data=="object"&&x(ot(N.data))}catch{}else l(Ht(c,e));m(!p)},A=(N,v,k)=>{let C=v;k==="number"?C=v===""?0:Number(v):k==="boolean"&&(C=v==="true"||v===!0);const M={...c,[N]:C};x(M),l(Ht(M,e))},y=()=>{u("");let N;try{N=JSON.parse(o)}catch{u("Invalid JSON");return}const{data:v,metadata:k}=N;if(!v||typeof v!="object"){u('Envelope must include a "data" object');return}r.submit(v,k??{})};return s.jsxs("div",{children:[s.jsxs("div",{className:"space-y-6 pb-6",children:[n,s.jsx(wr,{selectedConfig:t,isJsonMode:p,hasFormView:h,jsonInput:o,formFields:c,dataFields:f,onJsonChange:N=>{l(N),u("")},onToggleMode:j,onUpdateFormField:A,onSetFormFields:x})]}),s.jsx(pe,{onSubmitAgain:r.reset,onSubmit:y,pending:r.pending,error:d||r.error,startedId:r.startedId,executionPath:r.executionPath,host:a})]})}function Ar({workflow:t,workflowId:e,onDone:r,onRetry:n}){var d;const i=vt(e),a=i.outcome===S.FAILED,o=i.outcome===S.RUNNING,l=a&&typeof((d=i.payload)==null?void 0:d.error)=="string"?i.payload.error:null;return s.jsxs("div",{className:"flex flex-col gap-4","data-testid":"run-receipt","data-outcome":i.outcome,children:[s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx(Nt,{icon:t.icon,tier:t.tier,className:"w-6 h-6 shrink-0 text-accent"}),s.jsx(de,{outcome:i.outcome,className:"text-sm"})]}),o&&s.jsx(kt,{}),l&&s.jsx("p",{className:"text-xs text-status-error",role:"alert",children:l}),!o&&s.jsx(ue,{payload:l?void 0:i.payload}),s.jsxs("div",{className:"flex justify-end gap-2 pt-2 border-t border-surface-border/40",children:[a&&s.jsx("button",{type:"button",onClick:n,className:"btn-secondary text-xs","data-testid":"run-retry",children:"Try again"}),s.jsx("button",{type:"button",onClick:r,className:"btn-primary text-xs px-6","data-testid":"run-done",children:o||a?"Close":"Done"})]})]})}function fe(t,e){var n;const r=(n=t.envelope_schema)==null?void 0:n.metadata;return{...r&&typeof r=="object"?r:{},...e}}function Ir({workflow:t,prefill:e,onClose:r}){const n=g.useMemo(()=>fe(t,e.metadata),[t,e.metadata]),i=Array.isArray(t.input_lookups)&&t.input_lookups.length>0,{data:a}=ln(t.workflow_type,i),o=g.useMemo(()=>a?cn(a.lookups):void 0,[a]),l=(a==null?void 0:a.lookups.filter(x=>x.missing))??[],d=xe(t,{certified:t.certified,overrideBot:""}),u=t.description?s.jsx(K,{content:t.description,className:"text-xs text-text-secondary leading-relaxed"}):void 0,c=d.startedId!==null;return s.jsxs("div",{"data-testid":"invoke-modal",children:[c&&s.jsx(Ar,{workflow:t,workflowId:d.startedId,onDone:r,onRetry:d.reset}),s.jsxs("div",{hidden:c,children:[l.length>0&&s.jsxs("p",{className:"flex items-center gap-1.5 text-2xs text-status-warning mb-4","data-testid":"lookup-missing",children:[s.jsx(Qt,{className:"w-3 h-3 shrink-0",strokeWidth:1.5}),l.map(x=>`${x.domain}/${x.key} v${x.version}`).join(", ")," ",l.length===1?"is":"are"," not available; the fields that read ",l.length===1?"it":"them"," fall back to plain inputs."]}),t.input_schema?s.jsx(vr,{selected:t,schema:t.input_schema,metadata:n,lookup:o,submission:d,lead:u,prefill:e.data,host:$.MODAL}):s.jsx(Er,{selected:t,metadata:n,submission:d,lead:u,prefill:e.data,host:$.MODAL})]})]})}function Cr({open:t,onClose:e,workflow:r,prefill:n}){const i=s.jsxs("span",{className:"flex items-center gap-2 min-w-0",children:[s.jsx(Nt,{icon:r.icon,tier:r.tier,className:"w-4 h-4 shrink-0 text-accent"}),s.jsx("span",{className:"truncate",title:r.workflow_type,children:ee(r.workflow_type)})]});return s.jsx(se,{open:t,onClose:e,title:i,maxWidth:"max-w-2xl",closeOnBackdrop:!1,children:s.jsx(Ir,{workflow:r,prefill:n,onClose:e})})}const Or={[z.LINK]:"inline-flex items-center gap-1.5 text-xs text-accent hover:text-accent-hover transition-colors",[z.BUTTON]:"btn-secondary inline-flex items-center gap-1.5 text-xs px-3 py-1.5"};function Tr({fieldKey:t,schema:e,escalationContext:r}){var u;const n=g.useMemo(()=>or(e),[e]),{data:i,isPending:a}=dn(),o=i==null?void 0:i.find(c=>c.workflow_type===(n==null?void 0:n.workflow)),l=(u=r==null?void 0:r.escalation)==null?void 0:u.status,d=l!==void 0&&l!==xn.PENDING;return!n||d?null:a?s.jsx("div",{className:"h-4 w-32 rounded bg-surface-hover animate-pulse","data-testid":`invoke-widget-${t}-loading`}):o?s.jsx(Rr,{fieldKey:t,schema:e,config:n,workflow:o,escalationContext:r}):null}function Rr({fieldKey:t,schema:e,config:r,workflow:n,escalationContext:i}){var _;const a=i,o=g.useMemo(()=>lr(r,a),[r,a]),l=g.useMemo(()=>fe(n,o.metadata),[n,o.metadata]),d=xe(n,{certified:n.certified,overrideBot:""}),u=vt(d.startedId??""),[c,x]=g.useState([]),[p,m]=g.useState(!1),[b,f]=g.useState(!1),h=(e==null?void 0:e.title)??ee(n.workflow_type),j=e==null?void 0:e.description,A=r.icon?s.jsx(Nt,{icon:n.icon,tier:n.tier,className:"w-3.5 h-3.5 shrink-0"}):null,y=()=>{m(!1),d.submit(o.data,l)},N=()=>{if(r.modal){f(!0);return}if(x([]),n.input_schema){const O=_n(n.input_schema,o.data,ce(l));if(O.length>0){x(O);return}}r.confirm?m(!0):y()},v=()=>{x([]),d.reset(),f(!0)},k=c.length>0?c:d.violations,C=d.startedId!==null,M=C&&u.outcome===S.RUNNING,E=C&&u.outcome===S.FAILED&&typeof((_=u.payload)==null?void 0:_.error)=="string"?u.payload.error:null;return s.jsxs("div",{"data-field-key":t,"data-testid":`invoke-widget-${t}`,children:[s.jsx(R,{children:h}),j&&s.jsx(P,{children:j}),s.jsxs("div",{className:"mt-1 flex flex-col gap-1.5",children:[C&&s.jsxs(s.Fragment,{children:[s.jsx(de,{outcome:u.outcome}),M&&s.jsx(kt,{}),E&&s.jsx("p",{className:"text-2xs text-status-error",role:"alert",children:E}),!M&&s.jsx(ue,{payload:E?void 0:u.payload})]}),!M&&s.jsxs("button",{type:"button",onClick:N,disabled:d.pending,className:`self-start ${Or[r.variant]}`,"data-testid":`invoke-control-${t}`,children:[A,d.pending?"Starting…":h]}),k.length>0&&s.jsxs("div",{className:"text-2xs",role:"alert","data-testid":`invoke-issues-${t}`,children:[s.jsx("ul",{className:"space-y-0.5 text-status-error",children:k.map(O=>s.jsxs("li",{className:"flex items-start gap-1.5",children:[s.jsx(rt,{className:"w-3 h-3 mt-px shrink-0",strokeWidth:1.5}),s.jsxs("span",{children:[s.jsx("span",{className:"font-semibold",children:O.field})," · ",O.message]})]},O.field))}),s.jsx("button",{type:"button",onClick:v,className:"mt-1 text-accent hover:underline","data-testid":`invoke-open-form-${t}`,children:"Open form"})]}),k.length===0&&d.error&&s.jsx("p",{className:"text-2xs text-status-error",role:"alert",children:d.error})]}),r.confirm&&s.jsxs(se,{open:p,onClose:()=>m(!1),title:h,children:[s.jsx("p",{className:"text-sm text-text-secondary mb-5",children:q(r.confirm,i??{})}),s.jsxs("div",{className:"flex justify-end gap-2",children:[s.jsx("button",{type:"button",onClick:()=>m(!1),className:"btn-secondary text-xs",children:"Cancel"}),s.jsx("button",{type:"button",onClick:y,className:"btn-primary text-xs","data-testid":`invoke-confirm-${t}`,children:h})]})]}),s.jsx(Cr,{open:b,onClose:()=>f(!1),workflow:n,prefill:o})]})}const lt={"file-upload":Fn,"code-editor":Pn,signature:$n,"rich-text":Dn,markdown:Wn,checklist:Jn,attachment:Pt,image:Pt,link:qn,escalation:Yn,"escalation-list":er,invoke:Tr},_r=new Set(["string","number","integer","boolean","array","object"]);function Lr(t,e){const r=t==null?void 0:t.type;if(typeof r=="string"&&_r.has(r))return r;if(e==null)return"null";if(Array.isArray(e))return"array";const n=typeof e;return n==="number"||n==="boolean"||n==="string"?n:"object"}const ct="dictionary",Sr=new Set(["markdown","attachment","image"]);function me(t,e){if(!e)return;const r=t==null?void 0:t["x-lt-section-options"],n=r==null?void 0:r[e];return n&&typeof n=="object"?n:void 0}function Mr(t,e,r){var l,d;const n=(l=t==null?void 0:t.properties)==null?void 0:l[r];if((n==null?void 0:n.readOnly)!==!0)return!1;const i=n==null?void 0:n["x-lt-widget"];if(typeof i=="string"&&Sr.has(i))return!1;const a=n==null?void 0:n["x-lt-display"];if(typeof a=="string")return a===ct;const o=(d=me(t,e))==null?void 0:d.display;return typeof o=="string"?o===ct:(t==null?void 0:t["x-lt-display"])===ct}function Fr(t,e,r,n){var a;const i=[];for(const o of t){const[l]=o,d=i[i.length-1];if(Mr(e,r,l)){(d==null?void 0:d.kind)==="dictionary"?d.entries.push(o):i.push({kind:"dictionary",entries:[o]});continue}const u=(a=e==null?void 0:e.properties)==null?void 0:a[l],c=u==null?void 0:u["x-lt-column-group"];if(n==="two-column"&&typeof c=="string"&&c.trim()){(d==null?void 0:d.kind)==="column-group"&&d.name===c?d.entries.push(o):i.push({kind:"column-group",name:c,entries:[o]});continue}i.push({kind:"field",entry:o})}return i}function Pr({value:t,options:e,nullable:r,fieldKey:n,label:i,helperText:a,isRequired:o,error:l,onBlur:d,ids:u,ariaProps:c,onChange:x}){const p=t==null||t===""?"":String(t),m=e.some(b=>String(b.value)===p);return s.jsxs("div",{children:[s.jsx(R,{isRequired:o,htmlFor:u.field,children:i}),a&&s.jsx(P,{id:u.help,children:a}),s.jsxs("select",{value:m?p:"",disabled:e.length===0,onChange:b=>{const f=e.find(h=>String(h.value)===b.target.value);x(f?f.value:null),d==null||d()},onBlur:d,"data-field-key":n,className:Mn(!!l),...c,children:[(!m||r)&&s.jsx("option",{value:"",disabled:!r,children:"Choose…"}),e.map(b=>s.jsx("option",{value:String(b.value),children:b.label},String(b.value)))]}),s.jsx(D,{error:l,id:u.error})]})}function $r({value:t,options:e,fieldKey:r,label:n,helperText:i,isRequired:a,error:o,onBlur:l,ids:d,ariaProps:u,onChange:c}){const x=new Set(Array.isArray(t)?t:[]),p=m=>{const b=new Set(x);b.has(m)?b.delete(m):b.add(m),c(e.filter(f=>b.has(f.value)).map(f=>f.value)),l==null||l()};return s.jsxs("div",{role:"group","aria-label":n,"aria-required":a||void 0,"aria-invalid":o?!0:void 0,"aria-describedby":u["aria-describedby"],children:[s.jsx(R,{isRequired:a,children:n}),i&&s.jsx(P,{id:d.help,children:i}),e.length===0?s.jsx("p",{className:"text-xs text-text-tertiary italic mt-1",children:"No options yet"}):s.jsx("div",{className:"flex flex-wrap gap-2 mt-2",children:e.map((m,b)=>{const f=x.has(m.value);return s.jsxs("label",{className:`inline-flex items-center gap-1.5 cursor-pointer select-none px-3.5 py-2 text-sm border transition-colors rounded-[var(--lt-radius-field)] ${f?"bg-accent border-accent text-text-inverse":o?"bg-surface-field border-status-error/60 text-status-error":"bg-surface-field border-surface-field-border text-text-secondary hover:border-accent hover:text-text-primary"}`,children:[s.jsx("input",{type:"checkbox",checked:f,onChange:()=>p(m.value),className:"sr-only","data-testid":`multi-select-${r}-${String(m.value)}`,...b===0?{"data-field-key":r,id:d.field}:{}}),f&&s.jsx(Kt,{className:"w-3.5 h-3.5 shrink-0",strokeWidth:2.5}),m.label]},String(m.value))})}),s.jsx(D,{error:o,id:d.error})]})}function Vt(t){return typeof t=="string"?t:t==null?"":JSON.stringify(t,null,2)}function Bt(t){try{return{ok:!0,value:JSON.parse(t)}}catch{return{ok:!1}}}function Dr({value:t,fieldKey:e,label:r,helperText:n,isRequired:i,error:a,onBlur:o,ids:l,ariaProps:d,onChange:u}){const[c,x]=g.useState(()=>Vt(t));g.useEffect(()=>{if(typeof t=="string"){t!==c&&x(t);return}const m=Bt(c);!(m.ok&&JSON.stringify(m.value)===JSON.stringify(t??null))&&!(c.trim()===""&&t===null)&&x(Vt(t))},[t]);const p=c.split(`
6
- `).length;return s.jsxs("div",{children:[s.jsx(R,{isRequired:i,htmlFor:l.field,children:r}),n&&s.jsx(P,{id:l.help,children:n}),s.jsx("textarea",{value:c,onChange:m=>{const b=m.target.value;if(x(b),b.trim()===""){u(null);return}const f=Bt(b);u(f.ok?f.value:b)},onBlur:o,spellCheck:!1,"data-field-key":e,rows:Math.min(14,Math.max(4,p)),className:`${Y(!!a)} font-mono text-xs leading-relaxed`,...d}),s.jsx(D,{error:a,id:l.error})]})}const Yt={date:"date","date-time":"datetime-local",email:"email",uri:"url"},Wr={date:"max-w-48","date-time":"max-w-64"};function ge({fieldKey:t,value:e,onChange:r,onBlur:n,schema:i,isRequired:a,isReadOnly:o,error:l,escalationContext:d,submitAttempted:u}){var M;const c=(M=i==null?void 0:i.properties)==null?void 0:M[t],x=U(t,c),p=c==null?void 0:c["x-lt-widget"],m=Lr(c,e),b=`lt-field-${t}`,f={field:b,help:`${b}-help`,error:`${b}-error`},h=typeof(c==null?void 0:c.description)=="string"&&c.description.length>0?c.description:void 0,j={id:b,"aria-required":a||void 0,"aria-invalid":l?!0:void 0,"aria-describedby":l?f.error:h?f.help:void 0},A={fieldKey:t,label:x,helperText:h,isRequired:a,error:l,onBlur:n,ids:f,ariaProps:j,onChange:r},y=p==="markdown"&&typeof e=="string",N=(p==="attachment"||p==="image")&&typeof e=="string",v=!!(p&&p in lt);if(o&&!y&&!N&&!v){const E=e===null?"null":typeof e=="object"?JSON.stringify(e,null,2):String(e);return s.jsxs("div",{children:[s.jsx(R,{isRequired:a,children:x}),s.jsx("p",{className:"text-sm text-text-secondary mt-0.5 whitespace-pre-wrap",children:E})]})}if(p==="json"&&(m==="array"||m==="object"))return s.jsx(Dr,{...A,value:e});if(p&&p in lt){const E=lt[p],_=a||(c==null?void 0:c["x-lt-require-all"])===!0,O={fieldKey:t,schema:c,escalationContext:d,isRequired:_,submitAttempted:u,error:l};if((c==null?void 0:c.type)==="object"){const T=typeof e=="string"?e:typeof e=="object"&&e!==null&&!Array.isArray(e)?JSON.stringify(e):"";return s.jsx(E,{...O,value:T,onChange:J=>{try{r(JSON.parse(J))}catch{r(J)}}})}if(typeof e=="string")return s.jsx(E,{...O,value:e,onChange:T=>r(T)});if(typeof e=="object"&&e!==null&&!Array.isArray(e))return s.jsx(E,{...O,value:JSON.stringify(e),onChange:T=>{try{r(JSON.parse(T))}catch{r(T)}}})}const k=gt(c,d);if(m==="array"){if(k!==void 0&&(c==null?void 0:c["x-lt-options"])!==void 0)return s.jsx($r,{...A,value:e,options:k})}else if(k!==void 0&&m!=="object")return s.jsx(Pr,{...A,value:e,options:k,nullable:(c==null?void 0:c["x-lt-nullable"])===!0});switch(m){case"boolean":return s.jsxs("div",{children:[s.jsxs("label",{className:"flex items-center gap-2 cursor-pointer",children:[s.jsx("input",{type:"checkbox",checked:e===!0,onChange:E=>{r(E.target.checked),n==null||n()},className:"w-3.5 h-3.5 rounded accent-accent","data-field-key":t,...j}),s.jsxs("span",{className:"text-2xs font-semibold uppercase tracking-wider text-text-secondary",children:[x,a&&s.jsx("span",{className:"text-status-error ml-0.5",children:"*"})]})]}),h&&s.jsx(P,{id:f.help,children:h}),s.jsx(D,{error:l,id:f.error})]});case"number":case"integer":return s.jsxs("div",{children:[s.jsx(R,{isRequired:a,htmlFor:b,children:x}),h&&s.jsx(P,{id:f.help,children:h}),s.jsx("input",{type:"number",value:typeof e=="number"||typeof e=="string"?e:"",onChange:E=>r(parseFloat(E.target.value)||0),onBlur:n,step:"any","data-field-key":t,className:`${Y(!!l)} max-w-48`,...j}),s.jsx(D,{error:l,id:f.error})]});case"string":return C(typeof e=="string"?e:e==null?"":String(e));case"array":return Array.isArray(e)?s.jsxs("div",{children:[s.jsx(R,{isRequired:a,children:x}),s.jsx("div",{className:"flex flex-wrap gap-1.5 mt-1",children:e.map((E,_)=>s.jsx("span",{className:"px-2 py-0.5 text-2xs font-mono bg-surface-sunken rounded text-text-secondary",children:String(E)},_))})]}):C(e==null?"":String(e));case"object":{if(typeof e!="object"||e===null||Array.isArray(e))return C(e==null?"":String(e));const E=Object.entries(e);return s.jsxs("div",{children:[s.jsx(R,{isRequired:a,children:x}),s.jsx("div",{className:"ml-4 mt-2 pl-4 border-l border-accent-faint space-y-3",children:E.map(([_,O])=>s.jsx(ge,{fieldKey:_,value:O,onChange:T=>r({...e,[_]:T})},_))})]})}default:return s.jsxs("div",{children:[s.jsx(R,{isRequired:a,children:x}),s.jsx("p",{className:"text-xs text-text-tertiary italic mt-1",children:"null"})]})}function C(E){const _=c==null?void 0:c.format;if(_==="password")return s.jsxs("div",{children:[s.jsx(R,{isRequired:a,htmlFor:b,children:x}),h&&s.jsx(P,{id:f.help,children:h}),s.jsx("input",{type:"password",value:E,onChange:O=>r(O.target.value),onBlur:n,"data-field-key":t,className:Y(!!l),autoComplete:"off",...j}),s.jsx(D,{error:l,id:f.error})]});if(_&&_ in Yt)return s.jsxs("div",{children:[s.jsx(R,{isRequired:a,htmlFor:b,children:x}),h&&s.jsx(P,{id:f.help,children:h}),s.jsx("input",{type:Yt[_],value:E,onChange:O=>r(O.target.value),onBlur:n,"data-field-key":t,className:`${Y(!!l)} ${Wr[_]??""}`,...j}),s.jsx(D,{error:l,id:f.error})]});if(_==="textarea"||E.length>80){const O=c==null?void 0:c.maxLength,T=c==null?void 0:c["x-lt-max-length"],J=T?Number(Q(T,d)):NaN,V=O??(Number.isFinite(J)?J:void 0),B=V!==void 0&&E.length>V;return s.jsxs("div",{children:[s.jsx(R,{isRequired:a,htmlFor:b,children:x}),h&&s.jsx(P,{id:f.help,children:h}),s.jsx("textarea",{value:E,onChange:at=>{r(at.target.value),n==null||n()},onBlur:n,"data-field-key":t,className:`${Y(!!l)} leading-relaxed`,rows:Math.min(6,Math.max(3,Math.ceil(E.length/60))),...j}),V!==void 0&&s.jsxs("p",{className:`text-2xs mt-0.5 text-right tabular-nums ${B?"text-status-error font-medium":"text-text-quaternary"}`,children:[E.length," / ",V]}),s.jsx(D,{error:l,id:f.error})]})}return s.jsxs("div",{children:[s.jsx(R,{isRequired:a,htmlFor:b,children:x}),h&&s.jsx(P,{id:f.help,children:h}),s.jsx("input",{type:"text",value:E,onChange:O=>r(O.target.value),onBlur:n,"data-field-key":t,className:Y(!!l),...j}),s.jsx(D,{error:l,id:f.error})]})}}function Ur({items:t,columns:e=1}){if(t.length===0)return null;const r=e>=2&&t.length>1?"grid-cols-1 @dict-inline:grid-cols-[max-content_1fr] @dict-pairs:grid-cols-[max-content_1fr_max-content_1fr]":"grid-cols-1 @dict-inline:grid-cols-[max-content_1fr]";return s.jsx("div",{className:"@container",children:s.jsx("dl",{className:`grid ${r} items-baseline gap-x-6 @dict-pairs:gap-x-8 gap-y-1.5`,children:t.map(({key:n,label:i,value:a})=>s.jsxs(g.Fragment,{children:[s.jsx("dt",{className:"text-2xs font-semibold uppercase tracking-wide text-text-secondary mt-2 first:mt-0 @dict-inline:mt-0",children:i}),s.jsx("dd",{className:"text-sm text-text-primary break-words min-w-0","data-field-key":n,children:Jr(a)})]},n))})})}function Jr(t){return t==null||t===""?"—":typeof t=="boolean"?t?"Yes":"No":typeof t=="object"?JSON.stringify(t):String(t)}function Gr({name:t,entries:e,formSchema:r,layout:n,renderField:i}){const a=Fr(e,r,t,n),o=me(r,t),l=(o==null?void 0:o.columns)??(n==="two-column"?2:1),d=c=>c.map(([x,p])=>{var m;return{key:x,label:U(x,(m=r==null?void 0:r.properties)==null?void 0:m[x]),value:p}}),u=()=>a.map((c,x)=>c.kind==="dictionary"?s.jsx("div",{className:n==="two-column"?"col-span-full":"",children:s.jsx(Ur,{items:d(c.entries),columns:l})},`dict-${x}`):c.kind==="column-group"?s.jsx("div",{className:"@container",children:s.jsx("div",{className:"grid grid-cols-1 @grp-cols:grid-cols-2 gap-x-4 gap-y-5",children:c.entries.map(p=>i(p))})},`group-${c.name}-${x}`):i(c.entry));return s.jsxs("div",{className:t?"border border-surface-border bg-surface-sunken rounded-[var(--lt-radius-section)] p-4 animate-[section-enter_0.25s_ease-out]":"",children:[t&&s.jsx("p",{className:"mb-4 text-[1.40625rem] font-semibold tracking-wider text-heading [font-variant-caps:small-caps]",children:t}),n==="two-column"?s.jsx("div",{className:"@container",children:s.jsx("div",{className:"grid grid-cols-1 @form-cols:grid-cols-2 gap-x-col-gap gap-y-5",children:u()})}):s.jsx("div",{className:"space-y-5",children:u()})]})}function Hr({value:t,onChange:e,disabled:r,submitAttempted:n,escalationContext:i,onOpenHelp:a,onDisabledClick:o,disabledHint:l}){var Et,At;const[d,u]=g.useState({}),[c,x]=g.useState({}),[p,m]=g.useState(null),[b,f]=g.useState(!1),[h,j]=g.useState(new Set);g.useEffect(()=>{try{const w=JSON.parse(t);if(typeof w=="object"&&w!==null&&!Array.isArray(w)){const L={},I={};for(const[F,G]of Object.entries(w))F.startsWith("_")||F.startsWith("$")?I[F]=G:L[F]=G;u(L),x(I),m(I._form_schema&&typeof I._form_schema=="object"?I._form_schema:null),f(!1)}}catch{f(!0)}},[t]);const A=g.useCallback(w=>{u(w),e(JSON.stringify({...w,...c},null,2))},[c,e]),y=g.useCallback((w,L)=>{A({...d,[w]:L})},[d,A]),N=g.useCallback(w=>{j(L=>{if(L.has(w))return L;const I=new Set(L);return I.add(w),I})},[]);if(b)return s.jsx("p",{className:"text-xs text-status-error",children:"Unable to parse resolver data as form. Use the JSON editor below."});const v=Object.entries(d);if(v.length===0)return s.jsx("p",{className:"text-xs text-text-tertiary italic",children:"No resolver fields defined."});const k=p==null?void 0:p["x-lt-order"],C=k?[...v].sort((w,L)=>{const I=k.indexOf(w[0]),F=k.indexOf(L[0]);return(I===-1?1/0:I)-(F===-1?1/0:F)}):v,M={...i??{},resolver:d,input:d},E=C.filter(([w,L])=>{var F;const I=(F=p==null?void 0:p.properties)==null?void 0:F[w];return X(I==null?void 0:I["x-lt-showIf"],M)?!En(I,L):!1}),_=new Set((p==null?void 0:p.required)??[]),O=p==null?void 0:p["x-lt-layout"],T=p==null?void 0:p.title,J=p==null?void 0:p.description,V=typeof(p==null?void 0:p["x-lt-help"])=="string"||typeof(p==null?void 0:p["x-lt-context"])=="string",B=[];for(const w of E){const[L]=w,I=(Et=p==null?void 0:p.properties)==null?void 0:Et[L],F=((At=I==null?void 0:I["x-lt-section"])==null?void 0:At.trim())||null,G=B[B.length-1];!G||G.name!==F?B.push({name:F,entries:[w]}):G.entries.push(w)}const at=([w,L])=>{var Ct;const I=(Ct=p==null?void 0:p.properties)==null?void 0:Ct[w],F=(I==null?void 0:I.readOnly)===!0,G=(I==null?void 0:I["x-lt-span"])??1,It=_.has(w),be=h.has(w)||!!n,he=ae(L,I,It,be,M);return s.jsx("div",{className:`animate-[field-enter_0.2s_ease-out] ${O==="two-column"&&G>=2?"col-span-full":""}`,children:s.jsx(ge,{fieldKey:w,value:L,onChange:ye=>y(w,ye),onBlur:()=>N(w),schema:p,isRequired:It,isReadOnly:F,error:he,escalationContext:M,submitAttempted:!!n})},w)},wt=s.jsxs("div",{className:r?"pointer-events-none":void 0,inert:r||void 0,"aria-disabled":r||void 0,children:[T&&s.jsxs("div",{className:"mb-1 flex items-center gap-1.5",children:[s.jsx("h3",{className:"heading-3",children:T}),V&&a&&s.jsx("button",{type:"button",onClick:a,title:"Open instructions","aria-label":"Open instructions",className:"p-1 rounded-md text-text-tertiary hover:text-accent hover:bg-surface-hover transition-colors",children:s.jsx(Zt,{className:"w-4 h-4",strokeWidth:1.5})})]}),J&&s.jsx("p",{className:"text-sm text-text-secondary leading-relaxed mb-6",children:J}),s.jsx("div",{className:"space-y-8",children:B.map((w,L)=>s.jsx(Gr,{name:w.name,entries:w.entries,formSchema:p,layout:O,renderField:at},w.name??`__s${L}`))})]});return r?s.jsx(Sn,{hint:l,onLockedClick:o,children:wt}):s.jsx("div",{className:"pb-8 max-w-form",children:wt})}export{ne as E,Er as L,Hr as R,Nt as W,vr as a,Ft as b,ce as c,U as d,Zr as f,mn as i,Qn as r,Ot as s,xe as u,oe as v,pr as w};
7
- //# sourceMappingURL=ResolverForm-BwgjIX97.js.map