thursday-agent 0.12.0 → 0.13.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 (470) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/prerender-manifest.json +4 -4
  4. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  5. package/.next/server/app/_global-error.html +1 -1
  6. package/.next/server/app/_global-error.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  10. package/.next/server/app/_not-found/page.js +1 -1
  11. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  12. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  13. package/.next/server/app/_not-found.html +1 -1
  14. package/.next/server/app/_not-found.rsc +18 -19
  15. package/.next/server/app/_not-found.segments/_full.segment.rsc +18 -19
  16. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +14 -15
  17. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  18. package/.next/server/app/api/artifact/route.js +8 -8
  19. package/.next/server/app/api/artifact/route.js.nft.json +1 -1
  20. package/.next/server/app/api/bot/keep-working/route.js +7 -7
  21. package/.next/server/app/api/bot/keep-working/route.js.nft.json +1 -1
  22. package/.next/server/app/api/bot/memory/files/route.js.nft.json +1 -1
  23. package/.next/server/app/api/bot/memory/route.js +7 -7
  24. package/.next/server/app/api/bot/memory/route.js.nft.json +1 -1
  25. package/.next/server/app/api/bot/route.js +7 -7
  26. package/.next/server/app/api/bot/route.js.nft.json +1 -1
  27. package/.next/server/app/api/bot/thread/[id]/route.js +5 -5
  28. package/.next/server/app/api/bot/thread/[id]/route.js.nft.json +1 -1
  29. package/.next/server/app/api/bot/thread/route.js +3 -3
  30. package/.next/server/app/api/bot/thread/route.js.nft.json +1 -1
  31. package/.next/server/app/api/config/route.js +3 -3
  32. package/.next/server/app/api/config/route.js.nft.json +1 -1
  33. package/.next/server/app/api/events/route.js.nft.json +1 -1
  34. package/.next/server/app/api/favicon/[host]/route.js.nft.json +1 -1
  35. package/.next/server/app/api/file/[...path]/route.js +2 -2
  36. package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
  37. package/.next/server/app/api/llm-model/catalog/route.js +4 -4
  38. package/.next/server/app/api/llm-model/catalog/route.js.nft.json +1 -1
  39. package/.next/server/app/api/llm-model/credits/route.js +4 -4
  40. package/.next/server/app/api/llm-model/credits/route.js.nft.json +1 -1
  41. package/.next/server/app/api/llm-model/route.js +6 -6
  42. package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
  43. package/.next/server/app/api/llm-model/subscription/route.js +6 -6
  44. package/.next/server/app/api/llm-model/subscription/route.js.nft.json +1 -1
  45. package/.next/server/app/api/mcp/[name]/route.js +5 -5
  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 +5 -5
  50. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  51. package/.next/server/app/api/mcp/tools/route.js +5 -5
  52. package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
  53. package/.next/server/app/api/memory/edit/route.js +15 -14
  54. package/.next/server/app/api/memory/edit/route.js.nft.json +1 -1
  55. package/.next/server/app/api/memory/route.js +4 -4
  56. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  57. package/.next/server/app/api/reach/route.js +13 -12
  58. package/.next/server/app/api/reach/route.js.nft.json +1 -1
  59. package/.next/server/app/api/routine/route.js +8 -9
  60. package/.next/server/app/api/routine/route.js.nft.json +1 -1
  61. package/.next/server/app/api/signins/route.js.nft.json +1 -1
  62. package/.next/server/app/api/skills/[source]/[name]/route.js +2 -2
  63. package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
  64. package/.next/server/app/api/skills/route.js +2 -2
  65. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  66. package/.next/server/app/api/thursday/call/route.js +6 -6
  67. package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
  68. package/.next/server/app/api/thursday/skills/route.js +6 -6
  69. package/.next/server/app/api/thursday/skills/route.js.nft.json +1 -1
  70. package/.next/server/app/api/thursday/text/route.js +14 -13
  71. package/.next/server/app/api/thursday/text/route.js.nft.json +1 -1
  72. package/.next/server/app/api/thursday/tool-call/route.js +15 -14
  73. package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
  74. package/.next/server/app/api/workspace/files/route.js +10 -6
  75. package/.next/server/app/api/workspace/files/route.js.nft.json +1 -1
  76. package/.next/server/app/api/workspace/route.js +9 -4
  77. package/.next/server/app/api/workspace/route.js.nft.json +1 -1
  78. package/.next/server/app/artifact/[...path]/page/server-reference-manifest.json +2 -2
  79. package/.next/server/app/artifact/[...path]/page.js +5 -4
  80. package/.next/server/app/artifact/[...path]/page.js.nft.json +1 -1
  81. package/.next/server/app/artifact/[...path]/page_client-reference-manifest.js +1 -1
  82. package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  83. package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  84. package/.next/server/app/page/server-reference-manifest.json +67 -56
  85. package/.next/server/app/page.js +10 -11
  86. package/.next/server/app/page.js.nft.json +1 -1
  87. package/.next/server/app/page_client-reference-manifest.js +1 -1
  88. package/.next/server/chunks/{[root-of-the-server]__0o49ztf._.js → [root-of-the-server]__0-k4_ie._.js} +2 -2
  89. package/.next/server/chunks/[root-of-the-server]__0209ah4._.js +6 -6
  90. package/.next/server/chunks/[root-of-the-server]__04wldw9._.js +1 -1
  91. package/.next/server/chunks/[root-of-the-server]__0h_x6q6._.js +2 -2
  92. package/.next/server/chunks/{[root-of-the-server]__0cfszwn._.js → [root-of-the-server]__0i23tc1._.js} +2 -2
  93. package/.next/server/chunks/[root-of-the-server]__0mrk2it._.js +1 -1
  94. package/.next/server/chunks/[root-of-the-server]__0nr-v8s._.js +1 -1
  95. package/.next/server/chunks/{[root-of-the-server]__1tg5got._.js → [root-of-the-server]__0paqm5y._.js} +2 -2
  96. package/.next/server/chunks/[root-of-the-server]__0qog7sm._.js +8 -0
  97. package/.next/server/chunks/[root-of-the-server]__0sm5xvm._.js +1 -1
  98. package/.next/server/chunks/[root-of-the-server]__0yisc5v._.js +5 -0
  99. package/.next/server/chunks/[root-of-the-server]__1-swlkw._.js +3 -3
  100. package/.next/server/chunks/[root-of-the-server]__12iddfq._.js +2 -2
  101. package/.next/server/chunks/{[root-of-the-server]__0npn_pn._.js → [root-of-the-server]__15p29m3._.js} +2 -2
  102. package/.next/server/chunks/[root-of-the-server]__17ses32._.js +3 -0
  103. package/.next/server/chunks/[root-of-the-server]__18-2tsq._.js +2 -2
  104. package/.next/server/chunks/[root-of-the-server]__1cjxw0-._.js +1 -1
  105. package/.next/server/chunks/[root-of-the-server]__1gi2nns._.js +5 -0
  106. package/.next/server/chunks/{[root-of-the-server]__0rqgb17._.js → [root-of-the-server]__1iauz8a._.js} +2 -2
  107. package/.next/server/chunks/[root-of-the-server]__1k3j52n._.js +1 -1
  108. package/.next/server/chunks/{[root-of-the-server]__209k6pk._.js → [root-of-the-server]__1lb_pxg._.js} +2 -2
  109. package/.next/server/chunks/[root-of-the-server]__1ndi14y._.js +1 -1
  110. package/.next/server/chunks/[root-of-the-server]__1orn-5b._.js +1 -1
  111. package/.next/server/chunks/[root-of-the-server]__1xqsrqq._.js +5 -0
  112. package/.next/server/chunks/[root-of-the-server]__1ygplx1._.js +1 -1
  113. package/.next/server/chunks/[root-of-the-server]__2163i40._.js +5 -0
  114. package/.next/server/chunks/_0ci0abh._.js +3 -0
  115. package/.next/server/chunks/_0eauz4t._.js +1 -1
  116. package/.next/server/chunks/_0f6ts7z._.js +1 -1
  117. package/.next/server/chunks/_0fg-1oj._.js +5 -0
  118. package/.next/server/chunks/_0khihjk._.js +2 -2
  119. package/.next/server/chunks/_0n74zsf._.js +1 -1
  120. package/.next/server/chunks/_0na2fj1._.js +2 -2
  121. package/.next/server/chunks/_0oh_99-._.js +3 -0
  122. package/.next/server/chunks/_0x-ej3f._.js +24 -24
  123. package/.next/server/chunks/_0z3nz21._.js +3 -0
  124. package/.next/server/chunks/_10tkr26._.js +1 -1
  125. package/.next/server/chunks/_12-amdu._.js +2 -2
  126. package/.next/server/chunks/_136j09a._.js +1 -1
  127. package/.next/server/chunks/_15740dw._.js +1 -1
  128. package/.next/server/chunks/_18izeh1._.js +5 -0
  129. package/.next/server/chunks/_1_5mnq4._.js +1 -1
  130. package/.next/server/chunks/_1ajbhv6._.js +2 -2
  131. package/.next/server/chunks/_1dc_d1q._.js +2 -2
  132. package/.next/server/chunks/_1drgfx4._.js +1 -1
  133. package/.next/server/chunks/_1e48czp._.js +2 -2
  134. package/.next/server/chunks/_1f06zo4._.js +3 -0
  135. package/.next/server/chunks/_1ic3bew._.js +2 -2
  136. package/.next/server/chunks/_1jn-aep._.js +2 -2
  137. package/.next/server/chunks/_1jn5btd._.js +6 -0
  138. package/.next/server/chunks/_1kg70wc._.js +2 -2
  139. package/.next/server/chunks/_1m2i5pt._.js +5 -0
  140. package/.next/server/chunks/_1ogqovh._.js +4 -4
  141. package/.next/server/chunks/_1qxheoa._.js +1 -1
  142. package/.next/server/chunks/_1ry6afh._.js +18 -0
  143. package/.next/server/chunks/_1taa4bs._.js +1 -1
  144. package/.next/server/chunks/_1tpr507._.js +1 -1
  145. package/.next/server/chunks/_1y8w80a._.js +1 -1
  146. package/.next/server/chunks/_1zxp-p6._.js +1 -1
  147. package/.next/server/chunks/_204744f._.js +5 -0
  148. package/.next/server/chunks/_20fsr_z._.js +1 -1
  149. package/.next/server/chunks/config_ts_1g4sz5o._.js +1 -1
  150. package/.next/server/chunks/features_0-cnt0l._.js +1 -1
  151. package/.next/server/chunks/features_0hdaci0._.js +1 -1
  152. package/.next/server/chunks/features_0p85gv6._.js +3 -0
  153. package/.next/server/chunks/{node_modules_zod_v4_0_v5xf5._.js → node_modules_zod_v4_01bha1c._.js} +2 -2
  154. package/.next/server/chunks/{node_modules_zod_v4_0q9hvql._.js → node_modules_zod_v4_0b99z6a._.js} +2 -2
  155. package/.next/server/chunks/{node_modules_zod_v4_1jg8iwg._.js → node_modules_zod_v4_1zz6lo1._.js} +2 -2
  156. package/.next/server/chunks/ssr/[root-of-the-server]__04upd5v._.js +3 -0
  157. package/.next/server/chunks/ssr/[root-of-the-server]__0dxszdt._.js +3 -0
  158. package/.next/server/chunks/ssr/[root-of-the-server]__0eezycw._.js +3 -0
  159. package/.next/server/chunks/ssr/[root-of-the-server]__0hpp3nw._.js +1 -1
  160. package/.next/server/chunks/ssr/[root-of-the-server]__0yngu44._.js +3 -0
  161. package/.next/server/chunks/ssr/[root-of-the-server]__16z72ny._.js +6 -0
  162. package/.next/server/chunks/ssr/[root-of-the-server]__1u_ry86._.js +3 -0
  163. package/.next/server/chunks/ssr/{[root-of-the-server]__1iwyp1e._.js → [root-of-the-server]__1unh_ew._.js} +1 -1
  164. package/.next/server/chunks/ssr/[root-of-the-server]__20re7ya._.js +3 -0
  165. package/.next/server/chunks/ssr/_00pgq9d._.js +5 -0
  166. package/.next/server/chunks/ssr/_07ke63g._.js +3 -0
  167. package/.next/server/chunks/ssr/_0agcbk7._.js +3 -0
  168. package/.next/server/chunks/ssr/_0e-gw2_._.js +3 -0
  169. package/.next/server/chunks/ssr/{_0fbi6om._.js → _0f_om6y._.js} +3 -3
  170. package/.next/server/chunks/ssr/_0fqhhwi._.js +1 -1
  171. package/.next/server/chunks/ssr/{_026qnc9._.js → _0gpn71k._.js} +3 -3
  172. package/.next/server/chunks/ssr/_0iizjr9._.js +3 -0
  173. package/.next/server/chunks/ssr/_0ixvzo6._.js +75 -0
  174. package/.next/server/chunks/ssr/_0kkdx7t._.js +3 -0
  175. package/.next/server/chunks/ssr/_0lufvw7._.js +118 -0
  176. package/.next/server/chunks/ssr/_0vi6ky6._.js +115 -0
  177. package/.next/server/chunks/ssr/{_10f-jib._.js → _0yhji3e._.js} +2 -2
  178. package/.next/server/chunks/ssr/_0z38nha._.js +3 -0
  179. package/.next/server/chunks/ssr/{_10mo72m._.js → _11nx2d4._.js} +2 -2
  180. package/.next/server/chunks/ssr/_12mijol._.js +2 -2
  181. package/.next/server/chunks/ssr/_150463c._.js +164 -0
  182. package/.next/server/chunks/ssr/{_0rmaf32._.js → _17d2ikl._.js} +2 -2
  183. package/.next/server/chunks/ssr/_19jez1a._.js +3 -0
  184. package/.next/server/chunks/ssr/_1blui1m._.js +3 -0
  185. package/.next/server/chunks/ssr/_1d423aj._.js +4 -4
  186. package/.next/server/chunks/ssr/_1kbk28w._.js +3 -0
  187. package/.next/server/chunks/ssr/_1kj_r9v._.js +3 -0
  188. package/.next/server/chunks/ssr/_1mqn9mc._.js +1 -1
  189. package/.next/server/chunks/ssr/{_0u5xv6g._.js → _1myh7ss._.js} +2 -2
  190. package/.next/server/chunks/ssr/_1neoj22._.js +1 -1
  191. package/.next/server/chunks/ssr/_1ou5sj0._.js +3 -0
  192. package/.next/server/chunks/ssr/_1p8xorg._.js +3 -0
  193. package/.next/server/chunks/ssr/_1tzacpl._.js +3 -0
  194. package/.next/server/chunks/ssr/_1xoch6f._.js +1 -1
  195. package/.next/server/chunks/ssr/_1yh5bj5._.js +1 -1
  196. package/.next/server/chunks/ssr/{_02c7o30._.js → _2021n9-._.js} +2 -2
  197. package/.next/server/chunks/ssr/_20argo3._.js +3 -0
  198. package/.next/server/chunks/ssr/features_bot_1ll3wp7._.js +3 -0
  199. package/.next/server/chunks/ssr/features_bot_1s_-2vj._.js +1 -1
  200. package/.next/server/chunks/ssr/features_bot_thread_query_ts_023eklt._.js +1 -1
  201. package/.next/server/chunks/ssr/features_config_1qxe5ur._.js +20 -0
  202. package/.next/server/chunks/ssr/features_connectors_components_mcp-setting_tsx_0jmbgvp._.js +3 -3
  203. package/.next/server/chunks/ssr/features_memory_components_memory-setting_tsx_0oa43sw._.js +1 -1
  204. package/.next/server/chunks/ssr/features_routine_components_routine-setting_tsx_055fknz._.js +1 -1
  205. package/.next/server/chunks/ssr/features_workspace_00jz2hu._.js +1 -1
  206. package/.next/server/chunks/ssr/{node_modules_0ky76fz._.js → node_modules_06e0wlv._.js} +1 -1
  207. package/.next/server/chunks/ssr/{node_modules_0-x0zxm._.js → node_modules_0cj26-9._.js} +1 -1
  208. package/.next/server/chunks/ssr/{node_modules_0operbz._.js → node_modules_0d1rf5e._.js} +1 -1
  209. package/.next/server/chunks/ssr/{node_modules_0b0iy01._.js → node_modules_0e86703._.js} +1 -1
  210. package/.next/server/chunks/ssr/{node_modules_05b6e99._.js → node_modules_0es09am._.js} +1 -1
  211. package/.next/server/chunks/ssr/{node_modules_1iau_ea._.js → node_modules_0gr_dzf._.js} +1 -1
  212. package/.next/server/chunks/ssr/{node_modules_1hv-j1l._.js → node_modules_0gtcwz9._.js} +1 -1
  213. package/.next/server/chunks/ssr/{node_modules_1c2ikr9._.js → node_modules_0hi9h8f._.js} +1 -1
  214. package/.next/server/chunks/ssr/{node_modules_01u4ea3._.js → node_modules_0lkop0t._.js} +1 -1
  215. package/.next/server/chunks/ssr/{node_modules_1wvf3oo._.js → node_modules_0nghisk._.js} +1 -1
  216. package/.next/server/chunks/ssr/{node_modules_0yzmxfq._.js → node_modules_0stovz0._.js} +1 -1
  217. package/.next/server/chunks/ssr/{node_modules_00nrzz_._.js → node_modules_0we85kr._.js} +1 -1
  218. package/.next/server/chunks/ssr/{node_modules_01ed0yi._.js → node_modules_0ya7y1s._.js} +1 -1
  219. package/.next/server/chunks/ssr/{node_modules_0m3_5ge._.js → node_modules_0yrbwkj._.js} +1 -1
  220. package/.next/server/chunks/ssr/{node_modules_0v_-uht._.js → node_modules_1-x70ie._.js} +1 -1
  221. package/.next/server/chunks/ssr/{node_modules_07jp6tj._.js → node_modules_12fd9g0._.js} +1 -1
  222. package/.next/server/chunks/ssr/{node_modules_1wgnj8q._.js → node_modules_12wxrgr._.js} +1 -1
  223. package/.next/server/chunks/ssr/{node_modules_0azd56x._.js → node_modules_139uu4q._.js} +1 -1
  224. package/.next/server/chunks/ssr/{node_modules_1omg9xr._.js → node_modules_14gpoe1._.js} +1 -1
  225. package/.next/server/chunks/ssr/{node_modules_1ma_y68._.js → node_modules_18fmji6._.js} +1 -1
  226. package/.next/server/chunks/ssr/{node_modules_0ucridu._.js → node_modules_19kkel8._.js} +1 -1
  227. package/.next/server/chunks/ssr/{node_modules_0fpnetd._.js → node_modules_1gcine1._.js} +1 -1
  228. package/.next/server/chunks/ssr/{node_modules_1z3sh11._.js → node_modules_1h4trkm._.js} +1 -1
  229. package/.next/server/chunks/ssr/{node_modules_0lautv3._.js → node_modules_1mub_qu._.js} +1 -1
  230. package/.next/server/chunks/ssr/{node_modules_0ou0all._.js → node_modules_1p78svs._.js} +1 -1
  231. package/.next/server/chunks/ssr/{node_modules_19b0bir._.js → node_modules_1xp-7ep._.js} +1 -1
  232. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0tmjn9w._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0ay7_oi._.js} +1 -1
  233. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1_e8c3o._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_182ydq_._.js} +1 -1
  234. package/.next/server/middleware-build-manifest.js +3 -3
  235. package/.next/server/pages/404.html +1 -1
  236. package/.next/server/pages/500.html +1 -1
  237. package/.next/server/server-reference-manifest.js +1 -1
  238. package/.next/server/server-reference-manifest.json +69 -58
  239. package/.next/static/chunks/03df16hs01-xi.js +1 -0
  240. package/.next/static/chunks/0crocb7272z8k.js +1 -0
  241. package/.next/static/chunks/{0p9jcyqkpq71f.js → 0dqsenl3uk_8z.js} +1 -1
  242. package/.next/static/chunks/0hhn8mf953761.js +1 -0
  243. package/.next/static/chunks/0n1o3k0z4m7c_.js +1 -0
  244. package/.next/static/chunks/0oe2zavre2a7d.css +1 -0
  245. package/.next/static/chunks/0srg9tv4105-i.js +1 -0
  246. package/.next/static/chunks/0t599wrclly7i.js +18 -0
  247. package/.next/static/chunks/0x34bhth_sn35.js +1 -0
  248. package/.next/static/chunks/{0mscosx0eh3ee.js → 0x_6z8vt8hyf4.js} +3 -3
  249. package/.next/static/chunks/{0p50d-au6-3hx.js → 1_wstwzu1md-6.js} +2 -2
  250. package/.next/static/chunks/{40ij3wsn3vt7h.js → 1aughn81slf90.js} +1 -1
  251. package/.next/static/chunks/1g1j03h_l-e67.js +1 -0
  252. package/.next/static/chunks/1lp02y2nmddxg.js +1 -0
  253. package/.next/static/chunks/211s4xjtecj2l.js +1 -0
  254. package/.next/static/chunks/2244-cat2jlvd.js +1 -0
  255. package/.next/static/chunks/{2r6xnyg7ezyxr.js → 2eev_i93slion.js} +2 -2
  256. package/.next/static/chunks/2sjq4gsimlfqr.js +113 -0
  257. package/.next/static/chunks/{0qgn3u86jkbm7.js → 2uleilh8ph06-.js} +1 -1
  258. package/.next/static/chunks/{1czfknd4luo6t.js → 2zchsg03a1pdp.js} +1 -1
  259. package/.next/static/chunks/32tmfirfjpulv.js +1 -0
  260. package/.next/static/chunks/{2_c7mu6x1lu49.js → 376-s_i83irs-.js} +1 -1
  261. package/.next/static/chunks/3blk-kpn39xr-.js +1 -0
  262. package/.next/static/chunks/3eieehp7wquyu.js +1 -0
  263. package/.next/static/chunks/3kc-e7pcj50ae.js +1 -0
  264. package/.next/static/chunks/3rwpyuo9nrrop.js +17 -0
  265. package/.next/static/chunks/3sf4l25l353ja.js +1 -0
  266. package/.next/static/chunks/3vz7m1w688juj.js +3 -0
  267. package/.next/static/chunks/43skgt0h9woyu.js +1 -0
  268. package/app/api/events/app-event.client.ts +8 -2
  269. package/app/api/events/app-event.server.ts +7 -5
  270. package/app/api/events/app-event.ts +19 -8
  271. package/app/api/query-key.ts +13 -5
  272. package/bin/database.mjs +21 -11
  273. package/bin/thursday.mjs +5 -2
  274. package/components/ui/shiny-text.tsx +2 -2
  275. package/database/migrations/20260920024909_messy_baron_strucker/migration.sql +1 -0
  276. package/database/migrations/20260920024909_messy_baron_strucker/snapshot.json +1937 -0
  277. package/features/artifact/components/artifact-setting.tsx +18 -24
  278. package/features/bot/bot.action.ts +3 -0
  279. package/features/bot/bot.runner.ts +25 -3
  280. package/features/bot/bot.seed.ts +98 -22
  281. package/features/bot/components/bot-badge.tsx +2 -2
  282. package/features/bot/components/bot-mark.tsx +12 -3
  283. package/features/bot/components/bot-room.tsx +33 -10
  284. package/features/bot/components/bot-setting.tsx +88 -34
  285. package/features/bot/components/crew-motion.ts +161 -0
  286. package/features/bot/components/mark-palette.tsx +3 -3
  287. package/features/bot/components/room-conversation.tsx +13 -8
  288. package/features/bot/components/room-list.tsx +9 -5
  289. package/features/bot/components/room-pill.tsx +131 -41
  290. package/features/bot/components/thread-badge.tsx +4 -4
  291. package/features/bot/components/thread-setting.tsx +58 -19
  292. package/features/bot/mark.const.ts +24 -0
  293. package/features/bot/thread.query.ts +32 -14
  294. package/features/bot/thread.store.ts +19 -16
  295. package/features/config/components/config-badge.tsx +2 -2
  296. package/features/config/components/config-setting.tsx +63 -213
  297. package/features/config/config.const.ts +2 -1
  298. package/features/connectors/components/mcp-setting.tsx +60 -29
  299. package/features/intro/components/intro.tsx +2 -2
  300. package/features/memory/components/memory-setting.tsx +11 -7
  301. package/features/reach/channel.ts +9 -1
  302. package/features/reach/components/reach-guide.tsx +606 -105
  303. package/features/reach/discord.ts +18 -3
  304. package/features/reach/reach.schema.ts +6 -0
  305. package/features/reach/reach.ts +55 -2
  306. package/features/reach/slack.ts +2 -1
  307. package/features/reach/telegram.ts +5 -1
  308. package/features/routine/components/routine-setting.tsx +46 -18
  309. package/features/settings/components/setting-ui.tsx +17 -68
  310. package/features/settings/components/settings.tsx +4 -3
  311. package/features/settings/settings.alert.ts +8 -8
  312. package/features/skills/components/skills-setting.tsx +78 -12
  313. package/features/skills/skills.action.ts +12 -0
  314. package/features/skills/skills.query.ts +24 -0
  315. package/features/thursday/components/call-log.tsx +19 -14
  316. package/features/thursday/components/side-captions.tsx +3 -2
  317. package/features/thursday/components/thursday-setting.tsx +5 -6
  318. package/features/thursday/components/thursday.tsx +8 -9
  319. package/features/thursday/components/write-line.tsx +10 -5
  320. package/features/thursday/thursday.action.ts +4 -0
  321. package/features/thursday/thursday.query.ts +3 -2
  322. package/features/thursday/thursday.schema.ts +5 -0
  323. package/features/thursday/use-call-ring.ts +6 -1
  324. package/features/thursday/use-text-call.ts +25 -10
  325. package/features/thursday/use-thursday.ts +10 -1
  326. package/features/workspace/components/artifact-view.tsx +42 -33
  327. package/features/workspace/components/file-thumb.tsx +8 -4
  328. package/features/workspace/components/file-view.tsx +25 -2
  329. package/features/workspace/components/workspace-setting.tsx +27 -23
  330. package/features/workspace/workspace.query.ts +20 -1
  331. package/features/workspace/workspace.ts +14 -0
  332. package/guide/bots.md +27 -4
  333. package/guide/calls.md +5 -3
  334. package/guide/phone.md +23 -12
  335. package/guide/setup.md +20 -5
  336. package/guide/trouble.md +1 -1
  337. package/hooks/use-theme.ts +14 -0
  338. package/lib/protocol/events.client.ts +56 -14
  339. package/lib/protocol/events.server.ts +41 -12
  340. package/lib/utils.ts +1 -1
  341. package/package.json +1 -1
  342. package/scripts/reach-channels.test.mts +15 -2
  343. package/seed-skills/brief/daily-brief/SKILL.md +39 -0
  344. package/seed-skills/brief/daily-brief/page/brief.css +406 -0
  345. package/seed-skills/brief/daily-brief/references/brief.md +106 -0
  346. package/seed-skills/brief/daily-brief/references/preferences.md +67 -0
  347. package/seed-skills/brief/daily-brief/scripts/glance.mjs +128 -0
  348. package/seed-skills/brief/daily-brief/scripts/lib.mjs +182 -0
  349. package/seed-skills/brief/daily-brief/scripts/news.mjs +320 -0
  350. package/seed-skills/brief/daily-brief/scripts/page.mjs +322 -0
  351. package/seed-skills/brief/daily-brief/scripts/story.mjs +265 -0
  352. package/seed-skills/digest/README.md +20 -0
  353. package/seed-skills/digest/media-digest/SKILL.md +32 -0
  354. package/seed-skills/digest/media-digest/references/no-captions.md +20 -0
  355. package/seed-skills/digest/media-digest/references/page.md +56 -0
  356. package/seed-skills/digest/media-digest/references/reading.md +56 -0
  357. package/seed-skills/digest/media-digest/scripts/audio.mjs +232 -0
  358. package/seed-skills/digest/media-digest/scripts/digest.mjs +379 -0
  359. package/seed-skills/digest/media-digest/scripts/lib.mjs +284 -0
  360. package/seed-skills/digest/media-digest/scripts/part.mjs +16 -0
  361. package/seed-skills/digest/media-digest/scripts/text.mjs +287 -0
  362. package/seed-skills/digest/media-digest/scripts/yt.mjs +487 -0
  363. package/seed-skills/docs/README.md +32 -0
  364. package/seed-skills/docs/documents/SKILL.md +34 -0
  365. package/seed-skills/docs/documents/kit/package-lock.json +1596 -0
  366. package/seed-skills/docs/documents/kit/package.json +17 -0
  367. package/seed-skills/docs/documents/references/deck.md +63 -0
  368. package/seed-skills/docs/documents/references/invoice.md +64 -0
  369. package/seed-skills/docs/documents/references/pdf.md +59 -0
  370. package/seed-skills/docs/documents/references/print.md +43 -0
  371. package/seed-skills/docs/documents/references/sheets.md +49 -0
  372. package/seed-skills/docs/documents/references/translate.md +37 -0
  373. package/seed-skills/docs/documents/references/word.md +45 -0
  374. package/seed-skills/docs/documents/scripts/doc.mjs +123 -0
  375. package/seed-skills/docs/documents/scripts/lib/browser.mjs +259 -0
  376. package/seed-skills/docs/documents/scripts/lib/deck-chart.mjs +150 -0
  377. package/seed-skills/docs/documents/scripts/lib/deck.mjs +1132 -0
  378. package/seed-skills/docs/documents/scripts/lib/invoice.mjs +505 -0
  379. package/seed-skills/docs/documents/scripts/lib/kit.mjs +244 -0
  380. package/seed-skills/docs/documents/scripts/lib/pdf.mjs +645 -0
  381. package/seed-skills/docs/documents/scripts/lib/report.mjs +38 -0
  382. package/seed-skills/docs/documents/scripts/lib/sheet.mjs +523 -0
  383. package/seed-skills/docs/documents/scripts/lib/templates.mjs +34 -0
  384. package/seed-skills/docs/documents/scripts/lib/translate.mjs +691 -0
  385. package/seed-skills/docs/documents/scripts/lib/word.mjs +678 -0
  386. package/seed-skills/docs/documents/templates/letter.html +56 -0
  387. package/seed-skills/docs/documents/templates/print.css +219 -0
  388. package/seed-skills/docs/documents/templates/report.html +47 -0
  389. package/seed-skills/docs/documents/templates/resume.html +61 -0
  390. package/seed-skills/insta/instagram/references/post.md +31 -7
  391. package/seed-skills/trip/README.md +11 -0
  392. package/seed-skills/trip/travel/SKILL.md +40 -0
  393. package/seed-skills/trip/travel/page/itinerary.css +488 -0
  394. package/seed-skills/trip/travel/references/itinerary.md +70 -0
  395. package/seed-skills/trip/travel/references/plan.md +75 -0
  396. package/seed-skills/trip/travel/references/watch-and-book.md +39 -0
  397. package/seed-skills/trip/travel/scripts/flights.mjs +374 -0
  398. package/seed-skills/trip/travel/scripts/fx.mjs +57 -0
  399. package/seed-skills/trip/travel/scripts/hotels.mjs +356 -0
  400. package/seed-skills/trip/travel/scripts/itinerary.mjs +482 -0
  401. package/seed-skills/trip/travel/scripts/lib.mjs +120 -0
  402. package/seed-skills/trip/travel/scripts/selectors.mjs +78 -0
  403. package/seed-skills/trip/travel/scripts/watch.mjs +147 -0
  404. package/seed-skills/trip/travel/scripts/weather.mjs +150 -0
  405. package/seed-skills/tutor/picture-book/SKILL.md +6 -0
  406. package/seed-skills/tutor/picture-book/references/picture-book.md +22 -2
  407. package/.next/server/chunks/[root-of-the-server]__014ydvq._.js +0 -8
  408. package/.next/server/chunks/[root-of-the-server]__01d285y._.js +0 -5
  409. package/.next/server/chunks/[root-of-the-server]__04r4h-2._.js +0 -7
  410. package/.next/server/chunks/[root-of-the-server]__0ayldfn._.js +0 -5
  411. package/.next/server/chunks/[root-of-the-server]__17weeeg._.js +0 -5
  412. package/.next/server/chunks/[root-of-the-server]__1ai5lme._.js +0 -8
  413. package/.next/server/chunks/_05v8k21._.js +0 -7
  414. package/.next/server/chunks/_0k6qjcf._.js +0 -5
  415. package/.next/server/chunks/_1d_enhu._.js +0 -3
  416. package/.next/server/chunks/_1jc5g4p._.js +0 -6
  417. package/.next/server/chunks/_1nfr-75._.js +0 -3
  418. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0md6j0x._.js +0 -3
  419. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_14ih1vy._.js +0 -3
  420. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1d6ez5-._.js +0 -3
  421. package/.next/server/chunks/ssr/[root-of-the-server]__0a967km._.js +0 -3
  422. package/.next/server/chunks/ssr/[root-of-the-server]__0tzekbl._.js +0 -68
  423. package/.next/server/chunks/ssr/[root-of-the-server]__1756892._.js +0 -3
  424. package/.next/server/chunks/ssr/[root-of-the-server]__1mzi-ju._.js +0 -3
  425. package/.next/server/chunks/ssr/[root-of-the-server]__1nqw56a._.js +0 -3
  426. package/.next/server/chunks/ssr/[root-of-the-server]__1r77-88._.js +0 -3
  427. package/.next/server/chunks/ssr/[root-of-the-server]__1w9hqq8._.js +0 -8
  428. package/.next/server/chunks/ssr/_05pl_u8._.js +0 -3
  429. package/.next/server/chunks/ssr/_097-ljd._.js +0 -4
  430. package/.next/server/chunks/ssr/_0euzzf8._.js +0 -3
  431. package/.next/server/chunks/ssr/_0evkpto._.js +0 -3
  432. package/.next/server/chunks/ssr/_0igfcax._.js +0 -20
  433. package/.next/server/chunks/ssr/_0lu1n_x._.js +0 -3
  434. package/.next/server/chunks/ssr/_0nvh1h9._.js +0 -3
  435. package/.next/server/chunks/ssr/_0qmpw35._.js +0 -3
  436. package/.next/server/chunks/ssr/_0uv-qs4._.js +0 -3
  437. package/.next/server/chunks/ssr/_132qkfz._.js +0 -5
  438. package/.next/server/chunks/ssr/_15zqt-t._.js +0 -3
  439. package/.next/server/chunks/ssr/_16gfxpn._.js +0 -3
  440. package/.next/server/chunks/ssr/_184327j._.js +0 -3
  441. package/.next/server/chunks/ssr/_18ujhhq._.js +0 -3
  442. package/.next/server/chunks/ssr/_1lx6w_o._.js +0 -67
  443. package/.next/server/chunks/ssr/_1ntpny5._.js +0 -3
  444. package/.next/server/chunks/ssr/_1o1g4uk._.js +0 -5
  445. package/.next/server/chunks/ssr/_1xx4zlb._.js +0 -3
  446. package/.next/server/chunks/ssr/_2008vmi._.js +0 -164
  447. package/.next/server/chunks/ssr/features_bot_1n1s7bh._.js +0 -3
  448. package/.next/static/chunks/09pkygbht7ki8.js +0 -18
  449. package/.next/static/chunks/0bm-nhblcmmj4.js +0 -17
  450. package/.next/static/chunks/0c_g4-11sha-1.js +0 -1
  451. package/.next/static/chunks/0hhza87hkbqaz.js +0 -1
  452. package/.next/static/chunks/0samf80yu2b17.js +0 -1
  453. package/.next/static/chunks/0vlgzqo9ka90v.js +0 -1
  454. package/.next/static/chunks/1g9yyvculuxj2.js +0 -1
  455. package/.next/static/chunks/1jz8n0mhtdzr8.js +0 -1
  456. package/.next/static/chunks/206laxm6maiz2.js +0 -1
  457. package/.next/static/chunks/23nfu5g4vl_m7.js +0 -1
  458. package/.next/static/chunks/2h-tlhb2ffhkk.js +0 -1
  459. package/.next/static/chunks/2i5_w8olnrvo0.js +0 -3
  460. package/.next/static/chunks/2m6jd3586ijb-.js +0 -1
  461. package/.next/static/chunks/2m8iqwc6sykln.js +0 -1
  462. package/.next/static/chunks/33fyp-byw48ju.js +0 -65
  463. package/.next/static/chunks/35yd_27d9ylra.js +0 -1
  464. package/.next/static/chunks/3ag1i3__yl94f.js +0 -1
  465. package/.next/static/chunks/3m_ejzg-xn21r.css +0 -1
  466. package/.next/static/chunks/3s-jpd3ky49-n.js +0 -1
  467. package/features/reach/components/reach-state.tsx +0 -71
  468. /package/.next/static/{QSe0rTdXU5kh5BBzr2XBB → fiNGsQfna8qldl8wU8wqr}/_buildManifest.js +0 -0
  469. /package/.next/static/{QSe0rTdXU5kh5BBzr2XBB → fiNGsQfna8qldl8wU8wqr}/_clientMiddlewareManifest.js +0 -0
  470. /package/.next/static/{QSe0rTdXU5kh5BBzr2XBB → fiNGsQfna8qldl8wU8wqr}/_ssgManifest.js +0 -0
