@xopcai/xopc 0.0.302 → 0.0.306

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 (364) hide show
  1. package/README.md +4 -4
  2. package/README.zh-CN.md +4 -4
  3. package/dist/browser-ext/dist/assets/{auth-B_9ZuGDx.js → auth-C3yV1y_l.js} +67 -22
  4. package/dist/browser-ext/dist/background.js +4 -4
  5. package/dist/browser-ext/dist/sidepanel.html +1 -1
  6. package/dist/browser-ext/dist/sidepanel.js +3 -3
  7. package/dist/browser-ext/manifest.json +1 -1
  8. package/dist/extensions/feishu/xopc.extension.json +0 -3
  9. package/dist/extensions/telegram/xopc.extension.json +1 -4
  10. package/dist/extensions/weixin/xopc.extension.json +0 -3
  11. package/dist/gateway/static/root/assets/{activity-store-DCi5rh4e.js → activity-store-DLtim-_I.js} +1 -1
  12. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-C0zP6W2B.js → agent-avatar-dicebear-iQXtiilH.js} +1 -1
  13. package/dist/gateway/static/root/assets/agent-defaults-settings-panel-CxOv4ivK.js +1 -0
  14. package/dist/gateway/static/root/assets/agents-DzKx7z3k.js +1 -0
  15. package/dist/gateway/static/root/assets/{api-CAV9PN9i.js → api-DfSU0-lD.js} +1 -1
  16. package/dist/gateway/static/root/assets/api-gpHh07OL.js +1 -0
  17. package/dist/gateway/static/root/assets/app-management-settings-panel-BpYFKz7B.js +1 -0
  18. package/dist/gateway/static/root/assets/{appearance-settings-ZFjV_opr.js → appearance-settings-BQfR5vrq.js} +1 -1
  19. package/dist/gateway/static/root/assets/apps-page-BceB7JHZ.js +1 -0
  20. package/dist/gateway/static/root/assets/{archive-plugin-MaKWrpgC.js → archive-plugin-BxOvZ-ZX.js} +1 -1
  21. package/dist/gateway/static/root/assets/{attachment-load-IfqbP2BN.js → attachment-load-B0FzTMAJ.js} +1 -1
  22. package/dist/gateway/static/root/assets/{automations-page-CeI2NGSO.js → automations-page-BpXuPaPg.js} +1 -1
  23. package/dist/gateway/static/root/assets/automations-workspace-Cn_p8zY_.js +6 -0
  24. package/dist/gateway/static/root/assets/{binary-plugins-jvQ6FaBZ.js → binary-plugins-BP7wfpqy.js} +1 -1
  25. package/dist/gateway/static/root/assets/{block-editor-D4ZIVQbk.css → block-editor-BdOTO0Yo.css} +1 -1
  26. package/dist/gateway/static/root/assets/{block-editor-B7U3qlB3.js → block-editor-oMLvdnOQ.js} +3 -3
  27. package/dist/gateway/static/root/assets/{browser-automation-inputs-BGT0xoTv.js → browser-automation-inputs-DTxSZ00u.js} +1 -1
  28. package/dist/gateway/static/root/assets/{browser-automations-page-DvLAwoiQ.js → browser-automations-page-IbJnwEY4.js} +2 -2
  29. package/dist/gateway/static/root/assets/browser-settings-page-CCUO3G23.js +3 -0
  30. package/dist/gateway/static/root/assets/button-CS04eWY9.js +1 -0
  31. package/dist/gateway/static/root/assets/capabilities-settings-panel-BjMb5H2_.js +8 -0
  32. package/dist/gateway/static/root/assets/channels-settings-P22-_i13.js +1 -0
  33. package/dist/gateway/static/root/assets/{channels-status-swr-C_icwbWj.js → channels-status-swr-D2AmAoty.js} +1 -1
  34. package/dist/gateway/static/root/assets/{chat-terminal-dock-BtL71IOs.js → chat-terminal-dock-B-yI3Mi1.js} +2 -2
  35. package/dist/gateway/static/root/assets/{computer-settings-page-Bu6ZJtmS.js → computer-settings-page-CWx_jnng.js} +1 -1
  36. package/dist/gateway/static/root/assets/connectors-page-BLgPORmH.js +2 -0
  37. package/dist/gateway/static/root/assets/cron-expression-DMRRL4Zg.js +2 -0
  38. package/dist/gateway/static/root/assets/date-picker-BSwL0e6E.js +1 -0
  39. package/dist/gateway/static/root/assets/{dependency-picker-BNugauiZ.js → dependency-picker-BQTspLzC.js} +1 -1
  40. package/dist/gateway/static/root/assets/{desktop-pet-DTy_3-OY.js → desktop-pet-C3lFxDF6.js} +1 -1
  41. package/dist/gateway/static/root/assets/desktop-pet-settings-Y8pjpXFE.js +1 -0
  42. package/dist/gateway/static/root/assets/device-pairing-wizard-DM4_GMzo.js +1 -0
  43. package/dist/gateway/static/root/assets/{extension-debug-page-C3F7RiGW.js → extension-debug-page-CVGiGVcR.js} +1 -1
  44. package/dist/gateway/static/root/assets/{extension-page-C0jhcCT_.js → extension-page-g3JtCP_y.js} +1 -1
  45. package/dist/gateway/static/root/assets/{extension-settings-page-CNvJQkrr.js → extension-settings-page-CjpoKV1f.js} +1 -1
  46. package/dist/gateway/static/root/assets/{gateway-config-swr-D5AM8cyQ.js → gateway-config-swr-BSvXXpKM.js} +1 -1
  47. package/dist/gateway/static/root/assets/gateway-realtime-BDCpS7U1.js +1 -0
  48. package/dist/gateway/static/root/assets/gateway-realtime-store-BGmP1obI.js +1 -0
  49. package/dist/gateway/static/root/assets/gateway-settings-CYG9WCZn.js +1 -0
  50. package/dist/gateway/static/root/assets/{gateway-startup-retry-CSJWdnFs.js → gateway-startup-retry-Caf8g3sC.js} +1 -1
  51. package/dist/gateway/static/root/assets/{heartbeat-settings-Cd1VJsHe.js → heartbeat-settings-Cl834-SS.js} +1 -1
  52. package/dist/gateway/static/root/assets/home-page-CB_XVtIM.js +1 -0
  53. package/dist/gateway/static/root/assets/{image-generation-api-BNh604hw.js → image-generation-api-BwEWBUVC.js} +1 -1
  54. package/dist/gateway/static/root/assets/imports-page-CoMlgSIA.js +1 -0
  55. package/dist/gateway/static/root/assets/index-CI37dTAn.css +1 -0
  56. package/dist/gateway/static/root/assets/index-Do9MltC4.js +79 -0
  57. package/dist/gateway/static/root/assets/keyboard-shortcuts-settings-CNq5D4pe.js +1 -0
  58. package/dist/gateway/static/root/assets/local-app-workbench-page-BxQlEje6.js +2 -0
  59. package/dist/gateway/static/root/assets/{local-apps-page-DyrFxW3G.js → local-apps-page-DQnRA598.js} +1 -1
  60. package/dist/gateway/static/root/assets/{locale-store-DLK05Y1a.js → locale-store-D16nmbaN.js} +1 -1
  61. package/dist/gateway/static/root/assets/logs-page-CT5GrcMs.js +2 -0
  62. package/dist/gateway/static/root/assets/management-settings-DKcO5fQ-.js +1 -0
  63. package/dist/gateway/static/root/assets/{markdown-view-B8maDRWh.js → markdown-view-DCp4BlZP.js} +2 -2
  64. package/dist/gateway/static/root/assets/{media-plugins-5DakFba_.js → media-plugins-Cy64sn_C.js} +1 -1
  65. package/dist/gateway/static/root/assets/messages-C-9oo69N.js +3 -0
  66. package/dist/gateway/static/root/assets/note-detail-panel-5dc3LKTL.js +5 -0
  67. package/dist/gateway/static/root/assets/notes-page-AbwxgXuG.js +8 -0
  68. package/dist/gateway/static/root/assets/{page-tabs-DzJpglJJ.js → page-tabs-CgEoHSVT.js} +1 -1
  69. package/dist/gateway/static/root/assets/{popover-select-DldSX8GX.js → popover-select-9i-ZtHXL.js} +1 -1
  70. package/dist/gateway/static/root/assets/{preview-open-alternatives-Dj6LJsuQ.js → preview-open-alternatives-Ck2uKTbf.js} +1 -1
  71. package/dist/gateway/static/root/assets/{proactive-page-CwudBdrQ.js → proactive-page-Dr1mCJhZ.js} +1 -1
  72. package/dist/gateway/static/root/assets/{product-open-page-CujZXOea.js → product-open-page-DbZvJ5GE.js} +1 -1
  73. package/dist/gateway/static/root/assets/project-detail-page-DnE1zI1c.js +1 -0
  74. package/dist/gateway/static/root/assets/projects-page-BD0nLYxk.js +1 -0
  75. package/dist/gateway/static/root/assets/{registry-api-BMFL4vis.js → registry-api-DcQdwpPu.js} +1 -1
  76. package/dist/gateway/static/root/assets/remote-access-hub-TYuE6A3S.js +1 -0
  77. package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-DV554qyN.js → runtime-tools-settings-panel-CPwdgWKo.js} +2 -2
  78. package/dist/gateway/static/root/assets/{schema-form-Bh2Er67B.js → schema-form-8psK4cFO.js} +1 -1
  79. package/dist/gateway/static/root/assets/sessions-page-BcWDQQFX.js +1 -0
  80. package/dist/gateway/static/root/assets/settings-advanced-gate-DzGQX6Hq.js +1 -0
  81. package/dist/gateway/static/root/assets/{settings-form-section-BsdM7P1d.js → settings-form-section-D_Gsz5rl.js} +1 -1
  82. package/dist/gateway/static/root/assets/{settings-page-3yEAqoME.js → settings-page-C_Tj_mkZ.js} +1 -1
  83. package/dist/gateway/static/root/assets/setup-status-panel-CE2X89qN.js +1 -0
  84. package/dist/gateway/static/root/assets/share-preview-page-B_M_oPsT.js +2 -0
  85. package/dist/gateway/static/root/assets/shares-settings-BL4H9Iym.js +1 -0
  86. package/dist/gateway/static/root/assets/skill-reload-api-WMKIgUOp.js +1 -0
  87. package/dist/gateway/static/root/assets/skills-page-DYgwzl5B.js +2 -0
  88. package/dist/gateway/static/root/assets/{skills-page.utils-dHBD7YqU.js → skills-page.utils-Cuh6s2HM.js} +1 -1
  89. package/dist/gateway/static/root/assets/{system-settings-panel-lItR5Kah.js → system-settings-panel-aassGyNb.js} +1 -1
  90. package/dist/gateway/static/root/assets/task-detail-page-BjeRslap.js +1 -0
  91. package/dist/gateway/static/root/assets/theme-store-RUBQBsFP.js +1 -0
  92. package/dist/gateway/static/root/assets/tunnel-api-DJYcPWIV.js +1 -0
  93. package/dist/gateway/static/root/assets/{use-autosave-DO50_g_S.js → use-autosave-QGYG7oMZ.js} +1 -1
  94. package/dist/gateway/static/root/assets/user-model-page-PrRsd4go.js +2 -0
  95. package/dist/gateway/static/root/assets/{voice-api-key-field-k7tWLXzM.js → voice-api-key-field-D1s0gIRW.js} +1 -1
  96. package/dist/gateway/static/root/assets/{voice-config-api-bZqN8-UF.js → voice-config-api-D2goEn5e.js} +1 -1
  97. package/dist/gateway/static/root/assets/{work-discovery-overlay-BHI6gO_u.js → work-discovery-overlay-DkFW9aJ6.js} +1 -1
  98. package/dist/gateway/static/root/assets/workflow-run-setup-panel-BYToUPUY.js +3 -0
  99. package/dist/gateway/static/root/assets/workflows-page-Z8iZe9YP.js +6 -0
  100. package/dist/gateway/static/root/index.html +14 -12
  101. package/dist/package.js +1 -1
  102. package/dist/packages/gateway-contract/src/device-pairing.js +100 -7
  103. package/dist/packages/gateway-contract/src/gateway-scopes.js +53 -0
  104. package/dist/packages/gateway-contract/src/index.js +2 -0
  105. package/dist/packages/realtime-client/src/index.js +14 -2
  106. package/dist/packages/realtime-protocol/src/index.js +18 -14
  107. package/dist/src/agent/agent-instance-gateway.d.ts +2 -0
  108. package/dist/src/agent/agent-manager.d.ts +2 -0
  109. package/dist/src/agent/agent-manager.js +40 -12
  110. package/dist/src/agent/agent-scope.d.ts +4 -1
  111. package/dist/src/agent/agent-scope.js +19 -3
  112. package/dist/src/agent/commands/command-isolation.js +11 -9
  113. package/dist/src/agent/commands/command-registry.js +18 -33
  114. package/dist/src/agent/context/audit.js +12 -2
  115. package/dist/src/agent/context/coordinator.d.ts +13 -3
  116. package/dist/src/agent/context/coordinator.js +27 -11
  117. package/dist/src/agent/context/execution-context.js +42 -22
  118. package/dist/src/agent/context/execution-context.types.d.ts +4 -2
  119. package/dist/src/agent/context/execution-scope.d.ts +2 -2
  120. package/dist/src/agent/context/execution-scope.js +1 -1
  121. package/dist/src/agent/context/project-context.d.ts +2 -2
  122. package/dist/src/agent/context/project-context.js +3 -3
  123. package/dist/src/agent/embedded/run-for-session.d.ts +1 -0
  124. package/dist/src/agent/embedded/run-for-session.js +7 -1
  125. package/dist/src/agent/inbound/attachment-pipeline.d.ts +2 -0
  126. package/dist/src/agent/inbound/attachment-pipeline.js +3 -3
  127. package/dist/src/agent/inbound/inbound-loop.js +1 -0
  128. package/dist/src/agent/inbound/turn-dispatcher.js +3 -3
  129. package/dist/src/agent/mcp/mcp-stdio-transport.js +5 -2
  130. package/dist/src/agent/memory/compaction-promotion.js +7 -2
  131. package/dist/src/agent/memory/create-memory-manager.js +1 -0
  132. package/dist/src/agent/memory/manager.d.ts +6 -0
  133. package/dist/src/agent/memory/manager.js +74 -39
  134. package/dist/src/agent/memory/runtime.d.ts +3 -3
  135. package/dist/src/agent/memory/runtime.js +11 -4
  136. package/dist/src/agent/orchestration/agent-orchestrator.js +4 -1
  137. package/dist/src/agent/prompt/cache-boundary.d.ts +2 -0
  138. package/dist/src/agent/prompt/cache-boundary.js +10 -1
  139. package/dist/src/agent/service/build-direct-message-content.d.ts +1 -0
  140. package/dist/src/agent/service/build-direct-message-content.js +2 -1
  141. package/dist/src/agent/service/direct-turn-helpers.js +3 -2
  142. package/dist/src/agent/service/process-direct-streaming.d.ts +3 -1
  143. package/dist/src/agent/service/process-direct-streaming.js +3 -2
  144. package/dist/src/agent/service/webchat-tts.d.ts +0 -4
  145. package/dist/src/agent/service/webchat-tts.js +20 -19
  146. package/dist/src/agent/tools/factory.js +3 -3
  147. package/dist/src/agent/tools/knowledge-memory-tool.d.ts +2 -2
  148. package/dist/src/agent/tools/knowledge-memory-tool.js +7 -7
  149. package/dist/src/browser/native-messaging-host.js +2 -2
  150. package/dist/src/channels/attachments/voice-stt-webchat.d.ts +3 -0
  151. package/dist/src/channels/attachments/voice-stt-webchat.js +22 -9
  152. package/dist/src/cli/commands/agent.js +2 -0
  153. package/dist/src/cli/commands/config.js +8 -9
  154. package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
  155. package/dist/src/cli/commands/extension-marketplace.js +69 -44
  156. package/dist/src/cli/commands/extension-pack.js +0 -2
  157. package/dist/src/cli/commands/extension.js +4 -25
  158. package/dist/src/cli/commands/gateway/lifecycle.js +1 -1
  159. package/dist/src/cli/commands/onboard/gateway.js +2 -1
  160. package/dist/src/cli/commands/update.js +1 -1
  161. package/dist/src/cli/utils/init-workspace-core.js +5 -2
  162. package/dist/src/config/index.js +2 -2
  163. package/dist/src/config/loader.d.ts +1 -0
  164. package/dist/src/config/loader.js +14 -1
  165. package/dist/src/config/schema.d.ts +10 -3
  166. package/dist/src/config/schema.js +10 -2
  167. package/dist/src/execution-environments/local-worktree-manager.js +17 -15
  168. package/dist/src/execution-environments/store.js +4 -2
  169. package/dist/src/execution-environments/types.d.ts +3 -0
  170. package/dist/src/execution-environments/types.js +2 -1
  171. package/dist/src/execution-environments/worktree-safety.d.ts +8 -0
  172. package/dist/src/execution-environments/worktree-safety.js +43 -0
  173. package/dist/src/extensions/activation-planner.d.ts +1 -1
  174. package/dist/src/extensions/activation-planner.js +1 -1
  175. package/dist/src/extensions/api-version.d.ts +4 -0
  176. package/dist/src/extensions/api-version.js +15 -0
  177. package/dist/src/extensions/api.d.ts +3 -9
  178. package/dist/src/extensions/api.js +26 -32
  179. package/dist/src/extensions/config-validation.d.ts +8 -0
  180. package/dist/src/extensions/config-validation.js +25 -0
  181. package/dist/src/extensions/extension-registry-impl.d.ts +20 -9
  182. package/dist/src/extensions/extension-registry-impl.js +79 -11
  183. package/dist/src/extensions/hooks.d.ts +1 -1
  184. package/dist/src/extensions/index.d.ts +2 -1
  185. package/dist/src/extensions/install-transaction.d.ts +2 -0
  186. package/dist/src/extensions/install-transaction.js +32 -21
  187. package/dist/src/extensions/install.js +18 -1
  188. package/dist/src/extensions/loader.d.ts +5 -5
  189. package/dist/src/extensions/loader.js +109 -47
  190. package/dist/src/extensions/lockfile.d.ts +3 -5
  191. package/dist/src/extensions/lockfile.js +41 -14
  192. package/dist/src/extensions/normalize-manifest.js +6 -60
  193. package/dist/src/extensions/sdk/index.d.ts +3 -2
  194. package/dist/src/extensions/sdk/index.js +2 -2
  195. package/dist/src/extensions/sdk/testing.js +0 -4
  196. package/dist/src/extensions/security.js +5 -7
  197. package/dist/src/extensions/types/core.d.ts +0 -5
  198. package/dist/src/extensions/types/index.d.ts +1 -1
  199. package/dist/src/extensions/types/manifest.d.ts +1 -25
  200. package/dist/src/extensions/types/providers.d.ts +1 -1
  201. package/dist/src/extensions/types/registration.d.ts +0 -12
  202. package/dist/src/extensions/update.js +71 -30
  203. package/dist/src/gateway/heartbeat/service.js +2 -2
  204. package/dist/src/gateway/hono/lib/config-payload.d.ts +3 -1
  205. package/dist/src/gateway/hono/routes/auth-registry-extensions.js +47 -10
  206. package/dist/src/gateway/hono/routes/devices.js +10 -7
  207. package/dist/src/gateway/hono/routes/endpoint-compatibility.js +6 -0
  208. package/dist/src/gateway/hono/routes/extension-gateway.js +0 -33
  209. package/dist/src/gateway/hono/routes/imports.js +1 -1
  210. package/dist/src/gateway/hono/routes/lazy-bundles.js +0 -1
  211. package/dist/src/gateway/hono/routes/local-apps.js +1 -1
  212. package/dist/src/gateway/hono/routes/realtime.js +30 -8
  213. package/dist/src/gateway/hono/routes/update.js +2 -2
  214. package/dist/src/gateway/hono/routes/user-model.js +25 -6
  215. package/dist/src/gateway/index.js +5 -2
  216. package/dist/src/gateway/lock.d.ts +2 -0
  217. package/dist/src/gateway/lock.js +31 -14
  218. package/dist/src/gateway/run-loop.js +3 -2
  219. package/dist/src/gateway/security/gateway-scopes.d.ts +2 -5
  220. package/dist/src/gateway/security/gateway-scopes.js +3 -45
  221. package/dist/src/gateway/security/index.js +2 -1
  222. package/dist/src/gateway/service/config-coordinator.js +1 -1
  223. package/dist/src/gateway/service.js +11 -7
  224. package/dist/src/heartbeat/index.js +1 -1
  225. package/dist/src/imports/importService.d.ts +1 -1
  226. package/dist/src/imports/inventory.js +16 -2
  227. package/dist/src/imports/productImport.js +5 -5
  228. package/dist/src/imports/types.d.ts +3 -3
  229. package/dist/src/infra/exec.d.ts +2 -2
  230. package/dist/src/infra/exec.js +32 -27
  231. package/dist/src/infra/gateway-processes.js +1 -1
  232. package/dist/src/infra/run-command.js +15 -50
  233. package/dist/src/infra/update-restart.js +1 -1
  234. package/dist/src/infra/update-runner.js +2 -2
  235. package/dist/src/infra/update-startup.js +1 -1
  236. package/dist/src/knowledge/connected-knowledge-pipeline.js +13 -3
  237. package/dist/src/knowledge-memory/domain.d.ts +17 -1
  238. package/dist/src/knowledge-memory/index.js +2 -2
  239. package/dist/src/knowledge-memory/repository.d.ts +26 -4
  240. package/dist/src/knowledge-memory/repository.js +171 -36
  241. package/dist/src/mcp/channel-bridge.js +7 -3
  242. package/dist/src/media-understanding/registry.js +6 -1
  243. package/dist/src/migrations/knowledge-memory-read-policy-config.d.ts +2 -0
  244. package/dist/src/migrations/knowledge-memory-read-policy-config.js +48 -0
  245. package/dist/src/migrations/runner.js +2 -1
  246. package/dist/src/process/bounded-output.d.ts +10 -0
  247. package/dist/src/process/bounded-output.js +41 -0
  248. package/dist/src/process/kill-tree.d.ts +6 -17
  249. package/dist/src/process/kill-tree.js +43 -75
  250. package/dist/src/process/process-spec.d.ts +39 -0
  251. package/dist/src/process/process-spec.js +13 -0
  252. package/dist/src/process/run-process.d.ts +4 -0
  253. package/dist/src/process/run-process.js +97 -0
  254. package/dist/src/providers/plugin-registry.d.ts +1 -1
  255. package/dist/src/providers/plugin-registry.js +6 -0
  256. package/dist/src/realtime/runtime.js +3 -1
  257. package/dist/src/session/store.js +1 -1
  258. package/dist/src/storage/sqlite/device-pairing-approval.js +1 -1
  259. package/dist/src/storage/sqlite/index.d.ts +1 -1
  260. package/dist/src/storage/sqlite/index.js +2 -2
  261. package/dist/src/storage/sqlite/migrations/180_execution_environment_ownership.sql +7 -0
  262. package/dist/src/storage/sqlite/migrations/181_knowledge_item_status_events.sql +12 -0
  263. package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
  264. package/dist/src/storage/sqlite/migrations/runner.js +3 -3
  265. package/dist/src/storage/sqlite/schema.js +1 -1
  266. package/dist/src/storage/sqlite/schema.sql +13 -0
  267. package/dist/src/storage/sqlite/transcript-repository.d.ts +4 -0
  268. package/dist/src/storage/sqlite/transcript-repository.js +36 -1
  269. package/dist/src/tui/backends/embedded-backend.d.ts +24 -8
  270. package/dist/src/tui/backends/embedded-backend.js +114 -10
  271. package/dist/src/tui/backends/gateway-realtime-backend.d.ts +18 -0
  272. package/dist/src/tui/backends/gateway-realtime-backend.js +32 -5
  273. package/dist/src/tui/components/assistant-message.d.ts +4 -1
  274. package/dist/src/tui/components/assistant-message.js +10 -2
  275. package/dist/src/tui/components/cell-render-mode.d.ts +4 -0
  276. package/dist/src/tui/components/cell-render-mode.js +1 -0
  277. package/dist/src/tui/components/chat-log.d.ts +17 -4
  278. package/dist/src/tui/components/chat-log.js +68 -50
  279. package/dist/src/tui/components/custom-editor.d.ts +2 -2
  280. package/dist/src/tui/components/custom-editor.js +5 -1
  281. package/dist/src/tui/components/pending-input-preview.d.ts +9 -0
  282. package/dist/src/tui/components/pending-input-preview.js +33 -0
  283. package/dist/src/tui/components/semantic-cell.d.ts +17 -0
  284. package/dist/src/tui/components/semantic-cell.js +29 -0
  285. package/dist/src/tui/components/tool-execution.d.ts +5 -1
  286. package/dist/src/tui/components/tool-execution.js +33 -10
  287. package/dist/src/tui/components/transcript-overlay.d.ts +29 -0
  288. package/dist/src/tui/components/transcript-overlay.js +114 -0
  289. package/dist/src/tui/components/tui-bottom-bar.js +3 -1
  290. package/dist/src/tui/components/user-message.d.ts +5 -1
  291. package/dist/src/tui/components/user-message.js +12 -1
  292. package/dist/src/tui/extension-host/load-extensions.d.ts +1 -1
  293. package/dist/src/tui/extension-host/runtime-context.js +2 -1
  294. package/dist/src/tui/extension-host/runtime.d.ts +1 -1
  295. package/dist/src/tui/format-tui-hotkeys.js +8 -1
  296. package/dist/src/tui/tui-agent-events.js +31 -0
  297. package/dist/src/tui/tui-backend.d.ts +23 -11
  298. package/dist/src/tui/tui-backend.js +1 -9
  299. package/dist/src/tui/tui-chat-input-state.d.ts +25 -0
  300. package/dist/src/tui/tui-chat-input-state.js +36 -0
  301. package/dist/src/tui/tui-command-formatters.js +2 -1
  302. package/dist/src/tui/tui-commands.js +1 -1
  303. package/dist/src/tui/tui-types.d.ts +2 -1
  304. package/dist/src/tui/tui-types.js +2 -1
  305. package/dist/src/tui/tui.js +122 -30
  306. package/dist/src/tui/xopc-tui-keybindings.d.ts +23 -3
  307. package/dist/src/tui/xopc-tui-keybindings.js +22 -2
  308. package/dist/src/user-context/access-policy.d.ts +2 -2
  309. package/dist/src/user-context/access-policy.js +10 -2
  310. package/dist/src/user-context/config.d.ts +23 -6
  311. package/dist/src/user-context/config.js +54 -7
  312. package/dist/src/voice/platform-streams.js +11 -1
  313. package/dist/src/voice/realtime/omniEngine.js +13 -1
  314. package/dist/src/voice/realtime/runtime.js +2 -1
  315. package/dist/src/voice/tts/audio.js +1 -1
  316. package/dist/src/voice/tts/speech-registry.js +6 -1
  317. package/package.json +9 -7
  318. package/dist/gateway/static/root/assets/agent-defaults-settings-panel-D0ITeUFb.js +0 -1
  319. package/dist/gateway/static/root/assets/agents-DcfWhk2S.js +0 -1
  320. package/dist/gateway/static/root/assets/api-fPapljyb.js +0 -1
  321. package/dist/gateway/static/root/assets/app-management-settings-panel-U3yDRzKF.js +0 -1
  322. package/dist/gateway/static/root/assets/apps-page-FgMHY1Pr.js +0 -1
  323. package/dist/gateway/static/root/assets/automations-workspace-DxaiBwrD.js +0 -6
  324. package/dist/gateway/static/root/assets/browser-settings-page-CHrfg3BX.js +0 -3
  325. package/dist/gateway/static/root/assets/button-CGlRPNzi.js +0 -1
  326. package/dist/gateway/static/root/assets/capabilities-settings-panel-DpYDPk_o.js +0 -8
  327. package/dist/gateway/static/root/assets/channels-settings-DMq-NBUQ.js +0 -1
  328. package/dist/gateway/static/root/assets/connectors-page-LsEiI9L5.js +0 -2
  329. package/dist/gateway/static/root/assets/cron-expression-B25FHn4w.js +0 -2
  330. package/dist/gateway/static/root/assets/date-picker-CzVHO7z9.js +0 -1
  331. package/dist/gateway/static/root/assets/desktop-pet-settings-CXfnejTb.js +0 -1
  332. package/dist/gateway/static/root/assets/device-pairing-wizard-CxKwfncn.js +0 -1
  333. package/dist/gateway/static/root/assets/gateway-settings-CQTcIvlZ.js +0 -1
  334. package/dist/gateway/static/root/assets/home-page-B_uyfCGq.js +0 -1
  335. package/dist/gateway/static/root/assets/imports-page-DXNfRmk9.js +0 -1
  336. package/dist/gateway/static/root/assets/index-BAqVpc1H.css +0 -1
  337. package/dist/gateway/static/root/assets/index-hlU8MUEz.js +0 -79
  338. package/dist/gateway/static/root/assets/keyboard-shortcuts-settings-CgW5_XVP.js +0 -1
  339. package/dist/gateway/static/root/assets/local-app-workbench-page-C4h3qDRL.js +0 -2
  340. package/dist/gateway/static/root/assets/logs-page-Goy_QHfL.js +0 -2
  341. package/dist/gateway/static/root/assets/management-settings-DgQyGEpR.js +0 -1
  342. package/dist/gateway/static/root/assets/messages-C9h8SImu.js +0 -3
  343. package/dist/gateway/static/root/assets/note-detail-panel-lcZby9NY.js +0 -5
  344. package/dist/gateway/static/root/assets/notes-page-CDGPPI-W.js +0 -8
  345. package/dist/gateway/static/root/assets/project-detail-page-CyAf_sK-.js +0 -1
  346. package/dist/gateway/static/root/assets/projects-page-BW5m_HhZ.js +0 -1
  347. package/dist/gateway/static/root/assets/remote-access-hub-B4JgwB0s.js +0 -1
  348. package/dist/gateway/static/root/assets/sessions-page-D5SmvlQ1.js +0 -1
  349. package/dist/gateway/static/root/assets/settings-advanced-gate-DDALROy_.js +0 -1
  350. package/dist/gateway/static/root/assets/setup-status-panel-BOHNZ-S3.js +0 -1
  351. package/dist/gateway/static/root/assets/share-preview-page-wV056nz2.js +0 -2
  352. package/dist/gateway/static/root/assets/shares-settings-io4NzfJL.js +0 -1
  353. package/dist/gateway/static/root/assets/skill-reload-api-CERFaxLj.js +0 -1
  354. package/dist/gateway/static/root/assets/skills-page-CtwUqvsE.js +0 -2
  355. package/dist/gateway/static/root/assets/task-detail-page-CCKc67a-.js +0 -1
  356. package/dist/gateway/static/root/assets/theme-store-KfFEGMlp.js +0 -1
  357. package/dist/gateway/static/root/assets/tunnel-api-DPyLgmWw.js +0 -1
  358. package/dist/gateway/static/root/assets/user-model-page-CcnGgH1n.js +0 -2
  359. package/dist/gateway/static/root/assets/workflow-run-setup-panel-jEMtNIG8.js +0 -3
  360. package/dist/gateway/static/root/assets/workflows-page-CX4bcAD-.js +0 -6
  361. package/dist/src/extensions/when-context.d.ts +0 -6
  362. package/dist/src/extensions/when-context.js +0 -26
  363. package/dist/src/extensions/when-expression.d.ts +0 -11
  364. package/dist/src/extensions/when-expression.js +0 -213
