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