@@ -1,2 +1,2 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,507906,e=>{"use strict";var t,n,r,o,a,i,l,s,c=e.i(843476),u=e.i(689664),d=e.i(867927),f=e.i(456420);let m={name:"circle-alert",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],aliases:["alert-circle"]};m.node;let p=(0,f.default)(m);var h=e.i(569644);let v={name:"rotate-ccw-clock",size:24,node:[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],aliases:["history"]};v.node;let g=(0,f.default)(v);var x=e.i(77071),b=e.i(759659),y=e.i(747925),w=e.i(263676),E=e.i(271645),j=e.i(798120),k=e.i(167881),S=/[\\\/_+.#"@\[\(\{&]/,N=/[\\\/_+.#"@\[\(\{&]/g,C=/[\s-]/,A=/[\s-]/g;function R(e){return e.toLowerCase().replace(A," ")}var O=Object.defineProperty,P=(e,t)=>O(e,"name",{value:t,configurable:!0}),M=!!("u">typeof window&&window.document&&window.document.createElement);function D(e,t,{checkForDefaultPrevented:n=!0}={}){return P(function(r){if(e?.(r),!1===n||!r||!r.defaultPrevented)return t?.(r)},"handleEvent")}function I(e){if(!M)throw Error("Cannot access document outside of the DOM");return e?.ownerDocument??document}function T(e){return"IFRAME"===e.tagName}P(D,"composeEventHandlers"),P(function(e){if(!M)throw Error("Cannot access window outside of the DOM");return e?.ownerDocument?.defaultView??window},"getOwnerWindow"),P(I,"getOwnerDocument"),P(function e(t,n=!1){let{activeElement:r}=I(t);if(!r?.nodeName)return null;if(T(r)&&r.contentDocument)return e(r.contentDocument.body,n);if(n){let e=r.getAttribute("aria-activedescendant");if(e){let t=I(r).getElementById(e);if(t)return t}}return r},"getActiveElement"),P(T,"isFrame");var L=Object.defineProperty,_=(e,t)=>L(e,"name",{value:t,configurable:!0});function F(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function B(...e){return t=>{let n=!1,r=e.map(e=>{let r=F(e,t);return n||"function"!=typeof r||(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];"function"==typeof n?n():F(e[t],null)}}}}function $(...e){return E.useCallback(B(...e),e)}_(F,"setRef"),_(B,"composeRefs"),_($,"useComposedRefs");var z=Object.defineProperty,W=(e,t)=>z(e,"name",{value:t,configurable:!0});function K(e,t=[]){let n=[];function r(t,r){let o=E.createContext(r);o.displayName=t+"Context";let a=n.length;n=[...n,r];let i=W(t=>{let{scope:n,children:r,...i}=t,l=n?.[e]?.[a]||o,s=E.useMemo(()=>i,Object.values(i));return(0,c.jsx)(l.Provider,{value:s,children:r})},"Provider");function l(n,i,s={}){let{optional:c=!1}=s,u=i?.[e]?.[a]||o,d=E.useContext(u);if(d)return d;if(void 0!==r)return r;if(!c)throw Error(`\`${n}\` must be used within \`${t}\``)}return i.displayName=t+"Provider",W(l,"useContext"),[i,l]}W(r,"createContext");let o=W(()=>{let t=n.map(e=>E.createContext(e));return W(function(n){let r=n?.[e]||t;return E.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])},"useScope")},"createScope");return o.scopeName=e,[r,U(o,...t)]}function U(...e){let t=e[0];if(1===e.length)return t;let n=W(()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return W(function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let o=n(e)[`__scope${r}`];return{...t,...o}},{});return E.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])},"useComposedScopes")},"createScope");return n.scopeName=t.scopeName,n}W(function(e,t){let n=E.createContext(t);n.displayName=e+"Context";let r=W(e=>{let{children:t,...r}=e,o=E.useMemo(()=>r,Object.values(r));return(0,c.jsx)(n.Provider,{value:o,children:t})},"Provider");function o(r,a={}){let{optional:i=!1}=a,l=E.useContext(n);if(l)return l;if(void 0!==t)return t;if(!i)throw Error(`\`${r}\` must be used within \`${e}\``)}return r.displayName=e+"Provider",W(o,"useContext"),[r,o]},"createContext"),W(K,"createContextScope"),W(U,"composeContextScopes");var V=globalThis?.document?E.useLayoutEffect:()=>{},q=Object.defineProperty,H=E[" useId ".trim().toString()]||(()=>void 0),X=0;function Y(e){let[t,n]=E.useState(H());return V(()=>{e||n(e=>e??String(X++))},[e]),e||(t?`radix-${t}`:"")}q(Y,"name",{value:"useId",configurable:!0});var G=Object.defineProperty,Z=E[" useEffectEvent ".trim().toString()],J=E[" useInsertionEffect ".trim().toString()];function Q(e){if("function"==typeof Z)return Z(e);let t=E.useRef(()=>{throw Error("Cannot call an event handler while rendering.")});return"function"==typeof J?J(()=>{t.current=e}):V(()=>{t.current=e}),E.useMemo(()=>(...e)=>t.current?.(...e),[])}G(Q,"name",{value:"useEffectEvent",configurable:!0});var ee=Object.defineProperty,et=(e,t)=>ee(e,"name",{value:t,configurable:!0}),en=E[" useInsertionEffect ".trim().toString()]||V;function er({prop:e,defaultProp:t,onChange:n=et(()=>{},"onChange"),caller:r}){let[o,a,i]=eo({defaultProp:t,onChange:n}),l=void 0!==e,s=l?e:o;return[s,E.useCallback(t=>{if(l){let n=ea(t)?t(e):t;n!==e&&i.current?.(n)}else a(t)},[l,e,a,i])]}function eo({defaultProp:e,onChange:t}){let[n,r]=E.useState(e),o=E.useRef(n),a=E.useRef(t);return en(()=>{a.current=t},[t]),E.useEffect(()=>{o.current!==n&&(a.current?.(n),o.current=n)},[n,o]),[n,r,a]}function ea(e){return"function"==typeof e}et(er,"useControllableState"),et(eo,"useUncontrolledState"),et(ea,"isFunction");var ei=Symbol("RADIX:SYNC_STATE");et(function(e,t,n,r){let{prop:o,defaultProp:a,onChange:i,caller:l}=t,s=void 0!==o,c=Q(i),u=[{...n,state:a}];r&&u.push(r);let[d,f]=E.useReducer((t,n)=>{if(n.type===ei)return{...t,state:n.state};let r=e(t,n);return s&&!Object.is(r.state,t.state)&&c(r.state),r},...u),m=d.state,p=E.useRef(m);E.useEffect(()=>{p.current!==m&&(p.current=m,s||c(m))},[m,p,s]);let h=E.useMemo(()=>void 0!==o?{...d,state:o}:d,[d,o]);return E.useEffect(()=>{s&&!Object.is(o,d.state)&&f({type:ei,state:o})},[o,d.state,s]),[h,f]},"useControllableStateReducer");var el=e.i(174080),es=Object.defineProperty,ec=(e,t)=>es(e,"name",{value:t,configurable:!0});function eu(e){let t=E.forwardRef((t,n)=>{let{children:r,...o}=t,a=null,i=!1,l=[];eg(r)&&"function"==typeof ew&&(r=ew(r._payload)),E.Children.forEach(r,e=>{if(eh(e)){i=!0;let t="child"in e.props?e.props.child:e.props.children;eg(t)&&"function"==typeof ew&&(t=ew(t._payload)),a=ef(e,t),l.push(a?.props?.children)}else l.push(e)}),a?a=E.cloneElement(a,void 0,l):!i&&1===E.Children.count(r)&&E.isValidElement(r)&&(a=r);let s=a?ep(a):void 0,c=$(n,s);if(!a){if(r||0===r)throw Error(i?ey(e):eb(e));return r}let u=em(o,a.props??{});return a.type!==E.Fragment&&(u.ref=n?c:s),E.cloneElement(a,u)});return t.displayName=`${e}.Slot`,t}ec(eu,"createSlot");var ed=Symbol.for("radix.slottable");ec(function(e){let t=ec(e=>"child"in e?e.children(e.child):e.children,"Slottable");return t.displayName=`${e}.Slottable`,t.__radixId=ed,t},"createSlottable");var ef=ec((e,t)=>{if("child"in e.props){let t=e.props.child;return E.isValidElement(t)?E.cloneElement(t,void 0,e.props.children(t.props.children)):null}return E.isValidElement(t)?t:null},"getSlottableElementFromSlottable");function em(e,t){let n={...t};for(let r in t){let o=e[r],a=t[r];/^on[A-Z]/.test(r)?o&&a?n[r]=(...e)=>{let t=a(...e);return o(...e),t}:o&&(n[r]=o):"style"===r?n[r]={...o,...a}:"className"===r&&(n[r]=[o,a].filter(Boolean).join(" "))}return{...e,...n}}function ep(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(n=(t=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in t&&t.isReactWarning)?e.props.ref:e.props.ref||e.ref}function eh(e){return E.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===ed}ec(em,"mergeProps"),ec(ep,"getElementRef"),ec(eh,"isSlottable");var ev=Symbol.for("react.lazy");function eg(e){return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===ev&&"_payload"in e&&ex(e._payload)}function ex(e){return"object"==typeof e&&null!==e&&"then"in e}ec(eg,"isLazyComponent"),ec(ex,"isPromiseLike");var eb=ec(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),ey=ec(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),ew=E[" use ".trim().toString()],eE=Object.defineProperty,ej=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{let n=eu(`Primitive.${t}`),r=E.forwardRef((e,r)=>{let{asChild:o,...a}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,c.jsx)(o?n:t,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function ek(e,t){e&&el.flushSync(()=>e.dispatchEvent(t))}function eS(e){let t=E.useRef(e);return E.useEffect(()=>{t.current=e}),E.useMemo(()=>(...e)=>t.current?.(...e),[])}eE(ek,"name",{value:"dispatchDiscreteCustomEvent",configurable:!0}),(0,Object.defineProperty)(eS,"name",{value:"useCallbackRef",configurable:!0});var eN=Object.defineProperty,eC=(e,t)=>eN(e,"name",{value:t,configurable:!0}),eA="dismissableLayer.update",eR=E.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),eO=E.forwardRef(eC(function(e,t){let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:o,onPointerDownOutside:a,onFocusOutside:i,onInteractOutside:s,onDismiss:u,...d}=e,f=E.useContext(eR),[m,p]=E.useState(null),h=m?.ownerDocument??globalThis?.document,[,v]=E.useState({}),g=$(t,p),x=Array.from(f.layers),[b]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),y=b?x.indexOf(b):-1,w=m?x.indexOf(m):-1,j=f.layersWithOutsidePointerEventsDisabled.size>0,k=w>=y,S=E.useRef(!1),N=eD(e=>{a?.(e),s?.(e),e.defaultPrevented||u?.()},{ownerDocument:h,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:S,dismissableSurfaces:f.dismissableSurfaces,shouldHandlePointerDownOutside:E.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...f.branches].some(t=>t.contains(e));return k&&!t},[f.branches,k])}),C=eI(e=>{if(r&&S.current)return;let t=e.target;![...f.branches].some(e=>e.contains(t))&&(i?.(e),s?.(e),e.defaultPrevented||u?.())},h),A=!!m&&w===x.length-1,R=eS(e=>{"Escape"===e.key&&(o?.(e),!e.defaultPrevented&&u&&(e.preventDefault(),u()))});return E.useEffect(()=>{if(A)return h.addEventListener("keydown",R,{capture:!0}),()=>h.removeEventListener("keydown",R,{capture:!0})},[h,A,R]),E.useEffect(()=>{if(m)return n&&(0===f.layersWithOutsidePointerEventsDisabled.size&&(l=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),f.layersWithOutsidePointerEventsDisabled.add(m)),f.layers.add(m),eT(),()=>{n&&(f.layersWithOutsidePointerEventsDisabled.delete(m),0===f.layersWithOutsidePointerEventsDisabled.size&&(h.body.style.pointerEvents=l))}},[m,h,n,f]),E.useEffect(()=>()=>{m&&(f.layers.delete(m),f.layersWithOutsidePointerEventsDisabled.delete(m),eT())},[m,f]),E.useEffect(()=>{let e=eC(()=>v({}),"handleUpdate");return document.addEventListener(eA,e),()=>document.removeEventListener(eA,e)},[]),(0,c.jsx)(ej.div,{...d,ref:g,style:{pointerEvents:j?k?"auto":"none":void 0,...e.style},onFocusCapture:D(e.onFocusCapture,C.onFocusCapture),onBlurCapture:D(e.onBlurCapture,C.onBlurCapture),onPointerDownCapture:D(e.onPointerDownCapture,N.onPointerDownCapture)})},"DismissableLayer"));function eP(){let e=E.useContext(eR),[t,n]=E.useState(null);return E.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}eC(eP,"useDismissableLayerSurface");var eM=eC(()=>!0,"IS_TRUE");function eD(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:o,dismissableSurfaces:a,shouldHandlePointerDownOutside:i=eM}=t,l=eS(e),s=E.useRef(!1),c=E.useRef(!1),u=E.useRef(new Map),d=E.useRef(()=>{});return E.useEffect(()=>{function e(){c.current=!1,o.current=!1,u.current.clear()}function t(){return Array.from(u.current.values()).some(Boolean)}function f(e){if(!c.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||u.current.set(e.type,!0),"click"===e.type&&window.setTimeout(()=>{c.current&&d.current()},0)}function m(e){c.current&&u.current.set(e.type,!1)}eC(e,"resetOutsideInteraction"),eC(t,"isOutsideInteractionIntercepted"),eC(f,"handleInteractionCapture"),eC(m,"handleInteractionBubble");let p=eC(a=>{if(a.target&&!s.current){let f=function(){n.removeEventListener("click",d.current);let r=t();e(),r||eL("dismissableLayer.pointerDownOutside",l,m,{discrete:!0})};if(eC(f,"handleAndDispatchPointerDownOutsideEvent"),!i(a.target)){n.removeEventListener("click",d.current),e(),s.current=!1;return}let m={originalEvent:a};c.current=!0,o.current=r&&0===a.button,u.current.clear(),r&&0===a.button?(n.removeEventListener("click",d.current),d.current=f,n.addEventListener("click",d.current,{once:!0})):f()}else n.removeEventListener("click",d.current),e();s.current=!1},"handlePointerDown"),h=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(let e of h)n.addEventListener(e,f,!0),n.addEventListener(e,m);let v=window.setTimeout(()=>{n.addEventListener("pointerdown",p)},0);return()=>{for(let e of(window.clearTimeout(v),n.removeEventListener("pointerdown",p),n.removeEventListener("click",d.current),h))n.removeEventListener(e,f,!0),n.removeEventListener(e,m)}},[n,l,r,o,a,i]),{onPointerDownCapture:eC(()=>s.current=!0,"onPointerDownCapture")}}function eI(e,t=globalThis?.document){let n=eS(e),r=E.useRef(!1);return E.useEffect(()=>{let e=eC(e=>{e.target&&!r.current&&eL("dismissableLayer.focusOutside",n,{originalEvent:e},{discrete:!1})},"handleFocus");return t.addEventListener("focusin",e),()=>t.removeEventListener("focusin",e)},[t,n]),{onFocusCapture:eC(()=>r.current=!0,"onFocusCapture"),onBlurCapture:eC(()=>r.current=!1,"onBlurCapture")}}function eT(){let e=new CustomEvent(eA);document.dispatchEvent(e)}function eL(e,t,n,{discrete:r}){let o=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?ek(o,a):o.dispatchEvent(a)}eC(eD,"usePointerDownOutside"),eC(eI,"useFocusOutside"),eC(eT,"dispatchUpdate"),eC(eL,"handleAndDispatchCustomEvent");var e_=Object.defineProperty,eF=(e,t)=>e_(e,"name",{value:t,configurable:!0}),eB="focusScope.autoFocusOnMount",e$="focusScope.autoFocusOnUnmount",ez={bubbles:!1,cancelable:!0},eW=E.forwardRef(eF(function(e,t){let{loop:n=!1,trapped:r=!1,onMountAutoFocus:o,onUnmountAutoFocus:a,...i}=e,[l,s]=E.useState(null),u=eS(o),d=eS(a),f=E.useRef(null),m=$(t,s),p=E.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;E.useEffect(()=>{if(r){let e=function(e){if(p.paused||!l)return;let t=e.target;l.contains(t)?f.current=t:eY(f.current,{select:!0})},t=function(e){if(p.paused||!l)return;let t=e.relatedTarget;null!==t&&(l.contains(t)||eY(f.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&eY(l)};eF(e,"handleFocusIn"),eF(t,"handleFocusOut"),eF(n,"handleMutations"),document.addEventListener("focusin",e),document.addEventListener("focusout",t);let r=new MutationObserver(n);return l&&r.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",e),document.removeEventListener("focusout",t),r.disconnect()}}},[r,l,p.paused]),E.useEffect(()=>{if(l){eG.add(p);let e=document.activeElement;if(!l.contains(e)){let t=new CustomEvent(eB,ez);l.addEventListener(eB,u),l.dispatchEvent(t),t.defaultPrevented||(eK(eQ(eV(l)),{select:!0}),document.activeElement===e&&eY(l))}return()=>{l.removeEventListener(eB,u),setTimeout(()=>{let t=new CustomEvent(e$,ez);l.addEventListener(e$,d),l.dispatchEvent(t),t.defaultPrevented||eY(e??document.body,{select:!0}),l.removeEventListener(e$,d),eG.remove(p)},0)}}},[l,u,d,p]);let h=E.useCallback(e=>{if(!n&&!r||p.paused)return;let t="Tab"===e.key&&!e.altKey&&!e.ctrlKey&&!e.metaKey,o=document.activeElement;if(t&&o){let t=e.currentTarget,[r,a]=eU(t);r&&a?e.shiftKey||o!==a?e.shiftKey&&o===r&&(e.preventDefault(),n&&eY(a,{select:!0})):(e.preventDefault(),n&&eY(r,{select:!0})):o===t&&e.preventDefault()}},[n,r,p.paused]);return(0,c.jsx)(ej.div,{tabIndex:-1,...i,ref:m,onKeyDown:h})},"FocusScope"));function eK(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(eY(r,{select:t}),document.activeElement!==n)return}function eU(e){let t=eV(e);return[eq(t,e),eq(t.reverse(),e)]}function eV(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:eF(e=>{let t="INPUT"===e.tagName&&"hidden"===e.type;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;n.nextNode();)t.push(n.currentNode);return t}function eq(e,t){let n="function"==typeof t.checkVisibility&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):eH(r,{upTo:t})))return r}function eH(e,{upTo:t}){if("hidden"===getComputedStyle(e).visibility)return!0;for(;e&&(void 0===t||e!==t);){if("none"===getComputedStyle(e).display)return!0;e=e.parentElement}return!1}function eX(e){return e instanceof HTMLInputElement&&"select"in e}function eY(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&eX(e)&&t&&e.select()}}eF(eK,"focusFirst"),eF(eU,"getTabbableEdges"),eF(eV,"getTabbableCandidates"),eF(eq,"findVisible"),eF(eH,"isHidden"),eF(eX,"isSelectableInput"),eF(eY,"focus");var eG=eZ();function eZ(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),(e=eJ(e,t)).unshift(t)},remove(t){e=eJ(e,t),e[0]?.resume()}}}function eJ(e,t){let n=[...e],r=n.indexOf(t);return -1!==r&&n.splice(r,1),n}function eQ(e){return e.filter(e=>"A"!==e.tagName)}eF(eZ,"createFocusScopesStack"),eF(eJ,"arrayRemove"),eF(eQ,"removeLinks");var e0=Object.defineProperty,e1=E.forwardRef(e0(function(e,t){let{container:n,...r}=e,[o,a]=E.useState(!1);V(()=>a(!0),[]);let i=n||o&&globalThis?.document?.body;return i?el.createPortal((0,c.jsx)(ej.div,{...r,ref:t}),i):null},"name",{value:"Portal",configurable:!0})),e2=Object.defineProperty,e3=(e,t)=>e2(e,"name",{value:t,configurable:!0});function e5(e,t){return E.useReducer((e,n)=>t[e][n]??e,e)}e3(e5,"useStateMachine");var e6=e3(e=>{let{present:t,children:n}=e,r=e9(t),o="function"==typeof n?n({present:r.isPresent}):E.Children.only(n),a=e7(r.ref,te(o));return"function"==typeof n||r.isPresent?E.cloneElement(o,{ref:a}):null},"Presence");function e9(e){let[t,n]=E.useState(),r=E.useRef(null),o=E.useRef(e),a=E.useRef("none"),i=E.useRef(void 0),[l,s]=e5(e?"mounted":"unmounted",{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return E.useEffect(()=>{"mounted"===l?(a.current=i.current??e8(r.current),i.current=void 0):a.current="none"},[l]),V(()=>{let t=r.current,n=o.current;if(n!==e){let r=a.current,l=e8(t);e?(i.current=l,s("MOUNT")):"none"===l||t?.display==="none"?s("UNMOUNT"):n&&r!==l?s("ANIMATION_OUT"):s("UNMOUNT"),o.current=e}},[e,s]),V(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,i=e3(a=>{let i=e8(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&i&&(s("ANIMATION_END"),!o.current)){let r=t.style.animationFillMode;t.style.animationFillMode="forwards",e=n.setTimeout(()=>{"forwards"===t.style.animationFillMode&&(t.style.animationFillMode=r)})}},"handleAnimationEnd"),l=e3(e=>{e.target===t&&(a.current=e8(r.current))},"handleAnimationStart");return t.addEventListener("animationstart",l),t.addEventListener("animationcancel",i),t.addEventListener("animationend",i),()=>{n.clearTimeout(e),t.removeEventListener("animationstart",l),t.removeEventListener("animationcancel",i),t.removeEventListener("animationend",i)}}s("ANIMATION_END")},[t,s]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:E.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,i.current=e8(t)}else r.current=null;n(e)},[])}}function e4(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function e7(...e){let t=E.useRef(e);return t.current=e,E.useCallback(e=>{let n=t.current,r=!1,o=n.map(t=>{let n=e4(t,e);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let e=0;e<o.length;e++){let t=o[e];"function"==typeof t?t():e4(n[e],null)}}},[])}function e8(e){return e?.animationName||"none"}function te(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(n=(t=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in t&&t.isReactWarning)?e.props.ref:e.props.ref||e.ref}e3(e9,"usePresence"),e3(e4,"setRef"),e3(e7,"useStableComposedRefs"),e3(e8,"getAnimationName"),e3(te,"getElementRef");var tt=Object.defineProperty,tn=(e,t)=>tt(e,"name",{value:t,configurable:!0}),tr=0,to=null;function ta(){E.useEffect(()=>{to||(to={start:ti(),end:ti()});let{start:e,end:t}=to;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),tr++,()=>{1===tr&&(to?.start.remove(),to?.end.remove(),to=null),tr=Math.max(0,tr-1)}},[])}function ti(){let e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}tn(function(e){return ta(),e.children},"FocusGuards"),tn(ta,"useFocusGuards"),tn(ti,"createFocusGuard");var tl=function(){return(tl=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function ts(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&0>t.indexOf(r)&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)0>t.indexOf(r[o])&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]]);return n}var tc=("function"==typeof SuppressedError&&SuppressedError,"right-scroll-bar-position"),tu="width-before-scroll-bar";function td(e,t){return"function"==typeof e?e(t):e&&(e.current=t),e}var tf="u">typeof window?E.useLayoutEffect:E.useEffect,tm=new WeakMap,tp=(void 0===t&&(t={}),(void 0===n&&(n=function(e){return e}),r=[],o=!1,a={read:function(){if(o)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:null},useMedium:function(e){var t=n(e,o);return r.push(t),function(){r=r.filter(function(e){return e!==t})}},assignSyncMedium:function(e){for(o=!0;r.length;){var t=r;r=[],t.forEach(e)}r={push:function(t){return e(t)},filter:function(){return r}}},assignMedium:function(e){o=!0;var t=[];if(r.length){var n=r;r=[],n.forEach(e),t=r}var a=function(){var n=t;t=[],n.forEach(e)},i=function(){return Promise.resolve().then(a)};i(),r={push:function(e){t.push(e),i()},filter:function(e){return t=t.filter(e),r}}}}).options=tl({async:!0,ssr:!1},t),a),th=function(){},tv=E.forwardRef(function(e,t){var n,r,o,a,i=E.useRef(null),l=E.useState({onScrollCapture:th,onWheelCapture:th,onTouchMoveCapture:th}),s=l[0],c=l[1],u=e.forwardProps,d=e.children,f=e.className,m=e.removeScrollBar,p=e.enabled,h=e.shards,v=e.sideCar,g=e.noRelative,x=e.noIsolation,b=e.inert,y=e.allowPinchZoom,w=e.as,j=e.gapMode,k=ts(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),S=(n=[i,t],r=function(e){return n.forEach(function(t){return td(t,e)})},(o=(0,E.useState)(function(){return{value:null,callback:r,facade:{get current(){return o.value},set current(value){var e=o.value;e!==value&&(o.value=value,o.callback(value,e))}}}})[0]).callback=r,a=o.facade,tf(function(){var e=tm.get(a);if(e){var t=new Set(e),r=new Set(n),o=a.current;t.forEach(function(e){r.has(e)||td(e,null)}),r.forEach(function(e){t.has(e)||td(e,o)})}tm.set(a,n)},[n]),a),N=tl(tl({},k),s);return E.createElement(E.Fragment,null,p&&E.createElement(v,{sideCar:tp,removeScrollBar:m,shards:h,noRelative:g,noIsolation:x,inert:b,setCallbacks:c,allowPinchZoom:!!y,lockRef:i,gapMode:j}),u?E.cloneElement(E.Children.only(d),tl(tl({},N),{ref:S})):E.createElement(void 0===w?"div":w,tl({},N,{className:f,ref:S}),d))});tv.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},tv.classNames={fullWidth:tu,zeroRight:tc};var tg=function(e){var t=e.sideCar,n=ts(e,["sideCar"]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error("Sidecar medium not found");return E.createElement(r,tl({},n))};tg.isSideCarExport=!0;var tx=function(){var e=0,t=null;return{add:function(n){if(0==e&&(t=function(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=s||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return t&&e.setAttribute("nonce",t),e}())){var r,o;(r=t).styleSheet?r.styleSheet.cssText=n:r.appendChild(document.createTextNode(n)),o=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(o)}e++},remove:function(){--e||!t||(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},tb=function(){var e=tx();return function(t,n){E.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},ty=function(){var e=tb();return function(t){return e(t.styles,t.dynamic),null}},tw={left:0,top:0,right:0,gap:0},tE=function(e){return parseInt(e||"",10)||0},tj=function(e){var t=window.getComputedStyle(document.body),n=t["padding"===e?"paddingLeft":"marginLeft"],r=t["padding"===e?"paddingTop":"marginTop"],o=t["padding"===e?"paddingRight":"marginRight"];return[tE(n),tE(r),tE(o)]},tk=function(e){if(void 0===e&&(e="margin"),"u"<typeof window)return tw;var t=tj(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},tS=ty(),tN="data-scroll-locked",tC=function(e,t,n,r){var o=e.left,a=e.top,i=e.right,l=e.gap;return void 0===n&&(n="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(r,";\n padding-right: ").concat(l,"px ").concat(r,";\n }\n body[").concat(tN,"] {\n overflow: hidden ").concat(r,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(r,";"),"margin"===n&&"\n padding-left: ".concat(o,"px;\n padding-top: ").concat(a,"px;\n padding-right: ").concat(i,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(l,"px ").concat(r,";\n "),"padding"===n&&"padding-right: ".concat(l,"px ").concat(r,";")].filter(Boolean).join(""),"\n }\n \n .").concat(tc," {\n right: ").concat(l,"px ").concat(r,";\n }\n \n .").concat(tu," {\n margin-right: ").concat(l,"px ").concat(r,";\n }\n \n .").concat(tc," .").concat(tc," {\n right: 0 ").concat(r,";\n }\n \n .").concat(tu," .").concat(tu," {\n margin-right: 0 ").concat(r,";\n }\n \n body[").concat(tN,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(l,"px;\n }\n")},tA=function(){var e=parseInt(document.body.getAttribute(tN)||"0",10);return isFinite(e)?e:0},tR=function(){E.useEffect(function(){return document.body.setAttribute(tN,(tA()+1).toString()),function(){var e=tA()-1;e<=0?document.body.removeAttribute(tN):document.body.setAttribute(tN,e.toString())}},[])},tO=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,o=void 0===r?"margin":r;tR();var a=E.useMemo(function(){return tk(o)},[o]);return E.createElement(tS,{styles:tC(a,!t,o,n?"":"!important")})},tP=!1;if("u">typeof window)try{var tM=Object.defineProperty({},"passive",{get:function(){return tP=!0,!0}});window.addEventListener("test",tM,tM),window.removeEventListener("test",tM,tM)}catch(e){tP=!1}var tD=!!tP&&{passive:!1},tI=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return"hidden"!==n[t]&&(n.overflowY!==n.overflowX||"TEXTAREA"===e.tagName||"visible"!==n[t])},tT=function(e,t){var n=t.ownerDocument,r=t;do{if("u">typeof ShadowRoot&&r instanceof ShadowRoot&&(r=r.host),tL(e,r)){var o=t_(e,r);if(o[1]>o[2])return!0}r=r.parentNode}while(r&&r!==n.body)return!1},tL=function(e,t){return"v"===e?tI(t,"overflowY"):tI(t,"overflowX")},t_=function(e,t){return"v"===e?[t.scrollTop,t.scrollHeight,t.clientHeight]:[t.scrollLeft,t.scrollWidth,t.clientWidth]},tF=function(e,t,n,r,o){var a,i=(a=window.getComputedStyle(t).direction,"h"===e&&"rtl"===a?-1:1),l=i*r,s=n.target,c=t.contains(s),u=!1,d=l>0,f=0,m=0;do{if(!s)break;var p=t_(e,s),h=p[0],v=p[1]-p[2]-i*h;(h||v)&&tL(e,s)&&(f+=v,m+=h);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s))return d&&(o&&1>Math.abs(f)||!o&&l>f)?u=!0:!d&&(o&&1>Math.abs(m)||!o&&-l>m)&&(u=!0),u},tB=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},t$=function(e){return[e.deltaX,e.deltaY]},tz=function(e){return e&&"current"in e?e.current:e},tW=0,tK=[];let tU=(i=function(e){var t=E.useRef([]),n=E.useRef([0,0]),r=E.useRef(),o=E.useState(tW++)[0],a=E.useState(ty)[0],i=E.useRef(e);E.useEffect(function(){i.current=e},[e]),E.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var t=(function(e,t,n){if(n||2==arguments.length)for(var r,o=0,a=t.length;o<a;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))})([e.lockRef.current],(e.shards||[]).map(tz),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),t.forEach(function(e){return e.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var l=E.useCallback(function(e,t){if("touches"in e&&2===e.touches.length||"wheel"===e.type&&e.ctrlKey)return!i.current.allowPinchZoom;var o,a=tB(e),l=n.current,s="deltaX"in e?e.deltaX:l[0]-a[0],c="deltaY"in e?e.deltaY:l[1]-a[1],u=e.target,d=Math.abs(s)>Math.abs(c)?"h":"v";if("touches"in e&&"h"===d&&"range"===u.type)return!1;var f=window.getSelection(),m=f&&f.anchorNode;if(m&&(m===u||m.contains(u)))return!1;var p=tT(d,u);if(!p)return!0;if(p?o=d:(o="v"===d?"h":"v",p=tT(d,u)),!p)return!1;if(!r.current&&"changedTouches"in e&&(s||c)&&(r.current=o),!o)return!0;var h=r.current||o;return tF(h,t,e,"h"===h?s:c,!0)},[]),s=E.useCallback(function(e){if(tK.length&&tK[tK.length-1]===a){var n="deltaY"in e?t$(e):tB(e),r=t.current.filter(function(t){var r;return t.name===e.type&&(t.target===e.target||e.target===t.shadowParent)&&(r=t.delta,r[0]===n[0]&&r[1]===n[1])})[0];if(r&&r.should){e.cancelable&&e.preventDefault();return}if(!r){var o=(i.current.shards||[]).map(tz).filter(Boolean).filter(function(t){return t.contains(e.target)});(o.length>0?l(e,o[0]):!i.current.noIsolation)&&e.cancelable&&e.preventDefault()}}},[]),c=E.useCallback(function(e,n,r,o){var a={name:e,delta:n,target:r,should:o,shadowParent:function(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=E.useCallback(function(e){n.current=tB(e),r.current=void 0},[]),d=E.useCallback(function(t){c(t.type,t$(t),t.target,l(t,e.lockRef.current))},[]),f=E.useCallback(function(t){c(t.type,tB(t),t.target,l(t,e.lockRef.current))},[]);E.useEffect(function(){return tK.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener("wheel",s,tD),document.addEventListener("touchmove",s,tD),document.addEventListener("touchstart",u,tD),function(){tK=tK.filter(function(e){return e!==a}),document.removeEventListener("wheel",s,tD),document.removeEventListener("touchmove",s,tD),document.removeEventListener("touchstart",u,tD)}},[]);var m=e.removeScrollBar,p=e.inert;return E.createElement(E.Fragment,null,p?E.createElement(a,{styles:"\n .block-interactivity-".concat(o," {pointer-events: none;}\n .allow-interactivity-").concat(o," {pointer-events: all;}\n")}):null,m?E.createElement(tO,{noRelative:e.noRelative,gapMode:e.gapMode}):null)},tp.useMedium(i),tg);var tV=E.forwardRef(function(e,t){return E.createElement(tv,tl({},e,{ref:t,sideCar:tU}))});tV.classNames=tv.classNames;var tq=new WeakMap,tH=new WeakMap,tX={},tY=0,tG=function(e){return e&&(e.host||tG(e.parentNode))},tZ=function(e,t,n,r){var o=(Array.isArray(e)?e:[e]).map(function(e){if(t.contains(e))return e;var n=tG(e);return n&&t.contains(n)?n:(console.error("aria-hidden",e,"in not contained inside",t,". Doing nothing"),null)}).filter(function(e){return!!e});tX[n]||(tX[n]=new WeakMap);var a=tX[n],i=[],l=new Set,s=new Set(o),c=function(e){!e||l.has(e)||(l.add(e),c(e.parentNode))};o.forEach(c);var u=function(e){!e||s.has(e)||Array.prototype.forEach.call(e.children,function(e){if(l.has(e))u(e);else try{var t=e.getAttribute(r),o=null!==t&&"false"!==t,s=(tq.get(e)||0)+1,c=(a.get(e)||0)+1;tq.set(e,s),a.set(e,c),i.push(e),1===s&&o&&tH.set(e,!0),1===c&&e.setAttribute(n,"true"),o||e.setAttribute(r,"true")}catch(t){console.error("aria-hidden: cannot operate on ",e,t)}})};return u(t),l.clear(),tY++,function(){i.forEach(function(e){var t=tq.get(e)-1,o=a.get(e)-1;tq.set(e,t),a.set(e,o),t||(tH.has(e)||e.removeAttribute(r),tH.delete(e)),o||e.removeAttribute(n)}),--tY||(tq=new WeakMap,tq=new WeakMap,tH=new WeakMap,tX={})}},tJ=function(e,t,n){void 0===n&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=t||("u"<typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live], script"))),tZ(r,o,n,"aria-hidden")):function(){return null}},tQ=Object.defineProperty,t0=(e,t)=>tQ(e,"name",{value:t,configurable:!0}),t1="Dialog",[t2,t3]=K(t1),[t5,t6]=t2(t1),t9=t0(e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:o,onOpenChange:a,modal:i=!0}=e,l=E.useRef(null),s=E.useRef(null),[u,d]=er({prop:r,defaultProp:o??!1,onChange:a,caller:t1}),[f,m]=E.useState(0),[p,h]=E.useState(0);return(0,c.jsx)(t5,{scope:t,triggerRef:l,contentRef:s,contentId:Y(),titleId:Y(),descriptionId:Y(),titlePresent:f>0,descriptionPresent:p>0,setTitleCount:m,setDescriptionCount:h,open:u,onOpenChange:d,onOpenToggle:E.useCallback(()=>d(e=>!e),[d]),modal:i,children:n})},"Dialog"),t4="DialogPortal",[t7,t8]=t2(t4,{forceMount:void 0}),ne=t0(e=>{let{__scopeDialog:t,forceMount:n,children:r,container:o}=e,a=t6(t4,t);return(0,c.jsx)(t7,{scope:t,forceMount:n,children:E.Children.map(r,e=>(0,c.jsx)(e6,{present:n||a.open,children:(0,c.jsx)(e1,{asChild:!0,container:o,children:e})}))})},"DialogPortal"),nt="DialogOverlay",nn=E.forwardRef(t0(function(e,t){let n=t8(nt,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=t6(nt,e.__scopeDialog);return a.modal?(0,c.jsx)(e6,{present:r||a.open,children:(0,c.jsx)(no,{...o,ref:t})}):null},"DialogOverlay")),nr=eu("DialogOverlay.RemoveScroll"),no=E.forwardRef(t0(function(e,t){let{__scopeDialog:n,...r}=e,o=t6(nt,n),a=$(t,eP());return(0,c.jsx)(tV,{as:nr,allowPinchZoom:!0,shards:[o.contentRef],children:(0,c.jsx)(ej.div,{"data-state":nu(o.open),...r,ref:a,style:{pointerEvents:"auto",...r.style}})})},"DialogOverlayImpl")),na="DialogContent",ni=E.forwardRef(t0(function(e,t){let n=t8(na,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=t6(na,e.__scopeDialog);return(0,c.jsx)(e6,{present:r||a.open,children:a.modal?(0,c.jsx)(nl,{...o,ref:t}):(0,c.jsx)(ns,{...o,ref:t})})},"DialogContent")),nl=E.forwardRef(t0(function(e,t){let n=t6(na,e.__scopeDialog),r=E.useRef(null),o=$(t,n.contentRef,r);return E.useEffect(()=>{let e=r.current;if(e)return tJ(e)},[]),(0,c.jsx)(nc,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:D(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:D(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=0===t.button&&!0===t.ctrlKey;(2===t.button||n)&&e.preventDefault()}),onFocusOutside:D(e.onFocusOutside,e=>e.preventDefault())})},"DialogContentModal")),ns=E.forwardRef(t0(function(e,t){let n=t6(na,e.__scopeDialog),r=E.useRef(!1),o=E.useRef(!1);return(0,c.jsx)(nc,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,o.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,"pointerdown"===t.detail.originalEvent.type&&(o.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&o.current&&t.preventDefault()}})},"DialogContentNonModal")),nc=E.forwardRef(t0(function(e,t){let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:a,...i}=e,l=t6(na,n);return ta(),(0,c.jsx)(c.Fragment,{children:(0,c.jsx)(eW,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:a,children:(0,c.jsx)(eO,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionPresent?l.descriptionId:void 0,"aria-labelledby":l.titlePresent?l.titleId:void 0,"data-state":nu(l.open),...i,ref:t,deferPointerDownOutside:!0,onDismiss:()=>l.onOpenChange(!1)})})})},"DialogContentImpl"));function nu(e){return e?"open":"closed"}t0(nu,"getState");var nd='[cmdk-group=""]',nf='[cmdk-group-items=""]',nm='[cmdk-item=""]',np=`${nm}:not([aria-disabled="true"])`,nh="cmdk-item-select",nv="data-value",ng=(e,t,n)=>{var r;return r=e,function e(t,n,r,o,a,i,l){if(i===n.length)return a===t.length?1:.99;var s=`${a},${i}`;if(void 0!==l[s])return l[s];for(var c,u,d,f,m=o.charAt(i),p=r.indexOf(m,a),h=0;p>=0;)(c=e(t,n,r,o,p+1,i+1,l))>h&&(p===a?c*=1:S.test(t.charAt(p-1))?(c*=.8,(d=t.slice(a,p-1).match(N))&&a>0&&(c*=Math.pow(.999,d.length))):C.test(t.charAt(p-1))?(c*=.9,(f=t.slice(a,p-1).match(A))&&a>0&&(c*=Math.pow(.999,f.length))):(c*=.17,a>0&&(c*=Math.pow(.999,p-a))),t.charAt(p)!==n.charAt(i)&&(c*=.9999)),(c<.1&&r.charAt(p-1)===o.charAt(i+1)||o.charAt(i+1)===o.charAt(i)&&r.charAt(p-1)!==o.charAt(i))&&.1*(u=e(t,n,r,o,p+1,i+2,l))>c&&(c=.1*u),c>h&&(h=c),p=r.indexOf(m,p+1);return l[s]=h,h}(r=n&&n.length>0?`${r+" "+n.join(" ")}`:r,t,R(r),R(t),0,0,{})},nx=E.createContext(void 0),nb=E.createContext(void 0),ny=E.createContext(void 0),nw=E.forwardRef((e,t)=>{let n=nP(()=>{var t,n;return{search:"",value:null!=(n=null!=(t=e.value)?t:e.defaultValue)?n:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),r=nP(()=>new Set),o=nP(()=>new Map),a=nP(()=>new Map),i=nP(()=>new Set),l=nR(e),{label:s,children:c,value:u,onValueChange:d,filter:f,shouldFilter:m,loop:p,disablePointerSelection:h=!1,vimBindings:v=!0,...g}=e,x=Y(),b=Y(),y=Y(),w=E.useRef(null),j=nI();nO(()=>{if(void 0!==u){let e=u.trim();n.current.value=e,k.emit()}},[u]),nO(()=>{j(6,O)},[]);let k=E.useMemo(()=>({subscribe:e=>(i.current.add(e),()=>i.current.delete(e)),snapshot:()=>n.current,setState:(e,t,r)=>{var o,a,i,s;if(!Object.is(n.current[e],t)){if(n.current[e]=t,"search"===e)R(),C(),j(1,A);else if("value"===e){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let e=document.getElementById(y);e?e.focus():null==(o=document.getElementById(x))||o.focus()}if(j(7,()=>{var e;n.current.selectedItemId=null==(e=P())?void 0:e.id,k.emit()}),r||j(5,O),(null==(a=l.current)?void 0:a.value)!==void 0){null==(s=(i=l.current).onValueChange)||s.call(i,null!=t?t:"");return}}k.emit()}},emit:()=>{i.current.forEach(e=>e())}}),[]),S=E.useMemo(()=>({value:(e,t,r)=>{var o;t!==(null==(o=a.current.get(e))?void 0:o.value)&&(a.current.set(e,{value:t,keywords:r}),n.current.filtered.items.set(e,N(t,r)),j(2,()=>{C(),k.emit()}))},item:(e,t)=>(r.current.add(e),t&&(o.current.has(t)?o.current.get(t).add(e):o.current.set(t,new Set([e]))),j(3,()=>{R(),C(),n.current.value||A(),k.emit()}),()=>{a.current.delete(e),r.current.delete(e),n.current.filtered.items.delete(e);let t=P();j(4,()=>{R(),(null==t?void 0:t.getAttribute("id"))===e&&A(),k.emit()})}),group:e=>(o.current.has(e)||o.current.set(e,new Set),()=>{a.current.delete(e),o.current.delete(e)}),filter:()=>l.current.shouldFilter,label:s||e["aria-label"],getDisablePointerSelection:()=>l.current.disablePointerSelection,listId:x,inputId:y,labelId:b,listInnerRef:w}),[]);function N(e,t){var r,o;let a=null!=(o=null==(r=l.current)?void 0:r.filter)?o:ng;return e?a(e,n.current.search,t):0}function C(){if(!n.current.search||!1===l.current.shouldFilter)return;let e=n.current.filtered.items,t=[];n.current.filtered.groups.forEach(n=>{let r=o.current.get(n),a=0;r.forEach(t=>{a=Math.max(e.get(t),a)}),t.push([n,a])});let r=w.current;M().sort((t,n)=>{var r,o;let a=t.getAttribute("id"),i=n.getAttribute("id");return(null!=(r=e.get(i))?r:0)-(null!=(o=e.get(a))?o:0)}).forEach(e=>{let t=e.closest(nf);t?t.appendChild(e.parentElement===t?e:e.closest(`${nf} > *`)):r.appendChild(e.parentElement===r?e:e.closest(`${nf} > *`))}),t.sort((e,t)=>t[1]-e[1]).forEach(e=>{var t;let n=null==(t=w.current)?void 0:t.querySelector(`${nd}[${nv}="${encodeURIComponent(e[0])}"]`);null==n||n.parentElement.appendChild(n)})}function A(){let e=M().find(e=>"true"!==e.getAttribute("aria-disabled")),t=null==e?void 0:e.getAttribute(nv);k.setState("value",t||void 0)}function R(){var e,t,i,s;if(!n.current.search||!1===l.current.shouldFilter){n.current.filtered.count=r.current.size;return}n.current.filtered.groups=new Set;let c=0;for(let o of r.current){let r=N(null!=(t=null==(e=a.current.get(o))?void 0:e.value)?t:"",null!=(s=null==(i=a.current.get(o))?void 0:i.keywords)?s:[]);n.current.filtered.items.set(o,r),r>0&&c++}for(let[e,t]of o.current)for(let r of t)if(n.current.filtered.items.get(r)>0){n.current.filtered.groups.add(e);break}n.current.filtered.count=c}function O(){var e,t,n;let r=P();r&&((null==(e=r.parentElement)?void 0:e.firstChild)===r&&(null==(n=null==(t=r.closest(nd))?void 0:t.querySelector('[cmdk-group-heading=""]'))||n.scrollIntoView({block:"nearest"})),r.scrollIntoView({block:"nearest"}))}function P(){var e;return null==(e=w.current)?void 0:e.querySelector(`${nm}[aria-selected="true"]`)}function M(){var e;return Array.from((null==(e=w.current)?void 0:e.querySelectorAll(np))||[])}function D(e){let t=M()[e];t&&k.setState("value",t.getAttribute(nv))}function I(e){var t;let n=P(),r=M(),o=r.findIndex(e=>e===n),a=r[o+e];null!=(t=l.current)&&t.loop&&(a=o+e<0?r[r.length-1]:o+e===r.length?r[0]:r[o+e]),a&&k.setState("value",a.getAttribute(nv))}function T(e){let t=P(),n=null==t?void 0:t.closest(nd),r;for(;n&&!r;)r=null==(n=e>0?function(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}(n,nd):function(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}(n,nd))?void 0:n.querySelector(np);r?k.setState("value",r.getAttribute(nv)):I(e)}let L=()=>D(M().length-1),_=e=>{e.preventDefault(),e.metaKey?L():e.altKey?T(1):I(1)},F=e=>{e.preventDefault(),e.metaKey?D(0):e.altKey?T(-1):I(-1)};return E.createElement(ej.div,{ref:t,tabIndex:-1,...g,"cmdk-root":"",onKeyDown:e=>{var t;null==(t=g.onKeyDown)||t.call(g,e);let n=e.nativeEvent.isComposing||229===e.keyCode;if(!(e.defaultPrevented||n))switch(e.key){case"n":case"j":v&&e.ctrlKey&&_(e);break;case"ArrowDown":_(e);break;case"p":case"k":v&&e.ctrlKey&&F(e);break;case"ArrowUp":F(e);break;case"Home":e.preventDefault(),D(0);break;case"End":e.preventDefault(),L();break;case"Enter":{e.preventDefault();let t=P();if(t){let e=new Event(nh);t.dispatchEvent(e)}}}}},E.createElement("label",{"cmdk-label":"",htmlFor:S.inputId,id:S.labelId,style:nL},s),nT(e,e=>E.createElement(nb.Provider,{value:k},E.createElement(nx.Provider,{value:S},e))))}),nE=E.forwardRef((e,t)=>{var n,r;let o=Y(),a=E.useRef(null),i=E.useContext(ny),l=E.useContext(nx),s=nR(e),c=null!=(r=null==(n=s.current)?void 0:n.forceMount)?r:null==i?void 0:i.forceMount;nO(()=>{if(!c)return l.item(o,null==i?void 0:i.id)},[c]);let u=nD(o,a,[e.value,e.children,a],e.keywords),d=E.useContext(nb),f=nM(e=>e.value&&e.value===u.current),m=nM(e=>!!c||!1===l.filter()||!e.search||e.filtered.items.get(o)>0);function p(){var e,t;h(),null==(t=(e=s.current).onSelect)||t.call(e,u.current)}function h(){d.setState("value",u.current,!0)}if(E.useEffect(()=>{let t=a.current;if(!(!t||e.disabled))return t.addEventListener(nh,p),()=>t.removeEventListener(nh,p)},[m,e.onSelect,e.disabled]),!m)return null;let{disabled:v,value:g,onSelect:x,forceMount:b,keywords:y,...w}=e;return E.createElement(ej.div,{ref:B(a,t),...w,id:o,"cmdk-item":"",role:"option","aria-disabled":!!v,"aria-selected":!!f,"data-disabled":!!v,"data-selected":!!f,onPointerMove:v||l.getDisablePointerSelection()?void 0:h,onClick:v?void 0:p},e.children)}),nj=E.forwardRef((e,t)=>{let{heading:n,children:r,forceMount:o,...a}=e,i=Y(),l=E.useRef(null),s=E.useRef(null),c=Y(),u=E.useContext(nx),d=nM(e=>!!o||!1===u.filter()||!e.search||e.filtered.groups.has(i));nO(()=>u.group(i),[]),nD(i,l,[e.value,e.heading,s]);let f=E.useMemo(()=>({id:i,forceMount:o}),[o]);return E.createElement(ej.div,{ref:B(l,t),...a,"cmdk-group":"",role:"presentation",hidden:!d||void 0},n&&E.createElement("div",{ref:s,"cmdk-group-heading":"","aria-hidden":!0,id:c},n),nT(e,e=>E.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":n?c:void 0},E.createElement(ny.Provider,{value:f},e))))}),nk=E.forwardRef((e,t)=>{let{alwaysRender:n,...r}=e,o=E.useRef(null),a=nM(e=>!e.search);return n||a?E.createElement(ej.div,{ref:B(o,t),...r,"cmdk-separator":"",role:"separator"}):null}),nS=E.forwardRef((e,t)=>{let{onValueChange:n,...r}=e,o=null!=e.value,a=E.useContext(nb),i=nM(e=>e.search),l=nM(e=>e.selectedItemId),s=E.useContext(nx);return E.useEffect(()=>{null!=e.value&&a.setState("search",e.value)},[e.value]),E.createElement(ej.input,{ref:t,...r,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":s.listId,"aria-labelledby":s.labelId,"aria-activedescendant":l,id:s.inputId,type:"text",value:o?e.value:i,onChange:e=>{o||a.setState("search",e.target.value),null==n||n(e.target.value)}})}),nN=E.forwardRef((e,t)=>{let{children:n,label:r="Suggestions",...o}=e,a=E.useRef(null),i=E.useRef(null),l=nM(e=>e.selectedItemId),s=E.useContext(nx);return E.useEffect(()=>{if(i.current&&a.current){let e=i.current,t=a.current,n,r=new ResizeObserver(()=>{n=requestAnimationFrame(()=>{let n=e.offsetHeight;t.style.setProperty("--cmdk-list-height",n.toFixed(1)+"px")})});return r.observe(e),()=>{cancelAnimationFrame(n),r.unobserve(e)}}},[]),E.createElement(ej.div,{ref:B(a,t),...o,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":l,"aria-label":r,id:s.listId},nT(e,e=>E.createElement("div",{ref:B(i,s.listInnerRef),"cmdk-list-sizer":""},e)))}),nC=E.forwardRef((e,t)=>{let{open:n,onOpenChange:r,overlayClassName:o,contentClassName:a,container:i,...l}=e;return E.createElement(t9,{open:n,onOpenChange:r},E.createElement(ne,{container:i},E.createElement(nn,{"cmdk-overlay":"",className:o}),E.createElement(ni,{"aria-label":e.label,"cmdk-dialog":"",className:a},E.createElement(nw,{ref:t,...l}))))}),nA=Object.assign(nw,{List:nN,Item:nE,Input:nS,Group:nj,Separator:nk,Dialog:nC,Empty:E.forwardRef((e,t)=>nM(e=>0===e.filtered.count)?E.createElement(ej.div,{ref:t,...e,"cmdk-empty":"",role:"presentation"}):null),Loading:E.forwardRef((e,t)=>{let{progress:n,children:r,label:o="Loading...",...a}=e;return E.createElement(ej.div,{ref:t,...a,"cmdk-loading":"",role:"progressbar","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":o},nT(e,e=>E.createElement("div",{"aria-hidden":!0},e)))})});function nR(e){let t=E.useRef(e);return nO(()=>{t.current=e}),t}var nO="u"<typeof window?E.useEffect:E.useLayoutEffect;function nP(e){let t=E.useRef();return void 0===t.current&&(t.current=e()),t}function nM(e){let t=E.useContext(nb),n=()=>e(t.snapshot());return E.useSyncExternalStore(t.subscribe,n,n)}function nD(e,t,n,r=[]){let o=E.useRef(),a=E.useContext(nx);return nO(()=>{var i;let l=(()=>{var e;for(let t of n){if("string"==typeof t)return t.trim();if("object"==typeof t&&"current"in t)return t.current?null==(e=t.current.textContent)?void 0:e.trim():o.current}})(),s=r.map(e=>e.trim());a.value(e,l,s),null==(i=t.current)||i.setAttribute(nv,l),o.current=l}),o}var nI=()=>{let[e,t]=E.useState(),n=nP(()=>new Map);return nO(()=>{n.current.forEach(e=>e()),n.current=new Map},[e]),(e,r)=>{n.current.set(e,r),t({})}};function nT({asChild:e,children:t},n){let r;return e&&E.isValidElement(t)?E.cloneElement("function"==typeof(r=t.type)?r(t.props):"render"in r?r.render(t.props):t,{ref:t.ref},n(t.props.children)):n(t)}var nL={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"},n_=e.i(593698),nF=e.i(630299),nF=nF;e.i(630374);var nB=e.i(225913),n$=e.i(23750),nz=e.i(184762),nW=e.i(647163);function nK({className:e,...t}){return(0,c.jsx)("div",{"data-slot":"input-group",role:"group",className:(0,nW.cn)("group/input-group relative flex h-8 w-full min-w-0 items-center rounded-lg border border-input transition-colors outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-disabled:bg-input/50 has-disabled:opacity-50 has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:bg-input/30 dark:has-disabled:bg-input/80 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5",e),...t})}let nU=(0,nB.cva)("flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4",{variants:{align:{"inline-start":"order-first pl-2 has-[>button]:ml-[-0.3rem] has-[>kbd]:ml-[-0.15rem]","inline-end":"order-last pr-2 has-[>button]:mr-[-0.3rem] has-[>kbd]:mr-[-0.15rem]","block-start":"order-first w-full justify-start px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2","block-end":"order-last w-full justify-start px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2"}},defaultVariants:{align:"inline-start"}});function nV({className:e,align:t="inline-start",...n}){return(0,c.jsx)("div",{role:"group","data-slot":"input-group-addon","data-align":t,className:(0,nW.cn)(nU({align:t}),e),onClick:e=>{e.target.closest("button")||e.currentTarget.parentElement?.querySelector("input")?.focus()},...n})}function nq({className:e,...t}){return(0,c.jsx)("span",{className:(0,nW.cn)("flex items-center gap-2 text-sm text-muted-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4",e),...t})}function nH({className:e,...t}){return(0,c.jsx)(n$.Input,{"data-slot":"input-group-control",className:(0,nW.cn)("flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent",e),...t})}function nX({className:e,...t}){return(0,c.jsx)(nA,{"data-slot":"command",className:(0,nW.cn)("flex size-full flex-col overflow-hidden rounded-xl! bg-popover p-1 text-popover-foreground",e),...t})}function nY({className:e,...t}){return(0,c.jsx)("div",{"data-slot":"command-input-wrapper",className:"p-1 pb-0",children:(0,c.jsxs)(nK,{className:"h-8! rounded-lg! border-input/30 bg-input/30 shadow-none! *:data-[slot=input-group-addon]:pl-2!",children:[(0,c.jsx)(nA.Input,{"data-slot":"command-input",className:(0,nW.cn)("w-full text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50",e),...t}),(0,c.jsx)(nV,{children:(0,c.jsx)(nF.default,{className:"size-4 shrink-0 opacity-50"})})]})})}function nG({className:e,...t}){return(0,c.jsx)(nA.List,{"data-slot":"command-list",className:(0,nW.cn)("no-scrollbar max-h-72 scroll-py-1 overflow-x-hidden overflow-y-auto outline-none",e),...t})}function nZ({className:e,...t}){return(0,c.jsx)(nA.Empty,{"data-slot":"command-empty",className:(0,nW.cn)("py-6 text-center text-sm",e),...t})}function nJ({className:e,...t}){return(0,c.jsx)(nA.Group,{"data-slot":"command-group",className:(0,nW.cn)("overflow-hidden p-1 text-foreground **:[[cmdk-group-heading]]:px-2 **:[[cmdk-group-heading]]:py-1.5 **:[[cmdk-group-heading]]:text-xs **:[[cmdk-group-heading]]:font-medium **:[[cmdk-group-heading]]:text-muted-foreground",e),...t})}function nQ({className:e,children:t,...n}){return(0,c.jsxs)(nA.Item,{"data-slot":"command-item",className:(0,nW.cn)("group/command-item relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none in-data-[slot=dialog-content]:rounded-lg! data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-selected:bg-muted data-selected:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-selected:*:[svg]:text-foreground",e),...n,children:[t,(0,c.jsx)(n_.CheckIcon,{className:"ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100"})]})}(0,nB.cva)("flex items-center gap-2 text-sm shadow-none",{variants:{size:{xs:"h-6 gap-1 rounded-[calc(var(--radius)-3px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5",sm:"","icon-xs":"size-6 rounded-[calc(var(--radius)-3px)] p-0 has-[>svg]:p-0","icon-sm":"size-8 p-0 has-[>svg]:p-0"}},defaultVariants:{size:"xs"}});var n0=e.i(917162),n1=e.i(660302),n2=e.i(671428),n3=e.i(319036),n5=e.i(41533),n6=e.i(146538),n9=e.i(265402),n4=e.i(95187);let n7=(0,n4.createServerReference)("7f58479aabf4f3553b3ac83369d160917e4c2b1d99",n4.callServer,void 0,n4.findSourceMapURL,"createBotAction");var n8=e.i(742978);let re=(0,n4.createServerReference)("7f3b2af8fad34ea6d36738c9671f85ce8d9d9a95bb",n4.callServer,void 0,n4.findSourceMapURL,"deleteBotAction"),rt=(0,n4.createServerReference)("7fde00425c4667d79300d0bc374b382e19ca41d832",n4.callServer,void 0,n4.findSourceMapURL,"setBotMemoryOnAction"),rn=(0,n4.createServerReference)("7fee933ef4c100169ea1333ab1433d058d04f715a1",n4.callServer,void 0,n4.findSourceMapURL,"updateBotAction");var rr=e.i(451888),ro=e.i(463625),ra=e.i(635963),ri=e.i(638475);function rl({color:e,background:t,label:n,picked:r,onPick:o}){return(0,c.jsx)("button",{type:"button",onClick:o,"aria-label":n??e??"Follow the theme",style:t?{background:t}:e?{backgroundColor:e}:void 0,className:(0,nW.cn)("size-5 rounded-full outline-none transition-transform hover:scale-110 focus-visible:ring-3 focus-visible:ring-ring/50",!e&&!t&&"bg-foreground",r&&"ring-2 ring-foreground/40 ring-offset-2 ring-offset-background")})}var rs=e.i(864723);function rc({color:e,themePicked:t,onTheme:n,onPick:r,paint:o,onPaint:a}){return(0,c.jsxs)("div",{className:"flex flex-wrap items-center justify-center gap-2 px-2",children:[(0,c.jsx)(rl,{color:null,picked:t,onPick:n}),rs.MARK_PALETTE.map(t=>(0,c.jsx)(rl,{color:t,picked:e===t,onPick:()=>r(t)},t)),a&&rs.MARK_PAINT_IDS.map(e=>(0,c.jsx)(rl,{color:null,background:(0,rs.paintSwatch)(e),label:rs.MARK_PAINTS[e].label,picked:o===e,onPick:()=>a(e)},e))]})}var ru=e.i(992112),rd=e.i(895836),rf=e.i(989409),rm=e.i(621285),rp=e.i(616172),rh=e.i(472625),rv=e.i(348238),rg=e.i(333999),rx=e.i(245629),rb=e.i(981203),ry=e.i(609856),rw=e.i(283653);let rE=" new";function rj({bot:e,job:t,active:n,onPick:r}){var o,a,i;let l=(o=t,a=e.lastJobAt,i=e.disabled,o?.status==="waiting"?{text:"waiting on you",shine:!0,amber:!0}:o?.status==="running"?{text:`working \xb7 ${o.label}`,shine:!0}:i?{text:"off"}:o?{text:`idle \xb7 last job ${rk(o.updatedAt)}`}:a?{text:`idle \xb7 last job ${rk(a)}`}:{text:"idle · no jobs yet"});return(0,c.jsxs)("button",{type:"button",onClick:r,className:(0,nW.cn)("mx-2 flex items-center gap-2.5 rounded-md px-2 py-2 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",n?"bg-secondary":"hover:bg-muted/60"),children:[(0,c.jsx)(ra.BotMark,{size:32,...rP(e.name,e.icon),state:t?.status==="running"?"thinking":"idle",notify:t?.status==="waiting",crossed:t?.status==="cancelled",className:(0,nW.cn)("shrink-0",e.disabled&&"opacity-45")}),(0,c.jsxs)("span",{className:(0,nW.cn)("min-w-0 flex-1 space-y-0.5",e.disabled&&"opacity-45"),children:[(0,c.jsx)("span",{className:(0,nW.cn)("block truncate text-[13px]",n?"font-medium":"text-foreground/90"),children:e.name}),l.shine?(0,c.jsx)(n1.ShinyText,{text:l.text,tone:l.amber?"waiting":"muted",className:"block truncate font-mono text-[11px] leading-4"}):(0,c.jsx)("span",{className:"block truncate font-mono text-[11px] leading-4 text-muted-foreground",children:l.text})]})]})}function rk(e){let t=(0,rx.shortAgo)(e);return"now"===t?"just now":`${t} ago`}function rS(e,t,n){let[r,o]=(0,E.useState)(new Set),[a,i]=(0,ry.useServerAction)(n8.createSeedBotsAction,{onOk:e=>{(0,rw.revalidate)(j.queryKey.bot),n(e.created[0]??null)}}),{data:l}=(0,rw.useServerRoute)(j.queryKey.config),s=ro.BOT_SEEDS.filter(t=>!e.has(t.name)),c=s.filter(e=>!r.has(e.name));return{isSet:e=>(0,ru.isConfigSet)(l,e),adding:i,addable:s,wanted:c,ticked:t=>e.has(t.name)||!r.has(t.name),toggle:e=>o(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),submit:()=>a(c.map(e=>({name:e.name,icon:t[ro.BOT_SEEDS.indexOf(e)]})))}}function rN({have:e,faces:t,picks:n}){return(0,c.jsx)("div",{className:"flex flex-col gap-2",children:ro.BOT_SEEDS.map((r,o)=>{var a;let i,l=e.has(r.name),s=n.ticked(r),d=(a=n.isSet,(i=(r.requires??[]).filter(e=>!a(ru.MEDIA_MODEL_KEYS[e]))).length?`needs ${i.map(ru.mediaModelWords).join(" and ")}`:null);return(0,c.jsx)("div",{className:(0,nW.cn)("rounded-xl ring-1 transition-colors",l?"opacity-45 ring-border/60":s?"ring-brand":"ring-border/60"),children:(0,c.jsxs)("button",{type:"button",disabled:l||n.adding,"aria-pressed":s,onClick:()=>n.toggle(r.name),className:"flex w-full items-center gap-3 rounded-xl px-3.5 py-2.5 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-default",children:[(0,c.jsx)(ra.BotMark,{size:28,...rP(r.name,t[o]),className:(0,nW.cn)("shrink-0 transition-opacity",!s&&"opacity-35")}),(0,c.jsxs)("span",{className:"min-w-0 flex-1 space-y-px",children:[(0,c.jsx)("span",{className:"block text-[14px] leading-[18px] font-medium",children:r.name}),(0,c.jsx)("span",{className:"block truncate text-[12px] leading-[17px] text-muted-foreground",children:r.hint})]}),l?(0,c.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground",children:"already added"}):d?(0,c.jsxs)("span",{className:(0,nW.cn)("flex shrink-0 items-center gap-1.5 font-mono text-[11px]",nW.WAITING_INK),children:[(0,c.jsx)(p,{className:"size-3"}),d]}):null,(0,c.jsx)("span",{className:(0,nW.cn)("grid size-5 shrink-0 place-items-center rounded-full transition-colors",s?"bg-brand text-brand-foreground":"ring-1 ring-border/60 ring-inset"),children:s&&(0,c.jsx)(u.Check,{className:"size-3"})})]})},r.name)})})}function rC({picks:e,onCancel:t}){return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(k.Button,{variant:"ghost",onClick:t,children:"Cancel"}),(0,c.jsxs)(k.Button,{loading:e.adding,disabled:0===e.wanted.length,onClick:e.submit,children:[(0,c.jsx)(x.Plus,{}),1===e.wanted.length?`Add ${e.wanted[0].name}`:`Add ${e.wanted.length} bots`]})]})}function rA({have:e,faces:t,onDone:n}){let r=rS(e,t,n);return(0,c.jsxs)("div",{className:"flex min-h-full flex-col",children:[(0,c.jsx)("div",{className:"flex h-11 shrink-0 items-center border-b border-border/60 px-4 font-mono text-[11px] text-muted-foreground",children:"Ready-made"}),(0,c.jsxs)("div",{className:"px-8 pt-7 pb-1",children:[(0,c.jsx)("h3",{className:"text-[17px] font-medium tracking-tight",children:"Bots you can add"}),(0,c.jsx)("p",{className:"mt-1.5 max-w-lg text-[13px] leading-relaxed text-muted-foreground break-keep",children:"Each one is a starting point — rename it, re-prompt it, give it a model of its own. What a bot needs before it can work stands on its row; until then it runs on the app default model."})]}),(0,c.jsx)("div",{className:"px-8 pt-4",children:(0,c.jsx)(rN,{have:e,faces:t,picks:r})}),(0,c.jsxs)("div",{className:"mt-auto flex items-center gap-3 border-t border-border/60 px-8 py-4",children:[(0,c.jsx)("span",{className:"flex-1 font-mono text-[11px] text-muted-foreground",children:0===r.wanted.length?"nothing ticked":`${r.wanted.length} of ${r.addable.length} ticked`}),(0,c.jsx)(rC,{picks:r,onCancel:()=>n(null)})]})]})}function rR({have:e,faces:t,onDone:n}){let r=rS(e,t,n);return(0,c.jsx)(rd.SettingDialogContent,{title:"Bots you can add",description:"Each one is a starting point — rename it, re-prompt it, give it a model of its own. What a bot needs before it can work stands on its row.",footer:(0,c.jsx)(rC,{picks:r,onCancel:()=>n(null)}),children:(0,c.jsx)(rN,{have:e,faces:t,picks:r})})}function rO({missing:e,faces:t,have:n,onDone:r}){return(0,c.jsxs)("button",{type:"button",title:"Ready-made bots","aria-label":`Ready-made bots, ${e.length} on offer`,onClick:()=>n0.notify.component({className:"sm:max-w-xl",renderer:({close:e})=>(0,c.jsx)(rR,{have:n,faces:t,onDone:t=>{e(),r(t)}})}),className:"flex shrink-0 items-center gap-1 rounded-md px-1.5 py-1 text-muted-foreground outline-none transition-colors hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,c.jsx)(x.Plus,{className:"size-3 shrink-0"}),e.map((n,r)=>(0,c.jsx)("span",{className:(0,nW.cn)("block",r>0&&"-ml-1.5"),style:{zIndex:e.length-r},children:(0,c.jsx)(ra.BotMark,{size:20,...rP(n.name,t[ro.BOT_SEEDS.indexOf(n)]),notify:!1})},n.name))]})}function rP(e,t){return{seed:e||"bot",color:t?.color,shape:t?.shape,outline:t?.outline,paint:t?.paint}}function rM({bot:e,jobs:t,onDone:n,onCancel:r}){let[o,a]=(0,rg.useObjectState)(()=>({name:e?.name??"",description:e?.description??"",systemPrompt:e?.systemPrompt??"",icon:e?.icon??(0,rr.randomBotIcon)(),provider:e?.provider??null,model:e?.model??"",compactAt:e?.compactAt?String(e.compactAt/1e3):"",toolIds:e?.tools.map(e=>e.id)??[]})),{name:i,description:l,systemPrompt:s,icon:u,provider:d,model:f,compactAt:m,toolIds:p}=o,[h,v]=(0,E.useState)(!!e?.compactAt),g=(0,rw.useServerRoute)(j.queryKey.modelCatalog),x=(e,t)=>e&&t.trim()?(0,n9.contextWindowOf)(e,t.trim(),g.data):null,y=x(d,f),w=d&&f.trim()?rF(y)/1e3:null,S=h?m:null===w?"":String(w),[N]=(0,ry.useServerAction)(rn,{onOk:()=>(0,rw.revalidate)(j.queryKey.bot)}),C=t=>{e&&N(e.name,t)},[A,R,,O]=(0,ry.useServerAction)(n7,{errorMessage:!1,okMessage:"Bot created",onOk:e=>{(0,rw.revalidate)(j.queryKey.bot),n(e.name)}}),[P,M]=(0,ry.useServerAction)(re,{okMessage:"Bot deleted",onOk:()=>{(0,rw.revalidate)(j.queryKey.bot),n(null)}}),D=i.trim()&&l.trim()&&d&&f.trim()&&!R,I=async()=>{!e||await n0.notify.confirm({title:`Delete ${e.name}?`,description:"The agent can no longer hand work to it.",okText:"Delete",destructive:!0})&&P(e.name)};return(0,c.jsxs)("div",{className:"flex min-h-full flex-col",children:[(0,c.jsxs)("div",{className:"flex h-11 shrink-0 items-center gap-2 border-b border-border/60 px-4",children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px] text-muted-foreground",children:e?e.name:"New bot"}),e&&(0,c.jsxs)(c.Fragment,{children:[e.disabled&&(0,c.jsx)("span",{className:"font-mono text-[10px] text-muted-foreground",children:"off"}),(0,c.jsx)(n3.Switch,{checked:!e.disabled,onCheckedChange:e=>C({disabled:!e}),"aria-label":`${e.name} on or off`,className:"mr-1 shrink-0"}),(0,c.jsx)(k.Button,{size:"icon-sm",variant:"ghost",loading:M,"aria-label":"Delete this bot",onClick:I,className:"text-muted-foreground hover:text-destructive",children:(0,c.jsx)(b.Trash2,{})})]})]}),(0,c.jsxs)("div",{className:"flex-1 space-y-5 p-6",children:[(0,c.jsx)(rz,{name:i,icon:u,onChange:e=>{a({icon:e}),C({icon:e})}}),(0,c.jsxs)(rB,{label:"Name",children:[e?(0,c.jsx)("p",{className:"truncate text-sm leading-8 font-medium",children:e.name}):(0,c.jsx)(n$.Input,{value:i,onChange:e=>a({name:e.target.value}),placeholder:"researcher",spellCheck:!1,maxLength:rb.COMMON_VALIDATE.name.max,autoFocus:!0}),(0,c.jsx)("p",{className:"text-xs text-muted-foreground",children:e?`What ${n5.APP_NAME} calls it when she hands it work. Fixed once the bot is made.`:`What ${n5.APP_NAME} calls it when she hands it work. Up to ${rb.COMMON_VALIDATE.name.max} characters, and it can’t be renamed later.`})]}),(0,c.jsxs)(rB,{label:"Description",children:[(0,c.jsx)(n$.Input,{value:l,onChange:e=>a({description:e.target.value}),onBlur:()=>{let t=l.trim();e&&t&&t!==e.description&&C({description:t})},placeholder:"Searches the web and answers",maxLength:rb.COMMON_VALIDATE.description.max}),(0,c.jsxs)("p",{className:"text-xs text-muted-foreground",children:["The one line ",n5.APP_NAME," and the other bots read when they decide who gets a job."]})]}),(0,c.jsx)(rB,{label:"Runs on",children:(0,c.jsx)(n6.ModelPicker,{provider:d,model:f,onChange:e=>{a({provider:e.provider,model:e.model}),v(!1),e.model&&C({...e,compactAt:rF(x(e.provider,e.model))})},onUnset:()=>{a({provider:null,model:""}),v(!1),C({provider:null,model:null,compactAt:null})}})}),(0,c.jsxs)(rB,{label:"Compacts at",children:[(0,c.jsxs)(nK,{children:[(0,c.jsx)(nH,{inputMode:"decimal",value:S,placeholder:f.trim()?"":"Pick a model first",onChange:e=>{v(!0),a({compactAt:e.target.value})},onBlur:()=>{if(!h)return;let e=r_(m);null===e?v(!1):a({compactAt:String(e/1e3)}),C({compactAt:e??(f.trim()?rF(y):null)})}}),(0,c.jsx)(nV,{align:"inline-end",children:(0,c.jsx)(nq,{children:"k tokens"})})]}),(0,c.jsx)("p",{className:"text-xs text-muted-foreground",children:function(e){if(!e.model)return"Filled in from the model once one is picked.";let t=rF(e.window),n="A job summarizes itself here and carries on.";return null!==e.shown&&e.shown!==t?`Set by hand. Picking a model fills in its own again. ${n}`:e.window?`${Math.round(100*n5.BOT_RUN.compactHeadroom)}% of this model's ${(e.window/1e3).toLocaleString()}k context window. ${n}`:`This model's context window is unknown, so the default is filled in. ${n}`}({model:f.trim(),window:y,shown:r_(S)})})]}),(0,c.jsx)(rB,{label:"Tools",children:(0,c.jsx)(rW,{selected:p,onChange:e=>{a({toolIds:e}),C({toolIds:e})}})}),(0,c.jsxs)(rB,{label:"Prompt",children:[(0,c.jsx)(nz.Textarea,{value:s,onChange:e=>a({systemPrompt:e.target.value}),onBlur:()=>{let t=s.trim();e&&t!==(e.systemPrompt??"")&&C({systemPrompt:t})},placeholder:`How it should work (optional). e.g.
2
- Search the web, answer with a short summary and links.`,maxLength:rb.COMMON_VALIDATE.prompt.max,className:"max-h-48 min-h-24 resize-none overflow-y-auto text-sm"}),s.length>0&&(0,c.jsxs)("p",{className:"text-right font-mono text-[10px] text-muted-foreground",children:[s.length,"/",rb.COMMON_VALIDATE.prompt.max]})]}),e&&(0,c.jsx)(rD,{bot:e.name}),e&&(0,c.jsx)(r$,{jobs:t}),!e&&(0,c.jsxs)("div",{className:"flex items-center justify-end gap-2 pt-1",children:[(0,c.jsx)(k.Button,{variant:"ghost",onClick:r,children:"Cancel"}),(0,c.jsx)(k.Button,{loading:R,disabled:!D,onClick:()=>{D&&d&&A({name:i.trim(),description:l.trim(),systemPrompt:s.trim()||void 0,icon:u,provider:d,model:f.trim(),compactAt:h?r_(m):rF(y),toolIds:p})},children:"Create"})]}),O&&(0,c.jsx)("p",{className:"font-mono text-xs text-destructive",children:O})]})]})}function rD({bot:e}){let t=j.queryKey.botMemoryFiles(e),{data:n,isLoading:r}=(0,rw.useServerRoute)(t),[o,a]=(0,E.useState)(null),[i]=(0,ry.useServerAction)(rv.openFileAction),[l,s]=(0,ry.useServerAction)(rh.deleteWorkspaceFileAction,{okMessage:"File deleted",onOk:()=>{a(null),(0,rw.revalidate)(t),(0,rw.revalidate)(j.queryKey.workspace)}}),u=async t=>{await n0.notify.confirm({title:`Delete ${t.file}?`,description:`It is deleted from disk for good, and ${e}'s next job starts without it.`,okText:"Delete",destructive:!0})&&l(t.path)};return(0,c.jsxs)("div",{className:"pt-1",children:[(0,c.jsxs)("div",{className:"flex h-6 items-center",children:[(0,c.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:"Memory"}),(0,c.jsx)("span",{className:"flex-1"}),n&&n.total>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("span",{className:"pr-1 font-mono text-[11px] text-muted-foreground tabular-nums",children:1===n.total?"1 file":`${n.total} files`}),(0,c.jsxs)("button",{type:"button",title:"Show in the file manager",onClick:()=>i(n.folder),className:"flex items-center gap-1 rounded-md px-1.5 py-1 font-mono text-[11px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)(h.FolderOpen,{className:"size-3"}),"Folder"]})]})]}),r?(0,c.jsx)("div",{className:"flex h-9 items-center border-t border-border/60",children:(0,c.jsx)(n2.Skeleton,{className:"h-3 w-56"})}):n?.entries.length?n.entries.map(e=>{let t=o===e.path;return(0,c.jsxs)("div",{className:"border-t border-border/60",children:[(0,c.jsxs)("button",{type:"button","aria-expanded":t,onClick:()=>a(t?null:e.path),className:"flex h-9 w-full items-center gap-3 text-left text-[13px] outline-none focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)("span",{className:(0,nW.cn)("min-w-0 flex-1 truncate",t&&"font-medium"),children:e.line||e.file}),(0,c.jsx)("span",{className:"w-36 shrink-0 truncate font-mono text-[11px] text-muted-foreground",children:e.file}),(0,c.jsx)("span",{className:"w-28 shrink-0 text-right font-mono text-[11px] text-muted-foreground tabular-nums",children:(0,rx.whenOf)(e.at)}),(0,c.jsx)(d.ChevronRight,{className:(0,nW.cn)("size-3 shrink-0 text-muted-foreground transition-transform",t&&"rotate-90")})]}),t&&(0,c.jsxs)("div",{className:"flex items-start gap-3",children:[(0,c.jsx)("div",{className:"max-h-96 min-w-0 flex-1 overflow-y-auto",children:(0,c.jsx)(rI,{path:e.path})}),(0,c.jsx)(k.Button,{size:"icon-sm",variant:"ghost","aria-label":`Delete ${e.file}`,loading:s,onClick:()=>u(e),className:"text-muted-foreground hover:text-destructive",children:(0,c.jsx)(b.Trash2,{})})]})]},e.path)}):(0,c.jsx)("p",{className:"py-2 text-[13px] text-muted-foreground",children:"Nothing kept yet."})]})}function rI({path:e}){let{content:t,failure:n,truncated:r}=(0,rm.useFileText)(e);if(n)return(0,c.jsx)("p",{className:"pb-3 font-mono text-xs text-destructive",children:n});if(null===t)return(0,c.jsxs)("div",{className:"space-y-2 pb-3",children:[(0,c.jsx)(n2.Skeleton,{className:"h-4 w-5/6"}),(0,c.jsx)(n2.Skeleton,{className:"h-4 w-2/3"})]});let o=(0,rp.viewKindOf)(e);return(0,c.jsx)(rm.FileBody,{kind:o,content:"markdown"===o?rT(t):t,truncated:r,where:"inline"})}let rT=e=>e.replace(/^---\n[\s\S]*?\n---\n/,"").replace(/^\s*#[^\n]*\n?/,"");function rL({bot:e}){let{data:t,mutate:n}=(0,rw.useServerRoute)(j.queryKey.botMemory),[r]=(0,ry.useServerAction)(rt,{onOk:()=>(0,rw.revalidate)(j.queryKey.botMemory)}),o=e?e.tokens.input+e.tokens.output:0;return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(rd.SettingRailNote,{children:e?(0,c.jsxs)("span",{className:"font-mono text-[11px]",children:[e.name,e.disabled&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),"off"]}),(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),(0,c.jsx)("span",{title:`in ${(0,nW.formatCount)(e.tokens.input)} \xb7 out ${(0,nW.formatCount)(e.tokens.output)}`,children:o>0?`${(0,nW.formatCount)(o)} tokens`:"no tokens yet"}),(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),"since ",(0,rx.whenOf)(e.createdAt)]}):"Becomes a bot once it has a name and a model"}),(0,c.jsx)(ri.KeepWorkingSwitch,{}),(0,c.jsx)("span",{className:"h-4 w-px shrink-0 bg-border"}),(0,c.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground",children:"Bots keep their own memory"}),(0,c.jsx)(n3.Switch,{checked:t??!0,disabled:void 0===t,onCheckedChange:e=>{n(e,!1),r(e)},"aria-label":"Bots keep their own memory"})]})}function r_(e){let t=Number(e.replace(/[^0-9.]/g,""));return Number.isFinite(t)&&t>0?Math.round(1e3*t):null}let rF=e=>1e3*Math.round((0,n9.compactAtFor)(e)/1e3);function rB({label:e,children:t}){return(0,c.jsxs)("div",{className:"flex gap-3",children:[(0,c.jsx)("span",{className:"w-20 shrink-0 pt-2 font-mono text-xs text-muted-foreground",children:e}),(0,c.jsx)("div",{className:"min-w-0 flex-1 space-y-1.5",children:t})]})}function r$({jobs:e}){return(0,c.jsxs)("div",{className:"pt-1",children:[(0,c.jsxs)("div",{className:"flex h-6 items-center",children:[(0,c.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:"Recent"}),(0,c.jsx)("span",{className:"flex-1"}),(0,c.jsxs)("button",{type:"button",onClick:()=>(0,rf.openSettings)("threads"),className:"flex items-center gap-1 rounded-md px-1.5 py-1 font-mono text-[11px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)(g,{className:"size-3"}),"History"]})]}),0===e.length?(0,c.jsx)("p",{className:"py-2 text-[13px] text-muted-foreground",children:"Nothing handed over yet."}):e.map(e=>{let t=function(e){switch(e.status){case"waiting":return{text:"waiting on you",tone:nW.WAITING_INK};case"running":return{text:"working",tone:"text-muted-foreground"};case"cancelled":return{text:"stopped",tone:"text-muted-foreground"};default:return{text:"done",tone:"text-muted-foreground"}}}(e);return(0,c.jsxs)("div",{className:"flex h-9 items-center gap-3 border-t border-border/60 text-[13px]",children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate",children:e.label}),"running"===e.status?(0,c.jsx)(n1.ShinyText,{text:t.text,className:"shrink-0 font-mono text-[11px]"}):(0,c.jsx)("span",{className:(0,nW.cn)("shrink-0 font-mono text-[11px]",t.tone),children:t.text}),(0,c.jsx)("span",{className:"w-28 shrink-0 text-right font-mono text-[11px] text-muted-foreground tabular-nums",children:(0,rx.whenOf)(e.updatedAt)})]},e.id)})]})}function rz({name:e,icon:t,onChange:n}){return(0,c.jsxs)("div",{className:"flex flex-col items-center gap-4 pt-3 pb-2",children:[(0,c.jsx)(ra.BotMark,{size:112,...rP(e,t),className:"shrink-0"}),(0,c.jsx)(rc,{color:t.paint?void 0:t.color,themePicked:!t.paint&&t.color===rs.MARK_SYSTEM,onTheme:()=>n({...t,paint:void 0,color:rs.MARK_SYSTEM}),onPick:e=>n({...t,paint:void 0,color:t.paint||t.color!==e?e:void 0}),paint:t.paint,onPaint:e=>n({...t,paint:t.paint===e?void 0:e})}),(0,c.jsxs)("div",{className:"flex gap-1",children:[rs.MARK_SHAPES.map(e=>(0,c.jsx)("button",{type:"button",onClick:()=>n({...t,shape:t.shape===e?void 0:e}),className:(0,nW.cn)("rounded-md px-2 py-1 font-mono text-[11px] capitalize transition-colors",t.shape===e?"bg-brand text-brand-foreground":"bg-muted text-muted-foreground hover:text-foreground"),children:e},e)),(0,c.jsx)("span",{className:"mx-1 w-px self-stretch bg-border/60"}),(0,c.jsx)("button",{type:"button",onClick:()=>n({...t,outline:!t.outline||void 0}),className:(0,nW.cn)("rounded-md px-2 py-1 font-mono text-[11px] transition-colors",t.outline?"bg-brand text-brand-foreground":"bg-muted text-muted-foreground hover:text-foreground"),children:"outline"})]})]})}function rW({selected:e,onChange:t}){let{data:n=[]}=(0,rw.useServerRoute)(j.queryKey.mcpTools),[r,o]=(0,E.useState)(!1),a=e.length>=rr.MAX_PINNED_TOOLS,i=[...new Set(n.map(e=>e.serverName))],l=e.map(e=>n.find(t=>t.id===e)).filter(e=>!!e),s=r?l:l.slice(0,4),d=l.length-s.length,f=n=>t(e.includes(n)?e.filter(e=>e!==n):[...e,n]);return 0===n.length?(0,c.jsx)("p",{className:"pt-1.5 text-xs text-muted-foreground",children:"Nothing to pin — connect an MCP server first (Settings › Connectors)."}):(0,c.jsxs)("div",{className:"space-y-2",children:[(0,c.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,c.jsx)(k.Button,{size:"icon-sm",variant:r?"secondary":"outline",onClick:()=>o(!r),"aria-label":"Pick tools",className:"border-dashed",children:(0,c.jsx)(y.Wrench,{})}),s.map(e=>(0,c.jsxs)("span",{className:"flex items-center gap-1 rounded-full bg-muted py-1 pr-1.5 pl-2.5 font-mono text-[11px]",children:[e.name,(0,c.jsx)("button",{type:"button","aria-label":`Unpin ${e.name}`,onClick:()=>f(e.id),className:"rounded-full p-0.5 text-muted-foreground transition-colors hover:bg-foreground/10 hover:text-foreground",children:(0,c.jsx)(w.X,{className:"size-3"})})]},e.id)),d>0&&(0,c.jsxs)("button",{type:"button",onClick:()=>o(!0),className:"rounded-full bg-muted px-2.5 py-1 font-mono text-[11px] text-muted-foreground transition-colors hover:text-foreground",children:["+",d]}),0===l.length&&(0,c.jsx)("span",{className:"text-xs text-muted-foreground",children:"Loaded from the start — everything else stays searchable"}),(0,c.jsx)("span",{className:"flex-1"}),(0,c.jsxs)("span",{className:(0,nW.cn)("font-mono text-[11px] text-muted-foreground",a&&"text-foreground"),children:[e.length,"/",rr.MAX_PINNED_TOOLS]})]}),r&&(0,c.jsxs)(nX,{className:"rounded-lg border border-input",children:[(0,c.jsx)(nY,{placeholder:"Search tools"}),(0,c.jsxs)(nG,{className:"max-h-44",children:[(0,c.jsx)(nZ,{children:"Nothing matches"}),i.map(t=>(0,c.jsx)(nJ,{heading:t,children:n.filter(e=>e.serverName===t).map(t=>{let n=e.includes(t.id);return(0,c.jsxs)(nQ,{value:`${t.serverName}/${t.name}`,disabled:!n&&a,onSelect:()=>f(t.id),children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-xs",children:t.name}),n&&(0,c.jsx)(u.Check,{className:"size-3.5 shrink-0"})]},t.id)})},t))]})]})]})}e.s(["BotSetting",0,function(){let{data:e,isLoading:t,error:n}=(0,rw.useServerRoute)(j.queryKey.bot),r=e??[],{data:o}=(0,rw.useServerRoute)(j.queryKey.threadHistory(null)),a=o??[],[i,l]=(0,E.useState)(null),[s]=(0,E.useState)(ro.rollSeedIcons);if(t)return(0,c.jsx)(rd.SettingPanesSkeleton,{});if(n)return(0,c.jsx)(rd.SettingError,{message:n.message});let u=i===rE,d=r.filter(e=>!e.disabled).length,f=new Set(r.map(e=>e.name)),m=ro.BOT_SEEDS.filter(e=>!f.has(e.name)),p=u?null:r.find(e=>e.name===i)??r[0]??null;return(0,c.jsx)(rd.SettingPanes,{footer:0===r.length?null:(0,c.jsx)(rL,{bot:p}),left:(0,c.jsxs)("div",{className:"flex flex-col py-2",children:[(0,c.jsxs)("div",{className:"mx-2 mb-1 flex items-center gap-1",children:[(0,c.jsxs)("button",{type:"button",onClick:()=>l(rE),className:(0,nW.cn)("flex flex-1 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",u?"bg-secondary text-foreground":"text-muted-foreground hover:bg-muted/60 hover:text-foreground"),children:[(0,c.jsx)(x.Plus,{className:"size-3.5 shrink-0"}),"New bot"]}),r.length>0&&m.length>0&&(0,c.jsx)(rO,{missing:m,faces:s,have:f,onDone:e=>l(e)})]}),r.map(e=>(0,c.jsx)(rj,{bot:e,job:a.find(t=>t.bot===e.name)??null,active:!u&&e.name===p?.name,onPick:()=>l(e.name)},e.name)),d>n5.PROMPT_CROWDED.bots&&(0,c.jsxs)(rd.SettingNote,{className:"mx-3 mt-2 leading-relaxed",children:[d," bots are on. Each is a line in every prompt, and one more for Thursday to choose between."]})]}),right:u?(0,c.jsx)(rM,{jobs:[],onDone:e=>l(e),onCancel:()=>l(null)},"new"):p?(0,c.jsx)(rM,{bot:p,jobs:a.filter(e=>e.bot===p.name).slice(0,3),onDone:()=>l(null)},p.name):m.length>0?(0,c.jsx)(rA,{have:f,faces:s,onDone:e=>l(e)}):(0,c.jsxs)("div",{className:"space-y-4 p-8",children:[(0,c.jsx)("p",{className:"text-sm leading-relaxed text-muted-foreground",children:"The agent talks; bots do the rest — search the web, draft a reply, check a schedule. Give one a job and a model, and work gets handed over mid-call while the conversation keeps going."}),(0,c.jsxs)(k.Button,{variant:"outline",onClick:()=>l(rE),children:[(0,c.jsx)(x.Plus,{}),"New bot"]})]})})}],507906)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,507906,e=>{"use strict";var t,n,r,o,a,i,l,s,c=e.i(843476),u=e.i(689664),d=e.i(867927),f=e.i(456420);let m={name:"circle-alert",size:24,node:[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],aliases:["alert-circle"]};m.node;let p=(0,f.default)(m);var h=e.i(569644);let v={name:"rotate-ccw-clock",size:24,node:[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],aliases:["history"]};v.node;let g=(0,f.default)(v);var x=e.i(77071),b=e.i(759659),y=e.i(747925),w=e.i(263676),E=e.i(271645),j=e.i(798120),k=e.i(167881),S=/[\\\/_+.#"@\[\(\{&]/,N=/[\\\/_+.#"@\[\(\{&]/g,C=/[\s-]/,A=/[\s-]/g;function R(e){return e.toLowerCase().replace(A," ")}var O=Object.defineProperty,P=(e,t)=>O(e,"name",{value:t,configurable:!0}),M=!!("u">typeof window&&window.document&&window.document.createElement);function D(e,t,{checkForDefaultPrevented:n=!0}={}){return P(function(r){if(e?.(r),!1===n||!r||!r.defaultPrevented)return t?.(r)},"handleEvent")}function I(e){if(!M)throw Error("Cannot access document outside of the DOM");return e?.ownerDocument??document}function T(e){return"IFRAME"===e.tagName}P(D,"composeEventHandlers"),P(function(e){if(!M)throw Error("Cannot access window outside of the DOM");return e?.ownerDocument?.defaultView??window},"getOwnerWindow"),P(I,"getOwnerDocument"),P(function e(t,n=!1){let{activeElement:r}=I(t);if(!r?.nodeName)return null;if(T(r)&&r.contentDocument)return e(r.contentDocument.body,n);if(n){let e=r.getAttribute("aria-activedescendant");if(e){let t=I(r).getElementById(e);if(t)return t}}return r},"getActiveElement"),P(T,"isFrame");var L=Object.defineProperty,_=(e,t)=>L(e,"name",{value:t,configurable:!0});function F(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function $(...e){return t=>{let n=!1,r=e.map(e=>{let r=F(e,t);return n||"function"!=typeof r||(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];"function"==typeof n?n():F(e[t],null)}}}}function B(...e){return E.useCallback($(...e),e)}_(F,"setRef"),_($,"composeRefs"),_(B,"useComposedRefs");var W=Object.defineProperty,z=(e,t)=>W(e,"name",{value:t,configurable:!0});function K(e,t=[]){let n=[];function r(t,r){let o=E.createContext(r);o.displayName=t+"Context";let a=n.length;n=[...n,r];let i=z(t=>{let{scope:n,children:r,...i}=t,l=n?.[e]?.[a]||o,s=E.useMemo(()=>i,Object.values(i));return(0,c.jsx)(l.Provider,{value:s,children:r})},"Provider");function l(n,i,s={}){let{optional:c=!1}=s,u=i?.[e]?.[a]||o,d=E.useContext(u);if(d)return d;if(void 0!==r)return r;if(!c)throw Error(`\`${n}\` must be used within \`${t}\``)}return i.displayName=t+"Provider",z(l,"useContext"),[i,l]}z(r,"createContext");let o=z(()=>{let t=n.map(e=>E.createContext(e));return z(function(n){let r=n?.[e]||t;return E.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])},"useScope")},"createScope");return o.scopeName=e,[r,U(o,...t)]}function U(...e){let t=e[0];if(1===e.length)return t;let n=z(()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return z(function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let o=n(e)[`__scope${r}`];return{...t,...o}},{});return E.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])},"useComposedScopes")},"createScope");return n.scopeName=t.scopeName,n}z(function(e,t){let n=E.createContext(t);n.displayName=e+"Context";let r=z(e=>{let{children:t,...r}=e,o=E.useMemo(()=>r,Object.values(r));return(0,c.jsx)(n.Provider,{value:o,children:t})},"Provider");function o(r,a={}){let{optional:i=!1}=a,l=E.useContext(n);if(l)return l;if(void 0!==t)return t;if(!i)throw Error(`\`${r}\` must be used within \`${e}\``)}return r.displayName=e+"Provider",z(o,"useContext"),[r,o]},"createContext"),z(K,"createContextScope"),z(U,"composeContextScopes");var V=globalThis?.document?E.useLayoutEffect:()=>{},q=Object.defineProperty,H=E[" useId ".trim().toString()]||(()=>void 0),X=0;function Y(e){let[t,n]=E.useState(H());return V(()=>{e||n(e=>e??String(X++))},[e]),e||(t?`radix-${t}`:"")}q(Y,"name",{value:"useId",configurable:!0});var G=Object.defineProperty,Z=E[" useEffectEvent ".trim().toString()],J=E[" useInsertionEffect ".trim().toString()];function Q(e){if("function"==typeof Z)return Z(e);let t=E.useRef(()=>{throw Error("Cannot call an event handler while rendering.")});return"function"==typeof J?J(()=>{t.current=e}):V(()=>{t.current=e}),E.useMemo(()=>(...e)=>t.current?.(...e),[])}G(Q,"name",{value:"useEffectEvent",configurable:!0});var ee=Object.defineProperty,et=(e,t)=>ee(e,"name",{value:t,configurable:!0}),en=E[" useInsertionEffect ".trim().toString()]||V;function er({prop:e,defaultProp:t,onChange:n=et(()=>{},"onChange"),caller:r}){let[o,a,i]=eo({defaultProp:t,onChange:n}),l=void 0!==e,s=l?e:o;return[s,E.useCallback(t=>{if(l){let n=ea(t)?t(e):t;n!==e&&i.current?.(n)}else a(t)},[l,e,a,i])]}function eo({defaultProp:e,onChange:t}){let[n,r]=E.useState(e),o=E.useRef(n),a=E.useRef(t);return en(()=>{a.current=t},[t]),E.useEffect(()=>{o.current!==n&&(a.current?.(n),o.current=n)},[n,o]),[n,r,a]}function ea(e){return"function"==typeof e}et(er,"useControllableState"),et(eo,"useUncontrolledState"),et(ea,"isFunction");var ei=Symbol("RADIX:SYNC_STATE");et(function(e,t,n,r){let{prop:o,defaultProp:a,onChange:i,caller:l}=t,s=void 0!==o,c=Q(i),u=[{...n,state:a}];r&&u.push(r);let[d,f]=E.useReducer((t,n)=>{if(n.type===ei)return{...t,state:n.state};let r=e(t,n);return s&&!Object.is(r.state,t.state)&&c(r.state),r},...u),m=d.state,p=E.useRef(m);E.useEffect(()=>{p.current!==m&&(p.current=m,s||c(m))},[m,p,s]);let h=E.useMemo(()=>void 0!==o?{...d,state:o}:d,[d,o]);return E.useEffect(()=>{s&&!Object.is(o,d.state)&&f({type:ei,state:o})},[o,d.state,s]),[h,f]},"useControllableStateReducer");var el=e.i(174080),es=Object.defineProperty,ec=(e,t)=>es(e,"name",{value:t,configurable:!0});function eu(e){let t=E.forwardRef((t,n)=>{let{children:r,...o}=t,a=null,i=!1,l=[];eg(r)&&"function"==typeof ew&&(r=ew(r._payload)),E.Children.forEach(r,e=>{if(eh(e)){i=!0;let t="child"in e.props?e.props.child:e.props.children;eg(t)&&"function"==typeof ew&&(t=ew(t._payload)),a=ef(e,t),l.push(a?.props?.children)}else l.push(e)}),a?a=E.cloneElement(a,void 0,l):!i&&1===E.Children.count(r)&&E.isValidElement(r)&&(a=r);let s=a?ep(a):void 0,c=B(n,s);if(!a){if(r||0===r)throw Error(i?ey(e):eb(e));return r}let u=em(o,a.props??{});return a.type!==E.Fragment&&(u.ref=n?c:s),E.cloneElement(a,u)});return t.displayName=`${e}.Slot`,t}ec(eu,"createSlot");var ed=Symbol.for("radix.slottable");ec(function(e){let t=ec(e=>"child"in e?e.children(e.child):e.children,"Slottable");return t.displayName=`${e}.Slottable`,t.__radixId=ed,t},"createSlottable");var ef=ec((e,t)=>{if("child"in e.props){let t=e.props.child;return E.isValidElement(t)?E.cloneElement(t,void 0,e.props.children(t.props.children)):null}return E.isValidElement(t)?t:null},"getSlottableElementFromSlottable");function em(e,t){let n={...t};for(let r in t){let o=e[r],a=t[r];/^on[A-Z]/.test(r)?o&&a?n[r]=(...e)=>{let t=a(...e);return o(...e),t}:o&&(n[r]=o):"style"===r?n[r]={...o,...a}:"className"===r&&(n[r]=[o,a].filter(Boolean).join(" "))}return{...e,...n}}function ep(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(n=(t=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in t&&t.isReactWarning)?e.props.ref:e.props.ref||e.ref}function eh(e){return E.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===ed}ec(em,"mergeProps"),ec(ep,"getElementRef"),ec(eh,"isSlottable");var ev=Symbol.for("react.lazy");function eg(e){return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===ev&&"_payload"in e&&ex(e._payload)}function ex(e){return"object"==typeof e&&null!==e&&"then"in e}ec(eg,"isLazyComponent"),ec(ex,"isPromiseLike");var eb=ec(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),ey=ec(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),ew=E[" use ".trim().toString()],eE=Object.defineProperty,ej=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{let n=eu(`Primitive.${t}`),r=E.forwardRef((e,r)=>{let{asChild:o,...a}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,c.jsx)(o?n:t,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function ek(e,t){e&&el.flushSync(()=>e.dispatchEvent(t))}function eS(e){let t=E.useRef(e);return E.useEffect(()=>{t.current=e}),E.useMemo(()=>(...e)=>t.current?.(...e),[])}eE(ek,"name",{value:"dispatchDiscreteCustomEvent",configurable:!0}),(0,Object.defineProperty)(eS,"name",{value:"useCallbackRef",configurable:!0});var eN=Object.defineProperty,eC=(e,t)=>eN(e,"name",{value:t,configurable:!0}),eA="dismissableLayer.update",eR=E.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),eO=E.forwardRef(eC(function(e,t){let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:o,onPointerDownOutside:a,onFocusOutside:i,onInteractOutside:s,onDismiss:u,...d}=e,f=E.useContext(eR),[m,p]=E.useState(null),h=m?.ownerDocument??globalThis?.document,[,v]=E.useState({}),g=B(t,p),x=Array.from(f.layers),[b]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),y=b?x.indexOf(b):-1,w=m?x.indexOf(m):-1,j=f.layersWithOutsidePointerEventsDisabled.size>0,k=w>=y,S=E.useRef(!1),N=eD(e=>{a?.(e),s?.(e),e.defaultPrevented||u?.()},{ownerDocument:h,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:S,dismissableSurfaces:f.dismissableSurfaces,shouldHandlePointerDownOutside:E.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...f.branches].some(t=>t.contains(e));return k&&!t},[f.branches,k])}),C=eI(e=>{if(r&&S.current)return;let t=e.target;![...f.branches].some(e=>e.contains(t))&&(i?.(e),s?.(e),e.defaultPrevented||u?.())},h),A=!!m&&w===x.length-1,R=eS(e=>{"Escape"===e.key&&(o?.(e),!e.defaultPrevented&&u&&(e.preventDefault(),u()))});return E.useEffect(()=>{if(A)return h.addEventListener("keydown",R,{capture:!0}),()=>h.removeEventListener("keydown",R,{capture:!0})},[h,A,R]),E.useEffect(()=>{if(m)return n&&(0===f.layersWithOutsidePointerEventsDisabled.size&&(l=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),f.layersWithOutsidePointerEventsDisabled.add(m)),f.layers.add(m),eT(),()=>{n&&(f.layersWithOutsidePointerEventsDisabled.delete(m),0===f.layersWithOutsidePointerEventsDisabled.size&&(h.body.style.pointerEvents=l))}},[m,h,n,f]),E.useEffect(()=>()=>{m&&(f.layers.delete(m),f.layersWithOutsidePointerEventsDisabled.delete(m),eT())},[m,f]),E.useEffect(()=>{let e=eC(()=>v({}),"handleUpdate");return document.addEventListener(eA,e),()=>document.removeEventListener(eA,e)},[]),(0,c.jsx)(ej.div,{...d,ref:g,style:{pointerEvents:j?k?"auto":"none":void 0,...e.style},onFocusCapture:D(e.onFocusCapture,C.onFocusCapture),onBlurCapture:D(e.onBlurCapture,C.onBlurCapture),onPointerDownCapture:D(e.onPointerDownCapture,N.onPointerDownCapture)})},"DismissableLayer"));function eP(){let e=E.useContext(eR),[t,n]=E.useState(null);return E.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}eC(eP,"useDismissableLayerSurface");var eM=eC(()=>!0,"IS_TRUE");function eD(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:o,dismissableSurfaces:a,shouldHandlePointerDownOutside:i=eM}=t,l=eS(e),s=E.useRef(!1),c=E.useRef(!1),u=E.useRef(new Map),d=E.useRef(()=>{});return E.useEffect(()=>{function e(){c.current=!1,o.current=!1,u.current.clear()}function t(){return Array.from(u.current.values()).some(Boolean)}function f(e){if(!c.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||u.current.set(e.type,!0),"click"===e.type&&window.setTimeout(()=>{c.current&&d.current()},0)}function m(e){c.current&&u.current.set(e.type,!1)}eC(e,"resetOutsideInteraction"),eC(t,"isOutsideInteractionIntercepted"),eC(f,"handleInteractionCapture"),eC(m,"handleInteractionBubble");let p=eC(a=>{if(a.target&&!s.current){let f=function(){n.removeEventListener("click",d.current);let r=t();e(),r||eL("dismissableLayer.pointerDownOutside",l,m,{discrete:!0})};if(eC(f,"handleAndDispatchPointerDownOutsideEvent"),!i(a.target)){n.removeEventListener("click",d.current),e(),s.current=!1;return}let m={originalEvent:a};c.current=!0,o.current=r&&0===a.button,u.current.clear(),r&&0===a.button?(n.removeEventListener("click",d.current),d.current=f,n.addEventListener("click",d.current,{once:!0})):f()}else n.removeEventListener("click",d.current),e();s.current=!1},"handlePointerDown"),h=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(let e of h)n.addEventListener(e,f,!0),n.addEventListener(e,m);let v=window.setTimeout(()=>{n.addEventListener("pointerdown",p)},0);return()=>{for(let e of(window.clearTimeout(v),n.removeEventListener("pointerdown",p),n.removeEventListener("click",d.current),h))n.removeEventListener(e,f,!0),n.removeEventListener(e,m)}},[n,l,r,o,a,i]),{onPointerDownCapture:eC(()=>s.current=!0,"onPointerDownCapture")}}function eI(e,t=globalThis?.document){let n=eS(e),r=E.useRef(!1);return E.useEffect(()=>{let e=eC(e=>{e.target&&!r.current&&eL("dismissableLayer.focusOutside",n,{originalEvent:e},{discrete:!1})},"handleFocus");return t.addEventListener("focusin",e),()=>t.removeEventListener("focusin",e)},[t,n]),{onFocusCapture:eC(()=>r.current=!0,"onFocusCapture"),onBlurCapture:eC(()=>r.current=!1,"onBlurCapture")}}function eT(){let e=new CustomEvent(eA);document.dispatchEvent(e)}function eL(e,t,n,{discrete:r}){let o=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?ek(o,a):o.dispatchEvent(a)}eC(eD,"usePointerDownOutside"),eC(eI,"useFocusOutside"),eC(eT,"dispatchUpdate"),eC(eL,"handleAndDispatchCustomEvent");var e_=Object.defineProperty,eF=(e,t)=>e_(e,"name",{value:t,configurable:!0}),e$="focusScope.autoFocusOnMount",eB="focusScope.autoFocusOnUnmount",eW={bubbles:!1,cancelable:!0},ez=E.forwardRef(eF(function(e,t){let{loop:n=!1,trapped:r=!1,onMountAutoFocus:o,onUnmountAutoFocus:a,...i}=e,[l,s]=E.useState(null),u=eS(o),d=eS(a),f=E.useRef(null),m=B(t,s),p=E.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;E.useEffect(()=>{if(r){let e=function(e){if(p.paused||!l)return;let t=e.target;l.contains(t)?f.current=t:eY(f.current,{select:!0})},t=function(e){if(p.paused||!l)return;let t=e.relatedTarget;null!==t&&(l.contains(t)||eY(f.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&eY(l)};eF(e,"handleFocusIn"),eF(t,"handleFocusOut"),eF(n,"handleMutations"),document.addEventListener("focusin",e),document.addEventListener("focusout",t);let r=new MutationObserver(n);return l&&r.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",e),document.removeEventListener("focusout",t),r.disconnect()}}},[r,l,p.paused]),E.useEffect(()=>{if(l){eG.add(p);let e=document.activeElement;if(!l.contains(e)){let t=new CustomEvent(e$,eW);l.addEventListener(e$,u),l.dispatchEvent(t),t.defaultPrevented||(eK(eQ(eV(l)),{select:!0}),document.activeElement===e&&eY(l))}return()=>{l.removeEventListener(e$,u),setTimeout(()=>{let t=new CustomEvent(eB,eW);l.addEventListener(eB,d),l.dispatchEvent(t),t.defaultPrevented||eY(e??document.body,{select:!0}),l.removeEventListener(eB,d),eG.remove(p)},0)}}},[l,u,d,p]);let h=E.useCallback(e=>{if(!n&&!r||p.paused)return;let t="Tab"===e.key&&!e.altKey&&!e.ctrlKey&&!e.metaKey,o=document.activeElement;if(t&&o){let t=e.currentTarget,[r,a]=eU(t);r&&a?e.shiftKey||o!==a?e.shiftKey&&o===r&&(e.preventDefault(),n&&eY(a,{select:!0})):(e.preventDefault(),n&&eY(r,{select:!0})):o===t&&e.preventDefault()}},[n,r,p.paused]);return(0,c.jsx)(ej.div,{tabIndex:-1,...i,ref:m,onKeyDown:h})},"FocusScope"));function eK(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(eY(r,{select:t}),document.activeElement!==n)return}function eU(e){let t=eV(e);return[eq(t,e),eq(t.reverse(),e)]}function eV(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:eF(e=>{let t="INPUT"===e.tagName&&"hidden"===e.type;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;n.nextNode();)t.push(n.currentNode);return t}function eq(e,t){let n="function"==typeof t.checkVisibility&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):eH(r,{upTo:t})))return r}function eH(e,{upTo:t}){if("hidden"===getComputedStyle(e).visibility)return!0;for(;e&&(void 0===t||e!==t);){if("none"===getComputedStyle(e).display)return!0;e=e.parentElement}return!1}function eX(e){return e instanceof HTMLInputElement&&"select"in e}function eY(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&eX(e)&&t&&e.select()}}eF(eK,"focusFirst"),eF(eU,"getTabbableEdges"),eF(eV,"getTabbableCandidates"),eF(eq,"findVisible"),eF(eH,"isHidden"),eF(eX,"isSelectableInput"),eF(eY,"focus");var eG=eZ();function eZ(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),(e=eJ(e,t)).unshift(t)},remove(t){e=eJ(e,t),e[0]?.resume()}}}function eJ(e,t){let n=[...e],r=n.indexOf(t);return -1!==r&&n.splice(r,1),n}function eQ(e){return e.filter(e=>"A"!==e.tagName)}eF(eZ,"createFocusScopesStack"),eF(eJ,"arrayRemove"),eF(eQ,"removeLinks");var e0=Object.defineProperty,e1=E.forwardRef(e0(function(e,t){let{container:n,...r}=e,[o,a]=E.useState(!1);V(()=>a(!0),[]);let i=n||o&&globalThis?.document?.body;return i?el.createPortal((0,c.jsx)(ej.div,{...r,ref:t}),i):null},"name",{value:"Portal",configurable:!0})),e2=Object.defineProperty,e5=(e,t)=>e2(e,"name",{value:t,configurable:!0});function e3(e,t){return E.useReducer((e,n)=>t[e][n]??e,e)}e5(e3,"useStateMachine");var e6=e5(e=>{let{present:t,children:n}=e,r=e9(t),o="function"==typeof n?n({present:r.isPresent}):E.Children.only(n),a=e8(r.ref,te(o));return"function"==typeof n||r.isPresent?E.cloneElement(o,{ref:a}):null},"Presence");function e9(e){let[t,n]=E.useState(),r=E.useRef(null),o=E.useRef(e),a=E.useRef("none"),i=E.useRef(void 0),[l,s]=e3(e?"mounted":"unmounted",{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return E.useEffect(()=>{"mounted"===l?(a.current=i.current??e7(r.current),i.current=void 0):a.current="none"},[l]),V(()=>{let t=r.current,n=o.current;if(n!==e){let r=a.current,l=e7(t);e?(i.current=l,s("MOUNT")):"none"===l||t?.display==="none"?s("UNMOUNT"):n&&r!==l?s("ANIMATION_OUT"):s("UNMOUNT"),o.current=e}},[e,s]),V(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,i=e5(a=>{let i=e7(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&i&&(s("ANIMATION_END"),!o.current)){let r=t.style.animationFillMode;t.style.animationFillMode="forwards",e=n.setTimeout(()=>{"forwards"===t.style.animationFillMode&&(t.style.animationFillMode=r)})}},"handleAnimationEnd"),l=e5(e=>{e.target===t&&(a.current=e7(r.current))},"handleAnimationStart");return t.addEventListener("animationstart",l),t.addEventListener("animationcancel",i),t.addEventListener("animationend",i),()=>{n.clearTimeout(e),t.removeEventListener("animationstart",l),t.removeEventListener("animationcancel",i),t.removeEventListener("animationend",i)}}s("ANIMATION_END")},[t,s]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:E.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,i.current=e7(t)}else r.current=null;n(e)},[])}}function e4(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function e8(...e){let t=E.useRef(e);return t.current=e,E.useCallback(e=>{let n=t.current,r=!1,o=n.map(t=>{let n=e4(t,e);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let e=0;e<o.length;e++){let t=o[e];"function"==typeof t?t():e4(n[e],null)}}},[])}function e7(e){return e?.animationName||"none"}function te(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(n=(t=Object.getOwnPropertyDescriptor(e,"ref")?.get)&&"isReactWarning"in t&&t.isReactWarning)?e.props.ref:e.props.ref||e.ref}e5(e9,"usePresence"),e5(e4,"setRef"),e5(e8,"useStableComposedRefs"),e5(e7,"getAnimationName"),e5(te,"getElementRef");var tt=Object.defineProperty,tn=(e,t)=>tt(e,"name",{value:t,configurable:!0}),tr=0,to=null;function ta(){E.useEffect(()=>{to||(to={start:ti(),end:ti()});let{start:e,end:t}=to;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),tr++,()=>{1===tr&&(to?.start.remove(),to?.end.remove(),to=null),tr=Math.max(0,tr-1)}},[])}function ti(){let e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}tn(function(e){return ta(),e.children},"FocusGuards"),tn(ta,"useFocusGuards"),tn(ti,"createFocusGuard");var tl=function(){return(tl=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function ts(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&0>t.indexOf(r)&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)0>t.indexOf(r[o])&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]]);return n}var tc=("function"==typeof SuppressedError&&SuppressedError,"right-scroll-bar-position"),tu="width-before-scroll-bar";function td(e,t){return"function"==typeof e?e(t):e&&(e.current=t),e}var tf="u">typeof window?E.useLayoutEffect:E.useEffect,tm=new WeakMap,tp=(void 0===t&&(t={}),(void 0===n&&(n=function(e){return e}),r=[],o=!1,a={read:function(){if(o)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:null},useMedium:function(e){var t=n(e,o);return r.push(t),function(){r=r.filter(function(e){return e!==t})}},assignSyncMedium:function(e){for(o=!0;r.length;){var t=r;r=[],t.forEach(e)}r={push:function(t){return e(t)},filter:function(){return r}}},assignMedium:function(e){o=!0;var t=[];if(r.length){var n=r;r=[],n.forEach(e),t=r}var a=function(){var n=t;t=[],n.forEach(e)},i=function(){return Promise.resolve().then(a)};i(),r={push:function(e){t.push(e),i()},filter:function(e){return t=t.filter(e),r}}}}).options=tl({async:!0,ssr:!1},t),a),th=function(){},tv=E.forwardRef(function(e,t){var n,r,o,a,i=E.useRef(null),l=E.useState({onScrollCapture:th,onWheelCapture:th,onTouchMoveCapture:th}),s=l[0],c=l[1],u=e.forwardProps,d=e.children,f=e.className,m=e.removeScrollBar,p=e.enabled,h=e.shards,v=e.sideCar,g=e.noRelative,x=e.noIsolation,b=e.inert,y=e.allowPinchZoom,w=e.as,j=e.gapMode,k=ts(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),S=(n=[i,t],r=function(e){return n.forEach(function(t){return td(t,e)})},(o=(0,E.useState)(function(){return{value:null,callback:r,facade:{get current(){return o.value},set current(value){var e=o.value;e!==value&&(o.value=value,o.callback(value,e))}}}})[0]).callback=r,a=o.facade,tf(function(){var e=tm.get(a);if(e){var t=new Set(e),r=new Set(n),o=a.current;t.forEach(function(e){r.has(e)||td(e,null)}),r.forEach(function(e){t.has(e)||td(e,o)})}tm.set(a,n)},[n]),a),N=tl(tl({},k),s);return E.createElement(E.Fragment,null,p&&E.createElement(v,{sideCar:tp,removeScrollBar:m,shards:h,noRelative:g,noIsolation:x,inert:b,setCallbacks:c,allowPinchZoom:!!y,lockRef:i,gapMode:j}),u?E.cloneElement(E.Children.only(d),tl(tl({},N),{ref:S})):E.createElement(void 0===w?"div":w,tl({},N,{className:f,ref:S}),d))});tv.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},tv.classNames={fullWidth:tu,zeroRight:tc};var tg=function(e){var t=e.sideCar,n=ts(e,["sideCar"]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error("Sidecar medium not found");return E.createElement(r,tl({},n))};tg.isSideCarExport=!0;var tx=function(){var e=0,t=null;return{add:function(n){if(0==e&&(t=function(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=s||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return t&&e.setAttribute("nonce",t),e}())){var r,o;(r=t).styleSheet?r.styleSheet.cssText=n:r.appendChild(document.createTextNode(n)),o=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(o)}e++},remove:function(){--e||!t||(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},tb=function(){var e=tx();return function(t,n){E.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},ty=function(){var e=tb();return function(t){return e(t.styles,t.dynamic),null}},tw={left:0,top:0,right:0,gap:0},tE=function(e){return parseInt(e||"",10)||0},tj=function(e){var t=window.getComputedStyle(document.body),n=t["padding"===e?"paddingLeft":"marginLeft"],r=t["padding"===e?"paddingTop":"marginTop"],o=t["padding"===e?"paddingRight":"marginRight"];return[tE(n),tE(r),tE(o)]},tk=function(e){if(void 0===e&&(e="margin"),"u"<typeof window)return tw;var t=tj(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},tS=ty(),tN="data-scroll-locked",tC=function(e,t,n,r){var o=e.left,a=e.top,i=e.right,l=e.gap;return void 0===n&&(n="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(r,";\n padding-right: ").concat(l,"px ").concat(r,";\n }\n body[").concat(tN,"] {\n overflow: hidden ").concat(r,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(r,";"),"margin"===n&&"\n padding-left: ".concat(o,"px;\n padding-top: ").concat(a,"px;\n padding-right: ").concat(i,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(l,"px ").concat(r,";\n "),"padding"===n&&"padding-right: ".concat(l,"px ").concat(r,";")].filter(Boolean).join(""),"\n }\n \n .").concat(tc," {\n right: ").concat(l,"px ").concat(r,";\n }\n \n .").concat(tu," {\n margin-right: ").concat(l,"px ").concat(r,";\n }\n \n .").concat(tc," .").concat(tc," {\n right: 0 ").concat(r,";\n }\n \n .").concat(tu," .").concat(tu," {\n margin-right: 0 ").concat(r,";\n }\n \n body[").concat(tN,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(l,"px;\n }\n")},tA=function(){var e=parseInt(document.body.getAttribute(tN)||"0",10);return isFinite(e)?e:0},tR=function(){E.useEffect(function(){return document.body.setAttribute(tN,(tA()+1).toString()),function(){var e=tA()-1;e<=0?document.body.removeAttribute(tN):document.body.setAttribute(tN,e.toString())}},[])},tO=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,o=void 0===r?"margin":r;tR();var a=E.useMemo(function(){return tk(o)},[o]);return E.createElement(tS,{styles:tC(a,!t,o,n?"":"!important")})},tP=!1;if("u">typeof window)try{var tM=Object.defineProperty({},"passive",{get:function(){return tP=!0,!0}});window.addEventListener("test",tM,tM),window.removeEventListener("test",tM,tM)}catch(e){tP=!1}var tD=!!tP&&{passive:!1},tI=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return"hidden"!==n[t]&&(n.overflowY!==n.overflowX||"TEXTAREA"===e.tagName||"visible"!==n[t])},tT=function(e,t){var n=t.ownerDocument,r=t;do{if("u">typeof ShadowRoot&&r instanceof ShadowRoot&&(r=r.host),tL(e,r)){var o=t_(e,r);if(o[1]>o[2])return!0}r=r.parentNode}while(r&&r!==n.body)return!1},tL=function(e,t){return"v"===e?tI(t,"overflowY"):tI(t,"overflowX")},t_=function(e,t){return"v"===e?[t.scrollTop,t.scrollHeight,t.clientHeight]:[t.scrollLeft,t.scrollWidth,t.clientWidth]},tF=function(e,t,n,r,o){var a,i=(a=window.getComputedStyle(t).direction,"h"===e&&"rtl"===a?-1:1),l=i*r,s=n.target,c=t.contains(s),u=!1,d=l>0,f=0,m=0;do{if(!s)break;var p=t_(e,s),h=p[0],v=p[1]-p[2]-i*h;(h||v)&&tL(e,s)&&(f+=v,m+=h);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s))return d&&(o&&1>Math.abs(f)||!o&&l>f)?u=!0:!d&&(o&&1>Math.abs(m)||!o&&-l>m)&&(u=!0),u},t$=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},tB=function(e){return[e.deltaX,e.deltaY]},tW=function(e){return e&&"current"in e?e.current:e},tz=0,tK=[];let tU=(i=function(e){var t=E.useRef([]),n=E.useRef([0,0]),r=E.useRef(),o=E.useState(tz++)[0],a=E.useState(ty)[0],i=E.useRef(e);E.useEffect(function(){i.current=e},[e]),E.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var t=(function(e,t,n){if(n||2==arguments.length)for(var r,o=0,a=t.length;o<a;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))})([e.lockRef.current],(e.shards||[]).map(tW),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),t.forEach(function(e){return e.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var l=E.useCallback(function(e,t){if("touches"in e&&2===e.touches.length||"wheel"===e.type&&e.ctrlKey)return!i.current.allowPinchZoom;var o,a=t$(e),l=n.current,s="deltaX"in e?e.deltaX:l[0]-a[0],c="deltaY"in e?e.deltaY:l[1]-a[1],u=e.target,d=Math.abs(s)>Math.abs(c)?"h":"v";if("touches"in e&&"h"===d&&"range"===u.type)return!1;var f=window.getSelection(),m=f&&f.anchorNode;if(m&&(m===u||m.contains(u)))return!1;var p=tT(d,u);if(!p)return!0;if(p?o=d:(o="v"===d?"h":"v",p=tT(d,u)),!p)return!1;if(!r.current&&"changedTouches"in e&&(s||c)&&(r.current=o),!o)return!0;var h=r.current||o;return tF(h,t,e,"h"===h?s:c,!0)},[]),s=E.useCallback(function(e){if(tK.length&&tK[tK.length-1]===a){var n="deltaY"in e?tB(e):t$(e),r=t.current.filter(function(t){var r;return t.name===e.type&&(t.target===e.target||e.target===t.shadowParent)&&(r=t.delta,r[0]===n[0]&&r[1]===n[1])})[0];if(r&&r.should){e.cancelable&&e.preventDefault();return}if(!r){var o=(i.current.shards||[]).map(tW).filter(Boolean).filter(function(t){return t.contains(e.target)});(o.length>0?l(e,o[0]):!i.current.noIsolation)&&e.cancelable&&e.preventDefault()}}},[]),c=E.useCallback(function(e,n,r,o){var a={name:e,delta:n,target:r,should:o,shadowParent:function(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=E.useCallback(function(e){n.current=t$(e),r.current=void 0},[]),d=E.useCallback(function(t){c(t.type,tB(t),t.target,l(t,e.lockRef.current))},[]),f=E.useCallback(function(t){c(t.type,t$(t),t.target,l(t,e.lockRef.current))},[]);E.useEffect(function(){return tK.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener("wheel",s,tD),document.addEventListener("touchmove",s,tD),document.addEventListener("touchstart",u,tD),function(){tK=tK.filter(function(e){return e!==a}),document.removeEventListener("wheel",s,tD),document.removeEventListener("touchmove",s,tD),document.removeEventListener("touchstart",u,tD)}},[]);var m=e.removeScrollBar,p=e.inert;return E.createElement(E.Fragment,null,p?E.createElement(a,{styles:"\n .block-interactivity-".concat(o," {pointer-events: none;}\n .allow-interactivity-").concat(o," {pointer-events: all;}\n")}):null,m?E.createElement(tO,{noRelative:e.noRelative,gapMode:e.gapMode}):null)},tp.useMedium(i),tg);var tV=E.forwardRef(function(e,t){return E.createElement(tv,tl({},e,{ref:t,sideCar:tU}))});tV.classNames=tv.classNames;var tq=new WeakMap,tH=new WeakMap,tX={},tY=0,tG=function(e){return e&&(e.host||tG(e.parentNode))},tZ=function(e,t,n,r){var o=(Array.isArray(e)?e:[e]).map(function(e){if(t.contains(e))return e;var n=tG(e);return n&&t.contains(n)?n:(console.error("aria-hidden",e,"in not contained inside",t,". Doing nothing"),null)}).filter(function(e){return!!e});tX[n]||(tX[n]=new WeakMap);var a=tX[n],i=[],l=new Set,s=new Set(o),c=function(e){!e||l.has(e)||(l.add(e),c(e.parentNode))};o.forEach(c);var u=function(e){!e||s.has(e)||Array.prototype.forEach.call(e.children,function(e){if(l.has(e))u(e);else try{var t=e.getAttribute(r),o=null!==t&&"false"!==t,s=(tq.get(e)||0)+1,c=(a.get(e)||0)+1;tq.set(e,s),a.set(e,c),i.push(e),1===s&&o&&tH.set(e,!0),1===c&&e.setAttribute(n,"true"),o||e.setAttribute(r,"true")}catch(t){console.error("aria-hidden: cannot operate on ",e,t)}})};return u(t),l.clear(),tY++,function(){i.forEach(function(e){var t=tq.get(e)-1,o=a.get(e)-1;tq.set(e,t),a.set(e,o),t||(tH.has(e)||e.removeAttribute(r),tH.delete(e)),o||e.removeAttribute(n)}),--tY||(tq=new WeakMap,tq=new WeakMap,tH=new WeakMap,tX={})}},tJ=function(e,t,n){void 0===n&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=t||("u"<typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live], script"))),tZ(r,o,n,"aria-hidden")):function(){return null}},tQ=Object.defineProperty,t0=(e,t)=>tQ(e,"name",{value:t,configurable:!0}),t1="Dialog",[t2,t5]=K(t1),[t3,t6]=t2(t1),t9=t0(e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:o,onOpenChange:a,modal:i=!0}=e,l=E.useRef(null),s=E.useRef(null),[u,d]=er({prop:r,defaultProp:o??!1,onChange:a,caller:t1}),[f,m]=E.useState(0),[p,h]=E.useState(0);return(0,c.jsx)(t3,{scope:t,triggerRef:l,contentRef:s,contentId:Y(),titleId:Y(),descriptionId:Y(),titlePresent:f>0,descriptionPresent:p>0,setTitleCount:m,setDescriptionCount:h,open:u,onOpenChange:d,onOpenToggle:E.useCallback(()=>d(e=>!e),[d]),modal:i,children:n})},"Dialog"),t4="DialogPortal",[t8,t7]=t2(t4,{forceMount:void 0}),ne=t0(e=>{let{__scopeDialog:t,forceMount:n,children:r,container:o}=e,a=t6(t4,t);return(0,c.jsx)(t8,{scope:t,forceMount:n,children:E.Children.map(r,e=>(0,c.jsx)(e6,{present:n||a.open,children:(0,c.jsx)(e1,{asChild:!0,container:o,children:e})}))})},"DialogPortal"),nt="DialogOverlay",nn=E.forwardRef(t0(function(e,t){let n=t7(nt,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=t6(nt,e.__scopeDialog);return a.modal?(0,c.jsx)(e6,{present:r||a.open,children:(0,c.jsx)(no,{...o,ref:t})}):null},"DialogOverlay")),nr=eu("DialogOverlay.RemoveScroll"),no=E.forwardRef(t0(function(e,t){let{__scopeDialog:n,...r}=e,o=t6(nt,n),a=B(t,eP());return(0,c.jsx)(tV,{as:nr,allowPinchZoom:!0,shards:[o.contentRef],children:(0,c.jsx)(ej.div,{"data-state":nu(o.open),...r,ref:a,style:{pointerEvents:"auto",...r.style}})})},"DialogOverlayImpl")),na="DialogContent",ni=E.forwardRef(t0(function(e,t){let n=t7(na,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,a=t6(na,e.__scopeDialog);return(0,c.jsx)(e6,{present:r||a.open,children:a.modal?(0,c.jsx)(nl,{...o,ref:t}):(0,c.jsx)(ns,{...o,ref:t})})},"DialogContent")),nl=E.forwardRef(t0(function(e,t){let n=t6(na,e.__scopeDialog),r=E.useRef(null),o=B(t,n.contentRef,r);return E.useEffect(()=>{let e=r.current;if(e)return tJ(e)},[]),(0,c.jsx)(nc,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:D(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:D(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=0===t.button&&!0===t.ctrlKey;(2===t.button||n)&&e.preventDefault()}),onFocusOutside:D(e.onFocusOutside,e=>e.preventDefault())})},"DialogContentModal")),ns=E.forwardRef(t0(function(e,t){let n=t6(na,e.__scopeDialog),r=E.useRef(!1),o=E.useRef(!1);return(0,c.jsx)(nc,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,o.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,"pointerdown"===t.detail.originalEvent.type&&(o.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&o.current&&t.preventDefault()}})},"DialogContentNonModal")),nc=E.forwardRef(t0(function(e,t){let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:a,...i}=e,l=t6(na,n);return ta(),(0,c.jsx)(c.Fragment,{children:(0,c.jsx)(ez,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:a,children:(0,c.jsx)(eO,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionPresent?l.descriptionId:void 0,"aria-labelledby":l.titlePresent?l.titleId:void 0,"data-state":nu(l.open),...i,ref:t,deferPointerDownOutside:!0,onDismiss:()=>l.onOpenChange(!1)})})})},"DialogContentImpl"));function nu(e){return e?"open":"closed"}t0(nu,"getState");var nd='[cmdk-group=""]',nf='[cmdk-group-items=""]',nm='[cmdk-item=""]',np=`${nm}:not([aria-disabled="true"])`,nh="cmdk-item-select",nv="data-value",ng=(e,t,n)=>{var r;return r=e,function e(t,n,r,o,a,i,l){if(i===n.length)return a===t.length?1:.99;var s=`${a},${i}`;if(void 0!==l[s])return l[s];for(var c,u,d,f,m=o.charAt(i),p=r.indexOf(m,a),h=0;p>=0;)(c=e(t,n,r,o,p+1,i+1,l))>h&&(p===a?c*=1:S.test(t.charAt(p-1))?(c*=.8,(d=t.slice(a,p-1).match(N))&&a>0&&(c*=Math.pow(.999,d.length))):C.test(t.charAt(p-1))?(c*=.9,(f=t.slice(a,p-1).match(A))&&a>0&&(c*=Math.pow(.999,f.length))):(c*=.17,a>0&&(c*=Math.pow(.999,p-a))),t.charAt(p)!==n.charAt(i)&&(c*=.9999)),(c<.1&&r.charAt(p-1)===o.charAt(i+1)||o.charAt(i+1)===o.charAt(i)&&r.charAt(p-1)!==o.charAt(i))&&.1*(u=e(t,n,r,o,p+1,i+2,l))>c&&(c=.1*u),c>h&&(h=c),p=r.indexOf(m,p+1);return l[s]=h,h}(r=n&&n.length>0?`${r+" "+n.join(" ")}`:r,t,R(r),R(t),0,0,{})},nx=E.createContext(void 0),nb=E.createContext(void 0),ny=E.createContext(void 0),nw=E.forwardRef((e,t)=>{let n=nP(()=>{var t,n;return{search:"",value:null!=(n=null!=(t=e.value)?t:e.defaultValue)?n:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),r=nP(()=>new Set),o=nP(()=>new Map),a=nP(()=>new Map),i=nP(()=>new Set),l=nR(e),{label:s,children:c,value:u,onValueChange:d,filter:f,shouldFilter:m,loop:p,disablePointerSelection:h=!1,vimBindings:v=!0,...g}=e,x=Y(),b=Y(),y=Y(),w=E.useRef(null),j=nI();nO(()=>{if(void 0!==u){let e=u.trim();n.current.value=e,k.emit()}},[u]),nO(()=>{j(6,O)},[]);let k=E.useMemo(()=>({subscribe:e=>(i.current.add(e),()=>i.current.delete(e)),snapshot:()=>n.current,setState:(e,t,r)=>{var o,a,i,s;if(!Object.is(n.current[e],t)){if(n.current[e]=t,"search"===e)R(),C(),j(1,A);else if("value"===e){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let e=document.getElementById(y);e?e.focus():null==(o=document.getElementById(x))||o.focus()}if(j(7,()=>{var e;n.current.selectedItemId=null==(e=P())?void 0:e.id,k.emit()}),r||j(5,O),(null==(a=l.current)?void 0:a.value)!==void 0){null==(s=(i=l.current).onValueChange)||s.call(i,null!=t?t:"");return}}k.emit()}},emit:()=>{i.current.forEach(e=>e())}}),[]),S=E.useMemo(()=>({value:(e,t,r)=>{var o;t!==(null==(o=a.current.get(e))?void 0:o.value)&&(a.current.set(e,{value:t,keywords:r}),n.current.filtered.items.set(e,N(t,r)),j(2,()=>{C(),k.emit()}))},item:(e,t)=>(r.current.add(e),t&&(o.current.has(t)?o.current.get(t).add(e):o.current.set(t,new Set([e]))),j(3,()=>{R(),C(),n.current.value||A(),k.emit()}),()=>{a.current.delete(e),r.current.delete(e),n.current.filtered.items.delete(e);let t=P();j(4,()=>{R(),(null==t?void 0:t.getAttribute("id"))===e&&A(),k.emit()})}),group:e=>(o.current.has(e)||o.current.set(e,new Set),()=>{a.current.delete(e),o.current.delete(e)}),filter:()=>l.current.shouldFilter,label:s||e["aria-label"],getDisablePointerSelection:()=>l.current.disablePointerSelection,listId:x,inputId:y,labelId:b,listInnerRef:w}),[]);function N(e,t){var r,o;let a=null!=(o=null==(r=l.current)?void 0:r.filter)?o:ng;return e?a(e,n.current.search,t):0}function C(){if(!n.current.search||!1===l.current.shouldFilter)return;let e=n.current.filtered.items,t=[];n.current.filtered.groups.forEach(n=>{let r=o.current.get(n),a=0;r.forEach(t=>{a=Math.max(e.get(t),a)}),t.push([n,a])});let r=w.current;M().sort((t,n)=>{var r,o;let a=t.getAttribute("id"),i=n.getAttribute("id");return(null!=(r=e.get(i))?r:0)-(null!=(o=e.get(a))?o:0)}).forEach(e=>{let t=e.closest(nf);t?t.appendChild(e.parentElement===t?e:e.closest(`${nf} > *`)):r.appendChild(e.parentElement===r?e:e.closest(`${nf} > *`))}),t.sort((e,t)=>t[1]-e[1]).forEach(e=>{var t;let n=null==(t=w.current)?void 0:t.querySelector(`${nd}[${nv}="${encodeURIComponent(e[0])}"]`);null==n||n.parentElement.appendChild(n)})}function A(){let e=M().find(e=>"true"!==e.getAttribute("aria-disabled")),t=null==e?void 0:e.getAttribute(nv);k.setState("value",t||void 0)}function R(){var e,t,i,s;if(!n.current.search||!1===l.current.shouldFilter){n.current.filtered.count=r.current.size;return}n.current.filtered.groups=new Set;let c=0;for(let o of r.current){let r=N(null!=(t=null==(e=a.current.get(o))?void 0:e.value)?t:"",null!=(s=null==(i=a.current.get(o))?void 0:i.keywords)?s:[]);n.current.filtered.items.set(o,r),r>0&&c++}for(let[e,t]of o.current)for(let r of t)if(n.current.filtered.items.get(r)>0){n.current.filtered.groups.add(e);break}n.current.filtered.count=c}function O(){var e,t,n;let r=P();r&&((null==(e=r.parentElement)?void 0:e.firstChild)===r&&(null==(n=null==(t=r.closest(nd))?void 0:t.querySelector('[cmdk-group-heading=""]'))||n.scrollIntoView({block:"nearest"})),r.scrollIntoView({block:"nearest"}))}function P(){var e;return null==(e=w.current)?void 0:e.querySelector(`${nm}[aria-selected="true"]`)}function M(){var e;return Array.from((null==(e=w.current)?void 0:e.querySelectorAll(np))||[])}function D(e){let t=M()[e];t&&k.setState("value",t.getAttribute(nv))}function I(e){var t;let n=P(),r=M(),o=r.findIndex(e=>e===n),a=r[o+e];null!=(t=l.current)&&t.loop&&(a=o+e<0?r[r.length-1]:o+e===r.length?r[0]:r[o+e]),a&&k.setState("value",a.getAttribute(nv))}function T(e){let t=P(),n=null==t?void 0:t.closest(nd),r;for(;n&&!r;)r=null==(n=e>0?function(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}(n,nd):function(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}(n,nd))?void 0:n.querySelector(np);r?k.setState("value",r.getAttribute(nv)):I(e)}let L=()=>D(M().length-1),_=e=>{e.preventDefault(),e.metaKey?L():e.altKey?T(1):I(1)},F=e=>{e.preventDefault(),e.metaKey?D(0):e.altKey?T(-1):I(-1)};return E.createElement(ej.div,{ref:t,tabIndex:-1,...g,"cmdk-root":"",onKeyDown:e=>{var t;null==(t=g.onKeyDown)||t.call(g,e);let n=e.nativeEvent.isComposing||229===e.keyCode;if(!(e.defaultPrevented||n))switch(e.key){case"n":case"j":v&&e.ctrlKey&&_(e);break;case"ArrowDown":_(e);break;case"p":case"k":v&&e.ctrlKey&&F(e);break;case"ArrowUp":F(e);break;case"Home":e.preventDefault(),D(0);break;case"End":e.preventDefault(),L();break;case"Enter":{e.preventDefault();let t=P();if(t){let e=new Event(nh);t.dispatchEvent(e)}}}}},E.createElement("label",{"cmdk-label":"",htmlFor:S.inputId,id:S.labelId,style:nL},s),nT(e,e=>E.createElement(nb.Provider,{value:k},E.createElement(nx.Provider,{value:S},e))))}),nE=E.forwardRef((e,t)=>{var n,r;let o=Y(),a=E.useRef(null),i=E.useContext(ny),l=E.useContext(nx),s=nR(e),c=null!=(r=null==(n=s.current)?void 0:n.forceMount)?r:null==i?void 0:i.forceMount;nO(()=>{if(!c)return l.item(o,null==i?void 0:i.id)},[c]);let u=nD(o,a,[e.value,e.children,a],e.keywords),d=E.useContext(nb),f=nM(e=>e.value&&e.value===u.current),m=nM(e=>!!c||!1===l.filter()||!e.search||e.filtered.items.get(o)>0);function p(){var e,t;h(),null==(t=(e=s.current).onSelect)||t.call(e,u.current)}function h(){d.setState("value",u.current,!0)}if(E.useEffect(()=>{let t=a.current;if(!(!t||e.disabled))return t.addEventListener(nh,p),()=>t.removeEventListener(nh,p)},[m,e.onSelect,e.disabled]),!m)return null;let{disabled:v,value:g,onSelect:x,forceMount:b,keywords:y,...w}=e;return E.createElement(ej.div,{ref:$(a,t),...w,id:o,"cmdk-item":"",role:"option","aria-disabled":!!v,"aria-selected":!!f,"data-disabled":!!v,"data-selected":!!f,onPointerMove:v||l.getDisablePointerSelection()?void 0:h,onClick:v?void 0:p},e.children)}),nj=E.forwardRef((e,t)=>{let{heading:n,children:r,forceMount:o,...a}=e,i=Y(),l=E.useRef(null),s=E.useRef(null),c=Y(),u=E.useContext(nx),d=nM(e=>!!o||!1===u.filter()||!e.search||e.filtered.groups.has(i));nO(()=>u.group(i),[]),nD(i,l,[e.value,e.heading,s]);let f=E.useMemo(()=>({id:i,forceMount:o}),[o]);return E.createElement(ej.div,{ref:$(l,t),...a,"cmdk-group":"",role:"presentation",hidden:!d||void 0},n&&E.createElement("div",{ref:s,"cmdk-group-heading":"","aria-hidden":!0,id:c},n),nT(e,e=>E.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":n?c:void 0},E.createElement(ny.Provider,{value:f},e))))}),nk=E.forwardRef((e,t)=>{let{alwaysRender:n,...r}=e,o=E.useRef(null),a=nM(e=>!e.search);return n||a?E.createElement(ej.div,{ref:$(o,t),...r,"cmdk-separator":"",role:"separator"}):null}),nS=E.forwardRef((e,t)=>{let{onValueChange:n,...r}=e,o=null!=e.value,a=E.useContext(nb),i=nM(e=>e.search),l=nM(e=>e.selectedItemId),s=E.useContext(nx);return E.useEffect(()=>{null!=e.value&&a.setState("search",e.value)},[e.value]),E.createElement(ej.input,{ref:t,...r,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":s.listId,"aria-labelledby":s.labelId,"aria-activedescendant":l,id:s.inputId,type:"text",value:o?e.value:i,onChange:e=>{o||a.setState("search",e.target.value),null==n||n(e.target.value)}})}),nN=E.forwardRef((e,t)=>{let{children:n,label:r="Suggestions",...o}=e,a=E.useRef(null),i=E.useRef(null),l=nM(e=>e.selectedItemId),s=E.useContext(nx);return E.useEffect(()=>{if(i.current&&a.current){let e=i.current,t=a.current,n,r=new ResizeObserver(()=>{n=requestAnimationFrame(()=>{let n=e.offsetHeight;t.style.setProperty("--cmdk-list-height",n.toFixed(1)+"px")})});return r.observe(e),()=>{cancelAnimationFrame(n),r.unobserve(e)}}},[]),E.createElement(ej.div,{ref:$(a,t),...o,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":l,"aria-label":r,id:s.listId},nT(e,e=>E.createElement("div",{ref:$(i,s.listInnerRef),"cmdk-list-sizer":""},e)))}),nC=E.forwardRef((e,t)=>{let{open:n,onOpenChange:r,overlayClassName:o,contentClassName:a,container:i,...l}=e;return E.createElement(t9,{open:n,onOpenChange:r},E.createElement(ne,{container:i},E.createElement(nn,{"cmdk-overlay":"",className:o}),E.createElement(ni,{"aria-label":e.label,"cmdk-dialog":"",className:a},E.createElement(nw,{ref:t,...l}))))}),nA=Object.assign(nw,{List:nN,Item:nE,Input:nS,Group:nj,Separator:nk,Dialog:nC,Empty:E.forwardRef((e,t)=>nM(e=>0===e.filtered.count)?E.createElement(ej.div,{ref:t,...e,"cmdk-empty":"",role:"presentation"}):null),Loading:E.forwardRef((e,t)=>{let{progress:n,children:r,label:o="Loading...",...a}=e;return E.createElement(ej.div,{ref:t,...a,"cmdk-loading":"",role:"progressbar","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":o},nT(e,e=>E.createElement("div",{"aria-hidden":!0},e)))})});function nR(e){let t=E.useRef(e);return nO(()=>{t.current=e}),t}var nO="u"<typeof window?E.useEffect:E.useLayoutEffect;function nP(e){let t=E.useRef();return void 0===t.current&&(t.current=e()),t}function nM(e){let t=E.useContext(nb),n=()=>e(t.snapshot());return E.useSyncExternalStore(t.subscribe,n,n)}function nD(e,t,n,r=[]){let o=E.useRef(),a=E.useContext(nx);return nO(()=>{var i;let l=(()=>{var e;for(let t of n){if("string"==typeof t)return t.trim();if("object"==typeof t&&"current"in t)return t.current?null==(e=t.current.textContent)?void 0:e.trim():o.current}})(),s=r.map(e=>e.trim());a.value(e,l,s),null==(i=t.current)||i.setAttribute(nv,l),o.current=l}),o}var nI=()=>{let[e,t]=E.useState(),n=nP(()=>new Map);return nO(()=>{n.current.forEach(e=>e()),n.current=new Map},[e]),(e,r)=>{n.current.set(e,r),t({})}};function nT({asChild:e,children:t},n){let r;return e&&E.isValidElement(t)?E.cloneElement("function"==typeof(r=t.type)?r(t.props):"render"in r?r.render(t.props):t,{ref:t.ref},n(t.props.children)):n(t)}var nL={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"},n_=e.i(593698),nF=e.i(630299),nF=nF;e.i(630374);var n$=e.i(225913),nB=e.i(23750),nW=e.i(184762),nz=e.i(647163);function nK({className:e,...t}){return(0,c.jsx)("div",{"data-slot":"input-group",role:"group",className:(0,nz.cn)("group/input-group relative flex h-8 w-full min-w-0 items-center rounded-lg border border-input transition-colors outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-disabled:bg-input/50 has-disabled:opacity-50 has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:bg-input/30 dark:has-disabled:bg-input/80 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5",e),...t})}let nU=(0,n$.cva)("flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4",{variants:{align:{"inline-start":"order-first pl-2 has-[>button]:ml-[-0.3rem] has-[>kbd]:ml-[-0.15rem]","inline-end":"order-last pr-2 has-[>button]:mr-[-0.3rem] has-[>kbd]:mr-[-0.15rem]","block-start":"order-first w-full justify-start px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2","block-end":"order-last w-full justify-start px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2"}},defaultVariants:{align:"inline-start"}});function nV({className:e,align:t="inline-start",...n}){return(0,c.jsx)("div",{role:"group","data-slot":"input-group-addon","data-align":t,className:(0,nz.cn)(nU({align:t}),e),onClick:e=>{e.target.closest("button")||e.currentTarget.parentElement?.querySelector("input")?.focus()},...n})}function nq({className:e,...t}){return(0,c.jsx)("span",{className:(0,nz.cn)("flex items-center gap-2 text-sm text-muted-foreground [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4",e),...t})}function nH({className:e,...t}){return(0,c.jsx)(nB.Input,{"data-slot":"input-group-control",className:(0,nz.cn)("flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent",e),...t})}function nX({className:e,...t}){return(0,c.jsx)(nA,{"data-slot":"command",className:(0,nz.cn)("flex size-full flex-col overflow-hidden rounded-xl! bg-popover p-1 text-popover-foreground",e),...t})}function nY({className:e,...t}){return(0,c.jsx)("div",{"data-slot":"command-input-wrapper",className:"p-1 pb-0",children:(0,c.jsxs)(nK,{className:"h-8! rounded-lg! border-input/30 bg-input/30 shadow-none! *:data-[slot=input-group-addon]:pl-2!",children:[(0,c.jsx)(nA.Input,{"data-slot":"command-input",className:(0,nz.cn)("w-full text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50",e),...t}),(0,c.jsx)(nV,{children:(0,c.jsx)(nF.default,{className:"size-4 shrink-0 opacity-50"})})]})})}function nG({className:e,...t}){return(0,c.jsx)(nA.List,{"data-slot":"command-list",className:(0,nz.cn)("no-scrollbar max-h-72 scroll-py-1 overflow-x-hidden overflow-y-auto outline-none",e),...t})}function nZ({className:e,...t}){return(0,c.jsx)(nA.Empty,{"data-slot":"command-empty",className:(0,nz.cn)("py-6 text-center text-sm",e),...t})}function nJ({className:e,...t}){return(0,c.jsx)(nA.Group,{"data-slot":"command-group",className:(0,nz.cn)("overflow-hidden p-1 text-foreground **:[[cmdk-group-heading]]:px-2 **:[[cmdk-group-heading]]:py-1.5 **:[[cmdk-group-heading]]:text-xs **:[[cmdk-group-heading]]:font-medium **:[[cmdk-group-heading]]:text-muted-foreground",e),...t})}function nQ({className:e,children:t,...n}){return(0,c.jsxs)(nA.Item,{"data-slot":"command-item",className:(0,nz.cn)("group/command-item relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none in-data-[slot=dialog-content]:rounded-lg! data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-selected:bg-muted data-selected:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-selected:*:[svg]:text-foreground",e),...n,children:[t,(0,c.jsx)(n_.CheckIcon,{className:"ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100"})]})}(0,n$.cva)("flex items-center gap-2 text-sm shadow-none",{variants:{size:{xs:"h-6 gap-1 rounded-[calc(var(--radius)-3px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5",sm:"","icon-xs":"size-6 rounded-[calc(var(--radius)-3px)] p-0 has-[>svg]:p-0","icon-sm":"size-8 p-0 has-[>svg]:p-0"}},defaultVariants:{size:"xs"}});var n0=e.i(917162),n1=e.i(660302),n2=e.i(671428),n5=e.i(319036),n3=e.i(728231),n6=e.i(41533),n9=e.i(146538),n4=e.i(265402),n8=e.i(95187);let n7=(0,n8.createServerReference)("7febfcb3c8d39837a9595f565a8883fd86e8539b2d",n8.callServer,void 0,n8.findSourceMapURL,"createBotAction");var re=e.i(408844);let rt=(0,n8.createServerReference)("7f4a9f4e5863d6a13516a9e5035d74766da5e25afb",n8.callServer,void 0,n8.findSourceMapURL,"deleteBotAction"),rn=(0,n8.createServerReference)("7fffed296a1f2c7bae9eddb18e10e5fc1641cd9562",n8.callServer,void 0,n8.findSourceMapURL,"setBotMemoryOnAction"),rr=(0,n8.createServerReference)("7fb048e5653548c09e2dcf44c15b62601887477621",n8.callServer,void 0,n8.findSourceMapURL,"updateBotAction");var ro=e.i(451888),ra=e.i(463625),ri=e.i(635963),rl=e.i(638475);function rs({color:e,background:t,label:n,picked:r,onPick:o}){return(0,c.jsx)("button",{type:"button",onClick:o,"aria-label":n??e??"Follow the theme",style:t?{background:t}:e?{backgroundColor:e}:void 0,className:(0,nz.cn)("aspect-square w-5 min-w-0 shrink rounded-full outline-none transition-transform hover:scale-110 focus-visible:ring-3 focus-visible:ring-ring/50",!e&&!t&&"bg-foreground",r&&"ring-2 ring-foreground/40 ring-offset-2 ring-offset-background")})}var rc=e.i(864723);function ru({color:e,themePicked:t,onTheme:n,onPick:r,paint:o,onPaint:a}){return(0,c.jsxs)("div",{className:"flex w-full items-center justify-center gap-1.5 px-2",children:[(0,c.jsx)(rs,{color:null,picked:t,onPick:n}),rc.MARK_PALETTE.map(t=>(0,c.jsx)(rs,{color:t,picked:e===t,onPick:()=>r(t)},t)),a&&rc.MARK_PAINT_IDS.map(e=>(0,c.jsx)(rs,{color:null,background:(0,rc.paintSwatch)(e),label:rc.MARK_PAINTS[e].label,picked:o===e,onPick:()=>a(e)},e))]})}var rd=e.i(992112),rf=e.i(895836),rm=e.i(989409),rp=e.i(621285),rh=e.i(616172),rv=e.i(802828),rg=e.i(172711),rx=e.i(333999),rb=e.i(245629),ry=e.i(981203),rw=e.i(609856),rE=e.i(283653);let rj=" new";function rk({bot:e,job:t,active:n,onPick:r}){var o,a,i;let l=(o=t,a=e.lastJobAt,i=e.disabled,o?.status==="waiting"?{text:"waiting on you",shine:!0,amber:!0}:o?.status==="running"?{text:`working \xb7 ${o.label}`,shine:!0}:i?{text:"off"}:o?{text:`idle \xb7 last job ${rS(o.updatedAt)}`}:a?{text:`idle \xb7 last job ${rS(a)}`}:{text:"idle · no jobs yet"});return(0,c.jsxs)("button",{type:"button",onClick:r,className:(0,nz.cn)("mx-2 flex items-center gap-2.5 rounded-md px-2 py-2 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",n?rf.PICKED_ROW:"hover:bg-muted/60"),children:[(0,c.jsx)(ri.BotMark,{size:32,...rM(e.name,e.icon),state:t?.status==="running"?"thinking":"idle",notify:t?.status==="waiting",crossed:t?.status==="cancelled",className:(0,nz.cn)("shrink-0",e.disabled&&"opacity-45")}),(0,c.jsxs)("span",{className:(0,nz.cn)("min-w-0 flex-1 space-y-0.5",e.disabled&&"opacity-45"),children:[(0,c.jsx)("span",{className:(0,nz.cn)("block truncate text-[13px]",n?"font-medium":"text-foreground/90"),children:e.name}),l.shine?(0,c.jsx)(n1.ShinyText,{text:l.text,tone:l.amber?"waiting":"muted",className:"block truncate font-mono text-[11px] leading-4"}):(0,c.jsx)("span",{className:"block truncate font-mono text-[11px] leading-4 text-muted-foreground",children:l.text})]})]})}function rS(e){let t=(0,rb.shortAgo)(e);return"now"===t?"just now":`${t} ago`}function rN(e,t,n){let[r,o]=(0,E.useState)(new Set),[a,i]=(0,rw.useServerAction)(re.createSeedBotsAction,{onOk:e=>{(0,rE.revalidate)(j.queryKey.bot),n(e.created[0]??null)}}),{data:l}=(0,rE.useServerRoute)(j.queryKey.config),s=ra.BOT_SEEDS.filter(t=>!e.has(t.name)),c=s.filter(e=>!r.has(e.name));return{isSet:e=>(0,rd.isConfigSet)(l,e),adding:i,addable:s,wanted:c,ticked:t=>e.has(t.name)||!r.has(t.name),toggle:e=>o(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),submit:()=>a(c.map(e=>({name:e.name,icon:t[ra.BOT_SEEDS.indexOf(e)]})))}}function rC({have:e,faces:t,picks:n}){return(0,c.jsx)("div",{className:"flex flex-col gap-2",children:ra.BOT_SEEDS.map((r,o)=>{var a;let i,l=e.has(r.name),s=n.ticked(r),d=(a=n.isSet,(i=(r.requires??[]).filter(e=>!a(rd.MEDIA_MODEL_KEYS[e]))).length?`needs ${i.map(rd.mediaModelWords).join(" and ")}`:null);return(0,c.jsx)("div",{className:(0,nz.cn)("rounded-xl ring-1 transition-colors",l?"opacity-45 ring-border/60":s?(0,nz.cn)(rf.PICKED_ROW,"ring-brand"):"ring-border/60"),children:(0,c.jsxs)("button",{type:"button",disabled:l||n.adding,"aria-pressed":s,onClick:()=>n.toggle(r.name),className:"flex w-full items-center gap-3 rounded-xl px-3.5 py-2.5 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-default",children:[(0,c.jsx)(ri.BotMark,{size:28,...rM(r.name,t[o]),className:(0,nz.cn)("shrink-0 transition-opacity",!s&&"opacity-35")}),(0,c.jsxs)("span",{className:"min-w-0 flex-1 space-y-px",children:[(0,c.jsx)("span",{className:"block text-[14px] leading-[18px] font-medium",children:r.name}),(0,c.jsx)("span",{className:"block truncate text-[12px] leading-[17px] text-muted-foreground",children:r.hint})]}),l?(0,c.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground",children:"already added"}):d?(0,c.jsxs)("span",{className:(0,nz.cn)("flex shrink-0 items-center gap-1.5 font-mono text-[11px]",nz.WAITING_INK),children:[(0,c.jsx)(p,{className:"size-3"}),d]}):null,(0,c.jsx)("span",{className:(0,nz.cn)("grid size-5 shrink-0 place-items-center rounded-full transition-colors",s?"bg-brand text-brand-foreground":"ring-1 ring-border/60 ring-inset"),children:s&&(0,c.jsx)(u.Check,{className:"size-3"})})]})},r.name)})})}function rA({picks:e,onCancel:t}){return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(k.Button,{variant:"ghost",onClick:t,children:"Cancel"}),(0,c.jsxs)(k.Button,{loading:e.adding,disabled:0===e.wanted.length,onClick:e.submit,children:[(0,c.jsx)(x.Plus,{}),1===e.wanted.length?`Add ${e.wanted[0].name}`:`Add ${e.wanted.length} bots`]})]})}function rR({have:e,faces:t,onDone:n}){let r=rN(e,t,n);return(0,c.jsxs)("div",{className:"flex min-h-full flex-col",children:[(0,c.jsx)("div",{className:"flex h-11 shrink-0 items-center border-b border-border/60 px-4 font-mono text-[11px] text-muted-foreground",children:"Ready-made"}),(0,c.jsxs)("div",{className:"px-8 pt-7 pb-1",children:[(0,c.jsx)("h3",{className:"text-[17px] font-medium tracking-tight",children:"Bots you can add"}),(0,c.jsx)("p",{className:"mt-1.5 max-w-lg text-[13px] leading-relaxed text-muted-foreground break-keep",children:"Each one is a starting point — rename it, re-prompt it, give it a model of its own. What a bot needs before it can work stands on its row; until then it runs on the app default model."})]}),(0,c.jsx)("div",{className:"px-8 pt-4",children:(0,c.jsx)(rC,{have:e,faces:t,picks:r})}),(0,c.jsxs)("div",{className:"mt-auto flex items-center gap-3 border-t border-border/60 px-8 py-4",children:[(0,c.jsx)("span",{className:"flex-1 font-mono text-[11px] text-muted-foreground",children:0===r.wanted.length?"nothing ticked":`${r.wanted.length} of ${r.addable.length} ticked`}),(0,c.jsx)(rA,{picks:r,onCancel:()=>n(null)})]})]})}function rO({have:e,faces:t,onDone:n}){let r=rN(e,t,n);return(0,c.jsx)(rf.SettingDialogContent,{title:"Bots you can add",description:"Each one is a starting point — rename it, re-prompt it, give it a model of its own. What a bot needs before it can work stands on its row.",footer:(0,c.jsx)(rA,{picks:r,onCancel:()=>n(null)}),children:(0,c.jsx)(rC,{have:e,faces:t,picks:r})})}function rP({missing:e,faces:t,have:n,onDone:r}){return(0,c.jsxs)("button",{type:"button",title:"Ready-made bots","aria-label":`Ready-made bots, ${e.length} on offer`,onClick:()=>n0.notify.component({className:"sm:max-w-xl",renderer:({close:e})=>(0,c.jsx)(rO,{have:n,faces:t,onDone:t=>{e(),r(t)}})}),className:"flex shrink-0 items-center gap-1 rounded-md px-1.5 py-1 text-muted-foreground outline-none transition-colors hover:bg-muted/60 hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,c.jsx)(x.Plus,{className:"size-3 shrink-0"}),e.map((n,r)=>(0,c.jsx)("span",{className:(0,nz.cn)("block",r>0&&"-ml-1.5"),style:{zIndex:e.length-r},children:(0,c.jsx)(ri.BotMark,{size:20,...rM(n.name,t[ra.BOT_SEEDS.indexOf(n)]),notify:!1})},n.name))]})}function rM(e,t){return{seed:e||"bot",color:t?.color,shape:t?.shape,outline:t?.outline,paint:t?.paint}}function rD({bot:e,jobs:t,onDone:n,onDraft:r}){let[o,a]=(0,rx.useObjectState)(()=>({name:e?.name??"",description:e?.description??"",systemPrompt:e?.systemPrompt??"",icon:e?.icon??(0,ro.randomBotIcon)(),provider:e?.provider??null,model:e?.model??"",compactAt:e?.compactAt?String(e.compactAt/1e3):"",toolIds:e?.tools.map(e=>e.id)??[]})),{name:i,description:l,systemPrompt:s,icon:u,provider:d,model:f,compactAt:m,toolIds:p}=o,[h,v]=(0,E.useState)(!!e?.compactAt),g=(0,rE.useServerRoute)(j.queryKey.modelCatalog),x=(e,t)=>e&&t.trim()?(0,n4.contextWindowOf)(e,t.trim(),g.data):null,y=x(d,f),w=d&&f.trim()?r$(y)/1e3:null,S=h?m:null===w?"":String(w),[N]=(0,rw.useServerAction)(rr,{onOk:()=>(0,rE.revalidate)(j.queryKey.bot)}),C=t=>{e&&N(e.name,t)},[A,R,,O]=(0,rw.useServerAction)(n7,{errorMessage:!1,okMessage:"Bot created",onOk:e=>{(0,rE.revalidate)(j.queryKey.bot),n(e.name)}}),[P,M]=(0,rw.useServerAction)(rt,{okMessage:"Bot deleted",onOk:()=>{(0,rE.revalidate)(j.queryKey.bot),n(null)}}),D=i.trim()&&l.trim()&&d&&f.trim()&&!R,I=[!i.trim()&&"a name",!l.trim()&&"a description",!(d&&f.trim())&&"a model"].filter(e=>!!e),T=()=>{D&&d&&A({name:i.trim(),description:l.trim(),systemPrompt:s.trim()||void 0,icon:u,provider:d,model:f.trim(),compactAt:h?rF(m):r$(y),toolIds:p})},L=(0,E.useRef)(T);L.current=T;let _=I.join(",");(0,E.useEffect)(()=>{r?.({missing:_?_.split(","):[],creating:R,submit:()=>L.current()})},[r,_,R]),(0,E.useEffect)(()=>()=>r?.(null),[r]);let F=async()=>{!e||await n0.notify.confirm({title:`Delete ${e.name}?`,description:"Thursday can no longer hand work to it.",okText:"Delete",destructive:!0})&&P(e.name)};return(0,c.jsxs)("div",{className:"flex min-h-full flex-col",children:[(0,c.jsxs)("div",{className:"flex h-11 shrink-0 items-center gap-2 border-b border-border/60 px-4",children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px] text-muted-foreground",children:e?e.name:"New bot"}),e&&(0,c.jsxs)(c.Fragment,{children:[e.disabled&&(0,c.jsx)("span",{className:"font-mono text-[10px] text-muted-foreground",children:"off"}),(0,c.jsxs)(n3.Tooltip,{children:[(0,c.jsx)(n3.TooltipTrigger,{render:(0,c.jsx)("span",{className:"mr-1 flex shrink-0"}),children:(0,c.jsx)(n5.Switch,{checked:!e.disabled,onCheckedChange:e=>C({disabled:!e}),"aria-label":`${e.name} on or off`})}),(0,c.jsx)(n3.TooltipContent,{side:"bottom",children:"Thursday can hand it work"})]}),(0,c.jsx)(k.Button,{size:"icon-sm",variant:"ghost",loading:M,"aria-label":"Delete this bot",onClick:F,className:"text-muted-foreground hover:text-destructive",children:(0,c.jsx)(b.Trash2,{})})]})]}),(0,c.jsxs)("div",{className:"flex-1 space-y-5 p-6",children:[(0,c.jsx)(rz,{name:i,icon:u,onChange:e=>{a({icon:e}),C({icon:e})}}),(0,c.jsxs)(rB,{label:"Name",children:[e?(0,c.jsx)("p",{className:"truncate text-sm leading-8 font-medium",children:e.name}):(0,c.jsx)(nB.Input,{value:i,onChange:e=>a({name:e.target.value}),placeholder:"researcher",spellCheck:!1,maxLength:ry.COMMON_VALIDATE.name.max,autoFocus:!0}),(0,c.jsx)("p",{className:"text-xs text-muted-foreground",children:e?`What ${n6.APP_NAME} calls it when she hands it work. Fixed once the bot is made.`:`What ${n6.APP_NAME} calls it when she hands it work. Up to ${ry.COMMON_VALIDATE.name.max} characters, and it can’t be renamed later.`})]}),(0,c.jsxs)(rB,{label:"Description",children:[(0,c.jsx)(nB.Input,{value:l,onChange:e=>a({description:e.target.value}),onBlur:()=>{let t=l.trim();e&&t&&t!==e.description&&C({description:t})},placeholder:"Searches the web and answers",maxLength:ry.COMMON_VALIDATE.description.max}),(0,c.jsxs)("p",{className:"text-xs text-muted-foreground",children:["The one line ",n6.APP_NAME," and the other bots read when they decide who gets a job."]})]}),(0,c.jsx)(rB,{label:"Runs on",children:(0,c.jsx)(n9.ModelPicker,{provider:d,model:f,onChange:e=>{a({provider:e.provider,model:e.model}),v(!1),e.model&&C({...e,compactAt:r$(x(e.provider,e.model))})},onUnset:()=>{a({provider:null,model:""}),v(!1),C({provider:null,model:null,compactAt:null})}})}),(0,c.jsxs)(rB,{label:"Compacts at",children:[(0,c.jsxs)(nK,{children:[(0,c.jsx)(nH,{inputMode:"decimal",value:S,placeholder:f.trim()?"":"Pick a model first",onChange:e=>{v(!0),a({compactAt:e.target.value})},onBlur:()=>{if(!h)return;let e=rF(m);null===e?v(!1):a({compactAt:String(e/1e3)}),C({compactAt:e??(f.trim()?r$(y):null)})}}),(0,c.jsx)(nV,{align:"inline-end",children:(0,c.jsx)(nq,{children:"k tokens"})})]}),(0,c.jsx)("p",{className:"text-xs text-muted-foreground",children:function(e){if(!e.model)return"Filled in from the model once one is picked.";let t=r$(e.window),n="A job summarizes itself here and carries on.";return null!==e.shown&&e.shown!==t?`Set by hand. Picking a model fills in its own again. ${n}`:e.window?`${Math.round(100*n6.BOT_RUN.compactHeadroom)}% of this model's ${(e.window/1e3).toLocaleString()}k context window. ${n}`:`This model's context window is unknown, so the default is filled in. ${n}`}({model:f.trim(),window:y,shown:rF(S)})})]}),(0,c.jsx)(rB,{label:"Tools",children:(0,c.jsx)(rK,{selected:p,onChange:e=>{a({toolIds:e}),C({toolIds:e})}})}),(0,c.jsxs)(rB,{label:"Prompt",children:[(0,c.jsx)(nW.Textarea,{value:s,onChange:e=>a({systemPrompt:e.target.value}),onBlur:()=>{let t=s.trim();e&&t!==(e.systemPrompt??"")&&C({systemPrompt:t})},placeholder:`How it should work (optional). e.g.
2
+ Search the web, answer with a short summary and links.`,maxLength:ry.COMMON_VALIDATE.prompt.max,className:"max-h-48 min-h-24 resize-none overflow-y-auto text-sm"}),s.length>0&&(0,c.jsxs)("p",{className:"text-right font-mono text-[10px] text-muted-foreground",children:[s.length,"/",ry.COMMON_VALIDATE.prompt.max]})]}),e&&(0,c.jsx)(rI,{bot:e.name}),e&&(0,c.jsx)(rW,{jobs:t}),O&&(0,c.jsx)("p",{className:"font-mono text-xs text-destructive",children:O})]})]})}function rI({bot:e}){let t=j.queryKey.botMemoryFiles(e),{data:n,isLoading:r}=(0,rE.useServerRoute)(t),[o,a]=(0,E.useState)(null),[i]=(0,rw.useServerAction)(rg.openFileAction),[l,s]=(0,rw.useServerAction)(rv.deleteWorkspaceFileAction,{okMessage:"File deleted",onOk:()=>{a(null),(0,rE.revalidate)(t),(0,rE.revalidate)(j.queryKey.workspace)}}),u=async t=>{await n0.notify.confirm({title:`Delete ${t.file}?`,description:`It is deleted from disk for good, and ${e}'s next job starts without it.`,okText:"Delete",destructive:!0})&&l(t.path)};return(0,c.jsxs)("div",{className:"pt-1",children:[(0,c.jsxs)("div",{className:"flex h-6 items-center",children:[(0,c.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:"Memory"}),(0,c.jsx)("span",{className:"flex-1"}),n&&n.total>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("span",{className:"pr-1 font-mono text-[11px] text-muted-foreground tabular-nums",children:1===n.total?"1 file":`${n.total} files`}),(0,c.jsxs)("button",{type:"button",title:"Show in the file manager",onClick:()=>i(n.folder),className:"flex items-center gap-1 rounded-md px-1.5 py-1 font-mono text-[11px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)(h.FolderOpen,{className:"size-3"}),"Folder"]})]})]}),r?(0,c.jsx)("div",{className:"flex h-9 items-center border-t border-border/60",children:(0,c.jsx)(n2.Skeleton,{className:"h-3 w-56"})}):n?.entries.length?n.entries.map(e=>{let t=o===e.path;return(0,c.jsxs)("div",{className:"border-t border-border/60",children:[(0,c.jsxs)("button",{type:"button","aria-expanded":t,onClick:()=>a(t?null:e.path),className:"flex h-9 w-full items-center gap-3 text-left text-[13px] outline-none focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)("span",{className:(0,nz.cn)("min-w-0 flex-1 truncate",t&&"font-medium"),children:e.line||e.file}),(0,c.jsx)("span",{className:"w-36 shrink-0 truncate font-mono text-[11px] text-muted-foreground",children:e.file}),(0,c.jsx)("span",{className:"w-28 shrink-0 text-right font-mono text-[11px] text-muted-foreground tabular-nums",children:(0,rb.whenOf)(e.at)}),(0,c.jsx)(d.ChevronRight,{className:(0,nz.cn)("size-3 shrink-0 text-muted-foreground transition-transform",t&&"rotate-90")})]}),t&&(0,c.jsxs)("div",{className:"flex items-start gap-3",children:[(0,c.jsx)("div",{className:"max-h-96 min-w-0 flex-1 overflow-y-auto",children:(0,c.jsx)(rT,{path:e.path})}),(0,c.jsx)(k.Button,{size:"icon-sm",variant:"ghost","aria-label":`Delete ${e.file}`,loading:s,onClick:()=>u(e),className:"text-muted-foreground hover:text-destructive",children:(0,c.jsx)(b.Trash2,{})})]})]},e.path)}):(0,c.jsx)("p",{className:"py-2 text-[13px] text-muted-foreground",children:"Nothing kept yet."})]})}function rT({path:e}){let{content:t,failure:n,truncated:r}=(0,rp.useFileText)(e);if(n)return(0,c.jsx)("p",{className:"pb-3 font-mono text-xs text-destructive",children:n});if(null===t)return(0,c.jsxs)("div",{className:"space-y-2 pb-3",children:[(0,c.jsx)(n2.Skeleton,{className:"h-4 w-5/6"}),(0,c.jsx)(n2.Skeleton,{className:"h-4 w-2/3"})]});let o=(0,rh.viewKindOf)(e);return(0,c.jsx)(rp.FileBody,{kind:o,content:"markdown"===o?rL(t):t,truncated:r,where:"inline"})}let rL=e=>e.replace(/^---\n[\s\S]*?\n---\n/,"").replace(/^\s*#[^\n]*\n?/,"");function r_({bot:e,draft:t=null}){let{data:n,mutate:r}=(0,rE.useServerRoute)(j.queryKey.botMemory),[o]=(0,rw.useServerAction)(rn,{onOk:()=>(0,rE.revalidate)(j.queryKey.botMemory)}),a=e?e.tokens.input+e.tokens.output:0;return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(rf.SettingRailNote,{children:e?(0,c.jsxs)("span",{className:"font-mono text-[11px]",children:[e.name,e.disabled&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),"off"]}),(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),(0,c.jsx)("span",{title:`in ${(0,nz.formatCount)(e.tokens.input)} \xb7 out ${(0,nz.formatCount)(e.tokens.output)}`,children:a>0?`${(0,nz.formatCount)(a)} tokens`:"no tokens yet"}),(0,c.jsx)("span",{className:"px-1.5 opacity-50",children:"·"}),"since ",(0,rb.whenOf)(e.createdAt)]}):t?.missing.length?`Needs ${t.missing.length>1?`${t.missing.slice(0,-1).join(", ")} and ${t.missing.at(-1)}`:t.missing[0]}`:null}),(0,c.jsx)(rl.KeepWorkingSwitch,{}),(0,c.jsx)("span",{className:"h-4 w-px shrink-0 bg-border"}),(0,c.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground",children:"Bots keep their own memory"}),(0,c.jsx)(n5.Switch,{checked:n??!0,disabled:void 0===n,onCheckedChange:e=>{r(e,!1),o(e)},"aria-label":"Bots keep their own memory"}),t&&(0,c.jsx)(k.Button,{size:"sm",loading:t.creating,disabled:t.missing.length>0,onClick:t.submit,children:"Create bot"})]})}function rF(e){let t=Number(e.replace(/[^0-9.]/g,""));return Number.isFinite(t)&&t>0?Math.round(1e3*t):null}let r$=e=>1e3*Math.round((0,n4.compactAtFor)(e)/1e3);function rB({label:e,children:t}){return(0,c.jsxs)("div",{className:"flex gap-3",children:[(0,c.jsx)("span",{className:"w-20 shrink-0 pt-2 font-mono text-xs text-muted-foreground",children:e}),(0,c.jsx)("div",{className:"min-w-0 flex-1 space-y-1.5",children:t})]})}function rW({jobs:e}){return(0,c.jsxs)("div",{className:"pt-1",children:[(0,c.jsxs)("div",{className:"flex h-6 items-center",children:[(0,c.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:"Recent"}),(0,c.jsx)("span",{className:"flex-1"}),(0,c.jsxs)("button",{type:"button",onClick:()=>(0,rm.openSettings)("threads"),className:"flex items-center gap-1 rounded-md px-1.5 py-1 font-mono text-[11px] text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,c.jsx)(g,{className:"size-3"}),"History"]})]}),0===e.length?(0,c.jsx)("p",{className:"py-2 text-[13px] text-muted-foreground",children:"Nothing handed over yet."}):e.map(e=>{let t=function(e){switch(e.status){case"waiting":return{text:"waiting on you",tone:nz.WAITING_INK};case"running":return{text:"working",tone:"text-muted-foreground"};case"cancelled":return{text:"stopped",tone:"text-muted-foreground"};default:return{text:"done",tone:"text-muted-foreground"}}}(e);return(0,c.jsxs)("div",{className:"flex h-9 items-center gap-3 border-t border-border/60 text-[13px]",children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate",children:e.label}),"running"===e.status?(0,c.jsx)(n1.ShinyText,{text:t.text,className:"shrink-0 font-mono text-[11px]"}):(0,c.jsx)("span",{className:(0,nz.cn)("shrink-0 font-mono text-[11px]",t.tone),children:t.text}),(0,c.jsx)("span",{className:"w-28 shrink-0 text-right font-mono text-[11px] text-muted-foreground tabular-nums",children:(0,rb.whenOf)(e.updatedAt)})]},e.id)})]})}function rz({name:e,icon:t,onChange:n}){return(0,c.jsxs)("div",{className:"flex flex-col items-center gap-4 pt-3 pb-2",children:[(0,c.jsx)(ri.BotMark,{size:112,...rM(e,t),className:"shrink-0"}),(0,c.jsx)(ru,{color:t.paint?void 0:t.color,themePicked:!t.paint&&t.color===rc.MARK_SYSTEM,onTheme:()=>n({...t,paint:void 0,color:rc.MARK_SYSTEM}),onPick:e=>n({...t,paint:void 0,color:t.paint||t.color!==e?e:void 0}),paint:t.paint,onPaint:e=>n({...t,paint:t.paint===e?void 0:e})}),(0,c.jsxs)("div",{className:"flex gap-1",children:[rc.MARK_SHAPES.map(e=>(0,c.jsx)("button",{type:"button",onClick:()=>n({...t,shape:t.shape===e?void 0:e}),className:(0,nz.cn)("rounded-md px-2 py-1 font-mono text-[11px] capitalize transition-colors",t.shape===e?"bg-brand text-brand-foreground":"bg-muted text-muted-foreground hover:text-foreground"),children:e},e)),(0,c.jsx)("span",{className:"mx-1 w-px self-stretch bg-border/60"}),(0,c.jsx)("button",{type:"button",onClick:()=>n({...t,outline:!t.outline||void 0}),className:(0,nz.cn)("rounded-md px-2 py-1 font-mono text-[11px] transition-colors",t.outline?"bg-brand text-brand-foreground":"bg-muted text-muted-foreground hover:text-foreground"),children:"outline"})]})]})}function rK({selected:e,onChange:t}){let{data:n=[]}=(0,rE.useServerRoute)(j.queryKey.mcpTools),[r,o]=(0,E.useState)(!1),a=e.length>=ro.MAX_PINNED_TOOLS,i=[...new Set(n.map(e=>e.serverName))],l=e.map(e=>n.find(t=>t.id===e)).filter(e=>!!e),s=r?l:l.slice(0,4),d=l.length-s.length,f=n=>t(e.includes(n)?e.filter(e=>e!==n):[...e,n]);return 0===n.length?(0,c.jsx)("p",{className:"pt-1.5 text-xs text-muted-foreground",children:"Nothing to pin — connect an MCP server first (Settings › Connectors)."}):(0,c.jsxs)("div",{className:"space-y-2",children:[(0,c.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,c.jsx)(k.Button,{size:"icon-sm",variant:r?"secondary":"outline",onClick:()=>o(!r),"aria-label":"Pick tools",className:"border-dashed",children:(0,c.jsx)(y.Wrench,{})}),s.map(e=>(0,c.jsxs)("span",{className:"flex items-center gap-1 rounded-full bg-muted py-1 pr-1.5 pl-2.5 font-mono text-[11px]",children:[e.name,(0,c.jsx)("button",{type:"button","aria-label":`Unpin ${e.name}`,onClick:()=>f(e.id),className:"rounded-full p-0.5 text-muted-foreground transition-colors hover:bg-foreground/10 hover:text-foreground",children:(0,c.jsx)(w.X,{className:"size-3"})})]},e.id)),d>0&&(0,c.jsxs)("button",{type:"button",onClick:()=>o(!0),className:"rounded-full bg-muted px-2.5 py-1 font-mono text-[11px] text-muted-foreground transition-colors hover:text-foreground",children:["+",d]}),0===l.length&&(0,c.jsx)("span",{className:"text-xs text-muted-foreground",children:"Loaded from the start — everything else stays searchable"}),(0,c.jsx)("span",{className:"flex-1"}),(0,c.jsxs)("span",{className:(0,nz.cn)("font-mono text-[11px] text-muted-foreground",a&&"text-foreground"),children:[e.length,"/",ro.MAX_PINNED_TOOLS]})]}),r&&(0,c.jsxs)(nX,{className:"rounded-lg border border-input",children:[(0,c.jsx)(nY,{placeholder:"Search tools"}),(0,c.jsxs)(nG,{className:"max-h-44",children:[(0,c.jsx)(nZ,{children:"Nothing matches"}),i.map(t=>(0,c.jsx)(nJ,{heading:t,children:n.filter(e=>e.serverName===t).map(t=>{let n=e.includes(t.id);return(0,c.jsxs)(nQ,{value:`${t.serverName}/${t.name}`,disabled:!n&&a,onSelect:()=>f(t.id),children:[(0,c.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-xs",children:t.name}),n&&(0,c.jsx)(u.Check,{className:"size-3.5 shrink-0"})]},t.id)})},t))]})]})]})}e.s(["BotSetting",0,function(){let{data:e,isLoading:t,error:n}=(0,rE.useServerRoute)(j.queryKey.bot),r=e??[],{data:o}=(0,rE.useServerRoute)(j.queryKey.threadHistory(null)),a=o??[],[i,l]=(0,E.useState)(null),[s]=(0,E.useState)(ra.rollSeedIcons),[u,d]=(0,E.useState)(null);if(t)return(0,c.jsx)(rf.SettingPanesSkeleton,{});if(n)return(0,c.jsx)(rf.SettingError,{message:n.message});let f=i===rj,m=r.filter(e=>!e.disabled).length,p=new Set(r.map(e=>e.name)),h=ra.BOT_SEEDS.filter(e=>!p.has(e.name)),v=f?null:r.find(e=>e.name===i)??r[0]??null;return(0,c.jsx)(rf.SettingPanes,{footer:0!==r.length||f?(0,c.jsx)(r_,{bot:v,draft:f?u:null}):null,left:(0,c.jsxs)("div",{className:"flex flex-col py-2",children:[(0,c.jsxs)("div",{className:"mx-2 mb-1 flex items-center gap-1",children:[(0,c.jsxs)("button",{type:"button",onClick:()=>l(rj),className:(0,nz.cn)("flex flex-1 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",f?rf.PICKED_ROW:"text-muted-foreground hover:bg-muted/60 hover:text-foreground"),children:[(0,c.jsx)(x.Plus,{className:"size-3.5 shrink-0"}),"New bot"]}),r.length>0&&h.length>0&&(0,c.jsx)(rP,{missing:h,faces:s,have:p,onDone:e=>l(e)})]}),r.map(e=>(0,c.jsx)(rk,{bot:e,job:a.find(t=>t.bot===e.name)??null,active:!f&&e.name===v?.name,onPick:()=>l(e.name)},e.name)),m>n6.PROMPT_CROWDED.bots&&(0,c.jsxs)(rf.SettingNote,{className:"mx-3 mt-2 leading-relaxed",children:[m," bots are on. Each is a line in every prompt, and one more for Thursday to choose between."]})]}),right:f?(0,c.jsx)(rD,{jobs:[],onDone:e=>l(e),onDraft:d},"new"):v?(0,c.jsx)(rD,{bot:v,jobs:a.filter(e=>e.bot===v.name).slice(0,3),onDone:()=>l(null)},v.name):h.length>0?(0,c.jsx)(rR,{have:p,faces:s,onDone:e=>l(e)}):(0,c.jsxs)("div",{className:"space-y-4 p-8",children:[(0,c.jsx)("p",{className:"text-sm leading-relaxed text-muted-foreground",children:"Thursday talks; bots do the rest — search the web, draft a reply, check a schedule. Give one a job and a model, and work gets handed over mid-call while the conversation keeps going."}),(0,c.jsxs)(k.Button,{variant:"outline",onClick:()=>l(rj),children:[(0,c.jsx)(x.Plus,{}),"New bot"]})]})})}],507906)}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,616816,e=>{"use strict";var t=e.i(843476),r=e.i(375775),n=e.i(689664),a=e.i(263676),l=e.i(271645),i=e.i(798120),s=e.i(167881),o=e.i(23750),u=e.i(968978),c=e.i(149666),h=e.i(265402),f=e.i(609856),d=e.i(283653),m=e.i(647163),g=e.i(722560),p=e.i(992112);function y({provider:e,saved:r,autoFocus:n,dense:a,plain:l,value:i,ready:s,saving:o,onValue:c,onSubmit:h}){return(0,t.jsxs)("div",{className:"space-y-2",children:[!l&&(0,t.jsxs)("span",{className:"flex items-center gap-2 px-0.5 text-muted-foreground",children:[(0,t.jsx)(u.ProviderIcon,{provider:e.id,className:"size-4 shrink-0"}),(0,t.jsx)("span",{className:(0,m.cn)("font-mono",a?"text-[11px]":"text-[12.5px]"),children:e.label})]}),(0,t.jsx)(x,{provider:e,saved:r,autoFocus:n,dense:a,mark:l,value:i,ready:s,saving:o,onValue:c,onSubmit:h})]})}function x({provider:e,saved:r,autoFocus:a,dense:l,mark:i,value:c,ready:h,saving:f,onValue:d,onSubmit:g}){let p=c.trim().startsWith("xai-")||c.trim().startsWith("sk-ant-");return(0,t.jsxs)("form",{onSubmit:e=>{e.preventDefault(),g()},className:(0,m.cn)("flex items-center gap-3 rounded-2xl border bg-muted/40 px-4 transition-colors",l?"h-11 rounded-xl px-3":"h-14",r||h?"border-foreground bg-transparent":"border-border"),children:[i&&(0,t.jsx)(u.ProviderIcon,{provider:e.id,className:"size-4 shrink-0 text-muted-foreground"}),(0,t.jsx)(o.Input,{autoFocus:a,type:"password","aria-label":"OpenAI API key",autoComplete:"off",value:c,spellCheck:!1,placeholder:r?"Replace it":"sk-…",onChange:e=>d(e.target.value),className:(0,m.cn)("min-w-0 flex-1 border-0 bg-transparent px-0 font-mono shadow-none focus-visible:ring-0 dark:bg-transparent",l?"h-7 text-[13px]":"h-9 text-[15px]")}),c?(0,t.jsx)(s.Button,{type:"submit",size:"sm",variant:p?"outline":"default",loading:f,disabled:!h,className:(0,m.cn)("shrink-0",l?"h-7 px-3":"h-9 px-4"),children:p?`Not ${e.label}?`:"Save"}):r&&(0,t.jsx)("span",{className:(0,m.cn)("grid shrink-0 animate-in place-items-center rounded-full bg-foreground text-background zoom-in-50 duration-300",l?"size-5":"size-7"),children:(0,t.jsx)(n.Check,{className:l?"size-3":"size-4"})})]})}e.s(["GetKeyLink",0,function(){let e=h.TEXT_MODEL_PROVIDERS[c.LIVE_PROVIDER.id].keysAt;return e?(0,t.jsxs)("a",{href:e,target:"_blank",rel:"noreferrer",className:"flex items-center gap-2.5 text-[13px] font-medium text-foreground no-underline",children:[(0,t.jsxs)("span",{className:"flex h-7.5 shrink-0 items-center gap-1.5 rounded-full bg-muted px-3.5 whitespace-nowrap transition-colors hover:bg-accent",children:["Get a key",(0,t.jsx)(r.ArrowUpRight,{className:"size-3.5"})]}),(0,t.jsx)("span",{className:"truncate font-mono text-[11px] font-normal text-muted-foreground/70",children:e.replace(/^https:\/\//,"")})]}):null},"KEY_MIN",0,8,"KeyInput",0,x,"VoiceKeys",0,function({ref:e,autoFocus:r,dense:n=!1,plain:o=!1,onCancel:u,onSaved:h,className:x}){let{data:M}=(0,d.useServerRoute)(i.queryKey.config),[O,A]=(0,l.useState)({}),[b,E]=(0,l.useState)(null),[S,_]=(0,l.useState)(null),[w]=(0,f.useServerAction)(g.setConfigAction,{errorMessage:!1,onError:e=>_(e??"That key was not saved."),onOk:()=>{(0,d.revalidate)(i.queryKey.config),(0,d.revalidate)(i.queryKey.llmModel)}}),N=e=>(O[e]?.trim().length??0)>=8,v=async e=>{let t=e.apiKeyName;if(!N(t)||b)return!1;_(null),E(t);try{return await w(t,O[t]),A(e=>({...e,[t]:""})),h?.(e.id),!0}catch{return!1}finally{E(null)}};return(0,l.useImperativeHandle)(e,()=>({pending:()=>N(c.LIVE_PROVIDER.apiKeyName),flush:async()=>!N(c.LIVE_PROVIDER.apiKeyName)||v(c.LIVE_PROVIDER)})),(0,t.jsxs)("div",{className:(0,m.cn)("w-full",n?"space-y-2":"space-y-4",x),children:[n&&!o&&(0,t.jsxs)("div",{className:"flex h-6 items-center justify-between gap-2",children:[(0,t.jsx)("span",{className:"px-0.5 font-mono text-[11px] text-muted-foreground",children:"Voice key"}),u&&(0,t.jsx)(s.Button,{type:"button",size:"icon",variant:"ghost","aria-label":"Not now",onClick:u,className:"-my-1 size-6",children:(0,t.jsx)(a.X,{className:"size-3.5"})})]}),(0,t.jsx)(y,{provider:c.LIVE_PROVIDER,saved:(0,p.isConfigSet)(M,c.LIVE_PROVIDER.apiKeyName),autoFocus:r,dense:n,plain:o,value:O[c.LIVE_PROVIDER.apiKeyName]??"",ready:N(c.LIVE_PROVIDER.apiKeyName),saving:b===c.LIVE_PROVIDER.apiKeyName,onValue:e=>{_(null),A(t=>({...t,[c.LIVE_PROVIDER.apiKeyName]:e}))},onSubmit:()=>void v(c.LIVE_PROVIDER)}),S&&(0,t.jsx)("p",{className:(0,m.cn)("px-0.5 leading-5 break-words",n?"text-xs":"text-center text-[13px]",m.WAITING_INK),children:S}),!o&&(0,t.jsx)("p",{className:(0,m.cn)("px-0.5 font-mono text-muted-foreground",n?"text-[11px]":"pt-1 text-center text-[12.5px]"),children:n?"Live voice and reasoning share this OpenAI API key.":"Live uses an OpenAI API key, billed separately from ChatGPT. Stored on this machine, in this app's database."})]})}])},333495,e=>{"use strict";var t=e.i(843476),r=e.i(271645),n=e.i(41533),a=e.i(218080),l=e.i(567334);let i=[235,235,235];function s(e){let t=[[],[],[],[],[]],r=0;for(let n of Array.from(e.toUpperCase())){let e=l.LETTERS[n];if(e){if(t[0].length)for(let e of t)e.push(-1);e.forEach((e,n)=>{for(let a of e)t[n].push("#"===a?r:-1)})," "!==n&&r++}}return t}let o=s("ERROR");function u(e,t,r,n,a){return e+(t-e)*Math.min(1,a/(t>e?r:n))}function c(e,t,r,n,a,l){let i=Math.floor(t/(n*l)+e[0].length/2),s=Math.floor(r/(a*l)+e.length/2);return s<0||s>=e.length?-1:e[s][i]??-1}function h(e,t,r,n){let a=e=>Math.max(1,Math.min(3,Math.floor(625.6/(e[0].length*t)),Math.floor(421.6/(e.length*r)))),l=s(n),i=3>a(l)?function(e){let t=Array.from(e.trim()),r=t.flatMap((e,t)=>" "===e?[t]:[]);if(!r.length)return null;let n=t.length/2,a=r.reduce((e,t)=>Math.abs(t-n)<Math.abs(e-n)?t:e),l=s(t.slice(0,a).join("")),i=s(t.slice(a+1).join(""));if(!l[0].length||!i[0].length)return null;let o=Math.max(-1,...l.flat())+1,u=Math.max(l[0].length,i[0].length),c=(e,t)=>{let r=Math.floor((u-e.length)/2);return[...Array(r).fill(-1),...e.map(e=>e<0?e:e+t),...Array(u-e.length-r).fill(-1)]},h=()=>Array(u).fill(-1);return[...l.map(e=>c(e,0)),h(),h(),...i.map(e=>c(e,o))]}(n):null,o=i&&a(i)>a(l)?i:l,u=a(o),h=0;for(let n of e)n.word=c(o,n.dx,n.dy,t,r,u),h=Math.max(h,n.word+1);return h}function f({className:e,mode:s="idle",charset:d=n.ASCII_FACE.charset,fontSize:m=n.ASCII_FACE.fontSize.default,density:g=n.ASCII_FACE.density.default,size:p=680,color:y=i,getSpectrum:x,word:M=null}){let O=(0,r.useRef)(null),A=(0,r.useRef)(null),b=(0,r.useRef)([]),E=(0,r.useRef)(null),S=(0,r.useRef)(d),_=(0,r.useRef)({cur:[...y],target:y}),w=(0,r.useRef)(0),N=(0,r.useRef)(x);N.current=x;let v=(0,r.useRef)({phrase:0,bob:0,bobVel:0,amp:[,,,,].fill(0),phase:Array.from({length:4},(e,t)=>2.1*t),spin:0,rings:[]}),L=(0,r.useRef)({mode:s,start:0}),R=(0,r.useRef)(performance.now()),I=(0,r.useRef)({scale:.3,lift:0,gather:0,comet:0,speech:0,err:0,word:0}),T=(0,r.useRef)(null),k=(0,r.useRef)({cw:1,ch:1});return(0,r.useEffect)(()=>{let e=O.current;if(!e)return;let t=.95*m/g,r=1.25*m/g,n=680/p,a=t*n,i=r*n,s=Math.max(1,Math.floor(625.6/(o[0].length*a)));w.current=p,k.current={cw:a,ch:i};let u=[],f=Math.ceil(p/t),d=Math.ceil(p/r);for(let e=0;e<d;e++)for(let h=0;h<f;h++){let f=h*t,d=e*r,m=(f-p/2)*n,g=(d-p/2)*n,y=Math.hypot(m,g),x=c(o,m,g,a,i,s);x<0&&y>328||u.push({x:f+t/2,y:d+r/2,dx:m,dy:g,dist:y,angle:Math.atan2(g,m),seed:(0,l.hash)(h,e),grain:(0,l.hash)(5.7*h+19,2.3*e+53),gap:.05+.3*(0,l.hash)(7.3*h+11,3.1*e+5),emoji:(0,l.hash)(2.7*h+31,5.9*e+17)<l.EMOJI_RATIO,speck:(0,l.hash)(4.1*h+23,6.3*e+41),letter:x,word:-1})}b.current=u,T.current&&h(u,a,i,T.current.text),E.current={ascii:Array.from({length:l.RAMP.length},()=>new Int32Array(u.length)),emoji:Array.from({length:l.RAMP.length},()=>new Int32Array(u.length)),asciiN:new Int32Array(l.RAMP.length),emojiN:new Int32Array(l.RAMP.length),glyph:Array(u.length)};let y=Math.min(2,window.devicePixelRatio||1);e.width=p*y,e.height=p*y,e.style.width=`${p}px`,e.style.height=`${p}px`;let x=e.getContext("2d");return x&&(x.setTransform(y,0,0,y,0,0),x.font=`700 ${m}px ui-monospace,SFMono-Regular,Menlo,monospace`,x.textAlign="center",x.textBaseline="middle",A.current=x),()=>{x?.clearRect(0,0,p,p),b.current=[],E.current=null}},[m,g,p]),(0,r.useEffect)(()=>{S.current=d},[d]),(0,r.useEffect)(()=>{_.current.target=y},[y]),(0,r.useEffect)(()=>{L.current.mode!==s&&(L.current={mode:s,start:.001*performance.now()})},[s]),(0,r.useEffect)(()=>{if(!M||Date.now()-M.at>(M.hold??3.4)*1e3)return;let{cw:e,ch:t}=k.current,r=performance.now(),n=r-R.current<600?.11*M.text.length+.3+.45:0;T.current={text:M.text,start:.001*r-n,letters:h(b.current,e,t,M.text),hold:M.hold??3.4}},[M]),(0,r.useEffect)(()=>{let e=0,t=(0,a.createVoiceFollower)(),r=Array(a.SPECTRUM_BANDS).fill(0),n=.001*performance.now(),i=0,s=0,o=a=>{let c=.001*a,h=Math.min(.05,Math.max(0,c-n));n=c;let f=A.current,d=E.current;if(!f||!d){e=requestAnimationFrame(o);return}let m=S.current,g=w.current;d.asciiN.fill(0),d.emojiN.fill(0);let p=N.current?.();if(!p||p.length<2){for(let e=0;e<r.length;e++){let t=.5*Math.sin(1.7*c+1.7*e)+.3*Math.sin(.8*c+.6*e)+.2*Math.sin(3*c+2.9*e);r[e]=.5*t+.5}p=r}let y=v.current,x=t.read(p,h);y.phrase=x.phrase,x.onset>0&&(y.bobVel+=.06*x.onset,y.rings.push({born:c,power:x.onset}),y.rings.length>5&&y.rings.shift()),y.bobVel+=-(.012*y.bob)-.09*y.bobVel,y.bob+=y.bobVel,i+=h;for(let e=0;e<4;e++){let t=Math.floor(e*x.bands.length/4),r=Math.max(t+1,Math.floor((e+1)*x.bands.length/4)),n=0;for(let e=t;e<r;e++)n+=x.bands[e];n/=r-t;let a=.7+.6*(0,l.hash)((.9*c|0)+31*e,e);y.amp[e]+=(n*a-y.amp[e])*(.05+.02*e),y.phase[e]+=h*(.9+.5*e)*(e%2?-1:1)}for(y.spin+=h*(1.1+.9*y.phrase);y.rings.length>0&&c-y.rings[0].born>.7;)y.rings.shift();let M=L.current,O=T.current,R=O?c-O.start:0,k=null!==O&&"error"!==M.mode&&R<O.hold+.08*O.letters+.45+.35+.9?{scale:0,lift:0,gather:0,comet:0,speech:0,err:0,word:1}:function(e,t){let r={scale:1,lift:0,gather:0,comet:0,speech:0,err:0,word:0};switch(e){case"idle":return r;case"connecting":{let e=1-Math.exp(-t/1.3);return{...r,scale:.45+.55*e,lift:.06*e,gather:1}}case"speaking":return{...r,speech:1};case"working":return{...r,scale:0,comet:1};case"ending":return{...r,scale:0};case"error":return{...r,scale:0,err:1}}}(M.mode,c-M.start),j=I.current;j.scale=u(j.scale,k.scale,.45,"ending"===M.mode?.4:.7,h),j.lift=u(j.lift,k.lift,.22,.4,h),j.gather=u(j.gather,k.gather,.3,.95,h),j.comet=u(j.comet,k.comet,.45,.9,h),j.speech=u(j.speech,k.speech,.5,.75,h),"error"===M.mode&&(j.err<=.01&&(s=0),s+=h),j.err=u(j.err,k.err,.5,.6,h),j.word=u(j.word,k.word,.35,.5,h);let P=j.err>.5,C=j.word>.5,V="emojiOnly"===m?l.EMOJI_CHAR_RATE:l.CHAR_RATE,D=b.current;for(let e=0;e<D.length;e++){let t=D[e],r=function(e,t,r,n,a,i,s){let o,u,c,h,f=i.scale>.02?function(e,t,r=0,n=1){let a=170*Math.max(.02,n),i=1-(0,l.smoothstep)(.55*a,a,e.dist);return(.58+r+.2*Math.sin(.05*e.dist-.4*t)+.07*Math.sin(.35*t))*i}(e,t,i.lift,i.scale)*(1-.6*i.speech):0;return i.gather>.01&&(f+=function(e,t,r){let n=170*r;if(e.speck>=.55||e.dist<.8*n)return 0;let a=Math.min(55,Math.floor((e.angle+Math.PI)/(2*Math.PI)*56)),i=(.7*t+(0,l.hash)(a,5.3))%1,s=e.dist-(n+(320-n)*(1-i)**1.25)-(e.grain-.5)*16;return Math.exp(-(s*s)/260)*(0,l.smoothstep)(0,.2,i)*(1-i)*1.1}(e,t,i.scale)*i.gather),i.comet>.01&&(f+=(u=Math.exp(-((o=e.dist-210)*o)/1100),u*Math.exp(-((h=Math.atan2(Math.sin(c=e.angle-3*t),Math.cos(c)))*h)/(h<0?2.8:.16))*i.comet)),i.speech>.01&&(f+=function(e,t,r,n){var a;let l=170+40*r.phrase+85*r.bob;for(let t=0;t<4;t++)l+=28*r.amp[t]*Math.sin((t+2)*(e.angle+r.spin)+r.phase[t]);let i=170+(((a=l)<=205?Math.max(110,a):205+30*Math.tanh((a-205)/30))-170)*n,s=(e.grain-.5)*20+20*Math.sin(5*e.angle+.9*t+6.283*e.seed)*.3,o=e.dist-(i+s),u=Math.exp(-(o*o)/800)+.5*Math.exp(-(e.dist*e.dist)/6e3);if(e.dist<i&&(u+=.22*(1-e.dist/i)**.6*(.75+.25*Math.sin(.05*e.dist-1.2*t))),e.speck<.22){let n=90*(.6+.9*e.grain);for(let a=0;a<r.rings.length;a++){let l=r.rings[a],s=t-l.born,o=e.dist-(i+6+s*n);u+=Math.exp(-(o*o)/500)*l.power*Math.max(0,1-s/.7)}}return u}(e,t,s,i.speech)*i.speech),i.err>.01&&(f+=function(e,t,r){if(e.letter<0)return 0;let n=r%9.2,a=.12*e.seed;return Math.max(0,(0,l.smoothstep)(0,1,(n-.65*e.letter-a)/.8)-(0,l.smoothstep)(0,1,(n-5.6-.5*e.letter-a)/.7))*(.86+.14*Math.sin(3.5*t+6*e.seed))}(e,t,r)*i.err),i.word>.01&&(f+=function(e,t,r,n){if(e.word<0)return 0;let a=.45*e.seed,i=(0,l.smoothstep)(0,1,(r-.11*e.word-a)/.3),s=r-n-.08*e.word-a,o=(0,l.smoothstep)(0,1,s/.35),u=.2*(1-(0,l.smoothstep)(0,1,(s-.35)/.9));return Math.max(i-o,i>.5?u*o:0)*((i>0&&i<1||o>0&&u>0)&&.35>(0,l.hash)(Math.floor(14*t)+97*e.seed,31*e.grain)?.25:1)*(.86+.14*Math.sin(3.5*t+6*e.seed))}(e,t,n,a)*i.word),f}(t,c,s,R,O?.hold??3.4,j,y);!(P&&t.letter>=0||C&&t.word>=0)&&((r*=(.66+.72*t.grain)*(.8+.4*(0,l.hash)(Math.floor(.05*t.dx+.5*c),Math.floor(.05*t.dy-.3*c))))>.3&&(0,l.hash)(31.7*Math.floor(1.6*c),613*t.seed)>.992&&(r=Math.max(r,.9)),r<t.gap+.05*Math.sin(.28*c+6.283*t.seed)&&(r=0));let n=(r=r<0?0:r>1?1:r)*(l.RAMP.length-1)|0;if(0===n)continue;let a=i*V+7*t.seed|0;if("emojiOnly"===m||"emoji"===m&&t.emoji&&n>=l.EMOJI_MIN_LEVEL){let r=((t.seed*l.EMOJI_POOL.length|0)+a)%l.EMOJI_POOL.length;d.glyph[e]=l.EMOJI_POOL[r],d.emoji[n][d.emojiN[n]++]=e}else{let r=l.RAMP[n],i=((t.seed*r.length|0)+a)%r.length;d.glyph[e]=r[i],d.ascii[n][d.asciiN[n]++]=e}}f.clearRect(0,0,g,g);let $=b.current,K=l.RAMP.length-1,F=_.current;for(let e=0;e<3;e++)F.cur[e]+=(F.target[e]-F.cur[e])*.05;f.fillStyle=`rgb(${0|F.cur[0]},${0|F.cur[1]},${0|F.cur[2]})`;for(let e=1;e<=K;e++){let t=d.asciiN[e];if(0===t)continue;f.globalAlpha=l.ALPHA_TOP*(e/K);let r=d.ascii[e];for(let e=0;e<t;e++){let t=$[r[e]];f.fillText(d.glyph[r[e]],t.x,t.y)}}for(let e=1;e<=K;e++){let t=d.emojiN[e];if(0===t)continue;f.globalAlpha=.35+e/K*.65;let r=d.emoji[e];for(let e=0;e<t;e++){let t=$[r[e]];f.fillText(d.glyph[r[e]],t.x,t.y)}}f.globalAlpha=1,e=requestAnimationFrame(o)};return e=requestAnimationFrame(o),()=>cancelAnimationFrame(e)},[]),(0,t.jsx)("canvas",{ref:O,className:e,"aria-hidden":!0,style:{display:"block",pointerEvents:"none"}})}var d=e.i(922521),m=e.i(647163);let g={ending:"ending",idle:"idle",connecting:"connecting",listening:"idle",speaking:"speaking",working:"working",delegating:"working"},p=[247,247,247],y=[10,10,10];function x({status:e,failed:r,word:n,size:a,getSpectrum:l,look:i,className:s}){let o="dark"===(0,d.useResolvedTheme)();return(0,t.jsx)(f,{mode:r?"error":g[e],word:n,size:a,color:o?p:y,getSpectrum:l,charset:i.charset,fontSize:i.fontSize,density:i.density,className:s})}let M=(0,r.memo)(function({look:e,status:n="idle",size:a=448,className:l,...i}){let s=(0,r.useRef)(null),[o,u]=(0,r.useState)(a),[c,h]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{let e=s.current;if(!e)return;let t=new ResizeObserver(([e])=>{let t=Math.round(e.contentRect.width);t>0&&u(t)});return t.observe(e),()=>t.disconnect()},[]),(0,r.useEffect)(()=>{let e=requestAnimationFrame(()=>h(!0));return()=>cancelAnimationFrame(e)},[]),(0,t.jsx)("div",{ref:s,className:(0,m.cn)("aspect-square transition-opacity duration-700 ease-out",c?"opacity-100":"opacity-0",l),children:(0,t.jsx)(x,{...i,look:e,status:n,size:o})})});e.s(["Face",0,M],333495)},67045,e=>{"use strict";let t,r;var n=e.i(768834);let a=e=>t=>{try{let r=e(t);if(r instanceof Promise)return r;return{then:e=>a(e)(r),catch(e){return this}}}catch(e){return{then(e){return this},catch:t=>a(t)(e)}}};var l=e.i(149666),i=e.i(265402),s=e.i(671228);let o=l.LiveSettingsSchema.extend({wake:s.WakeSchema.catch(s.WAKE_DEFAULT),hotkey:s.HotkeySchema.catch(s.HOTKEY_DEFAULT),callBack:s.CallBackSchema.catch(s.CALL_BACK_DEFAULT),captionView:s.CaptionViewSchema.catch("sides"),textModel:i.textModelRefSchema.nullable().catch(null)}),u={...l.LIVE_DEFAULTS,wake:s.WAKE_DEFAULT,hotkey:s.HOTKEY_DEFAULT,callBack:s.CALL_BACK_DEFAULT,captionView:"sides",textModel:null},c=(0,n.create)()((t=e=>({...u,patch:t=>e(t)}),r={name:"thursday.settings",version:1,migrate:(e,t)=>t<1&&e&&"object"==typeof e?{...e,webSearch:!0}:e,merge:(e,t)=>{let r=o.safeParse((0,l.migrateLiveSettings)(e)),n=r.success?r.data:u;return{...t,...n}}},(e,n,l)=>{let i,s={storage:function(e){let t;try{t=e()}catch(e){return}return{getItem:e=>{var r;let n=e=>null===e?null:JSON.parse(e,void 0),a=null!=(r=t.getItem(e))?r:null;return a instanceof Promise?a.then(n):n(a)},setItem:(e,r)=>t.setItem(e,JSON.stringify(r,void 0)),removeItem:e=>t.removeItem(e)}}(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...r},o=!1,u=0,c=new Set,h=new Set,f=s.storage;if(!f)return t((...t)=>{console.warn(`[zustand persist middleware] Unable to update item '${s.name}', the given storage is currently unavailable.`),e(...t)});let d=()=>{let e=s.partialize({...n()});return f.setItem(s.name,{state:e,version:s.version})},m=l.setState;l.setState=(e,t)=>(m(e,t),d());let g=t((...t)=>(e(...t),d()));l.getInitialState=()=>g;let p=()=>{var t,r;if(!f)return;let l=++u;o=!1,c.forEach(e=>{var t;return e(null!=(t=n())?t:g)});let m=(null==(r=s.onRehydrateStorage)?void 0:r.call(s,null!=(t=n())?t:g))||void 0;return a(f.getItem.bind(f))(s.name).then(e=>{if(e)if("number"!=typeof e.version||e.version===s.version)return[!1,e.state];else{if(s.migrate){let t=s.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}return[!1,void 0]}).then(t=>{var r;if(l!==u)return;let[a,o]=t;if(e(i=s.merge(o,null!=(r=n())?r:g),!0),a)return d()}).then(()=>{l===u&&(null==m||m(n(),void 0),i=n(),o=!0,h.forEach(e=>e(i)))}).catch(e=>{l===u&&(null==m||m(void 0,e))})};return l.persist={setOptions:e=>{s={...s,...e},e.storage&&(f=e.storage)},clearStorage:()=>{++u,null==f||f.removeItem(s.name)},getOptions:()=>s,rehydrate:()=>p(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(h.add(e),()=>{h.delete(e)})},s.skipHydration||p(),i||g}));e.s(["thursdaySettings",0,()=>l.LiveSettingsSchema.parse(c.getState()),"useThursdayStore",0,c],67045)},561540,e=>{"use strict";var t=e.i(213377);let r={[t.TOOL_NAMES.memory_recall]:"Checking your notes",[t.TOOL_NAMES.memory_remember]:"Noting that down",[t.TOOL_NAMES.memory_forget]:"Forgetting that",[t.TOOL_NAMES.memory_conversation]:"Reading back an earlier call",[t.TOOL_NAMES.bash]:"Doing it on this computer",[t.TOOL_NAMES.web_search]:"Searching the web",[t.TOOL_NAMES.load_skill]:"Reading how to do this",[t.TOOL_NAMES.look_at]:"Looking at the picture",[t.TOOL_NAMES.end_call]:"Ending the call",[t.TOOL_NAMES.routine]:"Checking your routines"};function n(e){if(!e)return null;try{let t=JSON.parse(e);if(t&&"object"==typeof t&&!Array.isArray(t))return t}catch{}return null}let a=new Set([t.TOOL_NAMES.thread_tell,t.TOOL_NAMES.thread_answer,t.TOOL_NAMES.thread_status,t.TOOL_NAMES.thread_show,t.TOOL_NAMES.thread_cancel,t.TOOL_NAMES.thread_seen]);function l(e,r){if(e!==t.TOOL_NAMES.web_search)return null;try{let e=JSON.parse(r),t=Array.isArray(e.sources)?e.sources.flatMap(e=>e&&"object"==typeof e&&"string"==typeof e.url?[e]:[]):[];return{query:"string"==typeof e.query?e.query:null,sources:t}}catch{return null}}e.s(["searchOf",0,l,"searchQueryOf",0,function(e){let t=n(e)?.query;return"string"==typeof t&&t.trim()?t.trim():null},"searchSourcesOf",0,function(e){let r=n(e);return r?l(t.TOOL_NAMES.web_search,JSON.stringify(r))?.sources??[]:[]},"startedLabel",0,function(e,r){if(e!==t.TOOL_NAMES.thread_start)return null;try{let e=JSON.parse(r);return"string"==typeof e.label?e.label:null}catch{return null}},"toolBot",0,function(e,r,l,i){let s=n(r);if(!s)return null;if(e===t.TOOL_NAMES.thread_start)return"string"==typeof s.bot&&s.bot.trim()?s.bot.trim():null;if(!a.has(e))return null;let o="string"==typeof s.thread?s.thread.trim():"";if(!o||"all"===o.toLowerCase())return null;let u=o.toLowerCase(),c=l?.find(e=>e.id===o)??l?.find(e=>e.label.toLowerCase()===u);return c?e===t.TOOL_NAMES.thread_answer?c.room.questions[0]?.bot??c.bot:c.bot:function(e){let t=n(e);if(!t)return null;if("string"==typeof t.bot&&t.bot.trim())return t.bot.trim();let r=t.answered;return"string"==typeof r?.bot?r.bot:null}(i)},"toolLine",0,function(e,a,l=null){let i;if(e===t.TOOL_NAMES.tool_search||e===t.TOOL_NAMES.tool_call)return"Reaching a connected service";let s=n(a);return(s&&function(e,r,n){if(e===t.TOOL_NAMES.memory_remember){let e="string"==typeof r.path?r.path.trim():"",t=function(e){if(!Array.isArray(e.facts))return null;let t=e.facts.map(e=>e&&"object"==typeof e&&"string"==typeof e.text?e.text.trim():"").filter(Boolean);return t.length?{text:t[0],more:t.length-1}:null}(r);if(!e)return null;if(!t)return`Noting that under ${e}`;let n=t.more>0?` (+${t.more})`:"";return`Noting under ${e}: ${function(e){let t=e.trim().replace(/\s+/g," ");if(t.length<=28)return t;let r=t.slice(0,28),n=r.lastIndexOf(" ");return`${(n>14?r.slice(0,n):r).trimEnd()}…`}(t.text)}${n}`}if(e===t.TOOL_NAMES.thread_start){let e="string"==typeof r.bot?r.bot.trim():"";return e?`Handing this to ${e}`:"Handing this over"}if(e===t.TOOL_NAMES.web_search){let e="string"==typeof r.query?r.query.trim():"";return e?`Searching \xb7 ${e}`:null}if(e===t.TOOL_NAMES.routine){if("create"===r.action){let e=["string"==typeof r.bot?r.bot.trim():"",function(e){if("string"==typeof e.at&&e.at.length>=16){let[t,r]=e.at.split(" "),[n,a,l]=t.split("-").map(Number),i=new Date(n,a-1,l);if(i.toDateString()===new Date().toDateString())return`once at ${r}`;let s=i.toLocaleDateString("en-US",{month:"short",day:"numeric"});return`once, ${s} ${r}`}return"string"==typeof e.time&&e.time?`daily at ${e.time}`:"number"==typeof e.everyHours?`every ${e.everyHours} hours`:null}(r)].filter(Boolean).join(", ");return e?`Setting a routine \xb7 ${e}`:"Setting a routine"}return"change"===r.action?"Changing a routine":"delete"===r.action?"Deleting a routine":null}let a="string"==typeof r.thread?r.thread.trim():"";return e===t.TOOL_NAMES.thread_tell?n?`Telling ${n}`:"Passing that on":e===t.TOOL_NAMES.thread_answer?n?`Answering ${n}`:"Answering that":e===t.TOOL_NAMES.thread_cancel?a?`Stopping ${a}`:"Stopping that":e===t.TOOL_NAMES.thread_seen?a?`Marking ${a} as read`:"Marking that as read":e===t.TOOL_NAMES.thread_show?a?`Opening ${a}`:"Opening that":e===t.TOOL_NAMES.thread_status?a&&"all"!==a.toLowerCase()?`Checking on ${a}`:"Checking on the work":null}(e,s,l))??r[e]??((i=e.indexOf("__"))<=0?null:`Reaching ${e.slice(0,i).replace(/[-_]/g," ")}`)}])},319841,e=>{"use strict";var t=e.i(271645);let r=["ctrl","alt","meta"],n=/^(Control|Alt|Shift|Meta|OS)/,a=/^(input|textarea|select)$/i,l=e=>!!e&&!!(a.test(e.tagName)||e.isContentEditable||e.closest?.("[data-hotkey-capture]"));function i(e){let{code:t,ctrlKey:r,altKey:a,shiftKey:l,metaKey:i}=e;if(!t||n.test(t)||!r&&!a&&!i)return null;let s=[];return r&&s.push("ctrl"),a&&s.push("alt"),l&&s.push("shift"),i&&s.push("meta"),[...s,t].join("+")}let s={ctrl:["Ctrl","⌃"],alt:["Alt","⌥"],shift:["Shift","⇧"],meta:["Meta","⌘"]};e.s(["HOTKEY_CAPTURE",0,{"data-hotkey-capture":""},"capturesKeys",0,l,"comboOf",0,i,"isCombo",0,e=>{let t=e.split("+"),a=t.at(-1);return!!(a&&!n.test(a)&&t.slice(0,-1).some(e=>r.includes(e)))},"useHotkey",0,function({enabled:e,combo:r,onPress:n}){let a=(0,t.useRef)(n);a.current=n,(0,t.useEffect)(()=>{if(!e||!r)return;let t=e=>{e.repeat||l(e.target)||i(e)===r&&(e.preventDefault(),a.current())};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[e,r])},"useHotkeyLabel",0,function(e){let[r,n]=(0,t.useState)(!1);return(0,t.useEffect)(()=>n(/mac/i.test(navigator.userAgent)),[]),e?function(e,t=!1){let r=e.split("+"),n=r.at(-1)??"",a=r.slice(0,-1).map(e=>s[e]?.[+!!t]??e),l=n.replace(/^(Key|Digit|Numpad)/,"").replace(/([a-z])([A-Z])/g,"$1 $2")||n;return t?[...a,l].join(""):[...a,l].join(" + ")}(e,r):null}])}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,616816,e=>{"use strict";var t=e.i(843476),r=e.i(375775),n=e.i(689664),a=e.i(263676),l=e.i(271645),i=e.i(798120),s=e.i(167881),o=e.i(23750),u=e.i(968978),c=e.i(149666),h=e.i(265402),f=e.i(609856),d=e.i(283653),m=e.i(647163),g=e.i(725698),p=e.i(992112);function y({provider:e,saved:r,autoFocus:n,dense:a,plain:l,value:i,ready:s,saving:o,onValue:c,onSubmit:h}){return(0,t.jsxs)("div",{className:"space-y-2",children:[!l&&(0,t.jsxs)("span",{className:"flex items-center gap-2 px-0.5 text-muted-foreground",children:[(0,t.jsx)(u.ProviderIcon,{provider:e.id,className:"size-4 shrink-0"}),(0,t.jsx)("span",{className:(0,m.cn)("font-mono",a?"text-[11px]":"text-[12.5px]"),children:e.label})]}),(0,t.jsx)(x,{provider:e,saved:r,autoFocus:n,dense:a,mark:l,value:i,ready:s,saving:o,onValue:c,onSubmit:h})]})}function x({provider:e,saved:r,autoFocus:a,dense:l,mark:i,value:c,ready:h,saving:f,onValue:d,onSubmit:g}){let p=c.trim().startsWith("xai-")||c.trim().startsWith("sk-ant-");return(0,t.jsxs)("form",{onSubmit:e=>{e.preventDefault(),g()},className:(0,m.cn)("flex items-center gap-3 rounded-2xl border bg-muted/40 px-4 transition-colors",l?"h-11 rounded-xl px-3":"h-14",r||h?"border-foreground bg-transparent":"border-border"),children:[i&&(0,t.jsx)(u.ProviderIcon,{provider:e.id,className:"size-4 shrink-0 text-muted-foreground"}),(0,t.jsx)(o.Input,{autoFocus:a,type:"password","aria-label":"OpenAI API key",autoComplete:"off",value:c,spellCheck:!1,placeholder:r?"Replace it":"sk-…",onChange:e=>d(e.target.value),className:(0,m.cn)("min-w-0 flex-1 border-0 bg-transparent px-0 font-mono shadow-none focus-visible:ring-0 dark:bg-transparent",l?"h-7 text-[13px]":"h-9 text-[15px]")}),c?(0,t.jsx)(s.Button,{type:"submit",size:"sm",variant:p?"outline":"default",loading:f,disabled:!h,className:(0,m.cn)("shrink-0",l?"h-7 px-3":"h-9 px-4"),children:p?`Not ${e.label}?`:"Save"}):r&&(0,t.jsx)("span",{className:(0,m.cn)("grid shrink-0 animate-in place-items-center rounded-full bg-foreground text-background zoom-in-50 duration-300",l?"size-5":"size-7"),children:(0,t.jsx)(n.Check,{className:l?"size-3":"size-4"})})]})}e.s(["GetKeyLink",0,function(){let e=h.TEXT_MODEL_PROVIDERS[c.LIVE_PROVIDER.id].keysAt;return e?(0,t.jsxs)("a",{href:e,target:"_blank",rel:"noreferrer",className:"flex items-center gap-2.5 text-[13px] font-medium text-foreground no-underline",children:[(0,t.jsxs)("span",{className:"flex h-7.5 shrink-0 items-center gap-1.5 rounded-full bg-muted px-3.5 whitespace-nowrap transition-colors hover:bg-accent",children:["Get a key",(0,t.jsx)(r.ArrowUpRight,{className:"size-3.5"})]}),(0,t.jsx)("span",{className:"truncate font-mono text-[11px] font-normal text-muted-foreground/70",children:e.replace(/^https:\/\//,"")})]}):null},"KEY_MIN",0,8,"KeyInput",0,x,"VoiceKeys",0,function({ref:e,autoFocus:r,dense:n=!1,plain:o=!1,onCancel:u,onSaved:h,className:x}){let{data:M}=(0,d.useServerRoute)(i.queryKey.config),[O,A]=(0,l.useState)({}),[b,E]=(0,l.useState)(null),[S,_]=(0,l.useState)(null),[w]=(0,f.useServerAction)(g.setConfigAction,{errorMessage:!1,onError:e=>_(e??"That key was not saved."),onOk:()=>{(0,d.revalidate)(i.queryKey.config),(0,d.revalidate)(i.queryKey.llmModel)}}),N=e=>(O[e]?.trim().length??0)>=8,v=async e=>{let t=e.apiKeyName;if(!N(t)||b)return!1;_(null),E(t);try{return await w(t,O[t]),A(e=>({...e,[t]:""})),h?.(e.id),!0}catch{return!1}finally{E(null)}};return(0,l.useImperativeHandle)(e,()=>({pending:()=>N(c.LIVE_PROVIDER.apiKeyName),flush:async()=>!N(c.LIVE_PROVIDER.apiKeyName)||v(c.LIVE_PROVIDER)})),(0,t.jsxs)("div",{className:(0,m.cn)("w-full",n?"space-y-2":"space-y-4",x),children:[n&&!o&&(0,t.jsxs)("div",{className:"flex h-6 items-center justify-between gap-2",children:[(0,t.jsx)("span",{className:"px-0.5 font-mono text-[11px] text-muted-foreground",children:"Voice key"}),u&&(0,t.jsx)(s.Button,{type:"button",size:"icon",variant:"ghost","aria-label":"Not now",onClick:u,className:"-my-1 size-6",children:(0,t.jsx)(a.X,{className:"size-3.5"})})]}),(0,t.jsx)(y,{provider:c.LIVE_PROVIDER,saved:(0,p.isConfigSet)(M,c.LIVE_PROVIDER.apiKeyName),autoFocus:r,dense:n,plain:o,value:O[c.LIVE_PROVIDER.apiKeyName]??"",ready:N(c.LIVE_PROVIDER.apiKeyName),saving:b===c.LIVE_PROVIDER.apiKeyName,onValue:e=>{_(null),A(t=>({...t,[c.LIVE_PROVIDER.apiKeyName]:e}))},onSubmit:()=>void v(c.LIVE_PROVIDER)}),S&&(0,t.jsx)("p",{className:(0,m.cn)("px-0.5 leading-5 break-words",n?"text-xs":"text-center text-[13px]",m.WAITING_INK),children:S}),!o&&(0,t.jsx)("p",{className:(0,m.cn)("px-0.5 font-mono text-muted-foreground",n?"text-[11px]":"pt-1 text-center text-[12.5px]"),children:n?"Live voice and reasoning share this OpenAI API key.":"Live uses an OpenAI API key, billed separately from ChatGPT. Stored on this machine, in this app's database."})]})}])},333495,e=>{"use strict";var t=e.i(843476),r=e.i(271645),n=e.i(41533),a=e.i(218080),l=e.i(567334);let i=[235,235,235];function s(e){let t=[[],[],[],[],[]],r=0;for(let n of Array.from(e.toUpperCase())){let e=l.LETTERS[n];if(e){if(t[0].length)for(let e of t)e.push(-1);e.forEach((e,n)=>{for(let a of e)t[n].push("#"===a?r:-1)})," "!==n&&r++}}return t}let o=s("ERROR");function u(e,t,r,n,a){return e+(t-e)*Math.min(1,a/(t>e?r:n))}function c(e,t,r,n,a,l){let i=Math.floor(t/(n*l)+e[0].length/2),s=Math.floor(r/(a*l)+e.length/2);return s<0||s>=e.length?-1:e[s][i]??-1}function h(e,t,r,n){let a=e=>Math.max(1,Math.min(3,Math.floor(625.6/(e[0].length*t)),Math.floor(421.6/(e.length*r)))),l=s(n),i=3>a(l)?function(e){let t=Array.from(e.trim()),r=t.flatMap((e,t)=>" "===e?[t]:[]);if(!r.length)return null;let n=t.length/2,a=r.reduce((e,t)=>Math.abs(t-n)<Math.abs(e-n)?t:e),l=s(t.slice(0,a).join("")),i=s(t.slice(a+1).join(""));if(!l[0].length||!i[0].length)return null;let o=Math.max(-1,...l.flat())+1,u=Math.max(l[0].length,i[0].length),c=(e,t)=>{let r=Math.floor((u-e.length)/2);return[...Array(r).fill(-1),...e.map(e=>e<0?e:e+t),...Array(u-e.length-r).fill(-1)]},h=()=>Array(u).fill(-1);return[...l.map(e=>c(e,0)),h(),h(),...i.map(e=>c(e,o))]}(n):null,o=i&&a(i)>a(l)?i:l,u=a(o),h=0;for(let n of e)n.word=c(o,n.dx,n.dy,t,r,u),h=Math.max(h,n.word+1);return h}function f({className:e,mode:s="idle",charset:d=n.ASCII_FACE.charset,fontSize:m=n.ASCII_FACE.fontSize.default,density:g=n.ASCII_FACE.density.default,size:p=680,color:y=i,getSpectrum:x,word:M=null}){let O=(0,r.useRef)(null),A=(0,r.useRef)(null),b=(0,r.useRef)([]),E=(0,r.useRef)(null),S=(0,r.useRef)(d),_=(0,r.useRef)({cur:[...y],target:y}),w=(0,r.useRef)(0),N=(0,r.useRef)(x);N.current=x;let v=(0,r.useRef)({phrase:0,bob:0,bobVel:0,amp:[,,,,].fill(0),phase:Array.from({length:4},(e,t)=>2.1*t),spin:0,rings:[]}),L=(0,r.useRef)({mode:s,start:0}),R=(0,r.useRef)(performance.now()),I=(0,r.useRef)({scale:.3,lift:0,gather:0,comet:0,speech:0,err:0,word:0}),T=(0,r.useRef)(null),k=(0,r.useRef)({cw:1,ch:1});return(0,r.useEffect)(()=>{let e=O.current;if(!e)return;let t=.95*m/g,r=1.25*m/g,n=680/p,a=t*n,i=r*n,s=Math.max(1,Math.floor(625.6/(o[0].length*a)));w.current=p,k.current={cw:a,ch:i};let u=[],f=Math.ceil(p/t),d=Math.ceil(p/r);for(let e=0;e<d;e++)for(let h=0;h<f;h++){let f=h*t,d=e*r,m=(f-p/2)*n,g=(d-p/2)*n,y=Math.hypot(m,g),x=c(o,m,g,a,i,s);x<0&&y>328||u.push({x:f+t/2,y:d+r/2,dx:m,dy:g,dist:y,angle:Math.atan2(g,m),seed:(0,l.hash)(h,e),grain:(0,l.hash)(5.7*h+19,2.3*e+53),gap:.05+.3*(0,l.hash)(7.3*h+11,3.1*e+5),emoji:(0,l.hash)(2.7*h+31,5.9*e+17)<l.EMOJI_RATIO,speck:(0,l.hash)(4.1*h+23,6.3*e+41),letter:x,word:-1})}b.current=u,T.current&&h(u,a,i,T.current.text),E.current={ascii:Array.from({length:l.RAMP.length},()=>new Int32Array(u.length)),emoji:Array.from({length:l.RAMP.length},()=>new Int32Array(u.length)),asciiN:new Int32Array(l.RAMP.length),emojiN:new Int32Array(l.RAMP.length),glyph:Array(u.length)};let y=Math.min(2,window.devicePixelRatio||1);e.width=p*y,e.height=p*y,e.style.width=`${p}px`,e.style.height=`${p}px`;let x=e.getContext("2d");return x&&(x.setTransform(y,0,0,y,0,0),x.font=`700 ${m}px ui-monospace,SFMono-Regular,Menlo,monospace`,x.textAlign="center",x.textBaseline="middle",A.current=x),()=>{x?.clearRect(0,0,p,p),b.current=[],E.current=null}},[m,g,p]),(0,r.useEffect)(()=>{S.current=d},[d]),(0,r.useEffect)(()=>{_.current.target=y},[y]),(0,r.useEffect)(()=>{L.current.mode!==s&&(L.current={mode:s,start:.001*performance.now()})},[s]),(0,r.useEffect)(()=>{if(!M||Date.now()-M.at>(M.hold??3.4)*1e3)return;let{cw:e,ch:t}=k.current,r=performance.now(),n=r-R.current<600?.11*M.text.length+.3+.45:0;T.current={text:M.text,start:.001*r-n,letters:h(b.current,e,t,M.text),hold:M.hold??3.4}},[M]),(0,r.useEffect)(()=>{let e=0,t=(0,a.createVoiceFollower)(),r=Array(a.SPECTRUM_BANDS).fill(0),n=.001*performance.now(),i=0,s=0,o=a=>{let c=.001*a,h=Math.min(.05,Math.max(0,c-n));n=c;let f=A.current,d=E.current;if(!f||!d){e=requestAnimationFrame(o);return}let m=S.current,g=w.current;d.asciiN.fill(0),d.emojiN.fill(0);let p=N.current?.();if(!p||p.length<2){for(let e=0;e<r.length;e++){let t=.5*Math.sin(1.7*c+1.7*e)+.3*Math.sin(.8*c+.6*e)+.2*Math.sin(3*c+2.9*e);r[e]=.5*t+.5}p=r}let y=v.current,x=t.read(p,h);y.phrase=x.phrase,x.onset>0&&(y.bobVel+=.06*x.onset,y.rings.push({born:c,power:x.onset}),y.rings.length>5&&y.rings.shift()),y.bobVel+=-(.012*y.bob)-.09*y.bobVel,y.bob+=y.bobVel,i+=h;for(let e=0;e<4;e++){let t=Math.floor(e*x.bands.length/4),r=Math.max(t+1,Math.floor((e+1)*x.bands.length/4)),n=0;for(let e=t;e<r;e++)n+=x.bands[e];n/=r-t;let a=.7+.6*(0,l.hash)((.9*c|0)+31*e,e);y.amp[e]+=(n*a-y.amp[e])*(.05+.02*e),y.phase[e]+=h*(.9+.5*e)*(e%2?-1:1)}for(y.spin+=h*(1.1+.9*y.phrase);y.rings.length>0&&c-y.rings[0].born>.7;)y.rings.shift();let M=L.current,O=T.current,R=O?c-O.start:0,k=null!==O&&"error"!==M.mode&&R<O.hold+.08*O.letters+.45+.35+.9?{scale:0,lift:0,gather:0,comet:0,speech:0,err:0,word:1}:function(e,t){let r={scale:1,lift:0,gather:0,comet:0,speech:0,err:0,word:0};switch(e){case"idle":return r;case"connecting":{let e=1-Math.exp(-t/1.3);return{...r,scale:.45+.55*e,lift:.06*e,gather:1}}case"speaking":return{...r,speech:1};case"working":return{...r,scale:0,comet:1};case"ending":return{...r,scale:0};case"error":return{...r,scale:0,err:1}}}(M.mode,c-M.start),j=I.current;j.scale=u(j.scale,k.scale,.45,"ending"===M.mode?.4:.7,h),j.lift=u(j.lift,k.lift,.22,.4,h),j.gather=u(j.gather,k.gather,.3,.95,h),j.comet=u(j.comet,k.comet,.45,.9,h),j.speech=u(j.speech,k.speech,.5,.75,h),"error"===M.mode&&(j.err<=.01&&(s=0),s+=h),j.err=u(j.err,k.err,.5,.6,h),j.word=u(j.word,k.word,.35,.5,h);let P=j.err>.5,C=j.word>.5,V="emojiOnly"===m?l.EMOJI_CHAR_RATE:l.CHAR_RATE,D=b.current;for(let e=0;e<D.length;e++){let t=D[e],r=function(e,t,r,n,a,i,s){let o,u,c,h,f=i.scale>.02?function(e,t,r=0,n=1){let a=170*Math.max(.02,n),i=1-(0,l.smoothstep)(.55*a,a,e.dist);return(.58+r+.2*Math.sin(.05*e.dist-.4*t)+.07*Math.sin(.35*t))*i}(e,t,i.lift,i.scale)*(1-.6*i.speech):0;return i.gather>.01&&(f+=function(e,t,r){let n=170*r;if(e.speck>=.55||e.dist<.8*n)return 0;let a=Math.min(55,Math.floor((e.angle+Math.PI)/(2*Math.PI)*56)),i=(.7*t+(0,l.hash)(a,5.3))%1,s=e.dist-(n+(320-n)*(1-i)**1.25)-(e.grain-.5)*16;return Math.exp(-(s*s)/260)*(0,l.smoothstep)(0,.2,i)*(1-i)*1.1}(e,t,i.scale)*i.gather),i.comet>.01&&(f+=(u=Math.exp(-((o=e.dist-210)*o)/1100),u*Math.exp(-((h=Math.atan2(Math.sin(c=e.angle-3*t),Math.cos(c)))*h)/(h<0?2.8:.16))*i.comet)),i.speech>.01&&(f+=function(e,t,r,n){var a;let l=170+40*r.phrase+85*r.bob;for(let t=0;t<4;t++)l+=28*r.amp[t]*Math.sin((t+2)*(e.angle+r.spin)+r.phase[t]);let i=170+(((a=l)<=205?Math.max(110,a):205+30*Math.tanh((a-205)/30))-170)*n,s=(e.grain-.5)*20+20*Math.sin(5*e.angle+.9*t+6.283*e.seed)*.3,o=e.dist-(i+s),u=Math.exp(-(o*o)/800)+.5*Math.exp(-(e.dist*e.dist)/6e3);if(e.dist<i&&(u+=.22*(1-e.dist/i)**.6*(.75+.25*Math.sin(.05*e.dist-1.2*t))),e.speck<.22){let n=90*(.6+.9*e.grain);for(let a=0;a<r.rings.length;a++){let l=r.rings[a],s=t-l.born,o=e.dist-(i+6+s*n);u+=Math.exp(-(o*o)/500)*l.power*Math.max(0,1-s/.7)}}return u}(e,t,s,i.speech)*i.speech),i.err>.01&&(f+=function(e,t,r){if(e.letter<0)return 0;let n=r%9.2,a=.12*e.seed;return Math.max(0,(0,l.smoothstep)(0,1,(n-.65*e.letter-a)/.8)-(0,l.smoothstep)(0,1,(n-5.6-.5*e.letter-a)/.7))*(.86+.14*Math.sin(3.5*t+6*e.seed))}(e,t,r)*i.err),i.word>.01&&(f+=function(e,t,r,n){if(e.word<0)return 0;let a=.45*e.seed,i=(0,l.smoothstep)(0,1,(r-.11*e.word-a)/.3),s=r-n-.08*e.word-a,o=(0,l.smoothstep)(0,1,s/.35),u=.2*(1-(0,l.smoothstep)(0,1,(s-.35)/.9));return Math.max(i-o,i>.5?u*o:0)*((i>0&&i<1||o>0&&u>0)&&.35>(0,l.hash)(Math.floor(14*t)+97*e.seed,31*e.grain)?.25:1)*(.86+.14*Math.sin(3.5*t+6*e.seed))}(e,t,n,a)*i.word),f}(t,c,s,R,O?.hold??3.4,j,y);!(P&&t.letter>=0||C&&t.word>=0)&&((r*=(.66+.72*t.grain)*(.8+.4*(0,l.hash)(Math.floor(.05*t.dx+.5*c),Math.floor(.05*t.dy-.3*c))))>.3&&(0,l.hash)(31.7*Math.floor(1.6*c),613*t.seed)>.992&&(r=Math.max(r,.9)),r<t.gap+.05*Math.sin(.28*c+6.283*t.seed)&&(r=0));let n=(r=r<0?0:r>1?1:r)*(l.RAMP.length-1)|0;if(0===n)continue;let a=i*V+7*t.seed|0;if("emojiOnly"===m||"emoji"===m&&t.emoji&&n>=l.EMOJI_MIN_LEVEL){let r=((t.seed*l.EMOJI_POOL.length|0)+a)%l.EMOJI_POOL.length;d.glyph[e]=l.EMOJI_POOL[r],d.emoji[n][d.emojiN[n]++]=e}else{let r=l.RAMP[n],i=((t.seed*r.length|0)+a)%r.length;d.glyph[e]=r[i],d.ascii[n][d.asciiN[n]++]=e}}f.clearRect(0,0,g,g);let $=b.current,K=l.RAMP.length-1,F=_.current;for(let e=0;e<3;e++)F.cur[e]+=(F.target[e]-F.cur[e])*.05;f.fillStyle=`rgb(${0|F.cur[0]},${0|F.cur[1]},${0|F.cur[2]})`;for(let e=1;e<=K;e++){let t=d.asciiN[e];if(0===t)continue;f.globalAlpha=l.ALPHA_TOP*(e/K);let r=d.ascii[e];for(let e=0;e<t;e++){let t=$[r[e]];f.fillText(d.glyph[r[e]],t.x,t.y)}}for(let e=1;e<=K;e++){let t=d.emojiN[e];if(0===t)continue;f.globalAlpha=.35+e/K*.65;let r=d.emoji[e];for(let e=0;e<t;e++){let t=$[r[e]];f.fillText(d.glyph[r[e]],t.x,t.y)}}f.globalAlpha=1,e=requestAnimationFrame(o)};return e=requestAnimationFrame(o),()=>cancelAnimationFrame(e)},[]),(0,t.jsx)("canvas",{ref:O,className:e,"aria-hidden":!0,style:{display:"block",pointerEvents:"none"}})}var d=e.i(922521),m=e.i(647163);let g={ending:"ending",idle:"idle",connecting:"connecting",listening:"idle",speaking:"speaking",working:"working",delegating:"working"},p=[247,247,247],y=[10,10,10];function x({status:e,failed:r,word:n,size:a,getSpectrum:l,look:i,className:s}){let o="dark"===(0,d.useResolvedTheme)();return(0,t.jsx)(f,{mode:r?"error":g[e],word:n,size:a,color:o?p:y,getSpectrum:l,charset:i.charset,fontSize:i.fontSize,density:i.density,className:s})}let M=(0,r.memo)(function({look:e,status:n="idle",size:a=448,className:l,...i}){let s=(0,r.useRef)(null),[o,u]=(0,r.useState)(a),[c,h]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{let e=s.current;if(!e)return;let t=new ResizeObserver(([e])=>{let t=Math.round(e.contentRect.width);t>0&&u(t)});return t.observe(e),()=>t.disconnect()},[]),(0,r.useEffect)(()=>{let e=requestAnimationFrame(()=>h(!0));return()=>cancelAnimationFrame(e)},[]),(0,t.jsx)("div",{ref:s,className:(0,m.cn)("aspect-square transition-opacity duration-700 ease-out",c?"opacity-100":"opacity-0",l),children:(0,t.jsx)(x,{...i,look:e,status:n,size:o})})});e.s(["Face",0,M],333495)},67045,e=>{"use strict";let t,r;var n=e.i(768834);let a=e=>t=>{try{let r=e(t);if(r instanceof Promise)return r;return{then:e=>a(e)(r),catch(e){return this}}}catch(e){return{then(e){return this},catch:t=>a(t)(e)}}};var l=e.i(149666),i=e.i(265402),s=e.i(671228);let o=l.LiveSettingsSchema.extend({wake:s.WakeSchema.catch(s.WAKE_DEFAULT),hotkey:s.HotkeySchema.catch(s.HOTKEY_DEFAULT),callBack:s.CallBackSchema.catch(s.CALL_BACK_DEFAULT),captionView:s.CaptionViewSchema.catch("sides"),textModel:i.textModelRefSchema.nullable().catch(null)}),u={...l.LIVE_DEFAULTS,wake:s.WAKE_DEFAULT,hotkey:s.HOTKEY_DEFAULT,callBack:s.CALL_BACK_DEFAULT,captionView:"sides",textModel:null},c=(0,n.create)()((t=e=>({...u,patch:t=>e(t)}),r={name:"thursday.settings",version:1,migrate:(e,t)=>t<1&&e&&"object"==typeof e?{...e,webSearch:!0}:e,merge:(e,t)=>{let r=o.safeParse((0,l.migrateLiveSettings)(e)),n=r.success?r.data:u;return{...t,...n}}},(e,n,l)=>{let i,s={storage:function(e){let t;try{t=e()}catch(e){return}return{getItem:e=>{var r;let n=e=>null===e?null:JSON.parse(e,void 0),a=null!=(r=t.getItem(e))?r:null;return a instanceof Promise?a.then(n):n(a)},setItem:(e,r)=>t.setItem(e,JSON.stringify(r,void 0)),removeItem:e=>t.removeItem(e)}}(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...r},o=!1,u=0,c=new Set,h=new Set,f=s.storage;if(!f)return t((...t)=>{console.warn(`[zustand persist middleware] Unable to update item '${s.name}', the given storage is currently unavailable.`),e(...t)});let d=()=>{let e=s.partialize({...n()});return f.setItem(s.name,{state:e,version:s.version})},m=l.setState;l.setState=(e,t)=>(m(e,t),d());let g=t((...t)=>(e(...t),d()));l.getInitialState=()=>g;let p=()=>{var t,r;if(!f)return;let l=++u;o=!1,c.forEach(e=>{var t;return e(null!=(t=n())?t:g)});let m=(null==(r=s.onRehydrateStorage)?void 0:r.call(s,null!=(t=n())?t:g))||void 0;return a(f.getItem.bind(f))(s.name).then(e=>{if(e)if("number"!=typeof e.version||e.version===s.version)return[!1,e.state];else{if(s.migrate){let t=s.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}return[!1,void 0]}).then(t=>{var r;if(l!==u)return;let[a,o]=t;if(e(i=s.merge(o,null!=(r=n())?r:g),!0),a)return d()}).then(()=>{l===u&&(null==m||m(n(),void 0),i=n(),o=!0,h.forEach(e=>e(i)))}).catch(e=>{l===u&&(null==m||m(void 0,e))})};return l.persist={setOptions:e=>{s={...s,...e},e.storage&&(f=e.storage)},clearStorage:()=>{++u,null==f||f.removeItem(s.name)},getOptions:()=>s,rehydrate:()=>p(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(h.add(e),()=>{h.delete(e)})},s.skipHydration||p(),i||g}));e.s(["thursdaySettings",0,()=>l.LiveSettingsSchema.parse(c.getState()),"useThursdayStore",0,c],67045)},561540,e=>{"use strict";var t=e.i(213377);let r={[t.TOOL_NAMES.memory_recall]:"Checking your notes",[t.TOOL_NAMES.memory_remember]:"Noting that down",[t.TOOL_NAMES.memory_forget]:"Forgetting that",[t.TOOL_NAMES.memory_conversation]:"Reading back an earlier call",[t.TOOL_NAMES.bash]:"Doing it on this computer",[t.TOOL_NAMES.web_search]:"Searching the web",[t.TOOL_NAMES.load_skill]:"Reading how to do this",[t.TOOL_NAMES.look_at]:"Looking at the picture",[t.TOOL_NAMES.end_call]:"Ending the call",[t.TOOL_NAMES.routine]:"Checking your routines"};function n(e){if(!e)return null;try{let t=JSON.parse(e);if(t&&"object"==typeof t&&!Array.isArray(t))return t}catch{}return null}let a=new Set([t.TOOL_NAMES.thread_tell,t.TOOL_NAMES.thread_answer,t.TOOL_NAMES.thread_status,t.TOOL_NAMES.thread_show,t.TOOL_NAMES.thread_cancel,t.TOOL_NAMES.thread_seen]);function l(e,r){if(e!==t.TOOL_NAMES.web_search)return null;try{let e=JSON.parse(r),t=Array.isArray(e.sources)?e.sources.flatMap(e=>e&&"object"==typeof e&&"string"==typeof e.url?[e]:[]):[];return{query:"string"==typeof e.query?e.query:null,sources:t}}catch{return null}}e.s(["searchOf",0,l,"searchQueryOf",0,function(e){let t=n(e)?.query;return"string"==typeof t&&t.trim()?t.trim():null},"searchSourcesOf",0,function(e){let r=n(e);return r?l(t.TOOL_NAMES.web_search,JSON.stringify(r))?.sources??[]:[]},"startedLabel",0,function(e,r){if(e!==t.TOOL_NAMES.thread_start)return null;try{let e=JSON.parse(r);return"string"==typeof e.label?e.label:null}catch{return null}},"toolBot",0,function(e,r,l,i){let s=n(r);if(!s)return null;if(e===t.TOOL_NAMES.thread_start)return"string"==typeof s.bot&&s.bot.trim()?s.bot.trim():null;if(!a.has(e))return null;let o="string"==typeof s.thread?s.thread.trim():"";if(!o||"all"===o.toLowerCase())return null;let u=o.toLowerCase(),c=l?.find(e=>e.id===o)??l?.find(e=>e.label.toLowerCase()===u);return c?e===t.TOOL_NAMES.thread_answer?c.room.questions[0]?.bot??c.bot:c.bot:function(e){let t=n(e);if(!t)return null;if("string"==typeof t.bot&&t.bot.trim())return t.bot.trim();let r=t.answered;return"string"==typeof r?.bot?r.bot:null}(i)},"toolLine",0,function(e,a,l=null){let i;if(e===t.TOOL_NAMES.tool_search||e===t.TOOL_NAMES.tool_call)return"Reaching a connected service";let s=n(a);return(s&&function(e,r,n){if(e===t.TOOL_NAMES.memory_remember){let e="string"==typeof r.path?r.path.trim():"",t=function(e){if(!Array.isArray(e.facts))return null;let t=e.facts.map(e=>e&&"object"==typeof e&&"string"==typeof e.text?e.text.trim():"").filter(Boolean);return t.length?{text:t[0],more:t.length-1}:null}(r);if(!e)return null;if(!t)return`Noting that under ${e}`;let n=t.more>0?` (+${t.more})`:"";return`Noting under ${e}: ${function(e){let t=e.trim().replace(/\s+/g," ");if(t.length<=28)return t;let r=t.slice(0,28),n=r.lastIndexOf(" ");return`${(n>14?r.slice(0,n):r).trimEnd()}…`}(t.text)}${n}`}if(e===t.TOOL_NAMES.thread_start){let e="string"==typeof r.bot?r.bot.trim():"";return e?`Handing this to ${e}`:"Handing this over"}if(e===t.TOOL_NAMES.web_search){let e="string"==typeof r.query?r.query.trim():"";return e?`Searching \xb7 ${e}`:null}if(e===t.TOOL_NAMES.routine){if("create"===r.action){let e=["string"==typeof r.bot?r.bot.trim():"",function(e){if("string"==typeof e.at&&e.at.length>=16){let[t,r]=e.at.split(" "),[n,a,l]=t.split("-").map(Number),i=new Date(n,a-1,l);if(i.toDateString()===new Date().toDateString())return`once at ${r}`;let s=i.toLocaleDateString("en-US",{month:"short",day:"numeric"});return`once, ${s} ${r}`}return"string"==typeof e.time&&e.time?`daily at ${e.time}`:"number"==typeof e.everyHours?`every ${e.everyHours} hours`:null}(r)].filter(Boolean).join(", ");return e?`Setting a routine \xb7 ${e}`:"Setting a routine"}return"change"===r.action?"Changing a routine":"delete"===r.action?"Deleting a routine":null}let a="string"==typeof r.thread?r.thread.trim():"";return e===t.TOOL_NAMES.thread_tell?n?`Telling ${n}`:"Passing that on":e===t.TOOL_NAMES.thread_answer?n?`Answering ${n}`:"Answering that":e===t.TOOL_NAMES.thread_cancel?a?`Stopping ${a}`:"Stopping that":e===t.TOOL_NAMES.thread_seen?a?`Marking ${a} as read`:"Marking that as read":e===t.TOOL_NAMES.thread_show?a?`Opening ${a}`:"Opening that":e===t.TOOL_NAMES.thread_status?a&&"all"!==a.toLowerCase()?`Checking on ${a}`:"Checking on the work":null}(e,s,l))??r[e]??((i=e.indexOf("__"))<=0?null:`Reaching ${e.slice(0,i).replace(/[-_]/g," ")}`)}])},319841,e=>{"use strict";var t=e.i(271645);let r=["ctrl","alt","meta"],n=/^(Control|Alt|Shift|Meta|OS)/,a=/^(input|textarea|select)$/i,l=e=>!!e&&!!(a.test(e.tagName)||e.isContentEditable||e.closest?.("[data-hotkey-capture]"));function i(e){let{code:t,ctrlKey:r,altKey:a,shiftKey:l,metaKey:i}=e;if(!t||n.test(t)||!r&&!a&&!i)return null;let s=[];return r&&s.push("ctrl"),a&&s.push("alt"),l&&s.push("shift"),i&&s.push("meta"),[...s,t].join("+")}let s={ctrl:["Ctrl","⌃"],alt:["Alt","⌥"],shift:["Shift","⇧"],meta:["Meta","⌘"]};e.s(["HOTKEY_CAPTURE",0,{"data-hotkey-capture":""},"capturesKeys",0,l,"comboOf",0,i,"isCombo",0,e=>{let t=e.split("+"),a=t.at(-1);return!!(a&&!n.test(a)&&t.slice(0,-1).some(e=>r.includes(e)))},"useHotkey",0,function({enabled:e,combo:r,onPress:n}){let a=(0,t.useRef)(n);a.current=n,(0,t.useEffect)(()=>{if(!e||!r)return;let t=e=>{e.repeat||l(e.target)||i(e)===r&&(e.preventDefault(),a.current())};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[e,r])},"useHotkeyLabel",0,function(e){let[r,n]=(0,t.useState)(!1);return(0,t.useEffect)(()=>n(/mac/i.test(navigator.userAgent)),[]),e?function(e,t=!1){let r=e.split("+"),n=r.at(-1)??"",a=r.slice(0,-1).map(e=>s[e]?.[+!!t]??e),l=n.replace(/^(Key|Digit|Numpad)/,"").replace(/([a-z])([A-Z])/g,"$1 $2")||n;return t?[...a,l].join(""):[...a,l].join(" + ")}(e,r):null}])}]);