@@ -1,6 +0,0 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{a as t,n,t as r}from"./vendor-react-BOUWij0V.js";import{h as i,t as a}from"./chunk-KS7C4IRE-Cq1tE_3b.js";import{n as o,r as s}from"./popover-select-DldSX8GX.js";import{t as c}from"./circle-check-C23XjkUj.js";import{t as l}from"./markdown-view-B8maDRWh.js";import{t as u}from"./plus-Q2yW6OE7.js";import{t as d}from"./x-B_N4OPjy.js";import{t as f}from"./cn-JdwAhgNB.js";import{n as p}from"./locale-store-DLK05Y1a.js";import{t as m}from"./messages-C9h8SImu.js";import{a as h,n as g,o as _,r as v,s as y,t as b}from"./dist-BGTk37IG.js";import{i as x}from"./vendor-swr-BIWyz7Rc.js";import{t as S}from"./button-CGlRPNzi.js";import{t as C}from"./skeleton-BwbyijEw.js";import{An as w,Dn as T,Fu as ee,Ic as E,Jc as D,Jl as O,Lu as k,Mn as te,Mu as ne,Nu as A,On as j,So as M,Tc as N,Ua as P,Wc as F,Xc as I,Ys as L,bc as R,fl as z,ga as B,jc as re,kn as ie,l as V,lu as ae,nd as oe,oc as se,pn as ce,ra as le,y as ue,yl as H}from"./index-hlU8MUEz.js";import{a as U,i as W,o as de,r as G}from"./cron-expression-B25FHn4w.js";import{a as fe,i as pe,n as me,r as K,t as he}from"./workflow-run-setup-panel-jEMtNIG8.js";import{i as ge,n as _e,r as q,t as ve}from"./browser-automation-inputs-BGT0xoTv.js";var J=e(t(),1),ye=n(),be=U();function xe(e,t,n){let r=new Date;return r.setHours(e,t,0,0),r.toLocaleTimeString(n,{hour:`numeric`,minute:`2-digit`})}function Y(e,t){let n=e===7?0:e;return new Date(Date.UTC(2023,0,1)+n*864e5).toLocaleDateString(t,{weekday:`short`,timeZone:`UTC`})}function Se(e,t){return e.length<=1?e[0]??``:t.startsWith(`zh`)?e.join(`、`):e.length===2?`${e[0]} and ${e[1]}`:`${e.slice(0,-1).join(`, `)}, and ${e.at(-1)}`}function Ce(e){return e.length===5&&e.every((e,t)=>e===t+1)}function we(e){if(e.length!==2)return!1;let t=[...e].toSorted((e,t)=>e-t);return t[0]===0&&t[1]===6}function Te(e,t,n,r){try{let i=be.CronExpressionParser.parse(e,{...r?.timezone?{tz:r.timezone}:{}}).fields,a=G(i.minute.values),o=G(i.hour.values),s=G(i.dayOfWeek.values),c=G(i.dayOfMonth.values);if(a.length===60&&i.hour.isWildcard&&i.dayOfMonth.isWildcard&&i.month.isWildcard&&i.dayOfWeek.isWildcard)return n.everyMinute;if(!i.minute.isWildcard&&i.hour.isWildcard&&i.dayOfMonth.isWildcard&&i.month.isWildcard&&i.dayOfWeek.isWildcard&&a.length>1){let e=W(a);if(e!=null&&e>0)return n.everyNMinutes.replace(`{{n}}`,String(e))}if(!i.minute.isWildcard&&a.length===1&&!i.hour.isWildcard&&o.length>1&&i.dayOfMonth.isWildcard&&i.month.isWildcard&&i.dayOfWeek.isWildcard){let e=W(o);if(e!=null&&e>0)return n.everyNHours.replace(`{{n}}`,String(e))}if(!i.minute.isWildcard&&a.length===1&&i.hour.isWildcard&&i.dayOfMonth.isWildcard&&i.month.isWildcard&&i.dayOfWeek.isWildcard&&o.length===24)return n.hourly;let l=!i.minute.isWildcard&&a.length===1&&!i.hour.isWildcard&&o.length===1?xe(o[0],a[0],t):``;if(l&&i.dayOfMonth.isWildcard&&i.month.isWildcard&&i.dayOfWeek.isWildcard)return n.dailyAt.replace(`{{time}}`,l);if(l&&i.dayOfMonth.isWildcard&&i.month.isWildcard&&!i.dayOfWeek.isWildcard&&Ce(s))return n.weekdaysAt.replace(`{{time}}`,l);if(l&&i.dayOfMonth.isWildcard&&i.month.isWildcard&&!i.dayOfWeek.isWildcard&&we(s))return n.weekendsAt.replace(`{{time}}`,l);if(l&&i.dayOfMonth.isWildcard&&i.month.isWildcard&&!i.dayOfWeek.isWildcard&&s.length===1){let e=Y(s[0],t);return n.weeklyOn.replace(`{{day}}`,e).replace(`{{time}}`,l)}if(l&&i.dayOfMonth.isWildcard&&i.month.isWildcard&&!i.dayOfWeek.isWildcard&&s.length>1){let e=Se(s.map(e=>Y(e,t)),t);return n.daysAt.replace(`{{days}}`,e).replace(`{{time}}`,l)}return l&&!i.dayOfMonth.isWildcard&&c.length===1&&i.month.isWildcard&&i.dayOfWeek.isWildcard?n.monthlyAt.replace(`{{day}}`,String(c[0])).replace(`{{time}}`,l):n.customSchedule}catch{return null}}function Ee(e,t,n,r){let i=e.trim();return i?Te(i,t,n,r)||De(r?.nextRun,t)||n.customSchedule:De(r?.nextRun,t)||`—`}function De(e,t){if(!e)return``;let n=new Date(e);return Number.isNaN(n.getTime())?``:n.toLocaleString(t,{weekday:`short`,hour:`numeric`,minute:`2-digit`})}var Oe=1e3,X=60*Oe,Z=60*X,ke=24*Z,Ae=7*ke,je=new Intl.ListFormat(`en-US`,{type:`conjunction`}),Me=Object.fromEntries([`second`,`minute`,`hour`,`day`,`week`].map(e=>[e,new Intl.NumberFormat(`en-US`,{style:`unit`,unit:e,unitDisplay:`long`})])),Ne={en:new Intl.DateTimeFormat(`en-US`,{month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`}),zh:new Intl.DateTimeFormat(`zh-CN`,{month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})},Pe={en:new Intl.DateTimeFormat(`en-US`,{hour:`2-digit`,minute:`2-digit`}),zh:new Intl.DateTimeFormat(`zh-CN`,{hour:`2-digit`,minute:`2-digit`})},Fe={minute:X,hour:Z,day:ke,week:Ae};function Ie(e){return e===`zh`?`zh-CN`:`en-US`}function Le(e,t,n){return n===`zh`?`${e} ${t===`week`?`周`:t===`day`?`天`:t===`hour`?`小时`:t===`minute`?`分钟`:`秒`}`:Me[String(t)].format(e)}function Re(e,t){return t===`zh`?e.join(` `):je.format(e)}function ze(e,t){let n=typeof e==`number`?e:Number.parseFloat(e);return Math.max(X,Math.round((Number.isFinite(n)&&n>0?n:1)*Fe[t]))}function Be(e,t,n){let r=typeof e==`number`?e:Number.parseFloat(e),i=Number.isFinite(r)&&r>0?r:1;return String(Number.parseFloat((i*Fe[t]/Fe[n]).toFixed(6)))}function Ve(e,t){let n=Math.max(Oe,Math.round(e)),r=n===ke?[{unit:`hour`,ms:Z}]:n>=Ae&&n%Ae===0?[{unit:`week`,ms:Ae}]:n>=ke?[{unit:`day`,ms:ke},{unit:`hour`,ms:Z},{unit:`minute`,ms:X},{unit:`second`,ms:Oe}]:n>=Z?[{unit:`hour`,ms:Z},{unit:`minute`,ms:X},{unit:`second`,ms:Oe}]:n>=X?[{unit:`minute`,ms:X},{unit:`second`,ms:Oe}]:[{unit:`second`,ms:Oe}],i=n,a=[];for(let{unit:e,ms:n}of r){let r=Math.floor(i/n);r<=0||(a.push(Le(r,e,t)),i%=n)}return Re(a,t)}function He(e,t){let n=Ve(e,t);return t===`zh`?`每 ${n}运行一次`:`Runs every ${n}`}function Ue(e,t){return Ne[t].format(new Date(e))}function We(e){return Date.UTC(e.getFullYear(),e.getMonth(),e.getDate())}function Ge(e,t,n=Date.now()){let r=new Date(e),i=Math.round((We(r)-We(new Date(n)))/ke),a=Pe[t].format(r);return i===0?t===`zh`?`今天 ${a}`:`today at ${a}`:i===1?t===`zh`?`明天 ${a}`:`tomorrow at ${a}`:i===-1?t===`zh`?`昨天 ${a}`:`yesterday at ${a}`:Ue(e,t)}function Ke(e,t){return e.eventType===`task.attention_required.v2`&&e.payloadMatch?.reason===`blocked`?t.trigger.taskBlockedWhen:e.eventType===`note.created`?t.trigger.noteCreatedWhen:e.eventType===`workflow.run.completed`&&e.payloadMatch?.status===`failed`?t.trigger.workflowFailedWhen:e.eventType===`session.transcript.updated`?t.trigger.sessionUpdatedWhen:t.trigger.eventWithType.replace(`{type}`,e.eventType)}function qe(e,t,n,r){if(e.kind===`manual`)return t.trigger.manualWhen;if(e.kind===`webhook`)return t.trigger.webhookWhen;if(e.kind===`event`)return Ke(e,t);let i=e.schedule;return i.kind===`once`?t.trigger.onceAt.replace(`{time}`,Ge(Date.parse(i.at),r)):i.kind===`interval`?He(i.everyMs,r):Ee(i.expr,Ie(r),n.scheduleBadge,{timezone:i.tz})}function Je(e,t,n,r=Date.now()){return e.enabled?e.state.nextRunAtMs?Ge(e.state.nextRunAtMs,n,r):e.trigger.kind===`manual`?t.info.noAutomaticTrigger:e.trigger.kind===`event`||e.trigger.kind===`webhook`?t.info.waitingForTrigger:t.info.noUpcomingRun:t.info.pausedNoAutomaticRuns}function Ye(e,t,n,r=Date.now()){if(!e.state.lastRunAtMs)return t.info.notRunYet;let i=Ge(e.state.lastRunAtMs,n,r),a=e.state.lastRunStatus;return a?`${i} · ${t.status[a]}`:i}var Xe={name:``,description:``,projectId:``,triggerMode:`daily`,time:`09:00`,weekday:`1`,intervalValue:`1`,intervalUnit:`hour`,cronExpr:`0 9 * * *`,webhookSecretId:``,onceAt:``,eventType:``,eventSource:``,eventPayloadMatch:``,actionMode:`agent`,agentId:``,instruction:``,workflowId:``,workflowGoal:``,workflowInput:{goal:``,argValues:{},schemaInput:{},concurrency:``,maxSubagents:``},workflowInputValid:!0,browserAutomationId:``,browserAutomationInputs:{},safetyMode:`suggest_only`,timeoutSeconds:`1800`,conversationMode:`new_session`,notificationPolicy:`attention`,completionWebhookUrl:``,disableAfterFailures:`3`},Ze=[{value:`15`,unit:`minute`},{value:`30`,unit:`minute`},{value:`1`,unit:`hour`},{value:`6`,unit:`hour`},{value:`24`,unit:`hour`}];function Qe(e,t){let[n,r]=e.time.split(`:`),i=Number.parseInt(n||`9`,10),a=Number.parseInt(r||`0`,10),o;if(e.triggerMode===`manual`)o={kind:`manual`};else if(e.triggerMode===`once`)o={kind:`schedule`,schedule:{kind:`once`,at:new Date(e.onceAt).toISOString()}};else if(e.triggerMode===`webhook`)o={kind:`webhook`,...e.webhookSecretId.trim()?{secretId:e.webhookSecretId.trim()}:{}};else if(e.triggerMode===`taskBlocked`)o={kind:`event`,eventType:`task.attention_required.v2`,source:`tasks`,payloadMatch:{reason:`blocked`}};else if(e.triggerMode===`noteCreated`)o={kind:`event`,eventType:`note.created`,source:`notes`};else if(e.triggerMode===`workflowFailed`)o={kind:`event`,eventType:`workflow.run.completed`,source:`workflows`,payloadMatch:{status:`failed`}};else if(e.triggerMode===`sessionUpdated`)o={kind:`event`,eventType:`session.transcript.updated`,source:`sessions`};else if(e.triggerMode===`event`){let t=e.eventPayloadMatch.trim()?JSON.parse(e.eventPayloadMatch):void 0;o={kind:`event`,eventType:e.eventType.trim(),...e.eventSource.trim()?{source:e.eventSource.trim()}:{},...t?{payloadMatch:t}:{}}}else o=e.triggerMode===`interval`?{kind:`schedule`,schedule:{kind:`interval`,everyMs:ze(e.intervalValue,e.intervalUnit)}}:e.triggerMode===`weekly`?{kind:`schedule`,schedule:{kind:`cron`,expr:`${a} ${i} * * ${e.weekday}`}}:e.triggerMode===`cron`?{kind:`schedule`,schedule:{kind:`cron`,expr:e.cronExpr.trim()}}:{kind:`schedule`,schedule:{kind:`cron`,expr:`${a} ${i} * * *`}};let s=K(t,e.workflowInput),c=e.workflowInput.goal.trim()||e.workflowGoal.trim(),l=e.actionMode===`browser_automation`?`auto_apply`:e.safetyMode,u;return u=e.actionMode===`workflow`?{kind:`workflow`,workflowId:e.workflowId.trim(),...e.agentId.trim()?{agentId:e.agentId.trim()}:{},...s===void 0?{}:{input:s},...c?{goal:c}:{},...e.workflowInput.concurrency.trim()?{concurrency:Math.max(1,Number.parseInt(e.workflowInput.concurrency,10)||1)}:{},...e.workflowInput.maxSubagents.trim()?{maxSubagents:Math.max(1,Number.parseInt(e.workflowInput.maxSubagents,10)||1)}:{}}:e.actionMode===`browser_automation`?{kind:`browser_automation`,automationId:e.browserAutomationId.trim(),inputs:e.browserAutomationInputs}:{kind:`agent`,instruction:e.instruction.trim(),...e.agentId.trim()?{agentId:e.agentId.trim()}:{}},{name:e.name.trim(),...e.description.trim()?{description:e.description.trim()}:{},...e.projectId.trim()?{projectId:e.projectId.trim()}:{},trigger:o,action:u,safety:{mode:l},conversationMode:e.conversationMode,notificationPolicy:e.notificationPolicy,...l===`auto_apply`&&e.completionWebhookUrl.trim()?{completionWebhookUrl:e.completionWebhookUrl.trim()}:{},reliability:{executionTimeoutSeconds:Math.max(1,Number.parseInt(e.timeoutSeconds,10)||1800),disableAfterConsecutiveFailures:Math.max(1,Number.parseInt(e.disableAfterFailures,10)||3)}}}function $e(e){let t=e.match(/^(\d{1,2})\s+(\d{1,2})\s+\*\s+\*\s+\*$/);if(t)return{triggerMode:`daily`,time:`${t[2].padStart(2,`0`)}:${t[1].padStart(2,`0`)}`,weekday:`1`,cronExpr:e};let n=e.match(/^(\d{1,2})\s+(\d{1,2})\s+\*\s+\*\s+([0-6])$/);return n?{triggerMode:`weekly`,time:`${n[2].padStart(2,`0`)}:${n[1].padStart(2,`0`)}`,weekday:n[3],cronExpr:e}:{triggerMode:`cron`,time:Xe.time,weekday:Xe.weekday,cronExpr:e}}function et(e){let t=[[`week`,10080*6e4],[`day`,1440*6e4],[`hour`,60*6e4],[`minute`,6e4]],[n,r]=t.find(([,t])=>e>=t&&e%t===0)??t.at(-1);return{intervalValue:String(e/r),intervalUnit:n}}function tt(e){let t=new Date(e);if(Number.isNaN(t.getTime()))return e;let n=t.getTimezoneOffset()*6e4;return new Date(t.getTime()-n).toISOString().slice(0,16)}function nt(e){let t=e.payloadMatch;return e.eventType===`task.attention_required.v2`&&e.source===`tasks`&&t?.reason===`blocked`?{triggerMode:`taskBlocked`}:e.eventType===`note.created`&&e.source===`notes`&&!t?{triggerMode:`noteCreated`}:e.eventType===`workflow.run.completed`&&e.source===`workflows`&&t?.status===`failed`?{triggerMode:`workflowFailed`}:e.eventType===`session.transcript.updated`&&e.source===`sessions`&&!t?{triggerMode:`sessionUpdated`}:{triggerMode:`event`,eventType:e.eventType,eventSource:e.source??``,eventPayloadMatch:t?JSON.stringify(t,null,2):``}}function rt(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:{}}function it(e){if(!e.trim())return!0;try{let t=JSON.parse(e);return!!t&&typeof t==`object`&&!Array.isArray(t)&&Object.values(t).every(e=>e===null||[`string`,`number`,`boolean`].includes(typeof e))}catch{return!1}}function at(e,t=[]){let n={triggerMode:`manual`};if(e.trigger.kind===`webhook`)n={triggerMode:`webhook`,webhookSecretId:e.trigger.secretId??``};else if(e.trigger.kind===`event`)n=nt(e.trigger);else if(e.trigger.kind===`schedule`){let t=e.trigger.schedule;t.kind===`cron`&&(n=$e(t.expr)),t.kind===`interval`&&(n={triggerMode:`interval`,...et(t.everyMs)}),t.kind===`once`&&(n={triggerMode:`once`,onceAt:tt(t.at)})}let r=e.action,i=r.kind===`workflow`?t.find(e=>e.id===r.workflowId)??null:null,a=r.kind===`workflow`?rt(r.input):{},o=e.reliability?.executionTimeoutSeconds??r.timeoutSeconds??e.reliability?.timeoutSeconds??(r.kind===`browser_automation`?600:1800);return{...Xe,...n,name:e.name,description:e.description??``,projectId:e.projectId??``,actionMode:r.kind,agentId:r.kind===`browser_automation`?``:r.agentId??``,instruction:r.kind===`agent`?r.instruction:``,workflowId:r.kind===`workflow`?r.workflowId:``,workflowGoal:r.kind===`workflow`?r.goal??``:``,browserAutomationId:r.kind===`browser_automation`?r.automationId:``,browserAutomationInputs:r.kind===`browser_automation`?r.inputs??{}:{},workflowInput:{goal:r.kind===`workflow`?r.goal??``:``,argValues:i?me(i.name,a):{},schemaInput:a,concurrency:r.kind===`workflow`&&r.concurrency?String(r.concurrency):``,maxSubagents:r.kind===`workflow`&&r.maxSubagents?String(r.maxSubagents):``},workflowInputValid:!0,safetyMode:e.safety?.mode??`auto_apply`,timeoutSeconds:String(o),conversationMode:e.conversationMode??`new_session`,notificationPolicy:e.notificationPolicy??`attention`,completionWebhookUrl:e.completionWebhookUrl??``,disableAfterFailures:String(e.reliability?.disableAfterConsecutiveFailures??3)}}function ot(e,t,n){let r=Qe(t,n),i=e.trigger.kind===`schedule`&&r.trigger.kind===`schedule`&&e.trigger.schedule.kind===r.trigger.schedule.kind?{...r.trigger,schedule:{...e.trigger.schedule,...r.trigger.schedule}}:r.trigger,a=r.action;return e.action.kind===`agent`&&r.action.kind===`agent`?a={...e.action,...r.action,agentId:r.action.agentId}:e.action.kind===`workflow`&&r.action.kind===`workflow`?a={...e.action,...r.action,agentId:r.action.agentId,input:r.action.input,goal:r.action.goal,concurrency:r.action.concurrency,maxSubagents:r.action.maxSubagents}:e.action.kind===`browser_automation`&&r.action.kind===`browser_automation`&&(a={...e.action,...r.action}),{...r,description:t.description.trim(),projectId:t.projectId.trim(),completionWebhookUrl:t.completionWebhookUrl.trim(),trigger:i,action:a,reliability:{...e.reliability,...r.reliability}}}function st(e){return[`reminder`,`brief`,`review`,`followUp`].map(t=>{let n=e.scenarios[t];return{...n,requiresProject:t===`followUp`,form:{...Xe,name:n.name,instruction:t===`reminder`?``:n.instruction,triggerMode:t===`reminder`?`once`:t===`review`?`weekly`:`daily`,time:t===`brief`?`08:30`:t===`review`?`17:00`:`09:00`,weekday:`5`,notificationPolicy:`all`}}})}var Q=r(),ct=`w-full rounded-lg border border-edge bg-surface-base px-3 py-2 text-sm text-fg focus-visible:outline-2 focus-visible:outline-accent`;function lt(e){let t=(0,ye.c)(99),{form:n,setForm:r,labels:i,projects:a,projectLocked:c,source:l,requiresProject:u}=e,d;t[0]===r?d=t[1]:(d=e=>r(t=>({...t,...e})),t[0]=r,t[1]=d);let f=d,p;t[2]!==i.experience.source||t[3]!==l?(p=(0,Q.jsxs)(`p`,{className:`text-sm text-fg-muted`,children:[i.experience.source,`: `,l]}),t[2]=i.experience.source,t[3]=l,t[4]=p):p=t[4];let m;t[5]===f?m=t[6]:(m=e=>f({name:e.target.value}),t[5]=f,t[6]=m);let h;t[7]!==n.name||t[8]!==m?(h=(0,Q.jsx)(`input`,{className:ct,value:n.name,onChange:m}),t[7]=n.name,t[8]=m,t[9]=h):h=t[9];let g;t[10]!==i.form.name||t[11]!==h?(g=(0,Q.jsxs)(`label`,{className:`grid gap-2 text-sm text-fg`,children:[i.form.name,h]}),t[10]=i.form.name,t[11]=h,t[12]=g):g=t[12];let _;t[13]===f?_=t[14]:(_=e=>f({instruction:e.target.value}),t[13]=f,t[14]=_);let v;t[15]!==n.instruction||t[16]!==_?(v=(0,Q.jsx)(`textarea`,{className:ct,rows:5,value:n.instruction,onChange:_}),t[15]=n.instruction,t[16]=_,t[17]=v):v=t[17];let y;t[18]!==i.info.task||t[19]!==v?(y=(0,Q.jsxs)(`label`,{className:`grid gap-2 text-sm text-fg`,children:[i.info.task,v]}),t[18]=i.info.task,t[19]=v,t[20]=y):y=t[20];let b;t[21]!==n.projectId||t[22]!==i.form.noProject||t[23]!==i.form.project||t[24]!==c||t[25]!==a||t[26]!==f?(b=!c&&(0,Q.jsxs)(`label`,{className:`grid gap-2 text-sm text-fg`,children:[i.form.project,(0,Q.jsxs)(o,{className:ct,value:n.projectId,onChange:e=>f({projectId:e.target.value}),children:[(0,Q.jsx)(s,{value:``,children:i.form.noProject}),a.map(ut)]})]}),t[21]=n.projectId,t[22]=i.form.noProject,t[23]=i.form.project,t[24]=c,t[25]=a,t[26]=f,t[27]=b):b=t[27];let x;t[28]!==n.projectId||t[29]!==i.experience.projectRequired||t[30]!==u?(x=u&&!n.projectId?(0,Q.jsx)(`p`,{role:`status`,className:`text-sm text-fg-muted`,children:i.experience.projectRequired}):null,t[28]=n.projectId,t[29]=i.experience.projectRequired,t[30]=u,t[31]=x):x=t[31];let S;t[32]===f?S=t[33]:(S=e=>f({triggerMode:e.target.value}),t[32]=f,t[33]=S);let C;t[34]===i.trigger.once?C=t[35]:(C=(0,Q.jsx)(s,{value:`once`,children:i.trigger.once}),t[34]=i.trigger.once,t[35]=C);let w;t[36]===i.trigger.daily?w=t[37]:(w=(0,Q.jsx)(s,{value:`daily`,children:i.trigger.daily}),t[36]=i.trigger.daily,t[37]=w);let T;t[38]===i.trigger.weekly?T=t[39]:(T=(0,Q.jsx)(s,{value:`weekly`,children:i.trigger.weekly}),t[38]=i.trigger.weekly,t[39]=T);let ee;t[40]!==n.triggerMode||t[41]!==S||t[42]!==C||t[43]!==w||t[44]!==T?(ee=(0,Q.jsxs)(o,{className:ct,value:n.triggerMode,onChange:S,children:[C,w,T]}),t[40]=n.triggerMode,t[41]=S,t[42]=C,t[43]=w,t[44]=T,t[45]=ee):ee=t[45];let E;t[46]!==i.form.trigger||t[47]!==ee?(E=(0,Q.jsxs)(`label`,{className:`grid gap-2 text-sm text-fg`,children:[i.form.trigger,ee]}),t[46]=i.form.trigger,t[47]=ee,t[48]=E):E=t[48];let D;t[49]!==n.onceAt||t[50]!==n.time||t[51]!==n.triggerMode||t[52]!==i.form.onceAt||t[53]!==i.form.time||t[54]!==f?(D=n.triggerMode===`once`?(0,Q.jsxs)(`label`,{className:`grid gap-2 text-sm text-fg`,children:[i.form.onceAt,(0,Q.jsx)(`input`,{type:`datetime-local`,className:ct,value:n.onceAt,onChange:e=>f({onceAt:e.target.value})})]}):(0,Q.jsxs)(`div`,{className:`grid gap-2 text-sm text-fg`,children:[(0,Q.jsx)(`span`,{children:i.form.time}),(0,Q.jsx)(de,{value:n.time,onChange:e=>f({time:e}),ariaLabel:i.form.time})]}),t[49]=n.onceAt,t[50]=n.time,t[51]=n.triggerMode,t[52]=i.form.onceAt,t[53]=i.form.time,t[54]=f,t[55]=D):D=t[55];let O;t[56]!==n.triggerMode||t[57]!==n.weekday||t[58]!==i.form.day||t[59]!==i.weekdays||t[60]!==f?(O=n.triggerMode===`weekly`&&(0,Q.jsxs)(`label`,{className:`grid gap-2 text-sm text-fg`,children:[i.form.day,(0,Q.jsx)(o,{className:ct,value:n.weekday,onChange:e=>f({weekday:e.target.value}),children:[`sunday`,`monday`,`tuesday`,`wednesday`,`thursday`,`friday`,`saturday`].map((e,t)=>(0,Q.jsx)(s,{value:String(t),children:i.weekdays[e]},e))})]}),t[56]=n.triggerMode,t[57]=n.weekday,t[58]=i.form.day,t[59]=i.weekdays,t[60]=f,t[61]=O):O=t[61];let k;t[62]!==E||t[63]!==D||t[64]!==O?(k=(0,Q.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[E,D,O]}),t[62]=E,t[63]=D,t[64]=O,t[65]=k):k=t[65];let te;t[66]!==n.onceAt||t[67]!==n.triggerMode||t[68]!==i.experience.futureTime?(te=n.triggerMode===`once`&&n.onceAt&&new Date(n.onceAt).getTime()<=Date.now()?(0,Q.jsx)(`p`,{role:`status`,className:`text-sm text-red-700 dark:text-red-300`,children:i.experience.futureTime}):null,t[66]=n.onceAt,t[67]=n.triggerMode,t[68]=i.experience.futureTime,t[69]=te):te=t[69];let ne;t[70]===i.experience.scheduleNote?ne=t[71]:(ne=(0,Q.jsx)(`p`,{className:`text-xs text-fg-muted`,children:i.experience.scheduleNote}),t[70]=i.experience.scheduleNote,t[71]=ne);let A;t[72]===f?A=t[73]:(A=e=>f({notificationPolicy:e.target.value}),t[72]=f,t[73]=A);let j;t[74]===i.draft.notifyAll?j=t[75]:(j=(0,Q.jsx)(s,{value:`all`,children:i.draft.notifyAll}),t[74]=i.draft.notifyAll,t[75]=j);let M;t[76]===i.draft.notifyAttention?M=t[77]:(M=(0,Q.jsx)(s,{value:`attention`,children:i.draft.notifyAttention}),t[76]=i.draft.notifyAttention,t[77]=M);let N;t[78]===i.draft.notifyNone?N=t[79]:(N=(0,Q.jsx)(s,{value:`none`,children:i.draft.notifyNone}),t[78]=i.draft.notifyNone,t[79]=N);let P;t[80]!==n.notificationPolicy||t[81]!==A||t[82]!==j||t[83]!==M||t[84]!==N?(P=(0,Q.jsxs)(o,{className:ct,value:n.notificationPolicy,onChange:A,children:[j,M,N]}),t[80]=n.notificationPolicy,t[81]=A,t[82]=j,t[83]=M,t[84]=N,t[85]=P):P=t[85];let F;t[86]!==i.draft.notifications||t[87]!==P?(F=(0,Q.jsxs)(`label`,{className:`grid gap-2 text-sm text-fg`,children:[i.draft.notifications,P]}),t[86]=i.draft.notifications,t[87]=P,t[88]=F):F=t[88];let I;return t[89]!==x||t[90]!==k||t[91]!==p||t[92]!==te||t[93]!==ne||t[94]!==F||t[95]!==g||t[96]!==y||t[97]!==b?(I=(0,Q.jsxs)(`div`,{className:`min-h-0 flex-1 space-y-5 overflow-y-auto px-5 py-4`,children:[p,g,y,b,x,k,te,ne,F]}),t[89]=x,t[90]=k,t[91]=p,t[92]=te,t[93]=ne,t[94]=F,t[95]=g,t[96]=y,t[97]=b,t[98]=I):I=t[98],I}function ut(e){return(0,Q.jsx)(s,{value:e.id,children:e.name},e.id)}function dt(e,t){return t.reduce((t,n)=>n.automationId===e&&(!t||n.createdAtMs>t.createdAtMs)?n:t,void 0)}function ft(e,t){let n=dt(e.id,t),r=!!(e.state.lastRunAtMs&&(!n||e.state.lastRunAtMs>n.createdAtMs)),i=r?e.state.lastRunStatus:n?.status??e.state.lastRunStatus;return i!==`failed`&&i!==`timeout`?null:`${i}:${(r?e.state.lastRunAtMs:n?.createdAtMs??e.state.lastRunAtMs)??`unknown`}`}function pt(e,t){return ft(e,t)!==null}var mt=`xopc.automations.dismissedExecutionIssues`;function ht(){if(typeof window>`u`)return{};try{let e=JSON.parse(window.localStorage.getItem(mt)??`{}`);return!e||typeof e!=`object`||Array.isArray(e)?{}:Object.fromEntries(Object.entries(e).filter(e=>typeof e[1]==`string`))}catch{return{}}}function gt(e,t,n){return e?Ue(e,n):t.never}function _t(e,t){return e.kind===`workflow`?t.action.workflowWithId.replace(`{id}`,e.workflowId):e.kind===`browser_automation`?`Browser automation: ${e.automationId}`:e.agentId?t.action.agentWithId.replace(`{id}`,e.agentId):t.action.agent}function vt(e){return e.safety?.mode??`auto_apply`}function yt(e){return e===`succeeded`?`bg-emerald-500/10 text-emerald-700 dark:text-emerald-300`:e===`failed`||e===`timeout`?`bg-red-500/10 text-red-700 dark:text-red-300`:e===`running`||e===`queued`||e===`cancelling`?`bg-blue-500/10 text-blue-700 dark:text-blue-300`:`bg-surface-hover text-fg-muted`}function bt(e,t){if(e==null)return t.never;if(e<1e3)return`${e}ms`;let n=Math.round(e/1e3);return n<60?`${n}s`:`${Math.floor(n/60)}m ${n%60}s`}function xt(e){return e.status===`running`||e.status===`queued`||e.status===`cancelling`}function St(e){return e.status===`failed`||e.status===`timeout`}function Ct(e,t){return e.action.kind===`agent`?e.action.instruction:e.action.kind===`workflow`&&e.action.goal?.trim()||_t(e.action,t)}function wt(e){return(e.description?.match(/\[managed-by=([^\]]+)\]/))?.[1]?.trim()||null}function Tt(e){return!!wt(e)}function Et(e){return e.description?.replace(/\s*\[managed-by=[^\]]+\]\s*/g,` `).trim()??``}function Dt(e){return xt(e)?0:St(e)?1:e.status===`succeeded`?2:3}function Ot(e){return[...e].sort((e,t)=>{let n=Dt(e)-Dt(t);return n===0?t.createdAtMs-e.createdAtMs:n})}function kt(){let e=(0,ye.c)(5),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 space-y-2`,children:[(0,Q.jsx)(C,{className:`h-4 w-36`}),(0,Q.jsx)(C,{className:`h-3 w-56 max-w-full`})]}),(0,Q.jsx)(C,{className:`h-7 w-20 rounded-full`})]}),e[0]=t):t=e[0];let n;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Q.jsxs)(`section`,{className:`rounded-xl bg-surface-panel p-4 shadow-surface`,children:[t,(0,Q.jsx)(`div`,{className:`mt-4 grid gap-2`,children:Array.from({length:6}).map(At)})]}),e[1]=n):n=e[1];let r,i;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Q.jsx)(C,{className:`h-4 w-32`}),i=(0,Q.jsx)(C,{className:`mt-4 h-24 rounded-lg`}),e[2]=r,e[3]=i):(r=e[2],i=e[3]);let a;return e[4]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Q.jsx)(`div`,{className:`grid gap-4`,"aria-hidden":`true`,children:(0,Q.jsxs)(`div`,{className:`grid gap-3 xl:grid-cols-[minmax(0,1fr)_26rem]`,children:[n,(0,Q.jsxs)(`section`,{className:`hidden rounded-xl bg-surface-panel p-4 shadow-surface xl:block`,children:[r,i,(0,Q.jsxs)(`div`,{className:`mt-4 grid gap-2`,children:[(0,Q.jsx)(C,{className:`h-12 rounded-lg`}),(0,Q.jsx)(C,{className:`h-12 rounded-lg`}),(0,Q.jsx)(C,{className:`h-12 rounded-lg`})]})]})]})}),e[4]=a):a=e[4],a}function At(e,t){return(0,Q.jsx)(`div`,{className:`rounded-lg bg-surface-base p-3`,children:(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(C,{className:`size-4 rounded-full`}),(0,Q.jsx)(C,{className:`h-4 w-32`}),(0,Q.jsx)(C,{className:`h-5 w-20 rounded-full`})]}),(0,Q.jsx)(C,{className:`mt-3 h-4 w-full`}),(0,Q.jsx)(C,{className:`mt-2 h-4 w-3/5`})]}),(0,Q.jsx)(C,{className:`h-8 w-24 rounded-md`})]})},t)}function jt({projectId:e,embedded:t=!1,title:n,subtitle:r}){let a=p(e=>e.language),c=m(a),l=c.automations,C=c.cron,ee=M(e=>e.setPageHeader),E=M(e=>e.clearPageHeader),[D,O]=i(),k=D.get(`run`)?.trim()??``,A=D.get(`automation`)?.trim()??``,N=D.get(`draft`)?.trim()??``,F=D.get(`action`)?.trim()??``,I=D.get(`projectId`)?.trim()??``,R=e?.trim()||I,z=!!e?.trim(),oe=D.get(`autogenerate`)===`1`,se=(0,J.useRef)(``),ce=D.get(`status`),H=ce===`active`||ce===`paused`||ce===`system`||ce===`attention`?ce:`all`,U=D.get(`q`)??``,W=e=>O(t=>{let n=new URLSearchParams(t);return e===`all`?n.delete(`status`):n.set(`status`,e),n.delete(`automation`),n}),de=e=>O(t=>{let n=new URLSearchParams(t);return e?n.set(`q`,e):n.delete(`q`),n.delete(`automation`),n},{replace:!0}),[G,fe]=(0,J.useState)(null),[me,K]=(0,J.useState)(!1),[he,q]=(0,J.useState)(`blank`),[ve,ye]=(0,J.useState)(null),[be,xe]=(0,J.useState)(!1),[Y,Se]=(0,J.useState)(Xe),[Ce,we]=(0,J.useState)(null),[Te,Ee]=(0,J.useState)(null),[De,Oe]=(0,J.useState)(!1),[X,Z]=(0,J.useState)(null),[ke,Ae]=(0,J.useState)(``),[je,Me]=(0,J.useState)(null),[Ne,Pe]=(0,J.useState)(!1),[Fe,Ie]=(0,J.useState)(!1),[Le,Re]=(0,J.useState)(R),[ze,Be]=(0,J.useState)(`new_session`),[Ve,He]=(0,J.useState)(`attention`),[Ue,We]=(0,J.useState)(null),[Ge,Ke]=(0,J.useState)(!1),[Je,Ye]=(0,J.useState)(!1),[Ze,$e]=(0,J.useState)(!1),[et,tt]=(0,J.useState)(null),[nt,rt]=(0,J.useState)(ht),ct=x([`automations`,R],()=>V.list(R?{projectId:R}:void 0),{refreshInterval:15e3}),ut=x([`automation-runs`,R],()=>V.runs(50,void 0,R?{projectId:R}:void 0),{refreshInterval:1e4}),gt=x(X?[`automation-history`,X,R]:null,()=>V.runs(50,X,R?{projectId:R}:void 0),{refreshInterval:1e4}),_t=x(Te?`automation-run-events:${Te}`:null,()=>V.runEvents(Te),{refreshInterval:5e3}),vt=x(`automation-workflow-definitions`,ue),yt=x(`automation-browser-automations`,()=>ge.list()),bt=x(`automation-chat-agents`,B),St=x(`automation-projects`,()=>P({sortBy:`name`,sortOrder:`asc`,limit:200})),wt=ct.isLoading&&!ct.data||ut.isLoading&&!ut.data,Dt=ct.data?.automations??[],At=(0,J.useMemo)(()=>Ot(ut.data?.runs??[]),[ut.data?.runs]),jt=(0,J.useMemo)(()=>Dt.filter(e=>!Tt(e)),[Dt]),Pt=(0,J.useMemo)(()=>Dt.filter(Tt),[Dt]),Ft=(0,J.useMemo)(()=>new Set(Pt.map(e=>e.id)),[Pt]),It=(0,J.useMemo)(()=>At.filter(e=>!Ft.has(e.automationId)),[At,Ft]),Rt=(0,J.useMemo)(()=>At.find(e=>e.id===Te)??gt.data?.runs.find(e=>e.id===Te)??null,[At,Te,gt.data]),zt=(0,J.useMemo)(()=>Dt.find(e=>e.id===X)??null,[Dt,X]),Bt=(0,J.useMemo)(()=>Dt.find(e=>e.id===ve)??null,[Dt,ve]),Vt=(0,J.useMemo)(()=>[...gt.data?.runs??At].filter(e=>e.automationId===X).sort((e,t)=>t.createdAtMs-e.createdAtMs),[At,X,gt.data]),Wt=_t.data?.events??[],Gt=(0,J.useMemo)(()=>It.filter(e=>!xt(e)&&e.readAtMs==null),[It]),Kt=U.trim().toLocaleLowerCase(),qt=(0,J.useMemo)(()=>(H===`system`?Pt:jt).filter(e=>H===`attention`&&!pt(e,It)||H===`active`&&!e.enabled||H===`paused`&&e.enabled?!1:Kt?[e.name,Et(e),Ct(e,l),qe(e.trigger,l,C,a)].some(e=>e.toLocaleLowerCase().includes(Kt)):!0),[C,H,l,a,Kt,Pt,jt,It]),Jt=(0,J.useMemo)(()=>vt.data??[],[vt.data]),Yt=(0,J.useMemo)(()=>(yt.data?.automations??[]).filter(e=>e.enabled),[yt.data]),Xt=bt.data?.items??[],$t=St.data?.items??[],en=(0,J.useMemo)(()=>Jt.find(e=>e.id===Y.workflowId.trim())??null,[Y.workflowId,Jt]),tn=(0,J.useMemo)(()=>Yt.find(e=>e.id===Y.browserAutomationId.trim())??null,[Yt,Y.browserAutomationId]),nn=Y.actionMode===`workflow`&&(!Y.workflowId.trim()||Jt.length>0&&!Jt.some(e=>e.id===Y.workflowId)),rn=Y.actionMode===`workflow`&&en?!pe(en,Y.workflowInput,Y.workflowInputValid).valid:!1,an=!!Y.name.trim()&&(Y.triggerMode!==`once`||Number.isFinite(new Date(Y.onceAt).getTime())&&(!!Bt||new Date(Y.onceAt).getTime()>Date.now()))&&(![`daily`,`weekly`].includes(Y.triggerMode)||/^(?:[01]\d|2[0-3]):[0-5]\d$/.test(Y.time))&&(Y.triggerMode!==`event`||!!Y.eventType.trim()&&it(Y.eventPayloadMatch))&&(Y.actionMode===`workflow`?!nn&&!rn:Y.actionMode===`browser_automation`?tn!==null&&_e(tn,Y.browserAutomationInputs):!!Y.instruction.trim()),on=(0,J.useMemo)(()=>st(l),[l]),sn=(0,J.useMemo)(()=>jt.filter(e=>pt(e,It)),[jt,It]),cn=sn.some(e=>{let t=ft(e,It);return t!==null&&nt[e.id]!==t}),ln=(0,J.useCallback)(()=>{rt(e=>{let t={...e};for(let e of sn){let n=ft(e,It);n&&(t[e.id]=n)}try{window.localStorage.setItem(mt,JSON.stringify(t))}catch{}return t})},[sn,It]);(0,J.useEffect)(()=>{if(qt.length===0){Z(null);return}if(A&&qt.some(e=>e.id===A)){Z(A);return}X&&qt.some(e=>e.id===X)||Z(qt[0].id)},[A,qt,X]);let un=(0,J.useCallback)(async()=>{await Promise.all([ct.mutate(),ut.mutate(),gt.mutate(),_t.mutate()])},[ct.mutate,_t.mutate,ut.mutate,gt.mutate]),dn=(0,J.useCallback)(e=>{if(z){Z(null),Ee(null);return}O(t=>{let n=new URLSearchParams(t);return e?n.set(`projectId`,e):n.delete(`projectId`),n.delete(`automation`),n.delete(`run`),n}),Z(null),Ee(null)},[z,O]);(0,J.useEffect)(()=>{z&&(Re(R),Se(e=>e.projectId===R?e:{...e,projectId:R}))},[R,z]);let fn=(0,J.useCallback)(e=>{if(ye(null),xe(!1),we(null),q(e),K(!0),e===`blank`){Se({...Xe,projectId:R});return}Ae(``),Me(null),Ie(!1),Re(R),Be(`new_session`),He(`attention`)},[R]),pn=e=>{fe(e),Se({...e.form,projectId:R}),ye(null),xe(!1),we(null),q(`quick`),K(!0)},mn=(0,J.useCallback)(e=>{Se(at(e,Jt)),ye(e.id),xe(!1),Z(null),q(`blank`),K(!0)},[Jt]),hn=(0,J.useCallback)(()=>{je&&(Se({...at(je.automation,Jt),projectId:Le,conversationMode:ze,notificationPolicy:Ve}),ye(null),xe(!0),q(`blank`))},[je,ze,Ve,Le,Jt]),gn=(0,J.useCallback)(async()=>{$e(!0),we(null);try{await un()}catch(e){we(e instanceof Error?e.message:String(e))}finally{$e(!1)}},[l.feedback.actionFailed,un]);(0,J.useEffect)(()=>{let e=Dt.find(e=>e.id===A);!e||!Tt(e)||H===`system`||O(e=>{let t=new URLSearchParams(e);return t.set(`status`,`system`),t},{replace:!0})},[A,Dt,H,O]),(0,J.useEffect)(()=>{F===`create`&&(fn(`blank`),O(e=>{let t=new URLSearchParams(e);return t.delete(`action`),t},{replace:!0}))},[F,fn,O]),(0,J.useEffect)(()=>{if(!N)return;let e=`${a}:${oe?`auto`:`seed`}:${N}`;se.current!==e&&(se.current=e,Ae(N),Me(null),Ie(!1),Re(R),q(`draft`),K(!0),O(e=>{let t=new URLSearchParams(e);return t.delete(`draft`),t.delete(`autogenerate`),t},{replace:!0}),oe&&(we(null),Pe(!0),V.draft({prompt:N,language:a}).then(e=>{Me(e.draft),Ie(!1)}).catch(e=>{we(e instanceof Error?e.message:String(e))}).finally(()=>{Pe(!1)})))},[oe,N,a,R,O]);let _n=(0,J.useCallback)(e=>{let t=At.find(t=>t.id===e)??gt.data?.runs.find(t=>t.id===e);if(!t||xt(t)||t.readAtMs!=null)return;let n=Date.now();ut.mutate(t=>t&&{...t,runs:t.runs.map(t=>t.id===e?{...t,readAtMs:n}:t)},!1),gt.mutate(t=>t&&{...t,runs:t.runs.map(t=>t.id===e?{...t,readAtMs:n}:t)},!1),V.markRunRead(e).catch(e=>{we(e instanceof Error?e.message:String(e)),ut.mutate(),gt.mutate()})},[At,ut.mutate,gt.data,gt.mutate]),vn=(0,J.useCallback)(e=>{_n(e),Ee(e),Oe(!0),O(t=>{let n=new URLSearchParams(t);return n.set(`run`,e),n},{replace:!0})},[_n,O]),yn=(0,J.useCallback)(e=>{Z(e);let t=dt(e,At);O(t=>{let n=new URLSearchParams(t);return n.set(`automation`,e),n},{replace:!0}),t&&t.readAtMs==null&&!xt(t)&&_n(t.id)},[_n,At,O]);(0,J.useEffect)(()=>{k&&(_n(k),Ee(k),Oe(!0))},[_n,k]),(0,J.useEffect)(()=>{We(null),Ye(!1)},[Te]);async function bn(){if(we(null),Y.triggerMode===`once`&&!Bt&&new Date(Y.onceAt).getTime()<=Date.now()){we(l.experience.futureTime);return}if(!(!an||et)&&!(he===`quick`&&G?.requiresProject&&!Y.projectId)){if(be&&je){tt(`draft:edit`);try{let e=Qe(Y,en),{simulation:t}=await V.simulate(e);Me({...je,automation:e,simulation:t}),Re(Y.projectId),Be(Y.conversationMode),He(Y.notificationPolicy),Ie(!1),xe(!1),q(`draft`)}catch(e){we(e instanceof Error?e.message:String(e))}finally{tt(null)}return}if(Bt){let e=Bt.id;await xn(`automation:${e}:edit`,()=>V.update(e,ot(Bt,Y,en)))&&(K(!1),ye(null),Z(e));return}tt(`automation:create`);try{let e=Qe(Y,en),{automation:t}=await V.create(e);Se(Xe),K(!1),O(e=>{let n=new URLSearchParams(e);return n.delete(`status`),n.delete(`q`),n.delete(`run`),n.set(`automation`,t.id),z||(t.projectId?n.set(`projectId`,t.projectId):n.delete(`projectId`)),n}),await un(),Z(t.id)}catch(e){we(e instanceof Error?e.message:String(e))}finally{tt(null)}}}async function xn(e,t){we(null),tt(e);try{return await t(),await un(),!0}catch(e){return we(e instanceof Error?e.message:String(e)),!1}finally{tt(null)}}async function Sn(){await xn(`runs:read-all`,()=>V.markAllRunsRead(R||void 0))}async function Cn(){let e=ke.trim();if(e){we(null),Pe(!0);try{Me((await V.draft({prompt:e,language:a})).draft),Ie(!1)}catch(e){we(e instanceof Error?e.message:String(e))}finally{Pe(!1)}}}async function wn(){if(!je)return;let e=``,t=``;await xn(`draft:publish`,async()=>{let{automation:n}=await V.create({...je.automation,...Le?{projectId:Le}:{projectId:void 0},conversationMode:ze,notificationPolicy:Ve});Me(null),Ae(``),Ie(!1),K(!1),W(`all`),de(``),e=n.id,t=n.projectId??``})&&e&&(dn(t),Z(e))}async function Tn(){if(!je)return;let e=``,t=``,n=``;await xn(`draft:test`,async()=>{let{automation:r}=await V.create({...je.automation,...Le?{projectId:Le}:{projectId:void 0},conversationMode:ze,notificationPolicy:Ve,enabled:!1}),{run:i}=await V.runNow(r.id);e=r.id,t=r.projectId??``,n=i.id,Me(null),Ae(``),Ie(!1),K(!1),W(`all`),de(``)})&&e&&n&&(dn(t),Z(e),vn(n))}async function En(e){we(null),Ke(!0),We(null),Ye(!1);try{We((await V.repairDraft(e.id,{language:a})).repair)}catch(e){we(e instanceof Error?e.message:String(e))}finally{Ke(!1)}}async function Dn(e){Ue&&await xn(`run:${e.id}:repair`,async()=>{await V.update(e.automationId,Ue.patch),We(null),Ye(!1)})}let On=(0,J.useMemo)(()=>(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(le,{className:`size-9 shrink-0 p-0`,loading:Ze,label:l.refresh,onClick:gn}),(0,Q.jsxs)(S,{variant:`primary`,onClick:()=>fn(`draft`),children:[(0,Q.jsx)(u,{className:`size-4`}),l.new]})]}),[l.new,l.refresh,fn,Ze,gn]);return(0,J.useLayoutEffect)(()=>{if(!t)return ee({startExtra:null,main:(0,Q.jsx)(`h1`,{className:`truncate text-base font-semibold tracking-tight text-fg`,children:l.title}),end:On}),()=>E()},[E,t,On,l.title,ee]),(0,Q.jsxs)(`div`,{className:f(`flex min-h-0 min-w-0 flex-1 flex-col`,t?`bg-transparent`:`bg-surface-panel`),children:[(0,Q.jsxs)(`div`,{className:f(`flex w-full flex-col gap-4`,t?`py-1`:`mx-auto max-w-[96rem] px-4 py-7 sm:px-6 lg:px-8 lg:py-9`),children:[t?(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3 rounded-xl border border-edge-subtle bg-surface-base px-4 py-3 shadow-surface`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(L,{className:`size-4 text-accent-fg`,"aria-hidden":!0}),(0,Q.jsx)(`h2`,{className:`text-sm font-semibold text-fg`,children:n||l.title})]}),(0,Q.jsx)(`p`,{className:`mt-1 text-sm leading-6 text-fg-muted`,children:r||l.subtitle})]}),On]}):null,Ce||ct.error||ut.error?(0,Q.jsx)(`div`,{role:`alert`,className:`rounded-lg border border-red-500/30 bg-red-500/10 px-3 py-2 text-sm text-red-700 dark:text-red-300`,children:Ce||l.feedback.actionFailed}):null,!wt&&!ct.error&&jt.length===0&&H!==`system`?(0,Q.jsxs)(`section`,{className:`rounded-xl border border-edge-subtle bg-surface-base p-6`,children:[(0,Q.jsx)(`h2`,{className:`text-lg font-semibold text-fg`,children:l.experience.scenes}),(0,Q.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:l.experience.scenesDescription}),(0,Q.jsx)(Mt,{templates:on,labels:l,onSelect:pn}),(0,Q.jsx)(S,{className:`mt-4`,variant:`ghost`,onClick:()=>fn(`draft`),children:l.experience.custom})]}):null,!wt&&cn&&H!==`system`?(0,Q.jsxs)(`div`,{className:`flex items-center rounded-lg border border-red-500/20 bg-red-500/5`,children:[(0,Q.jsxs)(`button`,{type:`button`,onClick:()=>W(`attention`),className:`flex min-w-0 flex-1 items-center gap-3 rounded-l-lg px-4 py-3 text-left focus-visible:ring-2 focus-visible:ring-accent`,children:[(0,Q.jsx)(ne,{className:`size-4 shrink-0 text-red-700 dark:text-red-300`,"aria-hidden":!0}),(0,Q.jsxs)(`span`,{className:`min-w-0 text-sm text-fg`,children:[(0,Q.jsxs)(`span`,{className:`font-medium`,children:[l.experience.executionIssues,` · `,sn.length]}),(0,Q.jsx)(`span`,{className:`ml-2 text-fg-muted`,children:l.experience.issuesDescription})]})]}),(0,Q.jsx)(`button`,{type:`button`,onClick:ln,className:`mr-2 rounded-md p-2 text-fg-muted hover:bg-red-500/10 hover:text-fg focus-visible:ring-2 focus-visible:ring-accent`,"aria-label":l.close,title:l.close,children:(0,Q.jsx)(d,{className:`size-4`,"aria-hidden":!0})})]}):null,wt?(0,Q.jsx)(kt,{}):jt.length>0||H===`system`?(0,Q.jsxs)(`section`,{className:`grid min-h-0 items-start gap-4 xl:grid-cols-[minmax(18rem,0.8fr)_minmax(0,1.5fr)]`,children:[(0,Q.jsxs)(`aside`,{className:`overflow-hidden rounded-xl border border-edge-subtle bg-surface-base shadow-surface`,children:[(0,Q.jsxs)(`div`,{className:`border-b border-edge-subtle p-3`,children:[z?null:(0,Q.jsxs)(o,{"aria-label":l.filters.project,className:$,value:R,onChange:e=>dn(e.target.value),children:[(0,Q.jsx)(s,{value:``,children:l.filters.allProjects}),$t.map(e=>(0,Q.jsx)(s,{value:e.id,children:e.name},e.id))]}),(0,Q.jsxs)(`label`,{className:f(`flex items-center gap-2 rounded-lg border border-edge bg-surface-panel px-3 py-2 text-sm text-fg-muted focus-within:border-accent`,!z&&`mt-2`),children:[(0,Q.jsx)(re,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,Q.jsx)(`input`,{className:`min-w-0 flex-1 bg-transparent text-fg outline-none placeholder:text-fg-subtle`,value:U,onChange:e=>de(e.target.value),placeholder:l.filters.search,"aria-label":l.filters.search})]}),(0,Q.jsxs)(`nav`,{className:`mt-3 flex flex-wrap items-center gap-1`,"aria-label":l.filters.status,children:[[{id:`all`,label:l.filters.all},{id:`active`,label:l.filters.active},{id:`paused`,label:l.paused},{id:`attention`,label:l.experience.executionIssues}].map(e=>(0,Q.jsx)(`button`,{type:`button`,className:f(`rounded-md px-2.5 py-1.5 text-xs font-medium text-fg-muted hover:bg-surface-hover hover:text-fg`,H===e.id&&`bg-surface-hover text-fg`),onClick:()=>W(e.id),"aria-pressed":H===e.id,children:e.label},e.id)),(0,Q.jsxs)(w,{children:[(0,Q.jsx)(te,{asChild:!0,children:(0,Q.jsx)(`button`,{type:`button`,className:f(`ml-auto rounded-md p-1.5 text-fg-muted hover:bg-surface-hover hover:text-fg`,H===`system`&&`bg-surface-hover text-fg`),"aria-label":l.system.title,children:(0,Q.jsx)(ae,{className:`size-4`})})}),(0,Q.jsx)(ie,{children:(0,Q.jsx)(T,{align:`end`,className:`z-70 min-w-40 rounded-lg border border-edge bg-surface-panel p-1 shadow-popover`,children:(0,Q.jsxs)(j,{className:`cursor-pointer rounded-md px-3 py-2 text-sm text-fg outline-none hover:bg-surface-hover`,onSelect:()=>W(`system`),children:[l.system.title,` `,Pt.length]})})})]})]}),Gt.length>0&&H!==`system`?(0,Q.jsxs)(`div`,{className:`mt-2 flex items-center justify-between gap-2 rounded-md bg-accent/8 px-2.5 py-1.5 text-xs text-accent-fg`,children:[(0,Q.jsxs)(`span`,{children:[l.filters.unread,` · `,Gt.length]}),(0,Q.jsx)(`button`,{type:`button`,className:`font-medium hover:underline`,disabled:et===`runs:read-all`,onClick:()=>void Sn(),children:l.filters.markAllRead})]}):null]}),(0,Q.jsx)(Lt,{automations:qt,runs:H===`system`?At:It,labels:l,cronLabels:C,language:a,selectedAutomationId:X,onOpenDetails:yn})]}),zt?(0,Q.jsx)(Ut,{automation:zt,runs:Vt,runsLoading:gt.isLoading,runsError:gt.error?l.feedback.actionFailed:void 0,labels:l,cronLabels:C,language:a,projects:$t,busyAction:et,onEdit:mn,onSelectRun:vn,onAction:xn},zt.id):(0,Q.jsx)(Zt,{icon:(0,Q.jsx)(L,{className:`size-5`}),title:l.empty.filtered})]}):null,!wt&&jt.length>0?(0,Q.jsx)(`div`,{children:(0,Q.jsxs)(S,{variant:`ghost`,onClick:()=>fn(`draft`),children:[(0,Q.jsx)(u,{className:`size-4`,"aria-hidden":!0}),l.experience.discover]})}):null]}),(0,Q.jsx)(b,{open:me,onOpenChange:e=>{K(e),e||(ye(null),xe(!1))},children:(0,Q.jsxs)(_,{children:[(0,Q.jsx)(h,{className:`xopc-dialog-overlay fixed inset-0 z-65 bg-scrim backdrop-blur-[1px]`}),(0,Q.jsxs)(v,{className:`xopc-dialog-content fixed left-1/2 top-1/2 z-66 flex h-[min(760px,calc(100vh-2rem))] w-[min(100%-2rem,48rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-2xl border border-edge bg-surface-panel shadow-popover outline-none`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-edge px-5 py-4`,children:[(0,Q.jsx)(y,{className:`text-base font-semibold text-fg`,children:he===`draft`?l.draft.title:Bt?l.editTitle:be?l.draft.editTitle:l.createTitle}),(0,Q.jsx)(g,{asChild:!0,children:(0,Q.jsx)(S,{variant:`ghost`,"aria-label":l.close,children:(0,Q.jsx)(d,{className:`size-4`})})})]}),Ce?(0,Q.jsx)(`p`,{role:`alert`,className:`px-5 py-2 text-sm text-red-700 dark:text-red-300`,children:Ce}):null,he===`draft`?(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto p-5`,children:(0,Q.jsx)(Nt,{labels:l,prompt:ke,draft:je,loading:Ne,approved:Fe,publishBusy:et===`draft:publish`,testBusy:et===`draft:test`,templates:on,projects:$t,projectId:Le,conversationMode:ze,notificationPolicy:Ve,onPromptChange:Ae,onGenerate:Cn,onEdit:hn,onPublish:wn,onTest:Tn,onProjectChange:Re,onConversationModeChange:Be,onNotificationPolicyChange:He,projectLocked:z,onApprovedChange:Ie,onDiscard:()=>{Me(null),Ie(!1)},onTemplateSelect:e=>{pn(e),Se({...e.form,projectId:Le})},onOpenAdvanced:()=>{Se({...Xe,projectId:Le,conversationMode:ze,notificationPolicy:Ve}),q(`blank`)}})}):(0,Q.jsxs)(Q.Fragment,{children:[he===`quick`&&G?(0,Q.jsx)(lt,{form:Y,setForm:Se,labels:l,projects:$t,projectLocked:z,source:G.source,requiresProject:G.requiresProject}):(0,Q.jsx)(Qt,{form:Y,labels:l,setForm:Se,projects:$t,workflowDefinitions:Jt,selectedWorkflow:en,workflowsLoading:vt.isLoading,browserAutomations:Yt,selectedBrowserAutomation:tn,browserAutomationsLoading:yt.isLoading,agentOptions:Xt,agentsLoading:bt.isLoading,language:a,projectLocked:z}),(0,Q.jsxs)(`div`,{className:`flex flex-wrap justify-end gap-2 border-t border-edge px-5 py-4`,children:[he===`quick`?(0,Q.jsx)(S,{variant:`ghost`,onClick:()=>q(`blank`),children:l.draft.advancedCreate}):null,be?(0,Q.jsx)(S,{variant:`ghost`,onClick:()=>{xe(!1),q(`draft`)},children:l.cancel}):(0,Q.jsx)(g,{asChild:!0,children:(0,Q.jsx)(S,{variant:`ghost`,children:l.cancel})}),(0,Q.jsx)(S,{variant:`primary`,onClick:bn,disabled:!an||!!et||he===`quick`&&!!G?.requiresProject&&!Y.projectId,children:et===`automation:create`||et===`draft:edit`||Bt&&et===`automation:${Bt.id}:edit`?l.feedback.working:Bt||be?l.save:l.experience.createEnabled})]})]})]})]})}),(0,Q.jsx)(b,{open:De&&!!Rt,onOpenChange:e=>{Oe(e),!e&&O(e=>{let t=new URLSearchParams(e);return t.delete(`run`),t},{replace:!0})},children:(0,Q.jsxs)(_,{children:[(0,Q.jsx)(h,{className:`xopc-dialog-overlay fixed inset-0 z-65 bg-scrim backdrop-blur-[1px]`}),(0,Q.jsxs)(v,{className:`xopc-dialog-content fixed left-1/2 top-1/2 z-66 flex h-[min(85vh,40rem)] w-[min(100%-2rem,32rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-2xl border border-edge bg-surface-panel shadow-popover outline-none`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-edge px-4 py-3`,children:[(0,Q.jsx)(y,{className:`truncate text-base font-semibold text-fg`,children:Rt?.automationName??l.dashboard.result}),(0,Q.jsx)(g,{asChild:!0,children:(0,Q.jsx)(S,{variant:`ghost`,"aria-label":l.close,children:(0,Q.jsx)(d,{className:`size-4`})})})]}),(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,Q.jsx)(Ht,{className:`rounded-none border-0`,run:Rt,events:Wt,labels:l,cronLabels:C,language:a,loading:_t.isLoading,repairDraft:Ue,repairLoading:Ge,repairApproved:Je,busyAction:et,onRepairApprovedChange:Ye,onSuggestRepair:En,onApplyRepair:Dn})})]})]})})]})}function Mt(e){let t=(0,ye.c)(9),{templates:n,labels:r,onSelect:i}=e,a;if(t[0]!==r||t[1]!==i||t[2]!==n){let e;t[4]!==r||t[5]!==i?(e=e=>(0,Q.jsxs)(`button`,{type:`button`,onClick:()=>i(e),className:`rounded-lg border border-edge-subtle bg-surface-panel p-4 text-left hover:bg-surface-hover focus-visible:ring-2 focus-visible:ring-accent`,children:[(0,Q.jsx)(k,{className:`mb-3 size-4 text-accent-fg`,"aria-hidden":!0}),(0,Q.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:e.name}),(0,Q.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:e.description}),(0,Q.jsxs)(`p`,{className:`mt-3 text-xs text-fg-muted`,children:[r.experience.source,`: `,e.source]})]},e.name),t[4]=r,t[5]=i,t[6]=e):e=t[6],a=n.map(e),t[0]=r,t[1]=i,t[2]=n,t[3]=a}else a=t[3];let o;return t[7]===a?o=t[8]:(o=(0,Q.jsx)(`div`,{className:`mt-4 grid gap-3 sm:grid-cols-2 lg:grid-cols-4`,children:a}),t[7]=a,t[8]=o),o}function Nt(e){let t=(0,ye.c)(110),{labels:n,prompt:r,draft:i,loading:a,approved:c,publishBusy:l,testBusy:u,templates:d,projects:p,projectId:m,conversationMode:h,notificationPolicy:g,onPromptChange:_,onGenerate:v,onEdit:y,onPublish:b,onTest:x,onProjectChange:C,onConversationModeChange:w,onNotificationPolicyChange:T,onApprovedChange:ee,onDiscard:E,onTemplateSelect:O,onOpenAdvanced:k,projectLocked:te}=e,ne=l===void 0?!1:l,A=u===void 0?!1:u,j=te===void 0?!1:te,M=!!(i&&i.simulation.requiredConfirmations.length>0),N;t[0]!==i||t[1]!==n.draft.advancedCreate||t[2]!==n.draft.suggestions||t[3]!==n.draft.suggestionsDescription||t[4]!==n.experience||t[5]!==k||t[6]!==O||t[7]!==d?(N=i?null:(0,Q.jsxs)(`div`,{className:`mb-5 border-b border-edge-subtle pb-4`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`div`,{className:`text-sm font-semibold text-fg`,children:n.draft.suggestions}),(0,Q.jsx)(`div`,{className:`mt-1 text-xs text-fg-muted`,children:n.draft.suggestionsDescription})]}),(0,Q.jsx)(S,{variant:`ghost`,onClick:k,children:n.draft.advancedCreate})]}),(0,Q.jsx)(`div`,{className:`mt-3 grid gap-2 sm:grid-cols-2`,children:d.map(e=>(0,Q.jsxs)(`button`,{type:`button`,className:`focus-visible:ring-2 focus-visible:ring-accent rounded-lg border border-edge-subtle bg-surface-panel p-3 text-left hover:bg-surface-hover`,onClick:()=>O(e),children:[(0,Q.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:e.name}),(0,Q.jsx)(`div`,{className:`mt-1 line-clamp-2 text-xs text-fg-muted`,children:e.description}),(0,Q.jsxs)(`div`,{className:`mt-2 text-xs text-fg-muted`,children:[n.experience.source,`: `,e.source]})]},e.name))})]}),t[0]=i,t[1]=n.draft.advancedCreate,t[2]=n.draft.suggestions,t[3]=n.draft.suggestionsDescription,t[4]=n.experience,t[5]=k,t[6]=O,t[7]=d,t[8]=N):N=t[8];let P;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,Q.jsx)(R,{className:`size-4 text-accent`}),t[9]=P):P=t[9];let I;t[10]===n.draft.title?I=t[11]:(I=(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-semibold text-fg`,children:[P,n.draft.title]}),t[10]=n.draft.title,t[11]=I);let L;t[12]===n.draft.subtitle?L=t[13]:(L=(0,Q.jsx)(`div`,{className:`mt-1 text-sm text-fg-muted`,children:n.draft.subtitle}),t[12]=n.draft.subtitle,t[13]=L);let z;t[14]!==I||t[15]!==L?(z=(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[I,L]}),t[14]=I,t[15]=L,t[16]=z):z=t[16];let B;t[17]!==a||t[18]!==r?(B=a||!r.trim(),t[17]=a,t[18]=r,t[19]=B):B=t[19];let re;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(re=(0,Q.jsx)(R,{className:`size-4`}),t[20]=re):re=t[20];let ie=a?n.draft.generating:n.draft.generate,V;t[21]!==v||t[22]!==ie||t[23]!==B?(V=(0,Q.jsxs)(S,{variant:`primary`,onClick:v,disabled:B,children:[re,ie]}),t[21]=v,t[22]=ie,t[23]=B,t[24]=V):V=t[24];let ae;t[25]!==V||t[26]!==z?(ae=(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[z,V]}),t[25]=V,t[26]=z,t[27]=ae):ae=t[27];let oe;t[28]===_?oe=t[29]:(oe=e=>_(e.target.value),t[28]=_,t[29]=oe);let se;t[30]!==n.draft.placeholder||t[31]!==n.draft.title||t[32]!==r||t[33]!==oe?(se=(0,Q.jsx)(`textarea`,{"aria-label":n.draft.title,className:`mt-4 min-h-20 w-full resize-y rounded-lg border border-edge bg-surface-base px-3 py-2 text-sm text-fg outline-none focus:border-accent`,value:r,onChange:oe,placeholder:n.draft.placeholder}),t[30]=n.draft.placeholder,t[31]=n.draft.title,t[32]=r,t[33]=oe,t[34]=se):se=t[34];let ce=j?`sm:grid-cols-2`:`sm:grid-cols-3`,le;t[35]===ce?le=t[36]:(le=f(`mt-3 grid gap-3`,ce),t[35]=ce,t[36]=le);let ue;t[37]!==n.draft.noProject||t[38]!==n.draft.project||t[39]!==C||t[40]!==m||t[41]!==j||t[42]!==p?(ue=j?null:(0,Q.jsx)(nn,{label:n.draft.project,children:(0,Q.jsxs)(o,{className:$,value:m,onChange:e=>C(e.target.value),children:[(0,Q.jsx)(s,{value:``,children:n.draft.noProject}),p.map(Pt)]})}),t[37]=n.draft.noProject,t[38]=n.draft.project,t[39]=C,t[40]=m,t[41]=j,t[42]=p,t[43]=ue):ue=t[43];let H;t[44]===w?H=t[45]:(H=e=>w(e.target.value),t[44]=w,t[45]=H);let U;t[46]===n.draft.newConversation?U=t[47]:(U=(0,Q.jsx)(s,{value:`new_session`,children:n.draft.newConversation}),t[46]=n.draft.newConversation,t[47]=U);let W;t[48]===n.draft.continuousConversation?W=t[49]:(W=(0,Q.jsx)(s,{value:`continuous`,children:n.draft.continuousConversation}),t[48]=n.draft.continuousConversation,t[49]=W);let de;t[50]!==h||t[51]!==H||t[52]!==U||t[53]!==W?(de=(0,Q.jsxs)(o,{className:$,value:h,onChange:H,children:[U,W]}),t[50]=h,t[51]=H,t[52]=U,t[53]=W,t[54]=de):de=t[54];let G;t[55]!==n.draft.conversation||t[56]!==de?(G=(0,Q.jsx)(nn,{label:n.draft.conversation,children:de}),t[55]=n.draft.conversation,t[56]=de,t[57]=G):G=t[57];let fe;t[58]===T?fe=t[59]:(fe=e=>T(e.target.value),t[58]=T,t[59]=fe);let pe;t[60]===n.draft.notifyAttention?pe=t[61]:(pe=(0,Q.jsx)(s,{value:`attention`,children:n.draft.notifyAttention}),t[60]=n.draft.notifyAttention,t[61]=pe);let me;t[62]===n.draft.notifyAll?me=t[63]:(me=(0,Q.jsx)(s,{value:`all`,children:n.draft.notifyAll}),t[62]=n.draft.notifyAll,t[63]=me);let K;t[64]===n.draft.notifyNone?K=t[65]:(K=(0,Q.jsx)(s,{value:`none`,children:n.draft.notifyNone}),t[64]=n.draft.notifyNone,t[65]=K);let he;t[66]!==g||t[67]!==fe||t[68]!==pe||t[69]!==me||t[70]!==K?(he=(0,Q.jsxs)(o,{className:$,value:g,onChange:fe,children:[pe,me,K]}),t[66]=g,t[67]=fe,t[68]=pe,t[69]=me,t[70]=K,t[71]=he):he=t[71];let ge;t[72]!==n.draft.notifications||t[73]!==he?(ge=(0,Q.jsx)(nn,{label:n.draft.notifications,children:he}),t[72]=n.draft.notifications,t[73]=he,t[74]=ge):ge=t[74];let _e;t[75]!==le||t[76]!==ue||t[77]!==G||t[78]!==ge?(_e=(0,Q.jsxs)(`div`,{className:le,children:[ue,G,ge]}),t[75]=le,t[76]=ue,t[77]=G,t[78]=ge,t[79]=_e):_e=t[79];let q;t[80]!==c||t[81]!==i||t[82]!==n.draft.approval||t[83]!==n.draft.assumptions||t[84]!==n.draft.discard||t[85]!==n.draft.edit||t[86]!==n.draft.publish||t[87]!==n.draft.review||t[88]!==n.draft.risks||t[89]!==n.draft.safety||t[90]!==n.draft.testOnce||t[91]!==n.draft.testing||t[92]!==n.feedback||t[93]!==n.info||t[94]!==n.none||t[95]!==ee||t[96]!==E||t[97]!==y||t[98]!==b||t[99]!==x||t[100]!==ne||t[101]!==M||t[102]!==A?(q=i?(0,Q.jsxs)(`div`,{className:`mt-4 grid gap-3 rounded-lg bg-surface-base p-4 lg:grid-cols-[1fr_1fr]`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(`div`,{className:`text-sm font-semibold text-fg`,children:i.automation.name}),i.automation.description?(0,Q.jsx)(`div`,{className:`mt-1 text-sm text-fg-muted`,children:i.automation.description}):null,(0,Q.jsxs)(`div`,{className:`mt-3 grid gap-2 text-sm`,children:[(0,Q.jsx)(Xt,{label:n.info.when,value:i.simulation.triggerSummary}),(0,Q.jsx)(Xt,{label:n.info.run,value:i.simulation.actionSummary})]})]}),(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(`div`,{className:`text-xs font-semibold uppercase text-fg-muted`,children:n.draft.review}),(0,Q.jsx)(Ft,{title:n.draft.safety,items:[...i.simulation.safetyNotes,...i.simulation.requiredConfirmations],empty:n.none}),(0,Q.jsx)(Ft,{title:n.draft.assumptions,items:i.assumptions,empty:n.none}),(0,Q.jsx)(Ft,{title:n.draft.risks,items:i.risks,empty:n.none}),M?(0,Q.jsxs)(`label`,{className:`mt-4 flex items-start gap-2 text-sm text-fg`,children:[(0,Q.jsx)(`input`,{className:`mt-1`,type:`checkbox`,checked:c,onChange:e=>ee(e.target.checked)}),(0,Q.jsx)(`span`,{children:n.draft.approval})]}):null,(0,Q.jsxs)(`div`,{className:`mt-4 flex justify-end gap-2`,children:[(0,Q.jsx)(S,{variant:`ghost`,onClick:E,children:n.draft.discard}),(0,Q.jsxs)(S,{variant:`secondary`,onClick:y,children:[(0,Q.jsx)(D,{className:`size-4`}),n.draft.edit]}),(0,Q.jsxs)(S,{variant:`secondary`,onClick:x,disabled:A||ne||M&&!c,children:[(0,Q.jsx)(F,{className:`size-4`}),A?n.draft.testing:n.draft.testOnce]}),(0,Q.jsx)(S,{variant:`primary`,onClick:b,disabled:ne||M&&!c,children:ne?n.feedback.working:n.draft.publish})]})]})]}):null,t[80]=c,t[81]=i,t[82]=n.draft.approval,t[83]=n.draft.assumptions,t[84]=n.draft.discard,t[85]=n.draft.edit,t[86]=n.draft.publish,t[87]=n.draft.review,t[88]=n.draft.risks,t[89]=n.draft.safety,t[90]=n.draft.testOnce,t[91]=n.draft.testing,t[92]=n.feedback,t[93]=n.info,t[94]=n.none,t[95]=ee,t[96]=E,t[97]=y,t[98]=b,t[99]=x,t[100]=ne,t[101]=M,t[102]=A,t[103]=q):q=t[103];let ve;return t[104]!==ae||t[105]!==se||t[106]!==_e||t[107]!==q||t[108]!==N?(ve=(0,Q.jsxs)(`section`,{className:`rounded-lg border border-edge-subtle bg-surface-base p-4 shadow-surface`,children:[N,ae,se,_e,q]}),t[104]=ae,t[105]=se,t[106]=_e,t[107]=q,t[108]=N,t[109]=ve):ve=t[109],ve}function Pt(e){return(0,Q.jsx)(s,{value:e.id,children:e.name},e.id)}function Ft(e){let t=(0,ye.c)(10),{title:n,items:r,empty:i}=e,a;t[0]===n?a=t[1]:(a=(0,Q.jsx)(`div`,{className:`text-xs font-medium text-fg-muted`,children:n}),t[0]=n,t[1]=a);let o;t[2]!==i||t[3]!==r?(o=r.length>0?r.map(It):(0,Q.jsx)(`li`,{className:`text-fg-muted`,children:i}),t[2]=i,t[3]=r,t[4]=o):o=t[4];let s;t[5]===o?s=t[6]:(s=(0,Q.jsx)(`ul`,{className:`mt-1 space-y-1 text-sm text-fg`,children:o}),t[5]=o,t[6]=s);let c;return t[7]!==a||t[8]!==s?(c=(0,Q.jsxs)(`div`,{className:`mt-3`,children:[a,s]}),t[7]=a,t[8]=s,t[9]=c):c=t[9],c}function It(e){return(0,Q.jsxs)(`li`,{children:[`- `,e]},e)}function Lt(e){let t=(0,ye.c)(20),{automations:n,runs:r,labels:i,cronLabels:a,language:o,selectedAutomationId:s,onOpenDetails:c}=e;if(n.length===0){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Q.jsx)(L,{className:`size-5`}),t[0]=e):e=t[0];let n;return t[1]===i.empty.filtered?n=t[2]:(n=(0,Q.jsx)(Zt,{className:`rounded-none border-0 shadow-none`,icon:e,title:i.empty.filtered}),t[1]=i.empty.filtered,t[2]=n),n}let l;if(t[3]!==n||t[4]!==a||t[5]!==i||t[6]!==o||t[7]!==c||t[8]!==r||t[9]!==s){let e;t[11]!==a||t[12]!==i||t[13]!==o||t[14]!==c||t[15]!==r||t[16]!==s?(e=e=>{let t=r.filter(t=>t.automationId===e.id).sort(Rt),n=t.find(xt),l=t[0];return(0,Q.jsxs)(`button`,{type:`button`,className:f(`block w-full p-3 text-left outline-none hover:bg-surface-hover focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-accent`,s===e.id&&`bg-surface-hover`),style:{contentVisibility:`auto`,containIntrinsicSize:`auto 130px`},"aria-current":s===e.id?`true`:void 0,onClick:()=>c(e.id),children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Q.jsx)(`span`,{className:f(`size-2 shrink-0 rounded-full`,n?`bg-blue-500`:pt(e,t)?`bg-red-500`:e.enabled?`bg-emerald-500`:`bg-fg-subtle`)}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium text-fg`,children:e.name}),(0,Q.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:e.enabled?i.enabled:i.paused}),l&&l.readAtMs==null&&!xt(l)?(0,Q.jsx)(`span`,{className:`ml-auto size-2 shrink-0 rounded-full bg-blue-500`,children:(0,Q.jsx)(`span`,{className:`sr-only`,children:i.filters.unread})}):null]}),(0,Q.jsxs)(`div`,{className:`mt-1 flex min-w-0 items-center justify-between gap-2 pl-4 text-xs text-fg-subtle`,children:[(0,Q.jsx)(`span`,{className:f(`line-clamp-2`,l?.error&&`text-red-700 dark:text-red-300`),children:l?l.error||l.summary||i.status[l.status]:e.state.lastError||(e.state.lastRunStatus?i.status[e.state.lastRunStatus]:i.experience.noRuns)}),l?.status?(0,Q.jsx)(`span`,{className:f(`shrink-0 rounded-full px-1.5 py-0.5`,yt(l.status)),children:i.status[l.status]}):null]}),(0,Q.jsxs)(`div`,{className:`mt-2 space-y-1 pl-4 text-xs text-fg-muted`,children:[l?(0,Q.jsxs)(`div`,{children:[i.last,`: `,gt(l.createdAtMs,i,o)]}):null,(0,Q.jsx)(`div`,{children:e.enabled?`${i.next}: ${Je(e,i,o)}`:i.paused}),(0,Q.jsx)(`div`,{children:qe(e.trigger,i,a,o)})]})]},e.id)},t[11]=a,t[12]=i,t[13]=o,t[14]=c,t[15]=r,t[16]=s,t[17]=e):e=t[17],l=n.map(e),t[3]=n,t[4]=a,t[5]=i,t[6]=o,t[7]=c,t[8]=r,t[9]=s,t[10]=l}else l=t[10];let u;return t[18]===l?u=t[19]:(u=(0,Q.jsx)(`div`,{className:`divide-y divide-edge-subtle`,children:l}),t[18]=l,t[19]=u),u}function Rt(e,t){return t.createdAtMs-e.createdAtMs}function zt(e,t){let n=t.events,r=e.data&&typeof e.data==`object`?e.data:{},i=typeof r.actionKind==`string`?r.actionKind:null,a=typeof r.status==`string`&&r.status in t.status?t.status[r.status]:null;switch(e.type){case`run.queued`:return e.message.toLowerCase().includes(`manual`)?n.manualQueued:e.message.toLowerCase().includes(`scheduled`)?n.scheduledQueued:n.eventQueued;case`run.started`:return n.runStarted;case`action.started`:return i?n.actionStarted.replace(`{kind}`,i):n.actionStartedFallback;case`action.completed`:return i?n.actionCompleted.replace(`{kind}`,i):n.actionCompletedFallback;case`action.failed`:return i?n.actionFailed.replace(`{kind}`,i):n.actionFailedFallback;case`completion_hook.started`:return n.completionHookStarted;case`completion_hook.completed`:return n.completionHookCompleted;case`completion_hook.failed`:return n.completionHookFailed;case`run.completed`:return a?n.runCompleted.replace(`{status}`,a):n.runCompletedFallback;default:return e.message}}function Bt(e){let t=(0,ye.c)(17),{value:n,labels:r,title:i,defaultExpanded:a}=e,[o,s]=(0,J.useState)(a===void 0?!1:a),c;t[0]===n?c=t[1]:(c=JSON.stringify(n,null,2),t[0]=n,t[1]=c);let l=c,u;t[2]===l?u=t[3]:(u=l.split(`
2
- `),t[2]=l,t[3]=u);let d=u.length,p=l.length>720||d>18,m;t[4]!==p||t[5]!==l?(m=p?`${l.split(`
3
- `).slice(0,10).join(`
4
- `).trimEnd()}...`:l,t[4]=p,t[5]=l,t[6]=m):m=t[6];let h=m,g;t[7]!==o||t[8]!==p||t[9]!==r||t[10]!==i?(g=p?(0,Q.jsxs)(`button`,{type:`button`,className:`flex w-full items-center justify-between gap-3 px-2.5 py-2 text-left text-xs font-medium text-fg-muted hover:bg-surface-hover hover:text-fg`,onClick:()=>s(Vt),"aria-expanded":o,children:[(0,Q.jsx)(`span`,{children:i}),(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-accent-fg`,children:[o?r.details.hideDetails:r.details.showDetails,(0,Q.jsx)(ee,{className:f(`size-3.5 transition-transform`,o&&`rotate-180`),"aria-hidden":!0})]})]}):(0,Q.jsx)(`div`,{className:`px-2.5 py-2 text-xs font-medium text-fg-muted`,children:i}),t[7]=o,t[8]=p,t[9]=r,t[10]=i,t[11]=g):g=t[11];let _=o||!p?l:h,v;t[12]===_?v=t[13]:(v=(0,Q.jsx)(`pre`,{className:`whitespace-pre-wrap break-all px-2.5 pb-2 text-xs leading-relaxed text-fg-muted`,children:_}),t[12]=_,t[13]=v);let y;return t[14]!==g||t[15]!==v?(y=(0,Q.jsxs)(`div`,{className:`mt-2 rounded-md border border-edge/70 bg-surface-muted/35`,children:[g,v]}),t[14]=g,t[15]=v,t[16]=y):y=t[16],y}function Vt(e){return!e}function Ht(e){let t=(0,ye.c)(148),{className:n,run:r,events:i,labels:o,cronLabels:s,language:u,loading:d,repairDraft:p,repairLoading:m,repairApproved:h,busyAction:g,onRepairApprovedChange:_,onSuggestRepair:v,onApplyRepair:y}=e;if(!r){let e;t[0]===n?e=t[1]:(e=f(`flex min-h-64 flex-col justify-center rounded-lg border border-edge-subtle bg-surface-base px-4 text-center text-sm text-fg-muted shadow-surface`,n),t[0]=n,t[1]=e);let r;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Q.jsx)(oe,{className:`mx-auto size-5`}),t[2]=r):r=t[2];let i;t[3]===o.selectRun?i=t[4]:(i=(0,Q.jsx)(`div`,{className:`mt-2`,children:o.selectRun}),t[3]=o.selectRun,t[4]=i);let a;return t[5]!==e||t[6]!==i?(a=(0,Q.jsxs)(`aside`,{className:e,children:[r,i]}),t[5]=e,t[6]=i,t[7]=a):a=t[7],a}let b=r.error||r.summary,x=r.conversationId?`/chat/${encodeURIComponent(r.conversationId)}`:r.workflowRunId?`/workflows?run=${encodeURIComponent(r.workflowRunId)}`:null,w=r.conversationId?o.runDetail.openConversation:o.runDetail.openWorkflow,T=r.conversationId?z:O,E=xt(r)?oe:r.status===`succeeded`?c:ne,D;t[8]===n?D=t[9]:(D=f(`rounded-lg border border-edge-subtle bg-surface-base shadow-surface`,n),t[8]=n,t[9]=D);let k;t[10]===r.automationName?k=t[11]:(k=(0,Q.jsx)(`div`,{className:`truncate text-sm font-semibold text-fg`,children:r.automationName}),t[10]=r.automationName,t[11]=k);let te;t[12]===r.id?te=t[13]:(te=r.id.slice(0,8),t[12]=r.id,t[13]=te);let j;t[14]===te?j=t[15]:(j=(0,Q.jsx)(`div`,{className:`mt-1 text-xs text-fg-muted`,children:te}),t[14]=te,t[15]=j);let M;t[16]!==k||t[17]!==j?(M=(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[k,j]}),t[16]=k,t[17]=j,t[18]=M):M=t[18];let N;t[19]===r.status?N=t[20]:(N=f(`shrink-0 rounded-full px-2 py-0.5 text-xs`,yt(r.status)),t[19]=r.status,t[20]=N);let P=o.status[r.status],F;t[21]!==N||t[22]!==P?(F=(0,Q.jsx)(`span`,{className:N,children:P}),t[21]=N,t[22]=P,t[23]=F):F=t[23];let I;t[24]!==M||t[25]!==F?(I=(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[M,F]}),t[24]=M,t[25]=F,t[26]=I):I=t[26];let L;t[27]!==o||t[28]!==u||t[29]!==r.createdAtMs?(L=gt(r.createdAtMs,o,u),t[27]=o,t[28]=u,t[29]=r.createdAtMs,t[30]=L):L=t[30];let B;t[31]===L?B=t[32]:(B=(0,Q.jsx)(`span`,{children:L}),t[31]=L,t[32]=B);let re;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(re=(0,Q.jsx)(`span`,{"aria-hidden":!0,children:`·`}),t[33]=re):re=t[33];let ie=o.details.duration,V;t[34]!==o||t[35]!==r.durationMs?(V=bt(r.durationMs,o),t[34]=o,t[35]=r.durationMs,t[36]=V):V=t[36];let ae;t[37]!==o.details.duration||t[38]!==V?(ae=(0,Q.jsxs)(`span`,{children:[ie,` `,V]}),t[37]=o.details.duration,t[38]=V,t[39]=ae):ae=t[39];let se;t[40]!==B||t[41]!==ae?(se=(0,Q.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-x-2 gap-y-1 text-xs text-fg-muted`,children:[B,re,ae]}),t[40]=B,t[41]=ae,t[42]=se):se=t[42];let ce;t[43]!==o.repair||t[44]!==v||t[45]!==m||t[46]!==r?(ce=r.status===`failed`||r.status===`timeout`||r.status===`cancelled`?(0,Q.jsx)(`div`,{className:`mt-3 flex justify-end`,children:(0,Q.jsxs)(S,{variant:`secondary`,onClick:()=>v(r),disabled:m,children:[(0,Q.jsx)(R,{className:`size-4`}),m?o.repair.generating:o.repair.suggest]})}):null,t[43]=o.repair,t[44]=v,t[45]=m,t[46]=r,t[47]=ce):ce=t[47];let le;t[48]!==se||t[49]!==ce||t[50]!==I?(le=(0,Q.jsxs)(`div`,{className:`border-b border-edge px-4 py-3`,children:[I,se,ce]}),t[48]=se,t[49]=ce,t[50]=I,t[51]=le):le=t[51];let ue;t[52]===r?ue=t[53]:(ue=xt(r)?`text-blue-500`:St(r)?`text-red-500`:r.status===`succeeded`?`text-emerald-500`:`text-fg-muted`,t[52]=r,t[53]=ue);let U;t[54]===ue?U=t[55]:(U=f(`size-4`,ue),t[54]=ue,t[55]=U);let W;t[56]!==E||t[57]!==U?(W=(0,Q.jsx)(E,{className:U}),t[56]=E,t[57]=U,t[58]=W):W=t[58];let de;t[59]!==o.runDetail.resultTitle||t[60]!==W?(de=(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-semibold text-fg`,children:[W,o.runDetail.resultTitle]}),t[59]=o.runDetail.resultTitle,t[60]=W,t[61]=de):de=t[61];let G;t[62]!==T||t[63]!==w||t[64]!==x?(G=x?(0,Q.jsx)(S,{asChild:!0,variant:`secondary`,className:`h-8 rounded-md px-2.5 text-xs`,children:(0,Q.jsxs)(a,{to:x,children:[(0,Q.jsx)(T,{className:`size-3.5`}),w,(0,Q.jsx)(A,{className:`size-3.5`})]})}):null,t[62]=T,t[63]=w,t[64]=x,t[65]=G):G=t[65];let fe;t[66]!==de||t[67]!==G?(fe=(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[de,G]}),t[66]=de,t[67]=G,t[68]=fe):fe=t[68];let pe=r.error&&`border-red-500/25 bg-red-500/5`,me;t[69]===pe?me=t[70]:(me=f(`mt-3 max-h-80 overflow-y-auto rounded-lg border border-edge/70 bg-surface-muted/25 p-3`,pe),t[69]=pe,t[70]=me);let K;t[71]!==o.runDetail.noResult||t[72]!==o.runDetail.resultPending||t[73]!==b||t[74]!==r?(K=b?r.error?(0,Q.jsx)(`p`,{className:`whitespace-pre-wrap break-words text-sm leading-relaxed text-red-700 dark:text-red-300`,children:b}):(0,Q.jsx)(l,{content:b,compact:!0,className:`text-sm`}):(0,Q.jsx)(`p`,{className:`text-sm leading-relaxed text-fg-muted`,children:xt(r)?o.runDetail.resultPending:o.runDetail.noResult}),t[71]=o.runDetail.noResult,t[72]=o.runDetail.resultPending,t[73]=b,t[74]=r,t[75]=K):K=t[75];let he;t[76]!==me||t[77]!==K?(he=(0,Q.jsx)(`div`,{className:me,children:K}),t[76]=me,t[77]=K,t[78]=he):he=t[78];let ge;t[79]!==fe||t[80]!==he?(ge=(0,Q.jsxs)(`section`,{className:`border-b border-edge p-4`,children:[fe,he]}),t[79]=fe,t[80]=he,t[81]=ge):ge=t[81];let _e;t[82]===o.runDetail.runInfo?_e=t[83]:(_e=(0,Q.jsx)(`div`,{className:`text-xs font-semibold uppercase text-fg-muted`,children:o.runDetail.runInfo}),t[82]=o.runDetail.runInfo,t[83]=_e);let q;t[84]!==s||t[85]!==o||t[86]!==u||t[87]!==r.manual||t[88]!==r.triggerSnapshot?(q=r.manual?o.trigger.manual:qe(r.triggerSnapshot,o,s,u),t[84]=s,t[85]=o,t[86]=u,t[87]=r.manual,t[88]=r.triggerSnapshot,t[89]=q):q=t[89];let ve;t[90]!==o.explain.whyRan||t[91]!==q?(ve=(0,Q.jsx)(Jt,{label:o.explain.whyRan,value:q}),t[90]=o.explain.whyRan,t[91]=q,t[92]=ve):ve=t[92];let J=o.details.started,be;t[93]!==o||t[94]!==u||t[95]!==r.startedAtMs?(be=gt(r.startedAtMs,o,u),t[93]=o,t[94]=u,t[95]=r.startedAtMs,t[96]=be):be=t[96];let xe;t[97]!==o.details.started||t[98]!==be?(xe=(0,Q.jsx)(Jt,{label:J,value:be}),t[97]=o.details.started,t[98]=be,t[99]=xe):xe=t[99];let Y;t[100]!==o.details.model||t[101]!==r.model?(Y=r.model?(0,Q.jsx)(Jt,{label:o.details.model,value:r.model}):null,t[100]=o.details.model,t[101]=r.model,t[102]=Y):Y=t[102];let Se;t[103]!==ve||t[104]!==xe||t[105]!==Y?(Se=(0,Q.jsxs)(`div`,{className:`mt-3 grid gap-2 text-xs text-fg-muted`,children:[ve,xe,Y]}),t[103]=ve,t[104]=xe,t[105]=Y,t[106]=Se):Se=t[106];let Ce;t[107]!==_e||t[108]!==Se?(Ce=(0,Q.jsxs)(`section`,{className:`border-b border-edge p-4`,children:[_e,Se]}),t[107]=_e,t[108]=Se,t[109]=Ce):Ce=t[109];let we;t[110]!==g||t[111]!==o||t[112]!==y||t[113]!==_||t[114]!==h||t[115]!==p||t[116]!==r?(we=p?(0,Q.jsxs)(`div`,{className:`border-b border-edge px-4 py-3`,children:[(0,Q.jsx)(`div`,{className:`text-xs font-semibold uppercase text-fg-muted`,children:o.repair.title}),(0,Q.jsx)(`div`,{className:`mt-2 text-sm text-fg`,children:p.explanation}),p.expectedEffect?(0,Q.jsx)(`div`,{className:`mt-2 text-sm text-fg-muted`,children:p.expectedEffect}):null,(0,Q.jsx)(Ft,{title:o.repair.risks,items:p.risks,empty:o.none}),(0,Q.jsx)(Bt,{value:p.patch,labels:o,title:o.details.repairPatch}),p.requiresApproval?(0,Q.jsxs)(`label`,{className:`mt-3 flex items-start gap-2 text-sm text-fg`,children:[(0,Q.jsx)(`input`,{className:`mt-1`,type:`checkbox`,checked:h,onChange:e=>_(e.target.checked)}),(0,Q.jsx)(`span`,{children:o.repair.approval})]}):null,(0,Q.jsx)(`div`,{className:`mt-3 flex justify-end`,children:(0,Q.jsx)(S,{variant:`primary`,onClick:()=>y(r),disabled:g===`run:${r.id}:repair`||p.requiresApproval&&!h,children:g===`run:${r.id}:repair`?o.feedback.working:o.repair.apply})})]}):null,t[110]=g,t[111]=o,t[112]=y,t[113]=_,t[114]=h,t[115]=p,t[116]=r,t[117]=we):we=t[117];let Te;t[118]===Symbol.for(`react.memo_cache_sentinel`)?(Te=(0,Q.jsx)(H,{className:`size-4 shrink-0`}),t[118]=Te):Te=t[118];let Ee;t[119]===o.runDetail.technicalEvents?Ee=t[120]:(Ee=(0,Q.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2 text-sm font-medium text-fg-muted`,children:[Te,o.runDetail.technicalEvents]}),t[119]=o.runDetail.technicalEvents,t[120]=Ee);let De;t[121]!==i.length||t[122]!==o.runDetail.eventCount?(De=o.runDetail.eventCount.replace(`{count}`,String(i.length)),t[121]=i.length,t[122]=o.runDetail.eventCount,t[123]=De):De=t[123];let Oe;t[124]===Symbol.for(`react.memo_cache_sentinel`)?(Oe=(0,Q.jsx)(ee,{className:`size-4 transition-transform group-open:rotate-180`}),t[124]=Oe):Oe=t[124];let X;t[125]===De?X=t[126]:(X=(0,Q.jsxs)(`span`,{className:`flex shrink-0 items-center gap-1 text-xs text-fg-muted`,children:[De,Oe]}),t[125]=De,t[126]=X);let Z;t[127]!==Ee||t[128]!==X?(Z=(0,Q.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center justify-between gap-3 rounded-md outline-none hover:text-fg focus-visible:ring-2 focus-visible:ring-accent`,children:[Ee,X]}),t[127]=Ee,t[128]=X,t[129]=Z):Z=t[129];let ke;t[130]===o.runDetail.technicalEventsDescription?ke=t[131]:(ke=(0,Q.jsx)(`p`,{className:`mt-2 text-xs leading-relaxed text-fg-muted`,children:o.runDetail.technicalEventsDescription}),t[130]=o.runDetail.technicalEventsDescription,t[131]=ke);let Ae;t[132]!==i||t[133]!==o||t[134]!==u||t[135]!==d?(Ae=(0,Q.jsx)(`div`,{className:`mt-4`,children:d?(0,Q.jsxs)(`div`,{className:`space-y-3`,"aria-label":o.loading,children:[(0,Q.jsx)(C,{className:`h-10 w-full`}),(0,Q.jsx)(C,{className:`h-10 w-4/5`}),(0,Q.jsx)(C,{className:`h-10 w-11/12`})]}):i.length===0?(0,Q.jsx)(`div`,{className:`text-sm text-fg-muted`,children:o.empty.events}):(0,Q.jsx)(`ol`,{className:`space-y-3`,children:i.map(e=>(0,Q.jsxs)(`li`,{className:`grid grid-cols-[0.75rem_1fr] gap-3`,children:[(0,Q.jsx)(`span`,{className:f(`mt-1 size-2 rounded-full`,Yt(e.type))}),(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(`div`,{className:`text-sm text-fg`,children:zt(e,o)}),(0,Q.jsxs)(`div`,{className:`mt-1 text-xs text-fg-muted`,children:[gt(e.createdAtMs,o,u),` · `,e.type]}),e.data&&typeof e.data==`object`?(0,Q.jsxs)(`details`,{className:`group/event mt-2 rounded-md border border-edge/70 bg-surface-muted/35`,children:[(0,Q.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center justify-between gap-2 px-2.5 py-2 text-xs font-medium text-fg-muted outline-none hover:text-fg`,children:[o.details.eventData,(0,Q.jsx)(ee,{className:`size-3.5 transition-transform group-open/event:rotate-180`})]}),(0,Q.jsx)(`pre`,{className:`max-h-72 overflow-auto whitespace-pre-wrap break-all border-t border-edge/70 px-2.5 py-2 text-xs leading-relaxed text-fg-muted`,children:JSON.stringify(e.data,null,2)})]}):null]})]},e.id))})}),t[132]=i,t[133]=o,t[134]=u,t[135]=d,t[136]=Ae):Ae=t[136];let je;t[137]!==Z||t[138]!==ke||t[139]!==Ae?(je=(0,Q.jsxs)(`details`,{className:`group px-4 py-3`,children:[Z,ke,Ae]}),t[137]=Z,t[138]=ke,t[139]=Ae,t[140]=je):je=t[140];let Me;return t[141]!==D||t[142]!==le||t[143]!==ge||t[144]!==Ce||t[145]!==we||t[146]!==je?(Me=(0,Q.jsxs)(`aside`,{className:D,children:[le,ge,Ce,we,je]}),t[141]=D,t[142]=le,t[143]=ge,t[144]=Ce,t[145]=we,t[146]=je,t[147]=Me):Me=t[147],Me}function Ut(e){let t=(0,ye.c)(113),{automation:n,runs:r,runsLoading:i,runsError:a,labels:o,cronLabels:s,language:u,projects:d,busyAction:p,onEdit:m,onSelectRun:h,onAction:g}=e,_=p===`automation:${n.id}:run`,v=p===`automation:${n.id}:toggle`,y=p===`automation:${n.id}:delete`,b;t[0]===n?b=t[1]:(b=Tt(n),t[0]=n,t[1]=b);let x=b,ee;t[2]===n.name?ee=t[3]:(ee=(0,Q.jsx)(`h2`,{className:`truncate text-lg font-semibold text-fg`,children:n.name}),t[2]=n.name,t[3]=ee);let O=n.enabled?`bg-emerald-500/10 text-emerald-700 dark:text-emerald-300`:`bg-surface-hover text-fg-muted`,k;t[4]===O?k=t[5]:(k=f(`shrink-0 rounded-full px-2 py-0.5 text-xs`,O),t[4]=O,t[5]=k);let ne=n.enabled?o.enabled:o.paused,A;t[6]!==k||t[7]!==ne?(A=(0,Q.jsx)(`span`,{className:k,children:ne}),t[6]=k,t[7]=ne,t[8]=A):A=t[8];let M;t[9]!==ee||t[10]!==A?(M=(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[ee,A]}),t[9]=ee,t[10]=A,t[11]=M):M=t[11];let N;t[12]===n?N=t[13]:(N=Et(n)?(0,Q.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:Et(n)}):null,t[12]=n,t[13]=N);let P;t[14]!==M||t[15]!==N?(P=(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[M,N]}),t[14]=M,t[15]=N,t[16]=P):P=t[16];let L;t[17]!==n||t[18]!==p||t[19]!==y||t[20]!==o.dashboard.delete||t[21]!==o.dashboard.deleted||t[22]!==o.dashboard.pause||t[23]!==o.dashboard.resume||t[24]!==o.dashboard.resumed||t[25]!==o.dashboard.runNow||t[26]!==o.details||t[27]!==o.edit||t[28]!==o.experience.deleteConfirm||t[29]!==o.feedback||t[30]!==g||t[31]!==m||t[32]!==x||t[33]!==_||t[34]!==v?(L=x?null:(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,Q.jsxs)(S,{variant:`secondary`,disabled:p!==null,onClick:()=>void g(`automation:${n.id}:toggle`,()=>n.enabled?V.pause(n.id):V.resume(n.id),n.enabled?o.feedback.paused:o.dashboard.resumed),children:[v?(0,Q.jsx)(E,{className:`size-4 animate-spin`}):n.enabled?(0,Q.jsx)(I,{className:`size-4`}):(0,Q.jsx)(F,{className:`size-4`}),n.enabled?o.dashboard.pause:o.dashboard.resume]}),(0,Q.jsxs)(S,{variant:`primary`,disabled:p!==null,onClick:()=>void g(`automation:${n.id}:run`,()=>V.runNow(n.id),o.feedback.rerunQueued),children:[_?(0,Q.jsx)(E,{className:`size-4 animate-spin`}):(0,Q.jsx)(F,{className:`size-4`}),o.dashboard.runNow]}),(0,Q.jsxs)(w,{children:[(0,Q.jsx)(te,{asChild:!0,children:(0,Q.jsx)(S,{variant:`ghost`,className:`size-9 p-0`,"aria-label":o.details.moreActions,children:(0,Q.jsx)(ae,{className:`size-4`})})}),(0,Q.jsx)(ie,{children:(0,Q.jsxs)(T,{align:`end`,className:`z-70 min-w-40 rounded-lg border border-edge bg-surface-panel p-1 shadow-popover`,children:[(0,Q.jsxs)(j,{className:`flex cursor-pointer items-center gap-2 rounded-md px-3 py-2 text-sm text-fg outline-none hover:bg-surface-hover`,onSelect:()=>m(n),children:[(0,Q.jsx)(D,{className:`size-4`}),o.edit]}),(0,Q.jsxs)(j,{className:`flex cursor-pointer items-center gap-2 rounded-md px-3 py-2 text-sm text-red-700 outline-none hover:bg-red-500/10 dark:text-red-300`,disabled:p!==null,onSelect:()=>{window.confirm(o.experience.deleteConfirm)&&g(`automation:${n.id}:delete`,()=>V.remove(n.id),o.dashboard.deleted)},children:[y?(0,Q.jsx)(E,{className:`size-4 animate-spin`}):(0,Q.jsx)(se,{className:`size-4`}),o.dashboard.delete]})]})})]})]}),t[17]=n,t[18]=p,t[19]=y,t[20]=o.dashboard.delete,t[21]=o.dashboard.deleted,t[22]=o.dashboard.pause,t[23]=o.dashboard.resume,t[24]=o.dashboard.resumed,t[25]=o.dashboard.runNow,t[26]=o.details,t[27]=o.edit,t[28]=o.experience.deleteConfirm,t[29]=o.feedback,t[30]=g,t[31]=m,t[32]=x,t[33]=_,t[34]=v,t[35]=L):L=t[35];let R;t[36]!==L||t[37]!==P?(R=(0,Q.jsxs)(`header`,{className:`flex flex-wrap items-start justify-between gap-3 border-b border-edge px-5 py-4`,children:[P,L]}),t[36]=L,t[37]=P,t[38]=R):R=t[38];let z;t[39]===o.dashboard.latestResult?z=t[40]:(z=(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:o.dashboard.latestResult}),t[39]=o.dashboard.latestResult,t[40]=z);let B;t[41]!==o.experience.viewResult||t[42]!==h||t[43]!==r[0]?(B=r[0]?(0,Q.jsx)(S,{variant:`secondary`,onClick:()=>h(r[0].id),children:o.experience.viewResult}):null,t[41]=o.experience.viewResult,t[42]=h,t[43]=r[0],t[44]=B):B=t[44];let re;t[45]!==z||t[46]!==B?(re=(0,Q.jsxs)(`div`,{className:`mb-3 flex flex-wrap items-center justify-between gap-2`,children:[z,B]}),t[45]=z,t[46]=B,t[47]=re):re=t[47];let ce;t[48]!==o||t[49]!==u||t[50]!==r[0]||t[51]!==a||t[52]!==i?(ce=a?(0,Q.jsx)(`p`,{role:`alert`,className:`text-sm text-red-700 dark:text-red-300`,children:a}):i?(0,Q.jsx)(C,{className:`h-28 w-full`}):r[0]?(0,Q.jsxs)(`div`,{className:`space-y-3 rounded-lg border border-edge-subtle bg-surface-base p-4`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-xs text-fg-muted`,children:[(0,Q.jsx)(`span`,{className:f(`rounded-full px-2 py-0.5`,yt(r[0].status)),children:o.status[r[0].status]}),gt(r[0].createdAtMs,o,u)]}),(0,Q.jsx)(l,{content:r[0].error||r[0].summary||(xt(r[0])?o.runDetail.resultPending:o.runDetail.noResult),compact:!0})]}):(0,Q.jsx)(`p`,{className:`text-sm text-fg-muted`,children:o.experience.noRuns}),t[48]=o,t[49]=u,t[50]=r[0],t[51]=a,t[52]=i,t[53]=ce):ce=t[53];let le;t[54]!==n||t[55]!==o||t[56]!==u?(le=n.enabled?`${o.next}: ${Je(n,o,u)}`:o.paused,t[54]=n,t[55]=o,t[56]=u,t[57]=le):le=t[57];let ue;t[58]===le?ue=t[59]:(ue=(0,Q.jsx)(`p`,{className:`mt-3 text-xs text-fg-muted`,children:le}),t[58]=le,t[59]=ue);let H;t[60]!==re||t[61]!==ce||t[62]!==ue?(H=(0,Q.jsxs)(`section`,{children:[re,ce,ue]}),t[60]=re,t[61]=ce,t[62]=ue,t[63]=H):H=t[63];let U;t[64]===o.dashboard.runHistory?U=t[65]:(U=(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:o.dashboard.runHistory}),t[64]=o.dashboard.runHistory,t[65]=U);let W;t[66]===o.dashboard.runHistoryDescription?W=t[67]:(W=(0,Q.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:o.dashboard.runHistoryDescription}),t[66]=o.dashboard.runHistoryDescription,t[67]=W);let de;t[68]!==U||t[69]!==W?(de=(0,Q.jsxs)(`div`,{children:[U,W]}),t[68]=U,t[69]=W,t[70]=de):de=t[70];let G;t[71]===r.length?G=t[72]:(G=(0,Q.jsx)(`span`,{className:`rounded-full bg-surface-base px-2.5 py-1 text-xs text-fg-muted`,children:r.length}),t[71]=r.length,t[72]=G);let fe;t[73]!==de||t[74]!==G?(fe=(0,Q.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-3`,children:[de,G]}),t[73]=de,t[74]=G,t[75]=fe):fe=t[75];let pe;t[76]!==o||t[77]!==u||t[78]!==h||t[79]!==r||t[80]!==i?(pe=i?(0,Q.jsx)(C,{className:`h-24 w-full`}):r.length===0?(0,Q.jsx)(Zt,{className:`min-h-24 py-6`,icon:(0,Q.jsx)(oe,{className:`size-5`}),title:o.empty.runs}):(0,Q.jsx)(`div`,{className:`divide-y divide-edge-subtle overflow-hidden rounded-xl border border-edge-subtle bg-surface-base`,children:r.slice(0,8).map(e=>(0,Q.jsxs)(`button`,{type:`button`,className:`block w-full p-3 text-left hover:bg-surface-hover`,onClick:()=>h(e.id),children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[e.status===`succeeded`?(0,Q.jsx)(c,{className:`size-4 shrink-0 text-emerald-600 dark:text-emerald-300`}):(0,Q.jsx)(oe,{className:`size-4 shrink-0 text-fg-muted`}),(0,Q.jsx)(`span`,{className:`truncate text-sm font-medium text-fg`,children:gt(e.createdAtMs,o,u)})]}),(0,Q.jsx)(`span`,{className:f(`shrink-0 rounded-full px-2 py-0.5 text-xs`,yt(e.status)),children:o.status[e.status]})]}),(0,Q.jsx)(`p`,{className:f(`mt-1 line-clamp-2 pl-6 text-sm text-fg-muted`,e.error&&`text-red-700 dark:text-red-300`),children:e.error||e.summary||_t(e.actionSnapshot,o)})]},e.id))}),t[76]=o,t[77]=u,t[78]=h,t[79]=r,t[80]=i,t[81]=pe):pe=t[81];let me;t[82]!==fe||t[83]!==pe?(me=(0,Q.jsxs)(`section`,{className:`min-w-0`,children:[fe,pe]}),t[82]=fe,t[83]=pe,t[84]=me):me=t[84];let K;t[85]===o.experience.settings?K=t[86]:(K=(0,Q.jsx)(`summary`,{className:`cursor-pointer text-sm font-medium text-fg`,children:o.experience.settings}),t[85]=o.experience.settings,t[86]=K);let he;t[87]!==n||t[88]!==o?(he=Ct(n,o),t[87]=n,t[88]=o,t[89]=he):he=t[89];let ge;t[90]===he?ge=t[91]:(ge=(0,Q.jsx)(l,{content:he,compact:!0}),t[90]=he,t[91]=ge);let _e;t[92]!==n||t[93]!==s||t[94]!==o||t[95]!==u||t[96]!==d?(_e=(0,Q.jsx)(Gt,{automation:n,labels:o,cronLabels:s,language:u,projects:d}),t[92]=n,t[93]=s,t[94]=o,t[95]=u,t[96]=d,t[97]=_e):_e=t[97];let q;t[98]!==ge||t[99]!==_e?(q=(0,Q.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[ge,_e]}),t[98]=ge,t[99]=_e,t[100]=q):q=t[100];let ve;t[101]!==K||t[102]!==q?(ve=(0,Q.jsxs)(`details`,{className:`rounded-lg border border-edge-subtle p-4`,children:[K,q]}),t[101]=K,t[102]=q,t[103]=ve):ve=t[103];let J;t[104]!==me||t[105]!==ve?(J=(0,Q.jsxs)(`div`,{className:`grid gap-5`,children:[me,ve]}),t[104]=me,t[105]=ve,t[106]=J):J=t[106];let be;t[107]!==H||t[108]!==J?(be=(0,Q.jsxs)(`div`,{className:`grid gap-5 p-5`,children:[H,J]}),t[107]=H,t[108]=J,t[109]=be):be=t[109];let xe;return t[110]!==R||t[111]!==be?(xe=(0,Q.jsxs)(`article`,{className:`min-w-0 overflow-hidden rounded-xl border border-edge-subtle bg-surface-panel shadow-surface`,children:[R,be]}),t[110]=R,t[111]=be,t[112]=xe):xe=t[112],xe}function Wt(e,t){return e===`suggest_only`?t.safety.suggestOnlyDescription:e===`ask_before_apply`?t.safety.askBeforeApplyDescription:t.safety.autoApplyDescription}function Gt(e){let t=(0,ye.c)(146),{automation:n,labels:r,cronLabels:i,language:a,projects:o}=e,s,c,l,u,d,f,p,m,h,g,_;if(t[0]!==n||t[1]!==i||t[2]!==r||t[3]!==a){let e=vt(n),o;t[15]!==n||t[16]!==r||t[17]!==a?(o=Je(n,r,a),t[15]=n,t[16]=r,t[17]=a,t[18]=o):o=t[18];let v=o,y;t[19]!==n.state.nextRunAtMs||t[20]!==a?(y=n.state.nextRunAtMs?Ue(n.state.nextRunAtMs,a):void 0,t[19]=n.state.nextRunAtMs,t[20]=a,t[21]=y):y=t[21];let b=y;if(t[22]!==n.trigger.eventType||t[23]!==n.trigger.kind||t[24]!==n.trigger.schedule||t[25]!==n.trigger.secretId||t[26]!==n.trigger.source||t[27]!==r.info.anchor||t[28]!==r.info.calendarSchedule||t[29]!==r.info.eventSource||t[30]!==r.info.eventType||t[31]!==r.info.expression||t[32]!==r.info.fixedInterval||t[33]!==r.info.oneTimeSchedule||t[34]!==r.info.rawInterval||t[35]!==r.info.scheduleType||t[36]!==r.info.timezone||t[37]!==r.info.webhookSecret||t[38]!==a){if(_=[],n.trigger.kind===`schedule`){let e=n.trigger.schedule,i=e.kind===`interval`?r.info.fixedInterval:e.kind===`cron`?r.info.calendarSchedule:r.info.oneTimeSchedule,o;if(t[40]!==r.info.scheduleType||t[41]!==i?(o={label:r.info.scheduleType,value:i},t[40]=r.info.scheduleType,t[41]=i,t[42]=o):o=t[42],_.push(o),e.kind===`interval`){let n=`${e.everyMs} ms`,i;if(t[43]!==r.info.rawInterval||t[44]!==n?(i={label:r.info.rawInterval,value:n},t[43]=r.info.rawInterval,t[44]=n,t[45]=i):i=t[45],_.push(i),e.anchorMs){let n=r.info.anchor,i;t[46]!==a||t[47]!==e.anchorMs?(i=Ue(e.anchorMs,a),t[46]=a,t[47]=e.anchorMs,t[48]=i):i=t[48];let o;t[49]!==r.info.anchor||t[50]!==i?(o={label:n,value:i},t[49]=r.info.anchor,t[50]=i,t[51]=o):o=t[51],_.push(o)}}else if(e.kind===`cron`){let n;if(t[52]!==r.info.expression||t[53]!==e.expr?(n={label:r.info.expression,value:e.expr},t[52]=r.info.expression,t[53]=e.expr,t[54]=n):n=t[54],_.push(n),e.tz){let n;t[55]!==r.info.timezone||t[56]!==e.tz?(n={label:r.info.timezone,value:e.tz},t[55]=r.info.timezone,t[56]=e.tz,t[57]=n):n=t[57],_.push(n)}}else{let n;t[58]!==r.info.oneTimeSchedule||t[59]!==e.at?(n={label:r.info.oneTimeSchedule,value:e.at},t[58]=r.info.oneTimeSchedule,t[59]=e.at,t[60]=n):n=t[60],_.push(n)}}else if(n.trigger.kind===`event`){let e;if(t[61]!==n.trigger.eventType||t[62]!==r.info.eventType?(e={label:r.info.eventType,value:n.trigger.eventType},t[61]=n.trigger.eventType,t[62]=r.info.eventType,t[63]=e):e=t[63],_.push(e),n.trigger.source){let e;t[64]!==n.trigger.source||t[65]!==r.info.eventSource?(e={label:r.info.eventSource,value:n.trigger.source},t[64]=n.trigger.source,t[65]=r.info.eventSource,t[66]=e):e=t[66],_.push(e)}}else if(n.trigger.kind===`webhook`&&n.trigger.secretId){let e;t[67]!==n.trigger.secretId||t[68]!==r.info.webhookSecret?(e={label:r.info.webhookSecret,value:n.trigger.secretId},t[67]=n.trigger.secretId,t[68]=r.info.webhookSecret,t[69]=e):e=t[69],_.push(e)}t[22]=n.trigger.eventType,t[23]=n.trigger.kind,t[24]=n.trigger.schedule,t[25]=n.trigger.secretId,t[26]=n.trigger.source,t[27]=r.info.anchor,t[28]=r.info.calendarSchedule,t[29]=r.info.eventSource,t[30]=r.info.eventType,t[31]=r.info.expression,t[32]=r.info.fixedInterval,t[33]=r.info.oneTimeSchedule,t[34]=r.info.rawInterval,t[35]=r.info.scheduleType,t[36]=r.info.timezone,t[37]=r.info.webhookSecret,t[38]=a,t[39]=_}else _=t[39];h=`h-fit overflow-hidden rounded-xl border border-edge-subtle bg-surface-base shadow-surface`,t[70]===r.info.overview?g=t[71]:(g=(0,Q.jsx)(`div`,{className:`border-b border-edge-subtle px-4 py-3`,children:(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:r.info.overview})}),t[70]=r.info.overview,t[71]=g),f=`grid gap-4 p-4`;let x;t[72]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,Q.jsx)(k,{className:`size-4`,"aria-hidden":!0}),t[72]=x):x=t[72];let S=r.info.schedule,C;t[73]!==n.trigger||t[74]!==i||t[75]!==r||t[76]!==a?(C=qe(n.trigger,r,i,a),t[73]=n.trigger,t[74]=i,t[75]=r,t[76]=a,t[77]=C):C=t[77];let w=n.enabled?`${r.info.nextRun}:${v}`:v;t[78]!==r.info.schedule||t[79]!==b||t[80]!==C||t[81]!==w?(p=(0,Q.jsx)(qt,{icon:x,label:S,value:C,description:w,descriptionTitle:b}),t[78]=r.info.schedule,t[79]=b,t[80]=C,t[81]=w,t[82]=p):p=t[82];let T;t[83]===n.action.kind?T=t[84]:(T=n.action.kind===`workflow`?(0,Q.jsx)(O,{className:`size-4`,"aria-hidden":!0}):n.action.kind===`browser_automation`?(0,Q.jsx)(H,{className:`size-4`,"aria-hidden":!0}):(0,Q.jsx)(L,{className:`size-4`,"aria-hidden":!0}),t[83]=n.action.kind,t[84]=T);let ee=r.info.action,E;t[85]!==n.action||t[86]!==r?(E=_t(n.action,r),t[85]=n.action,t[86]=r,t[87]=E):E=t[87],t[88]!==r.info.action||t[89]!==T||t[90]!==E?(m=(0,Q.jsx)(qt,{icon:T,label:ee,value:E}),t[88]=r.info.action,t[89]=T,t[90]=E,t[91]=m):m=t[91],s=qt,t[92]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Q.jsx)(N,{className:`size-4`,"aria-hidden":!0}),t[92]=c):c=t[92],l=r.info.permission,u=r.safety[e],d=Wt(e,r),t[0]=n,t[1]=i,t[2]=r,t[3]=a,t[4]=s,t[5]=c,t[6]=l,t[7]=u,t[8]=d,t[9]=f,t[10]=p,t[11]=m,t[12]=h,t[13]=g,t[14]=_}else s=t[4],c=t[5],l=t[6],u=t[7],d=t[8],f=t[9],p=t[10],m=t[11],h=t[12],g=t[13],_=t[14];let v;t[93]!==s||t[94]!==c||t[95]!==l||t[96]!==u||t[97]!==d?(v=(0,Q.jsx)(s,{icon:c,label:l,value:u,description:d}),t[93]=s,t[94]=c,t[95]=l,t[96]=u,t[97]=d,t[98]=v):v=t[98];let y;t[99]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,Q.jsx)(O,{className:`size-4`,"aria-hidden":!0}),t[99]=y):y=t[99];let b;t[100]!==n.projectId||t[101]!==r.info.noProject||t[102]!==o?(b=o.find(e=>e.id===n.projectId)?.name??r.info.noProject,t[100]=n.projectId,t[101]=r.info.noProject,t[102]=o,t[103]=b):b=t[103];let x;t[104]!==r.info.project||t[105]!==b?(x=(0,Q.jsx)(qt,{icon:y,label:r.info.project,value:b}),t[104]=r.info.project,t[105]=b,t[106]=x):x=t[106];let S;t[107]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,Q.jsx)(z,{className:`size-4`,"aria-hidden":!0}),t[107]=S):S=t[107];let C=n.conversationMode===`continuous`?r.info.continuousConversation:r.info.newConversation,w;t[108]!==r.info.conversation||t[109]!==C?(w=(0,Q.jsx)(qt,{icon:S,label:r.info.conversation,value:C}),t[108]=r.info.conversation,t[109]=C,t[110]=w):w=t[110];let T;t[111]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,Q.jsx)(ne,{className:`size-4`,"aria-hidden":!0}),t[111]=T):T=t[111];let E=n.notificationPolicy===`all`?r.info.notifyAll:n.notificationPolicy===`none`?r.info.notifyNone:r.info.notifyAttention,D;t[112]!==r.info.notifications||t[113]!==E?(D=(0,Q.jsx)(qt,{icon:T,label:r.info.notifications,value:E}),t[112]=r.info.notifications,t[113]=E,t[114]=D):D=t[114];let te;t[115]===Symbol.for(`react.memo_cache_sentinel`)?(te=(0,Q.jsx)(oe,{className:`size-4`,"aria-hidden":!0}),t[115]=te):te=t[115];let A=r.info.lastRun,j;t[116]!==n||t[117]!==r||t[118]!==a?(j=Ye(n,r,a),t[116]=n,t[117]=r,t[118]=a,t[119]=j):j=t[119];let M=n.state.lastRunStatus===`failed`||n.state.lastRunStatus===`timeout`?`danger`:`default`,P;t[120]!==r.info.lastRun||t[121]!==j||t[122]!==M?(P=(0,Q.jsx)(qt,{icon:te,label:A,value:j,valueTone:M}),t[120]=r.info.lastRun,t[121]=j,t[122]=M,t[123]=P):P=t[123];let F;t[124]!==n.state.consecutiveFailures||t[125]!==n.state.lastError||t[126]!==r.dashboard?(F=n.state.consecutiveFailures?(0,Q.jsxs)(`div`,{className:`rounded-lg bg-red-500/10 px-3 py-2 text-sm text-red-700 dark:text-red-300`,children:[r.dashboard.failures,`:`,n.state.consecutiveFailures,n.state.lastError?(0,Q.jsx)(`p`,{className:`mt-1 break-words text-xs`,children:n.state.lastError}):null]}):n.state.lastError?(0,Q.jsx)(`p`,{className:`break-words text-sm text-red-700 dark:text-red-300`,children:n.state.lastError}):null,t[124]=n.state.consecutiveFailures,t[125]=n.state.lastError,t[126]=r.dashboard,t[127]=F):F=t[127];let I;t[128]!==r.info.technicalDetails||t[129]!==_?(I=_.length>0?(0,Q.jsxs)(`details`,{className:`group border-t border-edge-subtle pt-3`,children:[(0,Q.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center justify-between gap-2 text-sm text-fg-muted outline-none hover:text-fg focus-visible:ring-2 focus-visible:ring-accent`,children:[(0,Q.jsx)(`span`,{children:r.info.technicalDetails}),(0,Q.jsx)(ee,{className:`size-4 transition-transform group-open:rotate-180`,"aria-hidden":!0})]}),(0,Q.jsx)(`div`,{className:`mt-3 grid gap-2`,children:_.map(Kt)})]}):null,t[128]=r.info.technicalDetails,t[129]=_,t[130]=I):I=t[130];let R;t[131]!==v||t[132]!==x||t[133]!==w||t[134]!==D||t[135]!==P||t[136]!==F||t[137]!==I||t[138]!==f||t[139]!==p||t[140]!==m?(R=(0,Q.jsxs)(`div`,{className:f,children:[p,m,v,x,w,D,P,F,I]}),t[131]=v,t[132]=x,t[133]=w,t[134]=D,t[135]=P,t[136]=F,t[137]=I,t[138]=f,t[139]=p,t[140]=m,t[141]=R):R=t[141];let B;return t[142]!==R||t[143]!==h||t[144]!==g?(B=(0,Q.jsxs)(`aside`,{className:h,children:[g,R]}),t[142]=R,t[143]=h,t[144]=g,t[145]=B):B=t[145],B}function Kt(e){return(0,Q.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,Q.jsx)(`span`,{className:`text-xs text-fg-subtle`,children:e.label}),(0,Q.jsx)(`span`,{className:`break-all font-mono text-xs text-fg-muted`,children:e.value})]},`${e.label}:${e.value}`)}function qt(e){let t=(0,ye.c)(19),{icon:n,label:r,value:i,description:a,descriptionTitle:o,valueTone:s}=e,c=s===void 0?`default`:s,l;t[0]===n?l=t[1]:(l=(0,Q.jsx)(`span`,{className:`mt-0.5 text-fg-subtle`,children:n}),t[0]=n,t[1]=l);let u;t[2]===r?u=t[3]:(u=(0,Q.jsx)(`div`,{className:`text-xs font-medium text-fg-muted`,children:r}),t[2]=r,t[3]=u);let d=c===`danger`?`text-red-700 dark:text-red-300`:`text-fg`,p;t[4]===d?p=t[5]:(p=f(`mt-1 text-sm font-medium leading-5`,d),t[4]=d,t[5]=p);let m;t[6]!==p||t[7]!==i?(m=(0,Q.jsx)(`div`,{className:p,children:i}),t[6]=p,t[7]=i,t[8]=m):m=t[8];let h;t[9]!==a||t[10]!==o?(h=a?(0,Q.jsx)(`div`,{className:`mt-1 text-xs leading-5 text-fg-subtle`,title:o,children:a}):null,t[9]=a,t[10]=o,t[11]=h):h=t[11];let g;t[12]!==u||t[13]!==m||t[14]!==h?(g=(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[u,m,h]}),t[12]=u,t[13]=m,t[14]=h,t[15]=g):g=t[15];let _;return t[16]!==l||t[17]!==g?(_=(0,Q.jsxs)(`div`,{className:`grid grid-cols-[1.25rem_1fr] gap-2.5`,children:[l,g]}),t[16]=l,t[17]=g,t[18]=_):_=t[18],_}function Jt(e){let t=(0,ye.c)(7),{label:n,value:r}=e,i;t[0]===n?i=t[1]:(i=(0,Q.jsx)(`span`,{children:n}),t[0]=n,t[1]=i);let a;t[2]===r?a=t[3]:(a=(0,Q.jsx)(`span`,{className:`min-w-0 truncate text-fg`,children:r}),t[2]=r,t[3]=a);let o;return t[4]!==i||t[5]!==a?(o=(0,Q.jsxs)(`div`,{className:`grid grid-cols-[5rem_1fr] gap-2`,children:[i,a]}),t[4]=i,t[5]=a,t[6]=o):o=t[6],o}function Yt(e){return e.endsWith(`.failed`)?`bg-red-500`:e.endsWith(`.completed`)?`bg-emerald-500`:e.endsWith(`.started`)?`bg-blue-500`:`bg-fg-muted`}function Xt(e){let t=(0,ye.c)(7),{label:n,value:r}=e,i;t[0]===n?i=t[1]:(i=(0,Q.jsx)(`div`,{className:`text-xs font-medium uppercase text-fg-muted`,children:n}),t[0]=n,t[1]=i);let a;t[2]===r?a=t[3]:(a=(0,Q.jsx)(`div`,{className:`mt-1 truncate text-sm text-fg`,children:r}),t[2]=r,t[3]=a);let o;return t[4]!==i||t[5]!==a?(o=(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[i,a]}),t[4]=i,t[5]=a,t[6]=o):o=t[6],o}function Zt(e){let t=(0,ye.c)(8),{className:n,icon:r,title:i}=e,a;t[0]===n?a=t[1]:(a=f(`flex min-h-48 flex-col items-center justify-center text-fg-muted`,n),t[0]=n,t[1]=a);let o;t[2]===i?o=t[3]:(o=(0,Q.jsx)(`div`,{className:`mt-2 text-sm`,children:i}),t[2]=i,t[3]=o);let s;return t[4]!==r||t[5]!==a||t[6]!==o?(s=(0,Q.jsxs)(`div`,{className:a,children:[r,o]}),t[4]=r,t[5]=a,t[6]=o,t[7]=s):s=t[7],s}function Qt(e){let t=(0,ye.c)(274),{form:n,labels:r,setForm:i,projects:a,workflowDefinitions:c,selectedWorkflow:l,workflowsLoading:u,browserAutomations:d,selectedBrowserAutomation:p,browserAutomationsLoading:h,agentOptions:g,agentsLoading:_,language:v,projectLocked:y}=e,b=y===void 0?!1:y,x=m(v).agentsSettings,S;t[0]===i?S=t[1]:(S=e=>i(t=>({...t,...e})),t[0]=i,t[1]=S);let C=S,w=ze(n.intervalValue,n.intervalUnit),T=Date.now(),E;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(E=[1,2,3],t[2]=E):E=t[2];let D;t[3]!==w||t[4]!==T||t[5]!==v?(D=E.map(e=>Ge(T+w*e,v,T)),t[3]=w,t[4]=T,t[5]=v,t[6]=D):D=t[6];let O=D,k,te;t[7]!==n.actionMode||t[8]!==n.workflowId||t[9]!==i||t[10]!==c?(k=()=>{if(n.actionMode!==`workflow`||n.workflowId.trim())return;let e=c[0]?.id;e&&i(t=>({...t,workflowId:e,workflowGoal:``,workflowInput:{goal:``,argValues:{},schemaInput:{},concurrency:``,maxSubagents:``},workflowInputValid:!0}))},te=[n.actionMode,n.workflowId,i,c],t[7]=n.actionMode,t[8]=n.workflowId,t[9]=i,t[10]=c,t[11]=k,t[12]=te):(k=t[11],te=t[12]),(0,J.useEffect)(k,te);let ne,A;t[13]!==d||t[14]!==n.actionMode||t[15]!==n.browserAutomationId||t[16]!==i?(ne=()=>{if(n.actionMode!==`browser_automation`||n.browserAutomationId.trim())return;let e=d[0];e&&i(t=>({...t,browserAutomationId:e.id,browserAutomationInputs:q(e)}))},A=[d,n.actionMode,n.browserAutomationId,i],t[13]=d,t[14]=n.actionMode,t[15]=n.browserAutomationId,t[16]=i,t[17]=ne,t[18]=A):(ne=t[17],A=t[18]),(0,J.useEffect)(ne,A);let j;t[19]===C?j=t[20]:(j=e=>C({name:e.target.value}),t[19]=C,t[20]=j);let M;t[21]!==n.name||t[22]!==j?(M=(0,Q.jsx)(`input`,{className:$,value:n.name,onChange:j}),t[21]=n.name,t[22]=j,t[23]=M):M=t[23];let N;t[24]!==r.form.name||t[25]!==M?(N=(0,Q.jsx)(nn,{label:r.form.name,children:M}),t[24]=r.form.name,t[25]=M,t[26]=N):N=t[26];let P;t[27]===C?P=t[28]:(P=e=>C({description:e.target.value}),t[27]=C,t[28]=P);let F;t[29]!==n.description||t[30]!==P?(F=(0,Q.jsx)(`input`,{className:$,value:n.description,onChange:P}),t[29]=n.description,t[30]=P,t[31]=F):F=t[31];let I;t[32]!==r.form.description||t[33]!==F?(I=(0,Q.jsx)(nn,{label:r.form.description,children:F}),t[32]=r.form.description,t[33]=F,t[34]=I):I=t[34];let L;t[35]!==n.projectId||t[36]!==r.form.noProject||t[37]!==r.form.project||t[38]!==b||t[39]!==a||t[40]!==C?(L=b?null:(0,Q.jsx)(nn,{label:r.form.project,children:(0,Q.jsxs)(o,{className:$,value:n.projectId,onChange:e=>C({projectId:e.target.value}),children:[(0,Q.jsx)(s,{value:``,children:r.form.noProject}),a.map(tn)]})}),t[35]=n.projectId,t[36]=r.form.noProject,t[37]=r.form.project,t[38]=b,t[39]=a,t[40]=C,t[41]=L):L=t[41];let R;t[42]===r.form.trigger?R=t[43]:(R=(0,Q.jsx)(rn,{title:r.form.trigger}),t[42]=r.form.trigger,t[43]=R);let z;t[44]===C?z=t[45]:(z=e=>C({triggerMode:e.target.value}),t[44]=C,t[45]=z);let B;t[46]===r.trigger.manual?B=t[47]:(B=(0,Q.jsx)(s,{value:`manual`,children:r.trigger.manual}),t[46]=r.trigger.manual,t[47]=B);let re;t[48]===r.trigger.once?re=t[49]:(re=(0,Q.jsx)(s,{value:`once`,children:r.trigger.once}),t[48]=r.trigger.once,t[49]=re);let ie;t[50]===r.trigger.daily?ie=t[51]:(ie=(0,Q.jsx)(s,{value:`daily`,children:r.trigger.daily}),t[50]=r.trigger.daily,t[51]=ie);let V;t[52]===r.trigger.weekly?V=t[53]:(V=(0,Q.jsx)(s,{value:`weekly`,children:r.trigger.weekly}),t[52]=r.trigger.weekly,t[53]=V);let ae;t[54]===r.trigger.interval?ae=t[55]:(ae=(0,Q.jsx)(s,{value:`interval`,children:r.trigger.interval}),t[54]=r.trigger.interval,t[55]=ae);let oe;t[56]===r.trigger.customCron?oe=t[57]:(oe=(0,Q.jsx)(s,{value:`cron`,children:r.trigger.customCron}),t[56]=r.trigger.customCron,t[57]=oe);let se;t[58]===r.trigger.webhook?se=t[59]:(se=(0,Q.jsx)(s,{value:`webhook`,children:r.trigger.webhook}),t[58]=r.trigger.webhook,t[59]=se);let le;t[60]===r.trigger.taskBlocked?le=t[61]:(le=(0,Q.jsx)(s,{value:`taskBlocked`,children:r.trigger.taskBlocked}),t[60]=r.trigger.taskBlocked,t[61]=le);let ue;t[62]===r.trigger.noteCreated?ue=t[63]:(ue=(0,Q.jsx)(s,{value:`noteCreated`,children:r.trigger.noteCreated}),t[62]=r.trigger.noteCreated,t[63]=ue);let H;t[64]===r.trigger.workflowFailed?H=t[65]:(H=(0,Q.jsx)(s,{value:`workflowFailed`,children:r.trigger.workflowFailed}),t[64]=r.trigger.workflowFailed,t[65]=H);let U;t[66]===r.trigger.sessionUpdated?U=t[67]:(U=(0,Q.jsx)(s,{value:`sessionUpdated`,children:r.trigger.sessionUpdated}),t[66]=r.trigger.sessionUpdated,t[67]=U);let W;t[68]===r.trigger.customEvent?W=t[69]:(W=(0,Q.jsx)(s,{value:`event`,children:r.trigger.customEvent}),t[68]=r.trigger.customEvent,t[69]=W);let G;t[70]!==n.triggerMode||t[71]!==z||t[72]!==B||t[73]!==re||t[74]!==ie||t[75]!==V||t[76]!==ae||t[77]!==oe||t[78]!==se||t[79]!==le||t[80]!==ue||t[81]!==H||t[82]!==U||t[83]!==W?(G=(0,Q.jsxs)(o,{className:$,value:n.triggerMode,onChange:z,children:[B,re,ie,V,ae,oe,se,le,ue,H,U,W]}),t[70]=n.triggerMode,t[71]=z,t[72]=B,t[73]=re,t[74]=ie,t[75]=V,t[76]=ae,t[77]=oe,t[78]=se,t[79]=le,t[80]=ue,t[81]=H,t[82]=U,t[83]=W,t[84]=G):G=t[84];let pe;t[85]!==n.onceAt||t[86]!==n.triggerMode||t[87]!==r.form.onceAt||t[88]!==C?(pe=n.triggerMode===`once`?(0,Q.jsx)(nn,{label:r.form.onceAt,children:(0,Q.jsx)(`input`,{className:$,type:`datetime-local`,value:n.onceAt,onChange:e=>C({onceAt:e.target.value})})}):null,t[85]=n.onceAt,t[86]=n.triggerMode,t[87]=r.form.onceAt,t[88]=C,t[89]=pe):pe=t[89];let me;t[90]!==n.time||t[91]!==n.triggerMode||t[92]!==n.weekday||t[93]!==r.form.day||t[94]!==r.form.time||t[95]!==r.weekdays||t[96]!==C?(me=n.triggerMode===`daily`||n.triggerMode===`weekly`?(0,Q.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[(0,Q.jsx)(nn,{label:r.form.time,children:(0,Q.jsx)(de,{value:n.time,onChange:e=>C({time:e}),ariaLabel:r.form.time})}),n.triggerMode===`weekly`?(0,Q.jsx)(nn,{label:r.form.day,children:(0,Q.jsxs)(o,{className:$,value:n.weekday,onChange:e=>C({weekday:e.target.value}),children:[(0,Q.jsx)(s,{value:`1`,children:r.weekdays.monday}),(0,Q.jsx)(s,{value:`2`,children:r.weekdays.tuesday}),(0,Q.jsx)(s,{value:`3`,children:r.weekdays.wednesday}),(0,Q.jsx)(s,{value:`4`,children:r.weekdays.thursday}),(0,Q.jsx)(s,{value:`5`,children:r.weekdays.friday}),(0,Q.jsx)(s,{value:`6`,children:r.weekdays.saturday}),(0,Q.jsx)(s,{value:`0`,children:r.weekdays.sunday})]})}):null]}):null,t[90]=n.time,t[91]=n.triggerMode,t[92]=n.weekday,t[93]=r.form.day,t[94]=r.form.time,t[95]=r.weekdays,t[96]=C,t[97]=me):me=t[97];let K=n.triggerMode===`interval`?(0,Q.jsxs)(`div`,{className:`grid gap-3 rounded-lg border border-edge-subtle bg-surface-base p-3`,children:[(0,Q.jsx)(nn,{label:r.form.intervalEvery,children:(0,Q.jsxs)(`div`,{className:`grid gap-2 sm:grid-cols-[minmax(0,1fr)_10rem]`,children:[(0,Q.jsx)(`input`,{className:$,type:`number`,min:6e4/ze(1,n.intervalUnit),step:`any`,inputMode:`decimal`,value:n.intervalValue,onChange:e=>C({intervalValue:e.target.value})}),(0,Q.jsxs)(o,{className:$,value:n.intervalUnit,onChange:e=>{let t=e.target.value;C({intervalValue:Be(n.intervalValue,n.intervalUnit,t),intervalUnit:t})},children:[(0,Q.jsx)(s,{value:`minute`,children:r.form.intervalUnits.minute}),(0,Q.jsx)(s,{value:`hour`,children:r.form.intervalUnits.hour}),(0,Q.jsx)(s,{value:`day`,children:r.form.intervalUnits.day}),(0,Q.jsx)(s,{value:`week`,children:r.form.intervalUnits.week})]})]})}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`div`,{className:`text-xs font-medium text-fg-muted`,children:r.form.commonIntervals}),(0,Q.jsx)(`div`,{className:`mt-2 flex flex-wrap gap-2`,children:Ze.map(e=>{let t=ze(e.value,e.unit),n=t===w;return(0,Q.jsx)(`button`,{type:`button`,"aria-pressed":n,className:f(`rounded-full border px-2.5 py-1 text-xs transition-colors`,n?`border-accent bg-accent/10 text-accent`:`border-edge-subtle text-fg-muted hover:border-edge hover:bg-surface-hover hover:text-fg`),onClick:()=>C({intervalValue:e.value,intervalUnit:e.unit}),children:Ve(t,v)},`${e.value}:${e.unit}`)})})]}),(0,Q.jsxs)(`div`,{className:`rounded-lg bg-surface-panel px-3 py-2.5`,children:[(0,Q.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:He(w,v)}),(0,Q.jsxs)(`div`,{className:`mt-1 text-xs leading-5 text-fg-muted`,children:[r.form.nextThreeRuns,`:`,O.join(v===`zh`?`、`:`, `)]}),(0,Q.jsx)(`div`,{className:`mt-1 text-xs leading-5 text-fg-subtle`,children:r.form.fixedIntervalHint})]})]}):null,ge;t[98]!==n.cronExpr||t[99]!==n.triggerMode||t[100]!==r.form.expression||t[101]!==C?(ge=n.triggerMode===`cron`?(0,Q.jsx)(nn,{label:r.form.expression,children:(0,Q.jsx)(`input`,{className:$,value:n.cronExpr,onChange:e=>C({cronExpr:e.target.value})})}):null,t[98]=n.cronExpr,t[99]=n.triggerMode,t[100]=r.form.expression,t[101]=C,t[102]=ge):ge=t[102];let _e;t[103]!==n.triggerMode||t[104]!==n.webhookSecretId||t[105]!==r.form.secretId||t[106]!==C?(_e=n.triggerMode===`webhook`?(0,Q.jsx)(nn,{label:r.form.secretId,children:(0,Q.jsx)(`input`,{className:$,value:n.webhookSecretId,onChange:e=>C({webhookSecretId:e.target.value})})}):null,t[103]=n.triggerMode,t[104]=n.webhookSecretId,t[105]=r.form.secretId,t[106]=C,t[107]=_e):_e=t[107];let be;t[108]!==n.eventPayloadMatch||t[109]!==n.eventSource||t[110]!==n.eventType||t[111]!==n.triggerMode||t[112]!==r.form.eventPayloadMatch||t[113]!==r.form.eventSource||t[114]!==r.form.eventType||t[115]!==r.form.invalidJsonObject||t[116]!==C?(be=n.triggerMode===`event`?(0,Q.jsxs)(`div`,{className:`grid gap-3 rounded-lg border border-edge-subtle bg-surface-base p-3`,children:[(0,Q.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[(0,Q.jsx)(nn,{label:r.form.eventType,children:(0,Q.jsx)(`input`,{className:$,value:n.eventType,onChange:e=>C({eventType:e.target.value})})}),(0,Q.jsx)(nn,{label:r.form.eventSource,children:(0,Q.jsx)(`input`,{className:$,value:n.eventSource,onChange:e=>C({eventSource:e.target.value})})})]}),(0,Q.jsxs)(nn,{label:r.form.eventPayloadMatch,children:[(0,Q.jsx)(`textarea`,{className:f($,`min-h-24 resize-y font-mono text-xs`),value:n.eventPayloadMatch,onChange:e=>C({eventPayloadMatch:e.target.value}),placeholder:`{
5
- "status": "blocked"
6
- }`}),it(n.eventPayloadMatch)?null:(0,Q.jsx)(`span`,{className:`text-xs text-red-700 dark:text-red-300`,children:r.form.invalidJsonObject})]})]}):null,t[108]=n.eventPayloadMatch,t[109]=n.eventSource,t[110]=n.eventType,t[111]=n.triggerMode,t[112]=r.form.eventPayloadMatch,t[113]=r.form.eventSource,t[114]=r.form.eventType,t[115]=r.form.invalidJsonObject,t[116]=C,t[117]=be):be=t[117];let xe;t[118]===r.form.action?xe=t[119]:(xe=(0,Q.jsx)(rn,{title:r.form.action}),t[118]=r.form.action,t[119]=xe);let Y;t[120]!==n.timeoutSeconds||t[121]!==n.workflowId||t[122]!==C||t[123]!==c?(Y=e=>{let t=e.target.value,r=Number.parseInt(n.timeoutSeconds,10);C({actionMode:t,...r===600||r===1800?{timeoutSeconds:t===`browser_automation`?`600`:`1800`}:{},...t===`browser_automation`?{safetyMode:`auto_apply`}:{},...t===`workflow`&&!n.workflowId.trim()&&c[0]?{workflowId:c[0].id,workflowGoal:``,workflowInput:{goal:``,argValues:{},schemaInput:{},concurrency:``,maxSubagents:``},workflowInputValid:!0}:{}})},t[120]=n.timeoutSeconds,t[121]=n.workflowId,t[122]=C,t[123]=c,t[124]=Y):Y=t[124];let Se;t[125]===r.action.runAgent?Se=t[126]:(Se=(0,Q.jsx)(s,{value:`agent`,children:r.action.runAgent}),t[125]=r.action.runAgent,t[126]=Se);let Ce;t[127]===r.action.runWorkflow?Ce=t[128]:(Ce=(0,Q.jsx)(s,{value:`workflow`,children:r.action.runWorkflow}),t[127]=r.action.runWorkflow,t[128]=Ce);let we=v===`zh`?`浏览器自动化`:`Browser automation`,Te;t[129]===we?Te=t[130]:(Te=(0,Q.jsx)(s,{value:`browser_automation`,children:we}),t[129]=we,t[130]=Te);let Ee;t[131]!==n.actionMode||t[132]!==Y||t[133]!==Se||t[134]!==Ce||t[135]!==Te?(Ee=(0,Q.jsxs)(o,{className:$,value:n.actionMode,onChange:Y,children:[Se,Ce,Te]}),t[131]=n.actionMode,t[132]=Y,t[133]=Se,t[134]=Ce,t[135]=Te,t[136]=Ee):Ee=t[136];let De=n.actionMode===`browser_automation`?null:(0,Q.jsx)(nn,{label:r.form.agent,children:(0,Q.jsxs)(o,{className:$,value:n.agentId,onChange:e=>C({agentId:e.target.value}),children:[(0,Q.jsx)(s,{value:``,children:_?r.form.loadingAgents:r.form.defaultAgent}),g.map(e=>(0,Q.jsx)(s,{value:e.id,children:ce(e,x)},e.id))]})}),Oe;t[137]!==d||t[138]!==h||t[139]!==n.actionMode||t[140]!==n.agentId||t[141]!==n.browserAutomationId||t[142]!==n.browserAutomationInputs||t[143]!==n.description||t[144]!==n.instruction||t[145]!==n.name||t[146]!==n.triggerMode||t[147]!==n.workflowId||t[148]!==n.workflowInput||t[149]!==r.form.instruction||t[150]!==r.form.loadingWorkflows||t[151]!==r.form.noWorkflows||t[152]!==r.form.triggeredRun||t[153]!==r.form.workflow||t[154]!==v||t[155]!==p||t[156]!==l||t[157]!==C||t[158]!==c||t[159]!==u?(Oe=n.actionMode===`agent`?(0,Q.jsxs)(nn,{label:r.form.instruction,children:[(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsx)(fe,{value:n.instruction,onApply:e=>C({instruction:e}),fieldId:`automation.instruction`,fieldLabel:r.form.instruction,scenario:`automation.instruction`,locale:v,context:{automationName:n.name,automationDescription:n.description,triggerMode:n.triggerMode,agentId:n.agentId},showLabel:!1})}),(0,Q.jsx)(`textarea`,{className:f($,`min-h-32 resize-y`),value:n.instruction,onChange:e=>C({instruction:e.target.value})})]}):n.actionMode===`workflow`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(nn,{label:r.form.workflow,children:(0,Q.jsxs)(o,{className:$,value:n.workflowId,onChange:e=>C({workflowId:e.target.value,workflowGoal:``,workflowInput:{goal:``,argValues:{},schemaInput:{},concurrency:``,maxSubagents:``},workflowInputValid:!0}),disabled:u||c.length===0,children:[u?(0,Q.jsx)(s,{value:``,children:r.form.loadingWorkflows}):null,!u&&c.length===0?(0,Q.jsx)(s,{value:``,children:r.form.noWorkflows}):null,c.map(en)]})}),l?(0,Q.jsx)(he,{definition:l,language:v,value:n.workflowInput,onChange:e=>C({workflowInput:e,workflowGoal:e.goal,workflowInputValid:!0}),mode:`automation`,badgeLabel:r.form.triggeredRun,onValidityChange:e=>C({workflowInputValid:e.valid}),aiAssist:{inputScenario:`automation.workflowInput`,goalScenario:`automation.workflowGoal`,context:{automationName:n.name,automationDescription:n.description,triggerMode:n.triggerMode,workflowId:l.id,workflowTitle:l.title,workflowDescription:l.description}},inputClassName:`rounded-lg`}):null]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(nn,{label:v===`zh`?`浏览器自动化`:`Browser automation`,children:(0,Q.jsxs)(o,{className:$,value:n.browserAutomationId,onChange:e=>{let t=d.find(t=>t.id===e.target.value);C({browserAutomationId:e.target.value,browserAutomationInputs:t?q(t):{}})},disabled:h||d.length===0,children:[d.length===0?(0,Q.jsx)(s,{value:``,children:v===`zh`?`没有已启用的浏览器自动化`:`No enabled browser automations`}):null,d.map($t)]})}),p&&Object.keys(p.inputs).length>0?(0,Q.jsx)(nn,{label:v===`zh`?`运行时填写`:`Run inputs`,children:(0,Q.jsx)(ve,{automation:p,values:n.browserAutomationInputs,language:v,onChange:e=>C({browserAutomationInputs:e})})}):null]}),t[137]=d,t[138]=h,t[139]=n.actionMode,t[140]=n.agentId,t[141]=n.browserAutomationId,t[142]=n.browserAutomationInputs,t[143]=n.description,t[144]=n.instruction,t[145]=n.name,t[146]=n.triggerMode,t[147]=n.workflowId,t[148]=n.workflowInput,t[149]=r.form.instruction,t[150]=r.form.loadingWorkflows,t[151]=r.form.noWorkflows,t[152]=r.form.triggeredRun,t[153]=r.form.workflow,t[154]=v,t[155]=p,t[156]=l,t[157]=C,t[158]=c,t[159]=u,t[160]=Oe):Oe=t[160];let X;t[161]===r.form.advancedDescription?X=t[162]:(X=(0,Q.jsx)(`span`,{className:`ml-2 text-xs font-normal text-fg-muted`,children:r.form.advancedDescription}),t[161]=r.form.advancedDescription,t[162]=X);let Z;t[163]!==r.form.advanced||t[164]!==X?(Z=(0,Q.jsxs)(`span`,{children:[r.form.advanced,X]}),t[163]=r.form.advanced,t[164]=X,t[165]=Z):Z=t[165];let ke;t[166]===Symbol.for(`react.memo_cache_sentinel`)?(ke=(0,Q.jsx)(ee,{className:`size-4 transition-transform group-open:rotate-180`}),t[166]=ke):ke=t[166];let Ae;t[167]===Z?Ae=t[168]:(Ae=(0,Q.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center justify-between gap-3 px-4 py-3 text-sm font-semibold text-fg outline-none focus-visible:ring-2 focus-visible:ring-accent`,children:[Z,ke]}),t[167]=Z,t[168]=Ae);let je;t[169]!==n.actionMode||t[170]!==n.safetyMode||t[171]!==r.form.safety||t[172]!==r.safety||t[173]!==C?(je=n.actionMode===`browser_automation`?null:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(rn,{title:r.form.safety}),(0,Q.jsxs)(nn,{label:r.form.safety,children:[(0,Q.jsxs)(o,{className:$,value:n.safetyMode,onChange:e=>{let t=e.target.value;C({safetyMode:t})},children:[(0,Q.jsx)(s,{value:`suggest_only`,children:r.safety.suggest_only}),(0,Q.jsx)(s,{value:`ask_before_apply`,children:r.safety.ask_before_apply}),(0,Q.jsx)(s,{value:`auto_apply`,children:r.safety.auto_apply})]}),(0,Q.jsx)(`p`,{className:`mt-1 text-xs leading-5 text-fg-muted`,children:n.safetyMode===`suggest_only`?r.safety.suggestOnlyDescription:n.safetyMode===`ask_before_apply`?r.safety.askBeforeApplyDescription:r.safety.autoApplyDescription})]})]}),t[169]=n.actionMode,t[170]=n.safetyMode,t[171]=r.form.safety,t[172]=r.safety,t[173]=C,t[174]=je):je=t[174];let Me;t[175]===r.form.results?Me=t[176]:(Me=(0,Q.jsx)(rn,{title:r.form.results}),t[175]=r.form.results,t[176]=Me);let Ne;t[177]===C?Ne=t[178]:(Ne=e=>C({conversationMode:e.target.value}),t[177]=C,t[178]=Ne);let Pe;t[179]===r.form.newConversation?Pe=t[180]:(Pe=(0,Q.jsx)(s,{value:`new_session`,children:r.form.newConversation}),t[179]=r.form.newConversation,t[180]=Pe);let Fe;t[181]===r.form.continuousConversation?Fe=t[182]:(Fe=(0,Q.jsx)(s,{value:`continuous`,children:r.form.continuousConversation}),t[181]=r.form.continuousConversation,t[182]=Fe);let Ie;t[183]!==n.conversationMode||t[184]!==Ne||t[185]!==Pe||t[186]!==Fe?(Ie=(0,Q.jsxs)(o,{className:$,value:n.conversationMode,onChange:Ne,children:[Pe,Fe]}),t[183]=n.conversationMode,t[184]=Ne,t[185]=Pe,t[186]=Fe,t[187]=Ie):Ie=t[187];let Le;t[188]!==r.form.conversation||t[189]!==Ie?(Le=(0,Q.jsx)(nn,{label:r.form.conversation,children:Ie}),t[188]=r.form.conversation,t[189]=Ie,t[190]=Le):Le=t[190];let Re;t[191]===C?Re=t[192]:(Re=e=>C({notificationPolicy:e.target.value}),t[191]=C,t[192]=Re);let Ue;t[193]===r.form.notifyAttention?Ue=t[194]:(Ue=(0,Q.jsx)(s,{value:`attention`,children:r.form.notifyAttention}),t[193]=r.form.notifyAttention,t[194]=Ue);let We;t[195]===r.form.notifyAll?We=t[196]:(We=(0,Q.jsx)(s,{value:`all`,children:r.form.notifyAll}),t[195]=r.form.notifyAll,t[196]=We);let Ke;t[197]===r.form.notifyNone?Ke=t[198]:(Ke=(0,Q.jsx)(s,{value:`none`,children:r.form.notifyNone}),t[197]=r.form.notifyNone,t[198]=Ke);let qe;t[199]!==n.notificationPolicy||t[200]!==Re||t[201]!==Ue||t[202]!==We||t[203]!==Ke?(qe=(0,Q.jsxs)(o,{className:$,value:n.notificationPolicy,onChange:Re,children:[Ue,We,Ke]}),t[199]=n.notificationPolicy,t[200]=Re,t[201]=Ue,t[202]=We,t[203]=Ke,t[204]=qe):qe=t[204];let Je;t[205]!==r.form.notifications||t[206]!==qe?(Je=(0,Q.jsx)(nn,{label:r.form.notifications,children:qe}),t[205]=r.form.notifications,t[206]=qe,t[207]=Je):Je=t[207];let Ye;t[208]!==n.completionWebhookUrl||t[209]!==n.safetyMode||t[210]!==r.form.completionWebhook||t[211]!==C?(Ye=n.safetyMode===`auto_apply`?(0,Q.jsx)(nn,{label:r.form.completionWebhook,children:(0,Q.jsx)(`input`,{className:$,value:n.completionWebhookUrl,onChange:e=>C({completionWebhookUrl:e.target.value})})}):null,t[208]=n.completionWebhookUrl,t[209]=n.safetyMode,t[210]=r.form.completionWebhook,t[211]=C,t[212]=Ye):Ye=t[212];let Xe;t[213]===r.form.reliability?Xe=t[214]:(Xe=(0,Q.jsx)(rn,{title:r.form.reliability}),t[213]=r.form.reliability,t[214]=Xe);let Qe;t[215]===C?Qe=t[216]:(Qe=e=>C({timeoutSeconds:e.target.value}),t[215]=C,t[216]=Qe);let $e;t[217]!==n.timeoutSeconds||t[218]!==Qe?($e=(0,Q.jsx)(`input`,{className:$,inputMode:`numeric`,value:n.timeoutSeconds,onChange:Qe}),t[217]=n.timeoutSeconds,t[218]=Qe,t[219]=$e):$e=t[219];let et;t[220]!==r.form.timeoutSeconds||t[221]!==$e?(et=(0,Q.jsx)(nn,{label:r.form.timeoutSeconds,children:$e}),t[220]=r.form.timeoutSeconds,t[221]=$e,t[222]=et):et=t[222];let tt;t[223]===C?tt=t[224]:(tt=e=>C({disableAfterFailures:e.target.value}),t[223]=C,t[224]=tt);let nt;t[225]!==n.disableAfterFailures||t[226]!==tt?(nt=(0,Q.jsx)(`input`,{className:$,inputMode:`numeric`,value:n.disableAfterFailures,onChange:tt}),t[225]=n.disableAfterFailures,t[226]=tt,t[227]=nt):nt=t[227];let rt;t[228]!==r.form.disableAfterFailures||t[229]!==nt?(rt=(0,Q.jsx)(nn,{label:r.form.disableAfterFailures,children:nt}),t[228]=r.form.disableAfterFailures,t[229]=nt,t[230]=rt):rt=t[230];let at;t[231]!==et||t[232]!==rt?(at=(0,Q.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[et,rt]}),t[231]=et,t[232]=rt,t[233]=at):at=t[233];let ot;t[234]===r.form.effectivePolicy?ot=t[235]:(ot=(0,Q.jsx)(`p`,{className:`text-xs font-medium text-fg`,children:r.form.effectivePolicy}),t[234]=r.form.effectivePolicy,t[235]=ot);let st=n.timeoutSeconds||`—`,ct;t[236]!==r.form.executionDeadline||t[237]!==st?(ct=(0,Q.jsxs)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:[r.form.executionDeadline,`: `,st,`s`]}),t[236]=r.form.executionDeadline,t[237]=st,t[238]=ct):ct=t[238];let lt;t[239]===r.form.downstreamTimeoutHint?lt=t[240]:(lt=(0,Q.jsx)(`p`,{className:`mt-0.5 text-xs leading-relaxed text-fg-subtle`,children:r.form.downstreamTimeoutHint}),t[239]=r.form.downstreamTimeoutHint,t[240]=lt);let ut;t[241]!==ot||t[242]!==ct||t[243]!==lt?(ut=(0,Q.jsxs)(`div`,{className:`rounded-lg border border-edge bg-surface-muted/40 px-3 py-2.5`,children:[ot,ct,lt]}),t[241]=ot,t[242]=ct,t[243]=lt,t[244]=ut):ut=t[244];let dt;t[245]!==je||t[246]!==Me||t[247]!==Le||t[248]!==Je||t[249]!==Ye||t[250]!==Xe||t[251]!==at||t[252]!==ut?(dt=(0,Q.jsxs)(`div`,{className:`grid gap-4 border-t border-edge-subtle p-4`,children:[je,Me,Le,Je,Ye,Xe,at,ut]}),t[245]=je,t[246]=Me,t[247]=Le,t[248]=Je,t[249]=Ye,t[250]=Xe,t[251]=at,t[252]=ut,t[253]=dt):dt=t[253];let ft;t[254]!==Ae||t[255]!==dt?(ft=(0,Q.jsxs)(`details`,{className:`group rounded-xl border border-edge-subtle bg-surface-base`,children:[Ae,dt]}),t[254]=Ae,t[255]=dt,t[256]=ft):ft=t[256];let pt;return t[257]!==N||t[258]!==I||t[259]!==L||t[260]!==R||t[261]!==G||t[262]!==pe||t[263]!==me||t[264]!==K||t[265]!==ge||t[266]!==_e||t[267]!==be||t[268]!==xe||t[269]!==Ee||t[270]!==De||t[271]!==Oe||t[272]!==ft?(pt=(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-5 py-4`,children:(0,Q.jsxs)(`div`,{className:`grid gap-4`,children:[N,I,L,R,G,pe,me,K,ge,_e,be,xe,Ee,De,Oe,ft]})}),t[257]=N,t[258]=I,t[259]=L,t[260]=R,t[261]=G,t[262]=pe,t[263]=me,t[264]=K,t[265]=ge,t[266]=_e,t[267]=be,t[268]=xe,t[269]=Ee,t[270]=De,t[271]=Oe,t[272]=ft,t[273]=pt):pt=t[273],pt}function $t(e){return(0,Q.jsx)(s,{value:e.id,children:e.name},e.id)}function en(e){return(0,Q.jsx)(s,{value:e.id,children:e.title||e.name},e.id)}function tn(e){return(0,Q.jsx)(s,{value:e.id,children:e.name},e.id)}var $=`min-h-11 w-full rounded-lg border border-edge bg-surface-base px-3 py-2 text-base sm:min-h-0 sm:text-sm text-fg outline-none focus:border-accent`;function nn(e){let t=(0,ye.c)(5),{label:n,children:r}=e,i;t[0]===n?i=t[1]:(i=(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:n}),t[0]=n,t[1]=i);let a;return t[2]!==r||t[3]!==i?(a=(0,Q.jsxs)(`div`,{className:`grid gap-1.5`,children:[i,r]}),t[2]=r,t[3]=i,t[4]=a):a=t[4],a}function rn(e){let t=(0,ye.c)(3),{title:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Q.jsx)(O,{className:`size-4 text-fg-muted`}),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 pt-2 text-sm font-semibold text-fg`,children:[r,n]}),t[1]=n,t[2]=i),i}export{jt as t};
@@ -1,3 +0,0 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{a as t,n,t as r}from"./vendor-react-BOUWij0V.js";import{d as i,h as a}from"./chunk-KS7C4IRE-Cq1tE_3b.js";import{t as o}from"./popover-select-DldSX8GX.js";import{t as s}from"./circle-check-C23XjkUj.js";import{t as c}from"./download-Dk-ZjtO6.js";import{t as l}from"./external-link-DjqjBmc3.js";import{t as u}from"./loader-circle-CifKLtgG.js";import{a as d,c as f,n as p,r as m}from"./locale-store-DLK05Y1a.js";import{t as h}from"./messages-C9h8SImu.js";import{i as g}from"./vendor-swr-BIWyz7Rc.js";import{t as _}from"./button-CGlRPNzi.js";import{n as v,r as y}from"./gateway-config-swr-D5AM8cyQ.js";import{t as b}from"./skeleton-BwbyijEw.js";import{$r as x,Gc as S,Ic as C,Ql as w,Qr as ee,Yl as T,Zr as E,_l as te,ac as ne,cu as D,ei as O,il as re,ni as k,oa as ie,pu as ae,sa as A,ti as j}from"./index-hlU8MUEz.js";import{n as oe,r as M}from"./settings-page-layout-X1x-2Cp9.js";import{n as se}from"./settings-loading-skeleton-CAmWMaOT.js";import{n as N,t as P}from"./use-autosave-DO50_g_S.js";import{t as ce}from"./settings-advanced-gate-DDALROy_.js";var F=n(),I=e(t(),1);function le(e){let[t,n]=(0,I.useState)(!1),[r,i]=(0,I.useState)(!1),[a,o]=(0,I.useState)(null),[s,c]=(0,I.useState)(null),l=(0,I.useRef)(null);return{running:t,cancelling:r,progress:a,error:s,install:(0,I.useCallback)(async()=>{if(l.current)return;let t=new AbortController;l.current=t,n(!0),o(null),c(null);try{let n=await O(o,t.signal);if(!n.ok){n.error!==`cancelled`&&c(n.message??n.error);return}e()}catch(e){t.signal.aborted||c(e instanceof Error?e.message:String(e))}finally{l.current===t&&(l.current=null),n(!1),i(!1)}},[e]),cancel:(0,I.useCallback)(async()=>{l.current&&(i(!0),await E().catch(()=>{}),l.current.abort())},[])}}var L=r(),R={extension:`Chrome extension`,playwright:`Playwright Chromium`,cdp:`CDP`,remote:`Remote browser`};function z(e){let{enabled:t,driverKind:n,autosaveStatus:r,zh:a}=e,o=i(),c=g(t?[`browser-control-status`,n]:null,ee,{revalidateOnFocus:!0,refreshInterval:n===`extension`?3e3:0}),[l,d]=(0,I.useState)(null),[f,p]=(0,I.useState)(null),[m,h]=(0,I.useState)(null),v=r===`dirty`||r===`saving`;(0,I.useEffect)(()=>{r===`saved`&&c.mutate()},[r,c.mutate]);let y=(0,I.useCallback)(async(e,t,n)=>{d(e),p(null),h(null);try{await t(),h(n),await c.mutate()}catch(e){p(e instanceof Error?e.message:String(e))}finally{d(null)}},[c.mutate]),x=le((0,I.useCallback)(()=>{h(a?`Chromium 已安装,可以开始连接测试。`:`Chromium is installed and ready to test.`),c.mutate()},[c.mutate,a])),w=c.data?.payload,T=w?.driverKind===n,E=t?v||!T?`syncing`:w?.state:`disabled`;return(0,L.jsxs)(`section`,{className:`rounded-xl bg-surface-hover/20 p-5`,children:[(0,L.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,L.jsxs)(`div`,{className:`min-w-0`,children:[(0,L.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,L.jsx)(E===`ready`?s:E===`syncing`?u:ne,{className:`size-4 shrink-0 ${E===`ready`?`text-success`:E===`syncing`?`animate-spin text-fg-muted`:E===`disabled`?`text-fg-subtle`:`text-warning`}`}),(0,L.jsx)(`h2`,{className:`text-sm font-semibold text-fg`,children:a?`浏览器就绪状态`:`Browser readiness`}),(0,L.jsx)(`span`,{className:`rounded-full px-2 py-0.5 text-xs ${E===`ready`?`bg-success-soft text-success`:E===`disabled`?`bg-surface-hover text-fg-muted`:`bg-warning-soft text-warning`}`,children:E===`ready`?a?`已就绪`:`Ready`:E===`disabled`?a?`未启用`:`Disabled`:E===`syncing`?a?`正在应用配置`:`Applying configuration`:a?`需要处理`:`Needs attention`})]}),(0,L.jsxs)(`p`,{className:`mt-2 text-sm text-fg-muted`,children:[R[n],w?.detail&&T?` · ${w.detail}`:``]})]}),(0,L.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,L.jsxs)(_,{variant:`ghost`,className:`h-9`,onClick:()=>void c.mutate(),disabled:c.isValidating,children:[(0,L.jsx)(C,{className:`size-3.5 ${c.isValidating?`animate-spin`:``}`}),a?`刷新`:`Refresh`]}),(0,L.jsxs)(_,{variant:`secondary`,className:`h-9`,disabled:!t||v||l!==null||x.running,onClick:()=>void y(`test`,k,a?`连接测试成功。`:`Connection test passed.`),children:[l===`test`?(0,L.jsx)(u,{className:`size-3.5 animate-spin`}):(0,L.jsx)(S,{className:`size-3.5`}),a?`测试连接`:`Test connection`]})]})]}),t&&c.isLoading?(0,L.jsxs)(`div`,{className:`mt-4 grid gap-2 sm:grid-cols-3`,children:[(0,L.jsx)(b,{className:`h-12`}),(0,L.jsx)(b,{className:`h-12`}),(0,L.jsx)(b,{className:`h-12`})]}):null,t&&c.error?(0,L.jsx)(H,{tone:`error`,children:c.error instanceof Error?c.error.message:String(c.error)}):null,f||x.error?(0,L.jsx)(H,{tone:`error`,children:f??x.error}):null,m?(0,L.jsx)(H,{tone:`success`,children:m}):null,t&&n===`extension`&&T?(0,L.jsx)(ue,{status:w?.driverStatus,zh:a,busy:l,run:y,onConnectRemote:()=>o(`/settings/devices?startDevicePairing=browser`)}):null,t&&n===`playwright`&&T?(0,L.jsx)(B,{status:w?.driverStatus,zh:a,installer:x}):null,t&&n===`cdp`?(0,L.jsx)(`p`,{className:`mt-4 rounded-lg bg-surface-subtle px-3 py-2 text-xs leading-5 text-fg-muted`,children:a?`连接测试会验证已保存的 CDP 地址,并复用浏览器中现有的标签页和登录状态。`:`The connection test verifies the saved CDP endpoint and reuses that browser’s existing tabs and signed-in state.`}):null,t&&n===`remote`?(0,L.jsx)(`p`,{className:`mt-4 rounded-lg bg-surface-subtle px-3 py-2 text-xs leading-5 text-fg-muted`,children:a?`连接测试会在服务商侧创建一个临时浏览器会话,并在测试结束后立即关闭。`:`The connection test creates a temporary provider session and closes it immediately after the test.`}):null]})}function ue(e){let t=(0,F.c)(70),{status:n,zh:r,busy:i,run:a,onConnectRemote:o}=e,s=n?.artifacts,d=r?`扩展文件`:`Extension files`,f=s?.installed===!0,p=s?.installed?r?`已安装`:`Installed`:r?`未安装或需更新`:`Install or update required`,m;t[0]!==d||t[1]!==f||t[2]!==p?(m=(0,L.jsx)(V,{label:d,ok:f,value:p}),t[0]=d,t[1]=f,t[2]=p,t[3]=m):m=t[3];let h=r?`本机自动发现`:`Local auto-discovery`,g=s?.nativeHost?.installed===!0,v=s?.nativeHost?.installed?r?`已就绪`:`Ready`:s?.nativeHost?.reason??(r?`需要修复`:`Repair required`),y;t[4]!==h||t[5]!==g||t[6]!==v?(y=(0,L.jsx)(V,{label:h,ok:g,value:v}),t[4]=h,t[5]=g,t[6]=v,t[7]=y):y=t[7];let b=r?`安全通道`:`Secure channel`,C=n?.transport===`gateway-realtime`,ee=n?.transport===`gateway-realtime`?`Gateway Realtime`:r?`不可用`:`Unavailable`,T;t[8]!==ee||t[9]!==b||t[10]!==C?(T=(0,L.jsx)(V,{label:b,ok:C,value:ee}),t[8]=ee,t[9]=b,t[10]=C,t[11]=T):T=t[11];let E=r?`Chrome 连接`:`Chrome connection`,te=n?.connected===!0,ne=n?.connected?r?`已连接`:`Connected`:n?.socketConnected?r?`需要重新加载扩展`:`Reload extension`:r?`等待扩展连接`:`Waiting for extension`,D;t[12]!==E||t[13]!==te||t[14]!==ne?(D=(0,L.jsx)(V,{label:E,ok:te,value:ne}),t[12]=E,t[13]=te,t[14]=ne,t[15]=D):D=t[15];let O;t[16]!==T||t[17]!==D||t[18]!==m||t[19]!==y?(O=(0,L.jsxs)(`div`,{className:`grid gap-2 sm:grid-cols-2 lg:grid-cols-4`,children:[m,y,T,D]}),t[16]=T,t[17]=D,t[18]=m,t[19]=y,t[20]=O):O=t[20];let re=s?.extensionDir??`Gateway Realtime`,k;t[21]===re?k=t[22]:(k=(0,L.jsx)(`p`,{className:`mt-3 break-all text-xs text-fg-subtle`,children:re}),t[21]=re,t[22]=k);let ie=s?.installed?`secondary`:`primary`,ae=i!==null,A;t[23]!==s?.installed||t[24]!==a||t[25]!==r?(A=()=>void a(`extension-install`,()=>x(!!s?.installed),r?`扩展文件已准备好。`:`Extension files are ready.`),t[23]=s?.installed,t[24]=a,t[25]=r,t[26]=A):A=t[26];let j;t[27]===i?j=t[28]:(j=i===`extension-install`?(0,L.jsx)(u,{className:`size-3.5 animate-spin`}):(0,L.jsx)(c,{className:`size-3.5`}),t[27]=i,t[28]=j);let oe=s?.installed?r?`刷新扩展文件`:`Refresh files`:r?`安装扩展文件`:`Install extension`,M;t[29]!==ie||t[30]!==ae||t[31]!==A||t[32]!==j||t[33]!==oe?(M=(0,L.jsxs)(_,{className:`h-9`,variant:ie,disabled:ae,onClick:A,children:[j,oe]}),t[29]=ie,t[30]=ae,t[31]=A,t[32]=j,t[33]=oe,t[34]=M):M=t[34];let se=!s?.installed||i!==null,N;t[35]!==a||t[36]!==r?(N=()=>void a(`extension-open`,fe,r?`已打开 Chrome 扩展页。`:`Chrome extensions opened.`),t[35]=a,t[36]=r,t[37]=N):N=t[37];let P;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,L.jsx)(l,{className:`size-3.5`}),t[38]=P):P=t[38];let ce=r?`打开扩展页`:`Open extensions`,I;t[39]!==se||t[40]!==N||t[41]!==ce?(I=(0,L.jsxs)(_,{className:`h-9`,variant:`secondary`,disabled:se,onClick:N,children:[P,ce]}),t[39]=se,t[40]=N,t[41]=ce,t[42]=I):I=t[42];let le=!s?.installed||i!==null,R;t[43]!==a||t[44]!==r?(R=()=>void a(`extension-folder`,de,r?`已打开扩展目录。`:`Extension folder opened.`),t[43]=a,t[44]=r,t[45]=R):R=t[45];let z;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,L.jsx)(w,{className:`size-3.5`}),t[46]=z):z=t[46];let ue=r?`打开扩展目录`:`Open folder`,B;t[47]!==le||t[48]!==R||t[49]!==ue?(B=(0,L.jsxs)(_,{className:`h-9`,variant:`ghost`,disabled:le,onClick:R,children:[z,ue]}),t[47]=le,t[48]=R,t[49]=ue,t[50]=B):B=t[50];let H=i!==null,U;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,L.jsx)(S,{className:`size-3.5`}),t[51]=U):U=t[51];let pe=r?`连接远程 Chrome`:`Connect remote Chrome`,W;t[52]!==o||t[53]!==H||t[54]!==pe?(W=(0,L.jsxs)(_,{className:`h-9`,variant:`secondary`,disabled:H,onClick:o,children:[U,pe]}),t[52]=o,t[53]=H,t[54]=pe,t[55]=W):W=t[55];let G;t[56]!==M||t[57]!==I||t[58]!==B||t[59]!==W?(G=(0,L.jsxs)(`div`,{className:`mt-3 flex flex-wrap gap-2`,children:[M,I,B,W]}),t[56]=M,t[57]=I,t[58]=B,t[59]=W,t[60]=G):G=t[60];let K;t[61]!==n?.connected||t[62]!==n?.socketConnected||t[63]!==r?(K=n?.connected?null:(0,L.jsx)(`p`,{className:`mt-3 text-xs leading-5 text-fg-muted`,children:n?.socketConnected?r?`扩展仍在运行旧协议。请打开 Chrome 扩展页,找到 xopc 并点击“重新加载”,然后刷新状态。`:`The extension is still running an older protocol. Open Chrome Extensions, find xopc, click Reload, then refresh status.`:r?`打开 xopc Chrome 扩展后,它会自动发现并安全连接本机 Gateway;只有连接另一台电脑时才需要一次性邀请和手动确认。`:`Open the xopc Chrome extension to discover and securely connect to a local Gateway automatically. A one-time invitation and explicit approval are only required for Chrome on another computer.`}),t[61]=n?.connected,t[62]=n?.socketConnected,t[63]=r,t[64]=K):K=t[64];let q;return t[65]!==O||t[66]!==k||t[67]!==G||t[68]!==K?(q=(0,L.jsxs)(`div`,{className:`mt-4 rounded-xl bg-surface-base/45 p-4`,children:[O,k,G,K]}),t[65]=O,t[66]=k,t[67]=G,t[68]=K,t[69]=q):q=t[69],q}function de(){return j(`folder`)}function fe(){return j(`chrome`)}function B(e){let t=(0,F.c)(28),{status:n,zh:r,installer:i}=e,a=n?.installed===!0,o=n?.installed?r?`已安装`:`Installed`:n?.reason??(r?`未安装`:`Not installed`),s;t[0]!==a||t[1]!==o?(s=(0,L.jsx)(V,{label:`Chromium`,ok:a,value:o}),t[0]=a,t[1]=o,t[2]=s):s=t[2];let l;t[3]===n?l=t[4]:(l=n?.executablePath?(0,L.jsx)(`p`,{className:`mt-2 break-all text-xs text-fg-subtle`,children:n.executablePath}):null,t[3]=n,t[4]=l);let d;t[5]===i.progress?d=t[6]:(d=i.progress?(0,L.jsxs)(`div`,{className:`mt-3`,children:[(0,L.jsxs)(`div`,{className:`flex justify-between text-xs text-fg-muted`,children:[(0,L.jsx)(`span`,{children:i.progress.message??i.progress.phase}),(0,L.jsx)(`span`,{children:i.progress.percent==null?``:`${Math.round(i.progress.percent)}%`})]}),(0,L.jsx)(`div`,{className:`mt-1 h-1.5 overflow-hidden rounded-full bg-surface-hover`,children:(0,L.jsx)(`div`,{className:`h-full rounded-full bg-accent transition-[width]`,style:{width:`${i.progress.percent??8}%`}})})]}):null,t[5]=i.progress,t[6]=d);let f=n?.installed?`secondary`:`primary`,p;t[7]===i?p=t[8]:(p=()=>void i.install(),t[7]=i,t[8]=p);let m;t[9]===i.running?m=t[10]:(m=i.running?(0,L.jsx)(u,{className:`size-3.5 animate-spin`}):(0,L.jsx)(c,{className:`size-3.5`}),t[9]=i.running,t[10]=m);let h=n?.installed?r?`重新安装 Chromium`:`Reinstall Chromium`:r?`安装 Chromium`:`Install Chromium`,g;t[11]!==i.running||t[12]!==f||t[13]!==p||t[14]!==m||t[15]!==h?(g=(0,L.jsxs)(_,{variant:f,className:`h-9`,disabled:i.running,onClick:p,children:[m,h]}),t[11]=i.running,t[12]=f,t[13]=p,t[14]=m,t[15]=h,t[16]=g):g=t[16];let v;t[17]!==i||t[18]!==r?(v=i.running?(0,L.jsx)(_,{variant:`ghost`,className:`h-9`,disabled:i.cancelling,onClick:()=>void i.cancel(),children:i.cancelling?r?`正在取消…`:`Cancelling…`:r?`取消`:`Cancel`}):null,t[17]=i,t[18]=r,t[19]=v):v=t[19];let y;t[20]!==v||t[21]!==g?(y=(0,L.jsxs)(`div`,{className:`mt-3 flex gap-2`,children:[g,v]}),t[20]=v,t[21]=g,t[22]=y):y=t[22];let b;return t[23]!==y||t[24]!==s||t[25]!==l||t[26]!==d?(b=(0,L.jsxs)(`div`,{className:`mt-4 rounded-xl bg-surface-base/45 p-4`,children:[s,l,d,y]}),t[23]=y,t[24]=s,t[25]=l,t[26]=d,t[27]=b):b=t[27],b}function V(e){let t=(0,F.c)(11),{label:n,ok:r,value:i}=e,a;t[0]===n?a=t[1]:(a=(0,L.jsx)(`p`,{className:`text-xs text-fg-subtle`,children:n}),t[0]=n,t[1]=a);let o=`mt-1 flex items-center gap-1.5 text-sm ${r?`text-success`:`text-fg-muted`}`,s=`size-1.5 rounded-full ${r?`bg-success`:`bg-warning`}`,c;t[2]===s?c=t[3]:(c=(0,L.jsx)(`span`,{className:s}),t[2]=s,t[3]=c);let l;t[4]!==o||t[5]!==c||t[6]!==i?(l=(0,L.jsxs)(`p`,{className:o,children:[c,i]}),t[4]=o,t[5]=c,t[6]=i,t[7]=l):l=t[7];let u;return t[8]!==a||t[9]!==l?(u=(0,L.jsxs)(`div`,{className:`rounded-lg bg-surface-subtle px-3 py-2`,children:[a,l]}),t[8]=a,t[9]=l,t[10]=u):u=t[10],u}function H(e){let t=(0,F.c)(4),{tone:n,children:r}=e,i=`mt-3 rounded-lg px-3 py-2 text-xs ${n===`success`?`bg-success-soft text-success`:`bg-danger-soft text-danger`}`,a=n===`error`?`alert`:`status`,o;return t[0]!==r||t[1]!==i||t[2]!==a?(o=(0,L.jsx)(`p`,{className:i,role:a,children:r}),t[0]=r,t[1]=i,t[2]=a,t[3]=o):o=t[3],o}function U(e){let t=(0,F.c)(36),{sectionId:n,vm:r,children:i}=e,a=p(pe),o;t[0]===a?o=t[1]:(o=h(a),t[0]=a,t[1]=o);let s=o,c=s.agentSettings,l=s.settingsSections[n]??n;if(!r.hasToken){let e;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,L.jsx)(ae,{className:`mt-0.5 size-5 shrink-0 text-fg-subtle`,strokeWidth:1.75}),t[2]=e):e=t[2];let n;t[3]===l?n=t[4]:(n=(0,L.jsx)(`h1`,{className:`text-base font-semibold text-fg`,children:l}),t[3]=l,t[4]=n);let r;t[5]===c.needToken?r=t[6]:(r=(0,L.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:c.needToken}),t[5]=c.needToken,t[6]=r);let i;return t[7]!==n||t[8]!==r?(i=(0,L.jsx)(M,{gap:`gap-3`,padding:`px-3 py-10 sm:px-5 xl:px-6`,children:(0,L.jsxs)(`div`,{className:`flex items-start gap-3 rounded-2xl bg-surface-base p-6`,children:[e,(0,L.jsxs)(`div`,{children:[n,r]})]})}),t[7]=n,t[8]=r,t[9]=i):i=t[9],i}if(r.loading){let e;return t[10]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,L.jsx)(M,{gap:`gap-6`,padding:`px-3 py-8 sm:px-5 xl:px-6`,children:(0,L.jsx)(se,{sections:1})}),t[10]=e):e=t[10],e}if(!r.form){let e=r.error??r.fetchError??c.loadError,n;t[11]===e?n=t[12]:(n=(0,L.jsx)(`p`,{className:`text-sm text-fg-muted`,children:e}),t[11]=e,t[12]=n);let i;t[13]===r?i=t[14]:(i=()=>void r.mutate(),t[13]=r,t[14]=i);let a;t[15]!==s.logs.refresh||t[16]!==i?(a=(0,L.jsx)(_,{type:`button`,variant:`secondary`,onClick:i,children:s.logs.refresh}),t[15]=s.logs.refresh,t[16]=i,t[17]=a):a=t[17];let o;return t[18]!==n||t[19]!==a?(o=(0,L.jsxs)(M,{gap:`gap-3`,padding:`px-3 py-10 sm:px-5 xl:px-6`,children:[n,a]}),t[18]=n,t[19]=a,t[20]=o):o=t[20],o}let u;t[21]!==r.autosaveStatus||t[22]!==r.error?(u=(0,L.jsx)(N,{status:r.autosaveStatus,error:r.error}),t[21]=r.autosaveStatus,t[22]=r.error,t[23]=u):u=t[23];let d;t[24]!==l||t[25]!==u?(d=(0,L.jsx)(oe,{title:l,actions:u}),t[24]=l,t[25]=u,t[26]=d):d=t[26];let f;t[27]===r.error?f=t[28]:(f=r.error?(0,L.jsx)(`div`,{className:`rounded-lg bg-red-50 px-3 py-2 text-sm text-red-700 dark:bg-red-950/50 dark:text-red-400`,role:`alert`,children:r.error}):null,t[27]=r.error,t[28]=f);let m;t[29]===i?m=t[30]:(m=(0,L.jsx)(`div`,{className:`flex min-w-0 flex-col gap-5 pb-8`,children:i}),t[29]=i,t[30]=m);let g;return t[31]!==d||t[32]!==f||t[33]!==m||t[34]!==r.onBlurCapture?(g=(0,L.jsxs)(M,{gap:`gap-6`,onBlurCapture:r.onBlurCapture,children:[d,f,m]}),t[31]=d,t[32]=f,t[33]=m,t[34]=r.onBlurCapture,t[35]=g):g=t[35],g}function pe(e){return e.language}var W={enabled:!0,driverKind:`extension`,headless:!1,executablePath:``,cdpEndpoint:`http://127.0.0.1:9222`,remoteProvider:`browserbase`,remoteApiKey:``,remoteProjectId:``,remoteRegion:``,maxNodes:180,maxCharacters:12e3,visualFallback:!0,actionTimeoutMs:3e4,sessionTimeoutMs:9e5,maxSequenceLength:5,allowedPrivateHosts:``,crossDomainNavigation:`ask`,uploads:`ask`,consequentialActions:`ask`};function G(e){let t=J(J(e).browser),n=J(t.driver),r=J(t.observation),i=J(t.limits),a=J(t.security),o=n.kind;return{...W,enabled:t.enabled!==!1,driverKind:o===`playwright`||o===`cdp`||o===`remote`?o:`extension`,headless:n.headless===!0,executablePath:Y(n.executablePath,``),cdpEndpoint:Y(n.endpoint,W.cdpEndpoint),remoteProvider:n.provider===`browser-use`?`browser-use`:`browserbase`,remoteApiKey:Y(n.apiKey,``),remoteProjectId:Y(n.projectId,``),remoteRegion:Y(n.region,``),maxNodes:X(r.maxNodes,W.maxNodes),maxCharacters:X(r.maxCharacters,W.maxCharacters),visualFallback:r.visualFallback!==!1,actionTimeoutMs:X(i.actionTimeoutMs,W.actionTimeoutMs),sessionTimeoutMs:X(i.sessionTimeoutMs,W.sessionTimeoutMs),maxSequenceLength:X(i.maxSequenceLength,W.maxSequenceLength),allowedPrivateHosts:Array.isArray(a.allowedPrivateHosts)?a.allowedPrivateHosts.filter(e=>typeof e==`string`).join(`
2
- `):``,crossDomainNavigation:he(a.crossDomainNavigation),uploads:he(a.uploads),consequentialActions:he(a.consequentialActions)}}function K(e){let t=e.driverKind===`extension`?{kind:`extension`}:e.driverKind===`playwright`?{kind:`playwright`,headless:e.headless,...e.executablePath.trim()?{executablePath:e.executablePath.trim()}:{}}:e.driverKind===`cdp`?{kind:`cdp`,endpoint:e.cdpEndpoint.trim()}:{kind:`remote`,provider:e.remoteProvider,...e.remoteApiKey.trim()?{apiKey:e.remoteApiKey.trim()}:{},...e.remoteProjectId.trim()?{projectId:e.remoteProjectId.trim()}:{},...e.remoteRegion.trim()?{region:e.remoteRegion.trim()}:{}};return{enabled:e.enabled,driver:t,observation:{maxNodes:e.maxNodes,maxCharacters:e.maxCharacters,visualFallback:e.visualFallback},limits:{actionTimeoutMs:e.actionTimeoutMs,sessionTimeoutMs:e.sessionTimeoutMs,maxSequenceLength:e.maxSequenceLength},security:{privateNetworks:`deny`,allowedPrivateHosts:e.allowedPrivateHosts.split(`
3
- `).map(e=>e.trim()).filter(Boolean),crossDomainNavigation:e.crossDomainNavigation,uploads:e.uploads,consequentialActions:e.consequentialActions}}}function q(e){if(e.driverKind===`cdp`)try{let t=new URL(e.cdpEndpoint);if(t.protocol!==`http:`&&t.protocol!==`https:`&&t.protocol!==`ws:`&&t.protocol!==`wss:`)return`CDP endpoint must use http, https, ws, or wss.`}catch{return`Enter a valid CDP endpoint URL.`}return!Number.isInteger(e.maxNodes)||e.maxNodes<20||e.maxNodes>500?`Max nodes must be between 20 and 500.`:!Number.isInteger(e.maxCharacters)||e.maxCharacters<1e3||e.maxCharacters>5e4?`Max characters must be between 1,000 and 50,000.`:!Number.isInteger(e.actionTimeoutMs)||e.actionTimeoutMs<1e3||e.actionTimeoutMs>12e4?`Action timeout must be between 1,000 and 120,000 ms.`:!Number.isInteger(e.sessionTimeoutMs)||e.sessionTimeoutMs<6e4||e.sessionTimeoutMs>36e5?`Session timeout must be between 60,000 and 3,600,000 ms.`:!Number.isInteger(e.maxSequenceLength)||e.maxSequenceLength<1||e.maxSequenceLength>10?`Sequence length must be between 1 and 10.`:null}async function me(e){await d(m(`/api/config`),{method:`PATCH`,body:JSON.stringify({browser:K(e)})}),v()}function J(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:{}}function Y(e,t){return typeof e==`string`?e:t}function X(e,t){return typeof e==`number`&&Number.isFinite(e)?e:t}function he(e){return e===`allow`||e===`deny`?e:`ask`}var ge=ie();function _e(e){let t=!!f(e=>e.conversationId),[n,r]=(0,I.useReducer)(ge,{form:null,baseline:null}),i=n.form,a=n.baseline,o=(0,I.useRef)(!1),s=(0,I.useRef)(i);s.current=i;let c=(0,I.useRef)(null),{data:l,error:u,isLoading:d,mutate:p}=y(t);A({enabled:t,parsed:(0,I.useMemo)(()=>l?.payload?.config===void 0?null:G(l.payload.config),[l]),dirty:o.current,trackedParsedRef:c,dispatch:r,onResetDirty:()=>{o.current=!1}});let m=!!(t&&d&&l===void 0&&!u),h=u instanceof Error?u.message:u?String(u):null,g=(0,I.useMemo)(()=>!i||!a?!1:JSON.stringify(i)!==JSON.stringify(a),[i,a]),_=(0,I.useCallback)(e=>{o.current=!0,r({type:`patch`,patch:e})},[]),v=P({value:i,dirty:g,onSave:(0,I.useCallback)(async t=>{try{await me(t),r({type:`saved`,value:t}),o.current=!!(s.current&&JSON.stringify(s.current)!==JSON.stringify(t))}catch(t){throw Error(t instanceof Error?t.message:e.saveError)}},[e.saveError]),validate:q});return{hasToken:t,loading:m,fetchError:h,form:i,update:_,autosaveStatus:v.status,error:v.error,onBlurCapture:v.onBlurCapture,mutate:p}}var ve=[`extension`,`playwright`,`cdp`,`remote`];function ye(){let e=(0,F.c)(29),t=p(be),n;e[0]===t?n=e[1]:(n=h(t),e[0]=t,e[1]=n);let r=_e(n.agentSettings),i=r.form,s=t===`zh`,[c]=a(),l=(0,I.useRef)(!1),u;e[2]!==i||e[3]!==c||e[4]!==r?(u=()=>{if(!i||l.current)return;l.current=!0;let e=c.get(`driver`);ve.includes(e)&&e!==i.driverKind&&r.update({driverKind:e})},e[2]=i,e[3]=c,e[4]=r,e[5]=u):u=e[5];let d;e[6]!==i||e[7]!==c||e[8]!==r.update?(d=[i,c,r.update],e[6]=i,e[7]=c,e[8]=r.update,e[9]=d):d=e[9],(0,I.useEffect)(u,d);let f=s?`Chrome 扩展(推荐)`:`Chrome extension (recommended)`,m;e[10]===f?m=e[11]:(m={value:`extension`,label:f},e[10]=f,e[11]=m);let g;e[12]===Symbol.for(`react.memo_cache_sentinel`)?(g={value:`playwright`,label:`Playwright Chromium`},e[12]=g):g=e[12];let _=s?`CDP 已有浏览器`:`Existing browser over CDP`,v;e[13]===_?v=e[14]:(v={value:`cdp`,label:_},e[13]=_,e[14]=v);let y=s?`远程浏览器`:`Remote browser`,b;e[15]===y?b=e[16]:(b={value:`remote`,label:y},e[15]=y,e[16]=b);let x;e[17]!==m||e[18]!==v||e[19]!==b?(x=[m,g,v,b],e[17]=m,e[18]=v,e[19]=b,e[20]=x):x=e[20];let S=x,C;e[21]!==S||e[22]!==i||e[23]!==r||e[24]!==s?(C=i?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(z,{enabled:i.enabled,driverKind:i.driverKind,autosaveStatus:r.autosaveStatus,zh:s}),(0,L.jsxs)(Se,{title:s?`运行方式`:`Connection`,icon:(0,L.jsx)(re,{className:`size-4`}),children:[(0,L.jsx)(Ce,{label:s?`启用浏览器控制`:`Enable browser control`,checked:i.enabled,onChange:e=>r.update({enabled:e})}),(0,L.jsx)(Z,{label:s?`浏览器连接`:`Browser connection`,children:(0,L.jsx)(o,{value:i.driverKind,options:S,placeholder:s?`选择连接方式`:`Choose a connection`,allowEmpty:!1,onChange:e=>r.update({driverKind:e})})}),(0,L.jsx)(xe,{kind:i.driverKind,zh:s}),i.driverKind===`playwright`?(0,L.jsxs)(`div`,{className:`space-y-4 rounded-lg bg-surface-subtle p-4`,children:[(0,L.jsx)(Ce,{label:s?`无头模式`:`Headless mode`,description:s?`后台运行,不显示浏览器窗口。关闭后可观察智能体的操作过程。`:`Run in the background without a visible window. Turn off to watch the agent work.`,checked:i.headless,onChange:e=>r.update({headless:e})}),(0,L.jsx)(Q,{label:s?`Chromium 可执行文件(可选)`:`Chromium executable (optional)`,description:s?`留空时使用由 xopc 安装的 Chromium。`:`Leave empty to use Chromium installed by xopc.`,value:i.executablePath,onChange:e=>r.update({executablePath:e})})]}):null,i.driverKind===`cdp`?(0,L.jsx)(`div`,{className:`rounded-lg bg-surface-subtle p-4`,children:(0,L.jsx)(Q,{label:`CDP endpoint`,description:s?`例如 http://127.0.0.1:9222。Chrome 需要开启 remote debugging。`:`For example http://127.0.0.1:9222. Chrome must be started with remote debugging enabled.`,value:i.cdpEndpoint,onChange:e=>r.update({cdpEndpoint:e})})}):null,i.driverKind===`remote`?(0,L.jsxs)(`div`,{className:`space-y-4 rounded-lg bg-surface-subtle p-4`,children:[(0,L.jsx)(Z,{label:s?`服务商`:`Provider`,children:(0,L.jsx)(o,{value:i.remoteProvider,options:[{value:`browserbase`,label:`Browserbase`},{value:`browser-use`,label:`Browser Use`}],placeholder:s?`选择服务商`:`Choose a provider`,allowEmpty:!1,onChange:e=>r.update({remoteProvider:e})})}),(0,L.jsx)(Q,{label:`API key`,type:`password`,autoComplete:`off`,value:i.remoteApiKey,onChange:e=>r.update({remoteApiKey:e})}),(0,L.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,L.jsx)(Q,{label:`Project ID`,value:i.remoteProjectId,onChange:e=>r.update({remoteProjectId:e})}),(0,L.jsx)(Q,{label:`Region`,value:i.remoteRegion,onChange:e=>r.update({remoteRegion:e})})]})]}):null]}),(0,L.jsx)(ce,{children:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(Se,{title:s?`页面理解`:`Page understanding`,icon:(0,L.jsx)(D,{className:`size-4`}),children:[(0,L.jsx)(Ce,{label:s?`需要时附加截图`:`Attach screenshots when needed`,checked:i.visualFallback,onChange:e=>r.update({visualFallback:e})}),(0,L.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,L.jsx)($,{label:s?`语义节点上限`:`Semantic node limit`,description:`20–500`,min:20,max:500,value:i.maxNodes,onChange:e=>r.update({maxNodes:e})}),(0,L.jsx)($,{label:s?`文本字符上限`:`Text character limit`,description:`1,000–50,000`,min:1e3,max:5e4,step:1e3,value:i.maxCharacters,onChange:e=>r.update({maxCharacters:e})})]})]}),(0,L.jsx)(Se,{title:s?`执行限制`:`Execution limits`,icon:(0,L.jsx)(T,{className:`size-4`}),children:(0,L.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-3`,children:[(0,L.jsx)($,{label:s?`操作超时(毫秒)`:`Action timeout (ms)`,min:1e3,max:12e4,step:1e3,value:i.actionTimeoutMs,onChange:e=>r.update({actionTimeoutMs:e})}),(0,L.jsx)($,{label:s?`会话超时(毫秒)`:`Session timeout (ms)`,min:6e4,max:36e5,step:6e4,value:i.sessionTimeoutMs,onChange:e=>r.update({sessionTimeoutMs:e})}),(0,L.jsx)($,{label:s?`批量步骤上限`:`Sequence step limit`,min:1,max:10,value:i.maxSequenceLength,onChange:e=>r.update({maxSequenceLength:e})})]})}),(0,L.jsxs)(Se,{title:s?`安全与审批`:`Safety and approvals`,icon:(0,L.jsx)(te,{className:`size-4`}),children:[(0,L.jsx)(Q,{label:s?`允许访问的私网主机`:`Allowed private hosts`,description:s?`每行一个主机名或 IP,不支持通配符。`:`One hostname or IP per line. Wildcards are not supported.`,multiline:!0,value:i.allowedPrivateHosts,onChange:e=>r.update({allowedPrivateHosts:e})}),(0,L.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-3`,children:[(0,L.jsx)(we,{zh:s,label:s?`跨域导航`:`Cross-domain navigation`,value:i.crossDomainNavigation,onChange:e=>r.update({crossDomainNavigation:e})}),(0,L.jsx)(we,{zh:s,label:s?`高影响动作`:`Consequential actions`,value:i.consequentialActions,onChange:e=>r.update({consequentialActions:e})}),(0,L.jsx)(we,{zh:s,label:s?`文件上传`:`File uploads`,value:i.uploads,onChange:e=>r.update({uploads:e})})]})]})]})})]}):null,e[21]=S,e[22]=i,e[23]=r,e[24]=s,e[25]=C):C=e[25];let w;return e[26]!==C||e[27]!==r?(w=(0,L.jsx)(U,{sectionId:`agent-browser`,vm:r,children:C}),e[26]=C,e[27]=r,e[28]=w):w=e[28],w}function be(e){return e.language}function xe(e){let t=(0,F.c)(7),{kind:n,zh:r}=e,i=r?`直接操作你正在使用的 Chrome,保留登录状态和现有标签页;最适合日常协作。`:`Operate your current Chrome with its signed-in state and existing tabs; best for daily collaboration.`,a=r?`由 xopc 启动独立 Chromium,环境隔离、自动化稳定,适合无人值守任务。`:`Let xopc launch an isolated Chromium; stable for unattended automation.`,o=r?`连接已开启远程调试的 Chrome 或 Chromium,适合自定义浏览器启动方式。`:`Connect to Chrome or Chromium already running with remote debugging.`,s=r?`使用 Browserbase 或 Browser Use 的云端浏览器,适合服务器环境和长任务。`:`Use a Browserbase or Browser Use cloud browser for servers and long-running tasks.`,c;t[0]!==i||t[1]!==a||t[2]!==o||t[3]!==s?(c={extension:i,playwright:a,cdp:o,remote:s},t[0]=i,t[1]=a,t[2]=o,t[3]=s,t[4]=c):c=t[4];let l=c[n],u;return t[5]===l?u=t[6]:(u=(0,L.jsx)(`p`,{className:`rounded-lg bg-surface-subtle px-3 py-2 text-xs leading-5 text-fg-muted`,children:l}),t[5]=l,t[6]=u),u}function Se(e){let t=(0,F.c)(17),{title:n,description:r,icon:i,children:a}=e,o;t[0]===i?o=t[1]:(o=(0,L.jsx)(`span`,{className:`mt-0.5 text-fg-subtle`,children:i}),t[0]=i,t[1]=o);let s;t[2]===n?s=t[3]:(s=(0,L.jsx)(`h2`,{className:`text-sm font-semibold text-fg`,children:n}),t[2]=n,t[3]=s);let c;t[4]===r?c=t[5]:(c=r?(0,L.jsx)(`p`,{className:`mt-1 text-xs leading-5 text-fg-muted`,children:r}):null,t[4]=r,t[5]=c);let l;t[6]!==s||t[7]!==c?(l=(0,L.jsxs)(`div`,{children:[s,c]}),t[6]=s,t[7]=c,t[8]=l):l=t[8];let u;t[9]!==o||t[10]!==l?(u=(0,L.jsxs)(`div`,{className:`mb-4 flex items-start gap-2`,children:[o,l]}),t[9]=o,t[10]=l,t[11]=u):u=t[11];let d;t[12]===a?d=t[13]:(d=(0,L.jsx)(`div`,{className:`space-y-4`,children:a}),t[12]=a,t[13]=d);let f;return t[14]!==u||t[15]!==d?(f=(0,L.jsxs)(`section`,{className:`rounded-xl bg-surface-hover/20 p-5`,children:[u,d]}),t[14]=u,t[15]=d,t[16]=f):f=t[16],f}function Z(e){let t=(0,F.c)(8),{label:n,description:r,children:i}=e,a;t[0]===n?a=t[1]:(a=(0,L.jsx)(`span`,{className:`mb-1.5 block font-medium`,children:n}),t[0]=n,t[1]=a);let o;t[2]===r?o=t[3]:(o=r?(0,L.jsx)(`span`,{className:`mt-1.5 block text-xs leading-5 text-fg-subtle`,children:r}):null,t[2]=r,t[3]=o);let s;return t[4]!==i||t[5]!==a||t[6]!==o?(s=(0,L.jsxs)(`label`,{className:`block text-sm text-fg`,children:[a,i,o]}),t[4]=i,t[5]=a,t[6]=o,t[7]=s):s=t[7],s}function Q(e){let t=(0,F.c)(10),{label:n,description:r,value:i,onChange:a,type:o,multiline:s,autoComplete:c}=e,l=o===void 0?`text`:o,u=s===void 0?!1:s,d;t[0]!==c||t[1]!==u||t[2]!==a||t[3]!==l||t[4]!==i?(d=u?(0,L.jsx)(`textarea`,{rows:3,value:i,onChange:e=>a(e.target.value),className:`w-full rounded-lg border border-edge bg-surface-subtle px-3 py-2 text-sm text-fg outline-none focus:border-accent`}):(0,L.jsx)(`input`,{type:l,autoComplete:c,value:i,onChange:e=>a(e.target.value),className:`w-full rounded-lg border border-edge bg-surface-subtle px-3 py-2 text-sm text-fg outline-none focus:border-accent`}),t[0]=c,t[1]=u,t[2]=a,t[3]=l,t[4]=i,t[5]=d):d=t[5];let f;return t[6]!==r||t[7]!==n||t[8]!==d?(f=(0,L.jsx)(Z,{label:n,description:r,children:d}),t[6]=r,t[7]=n,t[8]=d,t[9]=f):f=t[9],f}function $(e){let t=(0,F.c)(12),{label:n,description:r,value:i,onChange:a,min:o,max:s,step:c}=e,l=c===void 0?1:c,u;t[0]===a?u=t[1]:(u=e=>{let t=Number(e.target.value);Number.isFinite(t)&&a(t)},t[0]=a,t[1]=u);let d;t[2]!==s||t[3]!==o||t[4]!==l||t[5]!==u||t[6]!==i?(d=(0,L.jsx)(`input`,{type:`number`,min:o,max:s,step:l,value:i,onChange:u,className:`h-10 w-full rounded-lg border border-edge bg-surface-subtle px-3 text-sm text-fg outline-none focus:border-accent`}),t[2]=s,t[3]=o,t[4]=l,t[5]=u,t[6]=i,t[7]=d):d=t[7];let f;return t[8]!==r||t[9]!==n||t[10]!==d?(f=(0,L.jsx)(Z,{label:n,description:r,children:d}),t[8]=r,t[9]=n,t[10]=d,t[11]=f):f=t[11],f}function Ce(e){let t=(0,F.c)(15),{label:n,description:r,checked:i,onChange:a}=e,o;t[0]===a?o=t[1]:(o=e=>a(e.target.checked),t[0]=a,t[1]=o);let s;t[2]!==i||t[3]!==o?(s=(0,L.jsx)(`input`,{type:`checkbox`,checked:i,onChange:o,className:`mt-0.5 size-4 accent-accent`}),t[2]=i,t[3]=o,t[4]=s):s=t[4];let c;t[5]===n?c=t[6]:(c=(0,L.jsx)(`span`,{className:`block font-medium`,children:n}),t[5]=n,t[6]=c);let l;t[7]===r?l=t[8]:(l=r?(0,L.jsx)(`span`,{className:`mt-1 block text-xs leading-5 text-fg-subtle`,children:r}):null,t[7]=r,t[8]=l);let u;t[9]!==c||t[10]!==l?(u=(0,L.jsxs)(`span`,{children:[c,l]}),t[9]=c,t[10]=l,t[11]=u):u=t[11];let d;return t[12]!==s||t[13]!==u?(d=(0,L.jsxs)(`label`,{className:`flex items-start gap-3 text-sm text-fg`,children:[s,u]}),t[12]=s,t[13]=u,t[14]=d):d=t[14],d}function we(e){let t=(0,F.c)(20),{zh:n,label:r,value:i,onChange:a}=e,s=n?`每次询问`:`Ask each time`,c;t[0]===s?c=t[1]:(c={value:`ask`,label:s},t[0]=s,t[1]=c);let l=n?`允许`:`Allow`,u;t[2]===l?u=t[3]:(u={value:`allow`,label:l},t[2]=l,t[3]=u);let d=n?`拒绝`:`Deny`,f;t[4]===d?f=t[5]:(f={value:`deny`,label:d},t[4]=d,t[5]=f);let p;t[6]!==c||t[7]!==u||t[8]!==f?(p=[c,u,f],t[6]=c,t[7]=u,t[8]=f,t[9]=p):p=t[9];let m=p,h=n?`选择策略`:`Choose a policy`,g;t[10]===a?g=t[11]:(g=e=>a(e),t[10]=a,t[11]=g);let _;t[12]!==m||t[13]!==h||t[14]!==g||t[15]!==i?(_=(0,L.jsx)(o,{value:i,options:m,placeholder:h,allowEmpty:!1,onChange:g}),t[12]=m,t[13]=h,t[14]=g,t[15]=i,t[16]=_):_=t[16];let v;return t[17]!==r||t[18]!==_?(v=(0,L.jsx)(Z,{label:r,children:_}),t[17]=r,t[18]=_,t[19]=v):v=t[19],v}export{ye as AgentBrowserSettingsPage};
@@ -1 +0,0 @@
1
- import"./rolldown-runtime-aKtaBQYM.js";import{a as e,n as t,t as n}from"./vendor-react-BOUWij0V.js";import{t as r}from"./cn-JdwAhgNB.js";import{t as i}from"./dist-CxGUk8J-.js";var a=t();e();var o=n(),s={primary:`bg-accent text-white shadow-none sm:shadow-surface hover:bg-accent-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-base`,secondary:`bg-surface-panel text-fg border border-edge shadow-none sm:shadow-surface hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel dark:border-edge`,ghost:`text-fg-muted hover:bg-surface-hover hover:text-fg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel`,segmented:``};function c(e){let t=(0,a.c)(16),n,c,l,u,d,f;t[0]===e?(n=t[1],c=t[2],l=t[3],u=t[4],d=t[5],f=t[6]):({className:n,variant:u,asChild:d,type:f,ref:l,...c}=e,t[0]=e,t[1]=n,t[2]=c,t[3]=l,t[4]=u,t[5]=d,t[6]=f);let p=u===void 0?`secondary`:u,m=d===void 0?!1:d,h=f===void 0?`button`:f,g=m?i:`button`,_=m?void 0:h,v=s[p],y;t[7]!==n||t[8]!==v?(y=r(`touch-target inline-flex items-center justify-center gap-2 rounded-xl px-3 py-2 text-sm font-medium`,`transition-colors duration-150 ease-out transition-transform`,`active:scale-[0.98] motion-reduce:transition-none motion-reduce:active:scale-100`,`disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50`,v,n),t[7]=n,t[8]=v,t[9]=y):y=t[9];let b;return t[10]!==g||t[11]!==c||t[12]!==l||t[13]!==_||t[14]!==y?(b=(0,o.jsx)(g,{ref:l,type:_,className:y,...c}),t[10]=g,t[11]=c,t[12]=l,t[13]=_,t[14]=y,t[15]=b):b=t[15],b}export{c as t};