thursday-agent 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (358) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +1 -0
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/routes-manifest.json +6 -0
  6. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  7. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/.next/server/app/_global-error.html +1 -1
  9. package/.next/server/app/_global-error.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  14. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/.next/server/app/_not-found.html +1 -1
  16. package/.next/server/app/_not-found.rsc +13 -13
  17. package/.next/server/app/_not-found.segments/_full.segment.rsc +13 -13
  18. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +12 -12
  19. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  20. package/.next/server/app/api/artifact/route.js +1 -1
  21. package/.next/server/app/api/artifact/route.js.nft.json +1 -1
  22. package/.next/server/app/api/bot/notes/route/app-paths-manifest.json +3 -0
  23. package/.next/server/app/api/bot/notes/route/build-manifest.json +12 -0
  24. package/.next/server/app/api/bot/notes/route/server-reference-manifest.json +4 -0
  25. package/.next/server/app/api/bot/notes/route.js +14 -0
  26. package/.next/server/app/api/bot/notes/route.js.map +5 -0
  27. package/.next/server/app/api/bot/notes/route.js.nft.json +1 -0
  28. package/.next/server/app/api/bot/notes/route_client-reference-manifest.js +3 -0
  29. package/.next/server/app/api/bot/route.js +4 -4
  30. package/.next/server/app/api/bot/route.js.nft.json +1 -1
  31. package/.next/server/app/api/bot/task/[id]/route.js +6 -6
  32. package/.next/server/app/api/bot/task/[id]/route.js.nft.json +1 -1
  33. package/.next/server/app/api/bot/task/route.js +6 -6
  34. package/.next/server/app/api/bot/task/route.js.nft.json +1 -1
  35. package/.next/server/app/api/config/route.js +3 -3
  36. package/.next/server/app/api/config/route.js.nft.json +1 -1
  37. package/.next/server/app/api/events/route.js +1 -1
  38. package/.next/server/app/api/events/route.js.nft.json +1 -1
  39. package/.next/server/app/api/file/[...path]/route.js +1 -1
  40. package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
  41. package/.next/server/app/api/llm-model/catalog/route.js +6 -6
  42. package/.next/server/app/api/llm-model/catalog/route.js.nft.json +1 -1
  43. package/.next/server/app/api/llm-model/route.js +3 -3
  44. package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
  45. package/.next/server/app/api/mcp/[name]/route.js +3 -3
  46. package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
  47. package/.next/server/app/api/mcp/oauth/callback/route.js +5 -5
  48. package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
  49. package/.next/server/app/api/mcp/route.js +3 -3
  50. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  51. package/.next/server/app/api/mcp/tools/route.js +3 -3
  52. package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
  53. package/.next/server/app/api/memory/route.js +7 -7
  54. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  55. package/.next/server/app/api/memory/tidy/route.js +10 -11
  56. package/.next/server/app/api/memory/tidy/route.js.nft.json +1 -1
  57. package/.next/server/app/api/skills/[source]/[name]/route.js +1 -1
  58. package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
  59. package/.next/server/app/api/skills/route.js +1 -1
  60. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  61. package/.next/server/app/api/thursday/call/route.js +8 -8
  62. package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
  63. package/.next/server/app/api/thursday/skills/route.js +8 -8
  64. package/.next/server/app/api/thursday/skills/route.js.nft.json +1 -1
  65. package/.next/server/app/api/thursday/tool-call/route.js +11 -12
  66. package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
  67. package/.next/server/app/api/workspace/route.js +1 -1
  68. package/.next/server/app/api/workspace/route.js.nft.json +1 -1
  69. package/.next/server/app/artifact/[...path]/page/server-reference-manifest.json +1 -1
  70. package/.next/server/app/artifact/[...path]/page.js +3 -3
  71. package/.next/server/app/artifact/[...path]/page.js.nft.json +1 -1
  72. package/.next/server/app/artifact/[...path]/page_client-reference-manifest.js +1 -1
  73. package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  74. package/.next/server/app/page/server-reference-manifest.json +63 -41
  75. package/.next/server/app/page.js +7 -7
  76. package/.next/server/app/page.js.nft.json +1 -1
  77. package/.next/server/app/page_client-reference-manifest.js +1 -1
  78. package/.next/server/app-paths-manifest.json +1 -0
  79. package/.next/server/chunks/0d-b_next_dist_server_app-render_after-task-async-storage_external_0-exn7p.js +3 -0
  80. package/.next/server/chunks/{[root-of-the-server]__0t_dqaj._.js → [root-of-the-server]__0-npkh_._.js} +1 -1
  81. package/.next/server/chunks/[root-of-the-server]__005var5._.js +3 -0
  82. package/.next/server/chunks/[root-of-the-server]__019dx9f._.js +2 -2
  83. package/.next/server/chunks/[root-of-the-server]__02va5wz._.js +3 -0
  84. package/.next/server/chunks/{[root-of-the-server]__1mzp_el._.js → [root-of-the-server]__04_8spk._.js} +2 -2
  85. package/.next/server/chunks/[root-of-the-server]__06t77t4._.js +1 -1
  86. package/.next/server/chunks/[root-of-the-server]__0bed6hu._.js +4 -4
  87. package/.next/server/chunks/[root-of-the-server]__0cro2dz._.js +5 -0
  88. package/.next/server/chunks/[root-of-the-server]__0emr6go._.js +3 -0
  89. package/.next/server/chunks/[root-of-the-server]__0le4d-p._.js +1 -1
  90. package/.next/server/chunks/[root-of-the-server]__0m8ywyo._.js +5 -5
  91. package/.next/server/chunks/{[root-of-the-server]__113fqg5._.js → [root-of-the-server]__0p32jfz._.js} +3 -3
  92. package/.next/server/chunks/[root-of-the-server]__0phdgco._.js +4 -4
  93. package/.next/server/chunks/[root-of-the-server]__0wvgrsl._.js +1 -1
  94. package/.next/server/chunks/[root-of-the-server]__11j52t0._.js +5 -0
  95. package/.next/server/chunks/{[root-of-the-server]__0j_n5l3._.js → [root-of-the-server]__1692zrv._.js} +2 -2
  96. package/.next/server/chunks/[root-of-the-server]__16thabu._.js +1 -1
  97. package/.next/server/chunks/[root-of-the-server]__173nhwf._.js +3 -3
  98. package/.next/server/chunks/[root-of-the-server]__1bn73ih._.js +10 -0
  99. package/.next/server/chunks/[root-of-the-server]__1bqhuh9._.js +4 -4
  100. package/.next/server/chunks/[root-of-the-server]__1ccon1w._.js +10 -0
  101. package/.next/server/chunks/[root-of-the-server]__1cqizfq._.js +1 -1
  102. package/.next/server/chunks/{[root-of-the-server]__1u_qvc7._.js → [root-of-the-server]__1fboj2j._.js} +2 -2
  103. package/.next/server/chunks/{[root-of-the-server]__1dow0bz._.js → [root-of-the-server]__1oli73c._.js} +2 -2
  104. package/.next/server/chunks/[root-of-the-server]__1txedx6._.js +4 -4
  105. package/.next/server/chunks/[root-of-the-server]__1untqv8._.js +5 -0
  106. package/.next/server/chunks/_0-73of8._.js +55 -0
  107. package/.next/server/chunks/{_2050gwn._.js → _00_584r._.js} +66 -28
  108. package/.next/server/chunks/{_0y8is-s._.js → _03a0897._.js} +1 -1
  109. package/.next/server/chunks/_05h2cii._.js +1 -1
  110. package/.next/server/chunks/_06mxlgn._.js +1 -1
  111. package/.next/server/chunks/_0a351g7._.js +1 -1
  112. package/.next/server/chunks/{_0hin38_._.js → _0khihjk._.js} +5 -5
  113. package/.next/server/chunks/_0kjjmag._.js +1 -1
  114. package/.next/server/chunks/{_1t8fv7b._.js → _0n74zsf._.js} +5 -5
  115. package/.next/server/chunks/_0nn99o2._.js +3 -0
  116. package/.next/server/chunks/_0pppbb5._.js +10 -6
  117. package/.next/server/chunks/{_1icgbi8._.js → _0rnf-6n._.js} +5 -5
  118. package/.next/server/chunks/_0u10wmw._.js +55 -0
  119. package/.next/server/chunks/{_0kl37zl._.js → _0vnutv9._.js} +1 -1
  120. package/.next/server/chunks/_0wp4le3._.js +1 -1
  121. package/.next/server/chunks/_0y5fg-x._.js +1 -1
  122. package/.next/server/chunks/_106co2o._.js +3 -0
  123. package/.next/server/chunks/_12bbv5i._.js +10 -6
  124. package/.next/server/chunks/_15hq89o._.js +1 -1
  125. package/.next/server/chunks/_15q1pig._.js +1 -1
  126. package/.next/server/chunks/_18-1wcc._.js +55 -0
  127. package/.next/server/chunks/_19wg5yn._.js +138 -0
  128. package/.next/server/chunks/_1_5mnq4._.js +18 -0
  129. package/.next/server/chunks/_1bt95p9._.js +55 -0
  130. package/.next/server/chunks/_1cbk7ms._.js +9 -9
  131. package/.next/server/chunks/_1drgfx4._.js +18 -0
  132. package/.next/server/chunks/_1drv2et._.js +10 -6
  133. package/.next/server/chunks/{_10qam6o._.js → _1e48czp._.js} +5 -5
  134. package/.next/server/chunks/{_1skgy7b._.js → _1kg70wc._.js} +5 -5
  135. package/.next/server/chunks/_1php4eq._.js +1 -1
  136. package/.next/server/chunks/_1rysr-r._.js +10 -0
  137. package/.next/server/chunks/_1u3rwbr._.js +3 -0
  138. package/.next/server/chunks/_1x7p319._.js +1 -1
  139. package/.next/server/chunks/_1yuv4vp._.js +1 -1
  140. package/.next/server/chunks/_next-internal_server_app_api_bot_notes_route_actions_0qcsyu7.js +3 -0
  141. package/.next/server/chunks/config_ts_1g4sz5o._.js +1 -1
  142. package/.next/server/chunks/features_bot_task_query_ts_11xuzl3._.js +1 -1
  143. package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0228f43._.js → node_modules_consola_dist_chunks_prompt_mjs_02s3hjt._.js} +1 -1
  144. package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0ir-vo2._.js → node_modules_consola_dist_chunks_prompt_mjs_06067w6._.js} +1 -1
  145. package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0otw8ef._.js → node_modules_consola_dist_chunks_prompt_mjs_096ais_._.js} +1 -1
  146. package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0tf290y._.js → node_modules_consola_dist_chunks_prompt_mjs_0a1rd09._.js} +1 -1
  147. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0gzvgfv._.js +3 -0
  148. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0j61-ma._.js +3 -0
  149. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0tvkfgh._.js +3 -0
  150. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_11zjo-1._.js +3 -0
  151. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1pycqsq._.js +3 -0
  152. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1tpvamf._.js +3 -0
  153. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1y9-wcr._.js +3 -0
  154. package/.next/server/chunks/ssr/[externals]__0dizgek._.js +3 -0
  155. package/.next/server/chunks/ssr/[root-of-the-server]__0f6s48x._.js +1 -1
  156. package/.next/server/chunks/ssr/[root-of-the-server]__0m1b5ky._.js +3 -0
  157. package/.next/server/chunks/ssr/{[root-of-the-server]__0dfwvr4._.js → [root-of-the-server]__0un-erv._.js} +2 -2
  158. package/.next/server/chunks/ssr/[root-of-the-server]__1-mnhyd._.js +5 -3
  159. package/.next/server/chunks/ssr/[root-of-the-server]__1bww500._.js +3 -0
  160. package/.next/server/chunks/ssr/[root-of-the-server]__1mzi-ju._.js +1 -1
  161. package/.next/server/chunks/ssr/[root-of-the-server]__1qfqvmg._.js +3 -0
  162. package/.next/server/chunks/ssr/[root-of-the-server]__1vcdast._.js +3 -0
  163. package/.next/server/chunks/ssr/[root-of-the-server]__1xwnu-h._.js +3 -0
  164. package/.next/server/chunks/ssr/_03webdr._.js +3 -0
  165. package/.next/server/chunks/ssr/{_0gd4vaa._.js → _040sk32._.js} +71 -29
  166. package/.next/server/chunks/ssr/_077-g6s._.js +1 -1
  167. package/.next/server/chunks/ssr/{_0lc_7c8._.js → _09ja_w1._.js} +2 -2
  168. package/.next/server/chunks/ssr/{_1dcxzqe._.js → _0f_b_9s._.js} +2 -2
  169. package/.next/server/chunks/ssr/_0h7zdni._.js +1 -1
  170. package/.next/server/chunks/ssr/_0lu1n_x._.js +3 -0
  171. package/.next/server/chunks/ssr/_0sf1isi._.js +1 -1
  172. package/.next/server/chunks/ssr/_0su6_08._.js +3 -0
  173. package/.next/server/chunks/ssr/{_0nso8tp._.js → _0w5bgak._.js} +2 -2
  174. package/.next/server/chunks/ssr/{_19_o9d-._.js → _0x_nu5e._.js} +2 -2
  175. package/.next/server/chunks/ssr/_1-teee5._.js +3 -3
  176. package/.next/server/chunks/ssr/_13punpm._.js +1 -1
  177. package/.next/server/chunks/ssr/{_0ay6b01._.js → _1ciyoo3._.js} +2 -2
  178. package/.next/server/chunks/ssr/_1e-dgz0._.js +1 -1
  179. package/.next/server/chunks/ssr/_1fq7zgb._.js +1 -1
  180. package/.next/server/chunks/ssr/{_0cvjbuz._.js → _1g6l4uj._.js} +2 -2
  181. package/.next/server/chunks/ssr/{_0q_2f2x._.js → _1lip4th._.js} +2 -2
  182. package/.next/server/chunks/ssr/_1m3bsfr._.js +3 -0
  183. package/.next/server/chunks/ssr/_1mznrxk._.js +1 -1
  184. package/.next/server/chunks/ssr/_1ruzehw._.js +3 -0
  185. package/.next/server/chunks/ssr/_1vyd1ji._.js +3 -0
  186. package/.next/server/chunks/ssr/features_bot_components_bot-setting_tsx_01ajft6._.js +2 -2
  187. package/.next/server/chunks/ssr/features_config_components_14jqgy4._.js +1 -1
  188. package/.next/server/chunks/ssr/features_config_components_config-setting_tsx_0xfwqdg._.js +1 -1
  189. package/.next/server/chunks/ssr/features_connectors_components_mcp-setting_tsx_0jmbgvp._.js +1 -1
  190. package/.next/server/chunks/ssr/features_memory_components_memory-setting_tsx_0oa43sw._.js +1 -1
  191. package/.next/server/chunks/ssr/lib_realtime_12wg_dd._.js +27 -0
  192. package/.next/server/chunks/ssr/lib_realtime_15h_v1v._.js +27 -0
  193. package/.next/server/chunks/ssr/{node_modules_108wd2o._.js → node_modules_004qlr4._.js} +1 -1
  194. package/.next/server/chunks/ssr/{node_modules_1ub40gk._.js → node_modules_01qnv-a._.js} +1 -1
  195. package/.next/server/chunks/ssr/{node_modules_1y8_3vg._.js → node_modules_04n7mjs._.js} +1 -1
  196. package/.next/server/chunks/ssr/{node_modules_0_j7-g4._.js → node_modules_08d8bke._.js} +1 -1
  197. package/.next/server/chunks/ssr/{node_modules_0y2-av4._.js → node_modules_09xhur7._.js} +1 -1
  198. package/.next/server/chunks/ssr/{node_modules_043-236._.js → node_modules_0_n241r._.js} +1 -1
  199. package/.next/server/chunks/ssr/{node_modules_0ls96je._.js → node_modules_0iz1rzd._.js} +1 -1
  200. package/.next/server/chunks/ssr/{node_modules_0xwx4u-._.js → node_modules_0kl7-tn._.js} +1 -1
  201. package/.next/server/chunks/ssr/{node_modules_1jatz7w._.js → node_modules_0kxz4gt._.js} +1 -1
  202. package/.next/server/chunks/ssr/{node_modules_1t0y5jt._.js → node_modules_0lrjk5t._.js} +1 -1
  203. package/.next/server/chunks/ssr/{node_modules_13f2md6._.js → node_modules_0m93zeg._.js} +1 -1
  204. package/.next/server/chunks/ssr/{node_modules_1nhw9qg._.js → node_modules_0n1kj4p._.js} +1 -1
  205. package/.next/server/chunks/ssr/{node_modules_1k29j1j._.js → node_modules_0ndvxub._.js} +1 -1
  206. package/.next/server/chunks/ssr/{node_modules_16i4o_3._.js → node_modules_13r44jq._.js} +1 -1
  207. package/.next/server/chunks/ssr/{node_modules_0fbw5-u._.js → node_modules_17lrt3y._.js} +1 -1
  208. package/.next/server/chunks/ssr/{node_modules_1d-is1o._.js → node_modules_18_dk7_._.js} +1 -1
  209. package/.next/server/chunks/ssr/{node_modules_1hn_sd5._.js → node_modules_19dp7ko._.js} +1 -1
  210. package/.next/server/chunks/ssr/{node_modules_20ynonm._.js → node_modules_1dwguw_._.js} +1 -1
  211. package/.next/server/chunks/ssr/{node_modules_00d6675._.js → node_modules_1hd-5tv._.js} +1 -1
  212. package/.next/server/chunks/ssr/{node_modules_1ee8gav._.js → node_modules_1hn8z1f._.js} +1 -1
  213. package/.next/server/chunks/ssr/{node_modules_0bue6gy._.js → node_modules_1n5ygqe._.js} +1 -1
  214. package/.next/server/chunks/ssr/{node_modules_1_588_4._.js → node_modules_1q0p85z._.js} +1 -1
  215. package/.next/server/chunks/ssr/{node_modules_0ipn1ho._.js → node_modules_1toafc-._.js} +1 -1
  216. package/.next/server/chunks/ssr/{node_modules_0_fvxnt._.js → node_modules_1xyd7ov._.js} +1 -1
  217. package/.next/server/chunks/ssr/{node_modules_1v0077l._.js → node_modules_1zu988w._.js} +1 -1
  218. package/.next/server/chunks/ssr/{node_modules_06kvvuo._.js → node_modules_20yebtj._.js} +1 -1
  219. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_092s8nx._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0m9a4y0._.js} +1 -1
  220. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1nvexgu._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_13w_wy9._.js} +1 -1
  221. package/.next/server/chunks/ssr/node_modules_consola_dist_chunks_prompt_mjs_05cwqv2._.js +47 -0
  222. package/.next/server/middleware-build-manifest.js +3 -3
  223. package/.next/server/pages/404.html +1 -1
  224. package/.next/server/pages/500.html +1 -1
  225. package/.next/server/server-reference-manifest.js +1 -1
  226. package/.next/server/server-reference-manifest.json +64 -42
  227. package/.next/static/chunks/05b6nx_o3_f_n.js +1 -0
  228. package/.next/static/chunks/{3aquirz5h71da.js → 07kl352c-lvcz.js} +1 -1
  229. package/.next/static/chunks/0dmns-gi0raa4.js +1 -0
  230. package/.next/static/chunks/0oc4_xoia77dg.css +1 -0
  231. package/.next/static/chunks/0pheo8m3a-rzi.js +1 -0
  232. package/.next/static/chunks/{2ihkf6l2jowo9.js → 18vhba44l1fc9.js} +3 -3
  233. package/.next/static/chunks/19i8h2t-5evjx.js +1 -0
  234. package/.next/static/chunks/{1gy3bbv7usnjo.js → 1c5fcj473025q.js} +1 -1
  235. package/.next/static/chunks/1pi_hbmjw-f-z.js +1 -0
  236. package/.next/static/chunks/{0tydnn2kybibk.js → 1twt6k09vg4np.js} +1 -1
  237. package/.next/static/chunks/{21rk8w7bda-su.js → 28gotuisldmom.js} +1 -1
  238. package/.next/static/chunks/{3xxa2j56-f3nm.js → 2998p0y7k1c8z.js} +1 -1
  239. package/.next/static/chunks/2l233xfycjpd8.js +1 -0
  240. package/.next/static/chunks/2p5n7pa3c40t-.js +2 -0
  241. package/.next/static/chunks/2ru1q132af7h7.js +1 -0
  242. package/.next/static/chunks/{2fq_86jvq9ymq.js → 2t8wqycwg3y04.js} +2 -2
  243. package/.next/static/chunks/32z_ypgtchw48.js +1 -0
  244. package/.next/static/chunks/{247d-r95j8xs0.js → 33pyjb3xd1iez.js} +1 -1
  245. package/.next/static/chunks/3786h5vayt80-.js +28 -0
  246. package/.next/static/chunks/3_h9txt3tq8t8.js +28 -0
  247. package/.next/static/chunks/{1khakdu_iuedc.js → 3ard_noqapnw1.js} +1 -1
  248. package/.next/static/chunks/{1fr5m75pwtyic.js → 3omud5xunrk1f.js} +1 -1
  249. package/.next/static/chunks/42dnrkbph9e-1.js +1 -0
  250. package/app/api/events/app-event.client.ts +24 -0
  251. package/app/api/events/app-event.server.ts +45 -0
  252. package/app/api/events/app-event.ts +44 -0
  253. package/app/api/llm-model/catalog/route.ts +12 -0
  254. package/app/api/llm-model/route.ts +21 -0
  255. package/app/api/query-key.ts +144 -0
  256. package/app/api/thursday/tool-call/route.ts +67 -0
  257. package/components/ui/button-group.tsx +45 -0
  258. package/components/ui/custom-icon.tsx +259 -0
  259. package/components/ui/dropdown-menu.tsx +271 -0
  260. package/components/ui/folded-text.tsx +68 -0
  261. package/components/ui/input-group.tsx +157 -0
  262. package/components/ui/json-view.tsx +240 -0
  263. package/components/ui/shiny-text.tsx +141 -0
  264. package/components/ui/text-type.tsx +213 -0
  265. package/components/ui/theme-sync.tsx +9 -0
  266. package/database/migrations/{20260908030742_rainy_marvel_zombies → 20260909060813_optimal_sabretooth}/migration.sql +7 -0
  267. package/database/migrations/{20260908030742_rainy_marvel_zombies → 20260909060813_optimal_sabretooth}/snapshot.json +54 -1
  268. package/database/migrations/20260909063821_bitter_tenebrous/migration.sql +1 -0
  269. package/database/migrations/20260909063821_bitter_tenebrous/snapshot.json +1285 -0
  270. package/docs/how-it-works.md +59 -0
  271. package/docs/images/keeps-going.png +0 -0
  272. package/docs/images/task-thread.png +0 -0
  273. package/docs/images/two-minds.png +0 -0
  274. package/features/ai/load-tools.ts +55 -5
  275. package/features/ai/prompts/bot.prompt.ts +121 -26
  276. package/features/ai/prompts/memory-tidy.prompt.ts +7 -1
  277. package/features/ai/prompts/prompt-helper.ts +31 -5
  278. package/features/ai/prompts/thursday.prompt.ts +2 -0
  279. package/features/ai/tools/bot.tool.ts +37 -18
  280. package/features/ai/tools/mcp.tool.ts +5 -5
  281. package/features/ai/tools/memory.tool.ts +17 -10
  282. package/features/ai/tools/studio.tool.ts +5 -5
  283. package/features/ai/tools/tool-name.ts +2 -0
  284. package/features/ai/tools/workspace.tool.ts +33 -5
  285. package/features/bot/bot.action.ts +31 -4
  286. package/features/bot/bot.notes.ts +120 -0
  287. package/features/bot/bot.query.ts +56 -1
  288. package/features/bot/bot.run.ts +43 -3
  289. package/features/bot/bot.runner.ts +94 -20
  290. package/features/bot/bot.schema.ts +17 -0
  291. package/features/bot/components/bot-room.tsx +405 -306
  292. package/features/bot/components/bot-setting.tsx +123 -20
  293. package/features/bot/task.query.ts +18 -5
  294. package/features/memory/components/memory-setting.tsx +11 -2
  295. package/features/memory/memory.query.ts +9 -2
  296. package/features/memory/memory.schema.ts +30 -0
  297. package/features/skills/components/skills-setting.tsx +9 -1
  298. package/features/workspace/workspace.ts +136 -3
  299. package/hooks/use-draft.ts +37 -0
  300. package/hooks/use-hotkey.ts +105 -0
  301. package/hooks/use-object-state.ts +51 -0
  302. package/hooks/use-on-visible.ts +72 -0
  303. package/hooks/use-theme.ts +106 -0
  304. package/hooks/use-wake-word.ts +262 -0
  305. package/lib/realtime/realtime.driver.ts +34 -1
  306. package/lib/realtime/realtime.protocol.ts +6 -0
  307. package/lib/sandbox.ts +9 -1
  308. package/lib/tokens.ts +19 -0
  309. package/package.json +1 -1
  310. package/.next/server/chunks/[root-of-the-server]__02kt8yn._.js +0 -10
  311. package/.next/server/chunks/[root-of-the-server]__0h59di-._.js +0 -5
  312. package/.next/server/chunks/[root-of-the-server]__0qjqtwo._.js +0 -5
  313. package/.next/server/chunks/[root-of-the-server]__0yk6s3w._.js +0 -5
  314. package/.next/server/chunks/[root-of-the-server]__0z3gelv._.js +0 -3
  315. package/.next/server/chunks/[root-of-the-server]__11w_7_3._.js +0 -3
  316. package/.next/server/chunks/[root-of-the-server]__1_0q_9w._.js +0 -3
  317. package/.next/server/chunks/[root-of-the-server]__1gmn1cs._.js +0 -10
  318. package/.next/server/chunks/_0fzqt2y._.js +0 -100
  319. package/.next/server/chunks/_0jgm3b8._.js +0 -55
  320. package/.next/server/chunks/_0ks6_sg._.js +0 -55
  321. package/.next/server/chunks/_0tzfesa._.js +0 -3
  322. package/.next/server/chunks/_0zmestz._.js +0 -55
  323. package/.next/server/chunks/_12nr4xc._.js +0 -3
  324. package/.next/server/chunks/_1hzrsvg._.js +0 -55
  325. package/.next/server/chunks/_1uj4_io._.js +0 -10
  326. package/.next/server/chunks/_1yldgo4._.js +0 -55
  327. package/.next/server/chunks/features_0scmr4i._.js +0 -3
  328. package/.next/server/chunks/features_bot_bot_query_ts_12mgkl2._.js +0 -3
  329. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0ykklj0._.js +0 -3
  330. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1ryg3wh._.js +0 -3
  331. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1vwbnq_._.js +0 -3
  332. package/.next/server/chunks/ssr/[root-of-the-server]__01id-v3._.js +0 -3
  333. package/.next/server/chunks/ssr/[root-of-the-server]__0b-0i32._.js +0 -3
  334. package/.next/server/chunks/ssr/[root-of-the-server]__185grso._.js +0 -3
  335. package/.next/server/chunks/ssr/[root-of-the-server]__1minz8_._.js +0 -3
  336. package/.next/server/chunks/ssr/_0j4v8of._.js +0 -3
  337. package/.next/server/chunks/ssr/_0l81bzy._.js +0 -3
  338. package/.next/server/chunks/ssr/_10uvw3l._.js +0 -3
  339. package/.next/server/chunks/ssr/_1jbv7m1._.js +0 -3
  340. package/.next/server/chunks/ssr/lib_realtime_0aetuyp._.js +0 -24
  341. package/.next/server/chunks/ssr/lib_realtime_18k_aj-._.js +0 -24
  342. package/.next/server/chunks/ssr/node_modules_zod_v4_classic_errors_05xv7vp.js +0 -3
  343. package/.next/static/chunks/0yysv1gzin17t.js +0 -1
  344. package/.next/static/chunks/1keib_gt066gc.js +0 -1
  345. package/.next/static/chunks/28g42tw8tsvhd.js +0 -1
  346. package/.next/static/chunks/2cwjgkt_hoyhj.js +0 -22
  347. package/.next/static/chunks/2rbf1fpd8n80-.js +0 -22
  348. package/.next/static/chunks/2ukj8k69y89um.js +0 -1
  349. package/.next/static/chunks/2wngeetfnzxkp.js +0 -2
  350. package/.next/static/chunks/388-t2v72jh39.css +0 -1
  351. package/.next/static/chunks/3fqvc0cg-atq_.js +0 -1
  352. package/.next/static/chunks/3p4egvfjxpatb.js +0 -1
  353. package/.next/static/chunks/3qe1w1ei-huhl.js +0 -1
  354. package/.next/static/chunks/3y40riycdip-i.js +0 -1
  355. package/.next/static/chunks/45a6zbtkelph9.js +0 -1
  356. /package/.next/static/{X34BUd9bfdH27ripuwwBm → YR4NWcDDuzwLbTTU7U7Vr}/_buildManifest.js +0 -0
  357. /package/.next/static/{X34BUd9bfdH27ripuwwBm → YR4NWcDDuzwLbTTU7U7Vr}/_clientMiddlewareManifest.js +0 -0
  358. /package/.next/static/{X34BUd9bfdH27ripuwwBm → YR4NWcDDuzwLbTTU7U7Vr}/_ssgManifest.js +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "node": {
3
- "7f0565914645e8a2c6bbe2835f0d5fd87b2a4b7c54": {
3
+ "7f9f850eb001fff0447ab11cfd0d9b1ad2225de560": {
4
4
  "workers": {
5
5
  "app/page": {
6
6
  "moduleId": 873715,
@@ -11,7 +11,7 @@
11
11
  "filename": "features/config/config.action.ts",
12
12
  "exportedName": "setConfigAction"
13
13
  },
14
- "7fe0e2043b00478f71de9e7017bc10df7b0af44ed7": {
14
+ "7f1756723e53cd4bfc5aa2715712bb90f079d8bd4d": {
15
15
  "workers": {
16
16
  "app/page": {
17
17
  "moduleId": 873715,
@@ -22,7 +22,7 @@
22
22
  "filename": "features/bot/bot.action.ts",
23
23
  "exportedName": "createSeedBotsAction"
24
24
  },
25
- "7f26ed34628aa747f4041e3b9f2728a7554015982d": {
25
+ "7ff85aa737cda325a8b80f964721a420dbfa665547": {
26
26
  "workers": {
27
27
  "app/page": {
28
28
  "moduleId": 873715,
@@ -33,7 +33,7 @@
33
33
  "filename": "features/bot/bot.action.ts",
34
34
  "exportedName": "markReportedAction"
35
35
  },
36
- "7f9fe74599a3a42962491399d55e9fc8e17f39eb51": {
36
+ "7f1853e08ff28db8b3a58db60a0fab8d0b74abe935": {
37
37
  "workers": {
38
38
  "app/page": {
39
39
  "moduleId": 873715,
@@ -44,7 +44,7 @@
44
44
  "filename": "features/bot/bot.action.ts",
45
45
  "exportedName": "startTaskAction"
46
46
  },
47
- "7fc46134dc257ffb46e56975909bec673945ad7151": {
47
+ "7fe8b3afbc975a1ad4e4d7f319af758baa5a9d2c2c": {
48
48
  "workers": {
49
49
  "app/artifact/[...path]/page": {
50
50
  "moduleId": 701876,
@@ -60,7 +60,7 @@
60
60
  "filename": "features/workspace/workspace.action.ts",
61
61
  "exportedName": "openFileAction"
62
62
  },
63
- "7f6297eba857045d97a0b713eb1ebfbc273f39ed1d": {
63
+ "7f130e379b411cea54d564cd7c8822f5cc7cce3042": {
64
64
  "workers": {
65
65
  "app/page": {
66
66
  "moduleId": 873715,
@@ -71,7 +71,7 @@
71
71
  "filename": "features/bot/bot.action.ts",
72
72
  "exportedName": "answerTaskAction"
73
73
  },
74
- "7fc799595327176b60f83fed3c679f1a687ecca4fe": {
74
+ "7f106cc55d238f82d75c85a8916cb1d3c2c3a9401c": {
75
75
  "workers": {
76
76
  "app/page": {
77
77
  "moduleId": 873715,
@@ -82,7 +82,7 @@
82
82
  "filename": "features/bot/bot.action.ts",
83
83
  "exportedName": "cancelTaskAction"
84
84
  },
85
- "7fdda987c5c6887d333c51ad9d859efeed3392ddd7": {
85
+ "7f6c0cc153c7ab548fc2f550c0e10690f4f99e2113": {
86
86
  "workers": {
87
87
  "app/page": {
88
88
  "moduleId": 873715,
@@ -93,7 +93,7 @@
93
93
  "filename": "features/memory/memory.action.ts",
94
94
  "exportedName": "cancelMemoryTidyAction"
95
95
  },
96
- "7f84194f8e656799a38ecdfbe0e6e7197314915282": {
96
+ "7fd29793642e2fe44a0c80a6349e5646773644c688": {
97
97
  "workers": {
98
98
  "app/page": {
99
99
  "moduleId": 873715,
@@ -104,7 +104,7 @@
104
104
  "filename": "features/memory/memory.action.ts",
105
105
  "exportedName": "runMemoryTidyAction"
106
106
  },
107
- "7f89da96e453adc9271fa1c02af987e8afce58036e": {
107
+ "7f926a3e4c76c8e2fd5834a27de8748daff8dbfd64": {
108
108
  "workers": {
109
109
  "app/page": {
110
110
  "moduleId": 873715,
@@ -115,7 +115,7 @@
115
115
  "filename": "features/memory/memory.action.ts",
116
116
  "exportedName": "setMemoryTidyModelAction"
117
117
  },
118
- "7ff7165bd1c214fcdae348973ca11be2ca989d01bd": {
118
+ "7ff8ab55aac487839ef7a0ccdb756e470c8bdd0509": {
119
119
  "workers": {
120
120
  "app/page": {
121
121
  "moduleId": 873715,
@@ -126,7 +126,7 @@
126
126
  "filename": "features/memory/memory.action.ts",
127
127
  "exportedName": "setMemoryTidyOnAction"
128
128
  },
129
- "7f3b058a712d28a68c87b36a2bf1cd90ab78923a76": {
129
+ "7f2b4a83def44c25e93d0d390130d70aaaf9c406fd": {
130
130
  "workers": {
131
131
  "app/page": {
132
132
  "moduleId": 873715,
@@ -137,7 +137,7 @@
137
137
  "filename": "features/memory/memory.action.ts",
138
138
  "exportedName": "addFactsAction"
139
139
  },
140
- "7fac25c49e4b728e331504596728000b9c0a702269": {
140
+ "7fe080e0e12cab0dc160034ffd533baf59a3952991": {
141
141
  "workers": {
142
142
  "app/page": {
143
143
  "moduleId": 873715,
@@ -148,7 +148,7 @@
148
148
  "filename": "features/memory/memory.action.ts",
149
149
  "exportedName": "createNoteAction"
150
150
  },
151
- "7f8a9265b964646e2350a6e7c0faf9ace9939aa932": {
151
+ "7f1678f64fbc6194aaa99f379b3feb4c16e5deff76": {
152
152
  "workers": {
153
153
  "app/page": {
154
154
  "moduleId": 873715,
@@ -159,7 +159,7 @@
159
159
  "filename": "features/memory/memory.action.ts",
160
160
  "exportedName": "deleteNoteAction"
161
161
  },
162
- "7f8138d0370b6085de577c575484252df73c3fb9b5": {
162
+ "7f5538ce7954520c5afc4d95ff06fd3f75b32021d0": {
163
163
  "workers": {
164
164
  "app/page": {
165
165
  "moduleId": 873715,
@@ -170,7 +170,7 @@
170
170
  "filename": "features/memory/memory.action.ts",
171
171
  "exportedName": "forgetFactAction"
172
172
  },
173
- "7fc08c711a4e4fa288c5ceaa27294b1e39b8660ce4": {
173
+ "7f7cea0dd78b7202d9addb9d7d1af40102b49e8a52": {
174
174
  "workers": {
175
175
  "app/page": {
176
176
  "moduleId": 873715,
@@ -181,7 +181,7 @@
181
181
  "filename": "features/memory/memory.action.ts",
182
182
  "exportedName": "reviseFactAction"
183
183
  },
184
- "7ff8642cc5d4e9011d92957244e6812727add309b4": {
184
+ "7fa417a8d3eef13073369dfdfc84be3e8a34ef631a": {
185
185
  "workers": {
186
186
  "app/page": {
187
187
  "moduleId": 873715,
@@ -192,7 +192,7 @@
192
192
  "filename": "features/memory/memory.action.ts",
193
193
  "exportedName": "setFactAlwaysLoadAction"
194
194
  },
195
- "7f1d70ca6d452e70a4bf056025a15917c39531eb09": {
195
+ "7fbebeb1133ca9d4bde7b5febd4c0745cdf145c952": {
196
196
  "workers": {
197
197
  "app/page": {
198
198
  "moduleId": 873715,
@@ -203,7 +203,18 @@
203
203
  "filename": "features/memory/memory.action.ts",
204
204
  "exportedName": "updateNoteAction"
205
205
  },
206
- "7fcde5fe88db84dceeb9b2ffe60d0ca1e3a1a00a10": {
206
+ "7f05ba605622eb8b4b2163fc0f0655bc1b7ed1024e": {
207
+ "workers": {
208
+ "app/page": {
209
+ "moduleId": 873715,
210
+ "async": true,
211
+ "codeHash": null
212
+ }
213
+ },
214
+ "filename": "features/bot/bot.action.ts",
215
+ "exportedName": "clearBotNoteAction"
216
+ },
217
+ "7faa7108c1a244c9682e3b4c351515a7f87958d173": {
207
218
  "workers": {
208
219
  "app/page": {
209
220
  "moduleId": 873715,
@@ -214,7 +225,7 @@
214
225
  "filename": "features/bot/bot.action.ts",
215
226
  "exportedName": "createBotAction"
216
227
  },
217
- "7fc29457d8d7aed08760ab0333ee56596b621a82fa": {
228
+ "7f69d7c95bf47377324c543fbadb5ce5bdd8af67b1": {
218
229
  "workers": {
219
230
  "app/page": {
220
231
  "moduleId": 873715,
@@ -225,7 +236,18 @@
225
236
  "filename": "features/bot/bot.action.ts",
226
237
  "exportedName": "deleteBotAction"
227
238
  },
228
- "7f25ff0eeb6f841d78f67da83b08e04174786539db": {
239
+ "7f070e9079781799dfcd47936d678a1145c3802d20": {
240
+ "workers": {
241
+ "app/page": {
242
+ "moduleId": 873715,
243
+ "async": true,
244
+ "codeHash": null
245
+ }
246
+ },
247
+ "filename": "features/bot/bot.action.ts",
248
+ "exportedName": "setBotNotesOnAction"
249
+ },
250
+ "7f6ec11c62992232937976b0eb0a9fa55db31af082": {
229
251
  "workers": {
230
252
  "app/page": {
231
253
  "moduleId": 873715,
@@ -236,7 +258,7 @@
236
258
  "filename": "features/bot/bot.action.ts",
237
259
  "exportedName": "updateBotAction"
238
260
  },
239
- "7f08787ba9fc8824b7a875687443bbce164e04905e": {
261
+ "7f80816611593aeb950e1104f1dbc9de5d7fba0f77": {
240
262
  "workers": {
241
263
  "app/page": {
242
264
  "moduleId": 873715,
@@ -247,7 +269,7 @@
247
269
  "filename": "features/bot/bot.action.ts",
248
270
  "exportedName": "clearFinishedTasksAction"
249
271
  },
250
- "7f46407252db150b0c510d36e20dccf5a544e9107f": {
272
+ "7f9f887848ed2939266697558b2b53dad0f36a12a9": {
251
273
  "workers": {
252
274
  "app/page": {
253
275
  "moduleId": 873715,
@@ -258,7 +280,7 @@
258
280
  "filename": "features/bot/bot.action.ts",
259
281
  "exportedName": "deleteTaskAction"
260
282
  },
261
- "7f25c6b89ec9d7c8f1bbbd8a43e823b5f135abdb02": {
283
+ "7f250a5798c865a049782fe8ddb8318b44778fc093": {
262
284
  "workers": {
263
285
  "app/page": {
264
286
  "moduleId": 873715,
@@ -269,7 +291,7 @@
269
291
  "filename": "features/config/config.action.ts",
270
292
  "exportedName": "removeConfigAction"
271
293
  },
272
- "7f29328bcf3078dae4a7f684b4ba777765998c955c": {
294
+ "7f666d9214481b3d6327600165d7fef7d6a73cfebc": {
273
295
  "workers": {
274
296
  "app/page": {
275
297
  "moduleId": 873715,
@@ -280,7 +302,7 @@
280
302
  "filename": "features/thursday/thursday.action.ts",
281
303
  "exportedName": "deleteCallAction"
282
304
  },
283
- "7fe5c884f4fb671d28ff1bab55b744857f55c93328": {
305
+ "7f75936b40de98c3461f8698a4b30d8fb487e425d6": {
284
306
  "workers": {
285
307
  "app/page": {
286
308
  "moduleId": 873715,
@@ -291,7 +313,7 @@
291
313
  "filename": "features/thursday/thursday.action.ts",
292
314
  "exportedName": "resetHistoryAction"
293
315
  },
294
- "7fb6b4fcdb83b1715c04c2cdf86e243fddb9fdecd9": {
316
+ "7f8490475d10d4ef1af9d6551673eb1df63fb04305": {
295
317
  "workers": {
296
318
  "app/page": {
297
319
  "moduleId": 873715,
@@ -302,7 +324,7 @@
302
324
  "filename": "features/thursday/thursday.action.ts",
303
325
  "exportedName": "setCallSkillsAction"
304
326
  },
305
- "7f3f437b7e31640c30158a87a505166dd8cf350e75": {
327
+ "7fce3f493e6c36ed983cc6adcb44ebe36f59ca1837": {
306
328
  "workers": {
307
329
  "app/page": {
308
330
  "moduleId": 873715,
@@ -313,7 +335,7 @@
313
335
  "filename": "features/artifact/artifact.action.ts",
314
336
  "exportedName": "deleteArtifactAction"
315
337
  },
316
- "7f7c22d7e94d60cac9d3b60c6e88cd4e37b80e236d": {
338
+ "7f67bf2655ca9992c673791a8cd1981c03a8eb483d": {
317
339
  "workers": {
318
340
  "app/page": {
319
341
  "moduleId": 873715,
@@ -324,7 +346,7 @@
324
346
  "filename": "features/workspace/workspace.action.ts",
325
347
  "exportedName": "deleteWorkspaceFileAction"
326
348
  },
327
- "7f03d6d6299fa4eec98c5b016c1419caaa76ac5aa6": {
349
+ "7f046a26fa081e136ed5a5bfd782c220d050b373f0": {
328
350
  "workers": {
329
351
  "app/page": {
330
352
  "moduleId": 873715,
@@ -335,7 +357,7 @@
335
357
  "filename": "features/workspace/workspace.action.ts",
336
358
  "exportedName": "emptyScratchAction"
337
359
  },
338
- "7f223826fe55fdfafd2f33fdec504bd70254486458": {
360
+ "7f4c8e0df06465e086f180ebe8fbf4a998603ad4a9": {
339
361
  "workers": {
340
362
  "app/page": {
341
363
  "moduleId": 873715,
@@ -346,7 +368,7 @@
346
368
  "filename": "features/skills/skills.action.ts",
347
369
  "exportedName": "createSkillAction"
348
370
  },
349
- "7f645e3a0411cf62852954bcee1ff43b8656370846": {
371
+ "7f354f08dd6a308f78069ff1a519a6718a4b47f2c2": {
350
372
  "workers": {
351
373
  "app/page": {
352
374
  "moduleId": 873715,
@@ -357,7 +379,7 @@
357
379
  "filename": "features/skills/skills.action.ts",
358
380
  "exportedName": "deleteSkillAction"
359
381
  },
360
- "7f841017ea7ba9139eea1aaaf4933a489729043092": {
382
+ "7f74e6d1aa460ff57d58d6f80d820fb3e3ce696d9c": {
361
383
  "workers": {
362
384
  "app/page": {
363
385
  "moduleId": 873715,
@@ -368,7 +390,7 @@
368
390
  "filename": "features/skills/skills.action.ts",
369
391
  "exportedName": "setSkillDisabledAction"
370
392
  },
371
- "7fde03c0c0843f568a21bc904f706a56e5bddb1f69": {
393
+ "7f909a59045a8bbce06ccfddff2f1d96dedb7eb96f": {
372
394
  "workers": {
373
395
  "app/page": {
374
396
  "moduleId": 873715,
@@ -379,7 +401,7 @@
379
401
  "filename": "features/skills/skills.action.ts",
380
402
  "exportedName": "uploadSkillAction"
381
403
  },
382
- "7f0319a99086ee3cd1918985c144e87ea4dc20d07e": {
404
+ "7fab1dd91d615032cf1deeda259f7b758bb7276c70": {
383
405
  "workers": {
384
406
  "app/page": {
385
407
  "moduleId": 873715,
@@ -390,7 +412,7 @@
390
412
  "filename": "features/connectors/mcp.action.ts",
391
413
  "exportedName": "callToolAction"
392
414
  },
393
- "7f5032afb7983c1d0f61fd3693eebdadead290f6b7": {
415
+ "7ff20864cdea076900a776fbaca0f394664cf1fc26": {
394
416
  "workers": {
395
417
  "app/page": {
396
418
  "moduleId": 873715,
@@ -401,7 +423,7 @@
401
423
  "filename": "features/connectors/mcp.action.ts",
402
424
  "exportedName": "deleteServerAction"
403
425
  },
404
- "7f46495bb3a4bf849eb1e2069dbb9063be852be5bd": {
426
+ "7f51ee4209873ffb16ed0bf786dee13dd0ea5a776e": {
405
427
  "workers": {
406
428
  "app/page": {
407
429
  "moduleId": 873715,
@@ -412,7 +434,7 @@
412
434
  "filename": "features/connectors/mcp.action.ts",
413
435
  "exportedName": "refreshServerAction"
414
436
  },
415
- "7f860ba40e6a0fac88f2c4e6b892e39b044b4bcba0": {
437
+ "7fc8bdee6fb9b42daee324c78238a8cc8c8f5316b9": {
416
438
  "workers": {
417
439
  "app/page": {
418
440
  "moduleId": 873715,
@@ -423,7 +445,7 @@
423
445
  "filename": "features/connectors/mcp.action.ts",
424
446
  "exportedName": "registerServerAction"
425
447
  },
426
- "7faf86025786018aa653fa5fa76bf425052e16b9b5": {
448
+ "7f9a89f6f43c3c8fdee150fde50df8256264bc8a44": {
427
449
  "workers": {
428
450
  "app/page": {
429
451
  "moduleId": 873715,
@@ -434,7 +456,7 @@
434
456
  "filename": "features/thursday/thursday.action.ts",
435
457
  "exportedName": "endCallAction"
436
458
  },
437
- "7fab718da688636469431be752e71c9b8d523baacd": {
459
+ "7f7fd2051e8952cb8ab529e5f8cd1694a6a7990cd8": {
438
460
  "workers": {
439
461
  "app/page": {
440
462
  "moduleId": 873715,
@@ -445,7 +467,7 @@
445
467
  "filename": "features/thursday/thursday.action.ts",
446
468
  "exportedName": "openCallAction"
447
469
  },
448
- "7f95dc3df34b59d41c657b1b6c6056b6b215f6fac2": {
470
+ "7f22a0e4340f8432bad5bec227fc6be79f580bc967": {
449
471
  "workers": {
450
472
  "app/page": {
451
473
  "moduleId": 873715,
@@ -458,5 +480,5 @@
458
480
  }
459
481
  },
460
482
  "edge": {},
461
- "encryptionKey": "ehbuM+Rm9cPyXIfED1qOnEl7GBc0889uA5FddFFOmDk="
483
+ "encryptionKey": "rbvMgtp5jPBfcRVTIFZ4Soi4ovfer9bN26PdkVL8HCw="
462
484
  }
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,161483,e=>{"use strict";var t=e.i(843476),n=e.i(647163);e.s(["Swatch",0,function({color:e,picked:s,onPick:r}){return(0,t.jsx)("button",{type:"button",onClick:r,"aria-label":e??"Follow the theme",style:e?{backgroundColor:e}:void 0,className:(0,n.cn)("size-5 rounded-full outline-none transition-transform hover:scale-110 focus-visible:ring-3 focus-visible:ring-ring/50",!e&&"bg-foreground",s&&"ring-2 ring-foreground/40 ring-offset-2 ring-offset-background")})}])},59158,e=>{"use strict";var t=e.i(843476),n=e.i(689664),s=e.i(466787),r=e.i(271645),l=e.i(798120),a=e.i(167881),i=e.i(736185),o=e.i(23750),c=e.i(917162),d=e.i(421429),u=e.i(161483),h=e.i(184762),m=e.i(968978),x=e.i(265402),p=e.i(864723),g=e.i(692329),f=e.i(895836),v=e.i(867927),b=e.i(456420);let y={name:"phone",size:24,node:[["path",{d:"M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384",key:"9njp5v"}]]};y.node;let j=(0,b.default)(y);var k=e.i(759659),S=e.i(671428),N=e.i(222055),w=e.i(245629),C=e.i(609856),A=e.i(661504),E=e.i(647163),R=e.i(95187);let T=(0,R.createServerReference)("7f666d9214481b3d6327600165d7fef7d6a73cfebc",R.callServer,void 0,R.findSourceMapURL,"deleteCallAction");var _=e.i(671228),K=e.i(561540),M=e.i(256604);function O(){return(0,t.jsx)(f.SettingGroup,{label:"Transcripts",children:(0,t.jsx)(f.SettingItems,{children:(0,t.jsxs)("button",{type:"button",onClick:()=>c.notify.component({className:"sm:max-w-3xl",renderer:()=>(0,t.jsx)(f.SettingDialogContent,{title:"Call history",description:"Everything said on the line, oldest at the top. Scroll up for older calls.",children:(0,t.jsx)(z,{})})}),className:"flex w-full items-center gap-3 p-4 text-left outline-none transition-colors hover:bg-muted/50 focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)("span",{className:"grid size-10 shrink-0 place-items-center rounded-lg bg-muted text-muted-foreground",children:(0,t.jsx)(j,{className:"size-4"})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-0.5",children:[(0,t.jsx)("span",{className:"block text-sm font-medium",children:"Call history"}),(0,t.jsx)("span",{className:"block text-xs text-muted-foreground",children:"Every call, word for word — hers and yours"})]}),(0,t.jsx)(v.ChevronRight,{className:"size-4 shrink-0 text-muted-foreground"})]})})})}let I="h-[min(34rem,58vh)] min-h-64 px-1";function z(){let{items:e,isLoading:n,isLoadingMore:s,error:a,hasMore:i,sentinelRef:o,refresh:c}=(0,A.useServerPages)({key:(e,t)=>{if(0===e)return l.queryKey.callHistory(null);let n=t?.at(-1);return n?l.queryKey.callHistory((0,w.toDate)(n.startedAt).toISOString()):null},size:_.CALL_HISTORY_PAGE,swr:{revalidateOnFocus:!1}}),d=(0,r.useMemo)(()=>[...e].reverse(),[e]),u=(0,r.useRef)(null),h=(0,r.useRef)(!1),m=(0,r.useRef)(0);return((0,r.useLayoutEffect)(()=>{let e=u.current;e&&0!==d.length&&(h.current?e.scrollTop=e.scrollHeight-m.current:(h.current=!0,e.scrollTop=e.scrollHeight),m.current=e.scrollHeight-e.scrollTop)},[d]),n)?(0,t.jsx)("div",{className:(0,E.cn)(I,"overflow-hidden"),children:(0,t.jsx)(P,{})}):a?(0,t.jsx)(f.SettingError,{message:a.message}):(0,t.jsx)(t.Fragment,{children:0===d.length?(0,t.jsx)("p",{className:"px-1 text-sm leading-relaxed text-muted-foreground",children:"No calls yet. Everything said on the line is kept here — hers and yours, in the order it was said."}):(0,t.jsxs)("div",{ref:u,onScroll:e=>{let t=e.currentTarget;m.current=t.scrollHeight-t.scrollTop},className:(0,E.cn)(I,"overflow-y-auto overscroll-contain pb-6"),children:[(0,t.jsx)(f.SettingMore,{hasMore:i,loading:s,sentinelRef:o,count:1,ghost:(0,t.jsx)(P,{})}),d.map(e=>(0,t.jsx)(L,{call:e,onDropped:c},e.id))]})})}function P(){return(0,t.jsxs)("div",{className:"space-y-3 pb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 py-5",children:[(0,t.jsx)("span",{className:"h-px flex-1 bg-border/60"}),(0,t.jsx)(S.Skeleton,{className:"h-6 w-36 rounded-full"}),(0,t.jsx)("span",{className:"h-px flex-1 bg-border/60"}),(0,t.jsx)("span",{className:"size-7 shrink-0"})]}),(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)(S.Skeleton,{className:"h-9 w-3/5 rounded-2xl rounded-br-md"})}),(0,t.jsx)(S.Skeleton,{className:"h-5 w-2/3"})]})}function L({call:e,onDropped:n}){let[s,r]=(0,C.useServerAction)(T,{okMessage:"Call deleted",onOk:n}),l=(0,w.toDate)(e.startedAt),i=e.turns.at(-1),o=e.endedAt&&i?function(e,t){let n=Math.max(0,Math.round((t.getTime()-e.getTime())/1e3));if(n<60)return`${n}s`;let s=Math.floor(n/60);return s<60?`${s}m ${String(n%60).padStart(2,"0")}s`:`${Math.floor(s/60)}h ${String(s%60).padStart(2,"0")}m`}(l,(0,w.toDate)(i.at)):"on the line",d=async()=>{await c.notify.confirm({title:`Delete the call from ${(0,w.whenOf)(l)}?`,description:"Every turn of it goes — and she stops reading it back into the next call.",okText:"Delete",destructive:!0})&&s(e.id)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"group flex items-center gap-3 py-5",children:[(0,t.jsx)("span",{className:"h-px flex-1 bg-border/60"}),(0,t.jsxs)("span",{title:`${e.provider} \xb7 ${e.model}`,className:"flex shrink-0 items-center gap-2 rounded-full bg-muted/60 py-1 pr-3 pl-2.5 ring-1 ring-border/50",children:[(0,t.jsx)(j,{className:"size-3 text-muted-foreground"}),(0,t.jsx)("span",{className:"font-mono text-[11px]",children:(0,w.whenOf)(l)}),(0,t.jsx)("span",{className:"font-mono text-[10px] text-muted-foreground",children:o})]}),(0,t.jsx)("span",{className:"h-px flex-1 bg-border/60"}),(0,t.jsx)("span",{className:"flex size-7 shrink-0 items-center justify-center",children:e.endedAt&&(0,t.jsx)(a.Button,{size:"icon-sm",variant:"ghost",loading:r,"aria-label":"Delete this call",onClick:d,className:"text-muted-foreground/60 opacity-0 transition-opacity group-hover:opacity-100 hover:text-destructive focus-visible:opacity-100",children:(0,t.jsx)(k.Trash2,{})})})]}),(function(e){let t=[];for(let n of e){let e=t.at(-1);if(e&&"tool"===n.role&&"tool"===e.turn.role&&e.turn.tool===n.tool&&e.turn.text===n.text){e.repeats+=1;continue}t.push({turn:n,repeats:1})}return t})(e.turns).map(({turn:e,repeats:n},s,r)=>{let l=r[s-1]?.turn,a=r[s+1]?.turn;return(0,t.jsx)(H,{turn:e,repeats:n,opensRun:l?.role!==e.role,closesRun:a?.role!==e.role},e.id)})]})}function H({turn:e,opensRun:n,closesRun:s,repeats:r=1}){if("tool"===e.role)return(0,t.jsx)(D,{turn:e,repeats:r});let l="user"===e.role;return(0,t.jsxs)("div",{className:(0,E.cn)("flex items-end gap-2",n?"mt-3":"mt-1",l?"justify-end":"justify-start"),children:[!l&&(0,t.jsx)("span",{className:"mb-0.5 grid size-[18px] shrink-0 place-items-center",children:s&&(0,t.jsx)(M.ThursdayMark,{size:18})}),(0,t.jsx)("p",{className:(0,E.cn)("max-w-[min(34rem,78%)] px-3.5 py-2 text-[13.5px] leading-relaxed break-keep whitespace-pre-wrap",l?"rounded-2xl bg-muted":"rounded-2xl bg-card ring-1 ring-border/70",s&&(l?"rounded-br-sm":"rounded-bl-sm")),children:e.text})]})}function D({turn:e,repeats:n}){let s=e.tool??"",r=(0,N.toolIcon)(s),l=(0,K.toolLine)(s,e.text);return(0,t.jsx)("div",{className:"mt-3 mb-1 flex justify-center",children:(0,t.jsxs)("span",{className:"flex max-w-full items-center gap-2 rounded-full bg-muted/40 px-2.5 py-1 text-muted-foreground",children:[(0,t.jsx)(r,{className:"size-3 shrink-0"}),l&&(0,t.jsx)("span",{className:"truncate text-[11px] break-keep",children:l}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-[10px] text-muted-foreground/60",children:s}),n>1&&(0,t.jsxs)("span",{className:"shrink-0 font-mono text-[10px] text-muted-foreground/70",children:["×",n]})]})})}var $=e.i(333495),F=e.i(933916),G=e.i(762074);let B=(0,R.createServerReference)("7f75936b40de98c3461f8698a4b30d8fb487e425d6",R.callServer,void 0,R.findSourceMapURL,"resetHistoryAction"),V=(0,R.createServerReference)("7f8490475d10d4ef1af9d6551673eb1df63fb04305",R.callServer,void 0,R.findSourceMapURL,"setCallSkillsAction");var W=e.i(67045),q=e.i(698570),U=e.i(319841),Y=e.i(981203),X=e.i(283653);function Z(){let{data:e}=(0,X.useServerRoute)(l.queryKey.callSkills),[n]=(0,C.useServerAction)(V,{onOk:()=>(0,X.revalidate)(l.queryKey.callSkills)});return(0,t.jsx)(f.SettingGroup,{label:"Skills",children:(0,t.jsx)(f.SettingToggle,{label:"Read a skill herself",description:"A skill is how a thing is done here, written down. On, she opens one mid-call and follows it; off, only bots read them.",checked:e??!1,disabled:void 0===e,onChange:e=>n(e),children:(0,t.jsx)(J,{})})})}function J(){let{data:e}=(0,X.useServerRoute)(l.queryKey.skills);return e?(0,t.jsx)(f.SettingNote,{className:(0,E.cn)(!e.length&&E.WAITING_INK),children:e.length?`The same ${e.length} a bot reads. Each one she opens spends a page of the call on it.`:"Nothing installed yet — there is nothing for her to read."}):null}function Q(){let[e,n]=(0,C.useServerAction)(B,{okMessage:({calls:e,tasks:t,notes:n})=>`Wiped ${e} calls, ${t} jobs, ${n} notes`,onOk:()=>{(0,X.revalidate)(l.queryKey.memory),(0,X.revalidate)(l.queryKey.tasks),(0,X.revalidate)(l.queryKey.callHistory(null))}}),r=async()=>{await c.notify.confirm({title:"Reset history?",description:"Every call, every job and everything she remembers is deleted for good. Keys, bots and connectors stay.",okText:"Reset",destructive:!0})&&e()};return(0,t.jsx)(f.SettingGroup,{label:"Danger zone",note:"Keys, bots and connectors stay.",children:(0,t.jsx)(f.SettingItems,{children:(0,t.jsxs)("div",{className:"flex items-center gap-3 p-4",children:[(0,t.jsx)("span",{className:"grid size-10 shrink-0 place-items-center rounded-lg bg-muted text-muted-foreground",children:(0,t.jsx)(s.TriangleAlert,{className:"size-4"})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-0.5",children:[(0,t.jsx)("span",{className:"block text-sm font-medium",children:"Reset history"}),(0,t.jsx)("span",{className:"block text-xs text-muted-foreground",children:"Every call, every job and everything she remembers"})]}),(0,t.jsx)(a.Button,{variant:"outline",size:"sm",loading:n,onClick:r,className:"shrink-0 text-destructive hover:text-destructive",children:"Reset"})]})})})}function ee({value:e,onChange:n}){let s=t=>n({...e,...t});return(0,t.jsx)(f.SettingGroup,{label:"Face",children:(0,t.jsxs)("div",{className:"space-y-5 py-2",children:[(0,t.jsxs)("div",{className:"flex flex-col items-center gap-4 pt-2",children:[(0,t.jsx)($.Face,{look:e,size:176,className:"w-44"}),(0,t.jsx)(d.Segmented,{"aria-label":"Face",options:F.FACE_KINDS.map(e=>({value:e,label:$.FACES[e].label})),value:e.kind,onChange:e=>s({kind:e})}),(0,t.jsx)("p",{className:"max-w-sm text-center text-xs text-muted-foreground",children:$.FACES[e.kind].hint})]}),"mark"===e.kind&&(0,t.jsx)("div",{className:"flex justify-center px-2",children:(0,t.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsx)(u.Swatch,{color:null,picked:!e.color,onPick:()=>s({color:void 0})}),(0,t.jsx)("span",{className:"w-2"}),p.MARK_PALETTE_ROWS[0].map(n=>(0,t.jsx)(u.Swatch,{color:n,picked:e.color===n,onPick:()=>s({color:n})},n))]}),(0,t.jsx)("div",{className:"flex flex-wrap items-center gap-2 pl-9",children:p.MARK_PALETTE_ROWS[1].map(n=>(0,t.jsx)(u.Swatch,{color:n,picked:e.color===n,onPick:()=>s({color:n})},n))})]})}),"mark"===e.kind&&(0,t.jsx)(en,{label:"Shape",children:(0,t.jsx)(d.Segmented,{"aria-label":"Shape",options:p.MARK_SHAPES.map(e=>({value:e,label:(0,t.jsx)("span",{className:"capitalize",children:e})})),value:e.shape??"blob",onChange:e=>s({shape:e})})}),"mark"===e.kind&&(0,t.jsx)(en,{label:"Style",children:(0,t.jsx)(d.Segmented,{"aria-label":"Style",options:[{value:"solid",label:"Solid"},{value:"outline",label:"Outline"}],value:e.outline?"outline":"solid",onChange:e=>s({outline:"outline"===e||void 0})})}),"ascii"===e.kind&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(en,{label:"Glyphs",children:(0,t.jsx)(d.Segmented,{"aria-label":"Glyphs",options:F.ASCII_CHARSETS.map(e=>({value:e,label:et[e]})),value:e.charset,onChange:e=>s({charset:e})})}),(0,t.jsx)(en,{label:"Size",children:(0,t.jsx)(es,{min:4,max:16,step:1,value:e.fontSize,format:e=>`${e}px`,onChange:e=>s({fontSize:e})})}),(0,t.jsx)(en,{label:"Density",children:(0,t.jsx)(es,{min:.6,max:2,step:.1,value:e.density,format:e=>`${e.toFixed(1)}x`,onChange:e=>s({density:e})})})]})]})})}let et={ascii:"Characters",emoji:"Sprinkled",emojiOnly:"All emoji"};function en({label:e,children:n}){return(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("span",{className:"w-16 shrink-0 font-mono text-[11px] text-muted-foreground",children:e}),n]})}function es({value:e,onChange:n,format:s,...r}){return(0,t.jsxs)("span",{className:"flex min-w-0 flex-1 items-center gap-3",children:[(0,t.jsx)("input",{type:"range",...r,value:e,onChange:e=>n(Number(e.target.value)),className:"min-w-0 flex-1 accent-foreground"}),(0,t.jsx)("span",{className:"w-10 shrink-0 text-right font-mono text-[11px] text-muted-foreground tabular-nums",children:s(e)})]})}function er({provider:e,value:r,hasKey:l,onPick:a}){let o=!!r,c=r?.voice??e.defaultVoice,d=r?.model??"";return(0,t.jsxs)("div",{className:(0,E.cn)("p-4",o&&"bg-muted/40"),children:[(0,t.jsxs)("button",{type:"button",disabled:o,onClick:()=>a({voice:null,model:null}),className:"flex w-full items-center gap-3 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-default",children:[(0,t.jsx)(m.ProviderIcon,{provider:e.id,className:"size-4 shrink-0"}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-0.5",children:[(0,t.jsx)("span",{className:"block truncate text-sm font-medium",children:e.label}),(0,t.jsx)("span",{className:"block truncate font-mono text-xs text-muted-foreground",children:d||e.models[0].id})]}),l?o&&(0,t.jsx)(n.Check,{className:"size-4 shrink-0"}):(0,t.jsxs)("span",{className:"flex shrink-0 items-center gap-1 font-mono text-[11px] text-muted-foreground",children:[(0,t.jsx)(s.TriangleAlert,{className:"size-3"}),"No key"]})]}),o&&(0,t.jsxs)("div",{className:"space-y-3 pt-3",children:[(0,t.jsx)(i.Combobox,{value:d,onChange:e=>a({voice:r?.voice??null,model:e||null}),options:e.models.map(e=>({value:e.id,label:e.label,hint:e.id})),"aria-label":`${e.label} realtime model`,placeholder:e.models[0].id,empty:"Not on the list — it still runs"}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:e.voices.map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>a({voice:e,model:r?.model??null}),className:(0,E.cn)("rounded-full border px-2.5 py-1 font-mono text-[11px] transition-colors outline-none focus-visible:ring-3 focus-visible:ring-ring/50",e===c?"border-foreground/40 text-foreground":"border-border/60 text-muted-foreground hover:text-foreground"),children:e},e))})]})]})}let el={center:{label:"Her last line",hint:"One caption under the mark — only what she said."},sides:{label:"Last three turns",hint:"Hers on the left, yours on the right, beside the mark."}};function ea({value:e,onChange:n}){return(0,t.jsx)(f.SettingGroup,{label:"Calls you",note:"off"!==e&&"Needs this tab open. A tab that has been silent since it loaded may not be allowed to make a sound — the desktop notification covers that.",children:(0,t.jsx)(f.SettingChoiceRows,{options:_.CALL_BACK_MODES.map(e=>({value:e,label:_.CALL_BACK_LABEL[e],hint:ei[e]})),value:e,onChange:n})})}let ei={off:"Nothing opens a call but you.",waiting:"A job that stopped to ask gets her to ring you.",any:"Anything a bot finishes, she opens a line to tell you."};function eo({value:e,onChange:n}){return(0,t.jsx)(f.SettingGroup,{label:"Captions",children:(0,t.jsx)(f.SettingChoiceRows,{options:_.CAPTION_VIEWS.map(e=>({value:e,label:el[e].label,hint:el[e].hint})),value:e,onChange:n})})}function ec({value:e,onChange:n}){let s=(0,q.useDraft)(e.phrase,t=>n({...e,phrase:t}),{min:_.WAKE_PHRASE.min}),r=s.value.trim().split(/\s+/).length<2;return(0,t.jsx)(f.SettingGroup,{label:"Wake",children:(0,t.jsx)(f.SettingToggle,{label:"Answer to her name",description:"Between calls, the browser listens for the phrase below and picks up when it hears it.",checked:e.enabled,onChange:t=>n({...e,enabled:t}),children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(o.Input,{value:s.value,maxLength:_.WAKE_PHRASE.max,spellCheck:!1,onChange:e=>s.set(e.target.value),onBlur:s.commit,onKeyDown:s.onKeyDown,"aria-label":"Wake phrase",className:"font-mono text-sm"}),(0,t.jsx)(f.SettingNote,{children:r?"One word will wake her by accident — say hello first.":"Heard loosely, in English. Near misses count."})]})})})}function ed({value:e,onChange:n}){let[s,l]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),o=(0,U.useHotkeyLabel)((0,U.isCombo)(e.combo)?e.combo:null);return(0,t.jsx)(f.SettingGroup,{label:"Shortcut",children:(0,t.jsx)(f.SettingToggle,{label:"Answer to a key",description:"With this tab in front, the key below starts a call — and ends the one that is running.",checked:e.enabled,onChange:t=>n({...e,enabled:t}),children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("button",{type:"button",...U.HOTKEY_CAPTURE,onClick:()=>{i(!1),l(!0)},onBlur:()=>l(!1),onKeyDown:s?t=>{if("Tab"===t.key)return;if(t.preventDefault(),t.stopPropagation(),"Escape"===t.key)return l(!1);let s=(0,U.comboOf)(t.nativeEvent);if(!s)return i(!0);i(!1),l(!1),n({...e,combo:s})}:void 0,className:(0,E.cn)("w-full rounded-lg border px-3 py-2 font-mono text-sm outline-none transition-colors focus-visible:ring-3 focus-visible:ring-ring/50",s?"border-foreground/40 text-muted-foreground":"border-border/60 hover:bg-muted/50"),children:s?"Press the keys…":o??"Set a shortcut"}),(0,t.jsx)(f.SettingNote,{children:a?"Hold Ctrl, Alt or Cmd — a plain key is typing.":s?"Esc to keep the one you have.":"Only while this tab has focus. Not while you are typing."})]})})})}function eu({value:e,onSave:n}){let[s,l]=(0,r.useState)(e);return(0,t.jsx)(f.SettingGroup,{label:"Instructions",right:`${s.length}/${Y.COMMON_VALIDATE.prompt.max}`,children:(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)(h.Textarea,{value:s,maxLength:Y.COMMON_VALIDATE.prompt.max,onChange:e=>l(e.target.value),placeholder:"Anything else she should know before the first word — how to address you, what to skip.",className:"min-h-28"}),(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)(a.Button,{size:"sm",disabled:s===e,onClick:()=>n(s),children:"Save"})})]})})}e.s(["ThursdaySetting",0,function(){let e=(0,W.useThursdayStore)(),n=(0,W.useThursdayStore)(e=>e.patch),{data:s=[],isLoading:r,error:a}=(0,X.useServerRoute)(l.queryKey.llmModel),i=(0,G.useThursdayFace)();if(r)return(0,t.jsx)(f.SettingSkeleton,{rows:4});if(a)return(0,t.jsx)(f.SettingError,{message:a.message});let o=e.model?.provider??null;return(0,t.jsxs)(f.SettingScreen,{footer:(0,t.jsx)(f.SettingRailNote,{children:"Her prompt is assembled fresh on every call — memory, the roster and your skills go in."}),children:[(0,t.jsx)(ee,{value:i,onChange:G.setThursdayFace}),(0,t.jsx)(O,{}),(0,t.jsx)(f.SettingGroup,{label:"Voice",note:!o&&"Nothing picked — calls run on whichever key is set.",children:(0,t.jsx)(f.SettingItems,{children:x.SPEACH_MODEL_PROVIDER_LIST.map(r=>{let l;return(0,t.jsx)(er,{provider:r,value:o===r.id?e.model:null,hasKey:(l=r.apiKeyName,s.some(e=>e.apiKeyName===l&&e.hasKey)),onPick:e=>n({model:{provider:r.id,...e}})},r.id)})})}),(0,t.jsx)(eo,{value:e.captionView,onChange:e=>n({captionView:e})}),(0,t.jsx)(ec,{value:e.wake,onChange:e=>n({wake:e})}),(0,t.jsx)(ea,{value:e.callBack,onChange:e=>n({callBack:e})}),(0,t.jsx)(ed,{value:e.hotkey,onChange:e=>n({hotkey:e})}),(0,t.jsx)(Z,{}),(0,t.jsx)(g.TidySetting,{}),(0,t.jsx)(eu,{value:e.systemPrompt??"",onSave:e=>n({systemPrompt:e})}),(0,t.jsx)(Q,{})]})}],59158)},698570,e=>{"use strict";var t=e.i(271645);e.s(["useDraft",0,function(e,n,{min:s=1}={}){let[r,l]=(0,t.useState)(e),[a,i]=(0,t.useState)(e);return e!==a&&(i(e),l(e)),{value:r,set:l,commit:()=>{let t=r.trim();if(t.length<s)return l(e);l(t),t!==e&&n(t)},onKeyDown:e=>{"Enter"!==e.key||e.nativeEvent.isComposing||e.currentTarget.blur()}}}])},661504,e=>{"use strict";var t=e.i(271645),n=e.i(699018),s=e.i(677309),r=e.i(271235),l=e.i(802239),a=e.i(646192);let i=Promise.resolve(),o=(0,r.withMiddleware)(n.u,e=>(n,r,o)=>{let c,d=(0,t.useRef)(!1),{cache:u,initialSize:h=1,revalidateAll:m=!1,persistSize:x=!1,revalidateFirstPage:p=!0,revalidateOnMount:g=!1,parallel:f=!1}=o,[,,,v]=s.a.get(s.o);try{(c=(0,s.s)(n?n(0,null):null)[0])&&(c=a.INFINITE_PREFIX+c)}catch(e){}let[b,y,j]=(0,s.c)(u,c),k=(0,t.useCallback)(()=>(0,s.i)(b()._l)?h:b()._l,[u,c,h]);(0,l.useSyncExternalStore)((0,t.useCallback)(e=>c?j(c,()=>{e()}):()=>{},[u,c]),k,k);let S=(0,t.useCallback)(()=>{let e=b()._l;return(0,s.i)(e)?h:e},[c,h]),N=(0,t.useRef)(S());(0,s.u)(()=>{if(!d.current){d.current=!0;return}c&&y({_l:x?N.current:S()})},[c,u]);let w=g&&!d.current,C=e(c,async e=>{let t=b()._i,l=b()._r,a=s.a.get(u),i=a[8],c=()=>a[8]!==i;y({_r:s.U});let d=[],h=S(),[x]=(0,s.c)(u,e),g=x().data,j=[],k=null;for(let e=0;e<h;++e){let[a,i]=(0,s.s)(n(e,f?null:k));if(!a)break;let[h,x]=(0,s.c)(u,a),b=h().data,y=m||t||(0,s.i)(b)||p&&!e&&!(0,s.i)(g)||w||g&&!(0,s.i)(g[e])&&!o.compare(g[e],b);if(r&&("function"==typeof l?l(b,i):y)){let t=async()=>{if(a in v){let e=v[a];delete v[a],b=await e}else b=await r(i);c()||x({data:b,_k:i}),d[e]=b};f?j.push(t):await t()}else d[e]=b;f||(k=b)}return f&&await Promise.all(j.map(e=>e())),c()||y({_i:s.U}),d},o),A=(0,t.useCallback)(function(e,t){let n="boolean"==typeof t?{revalidate:t}:t||{},r=!1!==n.revalidate;return c?(r&&((0,s.i)(e)?y({_i:!0,_r:n.revalidate}):y({_i:!1,_r:n.revalidate})),arguments.length?C.mutate(e,{...n,revalidate:r}):C.mutate()):i},[c,u]),E=(0,t.useCallback)(e=>{let t;if(!c)return i;let[,r]=(0,s.c)(u,c);if((0,s.e)(e)?t=e(S()):"number"==typeof e&&(t=e),"number"!=typeof t)return i;r({_l:t}),N.current=t;let l=[],[a]=(0,s.c)(u,c),o=null;for(let e=0;e<t;++e){let[t]=(0,s.s)(n(e,o)),[r]=(0,s.c)(u,t),i=t?r().data:s.U;if((0,s.i)(i))return A(a().data);l.push(i),o=i}return A(l)},[c,u,A,S]);return{size:S(),setSize:E,mutate:A,get data(){return C.data},get error(){return C.error},get isValidating(){return C.isValidating},get isLoading(){return C.isLoading}}});var c=e.i(41533),d=e.i(283653);e.s(["useServerPages",0,function(e){let n=e.size??c.PAGE_SIZE,{key:s}=e,{data:r,error:l,isLoading:a,isValidating:i,setSize:u,mutate:h}=o((e,t)=>(0,d.resolveKey)(s(e,t)),d.fetchRoute,{dedupingInterval:500,revalidateOnMount:!0,revalidateOnFocus:!0,revalidateOnReconnect:!0,focusThrottleInterval:1e3,revalidateFirstPage:!1,...e.swr}),m=r??[],x=m.flat(),p=m.at(-1),g=void 0!==p&&p.length>=n,f=(0,t.useRef)(0),v=i&&m.length>0&&f.current>m.length,b=(0,t.useRef)({isValidating:i,setSize:u,pages:m.length});b.current={isValidating:i,setSize:u,pages:m.length};let y=(0,d.resolveKey)(s(0,null)),j="string"==typeof y?y:y?.url;(0,t.useEffect)(()=>{if(j)return(0,d.registerPagedReader)({url:j,refresh:()=>h()})},[j,h]);let k=function(e,n={}){let{enabled:s=!0,margin:r="600px",revision:l}=n,a=(0,t.useRef)(e);a.current=e;let i=(0,t.useRef)(null),o=(0,t.useRef)(null),c=(0,t.useCallback)(e=>{i.current=e},[]);return(0,t.useEffect)(()=>{o.current?.disconnect();let e=i.current;if(e&&s)return o.current=new IntersectionObserver(([e])=>{e.isIntersecting&&a.current()},{root:function(e){let t=e.parentElement;for(;t;){let{overflowY:e}=getComputedStyle(t);if(("auto"===e||"scroll"===e)&&t.scrollHeight>t.clientHeight)return t;t=t.parentElement}return null}(e),rootMargin:r}),o.current.observe(e),()=>o.current?.disconnect()},[s,r,l]),c}(()=>{let e=b.current;e.isValidating||(f.current=e.pages+1,e.setSize(e.pages+1))},{enabled:g,revision:`${m.length}:${i}`});return{items:x,isLoading:a,isLoadingMore:v,error:l,hasMore:g,sentinelRef:k,refresh:()=>h()}}],661504)},759659,e=>{"use strict";var t=e.i(456420);let n={name:"trash",size:24,node:[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],aliases:["trash-2"]};n.node;let s=(0,t.default)(n);e.s(["Trash2",0,s],759659)}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,94682,e=>{"use strict";var t=e.i(843476),n=e.i(24071),i=e.i(482022),s=e.i(829600),r=e.i(434322),a=e.i(905015),o=e.i(226091),l=e.i(569644),c=e.i(815170),d=e.i(456420);let u={name:"images",size:24,node:[["path",{d:"m22 11-1.296-1.296a2.4 2.4 0 0 0-3.408 0L11 16",key:"9kzy35"}],["path",{d:"M4 8a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2",key:"1t0f0t"}],["circle",{cx:"13",cy:"7",r:"1",fill:"currentColor",key:"1obus6"}],["rect",{x:"8",y:"2",width:"14",height:"14",rx:"2",key:"1gvhby"}]]};u.node;let m=(0,d.default)(u);var f=e.i(51921),h=e.i(650639),x=e.i(759659),g=e.i(438583),p=e.i(271645),y=e.i(798120),v=e.i(167881),b=e.i(917162),j=e.i(671428),k=e.i(41533),N=e.i(95187);let w=(0,N.createServerReference)("7f3f437b7e31640c30158a87a505166dd8cf350e75",N.callServer,void 0,N.findSourceMapURL,"deleteArtifactAction");var S=e.i(895836),A=e.i(621285),C=e.i(186065),F=e.i(245629),$=e.i(609856),z=e.i(283653),T=e.i(647163);let R={markdown:o.FileText,csv:h.Sheet,json:a.FileJson,text:o.FileText,frame:r.FileCode2,image:c.Image,audio:f.Music,video:g.Video,none:s.File};function M({entry:e,active:n,onPick:i}){let s="set"===e.kind?m:R[e.view];return(0,t.jsxs)("button",{type:"button",onClick:i,title:`${e.name} \xb7 ${(0,F.shortAgo)(e.at)}`,className:(0,T.cn)("mx-2 flex items-center gap-2 rounded-md px-2 py-1.5 text-left text-[13px] outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",n?"bg-secondary font-medium text-foreground":"text-muted-foreground hover:bg-muted/60 hover:text-foreground"),children:[(0,t.jsx)(s,{className:"size-3.5 shrink-0 opacity-70"}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate",children:e.name}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/75",children:"set"===e.kind?e.count:(0,T.formatBytes)(e.bytes)})]})}function V({row:e,file:s,onOpen:r,onBack:a,onGone:o}){let[c]=(0,$.useServerAction)(C.openFileAction),[d,u]=(0,$.useServerAction)(w,{okMessage:"Deleted",onOk:()=>{(0,z.revalidate)(y.queryKey.artifacts),s?a():o()}}),m=s?{path:s.path,bytes:s.bytes,at:s.at}:"file"===e.kind?{path:e.path,bytes:e.bytes,at:e.at}:null,f=async e=>{await b.notify.confirm({title:`Delete ${e.split("/").pop()}?`,description:"It is deleted from disk for good.",okText:"Delete",destructive:!0})&&d(e)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex h-11 shrink-0 items-center gap-3 border-b border-border/60 px-6",children:[s&&(0,t.jsxs)("button",{type:"button",onClick:a,className:"-ml-1 flex shrink-0 items-center gap-1 rounded-md px-1.5 py-1 font-mono text-[11px] text-muted-foreground outline-none hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,t.jsx)(n.ChevronLeft,{className:"size-3"}),e.name]}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px] text-foreground",children:m?m.path.split("/").pop()??e.name:e.name}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/70",children:m?`${(0,T.formatBytes)(m.bytes)} \xb7 ${(0,F.shortAgo)(m.at)}`:`${e.count} ${1===e.count?"file":"files"} \xb7 ${(0,F.shortAgo)(e.at)}`}),m&&(0,t.jsx)("a",{href:y.queryKey.fileView(m.path),target:"_blank",rel:"noreferrer","aria-label":"Open in a new tab",className:"grid size-7 shrink-0 place-items-center rounded-md text-muted-foreground outline-none transition-colors hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:(0,t.jsx)(i.ExternalLink,{className:"size-4"})}),(0,t.jsx)(v.Button,{size:"icon-sm",variant:"ghost","aria-label":"Reveal in the file manager",className:"text-muted-foreground",onClick:()=>c(m?.path??e.path),children:(0,t.jsx)(l.FolderOpen,{})}),m&&(0,t.jsx)(v.Button,{size:"icon-sm",variant:"ghost","aria-label":"Delete",loading:u,className:"text-muted-foreground",onClick:()=>f(m.path),children:(0,t.jsx)(x.Trash2,{})})]}),(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-auto",children:m?(0,t.jsx)(A.FilePreview,{path:m.path,bytes:m.bytes}):(0,t.jsx)(I,{name:e.name,onOpen:r})})]})}function I({name:e,onOpen:n}){let{data:i,isLoading:s,error:r}=(0,z.useServerRoute)(y.queryKey.artifactSet(e,k.ARTIFACT_VIEW.setFiles));if(s)return(0,t.jsx)("div",{className:"grid grid-cols-4 gap-3 p-5",children:Array.from({length:8},(e,n)=>(0,t.jsx)(j.Skeleton,{className:"aspect-4/3 w-full rounded-xl"},n))});if(r)return(0,t.jsx)(S.SettingError,{message:r.message});let a=i?.files??[];return 0===a.length?(0,t.jsx)("p",{className:"p-5 text-xs text-muted-foreground/60",children:"Nothing in here the app can open."}):(0,t.jsxs)("div",{className:"p-5",children:[(0,t.jsx)("div",{className:"grid grid-cols-4 gap-3",children:a.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>n(e),title:`${e.name} \xb7 ${(0,T.formatBytes)(e.bytes)}`,className:"flex flex-col gap-1.5 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-offset-2",children:[(0,t.jsx)(L,{file:e}),(0,t.jsx)("span",{className:"truncate font-mono text-[11px] text-muted-foreground",children:e.name})]},e.path))}),i&&i.total>a.length&&(0,t.jsx)("p",{className:"pt-4 font-mono text-[11px] text-muted-foreground/60",children:`${a.length} of ${i.total.toLocaleString("en")} — the rest are in the folder`})]})}function L({file:e}){if("image"===e.view&&e.bytes<=k.WORKSPACE_VIEW.elementMax)return(0,t.jsx)("img",{src:y.queryKey.file(e.path),alt:e.name,loading:"lazy",decoding:"async",className:"aspect-4/3 w-full rounded-xl object-cover"});let n=R[e.view];return(0,t.jsx)("span",{className:"grid aspect-4/3 w-full place-items-center rounded-xl bg-muted/40 text-muted-foreground",children:(0,t.jsx)(n,{className:"size-5"})})}function B({empty:e,onReveal:n}){return(0,t.jsxs)("div",{className:"space-y-4 p-8",children:[(0,t.jsx)("p",{className:"max-w-lg text-sm leading-relaxed text-muted-foreground",children:e?"Nothing finished yet. When a bot ends a job with something to hand over — a page, a report, a set of pictures — it lands here.":"Pick something on the left. A folder a bot filled is one row, and opens as a sheet."}),(0,t.jsxs)(v.Button,{variant:"outline",onClick:n,children:[(0,t.jsx)(l.FolderOpen,{}),"Reveal folder"]})]})}e.s(["ArtifactSetting",0,function(){let[e,n]=(0,p.useState)(null),[i,s]=(0,p.useState)(""),[r,a]=(0,p.useState)(k.ARTIFACT_VIEW.rows),{data:o,isLoading:c,error:d}=(0,z.useServerRoute)(y.queryKey.artifactShelf(r),{keepPreviousData:!0}),[u]=(0,$.useServerAction)(C.openFileAction);if(c)return(0,t.jsx)(S.SettingPanesSkeleton,{});if(d)return(0,t.jsx)(S.SettingError,{message:d.message});let m=o?.entries??[],f=o?.total??0,h=i.trim().toLowerCase(),x=h?m.filter(e=>e.name.toLowerCase().includes(h)):m,g=m.find(t=>t.path===e?.row.path)??e?.row;return(0,t.jsx)(S.SettingPanes,{footer:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(S.SettingRailNote,{children:(0,t.jsxs)("span",{className:"font-mono",children:[(0,t.jsx)("span",{className:"font-medium text-foreground",children:"artifacts"}),` \xb7 ${function(e,t,n){if(0===t)return"empty";let i=t>e.length?`${e.length} of ${t.toLocaleString("en")} artifacts`:`${t} ${1===t?"artifact":"artifacts"}`;return n>t?`${i} \xb7 ${n.toLocaleString("en")} files`:i}(m,f,o?.files??0)}`]})}),(0,t.jsxs)(v.Button,{variant:"outline",size:"sm",onClick:()=>u("artifacts"),children:[(0,t.jsx)(l.FolderOpen,{}),"Reveal folder"]})]}),left:(0,t.jsxs)("div",{className:"flex flex-col py-2",children:[(0,t.jsx)(S.SettingFilter,{value:i,onChange:s,placeholder:"Filter artifacts",className:"mx-2 mb-1.5 w-auto"}),0===x.length?(0,t.jsx)("p",{className:"px-4 py-3 text-xs text-muted-foreground/60",children:h?"Nothing matches":"Nothing here yet"}):x.map(e=>(0,t.jsx)(M,{entry:e,active:e.path===g?.path,onPick:()=>n({row:e,file:null})},e.path)),f>m.length&&(0,t.jsx)("button",{type:"button",onClick:()=>a(r+k.ARTIFACT_VIEW.rows),className:"mx-2 mt-2 rounded-md px-2 py-1.5 text-left font-mono text-[11px] text-muted-foreground outline-none hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:`Show ${Math.min(k.ARTIFACT_VIEW.rows,f-m.length)} more of ${f.toLocaleString("en")}`})]}),right:g?(0,t.jsx)(V,{row:g,file:e?.file??null,onOpen:e=>n({row:g,file:e}),onBack:()=>n({row:g,file:null}),onGone:()=>n(null)},g.path):(0,t.jsx)(B,{empty:0===f,onReveal:()=>u("artifacts")})})}],94682)},434322,51921,650639,438583,e=>{"use strict";var t=e.i(456420);let n={name:"file-code-corner",size:24,node:[["path",{d:"M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35",key:"1wthlu"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m5 16-3 3 3 3",key:"331omg"}],["path",{d:"m9 22 3-3-3-3",key:"lsp7cz"}]],aliases:["file-code-2"]};n.node;let i=(0,t.default)(n);e.s(["FileCode2",0,i],434322);let s={name:"music",size:24,node:[["path",{d:"M9 18V5l12-2v13",key:"1jmyc2"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["circle",{cx:"18",cy:"16",r:"3",key:"1hluhg"}]]};s.node;let r=(0,t.default)(s);e.s(["Music",0,r],51921);let a={name:"sheet",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["line",{x1:"3",x2:"21",y1:"9",y2:"9",key:"1vqk6q"}],["line",{x1:"3",x2:"21",y1:"15",y2:"15",key:"o2sbyz"}],["line",{x1:"9",x2:"9",y1:"9",y2:"21",key:"1ib60c"}],["line",{x1:"15",x2:"15",y1:"9",y2:"21",key:"1n26ft"}]]};a.node;let o=(0,t.default)(a);e.s(["Sheet",0,o],650639);let l={name:"video",size:24,node:[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",key:"ftymec"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",key:"158x01"}]]};l.node;let c=(0,t.default)(l);e.s(["Video",0,c],438583)},759659,e=>{"use strict";var t=e.i(456420);let n={name:"trash",size:24,node:[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],aliases:["trash-2"]};n.node;let i=(0,t.default)(n);e.s(["Trash2",0,i],759659)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,94682,e=>{"use strict";var t=e.i(843476),n=e.i(24071),i=e.i(482022),s=e.i(829600),r=e.i(434322),a=e.i(905015),o=e.i(226091),l=e.i(569644),c=e.i(815170),d=e.i(456420);let u={name:"images",size:24,node:[["path",{d:"m22 11-1.296-1.296a2.4 2.4 0 0 0-3.408 0L11 16",key:"9kzy35"}],["path",{d:"M4 8a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2",key:"1t0f0t"}],["circle",{cx:"13",cy:"7",r:"1",fill:"currentColor",key:"1obus6"}],["rect",{x:"8",y:"2",width:"14",height:"14",rx:"2",key:"1gvhby"}]]};u.node;let m=(0,d.default)(u);var f=e.i(51921),h=e.i(650639),x=e.i(759659),g=e.i(438583),p=e.i(271645),y=e.i(798120),v=e.i(167881),b=e.i(917162),j=e.i(671428),k=e.i(41533),N=e.i(95187);let w=(0,N.createServerReference)("7fce3f493e6c36ed983cc6adcb44ebe36f59ca1837",N.callServer,void 0,N.findSourceMapURL,"deleteArtifactAction");var S=e.i(895836),A=e.i(621285),C=e.i(706951),F=e.i(245629),$=e.i(609856),z=e.i(283653),T=e.i(647163);let R={markdown:o.FileText,csv:h.Sheet,json:a.FileJson,text:o.FileText,frame:r.FileCode2,image:c.Image,audio:f.Music,video:g.Video,none:s.File};function M({entry:e,active:n,onPick:i}){let s="set"===e.kind?m:R[e.view];return(0,t.jsxs)("button",{type:"button",onClick:i,title:`${e.name} \xb7 ${(0,F.shortAgo)(e.at)}`,className:(0,T.cn)("mx-2 flex items-center gap-2 rounded-md px-2 py-1.5 text-left text-[13px] outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",n?"bg-secondary font-medium text-foreground":"text-muted-foreground hover:bg-muted/60 hover:text-foreground"),children:[(0,t.jsx)(s,{className:"size-3.5 shrink-0 opacity-70"}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate",children:e.name}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/75",children:"set"===e.kind?e.count:(0,T.formatBytes)(e.bytes)})]})}function V({row:e,file:s,onOpen:r,onBack:a,onGone:o}){let[c]=(0,$.useServerAction)(C.openFileAction),[d,u]=(0,$.useServerAction)(w,{okMessage:"Deleted",onOk:()=>{(0,z.revalidate)(y.queryKey.artifacts),s?a():o()}}),m=s?{path:s.path,bytes:s.bytes,at:s.at}:"file"===e.kind?{path:e.path,bytes:e.bytes,at:e.at}:null,f=async e=>{await b.notify.confirm({title:`Delete ${e.split("/").pop()}?`,description:"It is deleted from disk for good.",okText:"Delete",destructive:!0})&&d(e)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex h-11 shrink-0 items-center gap-3 border-b border-border/60 px-6",children:[s&&(0,t.jsxs)("button",{type:"button",onClick:a,className:"-ml-1 flex shrink-0 items-center gap-1 rounded-md px-1.5 py-1 font-mono text-[11px] text-muted-foreground outline-none hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,t.jsx)(n.ChevronLeft,{className:"size-3"}),e.name]}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px] text-foreground",children:m?m.path.split("/").pop()??e.name:e.name}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground/70",children:m?`${(0,T.formatBytes)(m.bytes)} \xb7 ${(0,F.shortAgo)(m.at)}`:`${e.count} ${1===e.count?"file":"files"} \xb7 ${(0,F.shortAgo)(e.at)}`}),m&&(0,t.jsx)("a",{href:y.queryKey.fileView(m.path),target:"_blank",rel:"noreferrer","aria-label":"Open in a new tab",className:"grid size-7 shrink-0 place-items-center rounded-md text-muted-foreground outline-none transition-colors hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:(0,t.jsx)(i.ExternalLink,{className:"size-4"})}),(0,t.jsx)(v.Button,{size:"icon-sm",variant:"ghost","aria-label":"Reveal in the file manager",className:"text-muted-foreground",onClick:()=>c(m?.path??e.path),children:(0,t.jsx)(l.FolderOpen,{})}),m&&(0,t.jsx)(v.Button,{size:"icon-sm",variant:"ghost","aria-label":"Delete",loading:u,className:"text-muted-foreground",onClick:()=>f(m.path),children:(0,t.jsx)(x.Trash2,{})})]}),(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-auto",children:m?(0,t.jsx)(A.FilePreview,{path:m.path,bytes:m.bytes}):(0,t.jsx)(I,{name:e.name,onOpen:r})})]})}function I({name:e,onOpen:n}){let{data:i,isLoading:s,error:r}=(0,z.useServerRoute)(y.queryKey.artifactSet(e,k.ARTIFACT_VIEW.setFiles));if(s)return(0,t.jsx)("div",{className:"grid grid-cols-4 gap-3 p-5",children:Array.from({length:8},(e,n)=>(0,t.jsx)(j.Skeleton,{className:"aspect-4/3 w-full rounded-xl"},n))});if(r)return(0,t.jsx)(S.SettingError,{message:r.message});let a=i?.files??[];return 0===a.length?(0,t.jsx)("p",{className:"p-5 text-xs text-muted-foreground/60",children:"Nothing in here the app can open."}):(0,t.jsxs)("div",{className:"p-5",children:[(0,t.jsx)("div",{className:"grid grid-cols-4 gap-3",children:a.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>n(e),title:`${e.name} \xb7 ${(0,T.formatBytes)(e.bytes)}`,className:"flex flex-col gap-1.5 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-offset-2",children:[(0,t.jsx)(L,{file:e}),(0,t.jsx)("span",{className:"truncate font-mono text-[11px] text-muted-foreground",children:e.name})]},e.path))}),i&&i.total>a.length&&(0,t.jsx)("p",{className:"pt-4 font-mono text-[11px] text-muted-foreground/60",children:`${a.length} of ${i.total.toLocaleString("en")} — the rest are in the folder`})]})}function L({file:e}){if("image"===e.view&&e.bytes<=k.WORKSPACE_VIEW.elementMax)return(0,t.jsx)("img",{src:y.queryKey.file(e.path),alt:e.name,loading:"lazy",decoding:"async",className:"aspect-4/3 w-full rounded-xl object-cover"});let n=R[e.view];return(0,t.jsx)("span",{className:"grid aspect-4/3 w-full place-items-center rounded-xl bg-muted/40 text-muted-foreground",children:(0,t.jsx)(n,{className:"size-5"})})}function B({empty:e,onReveal:n}){return(0,t.jsxs)("div",{className:"space-y-4 p-8",children:[(0,t.jsx)("p",{className:"max-w-lg text-sm leading-relaxed text-muted-foreground",children:e?"Nothing finished yet. When a bot ends a job with something to hand over — a page, a report, a set of pictures — it lands here.":"Pick something on the left. A folder a bot filled is one row, and opens as a sheet."}),(0,t.jsxs)(v.Button,{variant:"outline",onClick:n,children:[(0,t.jsx)(l.FolderOpen,{}),"Reveal folder"]})]})}e.s(["ArtifactSetting",0,function(){let[e,n]=(0,p.useState)(null),[i,s]=(0,p.useState)(""),[r,a]=(0,p.useState)(k.ARTIFACT_VIEW.rows),{data:o,isLoading:c,error:d}=(0,z.useServerRoute)(y.queryKey.artifactShelf(r),{keepPreviousData:!0}),[u]=(0,$.useServerAction)(C.openFileAction);if(c)return(0,t.jsx)(S.SettingPanesSkeleton,{});if(d)return(0,t.jsx)(S.SettingError,{message:d.message});let m=o?.entries??[],f=o?.total??0,h=i.trim().toLowerCase(),x=h?m.filter(e=>e.name.toLowerCase().includes(h)):m,g=m.find(t=>t.path===e?.row.path)??e?.row;return(0,t.jsx)(S.SettingPanes,{footer:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(S.SettingRailNote,{children:(0,t.jsxs)("span",{className:"font-mono",children:[(0,t.jsx)("span",{className:"font-medium text-foreground",children:"artifacts"}),` \xb7 ${function(e,t,n){if(0===t)return"empty";let i=t>e.length?`${e.length} of ${t.toLocaleString("en")} artifacts`:`${t} ${1===t?"artifact":"artifacts"}`;return n>t?`${i} \xb7 ${n.toLocaleString("en")} files`:i}(m,f,o?.files??0)}`]})}),(0,t.jsxs)(v.Button,{variant:"outline",size:"sm",onClick:()=>u("artifacts"),children:[(0,t.jsx)(l.FolderOpen,{}),"Reveal folder"]})]}),left:(0,t.jsxs)("div",{className:"flex flex-col py-2",children:[(0,t.jsx)(S.SettingFilter,{value:i,onChange:s,placeholder:"Filter artifacts",className:"mx-2 mb-1.5 w-auto"}),0===x.length?(0,t.jsx)("p",{className:"px-4 py-3 text-xs text-muted-foreground/60",children:h?"Nothing matches":"Nothing here yet"}):x.map(e=>(0,t.jsx)(M,{entry:e,active:e.path===g?.path,onPick:()=>n({row:e,file:null})},e.path)),f>m.length&&(0,t.jsx)("button",{type:"button",onClick:()=>a(r+k.ARTIFACT_VIEW.rows),className:"mx-2 mt-2 rounded-md px-2 py-1.5 text-left font-mono text-[11px] text-muted-foreground outline-none hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:`Show ${Math.min(k.ARTIFACT_VIEW.rows,f-m.length)} more of ${f.toLocaleString("en")}`})]}),right:g?(0,t.jsx)(V,{row:g,file:e?.file??null,onOpen:e=>n({row:g,file:e}),onBack:()=>n({row:g,file:null}),onGone:()=>n(null)},g.path):(0,t.jsx)(B,{empty:0===f,onReveal:()=>u("artifacts")})})}],94682)},434322,51921,650639,438583,e=>{"use strict";var t=e.i(456420);let n={name:"file-code-corner",size:24,node:[["path",{d:"M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35",key:"1wthlu"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m5 16-3 3 3 3",key:"331omg"}],["path",{d:"m9 22 3-3-3-3",key:"lsp7cz"}]],aliases:["file-code-2"]};n.node;let i=(0,t.default)(n);e.s(["FileCode2",0,i],434322);let s={name:"music",size:24,node:[["path",{d:"M9 18V5l12-2v13",key:"1jmyc2"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["circle",{cx:"18",cy:"16",r:"3",key:"1hluhg"}]]};s.node;let r=(0,t.default)(s);e.s(["Music",0,r],51921);let a={name:"sheet",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["line",{x1:"3",x2:"21",y1:"9",y2:"9",key:"1vqk6q"}],["line",{x1:"3",x2:"21",y1:"15",y2:"15",key:"o2sbyz"}],["line",{x1:"9",x2:"9",y1:"9",y2:"21",key:"1ib60c"}],["line",{x1:"15",x2:"15",y1:"9",y2:"21",key:"1n26ft"}]]};a.node;let o=(0,t.default)(a);e.s(["Sheet",0,o],650639);let l={name:"video",size:24,node:[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",key:"ftymec"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",key:"158x01"}]]};l.node;let c=(0,t.default)(l);e.s(["Video",0,c],438583)},759659,e=>{"use strict";var t=e.i(456420);let n={name:"trash",size:24,node:[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],aliases:["trash-2"]};n.node;let i=(0,t.default)(n);e.s(["Trash2",0,i],759659)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,279265,240829,206721,e=>{"use strict";var t=e.i(843476),n=e.i(96892),s=e.i(689664),a=e.i(24071),o=e.i(867927),r=e.i(931619),i=e.i(508734),l=e.i(779266),d=e.i(632781),u=e.i(77071),c=e.i(263676),m=e.i(271645),x=e.i(798120),p=e.i(815731),f=e.i(167881),h=e.i(496336),b=e.i(683408),g=e.i(660302),k=e.i(184762),v=e.i(6799),j=e.i(41533),w=e.i(809977),y=e.i(692296),N=e.i(451888),C=e.i(635963),T=e.i(835878),z=e.i(764224),M=e.i(919191),S=e.i(929272),A=e.i(294340),B=e.i(133014);let _=[],R=!1,E=new Set,I={sync(e,t){for(let n of(R=!0,_=[...e].reverse().map(e=>$(e,t)).slice(-30),E))n()},primed:()=>R};function $(e,t){let n=e=>({name:e,icon:t?.find(t=>t.name===e)?.icon??null}),s=n(e.bot),a=[],o=new Map,r=new Map;for(let t of e.lines){let e=t.bot?n(t.bot):s,i=t.parent&&r.get(t.parent)?.name?s:null;switch(t.kind){case"user":a.push({id:t.id,bot:s,to:null,text:t.text,kind:"user"});break;case"text":a.push({id:t.id,bot:e,to:i,text:t.text,kind:"say"});break;case"note":a.push({id:t.id,bot:e,to:i,text:t.text,kind:"note"});break;case"tool":o.set(t.callId,a.length),a.push({id:t.id,bot:e,to:i,text:t.note??t.input,kind:"tool",tool:{name:t.name,input:t.input,note:t.note,path:t.path,callId:t.callId}});break;case"tool-result":{let e=o.get(t.callId),n=void 0===e?void 0:a[e];n?.tool&&void 0!==e&&(a[e]={...n,tool:{...n.tool,results:t.results,more:t.more}});break}case"ask":{let s=n(t.to);r.set(t.callId,s),a.push({id:t.id,bot:e,to:s,text:t.text,kind:"ask"});break}case"ask-result":{let n=r.get(t.callId);n&&t.text&&a.push({id:t.id,bot:n,to:e,text:t.text,kind:"ask"});break}case"waiting":a.push({id:t.id,bot:e,to:null,text:t.question,kind:"result",options:t.options})}}if("failed"===e.status&&e.outcome)a.push({id:`${e.id}-end`,bot:s,to:null,text:e.outcome,kind:"error"});else if("done"===e.status||"waiting"===e.status){let t=a.at(-1);t&&"say"===t.kind&&t.text===e.outcome&&(a[a.length-1]={...t,kind:"result"})}return{id:e.id,request:e.request,label:e.label,bot:s,lines:a,status:"running"===e.status?"working":e.status,outcome:e.outcome,ask:e.ask,relayed:e.reported,tokens:e.tokens,contextTokens:e.contextTokens,contextBudget:e.contextBudget,updatedAt:e.updatedAt}}function q(e){for(let t=e.lines.length-1;t>=0;t--){let n=e.lines[t];if("user"!==n.kind&&"note"!==n.kind)return n}return null}let F=new Map,K={get:e=>F.get(e)??"",set(e,t){t?F.set(e,t):F.delete(e)},typing:e=>(F.get(e)?.trim().length??0)>0},L=new Set,O={announce(e){for(let t of L)t(e)},subscribe:e=>(L.add(e),()=>{L.delete(e)})},U=[];function D(){return(0,m.useSyncExternalStore)(e=>(E.add(e),()=>E.delete(e)),()=>_,()=>U)}let P=e=>"result"===e.kind||"error"===e.kind;function H(e){let t=[e.bot];for(let n of e.lines)t.some(e=>e.name===n.bot.name)||t.push(n.bot);return t}function V(e){let t=new Set([e.bot.name]),n=[];for(let s of function(e){let t=[];for(let n of e){let e=t.at(-1);if(e&&e.bot.name===n.bot.name&&e.to?.name===n.to?.name&&"user"===e.lines[0].kind==("user"===n.kind)){e.lines.push(n);continue}t.push({key:n.id,bot:n.bot,to:n.to,lines:[n]})}return t}(e.lines))s.to&&!t.has(s.to.name)&&(t.add(s.to.name),n.push({kind:"invite",key:`${s.key}-joins`,from:s.bot,to:s.to})),t.add(s.bot.name),n.push({kind:"group",key:s.key,group:s});return n}function W(e){let t=new Map;for(let n of e)for(let e of(t.has(n.bot.name)||t.set(n.bot.name,{bot:n.bot,task:n,line:null,open:0}),n.lines))"user"!==e.kind&&"note"!==e.kind&&t.set(e.bot.name,{bot:e.bot,task:n,line:e,open:t.get(e.bot.name)?.open??0});for(let n of e){if("working"!==n.status)continue;let e=t.get(n.bot.name);e&&(e.open+=1)}return[...t.values()]}e.s(["botTasks",0,I,"isOutcome",0,P,"lastSaid",0,q,"latestPerBot",0,W,"rosterOf",0,H,"screenActs",0,O,"taskDrafts",0,K,"taskFromRow",0,$,"threadItems",0,V,"useBotTasks",0,D],240829);var X=e.i(609856),G=e.i(283653),J=e.i(647163);function Y({task:e,status:s,lines:a=[],className:o}){let[i,l]=(0,m.useState)(()=>K.get(e.id));(0,m.useEffect)(()=>l(K.get(e.id)),[e.id]);let u=t=>{l(t),K.set(e.id,t)},[p,b]=Q(),[v,w]=(0,X.useServerAction)(B.cancelTaskAction,{onOk:e=>{(0,G.revalidate)(x.queryKey.tasks),O.announce({kind:"stopped",id:e.id,label:e.label})}}),y=b||w,[C,T]=(0,m.useState)(!1),[z,A]=(0,m.useState)(null);(0,m.useEffect)(()=>{T(!1),A(null)},[e.id]),(0,m.useEffect)(()=>{"running"!==s&&A(null)},[s]),(0,m.useEffect)(()=>{z&&a.some(e=>"user"===e.kind&&e.text===z)&&A(null)},[a,z]);let _=async t=>{!y&&await p(e,t)&&(u(""),"running"===s&&(A(t.trim()),T(!1)))},R="waiting"===s?e.ask:null,E=(0,N.isBudgetAsk)(R),I=R?R.options.length?"Or put it another way…":"Your answer":"running"===s?`What's off? ${e.bot} reads this before its next step`:"Anything more? It picks up where it left off",$=(0,t.jsxs)("form",{onSubmit:e=>{e.preventDefault(),_(i)},className:"flex items-end gap-1 rounded-2xl bg-background py-1.5 pr-1.5 pl-3.5 ring-1 ring-border/80 transition-shadow focus-within:ring-ring/60",children:[(0,t.jsx)(k.Textarea,{value:i,rows:1,disabled:y,autoFocus:"running"===s,onChange:e=>u(e.target.value),onKeyDown:e=>{"Escape"===e.key&&"running"===s?T(!1):"Enter"!==e.key||e.shiftKey||e.nativeEvent.isComposing||229===e.keyCode||(e.preventDefault(),_(i))},placeholder:I,"aria-label":`Message for ${e.label}`,className:"max-h-32 min-h-0 flex-1 resize-none border-0 bg-transparent px-0 py-1 text-[13px] leading-5 shadow-none focus-visible:ring-0 dark:bg-transparent"}),"running"===s&&(0,t.jsx)(f.Button,{type:"button",size:"icon-sm",variant:"ghost",disabled:y,onClick:()=>T(!1),"aria-label":"Never mind",className:"text-muted-foreground",children:(0,t.jsx)(c.X,{})}),(0,t.jsx)(f.Button,{type:"submit",size:"icon-sm",variant:i.trim()?"default":"ghost",disabled:!i.trim()||y,"aria-label":"Send",className:"rounded-full",children:b?(0,t.jsx)(d.Loader2,{className:"animate-spin"}):(0,t.jsx)(n.ArrowUp,{})})]});return"running"!==s||C?R?(0,t.jsxs)("div",{className:(0,J.cn)("space-y-2.5 rounded-2xl px-3.5 py-3 ring-1",E?"bg-muted/40 ring-border/50":"bg-amber-500/8 ring-amber-500/25",o),children:[(0,t.jsxs)("p",{className:"flex items-center gap-1.5 font-mono text-[10px] text-muted-foreground",children:[(0,t.jsx)("span",{className:"shrink-0",children:"To"}),(0,t.jsx)("span",{className:"truncate text-foreground",children:e.bot}),(0,t.jsx)("span",{className:"shrink-0 text-muted-foreground/50",children:"·"}),(0,t.jsx)("span",{className:"truncate",children:e.label})]}),R.question&&(0,t.jsx)(h.FoldedText,{text:R.question,subject:"message",clamp:"line-clamp-6",tall:"max-h-56"}),R.options.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:R.options.map(e=>(0,t.jsxs)(f.Button,{size:"sm",variant:"outline",disabled:y,onClick:()=>_(e),className:"h-7 gap-1.5 rounded-full bg-background px-3 text-[12px]",children:[E&&e===N.TASK_CONTINUE&&(0,t.jsx)(r.ChevronsRight,{className:"size-3.5 text-muted-foreground"}),e,E&&e===N.TASK_CONTINUE&&(0,t.jsxs)("span",{className:"font-mono text-[10px] text-muted-foreground",children:["+",j.BOT_RUN.steps," steps"]})]},e))}),$,(0,t.jsx)("button",{type:"button",disabled:y,onClick:()=>v(e.id),className:"font-mono text-[10px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 disabled:opacity-50",children:"Stop this task instead"})]}):(0,t.jsx)("div",{className:o,children:$}):(0,t.jsxs)("div",{className:(0,J.cn)("flex items-center gap-2 rounded-2xl bg-muted/40 py-1.5 pr-1.5 pl-3.5 ring-1 ring-border/50",o),children:[z?(0,t.jsxs)("p",{className:"flex min-w-0 flex-1 items-center gap-2 text-[12.5px] leading-5 text-muted-foreground",children:[(0,t.jsx)(d.Loader2,{className:"size-3 shrink-0 animate-spin"}),(0,t.jsx)("span",{className:"shrink-0",children:"Before its next step:"}),(0,t.jsx)(g.default,{text:z,speed:2.2,color:"var(--muted-foreground)",shineColor:"var(--foreground)",className:"min-w-0 truncate"})]}):(0,t.jsx)(g.default,{text:`${e.bot} is on it — Thursday steers it by voice.`,speed:2.4,color:"var(--muted-foreground)",shineColor:"var(--foreground)",className:"min-w-0 flex-1 truncate text-[12.5px] leading-5 break-keep"}),(0,t.jsxs)(f.Button,{type:"button",size:"sm",variant:"ghost",disabled:y,onClick:()=>T(!0),className:"h-7 shrink-0 gap-1.5 rounded-full px-2.5 text-[12px]",children:[(0,t.jsx)(M.CornerDownLeft,{className:"size-3.5"}),"Step in"]}),(0,t.jsx)("span",{className:"h-4 w-px shrink-0 bg-border"}),(0,t.jsx)(f.Button,{type:"button",size:"icon-sm",variant:"ghost",disabled:y,onClick:()=>v(e.id),"aria-label":"Stop this task",className:"shrink-0 text-muted-foreground/60 hover:text-foreground",children:w?(0,t.jsx)(d.Loader2,{className:"animate-spin"}):(0,t.jsx)(S.Square,{className:"size-3"})})]})}function Q(){let[e,t]=(0,X.useServerAction)(A.answerTaskAction,{onOk:()=>(0,G.revalidate)(x.queryKey.tasks)});return[async(t,n)=>{let s=n.trim();if(!s)return!1;try{let n=await e(t.id,s);return O.announce({kind:"answered",id:n.id,label:n.label,answer:s}),!0}catch{return!1}},t]}e.s(["TaskReply",0,Y,"useAnswerTask",0,Q],206721);var Z=e.i(989409),ee=e.i(256604),et=e.i(621285),en=e.i(245629),es=e.i(393080),ea=e.i(864723),eo=e.i(222055);let er=(0,m.memo)(function(){let e=D(),{data:n}=(0,G.useServerRoute)(x.queryKey.bot),[s,a]=(0,m.useState)(!1),[o,r]=(0,m.useState)(null),[i,l]=(0,m.useState)(!1),d=[...e].reverse(),u=o?d.find(e=>e.id===o)??null:null,[c,p]=function(){let[e,t]=(0,m.useState)(new Map),n=(0,m.useRef)(new Map);return(0,m.useEffect)(()=>()=>{for(let e of n.current.values())clearTimeout(e)},[]),[e,(0,m.useCallback)(e=>{t(t=>new Map(t).set(e.at,e));let s=n.current.get(e.at);s&&clearTimeout(s),n.current.set(e.at,setTimeout(()=>{n.current.delete(e.at),t(t=>{let n=new Map(t);return n.delete(e.at),n})},3400))},[])]}(),{crew:f,more:h}=(0,m.useMemo)(()=>ed(n,e),[n,e]),b=(0,m.useRef)(null),g=(0,m.useRef)(new Set);(0,m.useEffect)(()=>{if(!I.primed())return;let t=new Map(d.map(e=>[e.id,e.status])),n=b.current;b.current=t;let s=new Set;for(let t of e)for(let e of t.lines)"ask"===e.kind&&e.to&&s.add(e.id);let a=g.current;if(g.current=s,!n)return;let o=new Map;for(let t of e)for(let e of t.lines){if("ask"!==e.kind||!e.to||a.has(e.id))continue;let t=o.get(e.bot.name)??[];t.push({from:e.bot,to:e.to,text:e.text}),o.set(e.bot.name,t)}for(let[e,t]of o){if(1===t.length){p({at:t[0].to.name,from:t[0].from,text:el(t[0].text)});continue}p({at:e,from:t[0].from,text:`sent ${t.length} parts out`})}for(let e of d)n.get(e.id)!==e.status&&"working"===e.status&&p(n.has(e.id)?{at:e.bot.name,from:null,text:"picked it back up"}:{at:e.bot.name,from:eR,text:`took on \u201c${el(e.label)}\u201d`})},[e,p]);let k=(0,m.useRef)(new Set);(0,m.useEffect)(()=>{if(!u||u.relayed||"done"!==u.status&&"failed"!==u.status)return;let e=`${u.id}@${(0,en.toDate)(u.updatedAt).getTime()}`;k.current.has(e)||(k.current.add(e),(0,w.markReportedAction)([u.id]).then(es.unwrapResult).then(()=>(0,G.revalidate)(x.queryKey.tasks)).catch(t=>{k.current.delete(e),v.toast.add({type:"error",title:"Could not mark the task as read",description:(0,J.errorToString)(t)})}))},[u]);let j=e.filter(e=>"working"===e.status).length,y=d.filter(eu),N=y.length,C=(0,m.useCallback)(()=>l(!1),[]);return(0,t.jsx)("div",{className:"pointer-events-none absolute right-5 bottom-5 z-10 flex w-132 max-w-[calc(100vw-2.5rem)] flex-col items-end gap-2",children:s?(0,t.jsx)("div",{className:"pointer-events-auto flex max-h-[min(44rem,78vh)] w-full animate-in flex-col overflow-hidden rounded-3xl bg-background/75 shadow-2xl shadow-black/6 ring-1 ring-border/50 backdrop-blur-xl fade-in slide-in-from-bottom-1 duration-200",children:u?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(ej,{task:u,onBack:()=>r(null),onClose:()=>a(!1)}),(0,t.jsx)(eB,{task:u,className:"min-h-0 flex-1"}),(0,t.jsx)(Y,{task:{id:u.id,label:u.label,bot:u.bot.name,ask:function(e){if(!e.ask?.question)return e.ask;let t=e.lines.at(-1);return t&&P(t)&&t.text===e.ask.question?{...e.ask,question:""}:e.ask}(u)},status:"working"===u.status?"running":u.status,lines:u.lines,className:"mx-3 mb-2 shrink-0"})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(ev,{count:e.length,pending:N,composing:i,onCompose:()=>l(!0),onClose:()=>i?l(!1):a(!1)}),i?(0,t.jsx)(ep,{bots:n,onDone:C}):d.length?(0,t.jsx)(eS,{tasks:d,onPick:r}):(0,t.jsx)(eT,{bots:n}),!i&&(0,t.jsx)(ez,{})]})}):(0,t.jsx)(ec,{crew:f,more:h,bubbles:c,bots:n,rows:y,count:e.length,busy:j,pending:N,composing:i,onCompose:()=>l(!0),onCloseCompose:C,onPick:e=>{r(e),a(!0)},onOpen:()=>{o||1!==y.length||r(y[0].id),a(!0)}})})}),ei=new Map,el=e=>{let t=(0,J.plainText)(e).replace(/\s+/g," ").trim();return t.length>28?`${t.slice(0,27)}…`:t};function ed(e,t){let n=new Map;for(let e of W(t)){let{task:t,bot:s,line:a}=e;if("waiting"===t.status&&t.bot.name===s.name){n.set(s.name,{waiting:!0,word:null});continue}!("working"!==t.status||n.get(s.name)?.waiting)&&n.set(s.name,{waiting:!1,word:a?"tool"===a.kind&&a.tool?el(a.tool.note??`${a.tool.name} \xb7 ${a.tool.input}`):"say"===a.kind?el(a.text):null:null})}let s=new Map;for(let t of e??[])s.set(t.name,{name:t.name,icon:t.icon,awake:n.has(t.name),waiting:n.get(t.name)?.waiting??!1,word:n.get(t.name)?.word??null});for(let[e,t]of n)s.has(e)||s.set(e,{name:e,icon:null,awake:!0,waiting:t.waiting,word:t.word});let a=[...s.values()];if(!a.length)return{crew:ef.slice(0,eh),more:0};for(let e of ef){if(a.length>=eh)break;s.has(e.name)||a.push(e)}let o=e=>e.waiting?0:e.awake?1:e.standIn?3:2,r=a.map((e,t)=>({face:e,at:t})).sort((e,t)=>o(e.face)-o(t.face)||e.at-t.at).map(e=>e.face);return{crew:r.slice(0,10),more:Math.max(0,r.length-10)}}let eu=e=>"waiting"===e.status;function ec({crew:e,more:n,bubbles:a,bots:o,rows:r,count:i,busy:l,pending:u,composing:m,onCompose:x,onCloseCompose:p,onPick:f,onOpen:h}){let b=function({count:e,busy:t,pending:n}){return n>0?{text:1===n?"waiting on you":`${n} waiting on you`,tone:J.WAITING_INK,shine:!0}:t>0?{text:1===t?"working":`${t} running`,tone:"text-muted-foreground",shine:!1}:e>0?{text:"all done",tone:"text-muted-foreground",shine:!1}:{text:"no jobs yet",tone:"text-muted-foreground",shine:!1}}({count:i,busy:l,pending:u}),k=m||u>0;return(0,t.jsxs)("div",{className:(0,J.cn)("pointer-events-auto w-fit max-w-full bg-background/78 ring-1 ring-border/50 backdrop-blur-md transition-shadow duration-300",k?"min-w-96 rounded-3xl shadow-lg shadow-black/8":"rounded-full shadow-sm shadow-black/3"),children:[(0,t.jsx)("div",{className:(0,J.cn)("grid overflow-hidden transition-[grid-template-rows] duration-300 ease-out",k?"grid-rows-[1fr]":"grid-rows-[0fr]"),children:(0,t.jsx)("div",{className:"min-h-0 overflow-hidden",inert:!k,children:m?(0,t.jsx)(ep,{bots:o,onDone:p}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("p",{className:"flex items-center gap-2 px-3 py-2 font-mono text-[10px] tracking-wide text-muted-foreground",children:[(0,t.jsxs)("span",{className:"flex-1",children:["needs you · ",u]}),(0,t.jsx)(em,{onClick:x})]}),(0,t.jsx)("div",{className:"px-1.5 pb-2",children:r.map(e=>(0,t.jsx)(eA,{task:e,onPick:()=>f(e.id)},e.id))}),(0,t.jsx)("span",{className:"block h-1.5"})]})})}),(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5",children:[(0,t.jsxs)("button",{type:"button",onClick:h,"aria-label":i?`Tasks (${i})`:"Bots",className:"flex min-w-0 flex-1 items-center gap-2 rounded-full text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,t.jsx)(eb,{crew:e,more:n,bubbles:a}),(0,t.jsxs)("span",{className:"ml-auto flex h-7 shrink-0 items-center gap-1.5",children:[b.shine?(0,t.jsx)("span",{className:"block [--rest:var(--color-amber-700)] [--shine:var(--color-amber-400)] dark:[--rest:var(--color-amber-400)] dark:[--shine:var(--color-amber-100)]",children:(0,t.jsx)(g.default,{text:b.text,speed:2.6,color:"var(--rest)",shineColor:"var(--shine)",className:"truncate text-[14px] leading-5 tracking-[-0.15px]"})}):(0,t.jsx)("span",{className:(0,J.cn)("block animate-in truncate text-[14px] leading-5 tracking-[-0.15px] fade-in duration-300",b.tone),children:b.text},b.text),(0,t.jsxs)("span",{className:"grid size-4 shrink-0 place-items-center",children:[0===u&&l>0&&(0,t.jsx)(d.Loader2,{className:"size-4 animate-spin text-muted-foreground/70"}),0===u&&0===l&&i>0&&(0,t.jsx)(s.Check,{className:"size-4 text-muted-foreground/60"})]})]})]}),m&&(0,t.jsx)(ex,{onClick:p,label:"Cancel the message",children:(0,t.jsx)(c.X,{className:"size-3.5"})})]})]})}function em({onClick:e}){return(0,t.jsx)(ex,{onClick:e,label:"Message a bot",children:(0,t.jsx)(u.Plus,{className:"size-4"})})}function ex({onClick:e,label:n,children:s}){return(0,t.jsx)("button",{type:"button",onClick:e,"aria-label":n,className:"grid size-7 shrink-0 place-items-center rounded-full text-muted-foreground outline-none transition-colors hover:bg-muted hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:s})}function ep({bots:e,onDone:s}){let[r,i]=(0,m.useState)(null),[l,u]=(0,m.useState)(""),[c,p]=(0,X.useServerAction)(y.startTaskAction,{onOk:()=>{(0,G.revalidate)(x.queryKey.tasks),s()}}),h=e?.length?e.map(e=>({name:e.name,icon:e.icon})):[{name:N.DEFAULT_BOT.name,icon:N.DEFAULT_BOT.icon}],b=()=>{r&&l.trim()&&!p&&c(r.name,l.trim())};return r?(0,t.jsxs)("div",{className:"flex min-h-32 flex-col pb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 pt-3 pb-2",children:[(0,t.jsx)("button",{type:"button",onClick:()=>i(null),"aria-label":"Choose a different bot",className:"grid size-6 shrink-0 place-items-center rounded-lg text-muted-foreground outline-none transition-colors hover:bg-muted hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:(0,t.jsx)(a.ChevronLeft,{className:"size-3.5"})}),(0,t.jsx)(C.BotMark,{size:22,seed:r.name,vary:r.name,color:r.icon?.color,shape:r.icon?.shape,outline:r.icon?.outline,className:"shrink-0"}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 truncate text-[12.5px] font-medium",children:["To ",r.name]})]}),(0,t.jsxs)("form",{onSubmit:e=>{e.preventDefault(),b()},className:"mx-3 mt-auto flex items-end gap-1 rounded-2xl bg-background py-2 pr-2 pl-3 ring-1 ring-border/80 transition-shadow focus-within:ring-ring/60",children:[(0,t.jsx)(k.Textarea,{value:l,rows:1,autoFocus:!0,disabled:p,onChange:e=>u(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||e.nativeEvent.isComposing||229===e.keyCode||(e.preventDefault(),b())},placeholder:`What should ${r.name} do? It cannot hear the call, so say the whole job.`,"aria-label":`Message for ${r.name}`,className:"max-h-32 min-h-15 flex-1 resize-none border-0 bg-transparent px-0 py-0 text-[13px] leading-5 shadow-none focus-visible:ring-0 dark:bg-transparent"}),(0,t.jsx)(f.Button,{type:"submit",size:"icon-sm",variant:l.trim()?"default":"ghost",disabled:!l.trim()||p,"aria-label":"Send",className:"rounded-full",children:p?(0,t.jsx)(d.Loader2,{className:"animate-spin"}):(0,t.jsx)(n.ArrowUp,{})})]})]}):(0,t.jsxs)("div",{className:"min-h-32 pb-3",children:[(0,t.jsx)("p",{className:"px-3 pt-3 pb-1.5 font-mono text-[10px] tracking-wide text-muted-foreground",children:"message a bot"}),(0,t.jsx)("div",{className:"px-1",children:h.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>i(e),className:"flex w-full items-center gap-2.5 rounded-xl px-2 py-1.5 text-left outline-none transition-colors hover:bg-muted/60 focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,t.jsx)(C.BotMark,{size:22,seed:e.name,vary:e.name,color:e.icon?.color,shape:e.icon?.shape,outline:e.icon?.outline,className:"shrink-0"}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate text-[13px]",children:e.name}),(0,t.jsx)(o.ChevronRight,{className:"size-3.5 shrink-0 text-muted-foreground/50"})]},e.name))})]})}let ef=["alto","brio","cinder","delta"].map((e,t)=>({name:e,icon:{color:ea.MARK_PALETTE[Math.floor(t*ea.MARK_PALETTE.length/4)],shape:ea.MARK_SHAPES[t%ea.MARK_SHAPES.length]},awake:!1,waiting:!1,word:null,standIn:!0})),eh=3;function eb({crew:e,more:n,bubbles:s}){return(0,t.jsxs)("span",{className:"flex min-w-0 shrink items-center",children:[e.map((n,a)=>{let o=s.get(n.name)??null;return(0,t.jsxs)(m.Fragment,{children:[(0,t.jsxs)("span",{className:(0,J.cn)("relative shrink-0 transition-[margin,transform] duration-500 ease-out",a>0&&!e[a-1].word&&"-ml-2",n.standIn&&"opacity-35",n.awake&&"-translate-y-0.5 scale-110"),style:{zIndex:e.length-a,color:n.icon?.color??void 0,filter:n.awake?"drop-shadow(0 0 5px color-mix(in srgb, currentColor 55%, transparent))":void 0},children:[(0,t.jsx)(C.BotMark,{size:28,seed:n.name,vary:n.name,color:n.icon?.color,shape:n.icon?.shape,outline:n.icon?.outline,notify:n.waiting}),o&&(0,t.jsx)(eg,{handoff:o})]}),n.word&&(0,t.jsx)("span",{className:"mx-2.5 min-w-0 shrink truncate",children:(0,t.jsx)(g.default,{text:n.word,speed:2.6,color:"var(--muted-foreground)",shineColor:"var(--foreground)",className:"truncate text-[13px] leading-5 tracking-[-0.1px]"})})]},n.name)}),n>0&&(0,t.jsxs)("span",{className:(0,J.cn)("grid size-7 shrink-0 place-items-center rounded-[9px] bg-muted font-mono text-[10px] text-muted-foreground ring-1 ring-border/50",!e.at(-1)?.word&&"-ml-2"),title:`${n} more`,children:["+",n]})]})}function eg({handoff:e}){return(0,t.jsxs)("span",{className:"pointer-events-none absolute bottom-[calc(100%+9px)] left-1/2 flex -translate-x-1/2 animate-in flex-col items-center whitespace-nowrap fade-in zoom-in-95 duration-200",children:[(0,t.jsxs)("span",{className:"flex items-center gap-1.5 rounded-full bg-background px-2.5 py-1 text-[12.5px] leading-4 tracking-[-0.1px] shadow-lg shadow-black/10 ring-1 ring-border",children:[e.from?.name===eR.name?(0,t.jsx)(ee.ThursdayMark,{size:14,className:"shrink-0 opacity-75"}):e.from&&(0,t.jsx)(C.BotMark,{size:14,seed:e.from.name,vary:e.from.name,color:e.from.icon?.color,shape:e.from.icon?.shape,outline:e.from.icon?.outline,className:"shrink-0 opacity-75"}),e.text]}),(0,t.jsx)("span",{className:"-mt-px size-0 border-x-[5px] border-t-[6px] border-x-transparent border-t-border"}),(0,t.jsx)("span",{className:"-mt-[6.5px] size-0 border-x-[5px] border-t-[6px] border-x-transparent border-t-background"})]})}function ek({onClick:e}){return(0,t.jsx)("button",{type:"button",onClick:e,"aria-label":"Fold the room away",className:"grid size-7 shrink-0 place-items-center rounded-full bg-muted text-foreground outline-none transition-colors hover:bg-muted-foreground/20 focus-visible:ring-3 focus-visible:ring-ring/50",children:(0,t.jsx)(c.X,{className:"size-3.5"})})}function ev({count:e,pending:n,composing:s,onCompose:a,onClose:o}){return(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3.5 pt-3 pb-1.5",children:[(0,t.jsx)("span",{className:"text-[13px] font-medium",children:"Tasks"}),e>0&&!s&&(0,t.jsx)("span",{className:"font-mono text-[10px] text-muted-foreground tabular-nums",children:n>0?`${n} for you \xb7 ${e}`:e}),(0,t.jsx)("span",{className:"flex-1"}),!s&&(0,t.jsx)(em,{onClick:a}),(0,t.jsx)(ek,{onClick:o})]})}function ej({task:e,onBack:n,onClose:s}){return(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 pt-3 pb-1",children:[(0,t.jsx)("button",{type:"button",onClick:n,"aria-label":"Back to the list",className:"shrink-0 rounded-md p-1 text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:(0,t.jsx)(a.ChevronLeft,{className:"size-4"})}),(0,t.jsx)(C.BotMark,{size:22,seed:e.bot.name,vary:e.id,color:e.bot.icon?.color,shape:e.bot.icon?.shape,outline:e.bot.icon?.outline,notify:!1}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 truncate text-[13px] font-medium",children:[e.label,(0,t.jsx)("span",{title:e.id,className:"ml-1.5 font-mono text-[10px] font-normal text-muted-foreground/60",children:e.id.slice(0,8)})]}),(0,t.jsx)(ew,{usage:e.tokens}),(0,t.jsx)(ey,{task:e}),(0,t.jsx)(eC,{task:e}),(0,t.jsx)(ek,{onClick:s})]})}function ew({usage:e}){let n=e.input+e.output;return n?(0,t.jsx)("span",{title:`in ${(0,J.formatCount)(e.input)} \xb7 out ${(0,J.formatCount)(e.output)}`,className:"shrink-0 font-mono text-[10px] text-muted-foreground/70 tabular-nums",children:(0,J.formatCount)(n)}):null}function ey({task:e}){let{contextTokens:n,contextBudget:s}=e;if(!n||!s)return null;let a=Math.min(1,n/s);return(0,t.jsx)("span",{title:`Context ${(0,J.formatCount)(n)} of ${(0,J.formatCount)(s)} — it summarizes itself here`,className:"block h-[3px] w-9 shrink-0 overflow-hidden rounded-full bg-muted",children:(0,t.jsx)("span",{className:(0,J.cn)("block h-full rounded-full",a>.9?"bg-amber-500/80":"bg-muted-foreground/70"),style:{width:`${Math.max(4,Math.round(100*a))}%`}})})}let eN={working:"text-muted-foreground",waiting:J.WAITING_INK,done:"text-foreground",failed:"text-destructive"};function eC({task:e}){let n="done"===e.status&&e.relayed?"text-muted-foreground":eN[e.status];return"working"===e.status?(0,t.jsx)(g.default,{text:"working",speed:2.2,color:"var(--muted-foreground)",shineColor:"var(--foreground)",className:"shrink-0 font-mono text-[10px]"}):(0,t.jsx)("span",{className:(0,J.cn)("flex shrink-0 items-center gap-1.5 font-mono text-[10px]",n),children:e.status})}function eT({bots:e}){let{crew:n,more:s}=ed(e,[]);return(0,t.jsxs)("div",{className:"flex flex-col items-center gap-3 px-6 pt-3 pb-4 text-center",children:[(0,t.jsx)(eb,{crew:n,more:s,bubbles:ei}),e?.length?(0,t.jsx)("p",{className:"text-[12px] text-muted-foreground",children:"Nothing handed over yet — ask for something that takes a while."}):(0,t.jsxs)("p",{className:"text-[12px] text-muted-foreground",children:["Thursday hands work to ",N.DEFAULT_BOT.name," until you make bots of your own in Settings › Bots."]})]})}function ez(){return(0,t.jsx)("div",{className:"flex shrink-0 justify-end px-3 pb-2.5",children:(0,t.jsxs)("button",{type:"button",onClick:()=>(0,Z.openSettings)("tasks"),className:"flex items-center gap-1 rounded-md px-1.5 py-1 font-mono text-[10px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,t.jsx)(l.History,{className:"size-3"}),"History"]})})}let eM=[{id:"you",label:"needs you",holds:eu},{id:"working",label:"working",holds:e=>"working"===e.status},{id:"done",label:"done",holds:()=>!0}];function eS({tasks:e,onPick:n}){let s=new Map;for(let t of e){let e=eM.find(e=>e.holds(t))??eM[2],n=s.get(e.id);n?n.push(t):s.set(e.id,[t])}return(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col gap-0.5 overflow-y-auto px-2 pt-1 pb-1 scrollbar-none",children:eM.map((e,a)=>{let o=s.get(e.id)??[];return o.length?(0,t.jsxs)(m.Fragment,{children:[(0,t.jsxs)("p",{className:(0,J.cn)("px-2.5 pb-1 font-mono text-[10px] text-muted-foreground",0===a?"pt-1":"pt-3"),children:[e.label," · ",o.length]}),o.map(e=>(0,t.jsx)(eA,{task:e,onPick:()=>n(e.id)},e.id))]},e.id):null})})}function eA({task:e,onPick:n}){let s=eu(e),a=e.lines.at(-1),o=(0,m.useMemo)(()=>(function(e){if("waiting"===e.status&&e.ask)return(0,N.isBudgetAsk)(e.ask)?{text:(0,J.plainText)(e.outcome??e.ask.question),tone:"text-muted-foreground"}:{text:e.ask.question,tone:J.WAITING_INK};if("failed"===e.status)return{text:(0,J.plainText)(e.outcome??"Failed"),tone:"text-destructive"};if("done"===e.status)return{text:(0,J.plainText)(e.outcome??"Done"),tone:e.relayed?"text-muted-foreground":"text-foreground"};let t=q(e);return t?{text:"tool"===t.kind&&t.tool?t.tool.note??`${t.tool.name} \xb7 ${t.tool.input}`:t.text,tone:"text-muted-foreground"}:{text:`${e.bot.name} is taking it on…`,tone:"text-muted-foreground italic"}})(e),[e.status,e.outcome,e.relayed,e.ask,a?.id]),[i,l]=Q(),[u,c]=(0,m.useState)(null),x="waiting"===e.status?e.ask?.options??[]:[],p=(0,N.isBudgetAsk)(e.ask);return(0,t.jsxs)("div",{className:"rounded-xl transition-colors hover:bg-muted/60",children:[(0,t.jsxs)("button",{type:"button",onClick:n,className:"flex w-full items-center gap-2.5 rounded-xl px-2 py-1.5 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,t.jsx)("span",{className:"relative flex size-8 shrink-0 items-center justify-center overflow-visible",title:e.bot.name,children:(0,t.jsx)(C.BotMark,{size:32,seed:e.bot.name,vary:e.id,color:e.bot.icon?.color,shape:e.bot.icon?.shape,outline:e.bot.icon?.outline,state:"working"===e.status?"thinking":"idle",notify:s})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("span",{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)("span",{className:(0,J.cn)("min-w-0 truncate text-[14px] leading-5 tracking-[-0.15px]",s?"text-foreground":"text-foreground/80"),children:e.label}),(0,t.jsx)(T.BotRoster,{bots:H(e),taskId:e.id}),(0,t.jsx)("span",{className:"flex-1"}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-[11px] leading-4 text-muted-foreground/70 tabular-nums",children:(0,en.shortAgo)(e.updatedAt)})]}),(0,t.jsxs)("span",{className:"mt-px flex h-4 items-center gap-1.5",children:["working"===e.status&&(0,t.jsx)(d.Loader2,{className:"size-3 shrink-0 animate-spin text-muted-foreground/70"}),"working"===e.status?(0,t.jsx)(g.default,{text:o.text,speed:2.2,color:"var(--muted-foreground)",shineColor:"var(--foreground)",className:(0,J.cn)("min-w-0 flex-1 truncate text-[12px] leading-4",o.tone)}):(0,t.jsx)("span",{className:(0,J.cn)("min-w-0 flex-1 truncate text-[12px] leading-4",o.tone),children:o.text})]})]})]}),x.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5 pt-0.5 pr-2 pb-2 pl-12.5",children:x.map(n=>(0,t.jsxs)(f.Button,{size:"sm",variant:"outline",loading:u===n,disabled:l,onClick:async()=>{c(n),await i(e,n),c(null)},className:(0,J.cn)("h-7 gap-1.5 rounded-full bg-background px-3 text-[12px]",!p&&"border-amber-500/35"),children:[p&&n===N.TASK_CONTINUE&&(0,t.jsx)(r.ChevronsRight,{className:"size-3.5 text-muted-foreground"}),n,p&&n===N.TASK_CONTINUE&&(0,t.jsxs)("span",{className:"font-mono text-[10px] text-muted-foreground",children:["+",j.BOT_RUN.steps," steps"]})]},n))})]})}function eB({task:e,className:n}){let s=(0,m.useRef)(null),a=(0,m.useRef)(!0);return(0,m.useEffect)(()=>{a.current=!0},[e.id]),(0,m.useEffect)(()=>{let e=s.current;e&&a.current&&(e.scrollTop=e.scrollHeight)},[e.lines,e.status]),(0,t.jsx)(et.FileViewer,{children:(0,t.jsxs)("div",{ref:s,onScroll:e=>{let t=e.currentTarget;a.current=t.scrollHeight-t.scrollTop-t.clientHeight<24},className:(0,J.cn)("max-h-[64vh] space-y-3 overflow-y-auto px-4 pt-6 pb-4 mask-[linear-gradient(to_bottom,transparent,black_2rem)] scrollbar-none",n),children:[(0,t.jsx)(e_,{task:e}),V(e).map(n=>"invite"===n.kind?(0,t.jsx)(eE,{from:n.from,to:n.to},n.key):(0,t.jsx)(eF,{group:n.group,task:e},n.key)),"working"===e.status&&0===e.lines.length&&(0,t.jsx)(g.default,{text:`${e.bot.name} is taking it on…`,speed:2.2,color:"var(--muted-foreground)",shineColor:"var(--foreground)",className:"block px-1 font-mono text-[10px]"})]})})}function e_({task:e}){return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(eE,{from:eR,to:e.bot}),(0,t.jsx)(e$,{children:(0,t.jsx)(p.Bubble,{align:"end",className:"max-w-full",children:(0,t.jsx)(p.BubbleContent,{className:"rounded-tr-md py-2 pr-2 pl-3.5",children:(0,t.jsx)(h.FoldedText,{text:e.request,subject:"request"})})})})]})}let eR={name:"Thursday"};function eE({from:e,to:n}){return(0,t.jsx)("div",{className:"flex animate-in justify-center fade-in duration-300",children:(0,t.jsxs)("span",{className:"flex max-w-full items-center gap-1.5 rounded-full bg-muted px-2.5 py-1 font-mono text-[10px] text-muted-foreground",children:[(0,t.jsx)(eI,{bot:e}),(0,t.jsx)("span",{className:"shrink-0 text-muted-foreground/70",children:"invited"}),(0,t.jsx)(eI,{bot:n})]})})}function eI({bot:e}){return(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5",children:[(0,t.jsx)(C.BotMark,{size:15,seed:e.name,color:e.icon?.color,shape:e.icon?.shape,outline:e.icon?.outline,notify:!1,className:"shrink-0"}),(0,t.jsx)("span",{className:"truncate",children:e.name})]})}function e$({children:e}){return(0,t.jsx)(eq,{side:"end",name:"Thursday",mark:(0,t.jsx)(C.BotMark,{size:26,seed:"thursday",notify:!1,className:"mt-1 shrink-0"}),children:e})}function eq({side:e,mark:n,name:s,children:a}){return(0,t.jsxs)("div",{className:(0,J.cn)("flex gap-2.5","end"===e&&"flex-row-reverse"),children:[n,(0,t.jsxs)("div",{className:(0,J.cn)("flex min-w-0 flex-1 flex-col gap-1.5 [&>*+*]:max-w-[80%]","end"===e&&"items-end"),children:[(0,t.jsx)("p",{className:"max-w-[80%] truncate px-1 font-mono text-[10px] text-muted-foreground",children:s}),a]})]})}function eF({group:e,task:n}){return e.lines[0]?.kind==="user"?(0,t.jsx)("div",{className:"animate-in fade-in slide-in-from-bottom-2 duration-300",children:(0,t.jsx)(e$,{children:e.lines.map(e=>(0,t.jsx)(p.Bubble,{align:"end",className:"max-w-full",children:(0,t.jsx)(p.BubbleContent,{className:"rounded-tr-md px-3.5 text-[13px] leading-snug break-keep",children:e.text})},e.id))})}):(0,t.jsx)("div",{className:"animate-in fade-in slide-in-from-bottom-2 duration-300",children:(0,t.jsx)(eq,{side:e.bot.name===n.bot.name?"start":"end",name:e.bot.name,mark:(0,t.jsx)(C.BotMark,{size:26,seed:e.bot.name,vary:n.id,color:e.bot.icon?.color,shape:e.bot.icon?.shape,outline:e.bot.icon?.outline,notify:!1,className:"mt-1 shrink-0"}),children:(function(e){let t=[];for(let n of e){let e="tool"===n.kind&&n.tool?"tools":"said",s=t.at(-1);s&&s.kind===e?s.lines.push(n):t.push({kind:e,key:n.id,lines:[n]})}return t})(e.lines).map(e=>"tools"===e.kind?(0,t.jsx)(eO,{lines:e.lines,taskId:n.id},e.key):e.lines.map(e=>(0,t.jsx)(eK,{line:e,taskId:n.id},e.id)))})})}function eK({line:e,taskId:n}){if("tool"===e.kind&&e.tool)return(0,t.jsx)(eo.BotTool,{tool:e.tool,taskId:n});if("note"===e.kind)return(0,t.jsxs)("details",{className:"w-full py-1 text-muted-foreground",children:[(0,t.jsxs)("summary",{className:"flex cursor-pointer list-none items-center gap-2.5 outline-none [&::-webkit-details-marker]:hidden",children:[(0,t.jsx)("span",{className:"h-px flex-1 bg-border"}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-[10px]",children:"Compacted — it goes on from its summary"}),(0,t.jsx)("span",{className:"h-px flex-1 bg-border"})]}),(0,t.jsx)("p",{className:"mt-2 rounded-xl bg-muted/40 px-3 py-2 text-[11px] leading-relaxed whitespace-pre-wrap break-keep",children:e.text})]});if(!P(e))return(0,t.jsx)("p",{className:"px-1 text-[12.5px] leading-relaxed break-keep text-muted-foreground",children:e.text});if(e.options)return(0,t.jsxs)("div",{className:"w-fit max-w-full space-y-1.5 rounded-2xl bg-amber-500/8 px-3 py-2 ring-1 ring-amber-500/25",children:[(0,t.jsx)("p",{className:"text-[13px] leading-snug break-keep",children:e.text}),e.options.length>0&&(0,t.jsx)("p",{className:"flex flex-wrap gap-1",children:e.options.map(e=>(0,t.jsx)("span",{className:"rounded-full bg-background/70 px-2 py-0.5 font-mono text-[10px] text-muted-foreground",children:e},e))})]});let s="error"===e.kind;return(0,t.jsxs)("div",{className:"min-w-0 px-1",children:[s&&(0,t.jsxs)("p",{className:"mb-1.5 flex items-center gap-1.5 font-mono text-[10px] text-destructive",children:[(0,t.jsx)(c.X,{className:"size-3 shrink-0"}),"Could not finish"]}),(0,t.jsx)(b.Markdown,{className:(0,J.cn)("overflow-x-auto text-[13px] leading-relaxed break-keep [&_h1]:text-[15px] [&_h2]:text-[14px] [&_h3]:text-[13px] [&_h3]:font-semibold [&_li]:my-0.5 [&_table]:text-[12px] [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",s&&"text-destructive"),children:e.text}),(0,t.jsxs)("div",{className:"mt-2 flex items-center gap-2",children:[(0,t.jsx)(z.PathChips,{text:e.text,className:"min-w-0"}),!s&&(0,t.jsx)("span",{className:"ml-auto shrink-0",children:(0,t.jsx)(eL,{text:e.text})})]})]})}function eL({text:e}){let[n,a]=(0,m.useState)(!1),o=(0,m.useRef)(null);return(0,m.useEffect)(()=>()=>{o.current&&clearTimeout(o.current)},[]),(0,t.jsx)("button",{type:"button","aria-label":"Copy the report",onClick:async()=>{try{await navigator.clipboard.writeText(e),a(!0),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>a(!1),1400)}catch(e){v.toast.add({type:"error",title:"Could not copy the report",description:(0,J.errorToString)(e)})}},className:"grid size-5 shrink-0 place-items-center rounded-md text-muted-foreground outline-none transition-colors hover:bg-muted hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:n?(0,t.jsx)(s.Check,{className:"size-3"}):(0,t.jsx)(i.Copy,{className:"size-3"})})}function eO({lines:e,taskId:n}){return(0,t.jsxs)("div",{className:"flex w-full flex-col gap-0.5 rounded-2xl bg-muted/40 p-1",children:[e.length>1&&(0,t.jsxs)("p",{className:"px-2 py-1 font-mono text-[10px] text-muted-foreground",children:[e.length," steps"]}),e.map(e=>e.tool?(0,t.jsx)(eo.BotTool,{tool:e.tool,taskId:n,collapsed:!0},e.id):null)]})}e.s(["BotRoom",0,er,"Conversation",0,eB],279265)},294340,e=>{"use strict";var t=e.i(95187);let n=(0,t.createServerReference)("7f130e379b411cea54d564cd7c8822f5cc7cce3042",t.callServer,void 0,t.findSourceMapURL,"answerTaskAction");e.s(["answerTaskAction",0,n])},133014,e=>{"use strict";var t=e.i(95187);let n=(0,t.createServerReference)("7f106cc55d238f82d75c85a8916cb1d3c2c3a9401c",t.callServer,void 0,t.findSourceMapURL,"cancelTaskAction");e.s(["cancelTaskAction",0,n])},96892,931619,508734,815731,496336,809977,692296,835878,764224,919191,e=>{"use strict";var t=e.i(456420);let n={name:"arrow-up",size:24,node:[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]};n.node;let s=(0,t.default)(n);e.s(["ArrowUp",0,s],96892);let a={name:"chevrons-right",size:24,node:[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]};a.node;let o=(0,t.default)(a);e.s(["ChevronsRight",0,o],931619);let r={name:"copy",size:24,node:[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]};r.node;let i=(0,t.default)(r);e.s(["Copy",0,i],508734);var l=e.i(843476),d=e.i(176782),u=e.i(552245),c=e.i(225913),m=e.i(647163);let x=(0,c.cva)("group/bubble relative flex w-fit max-w-[80%] min-w-0 flex-col gap-1 group-data-[align=end]/message:self-end data-[align=end]:self-end data-[variant=ghost]:max-w-full",{variants:{variant:{default:"*:data-[slot=bubble-content]:bg-primary *:data-[slot=bubble-content]:text-primary-foreground [&>[data-slot=bubble-content]:is(button,a):hover]:bg-primary/80",secondary:"*:data-[slot=bubble-content]:bg-secondary *:data-[slot=bubble-content]:text-secondary-foreground [&>[data-slot=bubble-content]:is(button,a):hover]:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)]",muted:"*:data-[slot=bubble-content]:bg-muted [&>[data-slot=bubble-content]:is(button,a):hover]:bg-[color-mix(in_oklch,var(--muted),var(--foreground)_5%)]",tinted:"*:data-[slot=bubble-content]:bg-[oklch(from_var(--primary)_0.93_calc(c*0.4)_h)] *:data-[slot=bubble-content]:text-foreground dark:*:data-[slot=bubble-content]:bg-[oklch(from_var(--primary)_0.3_calc(c*0.4)_h)] [&>[data-slot=bubble-content]:is(button,a):hover]:bg-[oklch(from_var(--primary)_0.88_calc(c*0.5)_h)] dark:[&>[data-slot=bubble-content]:is(button,a):hover]:bg-[oklch(from_var(--primary)_0.35_calc(c*0.5)_h)]",outline:"*:data-[slot=bubble-content]:border-border *:data-[slot=bubble-content]:bg-background [&>[data-slot=bubble-content]:is(button,a):hover]:bg-muted [&>[data-slot=bubble-content]:is(button,a):hover]:text-foreground dark:[&>[data-slot=bubble-content]:is(button,a):hover]:bg-input/30",ghost:"border-none *:data-[slot=bubble-content]:rounded-none *:data-[slot=bubble-content]:bg-transparent *:data-[slot=bubble-content]:p-0 [&>[data-slot=bubble-content]:is(button,a):hover]:bg-muted [&>[data-slot=bubble-content]:is(button,a):hover]:text-foreground dark:[&>[data-slot=bubble-content]:is(button,a):hover]:bg-muted/50",destructive:"*:data-[slot=bubble-content]:bg-destructive/10 *:data-[slot=bubble-content]:text-destructive dark:*:data-[slot=bubble-content]:bg-destructive/20 [&>[data-slot=bubble-content]:is(button,a):hover]:bg-destructive/20 dark:[&>[data-slot=bubble-content]:is(button,a):hover]:bg-destructive/30"}},defaultVariants:{variant:"default"}});(0,c.cva)("absolute z-10 flex w-fit shrink-0 items-center justify-center gap-1 rounded-full bg-muted px-1.5 py-0.5 text-sm ring-3 ring-card has-[button]:p-0",{variants:{side:{top:"top-0 -translate-y-3/4",bottom:"bottom-0 translate-y-3/4"},align:{start:"left-3",end:"right-3"}},defaultVariants:{side:"bottom",align:"end"}}),e.s(["Bubble",0,function({variant:e="default",align:t="start",className:n,...s}){return(0,l.jsx)("div",{"data-slot":"bubble","data-variant":e,"data-align":t,className:(0,m.cn)(x({variant:e}),n),...s})},"BubbleContent",0,function({className:e,render:t,...n}){var s;return s={defaultTagName:"div",props:(0,d.mergeProps)({className:(0,m.cn)("w-fit max-w-full min-w-0 overflow-hidden rounded-xl border border-transparent px-3 py-2 text-sm leading-relaxed wrap-break-word group-data-[align=end]/bubble:self-end [button]:text-left [button,a]:transition-colors [button,a]:outline-none [button,a]:focus-visible:border-ring [button,a]:focus-visible:ring-3 [button,a]:focus-visible:ring-ring/50",e)},n),render:t,state:{slot:"bubble-content"}},(0,u.useRenderElement)(s.defaultTagName??"div",s,s)}],815731);var p=e.i(716327),f=e.i(271645);e.s(["FoldedText",0,function({text:e,subject:t,clamp:n="line-clamp-3",tall:s="max-h-40",className:a}){let[o,r]=(0,f.useState)(!1),[i,d]=(0,f.useState)(!1),u=(0,f.useRef)(null);return(0,f.useEffect)(()=>r(!1),[e]),(0,f.useEffect)(()=>{let e=u.current;e&&!o&&d(e.scrollHeight>e.clientHeight+1)},[o,e]),(0,l.jsxs)("div",{className:(0,m.cn)("flex items-start gap-1",a),children:[(0,l.jsx)("p",{ref:u,className:(0,m.cn)("min-w-0 flex-1 text-[13px] leading-snug break-keep",o?(0,m.cn)(s,"overflow-y-auto scrollbar-none"):n),children:e}),(i||o)&&(0,l.jsx)("button",{type:"button",onClick:()=>r(e=>!e),"aria-label":o?`Fold the ${t}`:`Read the whole ${t}`,className:"shrink-0 rounded-md p-0.5 opacity-60 outline-none transition-opacity hover:opacity-100 focus-visible:ring-3 focus-visible:ring-ring/50",children:(0,l.jsx)(p.ChevronDown,{className:(0,m.cn)("size-3.5",o&&"rotate-180")})})]})}],496336);var h=e.i(95187);let b=(0,h.createServerReference)("7ff85aa737cda325a8b80f964721a420dbfa665547",h.callServer,void 0,h.findSourceMapURL,"markReportedAction");e.s(["markReportedAction",0,b],809977);let g=(0,h.createServerReference)("7f1853e08ff28db8b3a58db60a0fab8d0b74abe935",h.callServer,void 0,h.findSourceMapURL,"startTaskAction");e.s(["startTaskAction",0,g],692296);var k=e.i(635963);e.s(["BotRoster",0,function({bots:e,taskId:t}){return e.length<2?null:(0,l.jsxs)("span",{className:"flex shrink-0 items-center gap-1.5",title:e.map(e=>e.name).join(", "),children:[(0,l.jsx)("span",{className:"flex items-center",children:e.slice(0,3).map(e=>(0,l.jsx)(k.BotMark,{size:18,seed:e.name,vary:t,color:e.icon?.color,shape:e.icon?.shape,outline:e.icon?.outline,notify:!1,className:"-ml-[3px] rounded-[7px] ring-2 ring-background first:ml-0"},e.name))}),(0,l.jsxs)("span",{className:"font-mono text-[10px] text-muted-foreground",children:[e.length," bots"]})]})}],835878);var v=e.i(829600);let j={name:"file-code",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}]]};j.node;let w=(0,t.default)(j),y={name:"file-image",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["circle",{cx:"10",cy:"12",r:"2",key:"737tya"}],["path",{d:"m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22",key:"wt3hpn"}]]};y.node;let N=(0,t.default)(y);var C=e.i(905015);let T={name:"file-spreadsheet",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M8 13h2",key:"yr2amv"}],["path",{d:"M14 13h2",key:"un5t4a"}],["path",{d:"M8 17h2",key:"2yhykz"}],["path",{d:"M14 17h2",key:"10kma7"}]]};T.node;let z=(0,t.default)(T);var M=e.i(226091);let S={name:"file-type",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M11 18h2",key:"12mj7e"}],["path",{d:"M12 12v6",key:"3ahymv"}],["path",{d:"M9 13v-.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v.5",key:"qbrxap"}]]};S.node;let A=(0,t.default)(S);var B=e.i(621285),_=e.i(616172);let R={markdown:M.FileText,csv:z,json:C.FileJson,text:A,image:N};e.s(["PathChips",0,function({text:e,className:t}){let n=(0,f.useMemo)(()=>(0,_.pathsIn)(e),[e]);return n.length?(0,l.jsx)("div",{className:(0,m.cn)("flex flex-wrap gap-1.5",t),children:n.map(e=>{let t,n=e.split("/").pop()??e,s="frame"===(t=(0,_.viewKindOf)(e))?e.toLowerCase().endsWith(".pdf")?M.FileText:w:R[t]??v.File;return(0,l.jsxs)(B.FileLink,{path:e,className:"flex max-w-full items-center gap-1.5 rounded-full bg-muted/70 py-1 pr-2.5 pl-2 font-mono text-[11px] text-foreground/80 outline-none transition-colors hover:bg-muted hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,l.jsx)(s,{className:"size-3 shrink-0 text-muted-foreground"}),(0,l.jsx)("span",{className:"truncate",children:n})]},e)})}):null}],764224);let E={name:"corner-down-left",size:24,node:[["path",{d:"M20 4v7a4 4 0 0 1-4 4H4",key:"6o5b7l"}],["path",{d:"m9 10-5 5 5 5",key:"1kshq7"}]]};E.node;let I=(0,t.default)(E);e.s(["CornerDownLeft",0,I],919191)},929272,e=>{"use strict";var t=e.i(456420);let n={name:"square",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]};n.node;let s=(0,t.default)(n);e.s(["Square",0,s],929272)}]);