botmux 3.5.2 → 3.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (458) hide show
  1. package/README.en.md +56 -396
  2. package/README.md +55 -396
  3. package/dist/.runtime-build-id +1 -0
  4. package/dist/adapters/cli/claude-code.d.ts +6 -0
  5. package/dist/adapters/cli/claude-code.d.ts.map +1 -1
  6. package/dist/adapters/cli/claude-code.js +197 -11
  7. package/dist/adapters/cli/claude-code.js.map +1 -1
  8. package/dist/adapters/cli/coco.js +4 -4
  9. package/dist/adapters/cli/coco.js.map +1 -1
  10. package/dist/adapters/cli/codex-app.d.ts.map +1 -1
  11. package/dist/adapters/cli/codex-app.js +9 -6
  12. package/dist/adapters/cli/codex-app.js.map +1 -1
  13. package/dist/adapters/cli/codex.js +5 -5
  14. package/dist/adapters/cli/codex.js.map +1 -1
  15. package/dist/adapters/cli/fs-policy.d.ts.map +1 -1
  16. package/dist/adapters/cli/fs-policy.js +5 -7
  17. package/dist/adapters/cli/fs-policy.js.map +1 -1
  18. package/dist/adapters/cli/grok.d.ts +2 -1
  19. package/dist/adapters/cli/grok.d.ts.map +1 -1
  20. package/dist/adapters/cli/grok.js +2 -1
  21. package/dist/adapters/cli/grok.js.map +1 -1
  22. package/dist/adapters/cli/hermes.d.ts.map +1 -1
  23. package/dist/adapters/cli/hermes.js +8 -4
  24. package/dist/adapters/cli/hermes.js.map +1 -1
  25. package/dist/adapters/cli/mtr.d.ts.map +1 -1
  26. package/dist/adapters/cli/mtr.js +3 -2
  27. package/dist/adapters/cli/mtr.js.map +1 -1
  28. package/dist/adapters/cli/opencode.d.ts.map +1 -1
  29. package/dist/adapters/cli/opencode.js +5 -4
  30. package/dist/adapters/cli/opencode.js.map +1 -1
  31. package/dist/adapters/cli/relay.js +2 -2
  32. package/dist/adapters/cli/relay.js.map +1 -1
  33. package/dist/adapters/cli/runner-input.d.ts +2 -2
  34. package/dist/adapters/cli/runner-input.d.ts.map +1 -1
  35. package/dist/adapters/cli/runner-input.js +9 -6
  36. package/dist/adapters/cli/runner-input.js.map +1 -1
  37. package/dist/adapters/cli/seed.d.ts.map +1 -1
  38. package/dist/adapters/cli/seed.js +2 -1
  39. package/dist/adapters/cli/seed.js.map +1 -1
  40. package/dist/adapters/cli/traex.d.ts.map +1 -1
  41. package/dist/adapters/cli/traex.js +3 -2
  42. package/dist/adapters/cli/traex.js.map +1 -1
  43. package/dist/adapters/cli/types.d.ts +25 -18
  44. package/dist/adapters/cli/types.d.ts.map +1 -1
  45. package/dist/bot-registry.d.ts +28 -0
  46. package/dist/bot-registry.d.ts.map +1 -1
  47. package/dist/bot-registry.js +75 -0
  48. package/dist/bot-registry.js.map +1 -1
  49. package/dist/cli.d.ts.map +1 -1
  50. package/dist/cli.js +272 -86
  51. package/dist/cli.js.map +1 -1
  52. package/dist/codex-app-runner.js +85 -192
  53. package/dist/codex-app-runner.js.map +1 -1
  54. package/dist/config.d.ts +0 -16
  55. package/dist/config.d.ts.map +1 -1
  56. package/dist/config.js +0 -30
  57. package/dist/config.js.map +1 -1
  58. package/dist/core/ask-broker.d.ts +12 -0
  59. package/dist/core/ask-broker.d.ts.map +1 -1
  60. package/dist/core/ask-broker.js +41 -0
  61. package/dist/core/ask-broker.js.map +1 -1
  62. package/dist/core/bot-turn-mutation-gate.d.ts +24 -0
  63. package/dist/core/bot-turn-mutation-gate.d.ts.map +1 -0
  64. package/dist/core/bot-turn-mutation-gate.js +369 -0
  65. package/dist/core/bot-turn-mutation-gate.js.map +1 -0
  66. package/dist/core/command-handler.d.ts +5 -0
  67. package/dist/core/command-handler.d.ts.map +1 -1
  68. package/dist/core/command-handler.js +38 -16
  69. package/dist/core/command-handler.js.map +1 -1
  70. package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
  71. package/dist/core/dashboard-ipc-server.js +330 -57
  72. package/dist/core/dashboard-ipc-server.js.map +1 -1
  73. package/dist/core/dashboard-rows.d.ts +8 -0
  74. package/dist/core/dashboard-rows.d.ts.map +1 -1
  75. package/dist/core/dashboard-rows.js.map +1 -1
  76. package/dist/core/host-overload-alert.d.ts +157 -0
  77. package/dist/core/host-overload-alert.d.ts.map +1 -0
  78. package/dist/core/host-overload-alert.js +251 -0
  79. package/dist/core/host-overload-alert.js.map +1 -0
  80. package/dist/core/passthrough-commands.d.ts +8 -0
  81. package/dist/core/passthrough-commands.d.ts.map +1 -1
  82. package/dist/core/passthrough-commands.js +19 -0
  83. package/dist/core/passthrough-commands.js.map +1 -1
  84. package/dist/core/restart-coordinator.d.ts +28 -0
  85. package/dist/core/restart-coordinator.d.ts.map +1 -0
  86. package/dist/core/restart-coordinator.js +82 -0
  87. package/dist/core/restart-coordinator.js.map +1 -0
  88. package/dist/core/restart-followup-policy.d.ts +112 -0
  89. package/dist/core/restart-followup-policy.d.ts.map +1 -0
  90. package/dist/core/restart-followup-policy.js +49 -0
  91. package/dist/core/restart-followup-policy.js.map +1 -0
  92. package/dist/core/role-library.d.ts +1 -1
  93. package/dist/core/role-library.js +1 -1
  94. package/dist/core/session-cwd.d.ts.map +1 -1
  95. package/dist/core/session-cwd.js +8 -0
  96. package/dist/core/session-cwd.js.map +1 -1
  97. package/dist/core/session-discovery.d.ts +14 -0
  98. package/dist/core/session-discovery.d.ts.map +1 -1
  99. package/dist/core/session-discovery.js +25 -0
  100. package/dist/core/session-discovery.js.map +1 -1
  101. package/dist/core/session-liveness.d.ts +15 -0
  102. package/dist/core/session-liveness.d.ts.map +1 -0
  103. package/dist/core/session-liveness.js +76 -0
  104. package/dist/core/session-liveness.js.map +1 -0
  105. package/dist/core/session-row-enrichment.d.ts +15 -0
  106. package/dist/core/session-row-enrichment.d.ts.map +1 -0
  107. package/dist/core/session-row-enrichment.js +93 -0
  108. package/dist/core/session-row-enrichment.js.map +1 -0
  109. package/dist/core/slash-inject.js +1 -1
  110. package/dist/core/slash-inject.js.map +1 -1
  111. package/dist/core/trigger-final-suppression.d.ts +24 -0
  112. package/dist/core/trigger-final-suppression.d.ts.map +1 -0
  113. package/dist/core/trigger-final-suppression.js +97 -0
  114. package/dist/core/trigger-final-suppression.js.map +1 -0
  115. package/dist/core/trigger-session.d.ts.map +1 -1
  116. package/dist/core/trigger-session.js +64 -4
  117. package/dist/core/trigger-session.js.map +1 -1
  118. package/dist/core/types.d.ts +6 -0
  119. package/dist/core/types.d.ts.map +1 -1
  120. package/dist/core/types.js.map +1 -1
  121. package/dist/core/worker-pool.d.ts +20 -0
  122. package/dist/core/worker-pool.d.ts.map +1 -1
  123. package/dist/core/worker-pool.js +283 -32
  124. package/dist/core/worker-pool.js.map +1 -1
  125. package/dist/daemon.d.ts +5 -1
  126. package/dist/daemon.d.ts.map +1 -1
  127. package/dist/daemon.js +520 -35
  128. package/dist/daemon.js.map +1 -1
  129. package/dist/dashboard/aggregator.d.ts +1 -0
  130. package/dist/dashboard/aggregator.d.ts.map +1 -1
  131. package/dist/dashboard/aggregator.js +34 -6
  132. package/dist/dashboard/aggregator.js.map +1 -1
  133. package/dist/dashboard/bot-payload.d.ts +3 -0
  134. package/dist/dashboard/bot-payload.d.ts.map +1 -1
  135. package/dist/dashboard/bot-payload.js +3 -0
  136. package/dist/dashboard/bot-payload.js.map +1 -1
  137. package/dist/dashboard/compat.d.ts +102 -2
  138. package/dist/dashboard/compat.d.ts.map +1 -1
  139. package/dist/dashboard/compat.js +78 -14
  140. package/dist/dashboard/compat.js.map +1 -1
  141. package/dist/dashboard/connector-api.d.ts.map +1 -1
  142. package/dist/dashboard/connector-api.js +1 -0
  143. package/dist/dashboard/connector-api.js.map +1 -1
  144. package/dist/dashboard/desktop-asks.d.ts +21 -0
  145. package/dist/dashboard/desktop-asks.d.ts.map +1 -0
  146. package/dist/dashboard/desktop-asks.js +49 -0
  147. package/dist/dashboard/desktop-asks.js.map +1 -0
  148. package/dist/dashboard/public-redact.d.ts +7 -0
  149. package/dist/dashboard/public-redact.d.ts.map +1 -1
  150. package/dist/dashboard/public-redact.js +35 -3
  151. package/dist/dashboard/public-redact.js.map +1 -1
  152. package/dist/dashboard/session-presentation.d.ts +16 -0
  153. package/dist/dashboard/session-presentation.d.ts.map +1 -0
  154. package/dist/dashboard/session-presentation.js +62 -0
  155. package/dist/dashboard/session-presentation.js.map +1 -0
  156. package/dist/dashboard/settings-write-applier.d.ts +2 -1
  157. package/dist/dashboard/settings-write-applier.d.ts.map +1 -1
  158. package/dist/dashboard/settings-write-applier.js +19 -1
  159. package/dist/dashboard/settings-write-applier.js.map +1 -1
  160. package/dist/dashboard/trigger-api.d.ts.map +1 -1
  161. package/dist/dashboard/trigger-api.js +19 -1
  162. package/dist/dashboard/trigger-api.js.map +1 -1
  163. package/dist/dashboard/vc-consumer-profiles-api.d.ts +7 -2
  164. package/dist/dashboard/vc-consumer-profiles-api.d.ts.map +1 -1
  165. package/dist/dashboard/vc-consumer-profiles-api.js +13 -0
  166. package/dist/dashboard/vc-consumer-profiles-api.js.map +1 -1
  167. package/dist/dashboard/web/app.d.ts.map +1 -1
  168. package/dist/dashboard/web/app.js +18 -5
  169. package/dist/dashboard/web/app.js.map +1 -1
  170. package/dist/dashboard/web/bot-defaults-page.d.ts +1 -1
  171. package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
  172. package/dist/dashboard/web/bot-defaults-page.js +97 -35
  173. package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
  174. package/dist/dashboard/web/bot-defaults.d.ts +3 -0
  175. package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
  176. package/dist/dashboard/web/bot-defaults.js.map +1 -1
  177. package/dist/dashboard/web/client-shell.d.ts +29 -0
  178. package/dist/dashboard/web/client-shell.d.ts.map +1 -0
  179. package/dist/dashboard/web/client-shell.js +89 -0
  180. package/dist/dashboard/web/client-shell.js.map +1 -0
  181. package/dist/dashboard/web/connectors-page.d.ts.map +1 -1
  182. package/dist/dashboard/web/connectors-page.js +5 -1
  183. package/dist/dashboard/web/connectors-page.js.map +1 -1
  184. package/dist/dashboard/web/i18n.d.ts.map +1 -1
  185. package/dist/dashboard/web/i18n.js +100 -8
  186. package/dist/dashboard/web/i18n.js.map +1 -1
  187. package/dist/dashboard/web/preferences.d.ts +7 -0
  188. package/dist/dashboard/web/preferences.d.ts.map +1 -1
  189. package/dist/dashboard/web/preferences.js +32 -0
  190. package/dist/dashboard/web/preferences.js.map +1 -1
  191. package/dist/dashboard/web/sessions-kanban.d.ts +1 -1
  192. package/dist/dashboard/web/sessions-kanban.d.ts.map +1 -1
  193. package/dist/dashboard/web/sessions-kanban.js +1 -1
  194. package/dist/dashboard/web/sessions-kanban.js.map +1 -1
  195. package/dist/dashboard/web/sessions-page.d.ts.map +1 -1
  196. package/dist/dashboard/web/sessions-page.js +77 -23
  197. package/dist/dashboard/web/sessions-page.js.map +1 -1
  198. package/dist/dashboard/web/sessions.d.ts +4 -0
  199. package/dist/dashboard/web/sessions.d.ts.map +1 -1
  200. package/dist/dashboard/web/sessions.js +14 -1
  201. package/dist/dashboard/web/sessions.js.map +1 -1
  202. package/dist/dashboard/web/settings-page.d.ts +6 -0
  203. package/dist/dashboard/web/settings-page.d.ts.map +1 -1
  204. package/dist/dashboard/web/settings-page.js +55 -30
  205. package/dist/dashboard/web/settings-page.js.map +1 -1
  206. package/dist/dashboard/web/store.d.ts +1 -2
  207. package/dist/dashboard/web/store.d.ts.map +1 -1
  208. package/dist/dashboard/web/store.js +69 -20
  209. package/dist/dashboard/web/store.js.map +1 -1
  210. package/dist/dashboard/web/vc-consumer-profiles-section.d.ts.map +1 -1
  211. package/dist/dashboard/web/vc-consumer-profiles-section.js +128 -42
  212. package/dist/dashboard/web/vc-consumer-profiles-section.js.map +1 -1
  213. package/dist/dashboard/webhook-routes.d.ts.map +1 -1
  214. package/dist/dashboard/webhook-routes.js +9 -2
  215. package/dist/dashboard/webhook-routes.js.map +1 -1
  216. package/dist/dashboard-web/app.js +1 -1
  217. package/dist/dashboard-web/chunks/bot-defaults-page-VQMPUJ4Y.js +10 -0
  218. package/dist/dashboard-web/chunks/chunk-AGCPF6MT.js +1 -0
  219. package/dist/dashboard-web/chunks/{chunk-KPQAUX7V.js → chunk-JMRGZQDB.js} +1 -1
  220. package/dist/dashboard-web/chunks/{chunk-R7IAKAYX.js → chunk-NP4JUBGS.js} +1 -1
  221. package/dist/dashboard-web/chunks/{chunk-NRL6CVAS.js → chunk-P327LXOT.js} +1 -1
  222. package/dist/dashboard-web/chunks/{chunk-X2L65IOM.js → chunk-SNKATZWK.js} +15 -15
  223. package/dist/dashboard-web/chunks/connectors-page-DOY4J3ZL.js +1 -0
  224. package/dist/dashboard-web/chunks/{groups-page-6DKXBYOM.js → groups-page-74TS2DIH.js} +1 -1
  225. package/dist/dashboard-web/chunks/{insights-page-NWARTJ6J.js → insights-page-AYCO65JC.js} +1 -1
  226. package/dist/dashboard-web/chunks/{monitor-room-AGX3XRJX.js → monitor-room-YKYLTSAN.js} +1 -1
  227. package/dist/dashboard-web/chunks/{monitoring-page-GGGIWN4C.js → monitoring-page-QBIUNRBR.js} +1 -1
  228. package/dist/dashboard-web/chunks/{office-page-6SIVKSK3.js → office-page-4PH2A26P.js} +1 -1
  229. package/dist/dashboard-web/chunks/overview-page-H73D5UT4.js +1 -0
  230. package/dist/dashboard-web/chunks/{roles-page-WE2YB7KN.js → roles-page-U4BTOQ7F.js} +1 -1
  231. package/dist/dashboard-web/chunks/{schedules-page-TB3I24XN.js → schedules-page-RHRHX7R7.js} +1 -1
  232. package/dist/dashboard-web/chunks/sessions-page-VSC6AM5G.js +2 -0
  233. package/dist/dashboard-web/chunks/settings-page-LF3RKM5P.js +2 -0
  234. package/dist/dashboard-web/chunks/{skills-page-3QAT2IWD.js → skills-page-SYOIGGXH.js} +1 -1
  235. package/dist/dashboard-web/chunks/{team-federation-page-K4VVAVAK.js → team-federation-page-RMBLASTW.js} +1 -1
  236. package/dist/dashboard-web/chunks/{v3-page-V6IOJR2B.js → v3-page-XJXKKJRN.js} +1 -1
  237. package/dist/dashboard-web/chunks/{whiteboards-page-V6CGKRNX.js → whiteboards-page-K3YVSTHJ.js} +1 -1
  238. package/dist/dashboard-web/style.css +551 -0
  239. package/dist/dashboard.js +153 -9
  240. package/dist/dashboard.js.map +1 -1
  241. package/dist/global-config.d.ts +11 -0
  242. package/dist/global-config.d.ts.map +1 -1
  243. package/dist/global-config.js +23 -0
  244. package/dist/global-config.js.map +1 -1
  245. package/dist/i18n/en.d.ts.map +1 -1
  246. package/dist/i18n/en.js +5 -0
  247. package/dist/i18n/en.js.map +1 -1
  248. package/dist/i18n/zh.d.ts.map +1 -1
  249. package/dist/i18n/zh.js +5 -0
  250. package/dist/i18n/zh.js.map +1 -1
  251. package/dist/im/lark/card-builder.d.ts +1 -1
  252. package/dist/im/lark/card-builder.js +1 -1
  253. package/dist/im/lark/card-handler.d.ts +10 -0
  254. package/dist/im/lark/card-handler.d.ts.map +1 -1
  255. package/dist/im/lark/card-handler.js +163 -17
  256. package/dist/im/lark/card-handler.js.map +1 -1
  257. package/dist/im/lark/client.d.ts +11 -0
  258. package/dist/im/lark/client.d.ts.map +1 -1
  259. package/dist/im/lark/client.js +47 -18
  260. package/dist/im/lark/client.js.map +1 -1
  261. package/dist/im/lark/event-dispatcher.d.ts +13 -0
  262. package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
  263. package/dist/im/lark/event-dispatcher.js +20 -0
  264. package/dist/im/lark/event-dispatcher.js.map +1 -1
  265. package/dist/im/lark/identity-cache.d.ts +25 -1
  266. package/dist/im/lark/identity-cache.d.ts.map +1 -1
  267. package/dist/im/lark/identity-cache.js +47 -1
  268. package/dist/im/lark/identity-cache.js.map +1 -1
  269. package/dist/im/lark/overload-nonce.d.ts +19 -0
  270. package/dist/im/lark/overload-nonce.d.ts.map +1 -0
  271. package/dist/im/lark/overload-nonce.js +72 -0
  272. package/dist/im/lark/overload-nonce.js.map +1 -0
  273. package/dist/im/lark/v3-progress-card.d.ts.map +1 -1
  274. package/dist/im/lark/v3-progress-card.js +5 -0
  275. package/dist/im/lark/v3-progress-card.js.map +1 -1
  276. package/dist/services/async-trigger-state.d.ts +82 -0
  277. package/dist/services/async-trigger-state.d.ts.map +1 -0
  278. package/dist/services/async-trigger-state.js +95 -0
  279. package/dist/services/async-trigger-state.js.map +1 -0
  280. package/dist/services/async-trigger-store.d.ts +28 -0
  281. package/dist/services/async-trigger-store.d.ts.map +1 -0
  282. package/dist/services/async-trigger-store.js +120 -0
  283. package/dist/services/async-trigger-store.js.map +1 -0
  284. package/dist/services/bot-config-store.d.ts.map +1 -1
  285. package/dist/services/bot-config-store.js +34 -2
  286. package/dist/services/bot-config-store.js.map +1 -1
  287. package/dist/services/bridge-fallback-gate.d.ts +32 -0
  288. package/dist/services/bridge-fallback-gate.d.ts.map +1 -1
  289. package/dist/services/bridge-fallback-gate.js +39 -0
  290. package/dist/services/bridge-fallback-gate.js.map +1 -1
  291. package/dist/services/bridge-turn-queue.d.ts.map +1 -1
  292. package/dist/services/bridge-turn-queue.js +15 -1
  293. package/dist/services/bridge-turn-queue.js.map +1 -1
  294. package/dist/services/card-prefs-store.d.ts +4 -0
  295. package/dist/services/card-prefs-store.d.ts.map +1 -1
  296. package/dist/services/card-prefs-store.js +8 -0
  297. package/dist/services/card-prefs-store.js.map +1 -1
  298. package/dist/services/claude-transcript.d.ts +23 -0
  299. package/dist/services/claude-transcript.d.ts.map +1 -1
  300. package/dist/services/claude-transcript.js +33 -0
  301. package/dist/services/claude-transcript.js.map +1 -1
  302. package/dist/services/codex-app-runner-protocol.d.ts +61 -0
  303. package/dist/services/codex-app-runner-protocol.d.ts.map +1 -0
  304. package/dist/services/codex-app-runner-protocol.js +170 -0
  305. package/dist/services/codex-app-runner-protocol.js.map +1 -0
  306. package/dist/services/codex-app-turn-controller.d.ts +72 -0
  307. package/dist/services/codex-app-turn-controller.d.ts.map +1 -0
  308. package/dist/services/codex-app-turn-controller.js +524 -0
  309. package/dist/services/codex-app-turn-controller.js.map +1 -0
  310. package/dist/services/codex-runner-freshness.d.ts +39 -0
  311. package/dist/services/codex-runner-freshness.d.ts.map +1 -0
  312. package/dist/services/codex-runner-freshness.js +78 -0
  313. package/dist/services/codex-runner-freshness.js.map +1 -0
  314. package/dist/services/connector-store.d.ts +6 -0
  315. package/dist/services/connector-store.d.ts.map +1 -1
  316. package/dist/services/connector-store.js.map +1 -1
  317. package/dist/services/grant-store.d.ts.map +1 -1
  318. package/dist/services/grant-store.js +16 -0
  319. package/dist/services/grant-store.js.map +1 -1
  320. package/dist/services/hermes-transcript.d.ts +1 -0
  321. package/dist/services/hermes-transcript.d.ts.map +1 -1
  322. package/dist/services/hermes-transcript.js +49 -0
  323. package/dist/services/hermes-transcript.js.map +1 -1
  324. package/dist/services/schedule-split-migration.d.ts +2 -0
  325. package/dist/services/schedule-split-migration.d.ts.map +1 -0
  326. package/dist/services/schedule-split-migration.js +159 -0
  327. package/dist/services/schedule-split-migration.js.map +1 -0
  328. package/dist/services/schedule-store.d.ts +28 -4
  329. package/dist/services/schedule-store.d.ts.map +1 -1
  330. package/dist/services/schedule-store.js +118 -33
  331. package/dist/services/schedule-store.js.map +1 -1
  332. package/dist/services/trigger-types.d.ts +18 -1
  333. package/dist/services/trigger-types.d.ts.map +1 -1
  334. package/dist/services/trigger-types.js +3 -0
  335. package/dist/services/trigger-types.js.map +1 -1
  336. package/dist/services/vc-meeting-consumer-profile-store.d.ts.map +1 -1
  337. package/dist/services/vc-meeting-consumer-profile-store.js +1 -0
  338. package/dist/services/vc-meeting-consumer-profile-store.js.map +1 -1
  339. package/dist/services/vc-meeting-consumer-profile-templates.d.ts +32 -0
  340. package/dist/services/vc-meeting-consumer-profile-templates.d.ts.map +1 -0
  341. package/dist/services/vc-meeting-consumer-profile-templates.js +106 -0
  342. package/dist/services/vc-meeting-consumer-profile-templates.js.map +1 -0
  343. package/dist/services/vc-meeting-delivery-feed.d.ts +1 -1
  344. package/dist/services/vc-meeting-delivery-feed.d.ts.map +1 -1
  345. package/dist/services/vc-meeting-delivery-feed.js +2 -1
  346. package/dist/services/vc-meeting-delivery-feed.js.map +1 -1
  347. package/dist/services/vc-meeting-delivery-hub-store.d.ts +3 -1
  348. package/dist/services/vc-meeting-delivery-hub-store.d.ts.map +1 -1
  349. package/dist/services/vc-meeting-delivery-hub-store.js +11 -0
  350. package/dist/services/vc-meeting-delivery-hub-store.js.map +1 -1
  351. package/dist/services/vc-meeting-delivery-protocol.d.ts +9 -2
  352. package/dist/services/vc-meeting-delivery-protocol.d.ts.map +1 -1
  353. package/dist/services/vc-meeting-delivery-protocol.js +10 -1
  354. package/dist/services/vc-meeting-delivery-protocol.js.map +1 -1
  355. package/dist/services/vc-meeting-delivery-receiver.d.ts.map +1 -1
  356. package/dist/services/vc-meeting-delivery-receiver.js +10 -1
  357. package/dist/services/vc-meeting-delivery-receiver.js.map +1 -1
  358. package/dist/services/vc-meeting-delivery-store.d.ts +12 -2
  359. package/dist/services/vc-meeting-delivery-store.d.ts.map +1 -1
  360. package/dist/services/vc-meeting-delivery-store.js +14 -2
  361. package/dist/services/vc-meeting-delivery-store.js.map +1 -1
  362. package/dist/services/vc-meeting-im-reply.d.ts +2 -1
  363. package/dist/services/vc-meeting-im-reply.d.ts.map +1 -1
  364. package/dist/services/vc-meeting-im-reply.js +19 -3
  365. package/dist/services/vc-meeting-im-reply.js.map +1 -1
  366. package/dist/services/vc-meeting-listener-output-protocol.d.ts +27 -0
  367. package/dist/services/vc-meeting-listener-output-protocol.d.ts.map +1 -0
  368. package/dist/services/vc-meeting-listener-output-protocol.js +58 -0
  369. package/dist/services/vc-meeting-listener-output-protocol.js.map +1 -0
  370. package/dist/services/vc-meeting-listener-topic-store.d.ts +31 -0
  371. package/dist/services/vc-meeting-listener-topic-store.d.ts.map +1 -0
  372. package/dist/services/vc-meeting-listener-topic-store.js +120 -0
  373. package/dist/services/vc-meeting-listener-topic-store.js.map +1 -0
  374. package/dist/services/vc-meeting-runtime-store.d.ts +2 -1
  375. package/dist/services/vc-meeting-runtime-store.d.ts.map +1 -1
  376. package/dist/services/vc-meeting-runtime-store.js +8 -0
  377. package/dist/services/vc-meeting-runtime-store.js.map +1 -1
  378. package/dist/services/vc-meeting-send-policy.d.ts +8 -1
  379. package/dist/services/vc-meeting-send-policy.d.ts.map +1 -1
  380. package/dist/services/vc-meeting-send-policy.js +8 -0
  381. package/dist/services/vc-meeting-send-policy.js.map +1 -1
  382. package/dist/types.d.ts +40 -3
  383. package/dist/types.d.ts.map +1 -1
  384. package/dist/utils/allowed-users-apply.d.ts +76 -0
  385. package/dist/utils/allowed-users-apply.d.ts.map +1 -0
  386. package/dist/utils/allowed-users-apply.js +123 -0
  387. package/dist/utils/allowed-users-apply.js.map +1 -0
  388. package/dist/utils/allowed-users-cache.d.ts +29 -0
  389. package/dist/utils/allowed-users-cache.d.ts.map +1 -0
  390. package/dist/utils/allowed-users-cache.js +82 -0
  391. package/dist/utils/allowed-users-cache.js.map +1 -0
  392. package/dist/utils/child-env.d.ts +2 -1
  393. package/dist/utils/child-env.d.ts.map +1 -1
  394. package/dist/utils/child-env.js +2 -1
  395. package/dist/utils/child-env.js.map +1 -1
  396. package/dist/utils/cli-usage-limit.d.ts +27 -1
  397. package/dist/utils/cli-usage-limit.d.ts.map +1 -1
  398. package/dist/utils/cli-usage-limit.js +92 -20
  399. package/dist/utils/cli-usage-limit.js.map +1 -1
  400. package/dist/utils/input-gate.d.ts +2 -0
  401. package/dist/utils/input-gate.d.ts.map +1 -1
  402. package/dist/utils/input-gate.js +2 -0
  403. package/dist/utils/input-gate.js.map +1 -1
  404. package/dist/utils/runtime-build-id.d.ts +21 -0
  405. package/dist/utils/runtime-build-id.d.ts.map +1 -0
  406. package/dist/utils/runtime-build-id.js +83 -0
  407. package/dist/utils/runtime-build-id.js.map +1 -0
  408. package/dist/utils/terminal-renderer.d.ts +3 -3
  409. package/dist/utils/terminal-renderer.js +3 -3
  410. package/dist/vc-agent/cards.d.ts.map +1 -1
  411. package/dist/vc-agent/cards.js +21 -1
  412. package/dist/vc-agent/cards.js.map +1 -1
  413. package/dist/worker.js +601 -179
  414. package/dist/worker.js.map +1 -1
  415. package/dist/workflows/hostExecutors/botmux-schedule.d.ts.map +1 -1
  416. package/dist/workflows/hostExecutors/botmux-schedule.js +13 -1
  417. package/dist/workflows/hostExecutors/botmux-schedule.js.map +1 -1
  418. package/dist/workflows/migration/v2-run-archive-schema.d.ts +20 -20
  419. package/dist/workflows/migration/v2-to-v3.d.ts.map +1 -1
  420. package/dist/workflows/migration/v2-to-v3.js +5 -1
  421. package/dist/workflows/migration/v2-to-v3.js.map +1 -1
  422. package/dist/workflows/v3/architect.d.ts.map +1 -1
  423. package/dist/workflows/v3/architect.js +1 -0
  424. package/dist/workflows/v3/architect.js.map +1 -1
  425. package/dist/workflows/v3/cli-run.d.ts +9 -0
  426. package/dist/workflows/v3/cli-run.d.ts.map +1 -1
  427. package/dist/workflows/v3/cli-run.js +17 -2
  428. package/dist/workflows/v3/cli-run.js.map +1 -1
  429. package/dist/workflows/v3/goal-cli.d.ts +58 -0
  430. package/dist/workflows/v3/goal-cli.d.ts.map +1 -0
  431. package/dist/workflows/v3/goal-cli.js +430 -0
  432. package/dist/workflows/v3/goal-cli.js.map +1 -0
  433. package/dist/workflows/v3/library-materialize.d.ts.map +1 -1
  434. package/dist/workflows/v3/library-materialize.js +5 -1
  435. package/dist/workflows/v3/library-materialize.js.map +1 -1
  436. package/dist/workflows/v3/library-schema.d.ts +21 -0
  437. package/dist/workflows/v3/library-schema.d.ts.map +1 -1
  438. package/dist/workflows/v3/library-schema.js +95 -1
  439. package/dist/workflows/v3/library-schema.js.map +1 -1
  440. package/dist/workflows/v3/progress-projection.d.ts +3 -0
  441. package/dist/workflows/v3/progress-projection.d.ts.map +1 -1
  442. package/dist/workflows/v3/progress-projection.js +23 -1
  443. package/dist/workflows/v3/progress-projection.js.map +1 -1
  444. package/dist/workflows/v3/run-envelope.d.ts +46 -1
  445. package/dist/workflows/v3/run-envelope.d.ts.map +1 -1
  446. package/dist/workflows/v3/run-envelope.js +32 -1
  447. package/dist/workflows/v3/run-envelope.js.map +1 -1
  448. package/package.json +2 -2
  449. package/dist/dashboard-web/chunks/bot-defaults-page-AUKV7P4L.js +0 -10
  450. package/dist/dashboard-web/chunks/chunk-SZOB6VK2.js +0 -1
  451. package/dist/dashboard-web/chunks/connectors-page-HDQFEXZI.js +0 -1
  452. package/dist/dashboard-web/chunks/overview-page-FVR3NKAF.js +0 -1
  453. package/dist/dashboard-web/chunks/sessions-page-KOOOASIL.js +0 -2
  454. package/dist/dashboard-web/chunks/settings-page-IEBR7TGN.js +0 -2
  455. package/dist/utils/screen-analyzer.d.ts +0 -75
  456. package/dist/utils/screen-analyzer.d.ts.map +0 -1
  457. package/dist/utils/screen-analyzer.js +0 -333
  458. package/dist/utils/screen-analyzer.js.map +0 -1
@@ -100,11 +100,14 @@ const manualCliEnvelopeSchema = z.object({
100
100
  artifacts: z.object({
101
101
  dag: artifactRefSchema('dag.json'),
102
102
  botSnapshots: artifactRefSchema('bots.snapshot.json'),
103
+ /** Present for `botmux goal run`; absent for hand-authored `v3 run`. */
104
+ goalRequest: artifactRefSchema('goal.request.json').optional(),
103
105
  }).strict(),
104
106
  authorization: z.object({
105
107
  kind: z.literal('local_cli'),
106
108
  authorizedAt: timestampSchema,
107
109
  dagSha256: sha256Schema,
110
+ goalRequestSha256: sha256Schema.optional(),
108
111
  }).strict(),
109
112
  }).strict();
110
113
  const legacyV3EnvelopeSchema = z.object({
@@ -183,6 +186,25 @@ export const V3RunEnvelopeSchema = z.union([
183
186
  });
184
187
  }
185
188
  }
189
+ else if (envelope.authorization.kind === 'local_cli') {
190
+ const artifacts = envelope.artifacts;
191
+ const requestRef = artifacts.goalRequest;
192
+ const requestDigest = envelope.authorization.goalRequestSha256;
193
+ if (requestRef && requestDigest !== requestRef.sha256) {
194
+ ctx.addIssue({
195
+ code: z.ZodIssueCode.custom,
196
+ path: ['authorization', 'goalRequestSha256'],
197
+ message: 'must match artifacts.goalRequest.sha256 when goalRequest is present',
198
+ });
199
+ }
200
+ else if (!requestRef && requestDigest !== undefined) {
201
+ ctx.addIssue({
202
+ code: z.ZodIssueCode.custom,
203
+ path: ['authorization', 'goalRequestSha256'],
204
+ message: 'must be absent when artifacts.goalRequest is absent',
205
+ });
206
+ }
207
+ }
186
208
  else if (envelope.authorization.kind === 'legacy_backfill') {
187
209
  const artifacts = envelope.artifacts;
188
210
  if (artifacts.spec) {
@@ -463,6 +485,7 @@ export function loadAuthorizedV3Run(runDir, options = {}) {
463
485
  let botSnapshots;
464
486
  let resolvedParams;
465
487
  let definitionSnapshot;
488
+ let goalRequest;
466
489
  if ('spec' in envelope.artifacts && envelope.artifacts.spec) {
467
490
  const specBytes = verifyArtifact(runDir, envelope.artifacts.spec);
468
491
  bytes.spec = specBytes;
@@ -493,6 +516,11 @@ export function loadAuthorizedV3Run(runDir, options = {}) {
493
516
  bytes.definitionSnapshot = definitionBytes;
494
517
  definitionSnapshot = parseJsonArtifact(definitionBytes, 'definition.snapshot.json');
495
518
  }
519
+ if ('goalRequest' in envelope.artifacts && envelope.artifacts.goalRequest) {
520
+ const requestBytes = verifyArtifact(runDir, envelope.artifacts.goalRequest);
521
+ bytes.goalRequest = requestBytes;
522
+ goalRequest = parseJsonArtifact(requestBytes, 'goal.request.json');
523
+ }
496
524
  if (envelope.source.kind === 'saved_definition') {
497
525
  if (!definitionSnapshot || typeof definitionSnapshot !== 'object' || Array.isArray(definitionSnapshot)) {
498
526
  throw new RunEnvelopeIntegrityError('artifact_invalid_content', 'definition.snapshot.json must be an object for a saved-definition run', 'definition.snapshot.json');
@@ -504,7 +532,7 @@ export function loadAuthorizedV3Run(runDir, options = {}) {
504
532
  throw new RunEnvelopeIntegrityError('artifact_invalid_content', 'definition.snapshot.json identity does not match run.json source revision', 'definition.snapshot.json');
505
533
  }
506
534
  }
507
- return { envelope, dag, spec, botSnapshots, resolvedParams, definitionSnapshot, bytes };
535
+ return { envelope, dag, spec, botSnapshots, resolvedParams, definitionSnapshot, goalRequest, bytes };
508
536
  }
509
537
  function canonicalize(value) {
510
538
  if (value === null || typeof value !== 'object')
@@ -656,6 +684,9 @@ export function makeManualCliRunEnvelope(input) {
656
684
  kind: 'local_cli',
657
685
  authorizedAt: input.authorizedAt,
658
686
  dagSha256: input.artifacts.dag.sha256,
687
+ ...(input.artifacts.goalRequest
688
+ ? { goalRequestSha256: input.artifacts.goalRequest.sha256 }
689
+ : {}),
659
690
  },
660
691
  });
661
692
  }
@@ -1 +1 @@
1
- {"version":3,"file":"run-envelope.js","sourceRoot":"","sources":["../../../src/workflows/v3/run-envelope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-envelope.js","sourceRoot":"","sources":["../../../src/workflows/v3/run-envelope.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "botmux",
3
- "version": "3.5.2",
3
+ "version": "3.6.0",
4
4
  "description": "Bridge between IM platforms and AI coding CLIs — one topic, one CLI session with live streaming",
5
5
  "type": "module",
6
6
  "main": "dist/index-daemon.js",
@@ -19,7 +19,7 @@
19
19
  "access": "public"
20
20
  },
21
21
  "scripts": {
22
- "build": "pnpm audit:domains && node scripts/clean-dist.mjs && tsc && cp src/setup/lark-scopes.json dist/setup/ && pnpm dashboard:bundle && chmod +x dist/cli.js && node scripts/audit-dist.mjs",
22
+ "build": "pnpm audit:domains && node scripts/clean-dist.mjs && tsc && node scripts/generate-runtime-build-id.mjs && cp src/setup/lark-scopes.json dist/setup/ && pnpm dashboard:bundle && chmod +x dist/cli.js && node scripts/audit-dist.mjs",
23
23
  "audit:domains": "node scripts/audit-public-domains.mjs",
24
24
  "dashboard:bundle": "node scripts/build-dashboard.mjs",
25
25
  "dashboard:watch": "node scripts/build-dashboard.mjs --watch",
@@ -1,10 +0,0 @@
1
- import{b as wt}from"./chunk-NRL6CVAS.js";import{b as A}from"./chunk-KPQAUX7V.js";import{a as Ct,b as at,c as lt,g as xt,h as Nt,i as Tt,p as It}from"./chunk-QFMH6ITB.js";import{A as Dt,a as nt,r as ht,w as et,z as vt}from"./chunk-X2L65IOM.js";import{a as kt}from"./chunk-SYC6D5XU.js";import{a as Kt,d as St}from"./chunk-5THX4DI2.js";import{c as dt}from"./chunk-7SZRL6FY.js";var s=dt(Kt(),1);var Rt=[{id:"claude-code",label:"Claude"},{id:"codex",label:"Codex"},{id:"traex",label:"traex"}],ot={options:Rt,ttadkModelDefault:"glm-5.1",ttadkModelSuggestions:[]};function it(a,t){return typeof a?.cliId=="string"&&a.cliId?a.cliId:t}function ct(a){let t=null;for(let o of nt.sessions.values())o.larkAppId!==a||!o.cliId||(!t||Number(o.lastMessageAt??0)>Number(t.lastMessageAt??0))&&(t=o);return t?.cliId??""}function bt(a,t){let o=typeof a.agentSelectionKey=="string"&&a.agentSelectionKey?a.agentSelectionKey:"";return o||it(a,t)||"claude-code"}function ft(a,t){return a.find(o=>o.id===t)}function Pt(a,t){return a?.gateway==="ttadk"&&a.acceptsModel!==!1?t.ttadkModelSuggestions:[]}function Bt(){let a=0;return{begin(){let t=++a;return{commit:()=>t===a}}}}async function Mt(){try{let a=await fetch("/api/bots"),t=await a.json().catch(()=>({}));if(!a.ok){let o=t?.error?`HTTP ${a.status}: ${t.error}${t.path?` (${t.path})`:""}`:`HTTP ${a.status}`;return{bots:[],error:o}}return!t||!Array.isArray(t.bots)?{bots:[],error:"unexpected response shape (no `bots` array)"}:{bots:t.bots,error:null}}catch(a){return{bots:[],error:a?.message??String(a)}}}async function At(a,t){try{let o=await fetch(`/api/bots/${encodeURIComponent(a)}/substitute-targets/resolve`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({target:t})}),u=await o.json().catch(()=>({}));return o.ok?{ok:!0,resolution:u?.resolution??{}}:{ok:!1,error:u?.error?`HTTP ${o.status}: ${u.error}`:`HTTP ${o.status}`}}catch(o){return{ok:!1,error:o?.message??String(o)}}}async function $t(){try{let a=await fetch("/api/cli-options"),t=await a.json().catch(()=>({}));if(!a.ok||!Array.isArray(t?.options))return ot;let o=t.options.filter(l=>l&&typeof l.id=="string"&&typeof l.label=="string"),u=typeof t.ttadkModelDefault=="string"&&t.ttadkModelDefault.trim()?t.ttadkModelDefault.trim():ot.ttadkModelDefault,i=Array.isArray(t.ttadkModelSuggestions)?t.ttadkModelSuggestions.filter(l=>typeof l=="string"):[];return{options:o.length?o:Rt,ttadkModelDefault:u,ttadkModelSuggestions:i}}catch{return ot}}function Ot(a){if(!a)return"\u2014";let t=new Date(a);return Number.isNaN(t.getTime())?"\u2014":t.toLocaleString()}var e=dt(St(),1);function gt(a,t=""){let o=a?` ${a.ok?"hint-ok":"hint-warn-inline"}`:"";return`oncall-status${t?` ${t}`:""}${o}`}function W(a){return(0,e.jsx)("span",{className:gt(a.status),...a.attr??{},children:a.status?.text??""})}function Vt(a){let t=typeof a.children=="string"?a.children:void 0;return(0,e.jsx)(Tt,{className:"bd-info-tip",label:t,children:a.children})}function $(a){return(0,e.jsxs)("span",{className:"bd-field-title",children:[(0,e.jsx)("span",{className:"bd-field-title-text",children:a.children}),a.help?(0,e.jsx)(Vt,{children:a.help}):null]})}function z(a){let t=A();return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(It,{id:`bd-menu-${a.dataInput}`,className:["bd-field-menu",a.className].filter(Boolean).join(" "),ariaLabel:a.ariaLabel,disabled:a.disabled,label:Ct(a.options,a.value),value:a.value,options:a.options,searchable:a.searchable,searchPlaceholder:a.searchable?t("common.dropdownSearch"):void 0,searchEmptyLabel:a.searchable?t("common.dropdownSearchEmpty"):void 0,onChange:a.onChange}),(0,e.jsx)("input",{type:"hidden","data-input":a.dataInput,value:a.value,readOnly:!0})]})}function Q(a){return(0,e.jsxs)("label",{className:"toggle-row",children:[(0,e.jsx)("input",{type:"checkbox","data-action":a.dataAction,checked:a.checked,disabled:a.disabled,onChange:t=>a.onChange(t.currentTarget.checked)}),(0,e.jsx)("span",{className:"switch","aria-hidden":"true"}),(0,e.jsx)("span",{className:"toggle-tx",children:(0,e.jsx)("strong",{children:(0,e.jsx)($,{help:a.help,children:a.title})})})]})}async function K(a,t,o){let u=await fetch(t,{method:a,headers:{"content-type":"application/json"},body:o===void 0?void 0:JSON.stringify(o)}),i=await u.json().catch(()=>({}));return{ok:u.ok&&i?.ok!==!1,status:u.status,body:i}}function F(a){let t=typeof a.body?.reason=="string"?a.body.reason:"",o=typeof a.body?.manualCommand=="string"?a.body.manualCommand:"";return t&&o?`${t}\uFF08${o}\uFF09`:String(t||a.body?.error||a.status)}function O(a){return a?.message??String(a)}function qt(a){let t=a.trim();return t?/^[1-9]\d*$/.test(t)?Number(t):"invalid":null}function Lt(a,t){let o=a.trim();return o===""?t:/^(0|[1-9]\d*)$/.test(o)?Number(o):null}var yt=["email","openId","userId","unionId"];function Qt(a){let t=a.split(/[\r\n,,;;]+/).map(o=>o.trim()).filter(Boolean);return[...new Set(t)]}function pt(a){return(a??[]).join(`
2
- `)}function zt(a){return yt.find(t=>a?.[t]?.trim())??"email"}function Xt(a){let t=a.idValue.trim();if(!t)return null;let o={...a.persisted};if(a.persisted[a.idField]!==t||a.originalIdField!=null&&a.originalIdField!==a.idField)for(let l of yt)delete o[l];o[a.idField]=t;let i=a.name.trim();return i?o.name=i:delete o.name,o}function Yt(a,t){return a==null?t("botDefaults.brandStateDefault"):a.trim()===""?t("botDefaults.brandStateOff"):t("botDefaults.brandStateCustom")}function Zt(a,t){return a==null?t("botDefaults.quotaStateOff"):t("botDefaults.quotaStateOn",{count:a})}function te(a,t){return a==null?t("botDefaults.maxLiveWorkersStateDefault"):t("botDefaults.maxLiveWorkersStateOn",{count:a})}function ee(a,t){return{...a,disableStreamingCard:t.disableStreamingCard,silentTurnReactions:t.silentTurnReactions,codexAppCleanInput:t.codexAppCleanInput,writableTerminalLinkInCard:t.writableTerminalLinkInCard,privateCard:t.privateCard,botToBotSameDir:t.botToBotSameDir,autoStartOnGroupJoin:t.autoStartOnGroupJoin,autoStartOnGroupJoinPrompt:t.autoStartOnGroupJoinPrompt,autoStartOnNewTopic:t.autoStartOnNewTopic,regularGroupReplyMode:t.regularGroupReplyMode,regularGroupMentionMode:t.regularGroupMentionMode,docSubscribeDefaultMode:t.docSubscribeDefaultMode}}function ae(){let a=A(),t=(0,s.useRef)(!0),o=(0,s.useRef)(Bt()),[u,i]=(0,s.useState)([]),[l,b]=(0,s.useState)(ot),[d,m]=(0,s.useState)(null),[n,c]=(0,s.useState)(!0),[p,f]=(0,s.useState)(!1),[g,S]=(0,s.useState)(""),[C,h]=(0,s.useState)(null),[D,x]=(0,s.useState)(0),[,k]=(0,s.useState)(0),[w,P]=(0,s.useState)(!1),y=(0,s.useCallback)(async(T=!1)=>{T&&x(X=>X+1);let H=o.current.begin();c(!0);try{let[X,Y]=await Promise.all([Mt(),$t()]);if(!t.current||!H.commit())return;i(X.bots),m(X.error),b(Y)}finally{t.current&&H.commit()&&c(!1)}},[]);(0,s.useEffect)(()=>{t.current=!0,y(),Dt().then(()=>{t.current&&k(H=>H+1)});let T=nt.onBotsChanged(()=>{t.current&&y()});return()=>{t.current=!1,T()}},[y]);let j=(0,s.useMemo)(()=>{let T=g.trim().toLowerCase();return u.filter(H=>!T||(H.botName??"").toLowerCase().includes(T)||(H.larkAppId??"").toLowerCase().includes(T))},[u,g]);(0,s.useEffect)(()=>{if(!(d||n)){if(j.length===0){C!==null&&h(null);return}(!C||!j.some(T=>T.larkAppId===C))&&h(j[0].larkAppId)}},[j,d,n,C]);let M=C?j.find(T=>T.larkAppId===C)??null:null,V=(0,s.useCallback)((T,H)=>{i(X=>X.map(Y=>Y.larkAppId!==T?Y:typeof H=="function"?H(Y):{...Y,...H}))},[]),U=async()=>{f(!0);try{await y(!0)}finally{t.current&&f(!1)}},q;return n?q=(0,e.jsx)(lt,{label:a("common.loading")}):d?q=(0,e.jsxs)("p",{className:"hint-warn",children:["\u65E0\u6CD5\u52A0\u8F7D bot \u5217\u8868\uFF1A",d,(0,e.jsx)("br",{}),"\u5E38\u89C1\u539F\u56E0\uFF1Adashboard / daemon \u8FDB\u7A0B\u8FD8\u5728\u8DD1\u65E7\u4EE3\u7801\uFF0C\u6267\u884C ",(0,e.jsx)("code",{children:"botmux restart"})," \u540E\u5237\u65B0\u3002"]}):j.length===0?q=(0,e.jsx)("p",{className:"empty",children:a("botDefaults.empty")}):M?q=(0,e.jsx)(se,{bot:M,cliState:l,patchBot:V},`${M.larkAppId}:${D}`):q=null,(0,e.jsxs)("section",{className:"page bot-defaults-page",children:[(0,e.jsxs)("div",{className:"page-heading",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("p",{className:"eyebrow",children:a("nav.botDefaults")}),(0,e.jsx)("h1",{children:a("botDefaults.title")})]}),(0,e.jsxs)("div",{className:"page-heading-actions",children:[(0,e.jsx)(Nt,{id:"bd-refresh",label:a("botDefaults.refresh"),busy:p,disabled:p,onClick:()=>{U()}}),ht.authed?(0,e.jsx)(xt,{className:"page-primary-action add-bot-btn",disabled:w,onClick:()=>{P(!0),wt().finally(()=>P(!1))},children:a("botOnboarding.add")}):null]})]}),(0,e.jsxs)("div",{className:"bd-layout",children:[(0,e.jsxs)("aside",{id:"bd-roster",className:"bd-roster",children:[(0,e.jsx)("form",{id:"bd-filters",className:"filters dashboard-toolbar",onSubmit:T=>T.preventDefault(),children:(0,e.jsx)("input",{type:"search",name:"q",placeholder:a("botDefaults.search"),value:g,onChange:T=>S(T.currentTarget.value)})}),(0,e.jsx)("div",{className:"bd-roster-list",children:!d&&j.map(T=>(0,e.jsx)(oe,{bot:T,selected:T.larkAppId===C,onSelect:()=>h(T.larkAppId)},T.larkAppId))})]}),(0,e.jsx)("div",{id:"bd-list",className:"bd-detail",children:q})]})]})}function oe(a){let{bot:t}=a,o=t.botName??t.larkAppId,u=it(t,ct(t.larkAppId));return(0,e.jsxs)("div",{className:`bd-roster-item${a.selected?" on":""}`,"data-appid":t.larkAppId,role:"button",tabIndex:0,onClick:a.onSelect,onKeyDown:i=>{(i.key==="Enter"||i.key===" ")&&(i.preventDefault(),a.onSelect())},children:[(0,e.jsx)(at,{html:et({name:o,larkAppId:t.larkAppId,size:"sm"})}),(0,e.jsxs)("div",{className:"bd-roster-tx",children:[(0,e.jsx)("b",{children:o}),(0,e.jsx)("span",{children:u||t.larkAppId.slice(0,14)})]}),t.defaultOncall?.enabled?(0,e.jsx)("span",{className:"bd-roster-flag",children:"oncall"}):null]})}function se(a){let t=A(),{bot:o,cliState:u,patchBot:i}=a,l=o.botName??o.larkAppId,b=it(o,ct(o.larkAppId)),d=(0,s.useCallback)(async n=>{let c=await K("PUT",`/api/bots/${encodeURIComponent(o.larkAppId)}/card-prefs`,n);return c.ok&&i(o.larkAppId,p=>ee(p,c.body)),c},[o.larkAppId,i]);if(o.error)return(0,e.jsxs)("article",{className:"bd-card bd-profile","data-appid":o.larkAppId,children:[(0,e.jsxs)("header",{className:"bd-profile-head",children:[(0,e.jsx)(at,{html:et({name:l,larkAppId:o.larkAppId})}),(0,e.jsxs)("div",{className:"bd-profile-id",children:[(0,e.jsx)("strong",{children:l}),(0,e.jsx)("code",{children:o.larkAppId})]})]}),(0,e.jsxs)("p",{className:"hint-warn-inline",children:["\u67E5\u8BE2\u5931\u8D25\uFF1A",o.error]})]});let m=o.defaultOncall??{enabled:!1,workingDir:"",since:0};return(0,e.jsxs)("article",{className:"bd-card bd-profile","data-appid":o.larkAppId,children:[(0,e.jsxs)("header",{className:"bd-profile-head",children:[(0,e.jsx)(ie,{bot:o,name:l,patchBot:i}),(0,e.jsx)("div",{className:"bd-profile-main",children:(0,e.jsx)(re,{bot:o,cli:b,patchBot:i,meta:(0,e.jsxs)(e.Fragment,{children:[(0,e.jsxs)("small",{className:"bd-meta-ok",children:["\u25CF ",t("botDefaults.metaOnline")]}),(0,e.jsxs)("small",{"data-oncall-since":!0,children:[t("botDefaults.lastEnabled"),": ",Ot(m.since??0)]}),(0,e.jsx)("small",{children:t("botDefaults.autobound",{count:o.autoboundChatCount??0})})]})})})]}),(0,e.jsxs)("div",{className:"bd-body bd-grid",children:[(0,e.jsxs)("div",{className:"bd-column",children:[(0,e.jsxs)("section",{className:"bd-tile",children:[(0,e.jsx)(ue,{bot:o,sessionFallback:b,cliState:u,patchBot:i}),(0,e.jsx)(de,{bot:o,patchBot:i,putCardPref:d}),o.cliId!=="riff"&&(0,e.jsx)(be,{bot:o,patchBot:i}),o.cliId!=="riff"&&o.sandbox===!0&&(0,e.jsx)(me,{bot:o,patchBot:i}),o.cliId!=="riff"&&(0,e.jsx)(ye,{bot:o,patchBot:i})]}),(0,e.jsx)("section",{className:"bd-tile",children:(0,e.jsx)(ne,{bot:o,patchBot:i})}),(0,e.jsx)("section",{className:"bd-tile",children:(0,e.jsx)(Oe,{bot:o,patchBot:i})})]}),(0,e.jsxs)("div",{className:"bd-column",children:[(0,e.jsxs)("section",{className:"bd-tile",children:[(0,e.jsx)(xe,{bot:o,patchBot:i,putCardPref:d}),(0,e.jsx)(Ne,{bot:o,patchBot:i}),(0,e.jsx)(Se,{bot:o,putCardPref:d}),(0,e.jsx)(Te,{bot:o,patchBot:i})]}),(0,e.jsxs)("section",{className:"bd-tile",children:[(0,e.jsx)(De,{bot:o,putCardPref:d}),(0,e.jsx)(ke,{bot:o,putCardPref:d}),(0,e.jsx)(Ce,{bot:o,patchBot:i}),(0,e.jsx)($e,{bot:o,patchBot:i})]}),(0,e.jsx)("section",{className:"bd-tile",children:(0,e.jsx)(he,{bot:o,patchBot:i})})]})]})]})}function ne(a){let t=A();return(0,e.jsxs)("section",{className:"bd-section bd-runtime-env",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionRuntimeEnv")}),(0,e.jsx)(Ie,{bot:a.bot,patchBot:a.patchBot}),(0,e.jsx)(we,{bot:a.bot,patchBot:a.patchBot}),(0,e.jsx)(Re,{bot:a.bot,patchBot:a.patchBot})]})}var rt=512;async function le(a){let t=await createImageBitmap(a);try{let o=Math.min(t.width,t.height);if(!o)throw new Error("empty image");let u=document.createElement("canvas");u.width=rt,u.height=rt;let i=u.getContext("2d");if(!i)throw new Error("canvas unavailable");let l=(t.width-o)/2,b=(t.height-o)/2;return i.drawImage(t,l,b,o,o,0,0,rt,rt),u.toDataURL("image/png")}finally{t.close()}}function ie(a){let t=A(),{bot:o,name:u,patchBot:i}=a,l=(0,s.useRef)(null),[b,d]=(0,s.useState)(!1),[m,n]=(0,s.useState)(null),[c,p]=(0,s.useState)(!1),[f,g]=(0,s.useState)(!1),S=(0,s.useRef)(null);function C(x,k){let P=["no_session","session_expired","no_access","unsupported_brand"].includes(x)?t(`botDefaults.avatarWarn.${x}`):k||x;return t("botDefaults.avatarFailed",{error:P})}let h=(0,s.useCallback)(async x=>{d(!0),n({text:`\u23F3 ${t("botDefaults.avatarUploading")}`,ok:!0});try{let k=await K("PUT",`/api/bots/${encodeURIComponent(o.larkAppId)}/avatar`,{imageBase64:x});if(k.ok&&k.body.ok){let w=typeof k.body.avatarUrl=="string"?k.body.avatarUrl:"";w&&vt(o.larkAppId,u,w),i(o.larkAppId,P=>({...P})),S.current=null,p(!1),n({text:`\u2713 ${t("botDefaults.avatarOkFeishu")}`,ok:!0})}else{let w=String(k.body?.error??""),P=typeof k.body?.message=="string"?k.body.message:void 0;n({text:`\u2717 ${C(w,P??F(k))}`});let y=w==="no_session"||w==="session_expired";p(y),y||(S.current=null)}}catch(k){n({text:`\u2717 ${t("botDefaults.avatarFailed",{error:O(k)})}`})}finally{d(!1)}},[o.larkAppId,u,i,t]);async function D(x){if(!x||b)return;d(!0);let k;try{k=await le(x)}catch{d(!1),n({text:`\u2717 ${t("botDefaults.avatarBadImage")}`});return}S.current=k,await h(k)}return(0,e.jsxs)("div",{className:"bd-profile-avatar bd-avatar-editable","data-avatar-control":!0,children:[(0,e.jsxs)("button",{type:"button",className:"bd-avatar-btn","data-action":"edit-bot-avatar",title:t("botDefaults.avatarTitle"),"aria-label":t("botDefaults.avatarTitle"),disabled:b,onClick:()=>l.current?.click(),children:[(0,e.jsx)(at,{html:et({name:u,larkAppId:o.larkAppId,dot:"ok"})}),(0,e.jsx)("span",{className:"bd-avatar-edit-badge","aria-hidden":"true",children:b?"\u23F3":"\u270E"})]}),(0,e.jsx)("input",{ref:l,type:"file",accept:"image/*",hidden:!0,"data-input":"botAvatarFile",onChange:x=>{let k=x.currentTarget.files?.[0];x.currentTarget.value="",D(k)}}),m?(0,e.jsxs)("small",{className:gt(m,"bd-avatar-status"),"data-avatar-status":!0,children:[m.text,c?(0,e.jsx)("button",{type:"button",className:"bd-feishu-login","data-action":"feishu-login-avatar",onClick:()=>g(!0),children:t("feishuLogin.entry")}):null]}):null,f?(0,e.jsx)(Jt,{onClose:()=>g(!1),onSuccess:()=>{p(!1),g(!1),S.current&&h(S.current)}}):null]})}function re(a){let t=A(),{bot:o,cli:u,patchBot:i}=a,l=o.botName??o.larkAppId,[b,d]=(0,s.useState)(!1),[m,n]=(0,s.useState)(l),[c,p]=(0,s.useState)(!1),[f,g]=(0,s.useState)(null),[S,C]=(0,s.useState)(!1),[h,D]=(0,s.useState)(!1);(0,s.useEffect)(()=>{b||n(l)},[b,l]);function x(P){d(P),P&&(n(l),g(null),C(!1))}function k(P,y){let M=["no_session","session_expired","no_access","unsupported_brand"].includes(P)?t(`botDefaults.renameWarn.${P}`):y||P;return t("botDefaults.renameLocalOnly",{reason:M})}let w=(0,s.useCallback)(async()=>{let P=m.trim();if(!P){g({text:`\u2717 ${t("botDefaults.renameEmpty")}`});return}p(!0),g({text:`\u23F3 ${t("botDefaults.renaming")}`,ok:!0});try{let y=await K("PUT",`/api/bots/${encodeURIComponent(o.larkAppId)}/rename`,{name:P});if(y.ok&&y.body.ok){let j=typeof y.body.botName=="string"&&y.body.botName?y.body.botName:P;i(o.larkAppId,M=>({...M,botName:j,larkBotName:y.body.mode==="feishu"?P:M.larkBotName,displayName:y.body.mode==="feishu"?null:P})),x(!1),y.body.mode==="feishu"?(g({text:`\u2713 ${t("botDefaults.renameOkFeishu")}`,ok:!0}),C(!1)):(g({text:`\u26A0 ${k(String(y.body.warning??""),y.body.message)}`}),C(y.body.warning==="no_session"||y.body.warning==="session_expired"))}else g({text:`\u2717 ${t("botDefaults.renameFailed",{error:F(y)})}`})}catch(y){g({text:`\u2717 ${t("botDefaults.renameFailed",{error:O(y)})}`})}finally{p(!1)}},[o.larkAppId,m,i,t]);return(0,e.jsxs)("div",{className:"bd-profile-id",children:[b?(0,e.jsxs)("span",{className:"bd-name-editor","data-name-editor":!0,children:[(0,e.jsx)("input",{type:"text",className:"bd-name-input","data-input":"botRename",maxLength:64,value:m,disabled:c,autoFocus:!0,onChange:P=>n(P.currentTarget.value),onKeyDown:P=>{P.key==="Enter"?(P.preventDefault(),w()):P.key==="Escape"&&x(!1)}}),(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-bot-name",disabled:c,onClick:()=>{w()},children:t("botDefaults.renameSave")}),(0,e.jsx)("button",{type:"button","data-action":"cancel-bot-name",disabled:c,onClick:()=>x(!1),children:t("botDefaults.renameCancel")})]}):(0,e.jsxs)("div",{className:"bd-profile-title-row","data-name-row":!0,children:[(0,e.jsxs)("div",{className:"bd-profile-title-content",children:[(0,e.jsx)("strong",{"data-bot-name":!0,children:l}),u?(0,e.jsx)("span",{className:"mate-role bd-profile-cli-tag",children:u}):null,a.meta?(0,e.jsx)("span",{className:"bd-profile-meta bd-meta",children:a.meta}):null]}),(0,e.jsx)("button",{type:"button",className:"bd-name-edit","data-action":"edit-bot-name",title:t("botDefaults.renameTitle"),"aria-label":t("botDefaults.renameTitle"),onClick:()=>x(!0),children:t("botDefaults.renameAction")})]}),(0,e.jsx)("code",{children:o.larkAppId}),(0,e.jsx)("small",{className:gt(f,"bd-name-status"),"data-name-status":!0,children:f?.text??""}),(0,e.jsx)("button",{type:"button",className:"bd-feishu-login","data-action":"feishu-login",hidden:!S,onClick:()=>D(!0),children:t("feishuLogin.entry")}),h?(0,e.jsx)(Jt,{onClose:()=>D(!1),onSuccess:()=>{C(!1),D(!1),w()}}):null]})}function Jt(a){let t=A(),{onClose:o,onSuccess:u}=a,i=(0,s.useRef)(null),l=(0,s.useRef)(null),[b,d]=(0,s.useState)(t("feishuLogin.starting")),[m,n]=(0,s.useState)(null),[c,p]=(0,s.useState)(!1),f=(0,s.useCallback)(()=>{i.current!==null&&(window.clearInterval(i.current),i.current=null)},[]),g=(0,s.useCallback)(h=>h?h.status==="awaiting_scan"&&h.qrDataUrl?(n(h.qrDataUrl),d(h.message||t("feishuLogin.scanHint")),p(!1),"active"):h.status==="starting"?(d(h.message||t("feishuLogin.starting")),n(null),p(!1),"active"):h.status==="success"?(f(),n(null),p(!1),d(t("feishuLogin.success")),l.current=window.setTimeout(()=>u(),900),"done"):(f(),n(null),d(t("feishuLogin.failed",{reason:h.message||h.reason||""})),p(!0),"done"):"active",[u,f,t]),S=(0,s.useCallback)(async()=>{try{let D=await(await fetch("/api/feishu-login/status")).json().catch(()=>({}));g(D.login)}catch{}},[g]),C=(0,s.useCallback)(async()=>{f(),d(t("feishuLogin.starting")),n(null),p(!1);let h="active";try{let x=await(await fetch("/api/feishu-login/start",{method:"POST"})).json().catch(()=>({}));h=g(x.login)}catch(D){d(t("feishuLogin.failed",{reason:O(D)})),p(!0);return}h==="active"&&i.current===null&&(i.current=window.setInterval(()=>{S()},1500))},[S,g,f,t]);return(0,s.useEffect)(()=>(C(),()=>{f(),l.current!==null&&window.clearTimeout(l.current)}),[C,f]),(0,e.jsx)("div",{className:"feishu-login-overlay",onClick:h=>{h.currentTarget===h.target&&o()},children:(0,e.jsxs)("div",{className:"feishu-login-modal",role:"dialog","aria-modal":"true",children:[(0,e.jsx)("button",{type:"button",className:"feishu-login-close","data-close":!0,"aria-label":t("feishuLogin.close"),onClick:o,children:"x"}),(0,e.jsx)("h3",{className:"feishu-login-title",children:t("feishuLogin.title")}),(0,e.jsx)("p",{className:"feishu-login-hint","data-hint":!0,children:b}),(0,e.jsx)("div",{className:"feishu-login-qr","data-qr":!0,children:m?(0,e.jsx)("img",{className:"qr-image",src:m,alt:t("feishuLogin.qrAlt")}):null}),(0,e.jsx)("div",{className:"feishu-login-actions",children:(0,e.jsx)("button",{type:"button",className:"primary","data-retry":!0,hidden:!c,onClick:()=>{C()},children:t("feishuLogin.retry")})})]})})}function ue(a){let t=A(),{bot:o,cliState:u,patchBot:i}=a,l=bt(o,a.sessionFallback),[b,d]=(0,s.useState)(l),[m,n]=(0,s.useState)(typeof o.model=="string"?o.model:""),[c,p]=(0,s.useState)(null),[f,g]=(0,s.useState)(!1),[S,C]=(0,s.useState)(Ft(o)),[h,D]=(0,s.useState)(null),[x,k]=(0,s.useState)(!1);(0,s.useEffect)(()=>{d(bt(o,a.sessionFallback)),n(typeof o.model=="string"?o.model:""),C(Ft(o))},[o.agentSelectionKey,o.cliId,o.larkAppId,o.model,o.skillInjection,o.skillInjectionDefault,a.sessionFallback]);let w=ft(u.options,b),P=Pt(w,u),y=w?.gateway==="ttadk"&&w.acceptsModel===!1,j=y?t("botOnboarding.modelTtadkCocoPlaceholder"):w?.gateway==="ttadk"?t("botOnboarding.modelTtadkPlaceholder").replace("{model}",u.ttadkModelDefault):t("botDefaults.agentModelPlaceholder");function M(r){d(r);let I=ft(u.options,r),v=I?.gateway==="ttadk",R=v&&I.acceptsModel!==!1;n(v&&!R?"":R?N=>N.trim()?N:u.ttadkModelDefault:N=>N.trim()===u.ttadkModelDefault?"":N)}async function V(){p(null),g(!0);try{let r=await K("PUT",`/api/bots/${encodeURIComponent(o.larkAppId)}/agent`,{cliId:b,model:m});r.ok&&r.body.ok?(p(r.body.availabilityWarning?{text:`\u26A0\uFE0F ${r.body.availabilityWarning}`}:{text:`\u2713 ${t("botDefaults.agentSaved")}`,ok:!0}),i(o.larkAppId,{cliId:r.body.cliId,wrapperCli:r.body.wrapperCli??null,model:r.body.model??"",agentSelectionKey:r.body.selectionKey??b})):p({text:`\u2717 ${F(r)}`})}catch(r){p({text:`\u2717 ${O(r)}`})}finally{g(!1)}}async function U(){if(o.cliId==="riff")return!0;try{let r=await K("PUT",`/api/bots/${encodeURIComponent(o.larkAppId)}/agent`,{cliId:"riff",model:""});return r.ok&&r.body.ok?(i(o.larkAppId,{cliId:r.body.cliId,wrapperCli:r.body.wrapperCli??null,model:r.body.model??"",agentSelectionKey:r.body.selectionKey??"riff"}),!0):(p({text:`\u2717 ${F(r)}`}),!1)}catch(r){return p({text:`\u2717 ${O(r)}`}),!1}}async function q(r){C(r),D(null),k(!0);try{let I=await K("PUT",`/api/bots/${encodeURIComponent(o.larkAppId)}/skill-injection`,{skillInjection:r});I.ok&&I.body.ok?(D({text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0}),i(o.larkAppId,{skillInjection:I.body.skillInjection??null})):D({text:`\u2717 ${F(I)}`})}catch(I){D({text:`\u2717 ${O(I)}`})}finally{k(!1)}}let T=o.skillInjectionSupport==="dynamic"?"dynamic":o.skillInjectionSupport==="global"?"global":"none",H=[...u.options].sort((r,I)=>r.label.localeCompare(I.label,"en",{sensitivity:"base"})).map(r=>({value:r.id,label:r.available===!1?t("botDefaults.agentMissingOption",{label:r.label,command:r.command??r.id}):`${r.label}\uFF08${r.id}\uFF09`})),X=[{value:"dynamic",label:t("botDefaults.skillInjectionDynamic")}],Y=[{value:"dynamic",label:t("botDefaults.skillInjectionDynamicUnsupported"),disabled:!0},{value:"prompt",label:t("botDefaults.skillInjectionPrompt")},{value:"global",label:t("botDefaults.skillInjectionGlobal")},{value:"off",label:t("botDefaults.skillInjectionOff")}],Z=b==="riff";return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionAgent")}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)("span",{children:t("botDefaults.agentCli")}),(0,e.jsx)(z,{dataInput:"agentCliId",ariaLabel:t("botDefaults.agentCli"),value:b,disabled:f,options:H,searchable:!0,onChange:M}),w?.available===!1?(0,e.jsx)("small",{className:"hint-warn",children:t("botDefaults.agentMissingHint",{command:w.command??b})}):null]})}),!Z&&(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("label",{children:[(0,e.jsx)($,{help:t("botDefaults.agentHelp"),children:t("botDefaults.agentModel")}),(0,e.jsx)("input",{type:"text","data-input":"agentModel",list:`agent-model-suggestions-${o.larkAppId}`,placeholder:j,value:m,disabled:f||y,onChange:r=>n(r.currentTarget.value)}),(0,e.jsx)("datalist",{id:`agent-model-suggestions-${o.larkAppId}`,children:P.map(r=>(0,e.jsx)("option",{value:r},r))})]})}),Z&&(0,e.jsx)(Ae,{bot:o,patchBot:i,persistCliSelection:U}),!Z&&T==="dynamic"?(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)($,{help:t("botDefaults.skillInjectionHelpDynamic"),children:t("botDefaults.skillInjection")}),(0,e.jsx)(z,{dataInput:"skillInjection",ariaLabel:t("botDefaults.skillInjection"),value:"dynamic",disabled:!0,options:X,onChange:()=>{}})]})}):!Z&&T==="global"?(0,e.jsxs)("div",{className:"bd-row",children:[(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)($,{help:t("botDefaults.skillInjectionHelp"),children:t("botDefaults.skillInjection")}),(0,e.jsx)(z,{dataInput:"skillInjection",ariaLabel:t("botDefaults.skillInjection"),value:S,disabled:x,options:Y,onChange:r=>{q(r)}})]}),(0,e.jsx)("div",{className:"actions",children:(0,e.jsx)(W,{status:h,attr:{"data-skill-injection-status":""}})})]}):null,!Z&&(0,e.jsxs)("div",{className:"actions bd-section-actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-agent",disabled:f,onClick:()=>{V()},children:t("botDefaults.agentSave")}),(0,e.jsx)(W,{status:c,attr:{"data-agent-status":""}})]})]})}function Ft(a){let t=a.skillInjection==="global"||a.skillInjection==="prompt"||a.skillInjection==="off"?a.skillInjection:"",o=a.skillInjectionDefault==="global"||a.skillInjectionDefault==="off"?a.skillInjectionDefault:"prompt";return t||o}function de(a){let t=A(),{bot:o,patchBot:u}=a,i=Ut(o),[l,b]=(0,s.useState)(i.mode),[d,m]=(0,s.useState)(i.workingDir),[n,c]=(0,s.useState)(o.defaultWorkingDirAutoWorktree===!0),[p,f]=(0,s.useState)(null),[g,S]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let D=Ut(o);b(D.mode),m(D.workingDir),c(o.defaultWorkingDirAutoWorktree===!0)},[o.defaultOncall?.enabled,o.defaultOncall?.workingDir,o.defaultWorkingDir,o.defaultWorkingDirAutoWorktree]);async function C(){f(null);let D=d.trim();if(l!=="off"&&!D){f({text:t("botDefaults.required")});return}let x=l==="default"&&n;S(!0);try{let k=await K("PUT",`/api/bots/${encodeURIComponent(o.larkAppId)}/working-dir-mode`,{mode:l,workingDir:D,autoWorktree:x});if(k.ok&&k.body.ok){let w=k.body.resolvedPath?` \u2192 ${k.body.resolvedPath}`:"";f({text:`\u2713 ${t("botDefaults.workingDirSaved")}${w}`,ok:!0}),u(o.larkAppId,{defaultOncall:k.body.defaultOncall??o.defaultOncall,defaultWorkingDir:k.body.defaultWorkingDir??null,defaultWorkingDirAutoWorktree:k.body.defaultWorkingDirAutoWorktree===!0})}else f({text:`\u2717 ${F(k)}`})}catch(k){f({text:`\u2717 ${O(k)}`})}finally{S(!1)}}let h=[{value:"off",label:t("botDefaults.workingDirModeOff")},{value:"default",label:t("botDefaults.workingDirModeDefault")},{value:"oncall",label:t("botDefaults.workingDirModeOncall")}];return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionWorkingDir")}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)($,{help:t("botDefaults.workingDirModeHelp"),children:t("botDefaults.workingDirMode")}),(0,e.jsx)(z,{dataInput:"workingDirMode",ariaLabel:t("botDefaults.workingDirMode"),value:l,disabled:g,options:h,onChange:D=>b(D)})]})}),(0,e.jsx)("div",{className:"bd-row","data-wd-dir-row":!0,hidden:l==="off",children:(0,e.jsxs)("label",{children:[(0,e.jsx)("span",{children:t("botDefaults.workingDirField")}),(0,e.jsx)("input",{type:"text","data-input":"workingDir",placeholder:"e.g. /root/iserver/botmux",value:d,disabled:g,onChange:D=>m(D.currentTarget.value)})]})}),(0,e.jsxs)("label",{className:"toggle-row","data-wd-worktree-row":!0,hidden:l!=="default",children:[(0,e.jsx)("input",{type:"checkbox","data-input":"autoWorktree",checked:n,disabled:g,onChange:D=>c(D.currentTarget.checked)}),(0,e.jsx)("span",{className:"switch","aria-hidden":"true"}),(0,e.jsx)("span",{className:"toggle-tx",children:(0,e.jsx)("strong",{children:(0,e.jsx)($,{help:t("botDefaults.autoWorktreeHelp"),children:t("botDefaults.autoWorktree")})})})]}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-working-dir",disabled:g,onClick:()=>{C()},children:t("botDefaults.save")}),(0,e.jsx)(W,{status:p,attr:{"data-status":""}})]}),(0,e.jsx)(ce,{bot:o,putCardPref:a.putCardPref})]})}function Ut(a){let t=a.defaultOncall??{enabled:!1,workingDir:""};return{mode:t.enabled?"oncall":a.defaultWorkingDir?"default":"off",workingDir:a.defaultWorkingDir||t.workingDir||""}}function ce(a){let t=A(),{bot:o,putCardPref:u}=a,[i,l]=(0,s.useState)(o.autoStartOnGroupJoin===!0),[b,d]=(0,s.useState)(o.autoStartOnNewTopic===!0),[m,n]=(0,s.useState)(typeof o.autoStartOnGroupJoinPrompt=="string"?o.autoStartOnGroupJoinPrompt:""),[c,p]=(0,s.useState)(null),[f,g]=(0,s.useState)(null);(0,s.useEffect)(()=>{l(o.autoStartOnGroupJoin===!0),d(o.autoStartOnNewTopic===!0),n(typeof o.autoStartOnGroupJoinPrompt=="string"?o.autoStartOnGroupJoinPrompt:"")},[o.autoStartOnGroupJoin,o.autoStartOnGroupJoinPrompt,o.autoStartOnNewTopic]);async function S(C,h){g(h),p(null);try{let D=await u(C);p(D.ok?{text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0}:{text:`\u2717 ${F(D)}`})}catch(D){p({text:`\u2717 ${O(D)}`})}finally{g(null)}}return(0,e.jsxs)("div",{className:"bd-subsection",children:[(0,e.jsx)("h4",{className:"bd-subsection-title",children:t("botDefaults.sectionAutoStart")}),(0,e.jsx)(Q,{checked:i,disabled:f==="join",dataAction:"toggle-auto-join",title:t("botDefaults.autoStartJoin"),help:t("botDefaults.autoStartJoinHelp"),onChange:C=>{l(C),S({autoStartOnGroupJoin:C},"join")}}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("label",{children:[(0,e.jsx)("span",{children:t("botDefaults.autoStartJoinPrompt")}),(0,e.jsx)("textarea",{"data-input":"autoJoinPrompt",rows:3,placeholder:t("botDefaults.autoStartJoinPromptPlaceholder"),value:m,onChange:C=>n(C.currentTarget.value)})]})}),(0,e.jsx)(Q,{checked:b,disabled:f==="topic",dataAction:"toggle-auto-topic",title:t("botDefaults.autoStartTopic"),help:t("botDefaults.autoStartTopicHelp"),onChange:C=>{d(C),S({autoStartOnNewTopic:C},"topic")}}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-auto-join-prompt",disabled:f==="prompt",onClick:()=>{S({autoStartOnGroupJoinPrompt:m},"prompt")},children:t("botDefaults.autoStartJoinPromptSave")}),(0,e.jsx)(W,{status:c,attr:{"data-auto-start-status":""}})]})]})}function be(a){let t=A(),{bot:o,patchBot:u}=a,[i,l]=(0,s.useState)(o.sandbox===!0),[b,d]=(0,s.useState)(null),[m,n]=(0,s.useState)(!1);(0,s.useEffect)(()=>l(o.sandbox===!0),[o.sandbox]);async function c(f){l(f),d(null),n(!0);try{let g=await K("PUT",`/api/bots/${encodeURIComponent(o.larkAppId)}/sandbox`,{enabled:f});g.ok&&g.body.ok?(d({text:`\u2713 ${t("botDefaults.sandboxSaved")}`,ok:!0}),u(o.larkAppId,{sandbox:g.body.sandbox===!0})):(d({text:`\u2717 ${F(g)}`}),l(!f))}catch(g){d({text:`\u2717 ${O(g)}`}),l(!f)}finally{n(!1)}}let p=o.readIsolationSupported===!0;return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionSandbox")}),(0,e.jsx)(Q,{checked:i,disabled:m,dataAction:"toggle-sandbox",title:t("botDefaults.sandboxToggle"),help:t("botDefaults.sandboxHelp"),onChange:f=>{c(f)}}),(0,e.jsx)("p",{className:"bd-section-note","data-read-iso-capability":p?"yes":"no",children:p?`\uFF0B ${t("botDefaults.sandboxReadIsoOn")}`:t("botDefaults.sandboxReadIsoOff")}),(0,e.jsx)("div",{className:"actions",children:(0,e.jsx)(W,{status:b,attr:{"data-sandbox-status":""}})})]})}var Gt={readWrite:0,readOnly:1,deny:2};function Wt(a,t,o){let u=c=>c==="~"||c.startsWith("~/")?o.replace(/\/+$/,"")+c.slice(1):c,i=c=>u(c).replace(/\/+$/,"")||"/",l=i(t),b=(c,p)=>{let f=i(c),g=i(p);return f===g||g.startsWith(f==="/"?"/":f+"/")},d=c=>i(c)==="/"?0:i(c).split("/").filter(Boolean).length,m,n=(c,p)=>{if(!b(p,l))return;let f=d(p);(!m||f>m.ruleDepth||f===m.ruleDepth&&Gt[c]>Gt[m.access])&&(m={access:c,ruleDepth:f,rule:p})};for(let c of a.readWrite)n("readWrite",c);for(let c of a.readOnly)n("readOnly",c);for(let c of a.deny)n("deny",c);return m?{access:m.access,rule:m.rule}:{access:"none"}}function Ht(a){let t=(a??"").toLowerCase();return t.includes("claude")?{labelKey:"botDefaults.sbxPathsRecommendClaude",tiers:{readWrite:[],readOnly:["~/.claude"],deny:[]}}:t.includes("codex")?{labelKey:"botDefaults.sbxPathsRecommendCodex",tiers:{readWrite:[],readOnly:["~/.codex"],deny:[]}}:t.includes("gemini")?{labelKey:"botDefaults.sbxPathsRecommendGemini",tiers:{readWrite:[],readOnly:["~/.gemini"],deny:[]}}:{labelKey:"botDefaults.sbxPathsRecommendGeneric",tiers:{readWrite:[],readOnly:[],deny:[]}}}function _t(){return{readWrite:[],readOnly:[],deny:[]}}function st(a){return a?{readWrite:[...a.readWrite??[]],readOnly:[...a.readOnly??[]],deny:[...a.deny??[]]}:_t()}function fe(a,t){let o=u=>[...u].sort().join(`
3
- `);return o(a.readWrite)===o(t.readWrite)&&o(a.readOnly)===o(t.readOnly)&&o(a.deny)===o(t.deny)}function ut(a){let t=[];for(let o of a.readWrite)t.push(`rw ${o}`);for(let o of a.readOnly)t.push(`ro ${o}`);for(let o of a.deny)t.push(`deny ${o}`);return t.join(`
4
- `)}function pe(a){let t=_t();for(let o of a.split(`
5
- `)){let u=o.trim();if(!u||u.startsWith("#"))continue;let i=/^(\S+)\s+(.+)$/.exec(u);if(!i)continue;let l=i[1].toLowerCase(),b=i[2].trim();l==="rw"||l==="readwrite"||l==="rw:"?t.readWrite.push(b):l==="ro"||l==="readonly"||l==="ro:"?t.readOnly.push(b):(l==="deny"||l==="-"||l==="deny:")&&t.deny.push(b)}return t}function me(a){let t=A(),{bot:o,patchBot:u}=a,[i,l]=(0,s.useState)(()=>st(o.sandboxPaths)),[b,d]=(0,s.useState)(()=>ut(st(o.sandboxPaths))),[m,n]=(0,s.useState)(!1),[c,p]=(0,s.useState)(null),[f,g]=(0,s.useState)(!1),[S,C]=(0,s.useState)(""),[h,D]=(0,s.useState)({}),[x,k]=(0,s.useState)(new Set),[w,P]=(0,s.useState)([]),[y,j]=(0,s.useState)("~"),M=(0,s.useMemo)(()=>st(o.sandboxPaths),[o.sandboxPaths]);(0,s.useEffect)(()=>{l(st(o.sandboxPaths)),d(ut(st(o.sandboxPaths)))},[o.sandboxPaths]);let V=!fe(i,M),U=(0,s.useCallback)(async v=>{try{let R=v?`?path=${encodeURIComponent(v)}`:"",B=await(await fetch(`/api/fs/list${R}`)).json();if(!B.ok)return;v?D(J=>({...J,[v]:B.entries.map(L=>({name:L.name,path:L.path}))})):(P(B.entries.map(J=>({name:J.name,path:J.path}))),typeof B.home=="string"&&B.home.startsWith("/")&&j(B.home))}catch{}},[]);(0,s.useEffect)(()=>{!m&&w.length===0&&U("")},[m,w.length,U]);let q=(0,s.useCallback)(v=>{let R=v.replace(/\/+$/,"")||"/";if(i.readWrite.some(N=>(N.replace(/\/+$/,"")||"/")===R))return"readWrite";if(i.readOnly.some(N=>(N.replace(/\/+$/,"")||"/")===R))return"readOnly";if(i.deny.some(N=>(N.replace(/\/+$/,"")||"/")===R))return"deny"},[i]),T=(0,s.useCallback)(v=>{p(null);let R=v.replace(/\/+$/,"")||"/",N=q(v),B=N===void 0?"readWrite":N==="readWrite"?"readOnly":N==="readOnly"?"deny":void 0;l(J=>{let L=_=>_.filter(G=>(G.replace(/\/+$/,"")||"/")!==R),E={readWrite:L(J.readWrite),readOnly:L(J.readOnly),deny:L(J.deny)};return B&&E[B].push(v),d(ut(E)),E})},[q]);function H(){let v=Ht(o.cliId);p(null),l(R=>{let N=(J,L)=>[...new Set([...J,...L])],B={readWrite:N(R.readWrite,v.tiers.readWrite),readOnly:N(R.readOnly,v.tiers.readOnly),deny:N(R.deny,v.tiers.deny)};return d(ut(B)),B})}function X(v){d(v),l(pe(v)),p(null)}async function Y(){g(!0),p(null);try{let v=await K("PUT",`/api/bots/${encodeURIComponent(o.larkAppId)}/sandbox-paths`,i);v.ok&&v.body.ok?(p({text:`\u2713 ${t("botDefaults.sbxPathsSaved")}`,ok:!0}),u(o.larkAppId,{sandboxPaths:v.body.sandboxPaths??{readWrite:[],readOnly:[],deny:[]}})):p({text:`\u2717 ${F(v)}`})}catch(v){p({text:`\u2717 ${O(v)}`})}finally{g(!1)}}let Z=v=>t(v==="readWrite"?"botDefaults.sbxRw":v==="readOnly"?"botDefaults.sbxRo":v==="deny"?"botDefaults.sbxDeny":"botDefaults.sbxNone");function r(v){let{name:R,path:N,depth:B}=v,J=x.has(N),L=q(N),E=Wt(i,N,y),_=h[N];return(0,e.jsxs)("div",{className:"bd-sbx-node",children:[(0,e.jsxs)("div",{className:"bd-sbx-row",style:{paddingLeft:B*16},children:[(0,e.jsx)("span",{className:"bd-sbx-twisty",onClick:()=>{k(G=>{let tt=new Set(G);return tt.has(N)?tt.delete(N):tt.add(N),tt}),_||U(N)},children:J?"\u25BE":"\u25B8"}),(0,e.jsx)("span",{className:"bd-sbx-name",title:N,children:R}),(0,e.jsx)("button",{type:"button",className:`bd-sbx-state bd-sbx-state-${L??"inherit"}`,"data-action":"cycle-sandbox-path","data-path":N,title:L?void 0:`${t("botDefaults.sbxInherit")}: ${Z(E.access)}`,onClick:()=>T(N),children:L?Z(L):`\u21B3 ${Z(E.access)}`})]}),J&&(0,e.jsxs)("div",{className:"bd-sbx-kids",children:[_?.map(G=>(0,e.jsx)(r,{name:G.name,path:G.path,depth:B+1},G.path)),_&&_.length===0&&(0,e.jsx)("div",{className:"bd-sbx-empty",style:{paddingLeft:(B+1)*16+20},children:t("botDefaults.sbxNoSubdirs")})]})]})}let I=S.trim()?Wt(i,S.trim(),y):null;return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionSandboxPaths")}),(0,e.jsx)("p",{className:"bd-section-note",children:t("botDefaults.sbxPathsHelp")}),(0,e.jsxs)("div",{className:"actions",style:{gap:8,flexWrap:"wrap"},children:[(0,e.jsx)("button",{type:"button",className:"bd-btn","data-action":"apply-sandbox-recommended",onClick:H,children:t(Ht(o.cliId).labelKey)}),(0,e.jsx)("button",{type:"button",className:"bd-btn",onClick:()=>n(v=>!v),children:t(m?"botDefaults.sbxPathsTreeMode":"botDefaults.sbxPathsTextMode")})]}),m?(0,e.jsx)("textarea",{className:"bd-sbx-text","data-field":"sandbox-paths-text",rows:8,value:b,spellCheck:!1,placeholder:`rw ~/my-data
6
- ro ~/reference-repos
7
- deny ~/my-data/secrets`,onChange:v=>X(v.target.value)}):(0,e.jsx)("div",{className:"bd-sbx-tree","data-field":"sandbox-paths-tree",children:w.map(v=>(0,e.jsx)(r,{name:v.name,path:v.path,depth:0},v.path))}),(0,e.jsxs)("div",{className:"bd-sbx-tester",children:[(0,e.jsx)("input",{className:"bd-sbx-test-input","data-field":"sandbox-path-test",placeholder:t("botDefaults.sbxTestPlaceholder"),value:S,onChange:v=>C(v.target.value)}),I&&(0,e.jsxs)("span",{className:`bd-sbx-test-out bd-sbx-state-${I.access}`,"data-test-access":I.access,children:[Z(I.access),I.rule?` \u2190 ${I.rule}`:""]})]}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"bd-btn bd-btn-primary","data-action":"save-sandbox-paths",disabled:f||!V,onClick:()=>{Y()},children:t("botDefaults.sbxPathsSave")}),(0,e.jsx)(W,{status:c,attr:{"data-sandbox-paths-status":""}})]})]})}var ge=[{value:"",labelKey:"botDefaults.backendAuto"},{value:"tmux",labelKey:"botDefaults.backendTmux"},{value:"herdr",labelKey:"botDefaults.backendHerdr"},{value:"zellij",labelKey:"botDefaults.backendZellij"},{value:"pty",labelKey:"botDefaults.backendPty"}];function ye(a){let t=A(),{bot:o,patchBot:u}=a,[i,l]=(0,s.useState)(typeof o.backendType=="string"?o.backendType:""),[b,d]=(0,s.useState)(null),[m,n]=(0,s.useState)(!1);(0,s.useEffect)(()=>l(typeof o.backendType=="string"?o.backendType:""),[o.backendType]);let c=(0,s.useMemo)(()=>ge.map(f=>({value:f.value,label:t(f.labelKey)})),[t]);async function p(f){let g=i;l(f),d(null),n(!0);try{let S=await K("PUT",`/api/bots/${encodeURIComponent(o.larkAppId)}/backend-type`,{backendType:f});S.ok&&S.body.ok?(d({text:`\u2713 ${t("botDefaults.backendSaved")}`,ok:!0}),u(o.larkAppId,{backendType:typeof S.body.backendType=="string"?S.body.backendType:null})):(d({text:`\u2717 ${F(S)}`}),l(g))}catch(S){d({text:`\u2717 ${O(S)}`}),l(g)}finally{n(!1)}}return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionBackend")}),(0,e.jsxs)("div",{className:"bd-row",children:[(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)($,{help:t("botDefaults.backendHelp"),children:t("botDefaults.backendLabel")}),(0,e.jsx)(z,{dataInput:"backendType",ariaLabel:t("botDefaults.backendLabel"),value:i,disabled:m,options:c,onChange:f=>{p(f)}})]}),(0,e.jsx)("div",{className:"actions",children:(0,e.jsx)(W,{status:b,attr:{"data-backend-status":""}})})]})]})}function he(a){let t=A(),{bot:o,patchBot:u}=a,[i,l]=(0,s.useState)(typeof o.teamRole=="string"),[b,d]=(0,s.useState)(typeof o.teamRole=="string"?o.teamRole:""),[m,n]=(0,s.useState)(null),[c,p]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let g=!0,S=`/api/team/local-bots/${encodeURIComponent(o.larkAppId)}/role`;return typeof o.teamRole=="string"?(l(!0),d(o.teamRole),()=>{g=!1}):(n(null),l(!1),d(""),(async()=>{try{let C=await fetch(S),h=await C.json().catch(()=>({}));if(!g)return;if(C.ok&&h.ok){let D=h.role??"";d(D),l(!0),u(o.larkAppId,{teamRole:D})}else n({text:`\u2717 ${t("botDefaults.roleLoadErr")}: ${h.error??C.status}`})}catch(C){g&&n({text:`\u2717 ${t("botDefaults.roleLoadErr")}: ${O(C)}`})}})(),()=>{g=!1})},[o.larkAppId,o.teamRole,u,t]);async function f(g,S){if(i){n(null),p(!0);try{let C=await K("PUT",`/api/team/local-bots/${encodeURIComponent(o.larkAppId)}/role`,{role:g});if(C.ok&&C.body.ok){let h=g.trim();d(h),u(o.larkAppId,{teamRole:h}),n({text:`\u2713 ${t(S?"botDefaults.roleDeleted":"botDefaults.roleSaved")}`,ok:!0})}else n({text:`\u2717 ${F(C)}`})}catch(C){n({text:`\u2717 ${O(C)}`})}finally{p(!1)}}}return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:(0,e.jsx)($,{help:t("botDefaults.roleHelp"),children:t("botDefaults.sectionRole")})}),(0,e.jsx)("textarea",{"data-input":"teamRole",rows:6,placeholder:t("botDefaults.rolePlaceholder"),disabled:!i||c,value:b,onChange:g=>d(g.currentTarget.value)}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-role",disabled:!i||c,onClick:()=>{f(b,b.trim()==="")},children:t("botDefaults.roleSave")}),(0,e.jsx)(W,{status:m,attr:{"data-role-status":""}})]}),(0,e.jsx)(ve,{appId:o.larkAppId})]})}function ve(a){let t=A(),[o,u]=(0,s.useState)({loaded:!1,loading:!0,items:[]});(0,s.useEffect)(()=>{let b=!0;return u({loaded:!1,loading:!0,items:[]}),(async()=>{try{let d=await fetch("/api/role-profiles"),m=await d.json().catch(()=>({}));if(!b)return;if(!d.ok)throw new Error(m?.error??String(d.status));let c=(Array.isArray(m.profiles)?m.profiles:[]).filter(p=>(p.botEntries??[]).some(f=>f?.larkAppId===a.appId&&f?.hasEntry)).map(p=>({profileId:String(p.profileId)}));u({loaded:!0,loading:!1,items:c})}catch(d){b&&u({loaded:!0,loading:!1,error:O(d),items:[]})}})(),()=>{b=!1}},[a.appId]);async function i(b){let d=o.items.find(m=>m.profileId===b);if(!(!d||d.loaded||d.loading)){u(m=>({...m,items:m.items.map(n=>n.profileId===b?{...n,loading:!0}:n)}));try{let m=await fetch(`/api/role-profiles/${encodeURIComponent(b)}/${encodeURIComponent(a.appId)}`),n=await m.json().catch(()=>({}));if(!m.ok)throw new Error(n?.error??String(m.status));u(c=>({...c,items:c.items.map(p=>p.profileId===b?{...p,loading:!1,loaded:!0,content:n?.hasEntry?String(n.content??""):""}:p)}))}catch(m){u(n=>({...n,items:n.items.map(c=>c.profileId===b?{...c,loading:!1,error:O(m)}:c)}))}}}let l;return o.loading?l=(0,e.jsx)(lt,{label:t("common.loading"),compact:!0}):o.error?l=(0,e.jsx)("p",{className:"hint-warn-inline",children:t("botDefaults.profileRolesLoadFailed",{error:o.error})}):o.items.length===0?l=(0,e.jsx)("p",{className:"empty",children:t("botDefaults.profileRolesEmpty")}):l=o.items.map(b=>(0,e.jsxs)("details",{className:"bd-profile-role-entry","data-profile-id":b.profileId,onToggle:d=>{d.currentTarget.open&&i(b.profileId)},children:[(0,e.jsx)("summary",{children:(0,e.jsx)("span",{className:"bd-profile-role-id",children:b.profileId})}),(0,e.jsx)("div",{className:"bd-profile-role-content","data-profile-role-body":b.profileId,children:b.loading?(0,e.jsx)(lt,{label:t("common.loading"),compact:!0}):b.error?(0,e.jsx)("p",{className:"hint-warn-inline",children:t("botDefaults.profileRoleDetailLoadFailed",{error:b.error})}):b.loaded?(0,e.jsx)("pre",{children:b.content??""}):(0,e.jsx)("p",{className:"empty",children:t("botDefaults.profileRoleClickToLoad")})})]},b.profileId)),(0,e.jsxs)("div",{className:"bd-profile-roles","data-profile-roles":!0,children:[(0,e.jsx)("h4",{className:"bd-subsection-title",children:(0,e.jsx)($,{help:t("botDefaults.profileRolesHelp"),children:t("botDefaults.profileRoles")})}),(0,e.jsx)("div",{className:"bd-profile-role-list","data-profile-role-list":!0,children:l})]})}function De(a){let t=A(),{bot:o,putCardPref:u}=a,[i,l]=(0,s.useState)(o.disableStreamingCard===!0),[b,d]=(0,s.useState)(o.silentTurnReactions===!0),[m,n]=(0,s.useState)(o.writableTerminalLinkInCard===!0),[c,p]=(0,s.useState)(o.privateCard===!0),[f,g]=(0,s.useState)(null),[S,C]=(0,s.useState)(null);(0,s.useEffect)(()=>{l(o.disableStreamingCard===!0),d(o.silentTurnReactions===!0),n(o.writableTerminalLinkInCard===!0),p(o.privateCard===!0)},[o.disableStreamingCard,o.privateCard,o.silentTurnReactions,o.writableTerminalLinkInCard]);async function h(D,x){C(x),g(null);try{let k=await u(D);g(k.ok?{text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0}:{text:`\u2717 ${F(k)}`})}catch(k){g({text:`\u2717 ${O(k)}`})}finally{C(null)}}return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionCard")}),(0,e.jsxs)("div",{className:"bd-toggle-grid bd-card-behavior-grid",children:[(0,e.jsx)(Q,{checked:i,disabled:S==="streaming",dataAction:"toggle-disable-streaming",title:t("botDefaults.disableStreaming"),help:t("botDefaults.disableStreamingHelp"),onChange:D=>{l(D),h({disableStreamingCard:D},"streaming")}}),(0,e.jsx)(Q,{checked:b,disabled:!i||S==="silent",dataAction:"toggle-silent-reactions",title:t("botDefaults.silentTurnReactions"),help:t("botDefaults.silentTurnReactionsHelp"),onChange:D=>{d(D),h({silentTurnReactions:D},"silent")}}),(0,e.jsx)(Q,{checked:m,disabled:i||S==="writable",dataAction:"toggle-writable-link",title:t("botDefaults.writableLink"),help:t("botDefaults.writableLinkHelp"),onChange:D=>{n(D),h({writableTerminalLinkInCard:D},"writable")}}),(0,e.jsx)(Q,{checked:c,disabled:S==="private",dataAction:"toggle-private-card",title:t("botDefaults.privateCard"),help:t("botDefaults.privateCardHelp"),onChange:D=>{p(D),h({privateCard:D},"private")}})]}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("small",{"data-card-pref-moot":!0,className:"hint-warn-inline",hidden:!i,children:t("botDefaults.writableLinkMoot")}),(0,e.jsx)(W,{status:f,attr:{"data-card-pref-status":""}})]})]})}function ke(a){let t=A(),[o,u]=(0,s.useState)(a.bot.codexAppCleanInput===!0),[i,l]=(0,s.useState)(null),[b,d]=(0,s.useState)(!1);(0,s.useEffect)(()=>u(a.bot.codexAppCleanInput===!0),[a.bot.codexAppCleanInput]);async function m(n){let c=o;u(n),d(!0),l(null);try{let p=await a.putCardPref({codexAppCleanInput:n});p.ok?l({text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0}):(u(c),l({text:`\u2717 ${F(p)}`}))}catch(p){u(c),l({text:`\u2717 ${O(p)}`})}finally{d(!1)}}return(0,e.jsxs)("section",{className:"bd-section","data-codex-app-display":!0,children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionCodexAppDisplay")}),(0,e.jsx)(Q,{checked:o,disabled:b,dataAction:"toggle-codex-app-clean-input",title:t("botDefaults.codexAppCleanInput"),help:t("botDefaults.codexAppCleanInputHelp"),onChange:n=>{m(n)}}),(0,e.jsx)("small",{className:"bd-section-note",children:t("botDefaults.codexAppCleanInputCompat")}),(0,e.jsx)("div",{className:"actions",children:(0,e.jsx)(W,{status:i,attr:{"data-codex-app-clean-input-status":""}})})]})}function Se(a){let t=A(),[o,u]=(0,s.useState)(a.bot.botToBotSameDir!==!1),[i,l]=(0,s.useState)(null),[b,d]=(0,s.useState)(!1);(0,s.useEffect)(()=>u(a.bot.botToBotSameDir!==!1),[a.bot.botToBotSameDir]);async function m(n){u(n),d(!0),l(null);try{let c=await a.putCardPref({botToBotSameDir:n});l(c.ok?{text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0}:{text:`\u2717 ${F(c)}`})}catch(c){l({text:`\u2717 ${O(c)}`})}finally{d(!1)}}return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionCrossBot")}),(0,e.jsx)(Q,{checked:o,disabled:b,dataAction:"toggle-cross-bot-samedir",title:t("botDefaults.botToBotSameDir"),help:t("botDefaults.botToBotSameDirHelp"),onChange:n=>{m(n)}}),(0,e.jsx)("div",{className:"actions",children:(0,e.jsx)(W,{status:i,attr:{"data-crossbot-status":""}})})]})}function Ce(a){let t=A(),o=mt(a.bot),[u,i]=(0,s.useState)(String(o.limit)),[l,b]=(0,s.useState)(String(o.sinceHours)),[d,m]=(0,s.useState)(null),[n,c]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let f=mt(a.bot);i(String(f.limit)),b(String(f.sinceHours))},[a.bot.summaryRange?.limit,a.bot.summaryRange?.sinceHours]);async function p(){m(null);let f=Lt(u,50),g=Lt(l,24);if(f==null||g==null){m({text:`\u2717 ${t("botDefaults.summaryNumberInvalid")}`});return}c(!0);try{let S=await K("PUT",`/api/bots/${encodeURIComponent(a.bot.larkAppId)}/summary-range`,{limit:f,sinceHours:g});if(S.ok&&S.body.ok){let C=S.body.summaryRange??{limit:f,sinceHours:g},h=mt({...a.bot,summaryRange:C});i(String(h.limit)),b(String(h.sinceHours)),a.patchBot(a.bot.larkAppId,{summaryRange:C}),m({text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0})}else m({text:`\u2717 ${F(S)}`})}catch(S){m({text:`\u2717 ${O(S)}`})}finally{c(!1)}}return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:(0,e.jsx)($,{help:t("botDefaults.summaryLimitHelp"),children:t("botDefaults.sectionSummaryTrigger")})}),(0,e.jsxs)("div",{className:"bd-row bd-summary-limits",children:[(0,e.jsxs)("label",{children:[(0,e.jsx)("span",{children:t("botDefaults.summaryLimit")}),(0,e.jsx)("input",{type:"number",min:0,step:1,"data-input":"summaryLimit",value:u,disabled:n,onChange:f=>i(f.currentTarget.value)})]}),(0,e.jsxs)("label",{children:[(0,e.jsx)("span",{children:t("botDefaults.summarySinceHours")}),(0,e.jsx)("input",{type:"number",min:0,step:1,"data-input":"summarySinceHours",value:l,disabled:n,onChange:f=>b(f.currentTarget.value)})]})]}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-summary-trigger",disabled:n,onClick:()=>{p()},children:t("botDefaults.summarySave")}),(0,e.jsx)(W,{status:d,attr:{"data-summary-trigger-status":""}})]})]})}function mt(a){let t=a.summaryRange??{limit:50,sinceHours:24};return{limit:Number.isInteger(t.limit)&&Number(t.limit)>=0?Number(t.limit):50,sinceHours:Number.isInteger(t.sinceHours)&&Number(t.sinceHours)>=0?Number(t.sinceHours):24}}function xe(a){let t=A(),[o,u]=(0,s.useState)(a.bot.p2pMode==="chat"?"chat":"thread"),[i,l]=(0,s.useState)(jt(a.bot)),[b,d]=(0,s.useState)(Et(a.bot)),[m,n]=(0,s.useState)(a.bot.docSubscribeDefaultMode==="all"?"all":"mention-only"),[c,p]=(0,s.useState)(null),[f,g]=(0,s.useState)(null),[S,C]=(0,s.useState)(null),[h,D]=(0,s.useState)(null),[x,k]=(0,s.useState)(null);(0,s.useEffect)(()=>{u(a.bot.p2pMode==="chat"?"chat":"thread"),l(jt(a.bot)),d(Et(a.bot)),n(a.bot.docSubscribeDefaultMode==="all"?"all":"mention-only")},[a.bot.docSubscribeDefaultMode,a.bot.p2pMode,a.bot.regularGroupMentionMode,a.bot.regularGroupReplyMode]);async function w(U){let q=U==="chat"?"chat":"thread";u(q),p("p2p"),g(null);try{let T=await K("PUT",`/api/bots/${encodeURIComponent(a.bot.larkAppId)}/p2p-mode`,{p2pMode:q});T.ok&&T.body.ok?(a.patchBot(a.bot.larkAppId,{p2pMode:T.body.p2pMode==="chat"?"chat":"thread"}),g({text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0})):g({text:`\u2717 ${F(T)}`})}catch(T){g({text:`\u2717 ${O(T)}`})}finally{p(null)}}async function P(U,q,T){p(U),T(null);try{let H=await a.putCardPref(q);T(H.ok?{text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0}:{text:`\u2717 ${F(H)}`})}catch(H){T({text:`\u2717 ${O(H)}`})}finally{p(null)}}let y=[{value:"thread",label:t("botDefaults.p2pThread")},{value:"chat",label:t("botDefaults.p2pChat")}],j=[{value:"chat",label:t("botDefaults.regularGroupModeChat")},{value:"chat-topic",label:t("botDefaults.regularGroupModeChatTopic")},{value:"new-topic",label:t("botDefaults.regularGroupModeNewTopic")},{value:"shared",label:t("botDefaults.regularGroupModeShared")}],M=[{value:"always",label:t("botDefaults.mentionModeAlways")},{value:"topic",label:t("botDefaults.mentionModeTopic")},{value:"never",label:t("botDefaults.mentionModeNever")},{value:"ambient",label:t("botDefaults.mentionModeAmbient")}],V=[{value:"mention-only",label:t("botDefaults.docSubscribeModeMention")},{value:"all",label:t("botDefaults.docSubscribeModeAll")}];return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionSessionMode")}),(0,e.jsxs)("div",{className:"bd-row",children:[(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)($,{help:t("botDefaults.p2pHelp"),children:t("botDefaults.p2pMode")}),(0,e.jsx)(z,{dataInput:"p2pMode",ariaLabel:t("botDefaults.p2pMode"),value:o,disabled:c==="p2p",options:y,onChange:U=>{w(U)}})]}),(0,e.jsx)("div",{className:"actions",children:(0,e.jsx)(W,{status:f,attr:{"data-p2p-status":""}})})]}),(0,e.jsxs)("div",{className:"bd-row",children:[(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)($,{help:t("botDefaults.regularGroupModeHelp"),children:t("botDefaults.regularGroupMode")}),(0,e.jsx)(z,{dataInput:"regularGroupMode",ariaLabel:t("botDefaults.regularGroupMode"),value:i,disabled:c==="regular",options:j,onChange:U=>{l(U),P("regular",{regularGroupReplyMode:U},C)}})]}),(0,e.jsx)("div",{className:"actions",children:(0,e.jsx)(W,{status:S,attr:{"data-regular-group-status":""}})})]}),(0,e.jsxs)("div",{className:"bd-row",children:[(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)($,{help:t("botDefaults.mentionModeHelp"),children:t("botDefaults.mentionMode")}),(0,e.jsx)(z,{dataInput:"regularGroupMentionMode",ariaLabel:t("botDefaults.mentionMode"),value:b,disabled:c==="mention",options:M,onChange:U=>{d(U),P("mention",{regularGroupMentionMode:U},D)}})]}),(0,e.jsx)("div",{className:"actions",children:(0,e.jsx)(W,{status:h,attr:{"data-mention-mode-status":""}})})]}),(0,e.jsxs)("div",{className:"bd-row",children:[(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)($,{help:t("botDefaults.docSubscribeModeHelp"),children:t("botDefaults.docSubscribeMode")}),(0,e.jsx)(z,{dataInput:"docSubscribeDefaultMode",ariaLabel:t("botDefaults.docSubscribeMode"),value:m,disabled:c==="doc",options:V,onChange:U=>{n(U),P("doc",{docSubscribeDefaultMode:U},k)}})]}),(0,e.jsx)("div",{className:"actions",children:(0,e.jsx)(W,{status:x,attr:{"data-doc-subscribe-mode-status":""}})})]})]})}function Ne(a){let t=A(),o=a.bot.substituteMode??null,[u,i]=(0,s.useState)(o?.enabled===!0);function l(r){switch(r){case"cross_app_open_id":return t("botDefaults.substituteReasonCrossAppOpenId");case"not_visible":return t("botDefaults.substituteReasonNotVisible");case"resolve_failed":return t("botDefaults.substituteReasonResolveFailed");case"unresolvable":return t("botDefaults.substituteReasonUnresolvable");default:return t("botDefaults.substituteUnresolved")}}let[b,d]=(0,s.useState)(o?.disclosure==="none"?"none":"prefix"),[m,n]=(0,s.useState)(o?.replyMode==="quote"?"quote":"thread"),[c,p]=(0,s.useState)(o?.disableControlCard!==!0),[f,g]=(0,s.useState)(()=>pt(o?.chats)),[S,C]=(0,s.useState)(o?.topicGroups!==!1),[h,D]=(0,s.useState)(o?.topicActiveSessionTrigger!==!1),[x,k]=(0,s.useState)(null),[w,P]=(0,s.useState)(!1),y=(0,s.useRef)(0),j=(0,s.useRef)(!1);function M(r){let I=zt(r);return{key:++y.current,idField:I,idValue:r?.[I]??"",name:r?.name??"",persisted:r?{...r}:{},originalIdField:r?I:void 0,resolution:r?.name||r?.avatarUrl?{ok:!0,name:r.name,avatarUrl:r.avatarUrl}:void 0}}let V=(0,s.useRef)(new Map);async function U(r){let I=(V.current.get(r)??0)+1;V.current.set(r,I);let v=()=>V.current.get(r)===I;T(R=>R.map(N=>N.key===r?{...N,resolving:!0}:N));try{let R=q.find(L=>L.key===r);if(!R)return;let N=R.idValue.trim();if(!N){T(L=>L.map(E=>E.key===r?{...E,resolving:!1,resolution:void 0}:E));return}let B={[R.idField]:N};R.name.trim()&&(B.name=R.name.trim());let J=await At(a.bot.larkAppId,B);if(!v())return;T(L=>L.map(E=>{if(E.key!==r)return E;if(!J.ok)return{...E,resolving:!1,resolution:{ok:!1}};let _=J.resolution;if(_?.ok===!0){if(!_.openId)return{...E,resolving:!1,resolution:void 0};let G={...E.persisted};return G.openId=_.openId,_.name&&(G.name=_.name),_.avatarUrl&&(G.avatarUrl=_.avatarUrl),{...E,name:_.name??E.name,persisted:G,resolving:!1,resolution:{ok:!0,name:_.name,avatarUrl:_.avatarUrl}}}return{...E,resolving:!1,resolution:{ok:!1,reason:_?.reason}}}))}catch{if(!v())return;T(R=>R.map(N=>N.key===r?{...N,resolving:!1,resolution:{ok:!1}}:N))}}let[q,T]=(0,s.useState)(()=>{let r=o?.targets??[];return r.length?r.map(I=>M(I)):[M()]});(0,s.useEffect)(()=>{if(j.current){j.current=!1;return}let r=a.bot.substituteMode??null;i(r?.enabled===!0),d(r?.disclosure==="none"?"none":"prefix"),n(r?.replyMode==="quote"?"quote":"thread"),p(r?.disableControlCard!==!0),g(pt(r?.chats)),C(r?.topicGroups!==!1),D(r?.topicActiveSessionTrigger!==!1);let I=r?.targets??[];T(I.length?I.map(v=>M(v)):[M()])},[a.bot.larkAppId,a.bot.substituteMode]);async function H(r){P(!0),k(null);try{let I=await K("PUT",`/api/bots/${encodeURIComponent(a.bot.larkAppId)}/substitute-mode`,r);if(I.ok&&I.body.ok){let v=I.body.substituteMode&&typeof I.body.substituteMode=="object"?I.body.substituteMode:null,R=Array.isArray(I.body?.resolution)?I.body.resolution:[],N=R.filter(B=>B?.ok===!1).map(B=>String(B.input??"").trim()).filter(Boolean);if(i(v?.enabled===!0),d(v?.disclosure==="none"?"none":"prefix"),n(v?.replyMode==="quote"?"quote":"thread"),p(v?.disableControlCard!==!0),g(pt(v?.chats)),C(v?.topicGroups!==!1),D(v?.topicActiveSessionTrigger!==!1),R.length)j.current=!0,T(B=>{let J=[...R];return B.map(L=>{let E=L.idValue.trim(),_=J.findIndex(tt=>String(tt.input??"").trim()===E);if(_<0)return L;let G=J.splice(_,1)[0];if(G?.ok===!0){let tt={...L.persisted};return G.openId&&(tt.openId=G.openId),L.idField==="email"&&(tt.email=E),G.name&&(tt.name=G.name),G.avatarUrl&&(tt.avatarUrl=G.avatarUrl),{...L,name:G.name??L.name,persisted:tt,resolution:{ok:!0,name:G.name,avatarUrl:G.avatarUrl}}}return{...L,resolution:{ok:!1,reason:G?.reason}}})});else{let B=v?.targets??[];T(B.length?B.map(J=>M(J)):[M()])}a.patchBot(a.bot.larkAppId,{substituteMode:v}),k(N.length?{text:`\u2717 ${t("botDefaults.substituteTargetsInvalid")}: ${N.join(", ")}`}:{text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0})}else{let v=Array.isArray(I.body?.resolution)?I.body.resolution.filter(R=>R?.ok===!1).map(R=>String(R.input??"").trim()).filter(Boolean):[];k({text:v.length?`\u2717 ${t("botDefaults.substituteTargetsInvalid")}: ${v.join(", ")}`:`\u2717 ${F(I)}`})}}catch(I){k({text:`\u2717 ${O(I)}`})}finally{P(!1)}}function X(){let r=[],I=!1;for(let v of q){let R=Xt(v);if(!R){I||=!!v.name.trim();continue}r.push(R)}if(I||u&&r.length===0){k({text:`\u2717 ${t("botDefaults.substituteTargetsInvalid")}`});return}H({enabled:u,targets:r,disclosure:b,chats:Qt(f),replyMode:m,disableControlCard:!c,topicGroups:S,topicActiveSessionTrigger:h})}let Y=[{value:"prefix",label:t("botDefaults.substituteDisclosurePrefix")},{value:"none",label:t("botDefaults.substituteDisclosureNone")}],Z=[{value:"thread",label:t("botDefaults.substituteReplyModeThread")},{value:"quote",label:t("botDefaults.substituteReplyModeQuote")}];return(0,e.jsxs)("section",{className:"bd-section bd-substitute-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionSubstitute")}),(0,e.jsx)(Q,{checked:u,disabled:w,dataAction:"toggle-substitute-mode",title:t("botDefaults.substituteEnabled"),help:t("botDefaults.substituteHelp"),onChange:i}),(0,e.jsx)(Q,{checked:S,disabled:w,dataAction:"toggle-substitute-topic-groups",title:t("botDefaults.substituteTopicGroups"),help:t("botDefaults.substituteTopicGroupsHelp"),onChange:C}),(0,e.jsx)(Q,{checked:h,disabled:w||!S,dataAction:"toggle-substitute-topic-active",title:t("botDefaults.substituteTopicActive"),help:t("botDefaults.substituteTopicActiveHelp"),onChange:D}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)($,{children:t("botDefaults.substituteDisclosure")}),(0,e.jsx)(z,{dataInput:"substituteDisclosure",ariaLabel:t("botDefaults.substituteDisclosure"),value:b,disabled:w,options:Y,onChange:r=>d(r)})]})}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)($,{help:t("botDefaults.substituteReplyModeHelp"),children:t("botDefaults.substituteReplyMode")}),(0,e.jsx)(z,{dataInput:"substituteReplyMode",ariaLabel:t("botDefaults.substituteReplyMode"),value:m,disabled:w,options:Z,onChange:r=>n(r)})]})}),(0,e.jsx)(Q,{checked:c,disabled:w,dataAction:"toggle-substitute-control-card",title:t("botDefaults.substituteControlCard"),help:t("botDefaults.substituteControlCardHelp"),onChange:p}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("label",{children:[(0,e.jsx)($,{help:t("botDefaults.substituteChatsHelp"),children:t("botDefaults.substituteChats")}),(0,e.jsx)("textarea",{"data-input":"substituteChats",rows:3,placeholder:t("botDefaults.substituteChatsPlaceholder"),value:f,disabled:w,onChange:r=>g(r.currentTarget.value)})]})}),(0,e.jsxs)("div",{className:"bd-row bd-substitute-targets",children:[(0,e.jsx)($,{help:t("botDefaults.substituteTargetsHelp"),children:t("botDefaults.substituteTargets")}),(0,e.jsxs)("div",{className:"bd-substitute-target-list","data-input":"substituteTargets",children:[q.map((r,I)=>(0,e.jsxs)("div",{className:"bd-substitute-target-row",children:[(0,e.jsx)(z,{dataInput:`substituteTargetType-${r.key}`,className:"bd-substitute-target-type",ariaLabel:`${t("botDefaults.substituteTargetType")} ${I+1}`,value:r.idField,disabled:w,options:yt.map(v=>({value:v,label:t(`botDefaults.substituteTarget${v[0].toUpperCase()}${v.slice(1)}`)})),onChange:v=>{T(R=>R.map(N=>N.key===r.key?{...N,idField:v,idValue:N.persisted[v]??"",resolution:void 0}:N))}}),(0,e.jsx)("input",{className:"bd-substitute-target-id",type:"text","data-input":`substituteTargetId-${r.key}`,"aria-label":`${t("botDefaults.substituteTargetType")} ${I+1}`,placeholder:t("botDefaults.substituteTargetIdPlaceholder"),value:r.idValue,disabled:w,onChange:v=>{let R=v.currentTarget.value;T(N=>N.map(B=>B.key===r.key?{...B,idValue:R,resolution:void 0}:B))},onBlur:()=>{r.idValue.trim()&&U(r.key)}}),(0,e.jsx)("div",{className:"bd-substitute-target-name",children:r.resolving?(0,e.jsx)("span",{className:"bd-substitute-target-resolving",children:t("botDefaults.substituteResolving")}):r.resolution?.ok===!0&&(r.name||r.resolution.avatarUrl)?(0,e.jsxs)(e.Fragment,{children:[r.resolution.avatarUrl?(0,e.jsx)(at,{html:et({name:r.resolution.name,avatarUrl:r.resolution.avatarUrl,size:"sm"})}):null,(0,e.jsx)("span",{className:"bd-substitute-target-name-chip","data-chip":`substituteTargetName-${r.key}`,"aria-label":`${t("botDefaults.substituteTargetName")} ${I+1}`,children:r.name})]}):r.resolution?.ok===!1?(0,e.jsx)("span",{className:"bd-substitute-target-resolution-badge",children:l(r.resolution.reason)}):(0,e.jsx)("input",{type:"text","data-input":`substituteTargetName-${r.key}`,"aria-label":`${t("botDefaults.substituteTargetName")} ${I+1}`,placeholder:t("botDefaults.substituteTargetNamePlaceholder"),value:r.name,disabled:w,onChange:v=>{let R=v.currentTarget.value;T(N=>N.map(B=>B.key===r.key?{...B,name:R}:B))}})}),(0,e.jsx)("button",{type:"button",className:"bd-substitute-target-remove","data-action":"remove-substitute-target",title:t("botDefaults.substituteTargetRemove"),"aria-label":t("botDefaults.substituteTargetRemove"),disabled:w,onClick:()=>{T(v=>{let R=v.filter(N=>N.key!==r.key);return R.length?R:[M()]})},children:(0,e.jsx)("span",{"aria-hidden":"true",children:"\xD7"})})]},r.key)),(0,e.jsx)("button",{type:"button",className:"bd-substitute-target-add","data-action":"add-substitute-target",title:t("botDefaults.substituteTargetAdd"),"aria-label":t("botDefaults.substituteTargetAdd"),disabled:w,onClick:()=>T(r=>[...r,M()]),children:(0,e.jsx)("span",{"aria-hidden":"true",children:"+"})})]})]}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-substitute-mode",disabled:w,onClick:X,children:t("botDefaults.substituteSave")}),(0,e.jsx)("button",{type:"button","data-action":"off-substitute-mode",disabled:w,onClick:()=>{H({enabled:!1,targets:[]})},children:t("botDefaults.substituteOff")}),(0,e.jsx)(W,{status:x,attr:{"data-substitute-status":""}})]})]})}function jt(a){return a.regularGroupReplyMode==="new-topic"||a.regularGroupReplyMode==="shared"||a.regularGroupReplyMode==="chat-topic"?a.regularGroupReplyMode:"chat"}function Et(a){return a.regularGroupMentionMode==="topic"||a.regularGroupMentionMode==="never"||a.regularGroupMentionMode==="ambient"?a.regularGroupMentionMode:"always"}function Te(a){let t=A(),o=typeof a.bot.maxLiveWorkers=="number"?a.bot.maxLiveWorkers:null,u=Number.isFinite(a.bot.logicalSessionCount)?Number(a.bot.logicalSessionCount):0,i=Number.isFinite(a.bot.residentSessionCount)?Number(a.bot.residentSessionCount):0,l=Number.isFinite(a.bot.dormantSessionCount)?Number(a.bot.dormantSessionCount):0,[b,d]=(0,s.useState)(o),m=b??30,[n,c]=(0,s.useState)(o==null?"":String(o)),[p,f]=(0,s.useState)(null),[g,S]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let D=typeof a.bot.maxLiveWorkers=="number"?a.bot.maxLiveWorkers:null;d(D),c(D==null?"":String(D))},[a.bot.maxLiveWorkers]);async function C(D){f(null),S(!0);try{let x=await K("PUT",`/api/bots/${encodeURIComponent(a.bot.larkAppId)}/max-live-workers`,{maxLiveWorkers:D});if(x.ok&&x.body.ok){let k=typeof x.body.maxLiveWorkers=="number"?x.body.maxLiveWorkers:null;d(k),c(k==null?"":String(k)),a.patchBot(a.bot.larkAppId,{maxLiveWorkers:k}),f({text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0})}else f({text:`\u2717 ${F(x)}`})}catch(x){f({text:`\u2717 ${O(x)}`})}finally{S(!1)}}function h(){let D=qt(n);if(D==="invalid"){f({text:`\u2717 ${t("botDefaults.maxLiveWorkersInvalid")}`});return}C(D)}return(0,e.jsxs)("div",{className:"bd-subsection",children:[(0,e.jsx)("h4",{className:"bd-subsection-title",children:t("botDefaults.sectionSessionCap")}),(0,e.jsxs)("div",{className:"bd-row bd-quota",children:[(0,e.jsxs)("label",{children:[(0,e.jsx)($,{help:t("botDefaults.maxLiveWorkersHelp"),children:t("botDefaults.maxLiveWorkers")}),(0,e.jsx)("input",{type:"number",min:1,step:1,"data-input":"maxLiveWorkers",placeholder:t("botDefaults.maxLiveWorkersPlaceholder"),value:n,disabled:g,onChange:D=>c(D.currentTarget.value)})]}),(0,e.jsx)("small",{"data-session-cap-state":!0,children:te(b,t)}),(0,e.jsx)("small",{className:"bd-help bd-session-residency",children:t("botDefaults.maxLiveWorkersUsage",{resident:i,cap:m,dormant:l,logical:u})})]}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-session-cap",disabled:g,onClick:h,children:t("botDefaults.maxLiveWorkersSave")}),(0,e.jsx)("button",{type:"button","data-action":"off-session-cap",disabled:g,onClick:()=>{c(""),C(null)},children:t("botDefaults.maxLiveWorkersOff")}),(0,e.jsx)(W,{status:p,attr:{"data-session-cap-status":""}})]})]})}function Ie(a){let t=A(),[o,u]=(0,s.useState)(typeof a.bot.startupCommands=="string"?a.bot.startupCommands:""),[i,l]=(0,s.useState)(null),[b,d]=(0,s.useState)(!1);(0,s.useEffect)(()=>u(typeof a.bot.startupCommands=="string"?a.bot.startupCommands:""),[a.bot.startupCommands]);async function m(){l(null),d(!0);try{let n=await K("PUT",`/api/bots/${encodeURIComponent(a.bot.larkAppId)}/startup-commands`,{startupCommands:o});if(n.ok&&n.body.ok){let c=typeof n.body.startupCommands=="string"?n.body.startupCommands:"";u(c),a.patchBot(a.bot.larkAppId,{startupCommands:c}),l({text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0})}else l({text:`\u2717 ${F(n)}`})}catch(n){l({text:`\u2717 ${O(n)}`})}finally{d(!1)}}return(0,e.jsxs)("div",{className:"bd-subsection",children:[(0,e.jsx)("h4",{className:"bd-subsection-title",children:(0,e.jsx)($,{help:t("botDefaults.startupCommandsHelp"),children:t("botDefaults.sectionStartupCommands")})}),(0,e.jsx)("textarea",{"data-input":"startupCommands",rows:3,placeholder:t("botDefaults.startupCommandsPlaceholder"),value:o,disabled:b,onChange:n=>u(n.currentTarget.value)}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-startup-commands",disabled:b,onClick:()=>{m()},children:t("botDefaults.startupCommandsSave")}),(0,e.jsx)(W,{status:i,attr:{"data-startup-commands-status":""}})]})]})}function we(a){let t=A(),[o,u]=(0,s.useState)(typeof a.bot.launchShell=="string"?a.bot.launchShell:""),[i,l]=(0,s.useState)(null),[b,d]=(0,s.useState)(!1);(0,s.useEffect)(()=>u(typeof a.bot.launchShell=="string"?a.bot.launchShell:""),[a.bot.launchShell]);async function m(){l(null),d(!0);try{let n=await K("PUT",`/api/bots/${encodeURIComponent(a.bot.larkAppId)}/launch-shell`,{launchShell:o});if(n.ok&&n.body.ok){let c=typeof n.body.launchShell=="string"?n.body.launchShell:"";u(c),a.patchBot(a.bot.larkAppId,{launchShell:c}),l({text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0})}else l({text:`\u2717 ${F(n)}`})}catch(n){l({text:`\u2717 ${O(n)}`})}finally{d(!1)}}return(0,e.jsxs)("div",{className:"bd-subsection",children:[(0,e.jsx)("h4",{className:"bd-subsection-title",children:(0,e.jsx)($,{help:t("botDefaults.launchShellHelp"),children:t("botDefaults.sectionLaunchShell")})}),(0,e.jsx)("input",{type:"text","data-input":"launchShell",placeholder:t("botDefaults.launchShellPlaceholder"),value:o,disabled:b,onChange:n=>u(n.currentTarget.value)}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-launch-shell",disabled:b,onClick:()=>{m()},children:t("botDefaults.launchShellSave")}),(0,e.jsx)(W,{status:i,attr:{"data-launch-shell-status":""}})]})]})}function Re(a){let t=A(),[o,u]=(0,s.useState)(typeof a.bot.env=="string"?a.bot.env:""),[i,l]=(0,s.useState)(null),[b,d]=(0,s.useState)(!1);(0,s.useEffect)(()=>u(typeof a.bot.env=="string"?a.bot.env:""),[a.bot.env]);async function m(){l(null),d(!0);try{let n=await K("PUT",`/api/bots/${encodeURIComponent(a.bot.larkAppId)}/env`,{env:o});if(n.ok&&n.body.ok){let c=typeof n.body.env=="string"?n.body.env:"";u(c),a.patchBot(a.bot.larkAppId,{env:c}),l({text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0})}else l({text:`\u2717 ${F(n)}`})}catch(n){l({text:`\u2717 ${O(n)}`})}finally{d(!1)}}return(0,e.jsxs)("div",{className:"bd-subsection",children:[(0,e.jsx)("h4",{className:"bd-subsection-title",children:(0,e.jsx)($,{help:t("botDefaults.envHelp"),children:t("botDefaults.sectionEnv")})}),(0,e.jsx)("textarea",{"data-input":"env",rows:5,placeholder:t("botDefaults.envPlaceholder"),value:o,disabled:b,onChange:n=>u(n.currentTarget.value)}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-env",disabled:b,onClick:()=>{m()},children:t("botDefaults.envSave")}),(0,e.jsx)(W,{status:i,attr:{"data-env-status":""}})]})]})}var Pe=["gpt-5.5","gpt-5.6-sol","gpt-5.6-terra","gpt-5.6-luna","gpt-5.4","gpt-5.4-pro"],Be=["","low","medium","high","xhigh"],Me=["boe","cn"];function Ae(a){let t=A(),o=a.bot.riff&&typeof a.bot.riff=="object"?a.bot.riff:{},[u,i]=(0,s.useState)(typeof o.baseUrl=="string"?o.baseUrl:""),[l,b]=(0,s.useState)(o.sandboxCluster==="cn"?"cn":"boe"),[d,m]=(0,s.useState)(typeof o.model=="string"?o.model:""),[n,c]=(0,s.useState)(typeof o.reasoningEffort=="string"?o.reasoningEffort:""),[p,f]=(0,s.useState)(typeof o.jwtEnv=="string"?o.jwtEnv:""),[g,S]=(0,s.useState)(typeof o.systemPrompt=="string"?o.systemPrompt:""),[C,h]=(0,s.useState)(Array.isArray(o.setupCommands)?o.setupCommands.join(`
8
- `):""),[D,x]=(0,s.useState)(null),[k,w]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let y=a.bot.riff&&typeof a.bot.riff=="object"?a.bot.riff:{};i(typeof y.baseUrl=="string"?y.baseUrl:""),b(y.sandboxCluster==="cn"?"cn":"boe"),m(typeof y.model=="string"?y.model:""),c(typeof y.reasoningEffort=="string"?y.reasoningEffort:""),f(typeof y.jwtEnv=="string"?y.jwtEnv:""),S(typeof y.systemPrompt=="string"?y.systemPrompt:""),h(Array.isArray(y.setupCommands)?y.setupCommands.join(`
9
- `):"")},[a.bot.riff]);async function P(){x(null),w(!0);try{let y={};u.trim()&&(y.baseUrl=u.trim()),y.sandboxCluster=l,d.trim()&&(y.model=d.trim()),n&&(y.reasoningEffort=n),p.trim()&&(y.jwtEnv=p.trim()),g.trim()&&(y.systemPrompt=g.trim()),C.trim()&&(y.setupCommands=C.split(`
10
- `).map(V=>V.trim()).filter(Boolean));let j=Object.keys(y).length?JSON.stringify(y):"",M=await K("PUT",`/api/bots/${encodeURIComponent(a.bot.larkAppId)}/riff`,{riff:j});if(M.ok&&M.body.ok){let V=typeof M.body.riff=="string"&&M.body.riff?JSON.parse(M.body.riff):null;if(a.patchBot(a.bot.larkAppId,{riff:V}),a.persistCliSelection&&!await a.persistCliSelection()){x({text:`\u2717 ${t("botDefaults.riffCliPersistFailed")}`});return}x({text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0})}else x({text:`\u2717 ${F(M)}`})}catch(y){x({text:`\u2717 ${O(y)}`})}finally{w(!1)}}return(0,e.jsxs)("div",{className:"bd-subsection",children:[(0,e.jsx)("h4",{className:"bd-subsection-title",children:(0,e.jsx)($,{help:t("botDefaults.riffHelp"),children:t("botDefaults.sectionRiff")})}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("label",{children:[(0,e.jsx)("span",{children:t("botDefaults.riffBaseUrl")}),(0,e.jsx)("input",{type:"text","data-input":"riff-base-url",placeholder:t("botDefaults.riffBaseUrlPlaceholder"),value:u,disabled:k,onChange:y=>i(y.currentTarget.value)})]})}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)("span",{children:(0,e.jsx)($,{help:t("botDefaults.riffSandboxClusterHelp"),children:t("botDefaults.riffSandboxCluster")})}),(0,e.jsx)(z,{dataInput:"riff-sandbox-cluster",ariaLabel:t("botDefaults.riffSandboxCluster"),value:l,disabled:k,options:Me.map(y=>({value:y,label:y.toUpperCase()})),onChange:y=>b(y)})]})}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("label",{children:[(0,e.jsx)("span",{children:(0,e.jsx)($,{help:t("botDefaults.riffModelHelp"),children:t("botDefaults.riffModel")})}),(0,e.jsx)("input",{type:"text","data-input":"riff-model",list:`riff-model-suggestions-${a.bot.larkAppId}`,placeholder:t("botDefaults.riffModelPlaceholder"),value:d,disabled:k,onChange:y=>m(y.currentTarget.value)}),(0,e.jsx)("datalist",{id:`riff-model-suggestions-${a.bot.larkAppId}`,children:Pe.map(y=>(0,e.jsx)("option",{value:y},y))})]})}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("div",{className:"bd-field",children:[(0,e.jsx)("span",{children:(0,e.jsx)($,{help:t("botDefaults.riffReasoningEffortHelp"),children:t("botDefaults.riffReasoningEffort")})}),(0,e.jsx)(z,{dataInput:"riff-reasoning-effort",ariaLabel:t("botDefaults.riffReasoningEffort"),value:n,disabled:k,options:Be.map(y=>({value:y,label:y===""?t("botDefaults.riffReasoningEffortDefault"):y})),onChange:y=>c(y)})]})}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("label",{children:[(0,e.jsx)("span",{children:(0,e.jsx)($,{help:t("botDefaults.riffJwtEnvHelp"),children:t("botDefaults.riffJwtEnv")})}),(0,e.jsx)("input",{type:"text","data-input":"riff-jwt-env",placeholder:t("botDefaults.riffJwtEnvPlaceholder"),value:p,disabled:k,onChange:y=>f(y.currentTarget.value)})]})}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("label",{children:[(0,e.jsx)("span",{children:t("botDefaults.riffSystemPrompt")}),(0,e.jsx)("textarea",{"data-input":"riff-system-prompt",placeholder:t("botDefaults.riffSystemPromptPlaceholder"),value:g,disabled:k,onChange:y=>S(y.currentTarget.value),rows:4})]})}),(0,e.jsx)("div",{className:"bd-row",children:(0,e.jsxs)("label",{children:[(0,e.jsx)("span",{children:t("botDefaults.riffSetupCommands")}),(0,e.jsx)("textarea",{"data-input":"riff-setup-commands",placeholder:t("botDefaults.riffSetupCommandsPlaceholder"),value:C,disabled:k,onChange:y=>h(y.currentTarget.value),rows:3})]})}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-riff",disabled:k,onClick:()=>{P()},children:t("botDefaults.riffSave")}),(0,e.jsx)(W,{status:D,attr:{"data-riff-status":""}})]})]})}function $e(a){let t=A(),o=a.bot.brandLabel??null,[u,i]=(0,s.useState)(o),[l,b]=(0,s.useState)(o??""),[d,m]=(0,s.useState)(null),[n,c]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let f=a.bot.brandLabel??null;i(f),b(f??"")},[a.bot.brandLabel]);async function p(f){m(null),c(!0);try{let g=await K("PUT",`/api/bots/${encodeURIComponent(a.bot.larkAppId)}/brand-label`,{brandLabel:f});if(g.ok&&g.body.ok){let S=g.body.brandLabel??null;i(S),b(S??""),a.patchBot(a.bot.larkAppId,{brandLabel:S}),m({text:"\u2713",ok:!0})}else m({text:`\u2717 ${F(g)}`})}catch(g){m({text:`\u2717 ${O(g)}`})}finally{c(!1)}}return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionBrand")}),(0,e.jsxs)("div",{className:"bd-row bd-brand",children:[(0,e.jsxs)("label",{children:[(0,e.jsx)($,{help:t("botDefaults.brandLabelHelp"),children:t("botDefaults.brandLabel")}),(0,e.jsx)("input",{type:"text","data-input":"brandLabel",placeholder:t("botDefaults.brandLabelPlaceholder"),value:l,disabled:n,onChange:f=>b(f.currentTarget.value)})]}),(0,e.jsx)("small",{"data-brand-state":!0,children:Yt(u,t)})]}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-brand",disabled:n,onClick:()=>{p(l)},children:t("botDefaults.brandSave")}),(0,e.jsx)("button",{type:"button","data-action":"reset-brand",disabled:n,onClick:()=>{p(null)},children:t("botDefaults.brandReset")}),(0,e.jsx)(W,{status:d,attr:{"data-brand-status":""}})]})]})}function Oe(a){let t=A(),[o,u]=(0,s.useState)(a.bot.autoGrantRequestCards!==!1),[i,l]=(0,s.useState)(a.bot.restrictGrantCommands===!0),[b,d]=(0,s.useState)(typeof a.bot.messageQuotaDefaultLimit=="number"?a.bot.messageQuotaDefaultLimit:null),[m,n]=(0,s.useState)(typeof a.bot.messageQuotaDefaultLimit=="number"?String(a.bot.messageQuotaDefaultLimit):""),[c,p]=(0,s.useState)(null),[f,g]=(0,s.useState)(null);(0,s.useEffect)(()=>{u(a.bot.autoGrantRequestCards!==!1),l(a.bot.restrictGrantCommands===!0);let h=typeof a.bot.messageQuotaDefaultLimit=="number"?a.bot.messageQuotaDefaultLimit:null;d(h),n(h==null?"":String(h))},[a.bot.autoGrantRequestCards,a.bot.messageQuotaDefaultLimit,a.bot.restrictGrantCommands]);async function S(h,D){g(D),p(null);try{let x=await K("PUT",`/api/bots/${encodeURIComponent(a.bot.larkAppId)}/grant-prefs`,h);if(x.ok&&x.body.ok){let k=typeof x.body.messageQuotaDefaultLimit=="number"?x.body.messageQuotaDefaultLimit:null;u(x.body.autoGrantRequestCards!==!1),l(x.body.restrictGrantCommands===!0),d(k),"messageQuotaDefaultLimit"in h&&n(k==null?"":String(k)),a.patchBot(a.bot.larkAppId,{autoGrantRequestCards:x.body.autoGrantRequestCards!==!1,restrictGrantCommands:x.body.restrictGrantCommands===!0,messageQuotaDefaultLimit:k}),p({text:`\u2713 ${t("botDefaults.cardPrefSaved")}`,ok:!0})}else p({text:`\u2717 ${F(x)}`})}catch(x){p({text:`\u2717 ${O(x)}`})}finally{g(null)}}function C(){let h=qt(m);if(h==="invalid"){p({text:`\u2717 ${t("botDefaults.quotaInvalid")}`});return}S({messageQuotaDefaultLimit:h},"quota")}return(0,e.jsxs)("section",{className:"bd-section",children:[(0,e.jsx)("h3",{className:"bd-section-title",children:t("botDefaults.sectionGrant")}),(0,e.jsxs)("div",{className:"bd-toggle-grid bd-grant-toggle-grid",children:[(0,e.jsx)(Q,{checked:o,disabled:f==="autoGrant",dataAction:"toggle-auto-grant-card",title:t("botDefaults.autoGrantCard"),help:t("botDefaults.autoGrantCardHelp"),onChange:h=>{u(h),S({autoGrantRequestCards:h},"autoGrant")}}),(0,e.jsx)(Q,{checked:i,disabled:f==="restrict",dataAction:"toggle-restrict-grant",title:t("botDefaults.restrictGrant"),help:t("botDefaults.restrictGrantHelp"),onChange:h=>{l(h),S({restrictGrantCommands:h},"restrict")}})]}),(0,e.jsxs)("div",{className:"bd-row bd-quota",children:[(0,e.jsxs)("label",{children:[(0,e.jsx)($,{help:t("botDefaults.quotaHelp"),children:t("botDefaults.quotaDefault")}),(0,e.jsx)("input",{type:"number",min:1,step:1,"data-input":"quotaLimit",placeholder:t("botDefaults.quotaPlaceholder"),value:m,disabled:f==="quota",onChange:h=>n(h.currentTarget.value)})]}),(0,e.jsx)("small",{"data-quota-state":!0,children:Zt(b,t)})]}),(0,e.jsxs)("div",{className:"actions",children:[(0,e.jsx)("button",{type:"button",className:"primary","data-action":"save-quota",disabled:f==="quota",onClick:C,children:t("botDefaults.quotaSave")}),(0,e.jsx)(W,{status:c,attr:{"data-grant-status":""}})]})]})}function Je(a){return kt(a,(0,e.jsx)(ae,{}))}export{ue as BotAgentSection,ae as BotDefaultsPage,ke as CodexAppDisplaySection,Xt as buildSubstituteTarget,Wt as effectiveAccess,Je as renderBotDefaultsPage};
@@ -1 +0,0 @@
1
- var s="botmux:open-create-session",e=!1;function o(){e=!0,window.dispatchEvent(new Event(s)),window.location.hash.startsWith("#/sessions")||(window.location.hash="#/sessions")}function t(){let n=e;return e=!1,n}export{s as a,o as b,t as c};
@@ -1 +0,0 @@
1
- import{a as H,b as Q}from"./chunk-EVK77ASG.js";import{b as W}from"./chunk-KPQAUX7V.js";import{a as ce,c as le,g as Le,k as M,p as ie}from"./chunk-QFMH6ITB.js";import"./chunk-X2L65IOM.js";import{a as se}from"./chunk-SYC6D5XU.js";import{a as Ce,d as re}from"./chunk-5THX4DI2.js";import{c as K}from"./chunk-7SZRL6FY.js";var l=K(Ce(),1);var m=K(Ce(),1);var n=K(re(),1),Re=50,we={total:0,ok:0,error:0,successRate:0};function $e(t,e=Date.now()){if(t==="all")return;let s=t==="24h"?24:t==="7d"?168:720;return new Date(e-s*60*60*1e3).toISOString()}function Ae(t,e=0){let s=new URLSearchParams({limit:String(Re),offset:String(e)});t.connectorId&&s.set("connectorId",t.connectorId),t.status&&s.set("status",t.status);let g=$e(t.timeWindow);return g&&s.set("since",g),t.query.trim()&&s.set("q",t.query.trim()),s}function Ie(t){if(!t)return"\u2014";let e=new Date(t);return Number.isFinite(e.getTime())?e.toLocaleString():t}function de(t){return t===void 0||!Number.isFinite(t)?"\u2014":t<1e3?`${Math.round(t)} ms`:t<6e4?`${(t/1e3).toFixed(t<1e4?1:0)} s`:`${(t/6e4).toFixed(1)} min`}function He(t){return t===void 0?"\u2014":t<1024?`${t} B`:t<1024*1024?`${(t/1024).toFixed(1)} KB`:`${(t/1024/1024).toFixed(1)} MB`}function ke(t){return t.value===void 0||t.value===null?(0,n.jsx)("p",{className:"webhook-log-detail-empty",children:t.empty}):typeof t.value=="object"&&!Array.isArray(t.value)&&Object.keys(t.value).length===0?(0,n.jsx)("p",{className:"webhook-log-detail-empty",children:t.empty}):(0,n.jsx)("pre",{className:`webhook-log-json${t.fullHeight?" full-height":""}`,children:(0,n.jsx)("code",{children:JSON.stringify(t.value,null,2)})})}function Oe(t){let e=[["kind",t.value?.kind],["mode",t.value?.mode],["botId",t.value?.botId],["chatId",t.value?.chatId],["sessionId",t.value?.sessionId],["rootMessageId",t.value?.rootMessageId],["workflowId",t.value?.workflowId]].filter(([,s])=>s!=null&&s!=="");return e.length?(0,n.jsx)("dl",{className:"webhook-log-target-facts",children:e.map(([s,g])=>(0,n.jsxs)("div",{children:[(0,n.jsx)("dt",{children:s}),(0,n.jsx)("dd",{children:(0,n.jsx)("code",{children:String(g)})})]},s))}):(0,n.jsx)("p",{className:"webhook-log-detail-empty",children:"\u2014"})}function ve(t){return(0,n.jsx)(ie,{id:t.id,className:"webhook-log-filter-menu",ariaLabel:t.label,style:{width:"100%",minWidth:0},value:t.value,label:ce(t.options,t.value),options:t.options,onChange:t.onChange})}function ue(t){return(0,n.jsxs)("article",{className:`card webhook-log-metric${t.tone?` ${t.tone}`:""}`,children:[(0,n.jsx)("span",{children:t.label}),(0,n.jsx)("strong",{children:t.value}),(0,n.jsx)("small",{children:t.hint||"\xA0"})]})}function Te(t={}){let e=W(),s=(0,m.useRef)(!1),g=(0,m.useRef)([]),[k,L]=(0,m.useState)([]),[h,I]=(0,m.useState)([]),[y,R]=(0,m.useState)(we),[C,$]=(0,m.useState)({connectorId:"",status:"",timeWindow:"7d",query:""}),[d,r]=(0,m.useState)(null),[E,_]=(0,m.useState)(!0),[v,U]=(0,m.useState)(!1),[O,J]=(0,m.useState)(!1),[V,Y]=(0,m.useState)(0),[q,P]=(0,m.useState)(""),[X,Z]=(0,m.useState)(!1),T=(0,m.useMemo)(()=>new Map(k.map(c=>[c.id,c.name])),[k]),u=(0,m.useMemo)(()=>h.find(c=>c.triggerId===d)??h[0]??null,[h,d]),ee=(0,m.useMemo)(()=>[{value:"",label:e("webhookLogs.allConnectors")},...k.map(c=>({value:c.id,label:c.name}))],[k,e]),B=(0,m.useMemo)(()=>[{value:"",label:e("webhookLogs.allStatuses")},{value:"ok",label:e("webhookLogs.success")},{value:"error",label:e("webhookLogs.failed")}],[e]),be=(0,m.useMemo)(()=>[{value:"24h",label:e("webhookLogs.last24h")},{value:"7d",label:e("webhookLogs.last7d")},{value:"30d",label:e("webhookLogs.last30d")},{value:"all",label:e("webhookLogs.allTime")}],[e]),A=(0,m.useCallback)(async(c=!1,w=!1)=>{w?U(!0):_(!0),P("");let z=c?g.current.length:0,oe=Ae(C,z),f=new URLSearchParams(oe);f.delete("limit"),f.delete("offset");try{let[F,te]=await Promise.all([H(`/api/trigger-logs?${oe}`),c?Promise.resolve(null):H(`/api/trigger-logs/summary?${f}`)]);if(!s.current)return;if(F.status!==200)throw new Error(String(F.body?.error||F.status));let S=Array.isArray(F.body?.logs)?F.body.logs:[],ne=c?[...g.current,...S]:S;g.current=ne,I(ne),Y(Number(F.body?.total??S.length)),J(F.body?.hasMore===!0),c||(R(te?.status===200?te.body?.summary??we:we),r(ae=>S.some(fe=>fe.triggerId===ae)?ae:S[0]?.triggerId??null))}catch(F){s.current&&P(F?.message||e("webhookLogs.loadFailed"))}finally{s.current&&(_(!1),U(!1))}},[C,e]);(0,m.useEffect)(()=>(s.current=!0,H("/api/connectors").then(c=>{s.current&&c.status===200&&L(Array.isArray(c.body?.connectors)?c.body.connectors:[])}),()=>{s.current=!1}),[]),(0,m.useEffect)(()=>{let c=setTimeout(()=>{A(!1)},C.query?260:0);return()=>clearTimeout(c)},[C,A]),(0,m.useEffect)(()=>{let c=setInterval(()=>{A(!1,!0)},15e3);return()=>clearInterval(c)},[A]);async function pe(){u&&(await navigator.clipboard?.writeText(JSON.stringify(u,null,2)),Z(!0),setTimeout(()=>s.current&&Z(!1),1200))}let he=u?.request?.payloadOmittedReason==="disabled"?e("webhookLogs.payloadDisabled"):u?.request?.payloadOmittedReason==="too_large"?e("webhookLogs.payloadTooLarge"):e("webhookLogs.payloadUnavailable"),j=(0,n.jsxs)(n.Fragment,{children:[t.embedded?null:(0,n.jsxs)("div",{className:"page-heading",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("p",{className:"eyebrow",children:e("nav.connectors")}),(0,n.jsx)("h1",{children:e("nav.webhookLogs")}),(0,n.jsx)("p",{className:"webhook-log-heading-copy",children:e("webhookLogs.subtitle")})]}),(0,n.jsxs)("div",{className:"page-heading-actions",children:[(0,n.jsxs)("span",{className:`webhook-log-live${v?" refreshing":""}`,children:[(0,n.jsx)("i",{}),e("webhookLogs.autoRefresh")]}),(0,n.jsx)("a",{className:"button page-primary-action",href:"#/connectors",children:e("webhookLogs.manage")})]})]}),(0,n.jsxs)("section",{className:"webhook-log-metrics","aria-label":e("webhookLogs.summary"),children:[(0,n.jsx)(ue,{label:e("webhookLogs.total"),value:y.total,hint:e("webhookLogs.filteredRange")}),(0,n.jsx)(ue,{label:e("webhookLogs.successRate"),value:`${y.successRate.toFixed(y.successRate%1?1:0)}%`,tone:"ok",hint:`${y.ok} ${e("webhookLogs.calls")}`}),(0,n.jsx)(ue,{label:e("webhookLogs.failures"),value:y.error,tone:y.error?"error":void 0,hint:y.error?e("webhookLogs.needsReview"):e("webhookLogs.noFailures")}),(0,n.jsx)(ue,{label:e("webhookLogs.p95"),value:de(y.p95DurationMs),hint:`${e("webhookLogs.average")} ${de(y.avgDurationMs)}`})]}),(0,n.jsxs)("form",{className:"filters dashboard-toolbar webhook-log-toolbar",onSubmit:c=>c.preventDefault(),children:[(0,n.jsx)("input",{type:"search",name:"q","aria-label":e("webhookLogs.search"),placeholder:e("webhookLogs.searchPlaceholder"),value:C.query,onChange:c=>{let w=c.currentTarget.value;$(z=>({...z,query:w}))}}),(0,n.jsx)(ve,{id:"webhook-log-connector",label:e("webhookLogs.connector"),value:C.connectorId,options:ee,onChange:c=>$(w=>({...w,connectorId:c}))}),(0,n.jsx)(ve,{id:"webhook-log-status",label:e("webhookLogs.status"),value:C.status,options:B,onChange:c=>$(w=>({...w,status:c}))}),(0,n.jsx)(ve,{id:"webhook-log-window",label:e("webhookLogs.timeRange"),value:C.timeWindow,options:be,onChange:c=>$(w=>({...w,timeWindow:c}))}),(0,n.jsx)("button",{type:"button",className:"ghost webhook-log-refresh",disabled:v,onClick:()=>{A(!1,!0)},children:e("webhookLogs.refresh")})]}),q?(0,n.jsxs)("p",{className:"err webhook-log-error",children:[e("webhookLogs.loadFailed"),": ",q]}):null,(0,n.jsxs)("section",{className:"webhook-log-workspace",children:[(0,n.jsxs)("article",{className:"card webhook-log-list-panel",children:[(0,n.jsx)("header",{className:"webhook-log-panel-head",children:(0,n.jsxs)("div",{children:[(0,n.jsx)("strong",{children:e("webhookLogs.records")}),(0,n.jsx)("span",{children:e("webhookLogs.matching",{count:V})})]})}),E&&!h.length?(0,n.jsx)(le,{label:e("webhookLogs.loading"),compact:!0}):null,!E&&!h.length?(0,n.jsxs)("div",{className:"webhook-log-empty",children:[(0,n.jsx)("span",{"aria-hidden":"true",children:"\u25CE"}),(0,n.jsx)("strong",{children:e("webhookLogs.empty")}),(0,n.jsx)("p",{children:e("webhookLogs.emptyHint")})]}):null,(0,n.jsx)("div",{className:"webhook-log-list",role:"listbox","aria-label":e("webhookLogs.records"),children:h.map(c=>{let w=u?.triggerId===c.triggerId;return(0,n.jsxs)("button",{type:"button",role:"option","aria-selected":w,className:`webhook-log-row${w?" active":""}`,onClick:()=>r(c.triggerId),children:[(0,n.jsx)("span",{className:`webhook-log-status-dot ${c.status}`,"aria-hidden":"true"}),(0,n.jsxs)("span",{className:"webhook-log-row-main",children:[(0,n.jsxs)("span",{className:"webhook-log-row-title",children:[(0,n.jsx)("strong",{children:T.get(c.connectorId||"")||c.connectorId||e("webhookLogs.unknownConnector")}),(0,n.jsx)("code",{children:c.request?.method||"POST"})]}),(0,n.jsxs)("span",{className:"webhook-log-row-meta",children:[(0,n.jsx)("span",{children:Ie(c.createdAt)}),(0,n.jsx)("span",{children:c.errorCode||c.action})]})]}),(0,n.jsxs)("span",{className:"webhook-log-row-result",children:[(0,n.jsx)("b",{className:c.status,children:c.response?.httpStatus??(c.status==="ok"?"2xx":"ERR")}),(0,n.jsx)("small",{children:de(c.response?.durationMs)})]})]},`${c.triggerId}-${c.createdAt}`)})}),O?(0,n.jsx)("button",{type:"button",className:"ghost webhook-log-more",disabled:E,onClick:()=>{A(!0)},children:e("webhookLogs.loadMore")}):null]}),(0,n.jsx)("article",{className:"card webhook-log-detail-panel",children:u?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("header",{className:"webhook-log-detail-head",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:`webhook-log-result-pill ${u.status}`,children:u.status==="ok"?e("webhookLogs.success"):e("webhookLogs.failed")}),(0,n.jsx)("h2",{children:T.get(u.connectorId||"")||u.connectorId||e("webhookLogs.unknownConnector")}),(0,n.jsxs)("p",{children:[Ie(u.createdAt)," \xB7 ",u.request?.method||"POST"," ",u.request?.path||"/webhook/\u2026"]})]}),(0,n.jsx)("button",{type:"button",className:"ghost",onClick:()=>{pe()},children:e(X?"webhookLogs.copied":"webhookLogs.copyJson")})]}),u.error?(0,n.jsxs)("div",{className:"webhook-log-failure",children:[(0,n.jsx)("strong",{children:u.errorCode||e("webhookLogs.failureReason")}),(0,n.jsx)("span",{children:u.error})]}):null,(0,n.jsxs)("section",{className:"webhook-log-detail-section",children:[(0,n.jsx)("h3",{children:e("webhookLogs.overview")}),(0,n.jsxs)("dl",{className:"webhook-log-facts",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("dt",{children:e("webhookLogs.httpStatus")}),(0,n.jsx)("dd",{children:u.response?.httpStatus??"\u2014"})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("dt",{children:e("webhookLogs.duration")}),(0,n.jsx)("dd",{children:de(u.response?.durationMs)})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("dt",{children:e("webhookLogs.action")}),(0,n.jsx)("dd",{children:u.action})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("dt",{children:e("webhookLogs.bodySize")}),(0,n.jsx)("dd",{children:He(u.request?.bodyBytes)})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("dt",{children:"Trigger ID"}),(0,n.jsx)("dd",{children:(0,n.jsx)("code",{children:u.triggerId})})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("dt",{children:"Request ID"}),(0,n.jsx)("dd",{children:(0,n.jsx)("code",{children:u.requestId||"\u2014"})})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("dt",{children:e("webhookLogs.remoteAddress")}),(0,n.jsx)("dd",{children:(0,n.jsx)("code",{children:u.request?.remoteAddress||"\u2014"})})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("dt",{children:e("webhookLogs.target")}),(0,n.jsx)("dd",{children:(0,n.jsx)("code",{children:u.target?.chatId||u.target?.sessionId||u.response?.chatId||"\u2014"})})]})]})]}),(0,n.jsxs)("section",{className:"webhook-log-detail-section",children:[(0,n.jsx)("h3",{children:e("webhookLogs.queryParams")}),(0,n.jsx)(ke,{value:u.request?.query,empty:e("webhookLogs.none")})]}),(0,n.jsxs)("section",{className:"webhook-log-detail-section",children:[(0,n.jsxs)("h3",{children:[e("webhookLogs.headers"),(0,n.jsx)("small",{children:e("webhookLogs.redacted")})]}),(0,n.jsx)(ke,{value:u.request?.headers,empty:e("webhookLogs.headersNotStored")})]}),(0,n.jsxs)("section",{className:"webhook-log-detail-section",children:[(0,n.jsxs)("h3",{children:[e("webhookLogs.payload"),(0,n.jsx)("small",{children:e("webhookLogs.redacted")})]}),u.request?.payloadStored?(0,n.jsx)(ke,{value:u.request.payload,empty:e("webhookLogs.none")}):(0,n.jsx)("p",{className:"webhook-log-detail-empty",children:he})]}),(0,n.jsxs)("section",{className:"webhook-log-detail-section",children:[(0,n.jsx)("h3",{children:e("webhookLogs.routeTarget")}),(0,n.jsx)(Oe,{value:u.target})]})]}):(0,n.jsx)("div",{className:"webhook-log-empty",children:(0,n.jsx)("strong",{children:e("webhookLogs.selectRecord")})})})]})]});return t.embedded?(0,n.jsx)("section",{className:"webhook-logs-content webhook-logs-panel",children:j}):(0,n.jsx)("section",{className:"page webhook-logs-content webhook-logs-page",children:j})}var o=K(re(),1);function qe(t,e){return t.map(s=>s.id===e.id?e:s)}var Me={name:"",botId:"",kind:"turn",workflowId:"",mode:"dynamic",chatId:"",manualChat:!1,manualChatId:"",allowChats:[],deduplicate:!1,dedup:"",instruction:"",topicMessageMode:"default",topicMessageText:"",verify:"token",secret:"",storePayload:!0};function oo(t,e){return{promptEnvelope:{sourceName:t.promptEnvelope?.sourceName||t.name,instruction:e}}}function Be(t){return[{value:"turn",label:t("connectors.kindTurn")},{value:"workflow",label:t("connectors.kindWorkflowRetiring"),disabled:!0}]}function Ne(t){return`${location.origin}/webhook/${encodeURIComponent(t)}`}function ge(t){return(0,o.jsx)(ie,{id:t.id,className:"connector-form-menu",ariaLabel:t.label,value:t.value,label:ce(t.options,t.value),options:t.options,onChange:t.onChange})}function Pe(t){let e=(0,l.useRef)(null),[s,g]=(0,l.useState)(!1),[k,L]=(0,l.useState)(""),h=Array.isArray(t.value)?t.value:t.value?[t.value]:[],I=(0,l.useMemo)(()=>new Set(h),[h]),y=k.trim().toLocaleLowerCase(),R=(0,l.useMemo)(()=>y?t.groups.filter(d=>`${d.name} ${d.chatId}`.toLocaleLowerCase().includes(y)):t.groups,[y,t.groups]),C=t.multiple?h.length===0?t.allLabel||t.placeholder:t.selectedCountLabel(h.length):t.groups.find(d=>d.chatId===h[0])?.name||h[0]||t.placeholder;(0,l.useEffect)(()=>{if(!s)return;let d=r=>{e.current?.contains(r.target)||g(!1)};return document.addEventListener("pointerdown",d),()=>document.removeEventListener("pointerdown",d)},[s]);function $(d){if(!t.multiple){t.onChange(d),g(!1),L("");return}t.onChange(I.has(d)?h.filter(r=>r!==d):[...h,d])}return(0,o.jsxs)("div",{ref:e,className:`connector-group-picker${s?" open":""}`,children:[(0,o.jsxs)("button",{id:t.id,type:"button",className:"connector-group-picker-trigger","aria-label":t.label,"aria-haspopup":"listbox","aria-expanded":s,onClick:()=>g(d=>!d),children:[(0,o.jsx)("span",{className:h.length||t.multiple&&t.allLabel?"":"muted",children:C}),(0,o.jsx)("span",{className:"connector-group-picker-chevron","aria-hidden":"true"})]}),s?(0,o.jsxs)("div",{className:"connector-group-picker-popover",children:[(0,o.jsxs)("label",{className:"connector-group-search",htmlFor:`${t.id}-search`,children:[(0,o.jsx)("span",{className:"connector-group-search-icon","aria-hidden":"true"}),(0,o.jsx)("input",{id:`${t.id}-search`,type:"search",autoComplete:"off",autoFocus:!0,value:k,placeholder:t.searchPlaceholder,onChange:d=>L(d.currentTarget.value),onKeyDown:d=>{d.key==="Escape"&&(d.preventDefault(),g(!1))}})]}),(0,o.jsxs)("div",{className:"connector-group-options",role:"listbox","aria-label":t.label,"aria-multiselectable":t.multiple||void 0,children:[t.multiple&&t.allLabel&&!y?(0,o.jsxs)("button",{type:"button",className:`connector-group-option connector-group-option-all${h.length===0?" selected":""}`,role:"option","aria-selected":h.length===0,onClick:()=>t.onChange([]),children:[(0,o.jsx)("span",{className:"connector-group-check","aria-hidden":"true"}),(0,o.jsxs)("span",{children:[(0,o.jsx)("b",{children:t.allLabel}),(0,o.jsx)("small",{children:t.placeholder})]})]}):null,R.map(d=>{let r=I.has(d.chatId);return(0,o.jsxs)("button",{type:"button",className:`connector-group-option${r?" selected":""}`,role:"option","aria-selected":r,onClick:()=>$(d.chatId),children:[(0,o.jsx)("span",{className:"connector-group-check","aria-hidden":"true"}),(0,o.jsxs)("span",{children:[(0,o.jsx)("b",{children:d.name||d.chatId}),d.name?(0,o.jsx)("small",{children:d.chatId}):null]})]},d.chatId)}),R.length?null:(0,o.jsx)("p",{className:"connector-group-empty",children:t.emptyLabel})]})]}):null]})}function me(t,e){return t.filter(s=>s.bots.includes(e))}function Ge(t,e){let s=t.target.chatId||"",g=s&&me(e,t.target.botId).some(k=>k.chatId===s);return{name:t.name,botId:t.target.botId,kind:t.target.kind,workflowId:t.target.workflowId||"",mode:t.target.mode,chatId:g?s:"",manualChat:!!(s&&!g),manualChatId:g?"":s,allowChats:t.target.allowChats||[],deduplicate:!!t.lifecycleExtractors?.dedupKey,dedup:t.lifecycleExtractors?.dedupKey||"",instruction:t.promptEnvelope?.instruction||"",topicMessageMode:t.topicMessage?.mode||"default",topicMessageText:t.topicMessage?.text||"",verify:t.verify?.type||"token",secret:"",storePayload:t.loggingPolicy?.storePayload!==!1}}function We(t){let e=W(),s=t.active==="webhooks",g=t.active==="logs";return(0,o.jsxs)("nav",{className:"connectors-subnav-slot connectors-subnav insight-tabs",role:"tablist","aria-label":e("nav.connectors"),children:[(0,o.jsx)("a",{href:"#/connectors",className:`itab${s?" on":""}`,role:"tab","aria-selected":s,children:e("connectors.tabWebhooks")}),(0,o.jsx)("a",{href:"#/connectors/logs",className:`itab${g?" on":""}`,role:"tab","aria-selected":g,children:e("connectors.tabLogs")})]})}function xe(t){let e=W(),s=(0,l.useRef)(!1),g=(0,l.useRef)(null),k=(0,l.useRef)(null),[L,h]=(0,l.useState)([]),[I,y]=(0,l.useState)([]),[R,C]=(0,l.useState)([]),[$,d]=(0,l.useState)(!0),[r,E]=(0,l.useState)(Me),[_,v]=(0,l.useState)(null),[U,O]=(0,l.useState)(null),[J,V]=(0,l.useState)(!1),[Y,q]=(0,l.useState)(!1),[P,X]=(0,l.useState)(null),[Z,T]=(0,l.useState)(null),[u,ee]=(0,l.useState)(null),B=(0,l.useMemo)(()=>me(I,r.botId),[I,r.botId]),be=(0,l.useMemo)(()=>L.length?L.map(a=>({value:a.larkAppId,label:a.botName})):[{value:"",label:e("connectors.noOnlineBots")}],[L,e]),A=(0,l.useMemo)(()=>Be(e),[e]),pe=(0,l.useMemo)(()=>[{value:"dynamic",label:e("connectors.modeDynamic")},{value:"fixed",label:e("connectors.modeFixed")},{value:"new-group",label:e("connectors.modeNewGroup")}],[e]),he=(0,l.useMemo)(()=>[{value:"token",label:e("connectors.verifyToken")},{value:"hmac-sha256",label:e("connectors.verifyHmac")}],[e]),j=(0,l.useCallback)(a=>I.find(b=>b.chatId===a)?.name||a,[I]),c=(0,l.useCallback)((a,i)=>{E(b=>{let N=b.botId&&a.some(D=>D.larkAppId===b.botId)?b.botId:a[0]?.larkAppId??"",p=me(i,N),x=b.chatId&&p.some(D=>D.chatId===b.chatId)?b.chatId:p[0]?.chatId??"",G=new Set(p.map(D=>D.chatId));return{...b,botId:N,chatId:x,allowChats:b.allowChats.filter(D=>G.has(D))}})},[]),w=(0,l.useCallback)(async()=>{d(!0);try{let[a,i,b]=await Promise.all([H("/api/bots"),H("/api/connectors"),H("/api/groups")]);if(!s.current)return;let N=(a.body?.bots||[]).map(x=>({larkAppId:x.larkAppId,botName:x.botName||x.larkAppId})),p=(b.body?.chats||[]).map(x=>({chatId:x.chatId,name:x.name||"",bots:(x.memberBots||[]).filter(G=>G.inChat).map(G=>G.larkAppId)}));h(N),y(p),C(Array.isArray(i.body?.connectors)?i.body.connectors:[]),c(N,p)}finally{s.current&&d(!1)}},[c]);(0,l.useEffect)(()=>(s.current=!0,w(),()=>{s.current=!1,g.current&&clearTimeout(g.current)}),[w]),(0,l.useEffect)(()=>{let a=new Set(B.map(i=>i.chatId));E(i=>({...i,chatId:i.chatId&&a.has(i.chatId)?i.chatId:B[0]?.chatId??"",allowChats:i.allowChats.filter(b=>a.has(b))}))},[B]),(0,l.useEffect)(()=>{let a=k.current;if(a)if(Y){if(!a.open)try{a.showModal()}catch{}let i=a.querySelector(".connector-modal-body");i&&(i.scrollTop=0)}else a.open&&a.close()},[Y]),(0,l.useEffect)(()=>()=>{let a=k.current;a?.open&&a.close()},[]);function z(a){return e(a==="fixed"?"connectors.modeLabelFixed":a==="new-group"?"connectors.modeLabelNewGroup":"connectors.modeLabelDynamic")}function oe(a){return e(a==="workflow"?"connectors.kindLabelWorkflow":"connectors.kindLabelTurn")}function f(a){E(i=>({...i,...a}))}function F(){v(null),O(null),X(null),E(a=>{let i=a.botId||L[0]?.larkAppId||"";return{...Me,botId:i,chatId:me(I,i)[0]?.chatId||""}}),q(!0)}function te(a){v(null),O(null),T(null),X(a),E(Ge(a,I)),q(!0)}function S(){J||(q(!1),v(null),O(null),X(null))}async function ne(){v(null),O(null);let a=r.name.trim(),i=r.botId;if(!a){v({text:e("connectors.errName"),error:!0});return}if(!i){v({text:e("connectors.errBot"),error:!0});return}if(r.kind==="workflow"){v({text:e("connectors.errLegacyWorkflowRetired"),error:!0});return}let b=r.topicMessageText.trim();if(r.topicMessageMode==="custom"&&!b){v({text:e("connectors.errTopicMessage"),error:!0});return}let N={name:a,enabled:P?.enabled??!0,target:{kind:r.kind,mode:r.mode,botId:i},promptEnvelope:{sourceName:a,instruction:r.instruction.trim()},topicMessage:{mode:r.topicMessageMode,...r.topicMessageMode==="custom"?{text:b}:{}},verify:{type:r.verify},loggingPolicy:{storePayload:r.storePayload,storeHeaders:!0,retentionDays:14}};if(r.mode==="fixed"){let p=r.manualChat?r.manualChatId.trim():r.chatId;if(!p){v({text:e("connectors.errChat"),error:!0});return}N.target.chatId=p}else r.mode==="dynamic"&&(N.target.allowChats=r.allowChats);if(r.mode==="new-group"){let p=r.dedup.trim();if(r.deduplicate&&!p){v({text:e("connectors.errDedup"),error:!0});return}N.lifecycleExtractors=r.deduplicate?{dedupKey:p}:null}else N.lifecycleExtractors=null;r.secret.trim()&&(N.secret=r.secret.trim()),V(!0),v({text:e(P?"connectors.saving":"connectors.creating")});try{let p=await Q(P?"PUT":"POST",P?`/api/connectors/${encodeURIComponent(P.id)}`:"/api/connectors",N);if(!s.current)return;if((p.status===201||p.status===200)&&p.body?.ok){if(P){let ye=P.id;C(De=>qe(De,p.body.connector)),T({id:ye,text:e("connectors.updated")}),q(!1),X(null);return}let x=p.body.webhookUrl||Ne(p.body.connector.id),G=(p.body.connector?.verify?.type??"token")==="token",D=r.mode==="dynamic",Ee=D?N.target.allowChats?.[0]||"<chatId>":"";v(null),O({name:a,mode:r.mode,chatId:N.target.chatId,url:x,secret:p.body.secret,isToken:G,isDynamic:D,exampleChat:Ee}),E(ye=>({...ye,name:"",workflowId:"",manualChatId:"",dedup:"",secret:"",instruction:"",topicMessageMode:"default",topicMessageText:"",allowChats:[],storePayload:!0})),await w()}else{let x=p.body?.error||p.status;v({text:e("connectors.createFailed",{error:String(x)}),error:!0})}}finally{s.current&&V(!1)}}async function ae(a){T({id:a.id,text:e(a.enabled?"connectors.disabling":"connectors.enabling")});let i=await Q("PATCH",`/api/connectors/${encodeURIComponent(a.id)}`,{enabled:!a.enabled});if(s.current)if(i.status===200&&i.body?.ok)T(null),await w();else{let b=i.body?.error||i.status;T({id:a.id,text:e("connectors.toggleFailed",{error:String(b)}),error:!0})}}async function fe(a){let i=a.loggingPolicy?.storePayload!==!1;T({id:a.id,text:e("connectors.saving")});let b=await Q("PUT",`/api/connectors/${encodeURIComponent(a.id)}`,{loggingPolicy:{storePayload:!i,storeHeaders:a.loggingPolicy?.storeHeaders!==!1,retentionDays:a.loggingPolicy?.retentionDays??14}});if(s.current)if(b.status===200&&b.body?.ok)T(null),await w();else{let N=b.body?.error||b.status;T({id:a.id,text:e("connectors.saveFailed",{error:String(N)}),error:!0})}}async function Se(a){if(!confirm(e("connectors.delConfirm")))return;T({id:a.id,text:e("connectors.deleting")});let i=await Q("DELETE",`/api/connectors/${encodeURIComponent(a.id)}`);if(s.current)if(i.status===200&&i.body?.ok)T(null),await w();else{let b=i.body?.error||i.status;T({id:a.id,text:e("connectors.deleteFailed",{error:String(b)}),error:!0})}}function Fe(a){navigator.clipboard?.writeText(Ne(a.id)),ee(a.id),g.current&&clearTimeout(g.current),g.current=setTimeout(()=>{s.current&&ee(null)},1200)}return(0,o.jsxs)("section",{className:"page connectors-page",children:[(0,o.jsxs)("div",{className:"page-heading",children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("p",{className:"eyebrow",children:e("nav.connectors")}),(0,o.jsx)("h1",{children:e("nav.connectors")})]}),(0,o.jsx)("div",{className:"page-heading-actions",children:t.tab==="webhooks"?(0,o.jsx)(Le,{className:"page-primary-action connector-create-trigger",onClick:F,children:e("connectors.createTitle")}):(0,o.jsx)("a",{className:"button page-primary-action",href:"#/connectors",children:e("webhookLogs.manage")})})]}),(0,o.jsx)(We,{active:t.tab}),t.tab==="webhooks"?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("dialog",{ref:k,className:"connector-create-modal",onCancel:a=>{a.preventDefault(),S()},onClose:S,onClick:a=>{a.target===a.currentTarget&&S()},children:(0,o.jsxs)("article",{className:"connector-modal-card",children:[(0,o.jsxs)("header",{className:"connector-modal-header",children:[(0,o.jsx)("h3",{children:e(P?"connectors.editTitle":"connectors.createTitle")}),(0,o.jsx)("button",{type:"button",className:"connector-modal-close","aria-label":e("connectors.close"),title:e("connectors.close"),disabled:J,onClick:S,children:(0,o.jsx)("span",{"aria-hidden":"true",children:"\xD7"})})]}),(0,o.jsx)("div",{className:"connector-modal-body",children:U?(0,o.jsx)(_e,{created:U,groupName:j}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:"cn-form",children:[(0,o.jsxs)("label",{className:"cn-field",htmlFor:"cn-name",children:[(0,o.jsx)(M,{children:e("connectors.fName")}),(0,o.jsx)("input",{id:"cn-name",value:r.name,onChange:a=>f({name:a.currentTarget.value}),placeholder:e("connectors.fNamePh")})]}),(0,o.jsxs)("div",{className:"cn-field",children:[(0,o.jsx)(M,{children:e("connectors.fBot")}),(0,o.jsx)(ge,{id:"cn-bot",label:e("connectors.fBot"),value:r.botId,options:be,onChange:a=>f({botId:a})})]}),(0,o.jsxs)("div",{className:"cn-field",children:[(0,o.jsx)(M,{children:e("connectors.fKind")}),(0,o.jsx)(ge,{id:"cn-kind",label:e("connectors.fKind"),value:r.kind,options:A,onChange:a=>f({kind:a})})]}),r.kind==="workflow"?(0,o.jsxs)("label",{className:"cn-field",htmlFor:"cn-wf",children:[(0,o.jsx)(M,{children:e("connectors.fWf")}),(0,o.jsx)("input",{id:"cn-wf",value:r.workflowId,onChange:a=>f({workflowId:a.currentTarget.value}),placeholder:"workflowId"})]}):null,(0,o.jsxs)("div",{className:"cn-field",children:[(0,o.jsx)(M,{children:e("connectors.fMode")}),(0,o.jsx)(ge,{id:"cn-mode",label:e("connectors.fMode"),value:r.mode,options:pe,onChange:a=>f({mode:a})})]}),r.mode==="fixed"?(0,o.jsxs)("div",{className:"cn-field cn-field-wide",children:[(0,o.jsx)(M,{children:e("connectors.fFixedChat")}),(0,o.jsxs)("div",{className:"connector-chat-control",children:[r.manualChat?(0,o.jsx)("input",{id:"cn-chat",value:r.manualChatId,onChange:a=>f({manualChatId:a.currentTarget.value}),placeholder:e("connectors.fChatManualPh")}):(0,o.jsx)(Pe,{id:"cn-chat-sel",label:e("connectors.fFixedChat"),groups:B,value:r.chatId,placeholder:e("connectors.groupPickerPlaceholder"),searchPlaceholder:e("connectors.groupSearchPlaceholder"),emptyLabel:e("connectors.groupNoMatches"),selectedCountLabel:a=>e("connectors.groupSelectedCount",{count:a}),onChange:a=>f({chatId:a})}),(0,o.jsx)("button",{type:"button",className:"ghost connector-inline-link",onClick:()=>f({manualChat:!r.manualChat}),children:r.manualChat?e("connectors.chatListLink"):e("connectors.chatManualLink")})]})]}):r.mode==="dynamic"?(0,o.jsxs)("div",{className:"cn-field cn-field-wide",children:[(0,o.jsxs)(M,{help:e("connectors.allowHint"),children:[e("connectors.fAllow"),(0,o.jsx)("span",{className:"muted cn-optional",children:e("connectors.optional")})]}),(0,o.jsx)(Pe,{id:"cn-allow-chats",label:e("connectors.fAllow"),groups:B,value:r.allowChats,multiple:!0,allLabel:e("connectors.allowAll"),placeholder:e("connectors.allowAllHint"),searchPlaceholder:e("connectors.groupSearchPlaceholder"),emptyLabel:e("connectors.groupNoMatches"),selectedCountLabel:a=>e("connectors.groupSelectedCount",{count:a}),onChange:a=>f({allowChats:a})})]}):null,r.mode==="dynamic"?(0,o.jsx)("div",{className:"cn-field-wide",children:(0,o.jsx)("div",{className:"muted connector-form-hint",dangerouslySetInnerHTML:{__html:e("connectors.dynamicHint")}})}):null,r.mode==="new-group"?(0,o.jsxs)("div",{className:"cn-field cn-field-wide connector-new-group-config",children:[(0,o.jsx)(M,{children:e("connectors.newGroupStrategy")}),(0,o.jsxs)("div",{className:"connector-strategy-options",role:"radiogroup","aria-label":e("connectors.newGroupStrategy"),children:[(0,o.jsxs)("button",{type:"button",role:"radio","aria-checked":!r.deduplicate,className:`connector-strategy-option${r.deduplicate?"":" selected"}`,onClick:()=>f({deduplicate:!1}),children:[(0,o.jsx)("span",{className:"connector-strategy-radio","aria-hidden":"true"}),(0,o.jsxs)("span",{children:[(0,o.jsx)("b",{children:e("connectors.newGroupFresh")}),(0,o.jsx)("small",{children:e("connectors.newGroupFreshHint")})]})]}),(0,o.jsxs)("button",{type:"button",role:"radio","aria-checked":r.deduplicate,className:`connector-strategy-option${r.deduplicate?" selected":""}`,onClick:()=>f({deduplicate:!0}),children:[(0,o.jsx)("span",{className:"connector-strategy-radio","aria-hidden":"true"}),(0,o.jsxs)("span",{children:[(0,o.jsx)("b",{children:e("connectors.newGroupReuse")}),(0,o.jsx)("small",{children:e("connectors.newGroupReuseHint")})]})]})]}),r.deduplicate?(0,o.jsxs)("label",{className:"connector-dedup-field",htmlFor:"cn-dedup",children:[(0,o.jsx)(M,{help:(0,o.jsx)("span",{dangerouslySetInnerHTML:{__html:e("connectors.dedupHint")}}),children:e("connectors.fDedup")}),(0,o.jsx)("input",{id:"cn-dedup",value:r.dedup,onChange:a=>f({dedup:a.currentTarget.value}),placeholder:e("connectors.fDedupPh")})]}):null,(0,o.jsx)("p",{className:"connector-new-group-note",children:e("connectors.newGroupNotice")})]}):null,(0,o.jsxs)("label",{className:"cn-field cn-field-wide",htmlFor:"cn-instruction",children:[(0,o.jsxs)(M,{help:e("connectors.fInstructionPh"),children:[e("connectors.fInstruction"),(0,o.jsx)("span",{className:"muted cn-optional",children:e("connectors.optional")})]}),(0,o.jsx)("textarea",{id:"cn-instruction",rows:3,value:r.instruction,onChange:a=>f({instruction:a.currentTarget.value}),placeholder:e("connectors.fInstructionPh")})]}),(0,o.jsxs)("div",{className:"cn-field cn-field-wide connector-topic-message-config",children:[(0,o.jsx)(M,{help:e("connectors.topicMessageHint"),children:e("connectors.topicMessage")}),(0,o.jsx)("div",{className:"connector-topic-message-options",role:"radiogroup","aria-label":e("connectors.topicMessage"),children:["default","custom","none"].map(a=>(0,o.jsxs)("button",{type:"button",role:"radio","aria-checked":r.topicMessageMode===a,className:`connector-topic-message-option${r.topicMessageMode===a?" selected":""}`,onClick:()=>f({topicMessageMode:a}),children:[(0,o.jsx)("span",{className:"connector-strategy-radio","aria-hidden":"true"}),(0,o.jsxs)("span",{children:[(0,o.jsx)("b",{children:e(`connectors.topicMessage${a==="default"?"Default":a==="custom"?"Custom":"None"}`)}),(0,o.jsx)("small",{children:e(`connectors.topicMessage${a==="default"?"DefaultHint":a==="custom"?"CustomHint":"NoneHint"}`)})]})]},a))}),r.topicMessageMode==="custom"?(0,o.jsxs)("label",{className:"connector-topic-message-input",htmlFor:"cn-topic-message",children:[(0,o.jsx)("input",{id:"cn-topic-message",type:"text",maxLength:200,value:r.topicMessageText,onChange:a=>f({topicMessageText:a.currentTarget.value}),placeholder:e("connectors.topicMessageCustomPh")}),(0,o.jsxs)("small",{children:[e("connectors.topicMessageCustomHelp"),(0,o.jsxs)("span",{children:[Array.from(r.topicMessageText).length,"/200"]})]})]}):(0,o.jsx)("p",{className:`connector-topic-message-preview${r.topicMessageMode==="none"?" muted":""}`,children:r.topicMessageMode==="none"?e("connectors.topicMessageNonePreview"):e("connectors.topicMessagePreview",{source:r.name.trim()||e("connectors.topicMessageSourceFallback")})})]}),(0,o.jsxs)("label",{className:"connector-log-policy cn-field-wide",htmlFor:"cn-store-payload",children:[(0,o.jsx)("input",{id:"cn-store-payload",type:"checkbox",checked:r.storePayload,onChange:a=>f({storePayload:a.currentTarget.checked})}),(0,o.jsxs)("span",{children:[(0,o.jsx)("strong",{children:e("connectors.storePayload")}),(0,o.jsx)("small",{children:e("connectors.storePayloadHint")})]})]}),(0,o.jsxs)("div",{className:"cn-field",children:[(0,o.jsx)(M,{children:e("connectors.fVerify")}),(0,o.jsx)(ge,{id:"cn-verify",label:e("connectors.fVerify"),value:r.verify,options:he,onChange:a=>f({verify:a})})]}),(0,o.jsxs)("label",{className:"cn-field",htmlFor:"cn-secret",children:[(0,o.jsx)(M,{children:e("connectors.fSecret")}),(0,o.jsx)("input",{id:"cn-secret",value:r.secret,onChange:a=>f({secret:a.currentTarget.value}),placeholder:e(P?"connectors.fSecretEditPh":"connectors.fSecretPh")})]})]}),_?(0,o.jsx)("p",{className:`connector-create-message${_.error?" err":""}`,children:_.text}):null]})}),(0,o.jsxs)("footer",{className:"connector-modal-actions",children:[(0,o.jsx)("button",{type:"button",disabled:J,onClick:S,children:e("connectors.cancel")}),U?(0,o.jsx)("button",{type:"button",className:"primary",onClick:S,children:e("connectors.close")}):(0,o.jsx)("button",{id:"cn-create",type:"button",className:"primary",disabled:J,onClick:()=>{ne()},children:e(P?"connectors.btnSave":"connectors.btnCreate")})]})]})}),(0,o.jsx)("section",{className:"overview-block connector-section connector-list-section",children:(0,o.jsx)("div",{className:"card connector-list-card",children:$?(0,o.jsx)(le,{className:"connector-list-loading",label:e("connectors.loading"),compact:!0}):(0,o.jsx)(Ue,{connectors:R,bots:L,copiedId:u,editMsg:Z,groupName:j,modeLabel:z,kindLabel:oe,onCopy:Fe,onEdit:te,onToggle:a=>{ae(a)},onTogglePayloadLogging:a=>{fe(a)},onDelete:a=>{Se(a)}})})})]}):(0,o.jsx)(Te,{embedded:!0})]})}function _e(t){let e=W(),s=t.created,g=s.isDynamic?`${s.url}?chatId=${s.exampleChat}`:s.url,k=s.exampleChat!=="<chatId>"?`\uFF08${t.groupName(s.exampleChat)}\uFF09`:"";return(0,o.jsx)("div",{className:"connector-created-wrap",children:(0,o.jsxs)("div",{className:"card connector-created-card",children:[(0,o.jsxs)("p",{className:"connector-created-title ok",children:[e("connectors.createdPrefix",{name:s.name}),s.mode==="fixed"&&s.chatId?(0,o.jsxs)("span",{className:"muted",children:[" \xB7 ",e("connectors.createdDest",{name:t.groupName(s.chatId)})]}):null]}),(0,o.jsxs)("p",{className:"connector-created-line",children:[(0,o.jsx)("span",{className:"muted",children:e("connectors.webhookUrl")}),(0,o.jsx)("code",{children:s.url})]}),s.secret?(0,o.jsxs)("p",{className:"connector-created-line",children:[(0,o.jsxs)("span",{className:"muted",children:[s.isToken?e("connectors.tokenLabel"):e("connectors.signLabel"),e("connectors.secretOnce")]}),(0,o.jsx)("code",{children:s.secret})]}):null,s.isToken&&s.isDynamic?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("p",{className:"muted connector-created-help",children:e("connectors.usageDynamicLede",{gn:k})}),(0,o.jsx)("pre",{children:(0,o.jsx)("code",{children:`curl -X POST '${g}' -H 'content-type: application/json' -d '{}'`})}),(0,o.jsx)("p",{className:"muted connector-created-help",dangerouslySetInnerHTML:{__html:e("connectors.usageDynamicNote")}})]}):s.isToken?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("p",{className:"muted connector-created-help",children:e("connectors.usageTokenLede")}),(0,o.jsx)("pre",{children:(0,o.jsx)("code",{children:`curl -X POST '${g}' -H 'content-type: application/json' -d '{}'`})}),(0,o.jsx)("p",{className:"muted connector-created-help",dangerouslySetInnerHTML:{__html:e("connectors.usageTokenNote")}})]}):(0,o.jsx)("p",{className:"muted connector-created-help",dangerouslySetInnerHTML:{__html:e("connectors.usageHmac")+(s.isDynamic?e("connectors.usageHmacDynamic"):"")}})]})})}function Ue(t){let e=W();return t.connectors.length?(0,o.jsx)(o.Fragment,{children:t.connectors.map(s=>{let g=t.bots.find(C=>C.larkAppId===s.target.botId),k=Ne(s.id),L=(s.verify?.type??"token")==="token",h=e(L?"connectors.badgeToken":"connectors.badgeSign"),I=s.target.mode==="fixed"&&s.target.chatId?e("connectors.dest",{name:t.groupName(s.target.chatId)}):"",y=t.editMsg?.id===s.id?t.editMsg:null,R=t.copiedId===s.id;return(0,o.jsxs)("div",{className:"card connector-item-card",children:[(0,o.jsxs)("div",{className:"connector-item-head",children:[(0,o.jsxs)("div",{className:"connector-item-main",children:[(0,o.jsxs)("div",{className:"connector-item-title",children:[(0,o.jsx)("b",{children:s.name}),(0,o.jsx)("span",{className:s.enabled?"connector-status-pill ok":"connector-status-pill muted",children:s.enabled?e("connectors.enabled"):e("connectors.disabled")})]}),(0,o.jsxs)("div",{className:"connector-item-meta",children:[(0,o.jsx)("span",{children:g?.botName||s.target.botId}),(0,o.jsx)("span",{children:t.kindLabel(s.target.kind)}),(0,o.jsx)("span",{children:t.modeLabel(s.target.mode)}),I?(0,o.jsx)("span",{children:I}):null,(0,o.jsx)("span",{children:h}),(0,o.jsx)("span",{children:s.loggingPolicy?.storePayload!==!1?e("connectors.payloadLogged",{days:s.loggingPolicy?.retentionDays??14}):e("connectors.metadataOnly")})]})]}),(0,o.jsx)("button",{className:`ghost connector-copy-button${R?" copied":""}`,type:"button",onClick:()=>t.onCopy(s),children:e(R?"connectors.copied":"connectors.copy")})]}),(0,o.jsxs)("div",{className:"connector-url-row",children:[(0,o.jsx)("span",{className:"muted",children:e("connectors.webhookUrl")}),(0,o.jsxs)("code",{children:[k,L?"/<token>":""]})]}),L?(0,o.jsx)("div",{className:"muted connector-item-note",dangerouslySetInnerHTML:{__html:e("connectors.tokenHint")}}):null,s.target.kind==="workflow"?(0,o.jsx)("div",{className:"muted connector-item-note",children:e("connectors.legacyWorkflowNote")}):null,s.target.mode==="dynamic"?(0,o.jsx)("div",{className:"muted connector-item-note",dangerouslySetInnerHTML:{__html:e("connectors.dynamicReqHint")}}):null,s.promptEnvelope?.instruction?(0,o.jsxs)("div",{className:"muted connector-item-note",children:[e("connectors.instructionPrefix"),s.promptEnvelope.instruction]}):null,(0,o.jsx)("div",{className:"muted connector-item-note",children:s.topicMessage?.mode==="none"?e("connectors.topicMessageListNone"):s.topicMessage?.mode==="custom"?e("connectors.topicMessageListCustom",{text:s.topicMessage.text||""}):e("connectors.topicMessageListDefault")}),y?(0,o.jsx)("div",{className:y.error?"err connector-item-note":"muted connector-item-note",children:y.text}):null,(0,o.jsxs)("div",{className:"connector-item-actions",children:[(0,o.jsx)("button",{className:"ghost",type:"button",onClick:()=>t.onEdit(s),children:e("connectors.btnEdit")}),(0,o.jsx)("button",{className:"ghost",type:"button",onClick:()=>t.onTogglePayloadLogging(s),children:s.loggingPolicy?.storePayload!==!1?e("connectors.btnDisablePayloadLog"):e("connectors.btnEnablePayloadLog")}),(0,o.jsx)("button",{className:"ghost",type:"button",onClick:()=>t.onToggle(s),children:s.enabled?e("connectors.btnDisable"):e("connectors.btnEnable")}),(0,o.jsx)("button",{className:"ghost",type:"button",onClick:()=>t.onDelete(s),children:e("connectors.btnDel")})]})]},s.id)})}):(0,o.jsx)("p",{className:"muted connector-list-empty",children:e("connectors.empty")})}function to(t){return se(t,(0,o.jsx)(xe,{tab:"webhooks"}))}function no(t){return se(t,(0,o.jsx)(xe,{tab:"logs"}))}export{oo as buildConnectorInstructionUpdateBody,Be as buildConnectorKindOptions,no as renderConnectorsLogsPage,to as renderConnectorsPage,qe as replaceConnectorById};
@@ -1 +0,0 @@
1
- import{a as Q,b as j}from"./chunk-R7IAKAYX.js";import{a as J,b as A}from"./chunk-KPQAUX7V.js";import{b as H,d as M,e as T,f as O,j as W,l as x,m as I,n as P,o as X,q as G}from"./chunk-QFMH6ITB.js";import{A as $,C,D as q,E as y,F as f,G as h,u as L,w as k}from"./chunk-X2L65IOM.js";import{a as V}from"./chunk-SYC6D5XU.js";import{a as ae,d as K}from"./chunk-5THX4DI2.js";import{c as R}from"./chunk-7SZRL6FY.js";var r=R(ae(),1);var t=R(K(),1),re=new Set(["working","analyzing","active","starting"]),le=new Set(["idle","dormant"]),ee="botmux.overview.teamExpanded",te="botmux.overview.activeSort",_=5,z=1,ce=260;function ve(){try{return window.localStorage.getItem(ee)==="1"}catch{return!1}}function de(e){try{window.localStorage.setItem(ee,e?"1":"0")}catch{}}function me(e){return e==="attention"?"attention":"time"}function ue(){try{return me(window.localStorage.getItem(te))}catch{return"time"}}function we(e){try{window.localStorage.setItem(te,e)}catch{}}function pe(e,s){let o=(i,a)=>Number(a.lastMessageAt??0)-Number(i.lastMessageAt??0);return s==="attention"?[...e].sort((i,a)=>{let m=f(i)?0:1,l=f(a)?0:1;if(m!==l)return m-l;if(m===0){let p=h(i)-h(a);if(p!==0)return p}return o(i,a)}):[...e].sort(o)}function fe(e){return String(e??"unknown").toLowerCase().replace(/[^a-z0-9_-]/g,"-")}function ge(e,s){let o=String(e??"unknown"),i=`sessions.status.${o}`,a=s(i);return a===i?o:a}function Se(e){if(!e)return z*_;let s=window.getComputedStyle(e).gridTemplateColumns.split(/\s+/).filter(i=>Number.parseFloat(i)>0);return Math.max(1,s.length||_)*z}function be(e,s){if(!e)return;let o=document.querySelector(".sidebar");if(!o||window.matchMedia("(max-width: 980px)").matches){e.style.removeProperty(s);return}let i=o.getBoundingClientRect().bottom,a=e.getBoundingClientRect().top,l=`${Math.max(ce,Math.round(i-a))}px`;e.style.getPropertyValue(s)!==l&&e.style.setProperty(s,l)}function he({card:e}){let s=A(),o=!e.online&&e.active.length===0,i=e.attention.length>0,a=e.busy.length>0,m=i?"warn":a?"busy":o?"off":"ok",l;if(i){let v=[...e.attention].sort((g,S)=>h(g)-h(S))[0];l=(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("b",{children:(y(v.title)||v.sessionId).slice(0,60)})," \xB7 ",f(v)??""]})}else if(a){let v=[...e.busy].sort((g,S)=>Number(S.lastMessageAt??0)-Number(g.lastMessageAt??0))[0];l=(0,t.jsx)("b",{children:(y(v.title)||v.sessionId).slice(0,60)})}else o?l=s("overview.botOffline"):l=s("overview.botIdle");let p=i?(0,t.jsx)("span",{className:"tag tag-warn",children:s("overview.botNeedsYou")}):a?(0,t.jsx)("span",{className:"tag tag-run",children:s("overview.botBusy",{count:e.busy.length})}):o?(0,t.jsx)("span",{className:"tag tag-off",children:s("overview.botOff")}):(0,t.jsx)("span",{className:"tag tag-ok",children:s("overview.botReady")});return(0,t.jsxs)("article",{className:`mate${i?" mate-attn":""}${o?" mate-off":""}`,children:[(0,t.jsxs)("div",{className:"mate-top",children:[(0,t.jsx)(H,{html:k({name:e.botName,larkAppId:e.larkAppId,avatarUrl:e.botAvatarUrl,dot:m})}),(0,t.jsxs)("div",{className:"mate-id",children:[(0,t.jsx)("b",{children:e.botName}),(0,t.jsx)("span",{className:"mate-role",children:e.cliId})]})]}),(0,t.jsx)("div",{className:"mate-task",children:l}),(0,t.jsxs)("div",{className:"mate-foot",children:[p,(0,t.jsx)("span",{children:e.lastActiveAt?s("overview.lastActive",{time:L(e.lastActiveAt)}):s("common.never")})]})]})}function Ae({session:e}){let s=A(),o=C(e),i=String(e.status??"unknown"),a=f(e);return(0,t.jsxs)(I,{kind:"session",children:[(0,t.jsx)(H,{html:k({name:o,larkAppId:e.larkAppId,size:"sm"})}),(0,t.jsxs)(P,{children:[(0,t.jsx)("b",{children:(y(e.title)||e.sessionId).slice(0,64)}),(0,t.jsxs)("span",{children:[o," \xB7 ",q(e)??e.cliId??"unknown"," \xB7 ",L(e.lastMessageAt)]})]}),(0,t.jsx)(X,{children:a?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("a",{className:"overview-list-action",href:"#/sessions",children:s("strip.handle")}),(0,t.jsx)("span",{className:"status overview-list-status status-attention",children:a})]}):(0,t.jsx)("span",{className:`status overview-list-status status-${fe(i)}`,children:ge(i,s)})})]})}function Ne({schedule:e,timeZone:s}){let o=e.nextRunAt?new Date(e.nextRunAt).toLocaleString(void 0,s?{timeZone:s,timeZoneName:"short"}:void 0):"-";return(0,t.jsxs)(I,{kind:"schedule",children:[(0,t.jsxs)(P,{children:[(0,t.jsx)("strong",{children:e.name??e.id}),(0,t.jsxs)("span",{children:[C(e)," \xB7 ",e.parsed?.display??""]})]}),(0,t.jsx)("span",{className:"overview-list-meta",children:(0,t.jsx)(W,{text:o,showPopover:!1,durationMs:2600})})]})}function ye({mode:e,onModeChange:s}){let o=A(),i=o(e==="attention"?"overview.sortAttentionFirst":"overview.sortByTime");return(0,t.jsx)(G,{className:"overview-active-sort-menu",label:i,value:e,options:[{value:"time",label:o("overview.sortByTime")},{value:"attention",label:o("overview.sortAttentionFirst")}],onChange:s})}function Me(){let e=A(),s=(0,r.useRef)(null),o=(0,r.useRef)(null),i=(0,r.useRef)(null),[a,m]=(0,r.useState)(ve),[l,p]=(0,r.useState)(ue),[v,g]=(0,r.useState)(z*_),[S,D]=(0,r.useState)(0),{sessions:N,schedules:B,scheduleTimeZone:ne}=J(n=>({sessions:[...n.sessions.values()],schedules:[...n.schedules.values()],scheduleTimeZone:n.scheduleTimeZone}));(0,r.useEffect)(()=>{let n=0,d=()=>{window.cancelAnimationFrame(n),n=window.requestAnimationFrame(()=>{let w=Se(s.current);g(c=>c===w?c:w)})};d();let u=typeof ResizeObserver>"u"||!s.current?null:new ResizeObserver(d);return u&&s.current&&u.observe(s.current),window.addEventListener("resize",d),()=>{window.cancelAnimationFrame(n),u?.disconnect(),window.removeEventListener("resize",d)}},[]),(0,r.useEffect)(()=>{Q().then(()=>D(n=>n+1)),$().then(()=>D(n=>n+1))},[]);let F=(0,r.useMemo)(()=>N.filter(n=>n.status!=="closed"),[N]),b=(0,r.useMemo)(()=>j(N),[N,S]),U=a?b:b.slice(0,v),Y=(0,r.useMemo)(()=>pe(F.filter(n=>f(n)||re.has(n.status)||le.has(n.status)),l).slice(0,7),[F,l]),E=(0,r.useMemo)(()=>B.filter(n=>n.nextRunAt).sort((n,d)=>Date.parse(n.nextRunAt)-Date.parse(d.nextRunAt)).slice(0,5),[B]);(0,r.useEffect)(()=>{let n=[{el:o.current,propertyName:"--active-sessions-min-height"},{el:i.current,propertyName:"--schedules-panel-min-height"}].filter(c=>!!c.el);if(!n.length)return;let d=0,u=()=>{window.cancelAnimationFrame(d),d=window.requestAnimationFrame(()=>{for(let c of n)be(c.el,c.propertyName)})};u();let w=typeof ResizeObserver>"u"?null:new ResizeObserver(u);if(w){for(let ie of n)w.observe(ie.el);let c=document.querySelector(".sidebar"),Z=n[0].el.closest(".page");c&&w.observe(c),Z&&w.observe(Z)}return window.addEventListener("resize",u),()=>{window.cancelAnimationFrame(d),w?.disconnect(),window.removeEventListener("resize",u);for(let c of n)c.el.style.removeProperty(c.propertyName)}},[a,v,b.length,E.length]);let se=()=>{m(n=>(de(!n),!n))},oe=n=>{p(n),we(n)};return(0,t.jsxs)("section",{className:"page hero-page",children:[(0,t.jsx)("div",{className:"page-heading",children:(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"eyebrow",children:e("app.subtitle")}),(0,t.jsx)("h1",{children:e("overview.title")})]})}),(0,t.jsxs)("div",{className:"overview-layout",children:[(0,t.jsxs)("div",{className:"overview-main",children:[(0,t.jsxs)("section",{className:"overview-block team-section",children:[(0,t.jsx)(M,{title:e("overview.team"),count:e("overview.teamCount",{count:b.length}),hint:e("overview.teamHint"),children:(0,t.jsx)(O,{children:(0,t.jsx)(T,{href:"#/bot-defaults",children:e("overview.viewAllPlain")})})}),(0,t.jsx)("div",{className:"team-grid",id:"team-grid",ref:s,children:U.length?U.map(n=>(0,t.jsx)(he,{card:n},n.larkAppId??n.botName)):(0,t.jsx)("div",{className:"empty",children:e("overview.noSessions")})}),b.length>v?(0,t.jsx)("button",{type:"button",className:"team-toggle",id:"team-toggle",onClick:se,children:e(a?"overview.teamCollapse":"overview.teamExpand")}):null]}),(0,t.jsxs)("section",{className:"overview-block",children:[(0,t.jsx)(M,{title:e("overview.activeSessions"),children:(0,t.jsxs)(O,{children:[(0,t.jsx)(ye,{mode:l,onModeChange:oe}),(0,t.jsx)(T,{href:"#/sessions",children:e("overview.viewAllPlain")})]})}),(0,t.jsx)("section",{className:"panel active-sessions-panel",ref:o,children:(0,t.jsx)(x,{id:"recent-sessions",children:Y.length?Y.map(n=>(0,t.jsx)(Ae,{session:n},n.sessionId)):(0,t.jsx)("li",{className:"empty",children:e("overview.noSessions")})})})]})]}),(0,t.jsx)("aside",{className:"overview-side",children:(0,t.jsxs)("section",{className:"overview-block",children:[(0,t.jsx)(M,{title:e("overview.nextSchedules"),children:(0,t.jsx)(T,{href:"#/schedules",children:e("overview.viewAllPlain")})}),(0,t.jsx)("section",{className:"panel schedules-panel",ref:i,children:(0,t.jsx)(x,{id:"next-schedules",children:E.length?E.map(n=>(0,t.jsx)(Ne,{schedule:n,timeZone:ne},n.id)):(0,t.jsx)("li",{className:"empty",children:e("overview.noSchedules")})})})]})})]})]})}function Ce(e){e.classList.add("overview-root");let s=V(e,(0,t.jsx)(Me,{}));return()=>{s(),e.classList.remove("overview-root")}}export{Ce as renderOverviewPage};