thursday-agent 0.4.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +3 -2
- package/.next/build-manifest.json +3 -3
- package/.next/prerender-manifest.json +3 -3
- package/.next/required-server-files.json +8 -1
- package/.next/routes-manifest.json +18 -6
- package/.next/server/app/_global-error/page.js.nft.json +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 +10 -6
- package/.next/server/app/api/artifact/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/memory/files/route.js +6 -5
- package/.next/server/app/api/bot/memory/files/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/memory/route.js +8 -8
- package/.next/server/app/api/bot/memory/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/route.js +8 -8
- package/.next/server/app/api/bot/route.js.nft.json +1 -1
- package/.next/server/app/api/bot/thread/[id]/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/bot/thread/[id]/route.js +15 -0
- package/.next/server/app/api/bot/thread/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/bot/thread/[id]/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/bot/thread/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/bot/thread/route.js +15 -0
- package/.next/server/app/api/bot/thread/route.js.nft.json +1 -0
- package/.next/server/app/api/bot/thread/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/config/route.js +7 -7
- package/.next/server/app/api/config/route.js.nft.json +1 -1
- package/.next/server/app/api/events/route.js +3 -3
- package/.next/server/app/api/events/route.js.nft.json +1 -1
- package/.next/server/app/api/file/[...path]/route.js +5 -5
- package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/api/llm-model/catalog/route.js +8 -8
- package/.next/server/app/api/llm-model/catalog/route.js.nft.json +1 -1
- package/.next/server/app/api/llm-model/credits/route.js +8 -8
- package/.next/server/app/api/llm-model/credits/route.js.nft.json +1 -1
- package/.next/server/app/api/llm-model/route.js +8 -8
- package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
- package/.next/server/app/api/llm-model/subscription/route.js +8 -8
- package/.next/server/app/api/llm-model/subscription/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/[name]/route.js +6 -6
- package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/oauth/callback/route.js +4 -4
- package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/route.js +6 -6
- package/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/.next/server/app/api/mcp/tools/route.js +6 -6
- package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
- package/.next/server/app/api/memory/edit/route.js +13 -13
- package/.next/server/app/api/memory/edit/route.js.nft.json +1 -1
- package/.next/server/app/api/memory/route.js +7 -6
- package/.next/server/app/api/memory/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/[source]/[name]/route.js +6 -6
- package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/route.js +6 -6
- package/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/thursday/call/route.js +10 -11
- package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
- package/.next/server/app/api/thursday/skills/route.js +10 -11
- package/.next/server/app/api/thursday/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/thursday/tool-call/route.js +15 -15
- package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
- package/.next/server/app/api/workspace/missing/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/workspace/missing/route/build-manifest.json +12 -0
- package/.next/server/app/api/workspace/missing/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/workspace/missing/route.js +12 -0
- package/.next/server/app/api/workspace/missing/route.js.map +5 -0
- package/.next/server/app/api/workspace/missing/route.js.nft.json +1 -0
- package/.next/server/app/api/workspace/missing/route_client-reference-manifest.js +3 -0
- package/.next/server/app/api/workspace/route.js +5 -4
- 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 +4 -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 +67 -45
- package/.next/server/app/page.js +10 -9
- 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 +3 -2
- package/.next/server/chunks/[root-of-the-server]__02846fb._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__049f521._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__05luceg._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__06--3q3._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__07bnah_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__08eae20._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__0_ue8oe._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0c9fgca._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__0g-ueei._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__0h_x6q6._.js +5 -0
- package/.next/server/chunks/{[root-of-the-server]__0pa2n68._.js → [root-of-the-server]__0kxrvxf._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__0q0vvt2._.js → [root-of-the-server]__0ov3iir._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__0qwtlmx._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__0sm5xvm._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0ye3da2._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0zp35ul._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__144u9d_._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__18-2tsq._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__1e-ci13._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1e2365e._.js +8 -0
- package/.next/server/chunks/[root-of-the-server]__1fix932._.js +8 -0
- package/.next/server/chunks/{[root-of-the-server]__0ce8nf8._.js → [root-of-the-server]__1g3t7vn._.js} +3 -3
- package/.next/server/chunks/[root-of-the-server]__1kp-83u._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__1kv8p3e._.js +5 -0
- package/.next/server/chunks/[root-of-the-server]__1orn-5b._.js +2 -3
- package/.next/server/chunks/_02szwk8._.js +5 -0
- package/.next/server/chunks/_05h2cii._.js +1 -1
- package/.next/server/chunks/_06c9kie._.js +216 -0
- package/.next/server/chunks/{_1x6kd1r._.js → _07y2gj-._.js} +1 -1
- package/.next/server/chunks/_0a43a-0._.js +3 -0
- package/.next/server/chunks/_0bujjey._.js +5 -0
- package/.next/server/chunks/_0c9j6rb._.js +1 -1
- package/.next/server/chunks/_0dkd549._.js +3 -0
- package/.next/server/chunks/_0ej1kvv._.js +3 -0
- package/.next/server/chunks/_0f6ts7z._.js +3 -0
- package/.next/server/chunks/_0gm9hyv._.js +55 -0
- package/.next/server/chunks/_0i55en5._.js +25 -0
- package/.next/server/chunks/_0k50n27._.js +18 -0
- package/.next/server/chunks/_0khihjk._.js +3 -3
- package/.next/server/chunks/_0n74zsf._.js +5 -5
- package/.next/server/chunks/_0nvm9ef._.js +3 -0
- package/.next/server/chunks/_0p56fn0._.js +3 -0
- package/.next/server/chunks/_0recufk._.js +1 -1
- package/.next/server/chunks/_0xbkz10._.js +3 -0
- package/.next/server/chunks/_10tkr26._.js +3 -0
- package/.next/server/chunks/{_0ioz3nd._.js → _11u2kp7._.js} +1 -1
- package/.next/server/chunks/_11ujpya._.js +3 -0
- package/.next/server/chunks/_127nx_p._.js +5 -0
- package/.next/server/chunks/_17l5ygt._.js +1 -1
- package/.next/server/chunks/_19uauj6._.js +3 -0
- package/.next/server/chunks/_1_5mnq4._.js +5 -5
- package/.next/server/chunks/_1abl6t9._.js +55 -0
- package/.next/server/chunks/_1d0j961._.js +3 -3
- package/.next/server/chunks/_1dbixxz._.js +3 -0
- package/.next/server/chunks/_1dc_d1q._.js +98 -0
- package/.next/server/chunks/_1drgfx4._.js +5 -5
- package/.next/server/chunks/_1e48czp._.js +3 -3
- package/.next/server/chunks/_1f31u5x._.js +5 -0
- package/.next/server/chunks/_1kg70wc._.js +3 -3
- package/.next/server/chunks/_1klbcft._.js +5 -0
- package/.next/server/chunks/_1krd9rf._.js +4 -1
- package/.next/server/chunks/_1kwmzab._.js +3 -0
- package/.next/server/chunks/{_1pf4qe-._.js → _1oxj9fa._.js} +1 -1
- package/.next/server/chunks/{_1f46eie._.js → _1pcmdbb._.js} +1 -1
- package/.next/server/chunks/_1qgix-j._.js +3 -0
- package/.next/server/chunks/{lib_logger_ts_1exwjut._.js → _1rpchta._.js} +5 -5
- package/.next/server/chunks/_1vsej-s._.js +5 -0
- package/.next/server/chunks/_1yx0p_s._.js +5 -0
- package/.next/server/chunks/{_0rnf-6n._.js → _20fsr_z._.js} +6 -6
- package/.next/server/chunks/_2128hkj._.js +5 -0
- package/.next/server/chunks/_next-internal_server_app_api_bot_thread_[id]_route_actions_1fstjn2.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_bot_thread_route_actions_003ccso.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_workspace_missing_route_actions_1fidi6p.js +3 -0
- package/.next/server/chunks/config_ts_1g4sz5o._.js +1 -1
- package/.next/server/chunks/features_0-cnt0l._.js +4 -0
- package/.next/server/chunks/features_0hdaci0._.js +4 -0
- package/.next/server/chunks/features_1e39j7-._.js +8 -0
- package/.next/server/chunks/features_bot_bot_query_ts_12mgkl2._.js +1 -1
- package/.next/server/chunks/features_memory_1uqvksn._.js +1 -1
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0r28-sm._.js → node_modules_consola_dist_chunks_prompt_mjs_0a7-pbw._.js} +1 -1
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0v_7drq._.js → node_modules_consola_dist_chunks_prompt_mjs_0gzvgfv._.js} +1 -1
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0i7cvml._.js → node_modules_consola_dist_chunks_prompt_mjs_107pxfn._.js} +1 -1
- package/.next/server/chunks/{node_modules_consola_dist_chunks_prompt_mjs_0icqaqw._.js → node_modules_consola_dist_chunks_prompt_mjs_15hbel8._.js} +1 -1
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_18i-23e._.js +3 -0
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1bewgf3._.js +3 -0
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1kipdeo._.js +3 -0
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1nlww1m._.js +3 -0
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1q77nfx._.js +3 -0
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1xqdzx_._.js +3 -0
- package/.next/server/chunks/{node_modules_zod_v4_1801ax7._.js → node_modules_zod_v4_0lkux5-._.js} +2 -2
- package/.next/server/chunks/{node_modules_zod_v4_1cha_bw._.js → node_modules_zod_v4_1jmr9cq._.js} +2 -2
- package/.next/server/chunks/{node_modules_zod_v4_0ubdflj._.js → node_modules_zod_v4_1yrxmek._.js} +2 -2
- package/.next/server/chunks/node_modules_zod_v4_classic_errors_0tp0y-q.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__09q9med._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0bxsfyn._.js +101 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0lyi8i2._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__16jc196._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__172cq4x._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__18dthbp._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__18e68w8._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1fll8dc._.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]__1nygfik._.js +5 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1sdphb0._.js +8 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__1waa3rc._.js +100 -0
- package/.next/server/chunks/ssr/_00rehl_._.js +3 -0
- package/.next/server/chunks/ssr/{_1lz_cq2._.js → _02oc_h5._.js} +76 -89
- package/.next/server/chunks/ssr/_03_928f._.js +3 -0
- package/.next/server/chunks/ssr/_05yghx6._.js +3 -0
- package/.next/server/chunks/ssr/_08c4z-9._.js +3 -0
- package/.next/server/chunks/ssr/_0_qfdlw._.js +4 -0
- package/.next/server/chunks/ssr/_0c9e5w6._.js +9 -0
- package/.next/server/chunks/ssr/{_0s99bgb._.js → _0dh2e1j._.js} +9 -3
- package/.next/server/chunks/ssr/_0dr-ddg._.js +3 -0
- package/.next/server/chunks/ssr/_0eaog6_._.js +3 -0
- package/.next/server/chunks/ssr/_0evkpto._.js +3 -0
- package/.next/server/chunks/ssr/_0g_rlog._.js +3 -0
- package/.next/server/chunks/ssr/_0geg212._.js +3 -0
- package/.next/server/chunks/ssr/{_1gd8q8l._.js → _0hxt2ul._.js} +2 -2
- package/.next/server/chunks/ssr/_0i_6q1w._.js +2 -2
- package/.next/server/chunks/ssr/_0lu1n_x._.js +1 -1
- package/.next/server/chunks/ssr/{_15j2_8f._.js → _0wzaht-._.js} +2 -2
- package/.next/server/chunks/ssr/_0z-g0uy._.js +3 -0
- package/.next/server/chunks/ssr/_123ttsf._.js +3 -0
- package/.next/server/chunks/ssr/_123y-ah._.js +3 -0
- package/.next/server/chunks/ssr/_12w42gi._.js +3 -0
- package/.next/server/chunks/ssr/_161kqav._.js +3 -0
- package/.next/server/chunks/ssr/{_0ap2fzn._.js → _16c6_xm._.js} +2 -2
- package/.next/server/chunks/ssr/_18opah7._.js +3 -0
- package/.next/server/chunks/ssr/_18xqmny._.js +3 -0
- package/.next/server/chunks/ssr/_1_krfph._.js +3 -0
- package/.next/server/chunks/ssr/{_1-_etts._.js → _1anqots._.js} +2 -2
- package/.next/server/chunks/ssr/_1ey7qn-._.js +70 -0
- package/.next/server/chunks/ssr/_1g9vs7q._.js +3 -0
- package/.next/server/chunks/ssr/_1jmz33w._.js +3 -0
- package/.next/server/chunks/ssr/{_0n3toaw._.js → _1k0spz7._.js} +2 -2
- package/.next/server/chunks/ssr/_1rgtxhr._.js +5 -0
- package/.next/server/chunks/ssr/_1slp25y._.js +3 -0
- package/.next/server/chunks/ssr/{_1fojd41._.js → _1x9pskj._.js} +3 -3
- package/.next/server/chunks/ssr/_1y6b5mr._.js +101 -0
- package/.next/server/chunks/ssr/_1ztk7p6._.js +7 -0
- package/.next/server/chunks/ssr/components_ui_tabs_tsx_0ej40b4._.js +3 -0
- package/.next/server/chunks/ssr/features_bot_thread_query_ts_023eklt._.js +4 -0
- 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/{_1-teee5._.js → lib_logger_ts_0-olsze._.js} +2 -7
- package/.next/server/chunks/ssr/{node_modules_0cxaxk9._.js → node_modules_00_51_v._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_04jf_m8._.js → node_modules_022sipm._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0g7fzk3._.js → node_modules_0332gw4._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1cx_ql6._.js → node_modules_04vxchl._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1vh5ntv._.js → node_modules_0746rzi._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0yugy6m._.js → node_modules_0d5uzof._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_09q35v_._.js → node_modules_0exkwcm._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_08dhkiq._.js → node_modules_0fr-ml8._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_14q6g4n._.js → node_modules_0mxvg8h._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0arus10._.js → node_modules_0qapgjr._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1eg7m6c._.js → node_modules_0qbfyjh._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1cz2hle._.js → node_modules_0t-9nup._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_17bwo43._.js → node_modules_0tusx4d._.js} +3 -3
- package/.next/server/chunks/ssr/{node_modules_1efrqxi._.js → node_modules_0vsxbzp._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0_-_a--._.js → node_modules_0vv0-fg._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1gdh31p._.js → node_modules_0wsvp00._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1hpopmo._.js → node_modules_1-urho9._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1_pc9kq._.js → node_modules_16pi_dd._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_00etblx._.js → node_modules_1d53yiq._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1aaxuef._.js → node_modules_1g1eihe._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_198nmll._.js → node_modules_1gpednh._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0pvd7q-._.js → node_modules_1gu1pph._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0b__sgl._.js → node_modules_1he1w8_._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_1qpjvy5._.js → node_modules_1lnjapm._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0940ns5._.js → node_modules_1lynj9m._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0x3-ply._.js → node_modules_1seuurl._.js} +2 -2
- package/.next/server/chunks/ssr/{node_modules_14om4ar._.js → node_modules_1u6w1pb._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_0had7xd._.js → node_modules_1xn6saw._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1b748ic._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_067_exa._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1z4hm5e._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0nrrdaq._.js} +1 -1
- package/.next/server/chunks/ssr/{node_modules_@vercel_oidc_dist_06mk8id._.js → node_modules_@vercel_oidc_dist_21a5haa._.js} +1 -1
- package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_trash_mjs_0px2gzr._.js +3 -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 +68 -46
- package/.next/static/chunks/0dr16v67vj4n7.js +2 -0
- package/.next/static/chunks/0g4b348l0pve7.js +1 -0
- package/.next/static/chunks/0joan-69kbspd.js +1 -0
- package/.next/static/chunks/0vlgzqo9ka90v.js +1 -0
- package/.next/static/chunks/0zrupxgci5gqc.js +1 -0
- package/.next/static/chunks/10k2xvap03z20.css +1 -0
- package/.next/static/chunks/18mkhstgiqcbt.js +1 -0
- package/.next/static/chunks/{15m575979un5f.js → 1i-u2wzub_to1.js} +2 -2
- package/.next/static/chunks/1kp5nfp06nj9h.js +5 -0
- package/.next/static/chunks/1ohslk4568tm3.js +1 -0
- package/.next/static/chunks/1sbmwswc9k2-1.js +1 -0
- package/.next/static/chunks/1t9qms5pwwa3n.js +1 -0
- package/.next/static/chunks/1vj_5bnbxx84e.js +1 -0
- package/.next/static/chunks/1vqezbhjm3goq.js +1 -0
- package/.next/static/chunks/{3akmqm77muj4-.js → 1wlo979mx-y3w.js} +1 -1
- package/.next/static/chunks/26ql4y-43xwhp.js +1 -0
- package/.next/static/chunks/{0fl3gwe4-l6tz.js → 2_pnccjp6j1ca.js} +1 -1
- package/.next/static/chunks/2a51-ywz9b2a3.js +1 -0
- package/.next/static/chunks/2fvdgxih7x7hr.js +1 -0
- package/.next/static/chunks/2jlz8zp4jax_m.js +18 -0
- package/.next/static/chunks/2nvepds1fu2ux.js +1 -0
- package/.next/static/chunks/3addj3i4-izma.js +1 -0
- package/.next/static/chunks/3bfwpww3m3x4u.js +1 -0
- package/.next/static/chunks/3gfh7nxwusbt0.js +1 -0
- package/.next/static/chunks/3gwa44cvz4qoi.js +1 -0
- package/.next/static/chunks/{38gweqdo4jpfj.js → 3izg0a3k87q1-.js} +5 -5
- package/.next/static/chunks/3zk6q3-3f9swq.js +99 -0
- package/.next/static/chunks/3zkg5iup3v4a2.js +12 -0
- package/.next/static/chunks/405m0bqtoihev.js +1 -0
- package/.next/static/chunks/42wcg3wfg_m_p.js +1 -0
- package/README.md +27 -216
- package/app/api/events/app-event.ts +6 -4
- package/app/api/query-key.ts +25 -16
- package/bin/database.mjs +37 -0
- package/bin/thursday.mjs +44 -28
- package/components/ui/custom-icon.tsx +0 -60
- package/components/ui/radio-group.tsx +37 -0
- package/components/ui/shiny-text.tsx +33 -6
- package/database/migrations/{20260910173049_numerous_spirit → 20260916145701_clever_multiple_man}/migration.sql +80 -24
- package/database/migrations/{20260910173049_numerous_spirit → 20260916145701_clever_multiple_man}/snapshot.json +689 -110
- package/database/migrations/20260916160713_thread_cancelled/migration.sql +2 -0
- package/database/migrations/{20260911030320_opposite_jack_power → 20260916160713_thread_cancelled}/snapshot.json +706 -84
- package/docs/how-it-works.md +39 -36
- package/docs/images/keeps-going.png +0 -0
- package/docs/images/two-minds.png +0 -0
- package/docs/live-calls.md +231 -0
- package/docs/thread-rooms.md +71 -0
- package/features/ai/chatgpt.ts +1 -2
- package/features/ai/live.schema.ts +128 -0
- package/features/ai/load-tools.ts +148 -77
- package/features/ai/model.schema.ts +2 -120
- package/features/ai/model.ts +52 -88
- package/features/ai/prompts/bot.prompt.ts +91 -214
- package/features/ai/prompts/live.prompt.ts +265 -0
- package/features/ai/prompts/prompt-helper.ts +91 -32
- package/features/ai/prompts/thursday.prompt.ts +125 -172
- package/features/ai/tools/bot.tool.ts +38 -145
- package/features/ai/tools/call.tool.ts +1 -1
- package/features/ai/tools/connected.ts +5 -3
- package/features/ai/tools/mcp.tool.ts +7 -4
- package/features/ai/tools/memory.tool.ts +35 -31
- package/features/ai/tools/skills.tool.ts +36 -14
- package/features/ai/tools/studio.tool.ts +26 -21
- package/features/ai/tools/tool-name.ts +2 -5
- package/features/ai/tools/workspace.tool.ts +33 -10
- package/features/artifact/artifact.action.ts +2 -2
- package/features/artifact/artifact.query.ts +112 -61
- package/features/artifact/artifact.schema.ts +8 -6
- package/features/artifact/components/artifact-setting.tsx +83 -33
- package/features/bot/bot.action.ts +43 -36
- package/features/bot/bot.memory.ts +137 -20
- package/features/bot/bot.query.ts +28 -11
- package/features/bot/bot.run.ts +299 -636
- package/features/bot/bot.runner.ts +468 -844
- package/features/bot/bot.schema.ts +93 -82
- package/features/bot/bot.seed.ts +141 -64
- package/features/bot/components/bot-mark.tsx +324 -232
- package/features/bot/components/bot-room.tsx +1613 -697
- package/features/bot/components/bot-roster.tsx +8 -13
- package/features/bot/components/bot-setting.tsx +58 -42
- package/features/bot/components/bot-tool.tsx +55 -87
- package/features/bot/components/mark-palette.tsx +35 -32
- package/features/bot/components/path-chips.tsx +33 -3
- package/features/bot/components/thread-badge.tsx +34 -0
- package/features/bot/components/thread-reply.tsx +639 -0
- package/features/bot/components/thread-setting.tsx +674 -0
- package/features/bot/mark.const.ts +79 -31
- package/features/bot/room.query.ts +889 -0
- package/features/bot/room.schema.ts +64 -0
- package/features/bot/seed-bots.ts +2 -1
- package/features/bot/thread.query.ts +971 -0
- package/features/bot/thread.store.ts +587 -0
- package/features/config/components/voice-key.tsx +113 -88
- package/features/config/config.const.ts +5 -9
- package/features/connectors/mcp.schema.ts +0 -2
- package/features/intro/components/intro.tsx +169 -139
- package/features/memory/components/memory-setting.tsx +2 -7
- package/features/memory/memory.schema.ts +14 -23
- package/features/settings/components/setting-ui.tsx +0 -44
- package/features/settings/components/settings.tsx +12 -12
- package/features/settings/settings.alert.ts +3 -3
- package/features/settings/settings.store.ts +1 -1
- package/features/skills/skills.schema.ts +0 -2
- package/features/thursday/components/ascii-field.tsx +24 -44
- package/features/thursday/components/ascii-orb.tsx +359 -358
- package/features/thursday/components/call-log.tsx +46 -44
- package/features/thursday/components/face.tsx +35 -10
- package/features/thursday/components/tab-state.tsx +3 -3
- package/features/thursday/components/thursday-mark.tsx +1 -0
- package/features/thursday/components/thursday-setting.tsx +631 -332
- package/features/thursday/components/thursday.tsx +106 -41
- package/features/thursday/components/voice-picker.tsx +255 -0
- package/features/thursday/thursday.action.ts +94 -68
- package/features/thursday/thursday.query.ts +49 -30
- package/features/thursday/thursday.schema.ts +27 -30
- package/features/thursday/thursday.store.ts +11 -7
- package/features/thursday/tool-call.ts +3 -3
- package/features/thursday/tool-line.ts +5 -3
- package/features/thursday/use-thursday.ts +725 -450
- package/features/workspace/workspace.query.ts +17 -0
- package/features/workspace/workspace.ts +103 -50
- package/lib/live/live.schema.ts +47 -0
- package/lib/live/live.server.ts +155 -0
- package/lib/live/live.session.ts +574 -0
- package/lib/{realtime/realtime.tap.ts → live/live.tap.ts} +41 -12
- package/lib/live/live.transport.ts +152 -0
- package/lib/protocol/use-server-pages.ts +9 -5
- package/lib/utils.ts +21 -20
- package/package.json +2 -2
- package/public/voices/alloy.ogg +0 -0
- package/public/voices/ash.ogg +0 -0
- package/public/voices/ballad.ogg +0 -0
- package/public/voices/beacon.ogg +0 -0
- package/public/voices/bossa.ogg +0 -0
- package/public/voices/cedar.ogg +0 -0
- package/public/voices/cinder.ogg +0 -0
- package/public/voices/coral.ogg +0 -0
- package/public/voices/delta.ogg +0 -0
- package/public/voices/echo.ogg +0 -0
- package/public/voices/gleam.ogg +0 -0
- package/public/voices/marin.ogg +0 -0
- package/public/voices/meridian.ogg +0 -0
- package/public/voices/quartz.ogg +0 -0
- package/public/voices/ripple.ogg +0 -0
- package/public/voices/sage.ogg +0 -0
- package/public/voices/shimmer.ogg +0 -0
- package/public/voices/stone.ogg +0 -0
- package/public/voices/tempo.ogg +0 -0
- package/public/voices/verse.ogg +0 -0
- package/public/voices/vesper.ogg +0 -0
- package/public/voices/willow.ogg +0 -0
- package/scripts/artifact-paths.test.mts +25 -0
- package/scripts/bot-context.test.mts +1408 -0
- package/scripts/live-history.test.mts +115 -0
- package/scripts/live-session.test.mts +948 -0
- package/server.js +1 -1
- package/skills/browser/SKILL.md +17 -6
- package/skills/computer/SKILL.md +1 -1
- package/skills/find-skills/SKILL.md +3 -8
- package/skills/interactive-page/SKILL.md +12 -7
- package/skills/interactive-page/references/diagram.md +89 -0
- package/skills/interactive-page/scripts/archify/LICENSE +22 -0
- package/skills/interactive-page/scripts/archify/README.md +25 -0
- package/skills/interactive-page/scripts/archify/assets/JetBrainsMono-OFL.txt +93 -0
- package/skills/interactive-page/scripts/archify/assets/template.html +14934 -0
- package/skills/interactive-page/scripts/archify/bin/archify.mjs +2126 -0
- package/skills/interactive-page/scripts/archify/bin/open-artifact.mjs +86 -0
- package/skills/interactive-page/scripts/archify/bin/preview.mjs +653 -0
- package/skills/interactive-page/scripts/archify/bin/visual-check.mjs +829 -0
- package/skills/interactive-page/scripts/archify/delta/architecture-delta.mjs +1223 -0
- package/skills/interactive-page/scripts/archify/examples/agent-run.lifecycle.json +60 -0
- package/skills/interactive-page/scripts/archify/examples/agent-tool-call.workflow.json +94 -0
- package/skills/interactive-page/scripts/archify/examples/async-job-roundtrip.sequence.json +61 -0
- package/skills/interactive-page/scripts/archify/examples/cache-miss-request.sequence.json +82 -0
- package/skills/interactive-page/scripts/archify/examples/checkout-platform.base.architecture.json +31 -0
- package/skills/interactive-page/scripts/archify/examples/checkout-platform.head.architecture.json +31 -0
- package/skills/interactive-page/scripts/archify/examples/deployment-release.lifecycle.json +49 -0
- package/skills/interactive-page/scripts/archify/examples/event-stream.dataflow.json +57 -0
- package/skills/interactive-page/scripts/archify/examples/incident-response.workflow.json +64 -0
- package/skills/interactive-page/scripts/archify/examples/product-analytics.dataflow.json +76 -0
- package/skills/interactive-page/scripts/archify/examples/production-deployment.architecture.json +71 -0
- package/skills/interactive-page/scripts/archify/examples/release-delivery.workflow.json +62 -0
- package/skills/interactive-page/scripts/archify/examples/web-app.architecture.json +46 -0
- package/skills/interactive-page/scripts/archify/migrations/workflow-v2.mjs +279 -0
- package/skills/interactive-page/scripts/archify/recipes/scenarios.mjs +284 -0
- package/skills/interactive-page/scripts/archify/references/authoring-contract.md +243 -0
- package/skills/interactive-page/scripts/archify/references/delivery-contract.md +120 -0
- package/skills/interactive-page/scripts/archify/references/viewer-runtime.md +45 -0
- package/skills/interactive-page/scripts/archify/renderers/architecture/grid.mjs +62 -0
- package/skills/interactive-page/scripts/archify/renderers/architecture/render-architecture.mjs +1078 -0
- package/skills/interactive-page/scripts/archify/renderers/dataflow/README.md +104 -0
- package/skills/interactive-page/scripts/archify/renderers/dataflow/render-dataflow.mjs +483 -0
- package/skills/interactive-page/scripts/archify/renderers/lifecycle/README.md +115 -0
- package/skills/interactive-page/scripts/archify/renderers/lifecycle/render-lifecycle.mjs +561 -0
- package/skills/interactive-page/scripts/archify/renderers/sequence/README.md +114 -0
- package/skills/interactive-page/scripts/archify/renderers/sequence/render-sequence.mjs +464 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/brand-marks.mjs +563 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/cli.mjs +218 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/desktop-readability.mjs +26 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/diagnostics.mjs +127 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/engineering-profiles.mjs +157 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/generated-brand-marks.mjs +3 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/generated-validators.mjs +13 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/geometry.mjs +1423 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/i18n.mjs +595 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/layout-report.mjs +40 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/legend.mjs +217 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/output-path.mjs +340 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/repository-evidence.mjs +238 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/repository-location.mjs +58 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/text-fit.mjs +49 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/utils.mjs +232 -0
- package/skills/interactive-page/scripts/archify/renderers/shared/validator.mjs +86 -0
- package/skills/interactive-page/scripts/archify/renderers/workflow/README.md +223 -0
- package/skills/interactive-page/scripts/archify/renderers/workflow/render-workflow.mjs +35 -0
- package/skills/interactive-page/scripts/archify/renderers/workflow/workflow-compiler.mjs +4400 -0
- package/skills/interactive-page/scripts/archify/renderers/workflow/workflow-migration-geometry.mjs +144 -0
- package/skills/interactive-page/scripts/archify/schemas/README.md +211 -0
- package/skills/interactive-page/scripts/archify/schemas/architecture.schema.json +178 -0
- package/skills/interactive-page/scripts/archify/schemas/common.schema.json +115 -0
- package/skills/interactive-page/scripts/archify/schemas/dataflow.schema.json +243 -0
- package/skills/interactive-page/scripts/archify/schemas/lifecycle.schema.json +266 -0
- package/skills/interactive-page/scripts/archify/schemas/sequence.schema.json +223 -0
- package/skills/interactive-page/scripts/archify/schemas/workflow.schema.json +428 -0
- package/skills/interactive-page/scripts/archify/scripts/check-render-output.mjs +916 -0
- package/skills/interactive-page/scripts/archify/scripts/render-examples.mjs +26 -0
- package/skills/interactive-page/scripts/bundle-artifact.sh +9 -8
- package/skills/skill-creator/SKILL.md +4 -5
- package/.next/server/app/api/bot/task/[id]/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/bot/task/[id]/route.js +0 -16
- package/.next/server/app/api/bot/task/[id]/route.js.nft.json +0 -1
- package/.next/server/app/api/bot/task/[id]/route_client-reference-manifest.js +0 -3
- package/.next/server/app/api/bot/task/route/app-paths-manifest.json +0 -3
- package/.next/server/app/api/bot/task/route.js +0 -16
- package/.next/server/app/api/bot/task/route.js.nft.json +0 -1
- package/.next/server/app/api/bot/task/route_client-reference-manifest.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__01dkp4a._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__02va5wz._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__02xjoto._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__04q--0f._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__0bl-e63._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0ffbg85._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0jq4ohy._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__0ls6_8y._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__0ncs9uu._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1-ga0kh._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__11n256_._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__12cabg9._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1339jnv._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__18_teo8._.js +0 -8
- package/.next/server/chunks/[root-of-the-server]__1_04mcf._.js +0 -5
- package/.next/server/chunks/[root-of-the-server]__1anc1p9._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1ccon1w._.js +0 -10
- package/.next/server/chunks/[root-of-the-server]__1fizn31._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1llj3-b._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1p8m3f4._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1wa1k7r._.js +0 -8
- package/.next/server/chunks/_0-73of8._.js +0 -55
- package/.next/server/chunks/_0-fjql4._.js +0 -26
- package/.next/server/chunks/_00xh_q0._.js +0 -25
- package/.next/server/chunks/_03a0897._.js +0 -3
- package/.next/server/chunks/_051qh8u._.js +0 -3
- package/.next/server/chunks/_05sovvj._.js +0 -3
- package/.next/server/chunks/_0fzqt2y._.js +0 -134
- package/.next/server/chunks/_0mecv0f._.js +0 -26
- package/.next/server/chunks/_0mh8j4m._.js +0 -3
- package/.next/server/chunks/_0obojvv._.js +0 -3
- package/.next/server/chunks/_0sb7tlz._.js +0 -3
- package/.next/server/chunks/_0sbynis._.js +0 -3
- package/.next/server/chunks/_0u10wmw._.js +0 -55
- package/.next/server/chunks/_0u4aiy2._.js +0 -3
- package/.next/server/chunks/_0wp4le3._.js +0 -3
- package/.next/server/chunks/_0y5fg-x._.js +0 -3
- package/.next/server/chunks/_1230wbx._.js +0 -10
- package/.next/server/chunks/_12nheja._.js +0 -3
- package/.next/server/chunks/_13510xh._.js +0 -3
- package/.next/server/chunks/_15hq89o._.js +0 -3
- package/.next/server/chunks/_18-1wcc._.js +0 -55
- package/.next/server/chunks/_1_9mjx-._.js +0 -3
- package/.next/server/chunks/_1c78vw5._.js +0 -229
- package/.next/server/chunks/_1h5_8sk._.js +0 -3
- package/.next/server/chunks/_1hdnxb7._.js +0 -3
- package/.next/server/chunks/_1j8k_j5._.js +0 -3
- package/.next/server/chunks/_1nula3v._.js +0 -3
- package/.next/server/chunks/_1php4eq._.js +0 -3
- package/.next/server/chunks/_1yuv4vp._.js +0 -3
- package/.next/server/chunks/_1zjrdag._.js +0 -3
- package/.next/server/chunks/_next-internal_server_app_api_bot_task_[id]_route_actions_1_k_8u3.js +0 -3
- package/.next/server/chunks/_next-internal_server_app_api_bot_task_route_actions_0xln6ra.js +0 -3
- package/.next/server/chunks/features_0rpfxbk._.js +0 -3
- package/.next/server/chunks/features_1qf3cei._.js +0 -3
- package/.next/server/chunks/features_bot_0zt92oh._.js +0 -3
- package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1xoq2rl._.js +0 -3
- package/.next/server/chunks/ssr/[externals]__0dizgek._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__092knlj._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0mz33a7._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0s9dq5u._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0s9l2sv._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0vnmv-s._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__0xsog8n._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__10-dz5o._.js +0 -61
- package/.next/server/chunks/ssr/[root-of-the-server]__1gtlw6v._.js +0 -43
- package/.next/server/chunks/ssr/[root-of-the-server]__1ox7hbk._.js +0 -4
- package/.next/server/chunks/ssr/[root-of-the-server]__202p40z._.js +0 -3
- package/.next/server/chunks/ssr/_001_ms1._.js +0 -28
- package/.next/server/chunks/ssr/_01n3o0m._.js +0 -3
- package/.next/server/chunks/ssr/_0fz4mf_._.js +0 -3
- package/.next/server/chunks/ssr/_0gb4gmf._.js +0 -3
- package/.next/server/chunks/ssr/_0h42fze._.js +0 -3
- package/.next/server/chunks/ssr/_0h7zdni._.js +0 -3
- package/.next/server/chunks/ssr/_0ilna52._.js +0 -42
- package/.next/server/chunks/ssr/_0q0zan6._.js +0 -70
- package/.next/server/chunks/ssr/_0zcjrbg._.js +0 -3
- package/.next/server/chunks/ssr/_0zhoc3r._.js +0 -3
- package/.next/server/chunks/ssr/_13fke0x._.js +0 -3
- package/.next/server/chunks/ssr/_18cymkq._.js +0 -3
- package/.next/server/chunks/ssr/_1b2mjwr._.js +0 -3
- package/.next/server/chunks/ssr/_1f-dg-6._.js +0 -3
- package/.next/server/chunks/ssr/_1h0rw11._.js +0 -3
- package/.next/server/chunks/ssr/_1jhd09t._.js +0 -3
- package/.next/server/chunks/ssr/_1nnsk7z._.js +0 -3
- package/.next/server/chunks/ssr/_1ov37if._.js +0 -3
- package/.next/server/chunks/ssr/_1sji22n._.js +0 -3
- package/.next/server/chunks/ssr/_1vi_uo7._.js +0 -3
- package/.next/server/chunks/ssr/_1vyd1ji._.js +0 -3
- package/.next/server/chunks/ssr/_1xx4zlb._.js +0 -3
- package/.next/server/chunks/ssr/components_ui_1y1l7yj._.js +0 -3
- package/.next/server/chunks/ssr/features_bot_1s_-2vj._.js +0 -3
- package/.next/server/chunks/ssr/lib_realtime_12wg_dd._.js +0 -27
- package/.next/server/chunks/ssr/lib_realtime_15h_v1v._.js +0 -27
- package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_0npjf8-._.js +0 -3
- package/.next/static/chunks/00rd4-v8r7axp.js +0 -1
- package/.next/static/chunks/08qe4as2q428z.js +0 -3
- package/.next/static/chunks/0gnqdjn2lvdad.js +0 -2
- package/.next/static/chunks/0hwap1-p0m5sa.js +0 -1
- package/.next/static/chunks/0r5qcctujhxli.js +0 -1
- package/.next/static/chunks/0w52rrrmuj9r9.js +0 -1
- package/.next/static/chunks/0wcprt5ot5she.js +0 -1
- package/.next/static/chunks/10teww7wt-f6h.js +0 -1
- package/.next/static/chunks/17p6tk6k88dq6.js +0 -1
- package/.next/static/chunks/18a96rkhi4_yd.js +0 -1
- package/.next/static/chunks/1dkjg87pxk0n9.js +0 -28
- package/.next/static/chunks/1jd09sxcjddu1.js +0 -1
- package/.next/static/chunks/1w73ece_6bheu.js +0 -18
- package/.next/static/chunks/214ya3n5gxeih.js +0 -1
- package/.next/static/chunks/22_zkas21rpna.js +0 -1
- package/.next/static/chunks/2fh4-3z_q8b_w.js +0 -1
- package/.next/static/chunks/2h0sd2vumhb15.js +0 -1
- package/.next/static/chunks/2t4vhi3m8ahya.js +0 -1
- package/.next/static/chunks/2tigdtz3dpcy8.js +0 -1
- package/.next/static/chunks/2u7xt6mxg44lf.js +0 -1
- package/.next/static/chunks/3786h5vayt80-.js +0 -28
- package/.next/static/chunks/39j0fvpybzabl.js +0 -40
- package/.next/static/chunks/3cq5g494yuke8.css +0 -1
- package/.next/static/chunks/3hibbjnt85-k6.js +0 -1
- package/.next/static/chunks/3woj-xd7ki5_i.js +0 -1
- package/.next/static/chunks/3xk7yqgomx7yq.js +0 -1
- package/.next/static/chunks/3zmcsnuo25zvq.js +0 -1
- package/database/migrations/20260911030320_opposite_jack_power/migration.sql +0 -1
- package/docs/images/task-thread.png +0 -0
- package/features/bot/components/task-badge.tsx +0 -42
- package/features/bot/components/task-reply.tsx +0 -328
- package/features/bot/components/task-setting.tsx +0 -524
- package/features/bot/task.query.ts +0 -976
- package/features/bot/task.store.ts +0 -489
- package/lib/realtime/client-secret.ts +0 -86
- package/lib/realtime/open-session.ts +0 -31
- package/lib/realtime/openai.ts +0 -35
- package/lib/realtime/realtime.audio.ts +0 -196
- package/lib/realtime/realtime.driver.ts +0 -489
- package/lib/realtime/realtime.protocol.ts +0 -393
- package/lib/realtime/realtime.schema.ts +0 -37
- package/lib/realtime/realtime.session.ts +0 -106
- package/lib/realtime/realtime.transport.ts +0 -384
- package/lib/realtime/xai.ts +0 -39
- /package/.next/server/app/api/bot/{task → thread}/[id]/route/build-manifest.json +0 -0
- /package/.next/server/app/api/bot/{task → thread}/[id]/route/server-reference-manifest.json +0 -0
- /package/.next/server/app/api/bot/{task → thread}/[id]/route.js.map +0 -0
- /package/.next/server/app/api/bot/{task → thread}/route/build-manifest.json +0 -0
- /package/.next/server/app/api/bot/{task → thread}/route/server-reference-manifest.json +0 -0
- /package/.next/server/app/api/bot/{task → thread}/route.js.map +0 -0
- /package/.next/static/{kaTO0UHqF1bMnWgCDik2f → 0qzGoKn2wTERVZtblX1tp}/_buildManifest.js +0 -0
- /package/.next/static/{kaTO0UHqF1bMnWgCDik2f → 0qzGoKn2wTERVZtblX1tp}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{kaTO0UHqF1bMnWgCDik2f → 0qzGoKn2wTERVZtblX1tp}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,41533,e=>{"use strict";var t=e.i(247167);t.default.env.THURSDAY_APP_DIR?.trim()||t.default.cwd(),t.default.env.THURSDAY_HOME?.trim()||t.default.cwd(),t.default.env.THURSDAY_URL?.trim()||t.default.env.PORT?.trim();let r=".ai-workspace",n={workspace:r,artifacts:"artifacts",projects:"projects",scratch:"scratch",bots:"bots",output:".output",skills:{default:"skills",custom:`${r}/.agents/skills`}};e.s(["APP_NAME",0,"Thursday","ARTIFACT_VIEW",0,{rows:200,setFiles:120},"ASCII_FACE",0,{charset:"emojiOnly",fontSize:{default:8,min:4,max:16},density:{default:1.4,min:.6,max:2}},"BOT_RUN",0,{steps:100,compactAt:5e5,compactHeadroom:.8,summaryWords:{min:600,max:3e3,perTokens:200},depth:2,askBack:3,silenceMs:3e5,autoResumes:3,retryAfterMs:[3e4,12e4,3e5],overflowShrink:.6,compactFiles:40},"BROWSER_SKILL",0,"browser","CALL_HISTORY_PAGE",0,10,"IS_DEV",0,!1,"PAGE_SIZE",0,50,"PATHS",0,n,"PROMPT_CROWDED",0,{bots:10,skills:20},"STUDIO_SERVER",0,"studio","WORKSPACE_VIEW",0,{rows:200,textMax:524288,elementMax:0x3200000}])},265402,e=>{"use strict";var t=e.i(681307),r=e.i(41533);t.z.object({value:t.z.string().min(1),expires_at:t.z.number()});let n=t.z.enum(["openai","chatgpt","anthropic","google","xai","vercel-ai-gateway"]),l=t.z.object({provider:n,model:t.z.string().trim().min(1,"Model name is required").max(80)}),i=t.z.enum(["openai","xai"]),a=t.z.object({provider:i,voice:t.z.string().trim().min(1).max(64).nullish(),model:t.z.string().trim().min(1).max(80).nullish()}),o=t.z.enum(["openai","google","xai","vercel-ai-gateway"]),s=t.z.object({provider:o,model:t.z.string().trim().min(1,"Model name is required").max(120)}),u={openai:{label:"Open AI",apiKeyName:"OPENAI_API_KEY",models:{image:[{id:"gpt-image-1-mini",label:"GPT Image 1 mini",tier:"small"},{id:"gpt-image-2.5-flare",label:"GPT Image 2.5 Flare",tier:"mid"},{id:"gpt-image-2.5-sunburst",label:"GPT Image 2.5 Sunburst",tier:"large"}],video:[],speech:[{id:"tts-1",label:"TTS 1",tier:"small"},{id:"gpt-4o-mini-tts",label:"4o mini TTS",tier:"mid"},{id:"tts-1-hd",label:"TTS 1 HD",tier:"large"}],transcription:[{id:"gpt-4o-mini-transcribe",label:"4o mini Transcribe",tier:"small"},{id:"gpt-transcribe",label:"GPT Transcribe",tier:"mid"}]}},google:{label:"Gemini",apiKeyName:"GOOGLE_GENERATIVE_AI_API_KEY",models:{image:[{id:"gemini-3.1-flash-lite-image",label:"3.1 Flash Lite Image",tier:"small"},{id:"gemini-3.1-flash-image",label:"3.1 Flash Image",tier:"mid"},{id:"gemini-3-pro-image",label:"3 Pro Image",tier:"large"}],video:[{id:"veo-3.1-lite-generate-preview",label:"Veo 3.1 Lite",tier:"small"},{id:"veo-3.1-fast-generate-preview",label:"Veo 3.1 Fast",tier:"mid"},{id:"veo-3.1-generate-preview",label:"Veo 3.1",tier:"large"}],speech:[{id:"gemini-2.5-flash-preview-tts",label:"2.5 Flash TTS",tier:"small"},{id:"gemini-3.1-flash-tts-preview",label:"3.1 Flash TTS",tier:"mid"},{id:"gemini-2.5-pro-preview-tts",label:"2.5 Pro TTS",tier:"large"}],transcription:[{id:"gemini-3.5-transcribe",label:"3.5 Transcribe",tier:"mid"}]}},xai:{label:"xAI",apiKeyName:"XAI_API_KEY",models:{image:[{id:"grok-imagine-image",label:"Grok Imagine",tier:"small"},{id:"grok-imagine-image-2.0",label:"Grok Imagine 2.0",tier:"mid"}],video:[{id:"grok-imagine-video",label:"Grok Imagine Video",tier:"small"},{id:"grok-imagine-video-1.5",label:"Grok Imagine Video 1.5",tier:"mid"}],speech:[{id:"grok-tts",label:"Grok TTS",tier:"mid"}],transcription:[{id:"grok-stt",label:"Grok STT",tier:"mid"}]}},"vercel-ai-gateway":{label:"Vercel AI GateWay",apiKeyName:"AI_GATEWAY_API_KEY",models:{image:[{id:"bytedance/seedream-5.0-lite",label:"Seedream 5.0 Lite",tier:"small"},{id:"bfl/flux-2-klein-9b",label:"FLUX 2 Klein 9B",tier:"small"},{id:"spacexai/grok-imagine-image-2.0",label:"Grok Imagine 2.0",tier:"small"},{id:"google/gemini-3.1-flash-image",label:"Gemini 3.1 Flash Image",tier:"mid"},{id:"bfl/flux-2-pro",label:"FLUX 2 Pro",tier:"mid"},{id:"bytedance/seedream-5.0-pro",label:"Seedream 5.0 Pro",tier:"mid"},{id:"recraft/recraft-v4.1",label:"Recraft V4.1",tier:"mid"},{id:"google/gemini-3-pro-image",label:"Gemini 3 Pro Image",tier:"large"},{id:"openai/gpt-image-2.5-sunburst",label:"GPT Image 2.5 Sunburst",tier:"large"}],video:[{id:"bytedance/seedance-2.0-mini",label:"Seedance 2.0 Mini",tier:"small"},{id:"google/veo-3.1-lite-generate-001",label:"Veo 3.1 Lite",tier:"small"},{id:"alibaba/wan-v2.6-t2v",label:"Wan 2.6",tier:"small"},{id:"google/veo-3.1-fast-generate-001",label:"Veo 3.1 Fast",tier:"mid"},{id:"bytedance/seedance-2.5",label:"Seedance 2.5",tier:"mid"},{id:"spacexai/grok-imagine-video-1.5",label:"Grok Imagine Video 1.5",tier:"mid"},{id:"klingai/kling-v3.0-t2v",label:"Kling 3.0",tier:"large"},{id:"google/veo-3.1-generate-001",label:"Veo 3.1",tier:"large"}],speech:[{id:"fish-audio/s1",label:"Fish Audio S1",tier:"small"},{id:"openai/tts-1",label:"OpenAI TTS 1",tier:"small"},{id:"spacexai/grok-tts",label:"Grok TTS",tier:"mid"},{id:"fish-audio/s2.1-pro",label:"Fish Audio S2.1 Pro",tier:"mid"},{id:"openai/tts-1-hd",label:"OpenAI TTS 1 HD",tier:"large"}],transcription:[{id:"spacexai/grok-stt",label:"Grok STT",tier:"small"},{id:"fish-audio/transcribe-1",label:"Fish Transcribe 1",tier:"small"},{id:"openai/gpt-4o-mini-transcribe",label:"4o mini Transcribe",tier:"small"},{id:"openai/gpt-4o-transcribe",label:"4o Transcribe",tier:"mid"},{id:"google/gemini-3.5-transcribe",label:"Gemini 3.5 Transcribe",tier:"mid"}]}}},c=Object.keys(u).map(e=>({id:e,...u[e]})),d={openai:{label:"Open AI",apiKeyName:"OPENAI_API_KEY",suggestModels:[{id:"gpt-5.6-luna",label:"5.6 Luna",tier:"small",context:105e4},{id:"gpt-5.6-terra",label:"5.6 Terra",tier:"mid",context:105e4},{id:"gpt-5.6-sol",label:"5.6 Sol",tier:"large",context:105e4},{id:"gpt-6-astra",label:"6 Astra",tier:"large",context:105e4}]},chatgpt:{label:"GPT Subscription",apiKeyName:"CHATGPT_SIGN_IN",signIn:!0,suggestModels:[{id:"gpt-5.6-luna",label:"5.6 Luna",tier:"small",context:272e3},{id:"gpt-5.6-terra",label:"5.6 Terra",tier:"mid",context:272e3},{id:"gpt-5.6-sol",label:"5.6 Sol",tier:"large",context:272e3},{id:"gpt-6-astra",label:"6 Astra",tier:"large",context:272e3}]},anthropic:{label:"Claude",apiKeyName:"ANTHROPIC_API_KEY",suggestModels:[{id:"claude-haiku-4-5",label:"Haiku 4.5",tier:"small"},{id:"claude-sonnet-5",label:"Sonnet 5",tier:"mid",context:1e6},{id:"claude-opus-5",label:"Opus 5",tier:"large",context:1e6},{id:"claude-fable-5-1",label:"Fable 5.1",tier:"large"}]},google:{label:"Gemini",apiKeyName:"GOOGLE_GENERATIVE_AI_API_KEY",suggestModels:[{id:"gemini-3.5-flash-lite",label:"3.5 Flash Lite",tier:"small",context:1e6},{id:"gemini-3.8-flash",label:"3.8 Flash",tier:"mid",context:1e6}]},xai:{label:"xAI",apiKeyName:"XAI_API_KEY",suggestModels:[{id:"grok-4.6",label:"Grok 4.6",tier:"large",context:5e5}]},"vercel-ai-gateway":{label:"Vercel AI GateWay",apiKeyName:"AI_GATEWAY_API_KEY",suggestModels:[{id:"zai/glm-5.3-flash",label:"GLM 5.3 Flash",tier:"small"},{id:"google/gemini-3.8-flash",label:"Gemini 3.8 Flash",tier:"small"},{id:"openai/gpt-5.6-luna",label:"GPT 5.6 Luna",tier:"small",context:105e4},{id:"zai/glm-5.3",label:"GLM 5.3",tier:"mid"},{id:"spacexai/grok-4.6",label:"Grok 4.6",tier:"mid",context:5e5},{id:"anthropic/claude-sonnet-5",label:"Claude Sonnet 5",tier:"mid"},{id:"openai/gpt-5.6-terra",label:"GPT 5.6 Terra",tier:"mid",context:105e4},{id:"moonshotai/kimi-k3",label:"Kimi K3",tier:"mid"},{id:"openai/gpt-5.6-sol",label:"GPT 5.6 Sol",tier:"large",context:105e4},{id:"anthropic/claude-opus-5",label:"Claude Opus 5",tier:"large",context:1e6},{id:"openai/gpt-6-astra",label:"GPT 6 Astra",tier:"large",context:105e4}]}},f={openai:{apiKeyName:d.openai.apiKeyName,label:d.openai.label,keyPrefix:["sk-"],models:[{id:"gpt-realtime-2.1",label:"Realtime 2.1"},{id:"gpt-realtime-2.1-mini",label:"Realtime 2.1 mini"},{id:"gpt-realtime-2",label:"Realtime 2"}],voices:["marin","cedar","alloy","ash","ballad","coral","echo","sage","shimmer","verse"],defaultVoice:"marin"},xai:{apiKeyName:d.xai.apiKeyName,label:d.xai.label,keyPrefix:["xai-"],models:[{id:"grok-voice-think-fast-2.0",label:"Voice Think Fast 2.0"},{id:"grok-voice-latest",label:"Voice latest"}],voices:["eve","ara","leo","rex","sal"],defaultVoice:"eve"}},m=Object.keys(f).map(e=>({id:e,...f[e]})),h=Object.keys(d).map(e=>({id:e,...d[e]}));e.s(["GATEWAY_TEXT",0,"language","GATEWAY_TOOL_USE",0,"tool-use","MEDIA_MODEL_PROVIDERS",0,u,"MEDIA_MODEL_PROVIDER_LIST",0,c,"SPEACH_MODEL_PROVIDERS",0,f,"SPEACH_MODEL_PROVIDER_LIST",0,m,"TEXT_MODEL_PROVIDER_LIST",0,h,"canMakeKind",0,(e,t)=>(u[e]?.models[t]?.length??0)>0,"compactAtFor",0,e=>e&&e>0?Math.round(e*r.BOT_RUN.compactHeadroom):r.BOT_RUN.compactAt,"contextWindowOf",0,function(e,t,r=[]){if("vercel-ai-gateway"===e)return r.find(e=>e.id===t)?.contextWindow??null;let n=d[e].suggestModels;return n.find(e=>e.id===t)?.context??null},"detectSpeachProvider",0,function(e){let t=e.trim();if(!t||t.startsWith("sk-ant-"))return null;let r=null,n=0;for(let e of Object.keys(f))for(let l of f[e].keyPrefix)t.startsWith(l)&&l.length>n&&(r=e,n=l.length);return r},"parseMediaModel",0,function(e){let[t,...r]=(e??"").trim().split("/"),n=s.safeParse({provider:t,model:r.join("/")});return n.success?n.data:null},"parseTextModel",0,function(e){let[t,...r]=(e??"").trim().split("/"),n=l.safeParse({provider:t,model:r.join("/")});return n.success?n.data:null},"speachModelRefSchema",0,a,"textModelProviderSchema",0,n],265402)},635963,541302,864723,e=>{"use strict";var t=e.i(843476),r=e.i(271645);let n=[1,3,5,8,13,21,34,55,90],l=[1,1.1,1.25,1.45,1.7,2,2.4,2.9],i=l.length,a=Array(i).fill(0);function o(e,t,r){e.getByteFrequencyData(t);for(let e=0;e<i;e++){let i=0,a=n[e],o=Math.min(n[e+1],t.length);for(let e=a;e<o;e++)i+=t[e];let s=o>a?i/(o-a)/255:0;r[e]=Math.min(1,s*l[e])}return r}function s(){let e=Array(i).fill(0),t=Array(i).fill(0),r={level:0,phrase:0,onset:0,bands:Array(i).fill(0)},n=0,l=0,a=1/0,o=(e,t,r,n)=>e+(t-e)*Math.min(1,n/r);return{read(s,u){let c=0,d=0,f=0;for(let n=0;n<i;n++){let l=s[n]??0;c+=l,e[n]=o(e[n],l,l>e[n]?.03:2.5,u),t[n]=o(t[n],l,l<t[n]?.12:3,u);let i=e[n]-t[n],a=i>.12?Math.min(1,Math.max(0,(l-t[n])/i)):0;r.bands[n]=a,i>.12&&(d+=a,f++)}let m=Math.min(1,Math.max(0,(c/i-.03)/.09)),h=m*m*(3-2*m);for(let e=0;e<i;e++)r.bands[e]*=h;return r.level=(f?d/f:0)*h,n=o(n,r.level,.05,u),l=o(l,r.level,.22,u),r.phrase=o(r.phrase,r.level,.45,u),a+=u,r.onset=0,n>l+.1&&n>.3&&a>.12&&(a=0,r.onset=Math.min(1,n)),r}}}e.s(["SPECTRUM_BANDS",0,i,"createAudioTap",0,function(){let e=new Audio;e.autoplay=!0;let t=null,r=null,n=new Uint8Array(0),l=null,s=Array(i).fill(0),u=null,c=new Uint8Array(0),d=null,f=Array(i).fill(0);function m(){if(t&&r)return{context:t,analyser:r};let e=new AudioContext,l=e.createAnalyser();return l.fftSize=512,l.smoothingTimeConstant=.55,n=new Uint8Array(l.frequencyBinCount),e.resume().catch(()=>{}),t=e,r=l,{context:e,analyser:l}}return{element:e,open:m,listen(e){if(l?.mediaStream===e)return;l?.disconnect();let t=m();(l=t.context.createMediaStreamSource(e)).connect(t.analyser),t.context.resume()},speaker(){let e=m();return e.analyser.connect(e.context.destination),e},hear(e){if(d?.mediaStream===e)return;d?.disconnect();let t=m();u||((u=t.context.createAnalyser()).fftSize=512,u.smoothingTimeConstant=.6,c=new Uint8Array(u.frequencyBinCount)),(d=t.context.createMediaStreamSource(e)).connect(u),t.context.resume()},read:()=>r?o(r,n,s):a,readMic:()=>u?o(u,c,f):a}},"createVoiceFollower",0,s],541302);let u="currentColor",c=[{id:"system",label:"System",value:u},{id:"slate",label:"Slate",value:"#64748B"},{id:"indigo",label:"Indigo",value:"#6366F1"},{id:"blue",label:"Blue",value:"#3B82F6"},{id:"cyan",label:"Cyan",value:"#06B6D4"},{id:"teal",label:"Teal",value:"#14B8A6"},{id:"green",label:"Green",value:"#22C55E"},{id:"lime",label:"Lime",value:"#84CC16"},{id:"amber",label:"Amber",value:"#F59E0B"},{id:"orange",label:"Orange",value:"#F97316"},{id:"red",label:"Red",value:"#EF4444"},{id:"pink",label:"Pink",value:"#EC4899"},{id:"violet",label:"Violet",value:"#8B5CF6"},{id:"fuchsia",label:"Fuchsia",value:"#D946EF"},{id:"rose",label:"Rose",value:"#F43F5E"},{id:"sky",label:"Sky",value:"#0EA5E9"},{id:"emerald",label:"Emerald",value:"#10B981"},{id:"yellow",label:"Yellow",value:"#EAB308"},{id:"stone",label:"Stone",value:"#78716C"},{id:"navy",label:"Navy",value:"#1E3A8A",dark:!0},{id:"ocean",label:"Ocean",value:"#155E75",dark:!0},{id:"pine",label:"Pine",value:"#166534",dark:!0},{id:"moss",label:"Moss",value:"#3F6212",dark:!0},{id:"olive",label:"Olive",value:"#854D0E",dark:!0},{id:"rust",label:"Rust",value:"#9A3412",dark:!0},{id:"wine",label:"Wine",value:"#9F1239",dark:!0},{id:"plum",label:"Plum",value:"#6B21A8",dark:!0},{id:"grape",label:"Grape",value:"#5B21B6",dark:!0},{id:"iron",label:"Iron",value:"#334155",dark:!0}],d=Object.fromEntries(c.map(e=>[e.id,e.value])),f=c.filter(e=>e.value!==u).map(e=>e.value),m=[d.amber,d.red],h=[c.filter(e=>e.value!==u&&!("dark"in e)).map(e=>e.value),c.filter(e=>"dark"in e).map(e=>e.value)];e.s(["MARK_BANDS",0,i,"MARK_PALETTE",0,f,"MARK_PALETTE_ROWS",0,h,"MARK_SHAPES",0,["blob","poly","squircle"],"MARK_SYSTEM",0,u,"randomMarkColors",0,function(e){let t=f.filter(e=>!m.includes(e));for(let e=t.length-1;e>0;e--){let r=Math.floor(Math.random()*(e+1));[t[e],t[r]]=[t[r],t[e]]}return t.slice(0,e)}],864723);let g=2*Math.PI,b="-18 -18 276 276",p=e=>Math.round(100*e)/100,y=(e,t,r)=>Math.min(r,Math.max(t,e));function M(e){let t=e>>>0;return()=>{let e=Math.imul((t=t+0x6d2b79f5>>>0)^t>>>15,1|t);return(((e=e+Math.imul(e^e>>>7,61|e)^e)^e>>>14)>>>0)/0x100000000}}function v(e,t){return[e[0]-t[0],e[1]-t[1]]}function k(e){let t=Math.hypot(e[0],e[1])||1;return[e[0]/t,e[1]/t]}function x(e){let t=e.map((e,t)=>{let r=t/128*g;return[120+Math.cos(r)*e,120+Math.sin(r)*e]}),r=`M${p(t[0][0])} ${p(t[0][1])}`;for(let e=0;e<128;e++){let n=t[(e-1+128)%128],l=t[e],i=t[(e+1)%128],a=t[(e+2)%128],o=l[0]+(i[0]-n[0])/6,s=l[1]+(i[1]-n[1])/6,u=i[0]-(a[0]-l[0])/6,c=i[1]-(a[1]-l[1])/6;r+=`C${p(o)} ${p(s)} ${p(u)} ${p(c)} ${p(i[0])} ${p(i[1])}`}return`${r}Z`}function w(e){let t=e.tilt*Math.PI/180,r=Math.cos(t),n=Math.sin(t),l=(t,l)=>[e.cx+t*r-l*n,e.cy+t*n+l*r],i=-e.len/2,a=e.len/2,o=[],s=[];for(let t=0;t<=30;t++){let r=t/30,n=1-r,u=n*n*i+r*r*a,c=-(2*n*r*e.bend),d=-(2*n*i)+2*r*a,f=-(2*n*e.bend)+2*r*e.bend,m=Math.hypot(d,f)||1,h=-f/m,g=d/m,b=e.width/2*Math.sin(Math.PI*r)**e.taper;o.push(l(u+h*b,c+g*b)),s.push(l(u-h*b,c-g*b))}let u=`M${p(o[0][0])} ${p(o[0][1])}`;for(let e=1;e<=30;e++)u+=`L${p(o[e][0])} ${p(o[e][1])}`;for(let e=29;e>=0;e--)u+=`L${p(s[e][0])} ${p(s[e][1])}`;return`${u}Z`}let A={shape:"blob",sides:3,corner:.74,rotation:-180,squircle:4.6,wobble:.2,seed:113,autofit:!0,color:"currentColor",fill:!0,strokeWidth:14,eyeLen:51,eyeWidth:38,eyeBend:-1,eyeTaper:.35,eyeTilt:-90,eyeSkew:0,eyeGap:88,eyeY:100,gazeRange:7,follow:!0,ripple:9,pulse:7,punch:.05,bandEase:.019,bobRate:1,stretch:15,idle:!0,liveliness:55,glance:22,float:7,breathe:3.7,speed:1.7,blink:!0,shadow:16,glow:0,glowColor:null,glowStrength:55,rim:0,rimColor:"currentColor",notify:!1,notifyAngle:41,notifyDist:109,notifyR:25,notifyRing:11,notifyColor:"#FF3B30"},R=[.8,1.35],E=[.45,.77],S=[-180,180],I=[4,12],T=new Map;function L(e,t,r){var n,l,i;let a,o,s,u,c=`${"poly"===t?`poly|${e.sides}|${e.corner}|${e.rotation}|${r}`:"squircle"===t?`squircle|${e.squircle}|${r}`:`blob|${e.wobble}|${r}`}|${e.autofit}`,d=T.get(c);if(d)return d;let f=function(e){let t=Array(128);for(let r=0;r<128;r++){let n=r/128*g,l=Math.cos(n),i=Math.sin(n),a=0;for(let t=0;t<e.length;t++){let r=e[t],n=e[(t+1)%e.length],o=n[0]-r[0],s=n[1]-r[1],u=l*s-i*o;if(1e-9>Math.abs(u))continue;let c=r[0]-120,d=r[1]-120,f=(c*s-d*o)/u,m=(c*i-d*l)/u;f>a&&m>=-1e-9&&m<=1+1e-9&&(a=f)}t[r]=a||112}return t}((n=e,l=t,i=r,"squircle"===l?function(e){let t=[],r=2/e;for(let e=0;e<360;e++){let n=e/360*g,l=Math.cos(n),i=Math.sin(n);t.push([120+Math.sign(l)*Math.abs(l)**r*112,120+Math.sign(i)*Math.abs(i)**r*112])}return t}(n.squircle):"poly"===l?function(e,t,r){let n=r*Math.PI/180-Math.PI/2,l=[];for(let t=0;t<e;t++){let r=n+t/e*g;l.push([120+112*Math.cos(r),120+112*Math.sin(r)])}let i=(Math.PI-g/e)/2,a=224*Math.sin(Math.PI/e)/2*Math.tan(i)*y(t,.001,1),o=a/Math.tan(i),s=[];for(let t=0;t<e;t++){let r=l[t],n=l[(t-1+e)%e],u=l[(t+1)%e],c=k(v(n,r)),d=k(v(u,r)),f=[r[0]+c[0]*o,r[1]+c[1]*o],m=k([c[0]+d[0],c[1]+d[1]]),h=[r[0]+m[0]*a/Math.sin(i),r[1]+m[1]*a/Math.sin(i)],b=Math.atan2(f[1]-h[1],f[0]-h[0]),p=[r[0]+d[0]*o,r[1]+d[1]*o],y=Math.atan2(p[1]-h[1],p[0]-h[0])-b;for(;y>Math.PI;)y-=g;for(;y<-Math.PI;)y+=g;for(let e=0;e<=20;e++){let t=b+e/20*y;s.push([h[0]+Math.cos(t)*a,h[1]+Math.sin(t)*a])}}return s}(n.sides,n.corner,n.rotation):function(e,t){let r=M(e),n=[1,2,3,4,5].map(e=>({k:e,a:(2*r()-1)/e,p:r()*g})),l=[],i=0;for(let e=0;e<360;e++){let t=e/360*g,r=0;for(let e of n)r+=e.a*Math.sin(e.k*t+e.p);l.push(r),i=Math.max(i,Math.abs(r))}let a=i>0?t/i:0;return l.map((e,t)=>{let r=t/360*g,n=112*(1+e*a);return[120+Math.cos(r)*n,120+Math.sin(r)*n]})}(i,n.wobble))),m="blob"===t?f:(a=M(12139^r),o=[2,3,5].map(e=>({k:e,a:(2*a()-1)/e,p:a()*g})),u=Math.max(...(s=f.map((e,t)=>{let r=t/128*g,n=0;for(let e of o)n+=e.a*Math.sin(e.k*r+e.p);return n})).map(Math.abs))||1,f.map((e,t)=>e*(1+.035*s[t]/u))),h=e.autofit?function(e){let t=g/128,r=0,n=0;for(let l of e)r+=.5*l*l*t,l>n&&(n=l);if(r<=0)return e;let l=Math.min(Math.sqrt(112*Math.PI*112/r),130/n);return e.map(e=>e*l)}(m):m;return T.size>400&&T.clear(),T.set(c,h),h}let P={eyeLen:1,eyeWid:1,eyeX:0,eyeY:0,bodyX:0,bodyY:0,rot:0,scale:1,blinkIn:0},C=e=>e*e*(3-2*e),O=e=>Math.sin(Math.PI*e);function _(e,t,r){return e<=0||e>=1?0:e<t?C(e/t):e>1-r?C((1-e)/r):1}let F={glance:{weight:26,dur:[900,1400],play:(e,t,r)=>{let n=_(e,.12,.34);return{eyeX:22*t*n,eyeY:22*r*n,rot:.9*t*n,blinkIn:40*!!(e<.02&&.4>Math.random())}}},lookAway:{weight:12,dur:[1800,2600],play:(e,t,r)=>{let n=_(e,.1,.46);return{eyeX:30*t*n,eyeY:(.5*r+.35)*22*n,rot:1.6*t*n}}},widen:{weight:8,dur:[700,950],play:(e,t)=>{let r=_(e,.22,.5);return{eyeLen:1+.16*r,eyeWid:1+.2*r,rot:-(.5*t)*r}}},squint:{weight:8,dur:[800,1050],play:e=>{let t=_(e,.25,.45);return{eyeLen:1-.3*t,eyeWid:1-.12*t}}},double:{weight:7,dur:[420,420],play:e=>({blinkIn:+(e<.02)})},nod:{weight:11,dur:[1150,1400],play:e=>({bodyY:10*Math.sin(2*g*e)*O(e),rot:2.2*Math.sin(2*g*e+.5)*O(e),eyeY:3.2*Math.sin(2*g*e-.7)*O(e)})},sink:{weight:7,dur:[1800,2300],play:e=>{let t=O(e)**.7;return{eyeLen:1-.26*t,eyeY:4*t,bodyY:8*t,scale:1-.03*t,rot:1.8*t}}},wave:{weight:7,dur:[1300,1700],play:(e,t)=>{let r=_(e,.24,.34);return{bodyX:t*Math.sin(1.5*g*e)*9*r,rot:t*Math.sin(1.5*g*e+.5)*4.5*r,eyeX:t*Math.sin(1.5*g*e)*5*r,eyeLen:1-.2*r}}},reach:{weight:7,dur:[1800,2300],play:e=>{let t=_(e,.28,.34);return{scale:1+.045*t,bodyY:-4*t,eyeLen:1-.28*t,eyeY:3*t,rot:1.8*t}}},tilt:{weight:11,dur:[1500,1900],play:(e,t)=>{let r=_(e,.22,.4);return{rot:9*t*r,bodyX:-3*t*r,eyeY:-1.5*r}}},sweep:{weight:9,dur:[1600,2200],play:(e,t,r)=>{let n=_(e,.12,.18),l=Math.cos(Math.PI*y((e-.15)/.7,0,1));return{eyeX:24*t*n*l,eyeY:24*r*n*l,rot:1.2*t*n*l}}},roll:{weight:5,dur:[900,1200],play:(e,t)=>{let r=O(e)**.5,n=g*e*(t>=0?1:-1);return{eyeX:20*Math.cos(n)*r,eyeY:14*Math.sin(n)*r,rot:1.5*Math.sin(n)*r,blinkIn:+(e>.9&&e<.93)}}},shake:{weight:8,dur:[650,900],play:(e,t)=>{let r=O(e),n=Math.sin(2*g*e);return{rot:t*n*5*r,bodyX:t*n*4*r,eyeX:-t*n*4*r}}},bounce:{weight:6,dur:[850,1100],play:e=>{let t=1-.45*e,r=Math.abs(Math.sin(g*e))*t;return{bodyY:-14*r,eyeY:2.5*r,scale:1-Math.max(0,-Math.cos(g*e))*t*.04}}},slowBlink:{weight:6,dur:[900,1200],play:e=>({eyeWid:1-.88*O(e)**.6,eyeY:1.5*O(e)})},perk:{weight:5,dur:[700,950],play:(e,t)=>{let r=_(e,.09,.62);return{bodyY:-7*r,scale:1+.035*r,eyeLen:1+.14*r,eyeWid:1+.1*r,rot:.8*t*r}}}},G=Object.keys(F),$={idle:{},connecting:{nod:0,wave:0,bounce:0,sweep:1.6,roll:1.4},listening:{glance:.3,lookAway:.15,sweep:.2,roll:0,wave:0,shake:0,bounce:0,sink:.3,widen:2.2,perk:1.8,nod:1.6,slowBlink:1.4},thinking:{lookAway:2.2,squint:2,tilt:1.8,roll:2,sweep:1.4,sink:1.6,glance:.8,slowBlink:1.2,nod:.3,wave:0,bounce:.2,perk:.5},delegating:{wave:2.6,nod:1.8,perk:1.6,glance:1.4,tilt:1.2,lookAway:.4,squint:.4,sink:0,roll:0},speaking:{nod:2,glance:1.2,widen:1.2,sink:0,roll:.3,wave:.4,slowBlink:.4,bounce:.6}},Y={idle:{eyes:1,body:1,churn:0,churnSpeed:0,dwell:1,breathe:1,float:1,blink:1,shadow:0,lean:0,aspect:1,gazeX:0,gazeY:0},connecting:{eyes:.75,body:.91,churn:2.5,churnSpeed:3,dwell:.8,breathe:2.2,float:.6,blink:.6,shadow:0,lean:0,aspect:1.03,gazeX:0,gazeY:4},listening:{eyes:1.3,body:1.04,churn:0,churnSpeed:0,dwell:2.6,breathe:.45,float:.35,blink:1.8,shadow:0,lean:0,aspect:.97,gazeX:0,gazeY:-3},thinking:{eyes:.66,body:.96,churn:5,churnSpeed:.6,dwell:.5,breathe:1.3,float:1.4,blink:.8,shadow:1,lean:7,aspect:1.04,gazeX:-9,gazeY:-8},delegating:{eyes:.9,body:.98,churn:0,churnSpeed:0,dwell:2.2,breathe:.6,float:.5,blink:1.3,shadow:0,lean:-6,aspect:1,gazeX:15,gazeY:2},speaking:{eyes:.95,body:1,churn:2.5,churnSpeed:3,dwell:4,breathe:.4,float:.5,blink:1.2,shadow:0,lean:0,aspect:1,gazeX:0,gazeY:0}},W=Array(i).fill(0);function D(){let e=Math.random();return e<.15?180+320*Math.random():e<.8?1200+2300*Math.random():3500+2800*Math.random()}let j={x:0,y:0,live:!1},N=!1;function B(e){if("number"==typeof e)return e;let t=0x811c9dc5;for(let r=0;r<e.length;r++)t=Math.imul(t^e.charCodeAt(r),0x1000193);return(t>>>0)%1e4}function K({size:e=32,seed:n,color:l,shape:a,vary:o,outline:u,notify:c,state:d="idle",getLevel:f,getSpectrum:m,options:h,className:v,svgRef:k}){let T=(0,r.useId)(),C=(0,r.useMemo)(()=>void 0===o||!1===o?0:B(!0===o?T:o)||1,[o,T]),O=(0,r.useMemo)(()=>(function(e,t){if(!t)return e;let r=M(t),n=([e,t])=>e+r()*(t-e);return{...e,wobble:e.wobble*n(R),corner:n(E),rotation:n(S),squircle:n(I)}})({...A,...h,...void 0===u?{}:{fill:!u}},C),[h,u,C]),_=`${T}-glow`,z=`${T}-halo`,V=`${T}-mask`,X=`${T}-shadow`,q=(0,r.useRef)(null),U=(0,r.useRef)(null),H=(0,r.useRef)(null),Z=(0,r.useRef)(null),J=(0,r.useRef)(null),Q=(0,r.useRef)(null),ee=(0,r.useRef)(null),et=(0,r.useRef)(null),er=(0,r.useRef)(null),en=(0,r.useRef)(null),el=(0,r.useRef)(null),ei=(0,r.useRef)(null),ea=k??ei,eo=void 0===n?O.seed:B(n),es=C?((eo^Math.imul(C,0x9e3779b1))>>>0)%1e4:eo,eu=a??O.shape,ec=l??O.color,ed=c??O.notify,ef=(0,r.useMemo)(()=>L(O,eu,es),[O,eu,es]),em=(0,r.useMemo)(()=>x(ef),[ef]),eh=(0,r.useMemo)(()=>w({len:O.eyeLen,width:O.eyeWidth,bend:O.eyeBend,taper:O.eyeTaper,tilt:O.eyeTilt,cx:120-O.eyeGap/2,cy:O.eyeY}),[O]),eg=(0,r.useMemo)(()=>w({len:O.eyeLen,width:O.eyeWidth,bend:O.eyeBend,taper:O.eyeTaper,tilt:O.eyeTilt+O.eyeSkew,cx:120+O.eyeGap/2,cy:O.eyeY}),[O]),eb=(0,r.useRef)({cfg:O,state:d,getLevel:f,getSpectrum:m,radii:ef,shapeSeed:es});eb.current={cfg:O,state:d,getLevel:f,getSpectrum:m,radii:ef,shapeSeed:es},(0,r.useEffect)(()=>{N||(N=!0,window.addEventListener("pointermove",e=>{j.x=e.clientX,j.y=e.clientY,j.live=!0},{passive:!0}));let e=0,t=eb.current.shapeSeed%17*.91,r=0,n=0,l=performance.now()+600+D(),a=0,o=130,u=0,c=s(),d={...Y.idle},f=Object.keys(d),m=0,h=0,b=0,M=.5,v=0,k=0,w=0,A=Array(i).fill(0),R=Array.from({length:i},(e,t)=>1.7*t),E=0,S=performance.now(),I=null,T=performance.now()+1500+3e3*Math.random(),L=s=>{e=requestAnimationFrame(L);let{cfg:C,state:O}=eb.current,_=s/1e3*C.speed,N=Math.min(.05,(s-S)/1e3);S=s;let B=Y[O];for(let e of f)d[e]+=(B[e]-d[e])*.06;E+=N*d.churnSpeed*C.speed;let K="speaking"===O?eb.current.getSpectrum?.():void 0,z=c.read(K??W,N),V=0;for(let e=0;e<i;e++){let t=z.bands[e];A[e]+=(t-A[e])*C.bandEase,R[e]+=N*(.05+.018*e)*(e%2?-1:1),V+=t}let X=eb.current.getLevel?.(),ei="speaking"===O?y(X??z.level,0,1):0;m+=(ei-m)*.3,h+=(ei-h)*.055,b+=(ei-b)*.016,(void 0===X?z.onset>0:m>1.25*h+.03&&m>.09)&&s-w>340&&(w=s,k-=C.punch*Math.min(1,1.6*m)*C.bobRate);let eo=.01*C.bobRate*C.bobRate;if(k+=-v*eo-.085*k*C.bobRate,v+=k,V>.04){let e=0;for(let t=0;t<i;t++)e+=A[t]*t;M+=(e/V/(i-1)-M)*.04}else M+=(.5-M)*.03;let es=d.dwell;if(C.idle&&!I&&s>=T){let e=function(e){let t=$[e],r=e=>F[e].weight*(t[e]??1),n=0;for(let e of G)n+=r(e);let l=Math.random()*n;for(let e of G)if((l-=r(e))<=0)return e;return G[0]}(O),t=F[e],r=Math.PI/4*Math.floor(8*Math.random());I={key:e,start:s,dur:t.dur[0]+Math.random()*(t.dur[1]-t.dur[0]),dx:Math.cos(r),dy:.7*Math.sin(r)-.5*("thinking"===O)}}let eu=P;if(I){let e=(s-I.start)/I.dur;e>=1?(I=null,T=s+(9e3-74*C.liveliness)*es*(.6+.8*Math.random())):(eu={...P,...F[I.key].play(e,I.dx,I.dy)}).blinkIn>0&&0===u&&(u=s+eu.blinkIn)}if(er.current){let e=.5-.5*Math.cos(.55*_);er.current.setAttribute("opacity",p(d.shadow*e*C.shadow/100).toString())}if(q.current){let e=C.breathe*d.breathe/100,r=b*C.pulse/300-.05*v,n=(.45-M)/.45*b*(C.stretch/100),l=(1+e*Math.sin(1.6*_+t)-.75*r+n)*d.body*eu.scale/d.aspect,i=(1+r-.8*n)*d.body*eu.scale*d.aspect,a=25*e*Math.sin(1.1*_+1.7*t)+eu.rot+d.lean,o=120+90*e*Math.sin(.7*_+.6*t)+eu.bodyX,s=120+120*e*Math.sin(1.3*_+2.3*t)+eu.bodyY+v*C.pulse*2;q.current.setAttribute("transform",`translate(${p(o)} ${p(s)}) rotate(${p(a)}) scale(${i.toFixed(4)} ${l.toFixed(4)}) translate(${-120} ${-120})`)}let ec=(A[0]+A[1]+A[2])/3,ed=(A[3]+A[4])/2,ef=(A[5]+A[6]+A[7])/3,em=ec+ed+ef>.03&&C.ripple>0,eh=d.churn>0;if(H.current&&(em||eh)){let e=E,r=x(eb.current.radii.map((r,n)=>{let l=n/128*g,i=r;return em&&(i+=C.ripple*(ec*Math.sin(2*l+R[0])+.7*ed*Math.sin(3*l+R[1])+.5*ef*Math.sin(4*l+R[2]))),eh&&(i+=d.churn*(.65*Math.sin(2*l+e)+.35*Math.sin(3*l-1.4*e+t))),i}));H.current.setAttribute("d",r),Z.current?.setAttribute("d",r),ee.current?.setAttribute("d",r),et.current?.setAttribute("d",r),er.current?.setAttribute("d",r),el.current?.setAttribute("d",r),en.current?.setAttribute("d",r)}if(U.current){let e=0,i=0;if(C.follow&&j.live&&ea.current){let t=ea.current.getBoundingClientRect();t.width>0&&(e=y((j.x-(t.left+t.width/2))/(1.5*t.width),-1,1)*C.gazeRange,i=y((j.y-(t.top+t.height/2))/(1.5*t.height),-1,1)*C.gazeRange)}r+=(e-r)*.12,n+=(i-n)*.12;let c=C.float*d.float*(.62*Math.sin(1.15*_+t)+.38*Math.sin(.47*_+2.1*t)),f=1;if(0===a&&(u>0&&s>=u?(a=s,u=0):C.blink&&s>=l&&(a=s),a>0&&(o=110+60*Math.random())),a>0){let e=(s-a)/o;e>=1?(a=0,l=s+D()*d.blink):f=1-.94*Math.sin(Math.PI*e)}U.current.setAttribute("transform",`translate(${p(r+eu.eyeX+d.gazeX)} ${p(n+c+eu.eyeY+d.gazeY)}) translate(120 ${C.eyeY}) scale(1 ${f.toFixed(3)}) translate(${-120} ${-C.eyeY})`);let m=eu.eyeWid*(1-.13*b)*d.eyes,h=eu.eyeLen*(1+.04*b)*d.eyes,g=C.eyeGap/2;for(let[e,t]of[J,Q].entries()){if(!t.current)continue;let r=120+(0===e?-g:g),n=0===e?C.eyeTilt:C.eyeTilt+C.eyeSkew,l=h.toFixed(3),i=m.toFixed(3);t.current.setAttribute("transform",`translate(${p(r)} ${C.eyeY}) rotate(${p(n)}) scale(${l} ${i}) rotate(${p(-n)}) translate(${p(-r)} ${-C.eyeY})`)}}};return e=requestAnimationFrame(L),()=>cancelAnimationFrame(e)},[ea]);let ep=O.notifyAngle*Math.PI/180;return(0,t.jsxs)("svg",{ref:ea,"data-slot":"bot-mark","aria-hidden":"true",className:v,viewBox:b,width:e,height:e,style:{overflow:"visible","--fg":ec},children:[(0,t.jsxs)("defs",{children:[(0,t.jsx)("clipPath",{id:T,children:(0,t.jsx)("path",{ref:Z,d:em})}),O.fill&&(0,t.jsxs)("mask",{id:V,maskUnits:"userSpaceOnUse",children:[(0,t.jsx)("path",{ref:en,d:em,fill:"#fff"}),(0,t.jsx)("g",{clipPath:`url(#${T})`,children:(0,t.jsxs)("g",{ref:U,children:[(0,t.jsx)("g",{ref:J,children:(0,t.jsx)("path",{d:eh,fill:"#000"})}),(0,t.jsx)("g",{ref:Q,children:(0,t.jsx)("path",{d:eg,fill:"#000"})})]})}),ed&&(0,t.jsx)("circle",{cx:p(120+Math.cos(ep)*O.notifyDist),cy:p(120+Math.sin(ep)*O.notifyDist),r:O.notifyR+O.notifyRing,fill:"#000"})]}),O.shadow>0&&(0,t.jsx)("filter",{id:X,x:"-60%",y:"-60%",width:"220%",height:"220%",colorInterpolationFilters:"sRGB",children:(0,t.jsx)("feGaussianBlur",{stdDeviation:9})}),O.glow>0&&(0,t.jsxs)("mask",{id:z,maskUnits:"userSpaceOnUse",x:-72,y:-72,width:384,height:384,children:[(0,t.jsx)("rect",{x:-72,y:-72,width:384,height:384,fill:"#fff"}),(0,t.jsx)("path",{ref:et,d:em,fill:"#000"})]}),O.glow>0&&(0,t.jsx)("filter",{id:_,x:"-60%",y:"-60%",width:"220%",height:"220%",colorInterpolationFilters:"sRGB",children:(0,t.jsx)("feGaussianBlur",{stdDeviation:O.glow})})]}),(0,t.jsxs)("g",{ref:q,children:[O.shadow>0&&(0,t.jsx)("path",{ref:er,d:em,fill:"var(--fg)",filter:`url(#${X})`,transform:"translate(0 12)",opacity:0}),O.glow>0&&(0,t.jsx)("path",{ref:ee,d:em,fill:O.glowColor??"var(--fg)",filter:`url(#${_})`,mask:`url(#${z})`,opacity:O.glowStrength/100}),O.rim>0&&(0,t.jsx)("path",{ref:el,d:em,fill:"none",stroke:O.rimColor,strokeWidth:2*O.rim,strokeLinejoin:"round"}),(0,t.jsx)("path",{ref:H,d:em,fill:O.fill?"var(--fg)":"none",stroke:O.fill?"none":"var(--fg)",strokeWidth:O.fill?0:O.strokeWidth,strokeLinejoin:"round",mask:O.fill?`url(#${V})`:void 0}),!O.fill&&(0,t.jsx)("g",{clipPath:`url(#${T})`,children:(0,t.jsxs)("g",{ref:U,children:[(0,t.jsx)("g",{ref:J,children:(0,t.jsx)("path",{d:eh,fill:"var(--fg)"})}),(0,t.jsx)("g",{ref:Q,children:(0,t.jsx)("path",{d:eg,fill:"var(--fg)"})})]})}),ed&&(0,t.jsx)("circle",{cx:p(120+Math.cos(ep)*O.notifyDist),cy:p(120+Math.sin(ep)*O.notifyDist),r:O.notifyR,fill:O.notifyColor})]})]})}e.s(["BotMark",0,K,"BotsMark",0,function({size:e=16,className:r}){return(0,t.jsx)(K,{size:e,seed:"bots",className:r})},"markAtRest",0,function(e){let t=(e,t)=>w({len:A.eyeLen,width:A.eyeWidth,bend:A.eyeBend,taper:A.eyeTaper,tilt:t,cx:e,cy:A.eyeY});return{head:x(L(A,A.shape,B(e))),eyes:[t(120-A.eyeGap/2,A.eyeTilt),t(120+A.eyeGap/2,A.eyeTilt+A.eyeSkew)]}}],635963)},260891,e=>{"use strict";e.i(247167);var t=e.i(271645),r=e.i(708445),n=e.i(146376),l=e.i(108868),i=e.i(667865),a=e.i(446265),o=e.i(328744),s=e.i(229315),u=e.i(675606),c=e.i(56434),d=e.i(46420),f=e.i(621082),m=e.i(449055),h=e.i(584446),g=e.i(596296),b=e.i(503596),p=e.i(157940);function y(e){return o.platform.engine.webkit&&0===e.movementX&&0===e.movementY}function M(e,t,r){switch(e){case"vertical":return t;case"horizontal":return r;default:return t||r}}function v(e,t){return M(t,e===m.ARROW_UP||e===m.ARROW_DOWN,e===m.ARROW_LEFT||e===m.ARROW_RIGHT)}function k(e,t,r){return M(t,e===m.ARROW_DOWN,r?e===m.ARROW_LEFT:e===m.ARROW_RIGHT)||"Enter"===e||" "===e||""===e}e.s(["useListNavigation",0,function(e,o){let{listRef:x,activeIndex:w,onNavigate:A=()=>{},enabled:R=!0,selectedIndex:E=null,allowEscape:S=!1,loopFocus:I=!1,nested:T=!1,rtl:L=!1,virtual:P=!1,focusItemOnOpen:C="auto",focusItemOnHover:O=!0,openOnArrowKeyDown:_=!0,disabledIndices:F,orientation:G="vertical",parentOrientation:$,id:Y,resetOnPointerLeave:W=!0,externalTree:D,grid:j}=o,N=null!=j,B="rootStore"in e?e.rootStore:e,K=B.useState("open"),z=B.useState("floatingElement"),V=B.useState("domReferenceElement"),X=B.context.dataRef,q=(0,g.getFloatingFocusElement)(z),U=(0,g.isTypeableCombobox)(V),H=(0,a.useValueAsRef)(q),Z=(0,d.useFloatingParentNodeId)(),J=(0,d.useFloatingTree)(D),Q=t.useRef(C),ee=t.useRef(E??-1),et=t.useRef(null),er=t.useRef(!0),en=(0,i.useStableCallback)(e=>{A(-1===ee.current?null:ee.current,e)}),el=t.useRef(!!z),ei=t.useRef(K),ea=t.useRef(!1),eo=t.useRef(!1),es=t.useRef(null),eu=(0,a.useValueAsRef)(F),ec=(0,a.useValueAsRef)(K),ed=(0,a.useValueAsRef)(E),ef=(0,a.useValueAsRef)(W),em=(0,r.useAnimationFrame)(),eh=(0,r.useAnimationFrame)(),eg=(0,i.useStableCallback)(()=>{function e(e){P?J?.events.emit("virtualfocus",e):es.current=(0,b.enqueueFocus)(e,{sync:ea.current,preventScroll:!0})}let t=x.current[ee.current],r=eo.current;t&&e(t),(ea.current?e=>e():e=>em.request(e))(()=>{let n=x.current[ee.current]||t;!n||(t||e(n),ek&&(r||!er.current)&&n.scrollIntoView?.({block:"nearest",inline:"nearest"}))})});(0,n.useIsoLayoutEffect)(()=>{X.current.orientation=G},[X,G]),(0,n.useIsoLayoutEffect)(()=>{R&&(K&&z?(ee.current=E??-1,Q.current&&null!=E&&(eo.current=!0,en())):el.current&&(ee.current=-1,en()))},[R,K,z,E,en]),(0,n.useIsoLayoutEffect)(()=>{if(R){if(!K){ea.current=!1;return}if(z)if(null==w){if(ea.current=!1,null!=ed.current)return;if(el.current&&(ee.current=-1,eg()),(!ei.current||!el.current)&&Q.current&&(null!=et.current||!0===Q.current&&null==et.current)){let e=0,t=()=>{null==x.current[0]?(e<2&&(e?e=>eh.request(e):queueMicrotask)(t),e+=1):(ee.current=null==et.current||k(et.current,G,L)||T?(0,f.getMinListIndex)(x):(0,f.getMaxListIndex)(x),et.current=null,en())};t()}}else(0,f.isIndexOutOfListBounds)(x.current,w)||(ee.current=w,eg(),eo.current=!1)}},[R,K,z,w,ed,T,x,G,L,en,eg,eh]),(0,n.useIsoLayoutEffect)(()=>{if(!R||z||!J||P||!el.current)return;let e=J.nodesRef.current,t=e.find(e=>e.id===Z)?.context?.elements.floating,r=(0,h.activeElement)((0,l.ownerDocument)(V??t??null)),n=e.some(e=>e.context&&(0,h.contains)(e.context.elements.floating,r));t&&!n&&er.current&&t.focus({preventScroll:!0})},[R,z,V,J,Z,P]),(0,n.useIsoLayoutEffect)(()=>{ei.current=K,el.current=!!z}),(0,n.useIsoLayoutEffect)(()=>{K||(et.current=null,Q.current=C)},[K,C]);let eb=null!=w,ep=(0,i.useStableCallback)(e=>{if(!ec.current)return;let t=x.current.indexOf(e.currentTarget);-1!==t&&(ee.current!==t||w!==t)&&(ee.current=t,en(e))}),ey=(0,i.useStableCallback)(()=>$??J?.nodesRef.current.find(e=>e.id===Z)?.context?.dataRef?.current.orientation),eM=(0,i.useStableCallback)(()=>(0,f.getMinListIndex)(x,eu.current)),ev=(0,i.useStableCallback)(e=>{var t;let r,n;if(er.current=!1,ea.current=!0,229===e.which||!ec.current&&e.currentTarget===H.current)return;if(T&&(t=e.key,r=L?t===m.ARROW_RIGHT:t===m.ARROW_LEFT,n=t===m.ARROW_UP,"both"===G||"horizontal"===G&&N?"Escape"===t:M(G,r,n))){v(e.key,ey())||(0,p.stopEvent)(e),B.setOpen(!1,(0,u.createChangeEventDetails)(c.REASONS.listNavigation,e.nativeEvent)),(0,s.isHTMLElement)(V)&&(P?J?.events.emit("virtualfocus",V):V.focus());return}let l=ee.current,i=(0,f.getMinListIndex)(x,F),a=(0,f.getMaxListIndex)(x,F);if(U||("Home"===e.key&&((0,p.stopEvent)(e),ee.current=i,en(e)),"End"===e.key&&((0,p.stopEvent)(e),ee.current=a,en(e))),null!=j){let t=j(e,ee.current,x,G,I,L,F,i,a);if(null!=t&&(ee.current=t,en(e)),"both"===G)return}if(v(e.key,G)){if((0,p.stopEvent)(e),K&&!P&&(0,h.activeElement)(e.currentTarget.ownerDocument)===e.currentTarget){ee.current=k(e.key,G,L)?i:a,en(e);return}k(e.key,G,L)?I?l>=a?S&&l!==x.current.length?ee.current=-1:(ea.current=!1,ee.current=i):ee.current=(0,f.findNonDisabledListIndex)(x.current,{startingIndex:l,disabledIndices:F}):ee.current=Math.min(a,(0,f.findNonDisabledListIndex)(x.current,{startingIndex:l,disabledIndices:F})):I?l<=i?S&&-1!==l?ee.current=x.current.length:(ea.current=!1,ee.current=a):ee.current=(0,f.findNonDisabledListIndex)(x.current,{startingIndex:l,decrement:!0,disabledIndices:F}):ee.current=Math.max(i,(0,f.findNonDisabledListIndex)(x.current,{startingIndex:l,decrement:!0,disabledIndices:F})),(0,f.isIndexOutOfListBounds)(x.current,ee.current)&&(ee.current=-1),en(e)}}),ek=t.useMemo(()=>({onFocus(e){ea.current=!0,ep(e)},onClick:({currentTarget:e})=>e.focus({preventScroll:!0}),onMouseMove(e){!y(e)&&(ea.current=!0,eo.current=!1,O&&ep(e))},onPointerLeave(e){if(!ec.current||!er.current||"touch"===e.pointerType)return;ea.current=!0;let t=e.relatedTarget;if(!(!O||x.current.includes(t))&&ef.current&&(es.current?.(),es.current=null,ee.current=-1,en(e),!P)){let e=H.current,t=(0,h.activeElement)((0,l.ownerDocument)(e));e&&(0,h.contains)(e,t)&&e.focus({preventScroll:!0})}}}),[ep,ec,H,O,x,en,ef,P]),ex=t.useMemo(()=>P&&K&&eb&&{"aria-activedescendant":`${Y}-${w}`},[P,K,eb,Y,w]),ew=t.useMemo(()=>({...!U?ex:{},onKeyDown(e){if("Tab"===e.key&&e.shiftKey&&K&&!P){let t=(0,h.getTarget)(e.nativeEvent);if(t&&!(0,h.contains)(H.current,t))return;(0,p.stopEvent)(e),B.setOpen(!1,(0,u.createChangeEventDetails)(c.REASONS.focusOut,e.nativeEvent)),(0,s.isHTMLElement)(V)&&V.focus();return}ev(e)},onPointerMove(e){y(e)||(er.current=!0)}}),[ex,ev,H,U,B,K,P,V]),eA=t.useMemo(()=>{function e(e){B.setOpen(!0,(0,u.createChangeEventDetails)(c.REASONS.listNavigation,e.nativeEvent,e.currentTarget))}function t(e){"auto"===C&&(0,p.isVirtualClick)(e.nativeEvent)&&(Q.current=!P)}function r(e){Q.current=C,"auto"===C&&(0,p.isVirtualPointerEvent)(e.nativeEvent)&&(Q.current=!0)}return{onKeyDown(t){var r,n;let l=B.select("open");er.current=!1;let i=t.key.startsWith("Arrow"),a=(r=t.key,n=ey(),M(n,L?r===m.ARROW_LEFT:r===m.ARROW_RIGHT,r===m.ARROW_DOWN)),o=v(t.key,G),s=(T?a:o)||"Enter"===t.key||""===t.key.trim();if(P&&l)return ev(t);if(l||_||!i){if(s){let e=v(t.key,ey());et.current=T&&e?null:t.key}if(T){a&&((0,p.stopEvent)(t),l?(ee.current=eM(),en(t)):e(t));return}o&&(null!=ed.current&&(ee.current=ed.current),(0,p.stopEvent)(t),!l&&_?e(t):ev(t),l&&en(t))}},onFocus(e){B.select("open")&&!P&&(ee.current=-1,en(e))},onPointerDown:r,onPointerEnter:r,onMouseDown:t,onClick:t}},[ev,C,eM,T,en,B,_,G,ey,L,ed,P]),eR=t.useMemo(()=>({...ex,...eA}),[ex,eA]);return t.useMemo(()=>R?{reference:eR,floating:ew,item:ek,trigger:eA}:{},[R,eR,ew,eA,ek])}])},736760,e=>{"use strict";var t=e.i(271645),r=e.i(146376),n=e.i(667865),l=e.i(439957),i=e.i(956789),a=e.i(621082),o=e.i(584446),s=e.i(157940);e.s(["useTypeahead",0,function(e,u){let{listRef:c,elementsRef:d,activeIndex:f,onMatch:m,disabledIndices:h,onTyping:g,enabled:b=!0,resetMs:p=750,selectedIndex:y=null}=u,M="rootStore"in e?e.rootStore:e,v=M.useState("open"),k=(0,l.useTimeout)(),x=t.useRef(""),w=t.useRef(y??f??-1),A=t.useRef(null),R=(0,n.useStableCallback)(e=>{function t(e){let t=d?.current[e];return!(t&&!(0,a.isElementVisible)(t)||t?.matches(":disabled"))&&(null==h||!(0,a.isListIndexDisabled)(i.EMPTY_ARRAY,e,h))}function r(e,n,l=0){if(0===e.length)return -1;let i=(l%e.length+e.length)%e.length,a=n.toLowerCase();for(let r=0;r<e.length;r+=1){let n=(i+r)%e.length,l=e[n];if(l?.toLowerCase().startsWith(a)&&t(n))return n}return -1}let n=c.current;if(x.current.length>0&&" "===e.key&&((0,s.stopEvent)(e),g?.(!0)),x.current.length>0&&" "!==x.current[0]&&-1===r(n,x.current)&&" "!==e.key&&g?.(!1),null==n||1!==e.key.length||e.ctrlKey||e.metaKey||e.altKey)return;v&&" "!==e.key&&((0,s.stopEvent)(e),g?.(!0));let l=""===x.current;l&&(w.current=y??f??-1),n.every((e,r)=>!(e&&t(r))||e[0]?.toLowerCase()!==e[1]?.toLowerCase())&&x.current===e.key&&(x.current="",w.current=A.current),x.current+=e.key,k.start(p,()=>{x.current="",w.current=A.current,g?.(!1)});let o=l?y??f??-1:w.current,u=r(n,x.current,(o??0)+1);-1!==u?(m?.(u),A.current=u):" "!==e.key&&(x.current="",g?.(!1))}),E=(0,n.useStableCallback)(e=>{let t=e.relatedTarget,r=M.select("domReferenceElement"),n=M.select("floatingElement");(0,o.contains)(r,t)||(0,o.contains)(n,t)||(k.clear(),x.current="",w.current=A.current,g?.(!1))});(0,r.useIsoLayoutEffect)(()=>{(v||null===y)&&(k.clear(),A.current=null,""!==x.current&&(x.current=""))},[v,y,k]);let S=t.useMemo(()=>({onKeyDown:R,onBlur:E}),[R,E]);return t.useMemo(()=>b?{reference:S,floating:S}:{},[b,S])}])},53687,e=>{"use strict";var t=e.i(271645),r=e.i(388940),n=e.i(667865),l=e.i(146376),i=e.i(545356),a=e.i(843476);function o(){return new Map}function s(){return new Set}function u(e,t){return e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1}e.s(["CompositeList",0,function(e){let{children:c,elementsRef:d,labelsRef:f,onMapChange:m}=e,h=(0,n.useStableCallback)(m),[,g]=t.useState(!1),b=(0,r.useRefWithInit)(s).current,p=(0,r.useRefWithInit)(o).current,y=t.useRef(0),M=t.useRef(!0),v=t.useRef(null),k=t.useRef(null),x=(0,n.useStableCallback)(()=>{M.current||(M.current=!0,g(e=>!e))}),w=(0,n.useStableCallback)((e,t)=>{p.set(e,t),x()}),A=(0,n.useStableCallback)(e=>{p.delete(e),x()}),R=(0,n.useStableCallback)(e=>{let t=new Map;return d.current.length=0,f&&(f.current.length=0),e.forEach(e=>{t.set(e.element,{...e.registration.metadata??{},index:e.index}),d.current[e.index]=e.element,f&&(f.current[e.index]=void 0!==e.registration.label?e.registration.label:e.registration.textRef?.current?.textContent??e.element.textContent)}),y.current=d.current.length,t}),E=(0,n.useStableCallback)(()=>{var e;let t,r,n,l,[i,a]=(e=p,t=new Set,r=[],n=[],e.forEach((e,l)=>{if(!l.isConnected)return;let i=e.index,a={index:i??-1,element:l,registration:e};null===i?n.push(a):i>=0&&(t.add(i),r.push(a))}),l=0,n.sort((e,t)=>u(e.element,t.element)),n.forEach(e=>{for(;t.has(l);)l+=1;e.index=l,r.push(e),l+=1}),t.size>0&&r.sort((e,t)=>e.index-t.index),[r,n.map(e=>e.element)]),o=R(i),s=v.current,c=!s||s.length!==i.length||i.some((e,t)=>{let r=s[t];return e.index!==r.index||e.element!==r.element||e.registration.index!==r.registration.index||e.registration.metadata!==r.registration.metadata});!function(e){if(k.current?.disconnect(),k.current=null,"function"!=typeof MutationObserver||e.length<2)return;let t=new MutationObserver(r=>{if(!function(e){for(let t of e)for(let e=0;e<t.removedNodes.length;e+=1)if(t.removedNodes[e].isConnected)return!0;return!1}(r))return;let n=null;for(let r of e)if(r.isConnected){if(n&&u(n,r)>0){t.disconnect(),x();return}n=r}});k.current=t;let r=new Set;for(let t=1;t<e.length;t+=1){let n=function(e,t){let r=e.parentElement;for(;r&&!r.contains(t);)r=r.parentElement;return r}(e[t-1],e[t]);n&&r.add(n)}r.forEach(e=>t.observe(e,{childList:!0}))}(a),v.current=i,M.current=!1,c&&(b.forEach(e=>e(o)),h(o))});(0,l.useIsoLayoutEffect)(()=>(!M.current&&v.current&&R(v.current),()=>{d.current=[],f&&(f.current=[])}),[d,f,R]),(0,l.useIsoLayoutEffect)(()=>{M.current&&E()}),(0,l.useIsoLayoutEffect)(()=>()=>{k.current?.disconnect(),M.current=!0},[]);let S=(0,n.useStableCallback)(e=>(b.add(e),()=>{b.delete(e)})),I=t.useMemo(()=>({register:w,unregister:A,subscribeMapChange:S,nextIndexRef:y}),[w,A,S,y]);return(0,a.jsx)(i.CompositeListContext.Provider,{value:I,children:c})}])},545356,e=>{"use strict";e.i(247167);var t=e.i(271645);let r=t.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},nextIndexRef:{current:0}});e.s(["CompositeListContext",0,r,"useCompositeListContext",0,function(){return t.useContext(r)}])},673553,e=>{"use strict";var t=e.i(271645),r=e.i(146376),n=e.i(545356);e.s(["useCompositeListItem",0,function(e={}){let{guess:l,label:i,metadata:a,textRef:o,index:s}=e,{register:u,unregister:c,subscribeMapChange:d,nextIndexRef:f}=(0,n.useCompositeListContext)(),m=t.useRef(-1),[h,g]=t.useState(null==s&&l?()=>{if(-1===m.current){let e=f.current;f.current+=1,m.current=e}return m.current}:-1),b=s??h,p=t.useRef(null),y=t.useCallback(e=>{let t=p.current;t&&c(t),p.current=e,e&&u(e,{metadata:a??null,index:s??null,label:i,textRef:o})},[s,u,c,a,i,o]);return(0,r.useIsoLayoutEffect)(()=>{if(null==s)return d(e=>{let t=p.current?e.get(p.current)?.index:null;null!=t&&g(t)})},[s,d]),{ref:y,index:b}}])},264042,e=>{"use strict";var t=e.i(333848),r=e.i(328744);e.s(["isMouseWithinBounds",0,function(e,n){let l=function(e){let n=e.getBoundingClientRect(),l=(0,t.ownerWindow)(e);if(r.platform.env.jsdom)return n;let i=l.getComputedStyle(e,"::before"),a=l.getComputedStyle(e,"::after");if("none"===i.content&&"none"===a.content)return n;let o=parseFloat(i.width)||0,s=parseFloat(i.height)||0,u=parseFloat(a.width)||0,c=parseFloat(a.height)||0,d=Math.max(n.width,o,u),f=Math.max(n.height,s,c),m=d-n.width,h=f-n.height;return{left:n.left-m/2,right:n.right+m/2,top:n.top-h/2,bottom:n.bottom+h/2}}(n);return e.clientX>=l.left-5&&e.clientX<=l.right+5&&e.clientY>=l.top-5&&e.clientY<=l.bottom+5}])},33383,e=>{"use strict";var t=e.i(271645),r=e.i(108868),n=e.i(145484),l=e.i(146376);e.s(["useAnchoredPopupScrollLock",0,function(e,i,a,o){let[s,u]=t.useState(!1);(0,l.useIsoLayoutEffect)(()=>{if(!e||!i||null==a)return void u(!1);let t=(0,r.ownerDocument)(a).documentElement.clientWidth,n=a.offsetWidth;u(t>0&&n>0&&n>=t-20)},[e,i,a]),(0,n.useScrollLock)(e&&(!i||s),o)}])},716327,e=>{"use strict";var t=e.i(456420);let r={name:"chevron-down",size:24,node:[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]};r.node;let n=(0,t.default)(r);e.s(["ChevronDown",0,n],716327)},986253,e=>{"use strict";var t=e.i(456420);let r={name:"chevron-right",size:24,node:[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]};r.node;let n=(0,t.default)(r);e.s(["default",0,n])},867927,e=>{"use strict";var t=e.i(986253);e.s(["ChevronRight",()=>t.default])}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,519029,e=>{"use strict";var t=e.i(843476),n=e.i(647163);function s({color:e,picked:r,onPick:l}){return(0,t.jsx)("button",{type:"button",onClick:l,"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",r&&"ring-2 ring-foreground/40 ring-offset-2 ring-offset-background")})}var r=e.i(864723);e.s(["MarkPalette",0,function({color:e,themePicked:n,onTheme:l,onPick:a}){return(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)(s,{color:null,picked:n,onPick:l}),(0,t.jsx)("span",{className:"w-2"}),r.MARK_PALETTE_ROWS[0].map(n=>(0,t.jsx)(s,{color:n,picked:e===n,onPick:()=>a(n)},n))]}),(0,t.jsx)("div",{className:"flex flex-wrap items-center gap-2 pl-11",children:r.MARK_PALETTE_ROWS[1].map(n=>(0,t.jsx)(s,{color:n,picked:e===n,onPick:()=>a(n)},n))})]})})}],519029)},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(184762),h=e.i(41533),m=e.i(968978),x=e.i(265402),p=e.i(519029),f=e.i(864723),g=e.i(895836),v=e.i(867927),b=e.i(456420);let j={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"}]]};j.node;let y=(0,b.default)(j);var k=e.i(759659),S=e.i(660302),N=e.i(671428),w=e.i(222055),C=e.i(245629),A=e.i(609856),E=e.i(661504),T=e.i(647163),R=e.i(95187);let _=(0,R.createServerReference)("7fc555b36b5925e2051ec959344746fb3809426d0d",R.callServer,void 0,R.findSourceMapURL,"deleteCallAction"),I=(0,R.createServerReference)("7f21d91d9d40f7a3f34d6c13a113858f03876152a7",R.callServer,void 0,R.findSourceMapURL,"deleteEndedCallsAction");var M=e.i(561540),K=e.i(256604);function O(){return(0,t.jsx)(g.SettingGroup,{label:"Transcripts",children:(0,t.jsx)(g.SettingItems,{children:(0,t.jsxs)("button",{type:"button",onClick:()=>c.notify.component({className:"sm:max-w-3xl",renderer:()=>(0,t.jsx)(g.SettingDialogContent,{title:"Call history",description:"Everything said on the line, oldest at the top. Scroll up for older calls.",children:(0,t.jsx)(D,{})})}),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)(y,{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 P={running:"working",waiting:"waiting on you",done:"done",failed:"failed"},z={running:"text-muted-foreground",waiting:T.WAITING_INK,done:"text-muted-foreground",failed:"text-destructive"},L="h-[min(34rem,58vh)] min-h-64 px-1";function D(){let{items:e,isLoading:n,isLoadingMore:s,error:i,hasMore:o,sentinelRef:d,refresh:u}=(0,E.useServerPages)({key:(e,t)=>{if(0===e)return l.queryKey.callHistory(null);let n=t?.at(-1);return n?l.queryKey.callHistory((0,C.toDate)(n.startedAt).toISOString()):null},size:h.CALL_HISTORY_PAGE,swr:{revalidateOnFocus:!1}}),m=(0,r.useMemo)(()=>[...e].reverse(),[e]),[x,p]=(0,A.useServerAction)(I,{okMessage:e=>1===e?"1 call deleted":`${e} calls deleted`,onOk:u}),f=async()=>{await c.notify.confirm({title:"Delete every call?",description:"Every turn of every call goes — and she stops reading any of it back into the next call. A call still on the line stays.",okText:"Delete all",destructive:!0})&&x()},v=(0,r.useRef)(null),b=(0,r.useRef)(!1),j=(0,r.useRef)(0);return((0,r.useLayoutEffect)(()=>{let e=v.current;e&&0!==m.length&&(b.current?e.scrollTop=e.scrollHeight-j.current:(b.current=!0,e.scrollTop=e.scrollHeight),j.current=e.scrollHeight-e.scrollTop)},[m]),n)?(0,t.jsx)("div",{className:(0,T.cn)(L,"overflow-hidden"),children:(0,t.jsx)(F,{})}):i?(0,t.jsx)(g.SettingError,{message:i.message}):(0,t.jsx)(t.Fragment,{children:0===m.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)(t.Fragment,{children:[(0,t.jsxs)("div",{ref:v,onScroll:e=>{let t=e.currentTarget;j.current=t.scrollHeight-t.scrollTop},className:(0,T.cn)(L,"overflow-y-auto overscroll-contain pb-6"),children:[(0,t.jsx)(g.SettingMore,{hasMore:o,loading:s,sentinelRef:d,count:1,ghost:(0,t.jsx)(F,{})}),m.map((e,n)=>(0,t.jsx)($,{call:e,first:0===n,onDropped:u},e.id))]}),(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsxs)(a.Button,{variant:"ghost",loading:p,onClick:f,className:"text-muted-foreground hover:text-destructive",children:[(0,t.jsx)(k.Trash2,{}),"Delete all"]})})]})})}function F(){return(0,t.jsxs)("div",{className:"pb-3",children:[(0,t.jsxs)("div",{className:"flex h-7 items-center gap-2.5",children:[(0,t.jsx)(N.Skeleton,{className:"h-3 w-24"}),(0,t.jsx)(N.Skeleton,{className:"h-3 w-10"})]}),(0,t.jsx)("div",{className:"mt-2 mb-[18px] h-px bg-border/60"}),(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)(N.Skeleton,{className:"h-9 w-3/5 rounded-2xl rounded-br-sm"})}),(0,t.jsxs)("div",{className:"mt-3 flex items-start gap-2",children:[(0,t.jsx)(N.Skeleton,{className:"mt-0.5 size-[18px] shrink-0 rounded-full"}),(0,t.jsx)(N.Skeleton,{className:"mt-1 h-3.5 w-2/3"})]})]})}let H=e=>"user"===e.role?"user":"her";function $({call:e,first:n,onDropped:s}){let[r,l]=(0,A.useServerAction)(_,{okMessage:"Call deleted",onOk:s}),i=(0,C.toDate)(e.startedAt),o=e.turns.at(-1),d=e.endedAt&&o?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`}(i,(0,C.toDate)(o.at)):"on the line",u=async()=>{await c.notify.confirm({title:`Delete the call from ${(0,C.whenOf)(i)}?`,description:"Every turn of it goes — and she stops reading it back into the next call.",okText:"Delete",destructive:!0})&&r(e.id)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:(0,T.cn)("group flex items-center gap-2.5",n?"mt-1":"mt-11"),children:[(0,t.jsx)("span",{title:`${e.provider} \xb7 ${e.model}`,className:"font-mono text-[10px] tracking-[0.14em] uppercase",children:(0,C.whenOf)(i)}),(0,t.jsx)("span",{className:"font-mono text-[10px] text-muted-foreground",children:d}),(0,t.jsx)("span",{className:"ml-auto flex size-7 shrink-0 items-center justify-center",children:e.endedAt&&(0,t.jsx)(a.Button,{size:"icon-sm",variant:"ghost",loading:l,"aria-label":"Delete this call",onClick:u,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,{})})})]}),(0,t.jsx)("div",{className:"mt-2 mb-[18px] h-px bg-border/60"}),(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:n,repeats:s},r,l)=>{var a,i;let o,c=l[r-1]?.turn,d=l[r+1]?.turn;return(0,t.jsx)(G,{turn:n,job:(a=e,i=n,(o=(0,M.delegatedLabel)(i.tool,i.text))?a.jobs.find(e=>e.label===o):void 0),repeats:s,opensRun:!c||H(c)!==H(n),closesRun:!d||H(d)!==H(n)},n.id)})]})}function G({turn:e,job:n,opensRun:s,closesRun:r,repeats:l=1}){return"tool"===e.role?(0,t.jsx)(V,{turn:e,job:n,repeats:l,opensRun:s}):"user"===e.role?(0,t.jsx)("div",{className:(0,T.cn)("flex justify-end",s?"mt-3":"mt-1"),children:(0,t.jsx)("p",{className:(0,T.cn)("max-w-[min(34rem,78%)] rounded-2xl bg-muted px-3.5 py-2 text-[13.5px] leading-relaxed break-keep whitespace-pre-wrap",r&&"rounded-br-sm"),children:e.text})}):(0,t.jsxs)("div",{className:(0,T.cn)("flex items-start gap-2",s?"mt-3":"mt-1"),children:[(0,t.jsx)(B,{face:s,className:"mt-0.5"}),(0,t.jsx)("p",{className:"max-w-[min(34rem,78%)] text-[13.5px] leading-relaxed break-keep whitespace-pre-wrap",children:e.text})]})}function B({face:e,className:n}){return(0,t.jsx)("span",{className:(0,T.cn)("grid size-[18px] shrink-0 place-items-center",n),children:e&&(0,t.jsx)(K.ThursdayMark,{size:18})})}function V({turn:e,job:n,repeats:s,opensRun:r}){let l=e.tool??"",a=(0,w.toolIcon)(l),i=(0,M.toolLine)(l,e.text);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:(0,T.cn)("flex items-center gap-2",r?"mt-3":"mt-1.5"),children:[(0,t.jsx)(B,{face:r}),(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5 text-muted-foreground",children:[(0,t.jsx)(a,{className:"size-3 shrink-0"}),i&&(0,t.jsx)("span",{className:"truncate text-[11px] break-keep",children:i}),(0,t.jsx)("span",{className:"shrink-0 font-mono text-[10px] text-muted-foreground/60",children:l}),s>1&&(0,t.jsxs)("span",{className:"shrink-0 font-mono text-[10px] text-muted-foreground/70",children:["×",s]})]})]}),n&&(0,t.jsxs)("p",{className:"mt-0.5 ml-[26px] flex min-w-0 items-baseline gap-1.5 text-[11px]",children:["running"===n.status?(0,t.jsx)(S.ShinyText,{text:P.running,className:"shrink-0 font-mono text-[10px]"}):(0,t.jsx)("span",{className:(0,T.cn)("shrink-0 font-mono text-[10px]",z[n.status]),children:P[n.status]}),n.outcome&&"running"!==n.status&&(0,t.jsx)("span",{className:"truncate text-muted-foreground",children:(0,T.plainText)(n.outcome)})]})]})}var W=e.i(333495),U=e.i(933916),q=e.i(762074);let Y=(0,R.createServerReference)("7f1d36b0d1eafa4f7bbf1208f18183bcc64c3ec7e0",R.callServer,void 0,R.findSourceMapURL,"resetHistoryAction"),X=(0,R.createServerReference)("7f163845a4428ceeeb912bcaf5c0c9eef6f501b473",R.callServer,void 0,R.findSourceMapURL,"setCallSkillsAction");var Z=e.i(671228),J=e.i(67045),Q=e.i(698570),ee=e.i(319841),et=e.i(981203),en=e.i(283653);function es(){let{data:e}=(0,en.useServerRoute)(l.queryKey.callSkills),[n]=(0,A.useServerAction)(X,{onOk:()=>(0,en.revalidate)(l.queryKey.callSkills)});return(0,t.jsx)(g.SettingGroup,{label:"Skills",children:(0,t.jsx)(g.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)(er,{})})})}function er(){let{data:e}=(0,en.useServerRoute)(l.queryKey.skills);return e?(0,t.jsx)(g.SettingNote,{className:(0,T.cn)(!e.length&&T.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 el(){let[e,n]=(0,A.useServerAction)(Y,{okMessage:({calls:e,tasks:t,notes:n})=>`Wiped ${e} calls, ${t} jobs, ${n} notes`,onOk:()=>{(0,en.revalidate)(l.queryKey.memory),(0,en.revalidate)(l.queryKey.tasks),(0,en.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)(g.SettingGroup,{label:"Danger zone",note:"Keys, bots and connectors stay.",children:(0,t.jsx)(g.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 ea({value:e,onChange:n}){let s=t=>n({...e,...t});return(0,t.jsx)(g.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)(W.Face,{look:e,size:176,className:"w-44"}),(0,t.jsx)(d.Segmented,{"aria-label":"Face",options:U.FACE_KINDS.map(e=>({value:e,label:W.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:W.FACES[e.kind].hint})]}),"mark"===e.kind&&(0,t.jsx)(p.MarkPalette,{color:e.color,themePicked:!e.color,onTheme:()=>s({color:void 0}),onPick:e=>s({color:e})}),"mark"===e.kind&&(0,t.jsx)(eo,{label:"Shape",children:(0,t.jsx)(d.Segmented,{"aria-label":"Shape",options:f.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)(eo,{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)(eo,{label:"Glyphs",children:(0,t.jsx)(d.Segmented,{"aria-label":"Glyphs",options:U.ASCII_CHARSETS.map(e=>({value:e,label:ei[e]})),value:e.charset,onChange:e=>s({charset:e})})}),(0,t.jsx)(eo,{label:"Size",children:(0,t.jsx)(ec,{min:h.ASCII_FACE.fontSize.min,max:h.ASCII_FACE.fontSize.max,step:1,value:e.fontSize,format:e=>`${e}px`,onChange:e=>s({fontSize:e})})}),(0,t.jsx)(eo,{label:"Density",children:(0,t.jsx)(ec,{min:h.ASCII_FACE.density.min,max:h.ASCII_FACE.density.max,step:.1,value:e.density,format:e=>`${e.toFixed(1)}x`,onChange:e=>s({density:e})})})]})]})})}let ei={ascii:"Characters",emoji:"Sprinkled",emojiOnly:"All emoji"};function eo({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 ec({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 ed({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,T.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,T.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 eu={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 eh({value:e,onChange:n}){return(0,t.jsx)(g.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)(g.SettingChoiceRows,{options:Z.CALL_BACK_MODES.map(e=>({value:e,label:Z.CALL_BACK_LABEL[e],hint:em[e]})),value:e,onChange:n})})}let em={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 ex({value:e,onChange:n}){return(0,t.jsx)(g.SettingGroup,{label:"Captions",children:(0,t.jsx)(g.SettingChoiceRows,{options:Z.CAPTION_VIEWS.map(e=>({value:e,label:eu[e].label,hint:eu[e].hint})),value:e,onChange:n})})}function ep({value:e,onChange:n}){let s=(0,Q.useDraft)(e.phrase,t=>n({...e,phrase:t}),{min:Z.WAKE_PHRASE.min}),r=s.value.trim().split(/\s+/).length<2;return(0,t.jsx)(g.SettingGroup,{label:"Wake",children:(0,t.jsx)(g.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:Z.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)(g.SettingNote,{children:r?"One word will wake her by accident — say hello first.":"Heard loosely, in English. Near misses count."})]})})})}function ef({value:e,onChange:n}){let[s,l]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),o=(0,ee.useHotkeyLabel)((0,ee.isCombo)(e.combo)?e.combo:null);return(0,t.jsx)(g.SettingGroup,{label:"Shortcut",children:(0,t.jsx)(g.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",...ee.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,ee.comboOf)(t.nativeEvent);if(!s)return i(!0);i(!1),l(!1),n({...e,combo:s})}:void 0,className:(0,T.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)(g.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 eg({value:e,onSave:n}){let[s,l]=(0,r.useState)(e);return(0,t.jsx)(g.SettingGroup,{label:"Instructions",right:`${s.length}/${et.COMMON_VALIDATE.prompt.max}`,children:(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)(u.Textarea,{value:s,maxLength:et.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,J.useThursdayStore)(),n=(0,J.useThursdayStore)(e=>e.patch),{data:s=[],isLoading:r,error:a}=(0,en.useServerRoute)(l.queryKey.llmModel),i=(0,q.useThursdayFace)();if(r)return(0,t.jsx)(g.SettingSkeleton,{rows:4});if(a)return(0,t.jsx)(g.SettingError,{message:a.message});let o=e.model?.provider??null;return(0,t.jsxs)(g.SettingScreen,{footer:(0,t.jsx)(g.SettingRailNote,{children:"Her prompt is assembled fresh on every call — memory, the roster and your skills go in."}),children:[(0,t.jsx)(ea,{value:i,onChange:q.setThursdayFace}),(0,t.jsx)(O,{}),(0,t.jsx)(g.SettingGroup,{label:"Voice",note:!o&&"Nothing picked — calls run on whichever key is set.",children:(0,t.jsx)(g.SettingItems,{children:x.SPEACH_MODEL_PROVIDER_LIST.map(r=>{let l;return(0,t.jsx)(ed,{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)(ex,{value:e.captionView,onChange:e=>n({captionView:e})}),(0,t.jsx)(ep,{value:e.wake,onChange:e=>n({wake:e})}),(0,t.jsx)(eh,{value:e.callBack,onChange:e=>n({callBack:e})}),(0,t.jsx)(ef,{value:e.hotkey,onChange:e=>n({hotkey:e})}),(0,t.jsx)(es,{}),(0,t.jsx)(eg,{value:e.systemPrompt??"",onSave:e=>n({systemPrompt:e})}),(0,t.jsx)(el,{})]})}],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:f=!1,parallel:g=!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,j,y]=(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?y(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&&j({_l:x?N.current:S()})},[c,u]);let w=f&&!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;j({_r:s.U});let d=[],h=S(),[x]=(0,s.c)(u,e),f=x().data,y=[],k=null;for(let e=0;e<h;++e){let[a,i]=(0,s.s)(n(e,g?null:k));if(!a)break;let[h,x]=(0,s.c)(u,a),b=h().data,j=m||t||(0,s.i)(b)||p&&!e&&!(0,s.i)(f)||w||f&&!(0,s.i)(f[e])&&!o.compare(f[e],b);if(r&&("function"==typeof l?l(b,i):j)){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};g?y.push(t):await t()}else d[e]=b;g||(k=b)}return g&&await Promise.all(y.map(e=>e())),c()||j({_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)?j({_i:!0,_r:n.revalidate}):j({_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),f=void 0!==p&&p.length>=n,g=(0,t.useRef)(0),v=i&&m.length>0&&g.current>m.length,b=(0,t.useRef)({isValidating:i,setSize:u,pages:m.length});b.current={isValidating:i,setSize:u,pages:m.length};let j=(0,d.resolveKey)(s(0,null)),y="string"==typeof j?j:j?.url;(0,t.useEffect)(()=>{if(y)return(0,d.registerPagedReader)({url:y,refresh:()=>h()})},[y,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||(g.current=e.pages+1,e.setSize(e.pages+1))},{enabled:f,revision:`${m.length}:${i}`});return{items:x,isLoading:a,isLoadingMore:v,error:l,hasMore:f,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)},466787,e=>{"use strict";var t=e.i(755566);e.s(["TriangleAlert",()=>t.default])}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,630374,393080,609856,e=>{"use strict";var t=e.i(843476);e.i(914651);var n=e.i(402820),r=e.i(156736),o=e.i(209793),i=e.i(784324),s=e.i(264951),l=e.i(750440),a=e.i(974217),u=e.i(77173),c=e.i(313488),d=e.i(301807),p=e.i(675606),f=e.i(56434),g=e.i(564170);class m extends g.BasePopupHandle{constructor(){super((0,d.createNullDialogStore)(),"Dialog",!1)}open(e){this.openByTrigger(e)}openWithPayload(e){let t=this.attachedStore;null===t||(t.set("payload",e),t.setOpen(!0,(0,p.createChangeEventDetails)(f.REASONS.imperativeAction)))}close(){this.closePopup()}get isOpen(){return this.attachedStore?.select("open")??!1}}e.s(["Backdrop",()=>n.DialogBackdrop,"Close",()=>r.DialogClose,"Description",()=>o.DialogDescription,"Handle",0,m,"Popup",()=>i.DialogPopup,"Portal",()=>s.DialogPortal,"Root",()=>l.DialogRoot,"Title",()=>u.DialogTitle,"Trigger",()=>c.DialogTrigger,"Viewport",()=>a.DialogViewport,"createHandle",0,function(){return new m}],828376);var v=e.i(828376),v=v,h=e.i(560964),E=e.i(167881),S=e.i(647163);function b({...e}){return(0,t.jsx)(v.Portal,{"data-slot":"dialog-portal",...e})}function y({className:e,...n}){return(0,t.jsx)(v.Backdrop,{"data-slot":"dialog-overlay",className:(0,S.cn)("fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...n})}e.s(["Dialog",0,function({...e}){return(0,t.jsx)(v.Root,{"data-slot":"dialog",...e})},"DialogContent",0,function({className:e,children:n,showCloseButton:r=!0,...o}){return(0,t.jsxs)(b,{children:[(0,t.jsx)(y,{}),(0,t.jsxs)(v.Popup,{"data-slot":"dialog-content",className:(0,S.cn)("fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),...o,children:[n,r&&(0,t.jsxs)(v.Close,{"data-slot":"dialog-close",render:(0,t.jsx)(E.Button,{variant:"ghost",className:"absolute top-2 right-2",size:"icon-sm"}),children:[(0,t.jsx)(h.XIcon,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})},"DialogDescription",0,function({className:e,...n}){return(0,t.jsx)(v.Description,{"data-slot":"dialog-description",className:(0,S.cn)("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),...n})},"DialogFooter",0,function({className:e,showCloseButton:n=!1,children:r,...o}){return(0,t.jsxs)("div",{"data-slot":"dialog-footer",className:(0,S.cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",e),...o,children:[r,n&&(0,t.jsx)(v.Close,{render:(0,t.jsx)(E.Button,{variant:"outline"}),children:"Close"})]})},"DialogHeader",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"dialog-header",className:(0,S.cn)("flex flex-col gap-2",e),...n})},"DialogTitle",0,function({className:e,...n}){return(0,t.jsx)(v.Title,{"data-slot":"dialog-title",className:(0,S.cn)("font-heading text-base leading-none font-medium",e),...n})},"DialogTrigger",0,function({...e}){return(0,t.jsx)(v.Trigger,{"data-slot":"dialog-trigger",...e})}],630374);var C=e.i(271645),T=e.i(6799);let R=e=>!!e&&"object"==typeof e&&(!0===e.$ok||!1===e.$ok),x=e=>R(e)&&e.$ok,w={ok:e=>({$ok:!0,data:e}),error:e=>({$ok:!1,message:e})};e.s(["isResult",0,R,"isResultOk",0,x,"result",0,w,"unwrapResult",0,e=>{if(!x(e))throw Error(e.message??"Something went wrong");return e.data}],393080);let P="Something went wrong";e.s(["useServerAction",0,function(e,t={}){let[n,r]=(0,C.useState)(!1),[o,i]=(0,C.useState)(),[s,l]=(0,C.useState)(),a=(0,C.useRef)(t);a.current=t;let u=(0,C.useRef)(0),c=(0,C.useCallback)(async(...t)=>{let n=++u.current;r(!0);try{let r=await e(...t).catch(e=>w.error((0,S.errorToString)(e))),{onOk:o,onError:s,okMessage:c,errorMessage:d}=a.current;if(x(r)){n===u.current&&(i(r.data),l(void 0));let e="function"==typeof c?c(r.data):c;return e&&T.toast.add({type:"success",title:e}),o?.(r.data),r.data}if(n===u.current&&l(r.message??P),!1!==d){let e="function"==typeof d?d(r.message):d??r.message??P;T.toast.add({type:"error",title:e})}throw s?.(r.message),Error(r.message??P)}finally{n===u.current&&r(!1)}},[e]);return[(0,C.useCallback)((...e)=>{let t=c(...e);return t.catch(()=>{}),t},[c]),n,o,s,(0,C.useCallback)(()=>{i(void 0),l(void 0)},[])]}],609856)},671428,e=>{"use strict";var t=e.i(843476),n=e.i(647163);e.s(["Skeleton",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"skeleton",className:(0,n.cn)("animate-pulse rounded-md bg-muted",e),...r})}])},209793,e=>{"use strict";e.i(247167);var t=e.i(271645),n=e.i(108821),r=e.i(552245),o=e.i(788015);let i=t.forwardRef(function(e,t){let{render:i,className:s,style:l,id:a,...u}=e,c=(0,n.useDialogRootContext)(),d=(0,o.useBaseUiId)(a);return c.useSyncedValueWithCleanup("descriptionElementId",d),(0,r.useRenderElement)("p",e,{ref:t,props:[{id:d},u]})});e.s(["DialogDescription",0,i])},914651,108821,402820,156736,e=>{"use strict";e.s([],914651);var t=e.i(271645),n=e.i(733332);let r=t.createContext(void 0);function o(e){let o=t.useContext(r);if(!e&&void 0===o)throw Error((0,n.default)(27));return o}e.s(["DialogRootContext",0,r,"useDialogRootContext",0,o],108821);var i=e.i(552245),s=e.i(879938);let l=t.forwardRef(function(e,t){let{render:n,className:r,style:l,forceRender:a=!1,...u}=e,c=o(),d=c.useState("open"),p=c.useState("nested"),f=c.useState("mounted"),g=c.useState("transitionStatus");return(0,i.useRenderElement)("div",e,{state:{open:d,transitionStatus:g},ref:[c.context.backdropRef,t],stateAttributesMapping:s.popupTransitionStateMapping,props:[{role:"presentation",hidden:!f,style:{userSelect:"none",WebkitUserSelect:"none"}},u],enabled:a||!p})});e.s(["DialogBackdrop",0,l],402820);var a=e.i(540886),u=e.i(675606),c=e.i(56434);let d=t.forwardRef(function(e,t){let{render:n,className:r,style:s,disabled:l=!1,nativeButton:d=!0,...p}=e,f=o(),g=f.useState("open"),{getButtonProps:m,buttonRef:v}=(0,a.useButton)({disabled:l,native:d});return(0,i.useRenderElement)("button",e,{state:{disabled:l},ref:[t,v],props:[{onClick:function(e){g&&f.setOpen(!1,(0,u.createChangeEventDetails)(c.REASONS.closePress,e.nativeEvent))}},p,m]})});e.s(["DialogClose",0,d],156736)},784324,10199,e=>{"use strict";var t=e.i(271645),n=e.i(61487),r=e.i(108821),o=e.i(552245),i=e.i(625834),s=e.i(137584),l=e.i(673327),a=e.i(264111),u=e.i(474354),c=e.i(879938),d=e.i(38380),d=d;d.open,d.closed,d.startingStyle,d.endingStyle;let p={...c.popupStateMapping,...u.transitionStatusMapping,nestedDialogOpen:e=>e?{"data-nested-dialog-open":""}:null};e.s(["dialogStateAttributesMapping",0,p],10199);var f=e.i(843476);let g=t.forwardRef(function(e,t){let{render:u,className:c,style:d,finalFocus:g,initialFocus:m,...v}=e,h=(0,r.useDialogRootContext)(),E=h.useState("descriptionElementId"),S=h.useState("disablePointerDismissal"),b=h.useState("floatingRootContext"),y=h.useState("popupProps"),C=h.useState("modal"),T=h.useState("mounted"),R=h.useState("nested"),x=h.useState("nestedOpenDialogCount"),w=h.useState("open"),P=h.useState("openMethod"),O=h.useState("titleElementId"),k=h.useState("transitionStatus"),D=h.useState("role"),I=b.useState("floatingId");(0,i.useDialogPortalContext)(),(0,s.useOpenChangeComplete)({open:w,ref:h.context.popupRef,onComplete(){w&&h.context.onOpenChangeComplete?.(!0)}});let M=void 0===m?(0,a.createDefaultInitialFocus)(h.context.popupRef):m,A=h.useStateSetter("popupElement"),L=(0,o.useRenderElement)("div",e,{state:{open:w,nested:R,transitionStatus:k,nestedDialogOpen:x>0},props:[y,{id:I,"aria-labelledby":O,"aria-describedby":E,role:D,...a.FOCUSABLE_POPUP_PROPS,hidden:!T,onKeyDown(e){l.COMPOSITE_KEYS.has(e.key)&&e.stopPropagation()},style:{"--nested-dialogs":x}},v],ref:[t,h.context.popupRef,A],stateAttributesMapping:p});return(0,f.jsx)(n.FloatingFocusManager,{context:b,openInteractionType:P,disabled:!T,closeOnFocusOut:!S,initialFocus:M,returnFocus:g,modal:!1!==C,restoreFocus:"popup",children:L})});e.s(["DialogPopup",0,g],784324)},264951,e=>{"use strict";e.i(247167);var t=e.i(271645),n=e.i(144394),r=e.i(726674),o=e.i(108821),i=e.i(625834),s=e.i(426),l=e.i(843476);let a=t.forwardRef(function(e,t){let{keepMounted:a=!1,...u}=e,c=(0,o.useDialogRootContext)(),d=c.useState("mounted"),p=c.useState("modal"),f=c.useState("open");return d||a?(0,l.jsx)(i.DialogPortalContext.Provider,{value:a,children:(0,l.jsxs)(r.FloatingPortal,{ref:t,...u,children:[d&&!0===p&&(0,l.jsx)(s.InternalBackdrop,{ref:c.context.internalBackdropRef,inert:(0,n.inertValue)(!f)}),e.children]})}):null});e.s(["DialogPortal",0,a])},625834,e=>{"use strict";e.i(247167);var t=e.i(733332),n=e.i(271645);let r=n.createContext(void 0);e.s(["DialogPortalContext",0,r,"useDialogPortalContext",0,function(){let e=n.useContext(r);if(void 0===e)throw Error((0,t.default)(26));return e}])},750440,301807,974217,77173,e=>{"use strict";var t=e.i(896499),n=e.i(271645),r=e.i(67530),o=e.i(108821),i=e.i(301252),s=e.i(18478),l=e.i(116786),a=e.i(990627),u=e.i(264111);let c={...l.popupStoreSelectors,modal:e=>e.modal,nested:e=>e.nested,nestedOpenDialogCount:e=>e.nestedOpenDialogCount,nestedOpenDrawerCount:e=>e.nestedOpenDrawerCount,disablePointerDismissal:e=>e.disablePointerDismissal,openMethod:e=>e.openMethod,descriptionElementId:e=>e.descriptionElementId,titleElementId:e=>e.titleElementId,viewportElement:e=>e.viewportElement,role:e=>e.role};class d extends i.ReactStore{constructor(e,t,n){const r=new a.PopupTriggerMap;super(p(e,r,t,n),f(r),c)}setOpen=(e,t)=>{t.preventUnmountOnClose=()=>{this.set("preventUnmountingOnClose",!0)},e||null!=t.trigger||null==this.state.activeTriggerId||(t.trigger=this.state.activeTriggerElement??void 0),this.context.onOpenChange?.(e,t),t.isCanceled||(this.state.floatingRootContext.dispatchOpenChange(e,t),this.update((0,u.createPopupOpenState)(this.state,e,t.trigger)))}}function p(e,t,n,r=!1){return{...(0,l.createInitialPopupStoreState)(t,n,r),modal:!0,disablePointerDismissal:!1,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,nestedOpenDrawerCount:0,role:"dialog",...e}}function f(e){return{popupRef:n.createRef(),backdropRef:n.createRef(),internalBackdropRef:n.createRef(),outsidePressEnabledRef:{current:!0},triggerElements:e,onOpenChange:void 0,onOpenChangeComplete:void 0}}e.s(["DialogStore",0,d,"createNullDialogStore",0,function(){let e=new a.PopupTriggerMap;return new s.NullStore(Object.freeze(p(void 0,e)),Object.freeze(f(e)),c)}],301807);var g=e.i(675606),m=e.i(56434),v=e.i(843476);let h=(0,t.fastComponent)(function(e){return function(e,t){let{children:i,open:s,defaultOpen:l=!1,onOpenChange:a,onOpenChangeComplete:c,disablePointerDismissal:p=!1,modal:f=!0,actionsRef:h,handle:E,triggerId:S,defaultTriggerId:b=null}=t,y="alert-dialog"===e,C=(0,o.useDialogRootContext)(!0),T={modal:!!y||f,disablePointerDismissal:y||p,nested:null!=C,role:y?"alertdialog":"dialog"},R=(0,u.usePopupRootStore)((e,t)=>new d({open:l,openProp:s,activeTriggerId:b,triggerIdProp:S,...T},e,t),!0);R.useControlledProp("openProp",s),R.useControlledProp("triggerIdProp",S),R.useSyncedValues(T),R.useContextCallback("onOpenChange",a),R.useContextCallback("onOpenChangeComplete",c);let x=R.useState("open"),w=R.useState("mounted"),P=R.useState("payload");(0,u.usePopupRootSync)(R,x),(0,u.useImplicitActiveTrigger)(R);let{forceUnmount:O}=(0,u.useOpenStateTransitions)(x,R);n.useImperativeHandle(h,()=>({unmount:O,close:()=>R.setOpen(!1,(0,g.createChangeEventDetails)(m.REASONS.imperativeAction))}),[O,R]);let k=x||w;return(0,v.jsxs)(o.DialogRootContext.Provider,{value:R,children:[E&&(0,v.jsx)(u.PopupHandleAttachment,{handle:E,store:R}),k&&(0,v.jsx)(r.DialogInteractions,{store:R,parentContext:C?.context,isDrawer:"drawer"===e}),"function"==typeof i?i({payload:P}):i]})}("dialog",e)});e.s(["DialogRoot",0,h],750440);var E=e.i(552245),S=e.i(625834),b=e.i(10199);let y=n.forwardRef(function(e,t){let{render:n,className:r,style:i,children:s,...l}=e,a=(0,S.useDialogPortalContext)(),u=(0,o.useDialogRootContext)(),c=u.useState("open"),d=u.useState("nested"),p=u.useState("transitionStatus"),f=u.useState("nestedOpenDialogCount"),g=u.useState("mounted"),m=u.useStateSetter("viewportElement");return(0,E.useRenderElement)("div",e,{enabled:a||g,state:{open:c,nested:d,transitionStatus:p,nestedDialogOpen:f>0},ref:[t,m],stateAttributesMapping:b.dialogStateAttributesMapping,props:[{role:"presentation",hidden:!g,style:{pointerEvents:c?void 0:"none"},children:s},l]})});e.s(["DialogViewport",0,y],974217);var C=e.i(788015);let T=n.forwardRef(function(e,t){let{render:n,className:r,style:i,id:s,...l}=e,a=(0,o.useDialogRootContext)(),u=(0,C.useBaseUiId)(s);return a.useSyncedValueWithCleanup("titleElementId",u),(0,E.useRenderElement)("h2",e,{ref:t,props:[{id:u},l]})});e.s(["DialogTitle",0,T],77173)},67530,e=>{"use strict";var t=e.i(271645),n=e.i(146376),r=e.i(145484),o=e.i(17989),i=e.i(584446),s=e.i(264111);e.s(["DialogInteractions",0,function({store:e,parentContext:l,isDrawer:a}){let u=e.useState("open"),c=e.useState("disablePointerDismissal"),d=e.useState("modal"),p=e.useState("popupElement"),f=e.useState("floatingRootContext"),[g,m]=t.useState(0),[v,h]=t.useState(0),E=0===g,S=(0,o.useDismiss)(f,{outsidePressEvent:()=>e.context.internalBackdropRef.current||e.context.backdropRef.current?"intentional":{mouse:"trap-focus"===d?"sloppy":"intentional",touch:"sloppy"},outsidePress(t){if(!e.context.outsidePressEnabledRef.current||"button"in t&&0!==t.button)return!1;if("touches"in t){if("touchend"===t.type){if(1!==t.changedTouches.length||0!==t.touches.length)return!1}else if(1!==t.touches.length)return!1}let n=(0,i.getTarget)(t);if(E&&!c){if(d){let t=e.context.internalBackdropRef.current,r=e.context.backdropRef.current;return!t&&!r||t===n||r===n||(0,i.contains)(n,p)&&!n?.hasAttribute("data-base-ui-portal")}return!0}return!1},escapeKey:E});return(0,r.useScrollLock)(u&&!0===d,p),e.useContextCallback("onNestedDialogOpen",(e,t)=>{m(e),h(t)}),(0,n.useIsoLayoutEffect)(()=>(l?.onNestedDialogOpen&&(u?l.onNestedDialogOpen(g+1,v+ +!!a):l.onNestedDialogOpen(0,0)),()=>{l?.onNestedDialogOpen&&u&&l.onNestedDialogOpen(0,0)}),[a,u,g,v,l]),(0,s.usePopupInteractionProps)(e,{activeTriggerProps:S.reference,inactiveTriggerProps:S.trigger,popupProps:S.floating,nestedOpenDialogCount:g,nestedOpenDrawerCount:v}),null}])},313488,e=>{"use strict";e.i(247167);var t=e.i(733332),n=e.i(271645),r=e.i(896499),o=e.i(108821),i=e.i(540886),s=e.i(552245),l=e.i(879938),a=e.i(638396),u=e.i(459636),c=e.i(264111),d=e.i(788015),p=e.i(385689),f=e.i(32199);let g=(0,r.fastComponentRef)(function(e,r){let{render:g,className:m,style:v,disabled:h=!1,nativeButton:E=!0,id:S,payload:b,handle:y,...C}=e,T=(0,o.useDialogRootContext)(!0),R=(0,u.usePopupHandleStore)(y)??T;if(!R)throw Error((0,t.default)(79));let x=(0,d.useBaseUiId)(S),w=R.useState("floatingRootContext"),P=R.useState("isOpenedByTrigger",x),O=R.useState("triggerPopupId",x),k=n.useRef(null),{registerTrigger:D,isMountedByThisTrigger:I}=(0,c.useTriggerDataForwarding)(x,k,R,{payload:b}),{getButtonProps:M,buttonRef:A}=(0,i.useButton)({disabled:h,native:E}),L=(0,p.useClick)(w),N=(0,f.useOpenMethodTriggerProps)(()=>R.select("open"),e=>{R.set("openMethod",e)}),F=R.useState("triggerProps",I);return(0,s.useRenderElement)("button",e,{state:{disabled:h,open:P},ref:[A,r,D,k],props:[L.reference,F,N,{[a.CLICK_TRIGGER_IDENTIFIER]:"",id:x,"aria-haspopup":"dialog","aria-expanded":P,"aria-controls":O},C,M],stateAttributesMapping:l.triggerOpenStateMapping})});e.s(["DialogTrigger",0,g])},61487,e=>{"use strict";var t=e.i(271645),n=e.i(229315),r=e.i(574735),o=e.i(365420),i=e.i(828918),s=e.i(446265),l=e.i(667865),a=e.i(146376),u=e.i(439957),c=e.i(328744),d=e.i(708445),p=e.i(108868),f=e.i(333848),g=e.i(152535),m=e.i(584446),v=e.i(596296),h=e.i(157940),E=e.i(383976),S=e.i(958408),b=e.i(621082),y=e.i(675606),C=e.i(56434),T=e.i(451321),R=e.i(503596);let x={inert:new WeakMap,"aria-hidden":new WeakMap},w="data-base-ui-inert",P={inert:new WeakSet,"aria-hidden":new WeakSet},O=new WeakMap,k=0,D=(e,t)=>t.map(t=>{if(e.contains(t))return t;let r=function e(t){return t?(0,n.isShadowRoot)(t)?t.host:e(t.parentNode):null}(t);return e.contains(r)?r:null}).filter(e=>null!=e),I=e=>{let t=new Set;return e.forEach(e=>{let n=e;for(;n&&!t.has(n);)t.add(n),n=n.parentNode}),t},M=(e,t,r)=>{let o=[],i=e=>{!e||r.has(e)||Array.from(e.children).forEach(e=>{"script"!==(0,n.getNodeName)(e)&&(t.has(e)?i(e):o.push(e))})};return i(e),o};function A(e,t={}){let{ariaHidden:n=!1,inert:r=!1,mark:o=!0}=t,i=(0,p.ownerDocument)(e[0]).body;return function(e,t,n,r,{mark:o=!0}){let i=null;r?i="inert":n&&(i="aria-hidden");let s=null,l=null,a=D(t,e),u=o?M(t,I(a),new Set(a)):[],c=[],d=[];if(i){let e=x[i],n=P[i];l=n,s=e;let r=D(t,Array.from(t.querySelectorAll("[aria-live]"))),o=a.concat(r);M(t,I(o),new Set(o)).forEach(t=>{let r=t.getAttribute(i),o=null!==r&&"false"!==r,s=(e.get(t)||0)+1;e.set(t,s),c.push(t),1===s&&o&&n.add(t),o||t.setAttribute(i,"inert"===i?"":"true")})}return o&&u.forEach(e=>{let t=(O.get(e)||0)+1;O.set(e,t),d.push(e),1===t&&e.setAttribute(w,"")}),k+=1,()=>{s&&c.forEach(e=>{let t=(s.get(e)||0)-1;s.set(e,t),t||(!l?.has(e)&&i&&e.removeAttribute(i),l?.delete(e))}),o&&d.forEach(e=>{let t=(O.get(e)||0)-1;O.set(e,t),t||e.removeAttribute(w)}),(k-=1)||(x.inert=new WeakMap,x["aria-hidden"]=new WeakMap,P.inert=new WeakSet,P["aria-hidden"]=new WeakSet,O=new WeakMap)}}(e,i,n,r,{mark:o})}var L=e.i(726674),N=e.i(46420),F=e.i(638396),B=e.i(594603),W=e.i(843476);let j=[];function H(){j=j.filter(e=>e.deref()?.isConnected)}function Y(e){H(),e&&"body"!==(0,n.getNodeName)(e)&&(j.push(new WeakRef(e)),j.length>20&&(j=j.slice(-20)))}function U(){return H(),j[j.length-1]?.deref()}function _(e){if(e.hasAttribute("tabindex")&&!e.hasAttribute("data-tabindex")||!e.getAttribute("role")?.includes("dialog"))return;let t=(0,E.focusable)(e).filter(e=>{let t=e.getAttribute("data-tabindex")||"";return(0,E.isTabbable)(e)||e.hasAttribute("data-tabindex")&&!t.startsWith("-")}),n=e.getAttribute("tabindex");0===t.length?"0"!==n&&(e.setAttribute("tabindex","0"),e.setAttribute("data-tabindex","0")):("-1"!==n||e.hasAttribute("data-tabindex")&&"-1"!==e.getAttribute("data-tabindex"))&&(e.setAttribute("tabindex","-1"),e.setAttribute("data-tabindex","-1"))}e.s(["FloatingFocusManager",0,function(e){let{context:x,children:w,disabled:P=!1,initialFocus:O=!0,returnFocus:k=!0,restoreFocus:D=!1,modal:I=!0,closeOnFocusOut:M=!0,openInteractionType:j="",nextFocusableElement:V,previousFocusableElement:q,beforeContentFocusGuardRef:X,externalTree:K,getInsideElements:$}=e,G="rootStore"in x?x.rootStore:x,z=G.useState("open"),J=G.useState("domReferenceElement"),Q=G.useState("floatingElement"),{events:Z,dataRef:ee}=G.context,et=(0,l.useStableCallback)(()=>ee.current.floatingContext?.nodeId),en=(0,v.isTypeableCombobox)(J)&&!1===O,er=(0,s.useValueAsRef)(O),eo=(0,s.useValueAsRef)(k),ei=(0,s.useValueAsRef)(j),es=(0,s.useValueAsRef)(z),el=(0,N.useFloatingTree)(K),ea=(0,L.usePortalContext)(),eu=t.useRef(!1),ec=t.useRef(!1),ed=t.useRef(!1),ep=t.useRef(null),ef=t.useRef(""),eg=t.useRef(""),em=t.useRef(null),ev=t.useRef(null),eh=(0,i.useMergedRefs)(em,X,ea?.beforeInsideRef),eE=(0,i.useMergedRefs)(ev,ea?.afterInsideRef),eS=(0,u.useTimeout)(),eb=(0,u.useTimeout)(),ey=(0,d.useAnimationFrame)(),eC=null!=ea,eT=(0,v.getFloatingFocusElement)(Q),eR=(0,l.useStableCallback)((e=eT)=>e?(0,E.tabbable)(e):[]),ex=(0,l.useStableCallback)(()=>$?.().filter(e=>null!=e)??[]);t.useEffect(()=>{if(P||!I)return;let e=(0,p.ownerDocument)(eT);return(0,r.addEventListener)(e,"keydown",function(e){"Tab"===e.key&&(0,m.contains)(eT,(0,m.activeElement)((0,p.ownerDocument)(eT)))&&0===eR().length&&!en&&(0,h.stopEvent)(e)})},[P,eT,I,en,eR]),t.useEffect(()=>{if(P||!z)return;let e=(0,p.ownerDocument)(eT);function t(){ed.current=!1}return(0,o.mergeCleanups)((0,r.addEventListener)(e,"pointerdown",function(e){let t=(0,m.getTarget)(e),n=ex();ed.current=!((0,m.contains)(Q,t)||(0,m.contains)(J,t)||(0,m.contains)(ea?.portalNode,t)||n.some(e=>e===t||(0,m.contains)(e,t))),eg.current=e.pointerType||"keyboard",t?.closest(`[${F.CLICK_TRIGGER_IDENTIFIER}]`)&&(ec.current=!0,eb.start(0,()=>{ec.current=!1}))},!0),(0,r.addEventListener)(e,"pointerup",t,!0),(0,r.addEventListener)(e,"pointercancel",t,!0),(0,r.addEventListener)(e,"keydown",function(){eg.current="keyboard"},!0),t)},[P,Q,J,eT,z,ea,eb,ex]),t.useEffect(()=>{if(P||!M)return;let e=(0,p.ownerDocument)(eT);function t(t){let r=t.relatedTarget,o=t.currentTarget,i=(0,m.getTarget)(t);I&&null==r&&null!=i&&(0,m.contains)(Q,i)&&Y(i),queueMicrotask(()=>{let s=et(),l=G.context.triggerElements,a=ex(),u=r?.hasAttribute((0,T.createAttribute)("focus-guard"))&&[em.current,ev.current,ea?.beforeInsideRef.current,ea?.afterInsideRef.current,ea?.beforeOutsideRef.current,ea?.afterOutsideRef.current,(0,B.resolveRef)(q),(0,B.resolveRef)(V)].includes(r),c=!((0,m.contains)(J,r)||(0,m.contains)(Q,r)||(0,m.contains)(r,Q)||(0,m.contains)(ea?.portalNode,r)||a.some(e=>e===r||(0,m.contains)(e,r))||l.hasMatchingElement(e=>(0,m.contains)(e,r))||u||el&&((0,S.getNodeChildren)(el.nodesRef.current,s).find(e=>(0,m.contains)(e.context?.elements.floating,r)||(0,m.contains)(e.context?.elements.domReference,r))||(0,S.getNodeAncestors)(el.nodesRef.current,s).find(e=>[e.context?.elements.floating,(0,v.getFloatingFocusElement)(e.context?.elements.floating)].includes(r)||e.context?.elements.domReference===r)));if(o===J&&eT&&_(eT),D&&o!==J&&!(0,b.isElementVisible)(i)&&(0,m.activeElement)(e)===e.body){if((0,n.isHTMLElement)(eT)&&(eT.focus(),"popup"===D))return void ey.request(()=>{eT.focus()});let e=eR(),t=ep.current,r=(t&&e.includes(t)?t:null)||e[e.length-1]||eT;(0,n.isHTMLElement)(r)&&r.focus()}if(ee.current.insideReactTree){ee.current.insideReactTree=!1;return}(en||!I)&&r&&c&&!ec.current&&(en||r!==U())&&(eu.current=!0,G.setOpen(!1,(0,y.createChangeEventDetails)(C.REASONS.focusOut,t)))})}let i=(0,n.isHTMLElement)(J)?J:null;if(Q||i)return(0,o.mergeCleanups)(i&&(0,r.addEventListener)(i,"focusout",t),i&&(0,r.addEventListener)(i,"pointerdown",function(){ec.current=!0,eb.start(0,()=>{ec.current=!1})}),Q&&(0,r.addEventListener)(Q,"focusin",function(e){let t=(0,m.getTarget)(e);(0,E.isTabbable)(t)&&(ep.current=t)}),Q&&(0,r.addEventListener)(Q,"focusout",t),Q&&ea&&(0,r.addEventListener)(Q,"focusout",function(){ed.current||(ee.current.insideReactTree=!0,eS.start(0,()=>{ee.current.insideReactTree=!1}))},!0))},[P,J,Q,eT,I,el,ea,G,M,D,eR,en,et,ee,eS,eb,ey,V,q,ex]),t.useEffect(()=>{if(P||!Q||!z)return;let e=Array.from(ea?.portalNode?.querySelectorAll(`[${(0,T.createAttribute)("portal")}]`)||[]),t=el?(0,S.getNodeAncestors)(el.nodesRef.current,et()):[],n=t.find(e=>(0,v.isTypeableCombobox)(e.context?.elements.domReference||null))?.context?.elements.domReference,r=A([Q,...e,em.current,ev.current,ea?.beforeOutsideRef.current,ea?.afterOutsideRef.current,...ex(),n,(0,B.resolveRef)(q),(0,B.resolveRef)(V),en?J:null].filter(e=>null!=e),{ariaHidden:I||en,mark:!1}),o=A([Q,...e].filter(e=>null!=e));return()=>{o(),r()}},[z,P,J,Q,I,ea,en,el,et,V,q,ex]),(0,a.useIsoLayoutEffect)(()=>{if(!z||P||!(0,n.isHTMLElement)(eT))return;ef.current="",eg.current="";let e=(0,p.ownerDocument)(eT),t=(0,m.activeElement)(e);queueMicrotask(()=>{let n,r=er.current,o="function"==typeof r?r(ei.current||""):r;if(void 0===o||!1===o||(0,m.contains)(eT,t))return;let i=null,s=()=>(null==i&&(i=eR(eT)),i[0]||eT);n=(n=!0===o||null===o?s():(0,B.resolveRef)(o))||s();let l=(0,m.contains)(eT,(0,m.activeElement)(e));(0,R.enqueueFocus)(n,{preventScroll:n===eT,shouldFocus(){if(!es.current)return!1;if(l)return!0;let t=(0,m.activeElement)(e);return!(t!==n&&(0,m.contains)(eT,t))}})})},[P,z,eT,eR,er,ei,es]),(0,a.useIsoLayoutEffect)(()=>{if(P||!eT)return;let e=(0,p.ownerDocument)(eT),t=(0,m.activeElement)(e),r=null==ei.current;function o(e){var t,n;let r;if(e.open||(t=e.nativeEvent,n=eg.current,r=(0,f.ownerWindow)((0,m.getTarget)(t)),ef.current=t instanceof r.KeyboardEvent?"keyboard":t instanceof r.FocusEvent?n||"keyboard":"pointerType"in t?t.pointerType||"keyboard":"touches"in t?"touch":t instanceof r.MouseEvent?n||(0===t.detail?"keyboard":"mouse"):""),e.reason===C.REASONS.triggerHover&&"mouseleave"===e.nativeEvent.type&&(eu.current=!0),e.reason===C.REASONS.outsidePress)if(e.nested)eu.current=!1;else if((0,h.isVirtualClick)(e.nativeEvent)||(0,h.isVirtualPointerEvent)(e.nativeEvent))eu.current=!1;else{let e=!1;(0,p.ownerDocument)(eT).createElement("div").focus({get preventScroll(){return e=!0,!1}}),e?eu.current=!1:eu.current=!0}}return Y(t),Z.on("openchange",o),()=>{Z.off("openchange",o);let i=(0,m.activeElement)(e),s=ex(),l=(0,m.contains)(Q,i)||s.some(e=>e===i||(0,m.contains)(e,i))||el&&(0,S.getNodeChildren)(el.nodesRef.current,et(),!1).some(e=>(0,m.contains)(e.context?.elements.floating,i)),a=eo.current,u=ef.current,c=function(e){let o=eo.current,i="function"==typeof o?o(e):o;if(void 0===i||!1===i)return null;null===i&&(i=!0);let s=J?.isConnected?J:null,l=t?.isConnected&&"body"!==(0,n.getNodeName)(t)?t:null,a=r?l||s:s||l;return(a||(a=U()||null),"boolean"==typeof i)?a:(0,B.resolveRef)(i)||a||null}(u);queueMicrotask(()=>{let t=c?(0,E.isTabbable)(c)?c:(0,E.tabbable)(c)[0]||c:null;if(a&&!eu.current&&(0,n.isHTMLElement)(t)&&("boolean"!=typeof a||t===i||i===e.body||l)){let e={preventScroll:!0};"keyboard"===u&&(e.focusVisible=!0),t.focus(e)}eu.current=!1})}},[P,Q,eT,eo,ei,Z,el,J,et,ex]),(0,a.useIsoLayoutEffect)(()=>{if(!c.platform.engine.webkit||z||!Q)return;let e=(0,m.activeElement)((0,p.ownerDocument)(Q));(0,n.isHTMLElement)(e)&&(0,v.isTypeableElement)(e)&&(0,m.contains)(Q,e)&&e.blur()},[z,Q]),(0,a.useIsoLayoutEffect)(()=>{if(!P&&ea)return ea.setFocusManagerState({modal:I,closeOnFocusOut:M,open:z,onOpenChange:G.setOpen,domReference:J}),()=>{ea.setFocusManagerState(null)}},[P,ea,I,z,G,M,J]),(0,a.useIsoLayoutEffect)(()=>{if(!P&&eT)return _(eT),()=>{queueMicrotask(H)}},[P,eT]);let ew=!P&&(!I||!en)&&(eC||I);return(0,W.jsxs)(t.Fragment,{children:[ew&&(0,W.jsx)(g.FocusGuard,{"data-type":"inside",ref:eh,onFocus:e=>{if(I){let e=eR();(0,R.enqueueFocus)(e[e.length-1])}else if(ea?.portalNode)if(eu.current=!1,(0,E.isOutsideEvent)(e,ea.portalNode)){let e=(0,E.getNextTabbable)(J);e?.focus()}else(0,B.resolveRef)(q??ea.beforeOutsideRef)?.focus()}}),w,ew&&(0,W.jsx)(g.FocusGuard,{"data-type":"inside",ref:eE,onFocus:e=>{if(I)(0,R.enqueueFocus)(eR()[0]);else if(ea?.portalNode)if(M&&(eu.current=!0),(0,E.isOutsideEvent)(e,ea.portalNode)){let e=(0,E.getPreviousTabbable)(J);e?.focus()}else(0,B.resolveRef)(V??ea.afterOutsideRef)?.focus()}})]})}],61487)},385689,e=>{"use strict";var t=e.i(271645),n=e.i(708445),r=e.i(439957),o=e.i(956789),i=e.i(584446),s=e.i(596296),l=e.i(157940),a=e.i(675606),u=e.i(56434);e.s(["useClick",0,function(e,c={}){let{enabled:d=!0,event:p="click",toggle:f=!0,ignoreMouse:g=!1,stickIfOpen:m=!0,touchOpenDelay:v=0,reason:h=u.REASONS.triggerPress}=c,E="rootStore"in e?e.rootStore:e,S=E.context.dataRef,b=t.useRef(void 0),y=(0,n.useAnimationFrame)(),C=(0,r.useTimeout)(),T=t.useMemo(()=>{function e(e,t,n,r){let o=(0,a.createChangeEventDetails)(h,t,n);e&&"touch"===r&&v>0?C.start(v,()=>{E.setOpen(!0,o)}):E.setOpen(e,o)}function t(e,t,n){let r=S.current.openEvent,o=E.select("domReferenceElement")!==t;return!!e&&!!o||!e||!f||!!r&&!!m&&!n(r.type)}return{onPointerDown(e){b.current=(0,l.isMouseLikePointerType)(e.pointerType,!0)&&(0,l.isVirtualPointerEvent)(e.nativeEvent)?"virtual":e.pointerType},onMouseDown(n){let r=b.current,o=n.nativeEvent,a=E.select("open");if(0!==n.button||"click"===p||(0,l.isMouseLikePointerType)(r,!0)&&g)return;let u=t(a,n.currentTarget,e=>"click"===e||"mousedown"===e),c=(0,i.getTarget)(o);if((0,s.isTypeableElement)(c))return void e(u,o,c,r);let d=n.currentTarget;y.request(()=>{e(u,o,d,r)})},onClick(n){if("mousedown-only"===p)return;let r=b.current;if("mousedown"===p&&r){b.current=void 0;return}(0,l.isMouseLikePointerType)(r,!0)&&g||e(t(E.select("open"),n.currentTarget,e=>"click"===e||"mousedown"===e||"keydown"===e||"keyup"===e),n.nativeEvent,n.currentTarget,r)},onKeyDown(){b.current=void 0}}},[S,p,g,h,E,m,f,y,C,v]);return t.useMemo(()=>d?{reference:T}:o.EMPTY_OBJECT,[d,T])}])},17989,e=>{"use strict";var t=e.i(271645),n=e.i(574735),r=e.i(365420),o=e.i(108868),i=e.i(667865),s=e.i(439957),l=e.i(229315),a=e.i(328744),u=e.i(46420),c=e.i(675606),d=e.i(56434),p=e.i(451321),f=e.i(584446),g=e.i(596296),m=e.i(157940),v=e.i(958408);function h(){return!1}e.s(["useDismiss",0,function(e,E={}){let{enabled:S=!0,escapeKey:b=!0,outsidePress:y=!0,outsidePressEvent:C="sloppy",referencePress:T=h,bubbles:R,externalTree:x}=E,w="rootStore"in e?e.rootStore:e,P=w.useState("open"),O=w.useState("floatingElement"),{dataRef:k,events:D}=w.context,I=(0,u.useFloatingTree)(x),M=(0,i.useStableCallback)("function"==typeof y?y:()=>!1),A="function"==typeof y?M:y,L=!1!==A,N=(0,i.useStableCallback)(()=>C),{escapeKey:F,outsidePress:B}={escapeKey:"boolean"==typeof R?R:R?.escapeKey??!1,outsidePress:"boolean"==typeof R?R:R?.outsidePress??!0},W=t.useRef(!1),j=t.useRef(!1),H=t.useRef(!1),Y=t.useRef(!1),U=t.useRef(!1),_=t.useRef(""),V=t.useRef(null),q=(0,s.useTimeout)(),X=(0,s.useTimeout)(),K=(0,i.useStableCallback)(()=>{X.clear(),k.current.insideReactTree=!1}),$=(0,i.useStableCallback)(e=>{let t=k.current.floatingContext?.nodeId;return(I?(0,v.getNodeChildren)(I.nodesRef.current,t):[]).some(t=>t.context?.open&&!t.context.dataRef.current[e])}),G=(0,i.useStableCallback)(e=>(0,g.isEventTargetWithin)(e,w.select("floatingElement"))||(0,g.isEventTargetWithin)(e,w.select("domReferenceElement"))),z=(0,i.useStableCallback)(e=>{T()&&w.setOpen(!1,(0,c.createChangeEventDetails)(d.REASONS.triggerPress,e.nativeEvent))}),J=(0,i.useStableCallback)(e=>{if(!P||!S||!b||"Escape"!==e.key||U.current||!F&&$("__escapeKeyBubbles"))return;let t=(0,m.isReactEvent)(e)?e.nativeEvent:e,n=(0,c.createChangeEventDetails)(d.REASONS.escapeKey,t);w.setOpen(!1,n),n.isCanceled||e.preventDefault(),F||n.isPropagationAllowed||e.stopPropagation()}),Q=(0,i.useStableCallback)(()=>{k.current.insideReactTree=!0,X.start(0,K)}),Z=(0,i.useStableCallback)(e=>{if(!P||!S||0!==e.button)return;let t=(0,f.getTarget)(e.nativeEvent);(0,f.contains)(w.select("floatingElement"),t)&&(W.current||(W.current=!0,j.current=!1))}),ee=(0,i.useStableCallback)(e=>{!P||!S||(e.defaultPrevented||e.nativeEvent.defaultPrevented)&&W.current&&(j.current=!0)});t.useEffect(()=>{function e(e){e.open||(Y.current=!1)}return D.on("openchange",e),()=>{D.off("openchange",e)}},[D]),t.useEffect(()=>{if(!P||!S)return P||(Y.current=!1),K;k.current.__escapeKeyBubbles=F,k.current.__outsidePressBubbles=B;let e=new s.Timeout,t=new s.Timeout,i=(0,o.ownerDocument)(O);function u(){H.current=!0,t.start(0,()=>{H.current=!1})}function h(){W.current=!1,j.current=!1}function E(){let e=_.current,t=N(),n="function"==typeof t?t():t;return"string"==typeof n?n:n["pen"!==e&&e?e:"mouse"]}function y(e){let t=k.current.floatingContext?.nodeId,n=I&&(0,v.getNodeChildren)(I.nodesRef.current,t).some(t=>(0,g.isEventTargetWithin)(e,t.context?.elements.floating));return G(e)||n}function C(e){let n;if("intentional"===(n=E())&&"click"!==e.type||"sloppy"===n&&"click"===e.type){"click"===e.type||G(e)||(t.clear(),H.current=!1),K();return}if(k.current.insideReactTree)return void K();let r=(0,f.getTarget)(e),i=`[${(0,p.createAttribute)("inert")}]`,s=(0,l.isElement)(r)?r.getRootNode():null,a=Array.from(((0,l.isShadowRoot)(s)?s:(0,o.ownerDocument)(w.select("floatingElement"))).querySelectorAll(i)),u=w.context.triggerElements;if(r&&(u.hasElement(r)||u.hasMatchingElement(e=>(0,f.contains)(e,r))))return;let v=(0,l.isElement)(r)?r:null;for(;v&&!(0,l.isLastTraversableNode)(v);){let e=(0,l.getParentNode)(v);if((0,l.isLastTraversableNode)(e)||!(0,l.isElement)(e))break;v=e}if(!(a.length&&(0,l.isElement)(r)&&!(0,g.isRootElement)(r)&&!(0,f.contains)(r,w.select("floatingElement"))&&a.every(e=>!(0,f.contains)(v,e)))){if((0,l.isHTMLElement)(r)&&!("touches"in e)){let t=(0,l.isLastTraversableNode)(r),n=(0,l.getComputedStyle)(r),o=/auto|scroll/,i=t||o.test(n.overflowX),s=t||o.test(n.overflowY),a=i&&r.clientWidth>0&&r.scrollWidth>r.clientWidth,u=s&&r.clientHeight>0&&r.scrollHeight>r.clientHeight,c="rtl"===n.direction,d=u&&(c?e.offsetX<=r.offsetWidth-r.clientWidth:e.offsetX>r.clientWidth),p=a&&e.offsetY>r.clientHeight;if(d||p)return}if(!y(e)){if("intentional"===E()){if(0!==e.detail&&!(0,m.isVirtualClick)(e)&&!Y.current)return;if(H.current){t.clear(),H.current=!1;return}}"function"==typeof A&&!A(e)||$("__outsidePressBubbles")||(w.setOpen(!1,(0,c.createChangeEventDetails)(d.REASONS.outsidePress,e)),K())}}}function T(e){if("sloppy"!==E()||!w.select("open")||!S||G(e))return;let t=e.touches[0];t&&(V.current={startTime:Date.now(),startX:t.clientX,startY:t.clientY,dismissOnTouchEnd:!1,dismissOnMouseDown:!0},q.start(1e3,()=>{V.current&&(V.current.dismissOnTouchEnd=!1,V.current.dismissOnMouseDown=!1)}))}function R(e,t){let r=(0,f.getTarget)(e);if(!r)return;let o=(0,n.addEventListener)(r,e.type,()=>{t(e),o()})}function x(e){q.clear(),"pointerdown"===e.type&&(0===e.button&&(Y.current=!0),_.current=e.pointerType),("mousedown"!==e.type||!V.current||V.current.dismissOnMouseDown)&&R(e,e=>{if("pointerdown"===e.type)"sloppy"!==E()||"touch"===e.pointerType||!w.select("open")||!S||G(e)||C(e);else C(e)})}function D(e){if("pointercancel"===e.type&&(Y.current=!1),!W.current)return;let n=j.current;if(h(),"intentional"===E()){if("pointercancel"===e.type){n&&u();return}y(e)||(n?u():("function"!=typeof A||A(e))&&(t.clear(),H.current=!0,K()))}}function M(e){if("sloppy"!==E()||!V.current||G(e))return;let t=e.touches[0];if(!t)return;let n=Math.abs(t.clientX-V.current.startX),r=Math.abs(t.clientY-V.current.startY),o=Math.sqrt(n*n+r*r);o>5&&(V.current.dismissOnTouchEnd=!0),o>10&&(C(e),q.clear(),V.current=null)}function X(e){"sloppy"!==E()||!V.current||G(e)||(V.current.dismissOnTouchEnd&&C(e),q.clear(),V.current=null)}let z=(0,r.mergeCleanups)(b&&(0,r.mergeCleanups)((0,n.addEventListener)(i,"keydown",J),(0,n.addEventListener)(i,"compositionstart",function(){e.clear(),U.current=!0}),(0,n.addEventListener)(i,"compositionend",function(){e.start(5*!!a.platform.engine.webkit,()=>{U.current=!1})})),L&&(0,r.mergeCleanups)((0,n.addEventListener)(i,"click",x,!0),(0,n.addEventListener)(i,"pointerdown",x,!0),(0,n.addEventListener)(i,"pointerup",D,!0),(0,n.addEventListener)(i,"pointercancel",D,!0),(0,n.addEventListener)(i,"mousedown",x,!0),(0,n.addEventListener)(i,"mouseup",D,!0),(0,n.addEventListener)(i,"touchstart",function(e){_.current="touch",R(e,T)},{capture:!0,passive:!0}),(0,n.addEventListener)(i,"touchmove",function(e){R(e,M)},{capture:!0,passive:!0}),(0,n.addEventListener)(i,"touchend",function(e){R(e,X)},{capture:!0,passive:!0})));return()=>{z(),e.clear(),t.clear(),h(),H.current=!1,K()}},[k,O,b,L,A,P,S,F,B,J,K,N,$,G,I,w,q]);let et=t.useMemo(()=>({onKeyDown:J,onPointerDown:z,onClick:z}),[J,z]),en=t.useMemo(()=>({onKeyDown:J,onPointerDown:ee,onMouseDown:ee,onClickCapture:Q,onMouseDownCapture(e){Q(),Z(e)},onPointerDownCapture(e){Q(),Z(e)},onMouseUpCapture:Q,onTouchEndCapture:Q,onTouchMoveCapture:Q}),[J,Q,Z,ee]);return t.useMemo(()=>S?{reference:et,floating:en,trigger:et}:{},[S,et,en])}])},350527,e=>{"use strict";var t=e.i(271645),n=e.i(146376),r=e.i(229315),o=e.i(156341);e.s(["useSyncedFloatingRootContext",0,function(e){let{popupStore:i,treatPopupAsFloatingElement:s=!1,floatingRootContext:l,floatingId:a,nested:u,onOpenChange:c}=e,d=i.useState("open"),p=i.useState("activeTriggerElement"),f=i.useState(s?"popupElement":"positionerElement"),g=i.context.triggerElements,m=t.useRef(null);void 0===l&&null===m.current&&(m.current=new o.FloatingRootStore({open:d,transitionStatus:void 0,referenceElement:p,floatingElement:f,triggerElements:g,onOpenChange:c,floatingId:a,syncOnly:!0,nested:u}));let v=l??m.current;return i.useSyncedValue("floatingId",a),(0,n.useIsoLayoutEffect)(()=>{let e={open:d,floatingId:a,referenceElement:p,floatingElement:f};(0,r.isElement)(p)&&(e.domReferenceElement=p),v.state.positionReference===v.state.referenceElement&&(e.positionReference=p),v.update(e)},[d,a,p,f,v]),v.context.onOpenChange=c,v.context.nested=u,v}])},503596,e=>{"use strict";var t=e.i(956789);let n=0;e.s(["enqueueFocus",0,function(e,r={}){let{preventScroll:o=!1,sync:i=!1,shouldFocus:s}=r;function l(){(!s||s())&&e?.focus({preventScroll:o})}if(cancelAnimationFrame(n),i)return l(),t.NOOP;let a=requestAnimationFrame(l);return n=a,()=>{n===a&&(cancelAnimationFrame(a),n=0)}}])},958408,e=>{"use strict";e.s(["getNodeAncestors",0,function(e,t){let n=[],r=e.find(e=>e.id===t)?.parentId;for(;r;){let t=e.find(e=>e.id===r);r=t?.parentId,t&&(n=n.concat(t))}return n},"getNodeChildren",0,function e(t,n,r=!0){return t.filter(e=>e.parentId===n).flatMap(n=>[...!r||n.context?.open?[n]:[],...e(t,n.id,r)])}])},673327,e=>{"use strict";var t=e.i(229315);let n="ArrowUp",r="ArrowDown",o="ArrowLeft",i="ArrowRight",s="Home",l=new Set([n,r,o,i,s,"End"]);function a(e,t,n){let r="left"===n?"offsetLeft":"offsetTop",o=0;for(;t.offsetParent&&(o+=t[r],t.offsetParent!==e);)t=t.offsetParent;return o}function u(e){let t=getComputedStyle(e);return{scrollMarginTop:parseFloat(t.scrollMarginTop)||0,scrollMarginRight:parseFloat(t.scrollMarginRight)||0,scrollMarginBottom:parseFloat(t.scrollMarginBottom)||0,scrollMarginLeft:parseFloat(t.scrollMarginLeft)||0,scrollPaddingTop:parseFloat(t.scrollPaddingTop)||0,scrollPaddingRight:parseFloat(t.scrollPaddingRight)||0,scrollPaddingBottom:parseFloat(t.scrollPaddingBottom)||0,scrollPaddingLeft:parseFloat(t.scrollPaddingLeft)||0}}e.s(["ARROW_DOWN",0,r,"ARROW_LEFT",0,o,"ARROW_RIGHT",0,i,"ARROW_UP",0,n,"COMPOSITE_KEYS",0,l,"END",0,"End","HOME",0,s,"MODIFIER_KEYS",0,["Shift","Control","Alt","Meta"],"isNativeInput",0,function(e){return!!((0,t.isHTMLElement)(e)&&"INPUT"===e.tagName&&null!=e.selectionStart||(0,t.isHTMLElement)(e)&&"TEXTAREA"===e.tagName)},"scrollIntoViewIfNeeded",0,function(e,t,n,r){if(!e||!t||!t.scrollTo)return;let o=e.scrollLeft,i=e.scrollTop,s=e.clientWidth<e.scrollWidth,l=e.clientHeight<e.scrollHeight;if(s&&"vertical"!==r){let r=a(e,t,"left"),i=u(e),s=u(t);"ltr"===n&&(r+t.offsetWidth+s.scrollMarginRight>e.scrollLeft+e.clientWidth-i.scrollPaddingRight?o=r+t.offsetWidth+s.scrollMarginRight-e.clientWidth+i.scrollPaddingRight:r-s.scrollMarginLeft<e.scrollLeft+i.scrollPaddingLeft&&(o=r-s.scrollMarginLeft-i.scrollPaddingLeft)),"rtl"===n&&(r-s.scrollMarginLeft<e.scrollLeft+i.scrollPaddingLeft?o=r-s.scrollMarginLeft-i.scrollPaddingLeft:r+t.offsetWidth+s.scrollMarginRight>e.scrollLeft+e.clientWidth-i.scrollPaddingRight&&(o=r+t.offsetWidth+s.scrollMarginRight-e.clientWidth+i.scrollPaddingRight))}if(l&&"horizontal"!==r){let n=a(e,t,"top"),r=u(e),o=u(t);n-o.scrollMarginTop<e.scrollTop+r.scrollPaddingTop?i=n-o.scrollMarginTop-r.scrollPaddingTop:n+t.offsetHeight+o.scrollMarginBottom>e.scrollTop+e.clientHeight-r.scrollPaddingBottom&&(i=n+t.offsetHeight+o.scrollMarginBottom-e.clientHeight+r.scrollPaddingBottom)}e.scrollTo({left:o,top:i,behavior:"auto"})}])},788015,e=>{"use strict";var t=e.i(883977);e.s(["useBaseUiId",0,function(e){return(0,t.useId)(e,"base-ui")}])},223910,e=>{"use strict";var t=e.i(271645),n=e.i(146376),r=e.i(708445);e.s(["useTransitionStatus",0,function(e,o=!1,i=!1,s=!1){let[l,a]=t.useState(e&&o?"idle":void 0),[u,c]=t.useState(e&&!s);return e&&!u&&(c(!0),a("starting")),e||!u||"ending"===l||i||a("ending"),e||u||"ending"!==l||a(void 0),(0,n.useIsoLayoutEffect)(()=>{if(!e&&u&&"ending"!==l&&i){let e=r.AnimationFrame.request(()=>{a("ending")});return()=>{r.AnimationFrame.cancel(e)}}},[e,u,l,i]),(0,n.useIsoLayoutEffect)(()=>{if(!e||o)return;let t=r.AnimationFrame.request(()=>{a(void 0)});return()=>{r.AnimationFrame.cancel(t)}},[o,e]),(0,n.useIsoLayoutEffect)(()=>{if(!e||!o)return;e&&u&&"idle"!==l&&a("starting");let t=r.AnimationFrame.request(()=>{a("idle")});return()=>{r.AnimationFrame.cancel(t)}},[o,e,u,l]),{mounted:u,setMounted:c,transitionStatus:l}}])},606039,e=>{"use strict";var t=e.i(271645),n=e.i(146376),r=e.i(667865);e.s(["useValueChanged",0,function(e,o){let i=t.useRef(e),s=(0,r.useStableCallback)(o);(0,n.useIsoLayoutEffect)(()=>{i.current!==e&&s(i.current),i.current=e},[e,s])}])},426,e=>{"use strict";e.i(247167);var t=e.i(271645),n=e.i(843476);let r=t.forwardRef(function(e,t){let r,{cutout:o,...i}=e;if(o){let e=o.getBoundingClientRect();r=`polygon(0% 0%,100% 0%,100% 100%,0% 100%,0% 0%,${e.left}px ${e.top}px,${e.left}px ${e.bottom}px,${e.right}px ${e.bottom}px,${e.right}px ${e.top}px,${e.left}px ${e.top}px)`}return(0,n.jsx)("div",{ref:t,role:"presentation","data-base-ui-inert":"",...i,style:{position:"fixed",inset:0,userSelect:"none",WebkitUserSelect:"none",clipPath:r}})});e.s(["InternalBackdrop",0,r])},18478,116786,e=>{"use strict";var t=e.i(301252);class n extends t.ReactStore{setState(e){}update(e){}set(e,t){}notifyAll(){}}e.s(["NullStore",0,n],18478);var r=e.i(956789),o=e.i(156341);let i=e=>e.triggerIdProp??e.activeTriggerId,s=e=>e.openProp??e.open,l=e=>(e.popupElement?.id??e.floatingId)||void 0;function a(e,t){return void 0!==t&&s(e)&&i(e)===t}e.s(["createInitialPopupStoreState",0,function(e,t,n=!1){return{open:!1,openProp:void 0,mounted:!1,transitionStatus:void 0,floatingRootContext:new o.FloatingRootStore({open:!1,transitionStatus:void 0,floatingElement:null,referenceElement:null,triggerElements:e,floatingId:t,syncOnly:!0,nested:n,onOpenChange:void 0}),floatingId:t,triggerCount:0,preventUnmountingOnClose:!1,payload:void 0,activeTriggerId:null,activeTriggerElement:null,triggerIdProp:void 0,popupElement:null,positionerElement:null,activeTriggerProps:r.EMPTY_OBJECT,inactiveTriggerProps:r.EMPTY_OBJECT,popupProps:r.EMPTY_OBJECT}},"popupStoreSelectors",0,{open:s,mounted:e=>e.mounted,transitionStatus:e=>e.transitionStatus,floatingRootContext:e=>e.floatingRootContext,triggerCount:e=>e.triggerCount,preventUnmountingOnClose:e=>e.preventUnmountingOnClose,payload:e=>e.payload,activeTriggerId:i,activeTriggerElement:e=>e.mounted?e.activeTriggerElement:null,popupId:l,isTriggerActive:(e,t)=>void 0!==t&&i(e)===t,isOpenedByTrigger:(e,t)=>a(e,t),isMountedByTrigger:(e,t)=>void 0!==t&&i(e)===t&&e.mounted,triggerProps:(e,t)=>t?e.activeTriggerProps:e.inactiveTriggerProps,triggerPopupId:(e,t)=>a(e,t)||void 0!==t&&s(e)&&null==i(e)&&1===e.triggerCount?l(e):void 0,popupProps:e=>e.popupProps,popupElement:e=>e.popupElement,positionerElement:e=>e.positionerElement}],116786)},564170,e=>{"use strict";e.i(247167);var t=e.i(733332),n=e.i(675606),r=e.i(56434);class o{attachedStores=[];attachedStoreValue=null;storeListeners=new Set;constructor(e,t,n=!0){this.fallbackStore=e,this.componentName=t,this.throwOnMissingTrigger=n}get attachedStore(){return this.attachedStoreValue}get store(){return this.attachedStoreValue??this.fallbackStore}get serverStore(){return this.fallbackStore}subscribeStore(e){return this.storeListeners.add(e),()=>{this.storeListeners.delete(e)}}attachStore(e){return this.attachedStores.push(e),this.setActiveStore(e),()=>{let t=this.attachedStores.lastIndexOf(e);-1!==t&&this.attachedStores.splice(t,1),this.setActiveStore(this.attachedStores[this.attachedStores.length-1]??null)}}setActiveStore(e){this.attachedStoreValue!==e&&(this.attachedStoreValue=e,this.storeListeners.forEach(e=>{e()}))}openByTrigger(e){let o,i=this.attachedStore;if(null!==i){if(e){for(let t=this.attachedStores.length-1;t>=0&&!o;t-=1)o=this.attachedStores[t].context.triggerElements.getById(e);o??=this.fallbackStore.context.triggerElements.getById(e)}if(e&&!o&&this.throwOnMissingTrigger)throw Error((0,t.default)(99,this.componentName,e,this.componentName));i.setOpen(!0,(0,n.createChangeEventDetails)(r.REASONS.imperativeAction,void 0,o))}}closePopup(){let e=this.attachedStore;null===e||e.setOpen(!1,(0,n.createChangeEventDetails)(r.REASONS.imperativeAction))}}e.s(["BasePopupHandle",0,o])},264111,e=>{"use strict";var t=e.i(271645),n=e.i(174080),r=e.i(956789),o=e.i(883977),i=e.i(667865),s=e.i(146376),l=e.i(388940),a=e.i(449055),u=e.i(46420),c=e.i(350527),d=e.i(223910),p=e.i(137584),f=e.i(675606),g=e.i(56434);let m={tabIndex:-1,[a.FOCUSABLE_ATTRIBUTE]:""};function v(e){let t=e.context.triggerElements.size;e.select("open")&&e.state.triggerCount!==t&&e.set("triggerCount",t)}function h(e,n){let r=t.useRef(null);return(0,i.useStableCallback)(t=>{let o=r.current;if(null!==o){if(o.element===t&&o.store===n&&o.id===e)return;r.current=null;let i=o.store;i.context.triggerElements.getById(o.id)===o.element&&(i.context.triggerElements.delete(o.id),v(i))}null!==t&&void 0!==e&&(r.current={store:n,id:e,element:t},n.context.triggerElements.add(e,t),v(n))})}function E(e,t,n,r=!1){let o=e.preventUnmountingOnClose;t?o=!1:r&&(o=!0);let i=n?.id??null,s=e.activeTriggerId,l=e.activeTriggerElement;return(i||t)&&(s=i,l=n??null),{open:t,preventUnmountingOnClose:o,activeTriggerId:s,activeTriggerElement:l}}function S(e){let t=!1;return e.preventUnmountOnClose=()=>{t=!0},()=>t}e.s(["FOCUSABLE_POPUP_PROPS",0,m,"PopupHandleAttachment",0,function({handle:e,store:t}){return(0,s.useIsoLayoutEffect)(()=>e.attachStore(t),[e,t]),null},"applyPopupOpenChange",0,function(e,t,r,o={}){let i=r.reason,s=i===g.REASONS.triggerHover,l=t&&i===g.REASONS.triggerFocus,a=!t&&(i===g.REASONS.triggerPress||i===g.REASONS.escapeKey),u=S(r);if(e.context.onOpenChange?.(t,r),r.isCanceled)return;o.onBeforeDispatch?.(),e.state.floatingRootContext.dispatchOpenChange(t,r);let c=()=>{let n=E(e.state,t,r.trigger,u()),i={...o.extraState,...n};l?i.instantType="focus":a?i.instantType="dismiss":s&&(i.instantType=void 0),e.update(i)};s?n.flushSync(c):c()},"attachPreventUnmountOnClose",0,S,"createDefaultInitialFocus",0,function(e){return t=>"touch"!==t||e.current},"createPopupOpenState",0,E,"useImplicitActiveTrigger",0,function(e,n={}){let{closeOnActiveTriggerUnmount:r=!1}=n,o=t.useRef(null),i=e.useState("open"),l=e.useState("triggerCount"),a=e.useState("activeTriggerId"),u=e.useState("activeTriggerElement");(0,s.useIsoLayoutEffect)(()=>{if(!i){o.current=null,0!==e.state.triggerCount&&e.set("triggerCount",0);return}let t=e.context.triggerElements.size,n={};e.state.triggerCount!==t&&(n.triggerCount=t);let s=e.select("activeTriggerId"),l=null;if(s){let t=e.context.triggerElements.getById(s);if(t)o.current=s,t!==e.state.activeTriggerElement&&(n.activeTriggerElement=t);else{for(let[t,r]of e.context.triggerElements.entries())if(r===e.state.activeTriggerElement){n.activeTriggerId=t,n.activeTriggerElement=r,o.current=t;break}void 0===n.activeTriggerId&&(o.current===s?l=s:o.current=null)}}else o.current=null;if(!l&&!s&&1===t){let t=e.context.triggerElements.entries().next();if(!t.done){let[e,r]=t.value;n.activeTriggerId=e,n.activeTriggerElement=r,o.current=e}}(void 0!==n.triggerCount||void 0!==n.activeTriggerId||void 0!==n.activeTriggerElement)&&e.update(n),l&&r&&queueMicrotask(()=>{if(e.select("open")&&e.select("activeTriggerId")===l&&!e.context.triggerElements.getById(l)){let t=(0,f.createChangeEventDetails)(g.REASONS.none);e.setOpen(!1,t),t.isCanceled||e.update({activeTriggerId:null,activeTriggerElement:null})}})},[i,e,l,a,u,r])},"useOpenStateTransitions",0,function(e,t,n,r){let{mounted:o,setMounted:s,transitionStatus:l}=(0,d.useTransitionStatus)(e,!1,!1,r),a=t.useState("preventUnmountingOnClose"),u=!e&&a;t.useSyncedValues({mounted:o,transitionStatus:l,preventUnmountingOnClose:u});let c=(0,i.useStableCallback)(()=>{s(!1),t.update({activeTriggerId:null,activeTriggerElement:null,mounted:!1,preventUnmountingOnClose:!1}),n?.(),t.context.onOpenChangeComplete?.(!1)});return(0,p.useOpenChangeComplete)({enabled:o&&!e&&!u,open:e,ref:t.context.popupRef,onComplete(){e||c()}}),{forceUnmount:c,transitionStatus:l}},"usePopupInteractionProps",0,function(e,t){e.useSyncedValues(t),(0,s.useIsoLayoutEffect)(()=>()=>{e.update({activeTriggerProps:r.EMPTY_OBJECT,inactiveTriggerProps:r.EMPTY_OBJECT,popupProps:r.EMPTY_OBJECT})},[e])},"usePopupRootStore",0,function(e,t=!1){let n=(0,o.useId)(),r=null!=(0,u.useFloatingParentNodeId)(),i=(0,l.useRefWithInit)(()=>e(n,r)).current;return(0,c.useSyncedFloatingRootContext)({popupStore:i,treatPopupAsFloatingElement:t,floatingRootContext:i.state.floatingRootContext,floatingId:n,nested:r,onOpenChange:i.setOpen}),i},"usePopupRootSync",0,function(e,t){(0,s.useIsoLayoutEffect)(()=>{t||null===e.state.openMethod||e.set("openMethod",null)},[t,e]),(0,s.useIsoLayoutEffect)(()=>()=>{null!==e.state.openMethod&&e.set("openMethod",null)},[e])},"useTriggerDataForwarding",0,function(e,t,n,r){let o=n.useState("isMountedByTrigger",e),l=h(e,n),a=(0,i.useStableCallback)(t=>{let o=n.select("open"),i=n.select("activeTriggerId");if(i===e){let e={activeTriggerElement:t,...o?r:null};n.update(e);return}if(null==i&&o){let o={activeTriggerId:e??null,activeTriggerElement:t,...r};n.update(o)}}),u=(0,i.useStableCallback)(e=>{l(e),e&&a(e)});return(0,s.useIsoLayoutEffect)(()=>(u(t.current),()=>u(null)),[u,t,n,e]),(0,s.useIsoLayoutEffect)(()=>{if(o){let e={activeTriggerElement:t.current,...r};n.update(e)}},[o,n,t,...Object.values(r)]),{registerTrigger:u,isMountedByThisTrigger:o}},"useTriggerRegistration",0,h])},459636,e=>{"use strict";var t=e.i(271645),n=e.i(802239),r=e.i(956789);e.s(["usePopupHandleStore",0,function(e){let o=t.useCallback(t=>void 0===e?r.NOOP:e.subscribeStore(t),[e]),i=t.useCallback(()=>void 0===e?void 0:e.store,[e]);return(0,n.useSyncExternalStore)(o,i,()=>e?.serverStore)}])},32199,e=>{"use strict";var t=e.i(271645),n=e.i(667865),r=e.i(427803),o=e.i(328744),i=e.i(606039);function s(e,i){let s=(0,n.useStableCallback)((t,n)=>{("function"==typeof e?e():e)||i(n||(o.platform.os.ios?"touch":""))}),{onClick:l,onPointerDown:a}=(0,r.useEnhancedClickHandler)(s);return t.useMemo(()=>({onClick:l,onPointerDown:a}),[l,a])}e.s(["useOpenInteractionType",0,function(e){let[n,r]=t.useState(null),o=s(e,r);return(0,i.useValueChanged)(e,t=>{t&&!e&&r(null)}),t.useMemo(()=>({openMethod:n,triggerProps:o}),[n,o])},"useOpenMethodTriggerProps",0,s])},427803,e=>{"use strict";var t=e.i(271645);e.s(["useEnhancedClickHandler",0,function(e){let n=t.useRef(""),r=t.useCallback(t=>{t.defaultPrevented||(n.current=t.pointerType,e(t,t.pointerType))},[e]);return{onClick:t.useCallback(t=>{0===t.detail?e(t,"keyboard"):("pointerType"in t?e(t,t.pointerType):e(t,n.current),n.current="")},[e]),onPointerDown:r}}])},145484,e=>{"use strict";var t=e.i(229315),n=e.i(574735),r=e.i(328744),o=e.i(108868),i=e.i(333848),s=e.i(146376),l=e.i(439957),a=e.i(708445);let u={},c={},d="";function p(e,n){return(0,t.isOverflowElement)(e)?e:n}function f(e,t,n){return/hidden|clip/.test(e.getComputedStyle(p(t,n)).overflowY)}class g{lockCount=0;restore=null;timeoutLock=l.Timeout.create();timeoutUnlock=l.Timeout.create();acquire(e){return this.lockCount+=1,1===this.lockCount&&null===this.restore&&this.timeoutLock.start(0,()=>this.lock(e)),this.release}release=()=>{this.lockCount-=1,0===this.lockCount&&this.restore&&this.timeoutUnlock.start(0,this.unlock)};unlock=()=>{0===this.lockCount&&this.restore&&(this.restore?.(),this.restore=null)};lock(e){let t,s,l;if(0===this.lockCount||null!==this.restore)return;let g=(0,o.ownerDocument)(e),m=g.documentElement,v=g.body,h=(0,i.ownerWindow)(m);if(f(h,m,v)){let t=new h.MutationObserver(()=>{f(h,m,v)||(t.disconnect(),this.restore=null,this.lock(e))}),n={attributes:!0};t.observe(m,n),t.observe(v,n),this.restore=()=>t.disconnect();return}let E=r.platform.os.ios||!function(e){if("u"<typeof document)return!1;let t=(0,o.ownerDocument)(e);return(0,i.ownerWindow)(t).innerWidth-t.documentElement.clientWidth>0}(e);this.restore=E?(l={overflowY:(s=p((t=(0,o.ownerDocument)(e)).documentElement,t.body)).style.overflowY,overflowX:s.style.overflowX},Object.assign(s.style,{overflowY:"hidden",overflowX:"hidden"}),()=>{Object.assign(s.style,l)}):function(e){let t=(0,o.ownerDocument)(e),s=t.documentElement,l=t.body,f=(0,i.ownerWindow)(s),g=0,m=0,v=!1,h=a.AnimationFrame.create();if(r.platform.engine.webkit&&(f.visualViewport?.scale??1)!==1)return()=>{};function E(){let t=f.getComputedStyle(s),n=f.getComputedStyle(l),r=(t.scrollbarGutter||"").includes("both-edges")?"stable both-edges":"stable";g=s.scrollTop,m=s.scrollLeft,u={scrollbarGutter:s.style.scrollbarGutter,overflowY:s.style.overflowY,overflowX:s.style.overflowX},d=s.style.scrollBehavior,c={position:l.style.position,height:l.style.height,width:l.style.width,boxSizing:l.style.boxSizing,overflowY:l.style.overflowY,overflowX:l.style.overflowX,scrollBehavior:l.style.scrollBehavior};let i=s.scrollHeight>s.clientHeight,a=s.scrollWidth>s.clientWidth,h="scroll"===t.overflowY||"scroll"===n.overflowY,E="scroll"===t.overflowX||"scroll"===n.overflowX,S=Math.max(0,f.innerWidth-l.clientWidth),b=Math.max(0,f.innerHeight-l.clientHeight),y=parseFloat(n.marginTop)+parseFloat(n.marginBottom),C=parseFloat(n.marginLeft)+parseFloat(n.marginRight),T=p(s,l);if(v=function(e){if(!("u">typeof CSS&&CSS.supports&&CSS.supports("scrollbar-gutter","stable"))||"u"<typeof document)return!1;let t=(0,o.ownerDocument)(e),n=t.documentElement,r=p(n,t.body),i=r.style.overflowY,s=n.style.scrollbarGutter;n.style.scrollbarGutter="stable",r.style.overflowY="scroll";let l=r.offsetWidth;r.style.overflowY="hidden";let a=r.offsetWidth;return r.style.overflowY=i,n.style.scrollbarGutter=s,l===a}(e)){s.style.scrollbarGutter=r,T.style.overflowY="hidden",T.style.overflowX="hidden";return}Object.assign(s.style,{scrollbarGutter:r,overflowY:"hidden",overflowX:"hidden"}),(i||h)&&(s.style.overflowY="scroll"),(a||E)&&(s.style.overflowX="scroll"),Object.assign(l.style,{position:"relative",height:y||b?`calc(100dvh - ${y+b}px)`:"100dvh",width:C||S?`calc(100vw - ${C+S}px)`:"100vw",boxSizing:"border-box",overflowY:"hidden",overflowX:"hidden",scrollBehavior:"unset"}),l.scrollTop=g,l.scrollLeft=m,s.setAttribute("data-base-ui-scroll-locked",""),s.style.scrollBehavior="unset"}function S(){Object.assign(s.style,u),Object.assign(l.style,c),v||(s.scrollTop=g,s.scrollLeft=m,s.removeAttribute("data-base-ui-scroll-locked"),s.style.scrollBehavior=d)}E();let b=(0,n.addEventListener)(f,"resize",function(){S(),h.request(E)});return()=>{h.cancel(),S(),"function"==typeof f.removeEventListener&&b()}}(e)}}let m=new g;e.s(["useScrollLock",0,function(e=!0,t=null){(0,s.useIsoLayoutEffect)(()=>{if(e)return m.acquire(t)},[e,t])}])},95187,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var r={callServer:function(){return i.callServer},createServerReference:function(){return l.createServerReference},findSourceMapURL:function(){return s.findSourceMapURL}};for(var o in r)Object.defineProperty(n,o,{enumerable:!0,get:r[o]});let i=e.r(132120),s=e.r(92245),l=e.r(235326)}]);
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,905755,e=>{"use strict";var t=e.i(460548),o=e.i(70350);let r=(0,t.realtimeSession)({transport:({credential:e,audio:t,on:r})=>(0,o.createWebRtcTransport)({url:"https://api.openai.com/v1/realtime/calls",secret:e.value,label:"OpenAI",audio:t,on:r}),sessionUpdate:e=>({type:"session.update",session:{type:"realtime",model:e.model,instructions:e.instructions,audio:{input:{transcription:{model:"gpt-live-transcribe"}},output:{voice:e.voice}},tools:(0,t.toFunctionTools)(e.tools)}})});e.s(["createOpenAiSession",0,r])},379072,e=>{"use strict";let t={echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0};async function o(e){let o=await navigator.mediaDevices.getUserMedia({audio:t}),n=new AudioContext({sampleRate:24e3});try{var a,l,c;await n.audioWorklet.addModule(i??=URL.createObjectURL(new Blob([s],{type:"application/javascript"})));let t=n.createMediaStreamSource(o),p=new AudioWorkletNode(n,r);p.port.onmessage=t=>{let o=t.data,r=new Int16Array(o.length);for(let e=0;e<o.length;e++){let t=Math.max(-1,Math.min(1,o[e]));r[e]=t<0?32768*t:32767*t}e(r)},t.connect(p);let u=n.createGain();return u.gain.value=0,p.connect(u).connect(n.destination),await n.resume(),a=o,l=n,c=p,{stream:a,setMuted(e){for(let t of a.getAudioTracks())t.enabled=!e},close(){for(let e of(c.port.onmessage=null,a.getTracks()))e.stop();l.close()}}}catch(e){for(let e of o.getTracks())e.stop();throw n.close(),e}}let r="voice-capture",s=`
|
|
2
|
-
class VoiceCapture extends AudioWorkletProcessor {
|
|
3
|
-
constructor() {
|
|
4
|
-
super();
|
|
5
|
-
this.frame = new Float32Array(1024);
|
|
6
|
-
this.filled = 0;
|
|
7
|
-
}
|
|
8
|
-
process(inputs) {
|
|
9
|
-
const input = inputs[0] && inputs[0][0];
|
|
10
|
-
if (!input) return true;
|
|
11
|
-
for (let i = 0; i < input.length; i++) {
|
|
12
|
-
this.frame[this.filled++] = input[i];
|
|
13
|
-
if (this.filled === this.frame.length) {
|
|
14
|
-
this.port.postMessage(this.frame.slice());
|
|
15
|
-
this.filled = 0;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
return true;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
registerProcessor("${r}", VoiceCapture);
|
|
22
|
-
`,i=null;e.s(["MICROPHONE_CONSTRAINTS",0,t,"PCM_SAMPLE_RATE",0,24e3,"createPcmPlayer",0,function(e,t){let{context:o,analyser:r}=e.speaker(),s=0,i=new Set;return{push(e){if(0===e.length)return;let n=o.createBuffer(1,e.length,24e3),a=n.getChannelData(0);for(let t=0;t<e.length;t++)a[t]=e[t]/32768;let l=o.createBufferSource();l.buffer=n,l.connect(r),l.onended=()=>{i.delete(l),0===i.size&&t()},s=Math.max(s,o.currentTime+.06),l.start(s),s+=n.duration,i.add(l)},stop(){for(let e of i){e.onended=null;try{e.stop()}catch{}}i.clear(),s=0},get speaking(){return i.size>0}}},"decodePcm",0,function(e){let t=atob(e),o=new Uint8Array(t.length);for(let e=0;e<t.length;e++)o[e]=t.charCodeAt(e);return new Int16Array(o.buffer,0,o.length>>1)},"encodePcm",0,function(e){let t=new Uint8Array(e.buffer,e.byteOffset,e.byteLength),o="";for(let e=0;e<t.length;e+=32768)o+=String.fromCharCode(...t.subarray(e,e+32768));return btoa(o)},"openMicrophone",0,o])},460548,e=>{"use strict";let t={silent:{level:-1},fatal:{level:0},error:{level:0},warn:{level:1},log:{level:2},info:{level:3},success:{level:3},fail:{level:3},ready:{level:3},start:{level:3},box:{level:3},debug:{level:4},trace:{level:5},verbose:{level:1/0}};function o(e){if(null===e||"object"!=typeof e)return!1;let t=Object.getPrototypeOf(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.iterator in e)&&(!(Symbol.toStringTag in e)||"[object Module]"===Object.prototype.toString.call(e))}let r=!1,s=[];class i{options;_lastLog;_mockFn;constructor(e={}){const r=e.types||t;for(const s in this.options=((...e)=>e.reduce((e,t)=>(function e(t,r,s=".",i){if(!o(r))return e(t,{},s,i);let n=Object.assign({},r);for(let r in t){if("__proto__"===r||"constructor"===r)continue;let a=t[r];null!=a&&(i&&i(n,r,a,s)||(Array.isArray(a)&&Array.isArray(n[r])?n[r]=[...a,...n[r]]:o(a)&&o(n[r])?n[r]=e(a,n[r],(s?`${s}.`:"")+r.toString(),i):n[r]=a))}return n})(e,t,"",void 0),{}))({...e,defaults:{...e.defaults},level:n(e.level,r),reporters:[...e.reporters||[]]},{types:t,throttle:1e3,throttleMin:5,formatOptions:{date:!0,colors:!1,compact:!0}}),r){const e={type:s,...this.options.defaults,...r[s]};this[s]=this._wrapLogFn(e),this[s].raw=this._wrapLogFn(e,!0)}this.options.mockFn&&this.mockTypes(),this._lastLog={}}get level(){return this.options.level}set level(e){this.options.level=n(e,this.options.types,this.options.level)}prompt(e,t){if(!this.options.prompt)throw Error("prompt is not supported!");return this.options.prompt(e,t)}create(e){let t=new i({...this.options,...e});return this._mockFn&&t.mockTypes(this._mockFn),t}withDefaults(e){return this.create({...this.options,defaults:{...this.options.defaults,...e}})}withTag(e){return this.withDefaults({tag:this.options.defaults.tag?this.options.defaults.tag+":"+e:e})}addReporter(e){return this.options.reporters.push(e),this}removeReporter(e){if(e){let t=this.options.reporters.indexOf(e);if(-1!==t)return this.options.reporters.splice(t,1)}else this.options.reporters.splice(0);return this}setReporters(e){return this.options.reporters=Array.isArray(e)?e:[e],this}wrapAll(){this.wrapConsole(),this.wrapStd()}restoreAll(){this.restoreConsole(),this.restoreStd()}wrapConsole(){for(let e in this.options.types)console["__"+e]||(console["__"+e]=console[e]),console[e]=this[e].raw}restoreConsole(){for(let e in this.options.types)console["__"+e]&&(console[e]=console["__"+e],delete console["__"+e])}wrapStd(){this._wrapStream(this.options.stdout,"log"),this._wrapStream(this.options.stderr,"log")}_wrapStream(e,t){e&&(e.__write||(e.__write=e.write),e.write=e=>{this[t].raw(String(e).trim())})}restoreStd(){this._restoreStream(this.options.stdout),this._restoreStream(this.options.stderr)}_restoreStream(e){e&&e.__write&&(e.write=e.__write,delete e.__write)}pauseLogs(){r=!0}resumeLogs(){for(let e of(r=!1,s.splice(0)))e[0]._logFn(e[1],e[2])}mockTypes(e){let t=e||this.options.mockFn;if(this._mockFn=t,"function"==typeof t)for(let e in this.options.types)this[e]=t(e,this.options.types[e])||this[e],this[e].raw=this[e]}_wrapLogFn(e,t){return(...o)=>r?void s.push([this,e,o,t]):this._logFn(e,o,t)}_logFn(e,t,o){var r,s;if((e.level||0)>this.level)return!1;let i={date:new Date,args:[],...e,level:n(e.level,this.options.types)};o||1!==t.length||+(s=r=t[0],"[object Object]"!==Object.prototype.toString.call(s)||!r.message&&!r.args||!!r.stack)?i.args=[...t]:Object.assign(i,t[0]),i.message&&(i.args.unshift(i.message),delete i.message),i.additional&&(Array.isArray(i.additional)||(i.additional=i.additional.split("\n")),i.args.push("\n"+i.additional.join("\n")),delete i.additional),i.type="string"==typeof i.type?i.type.toLowerCase():"log",i.tag="string"==typeof i.tag?i.tag:"";let a=(e=!1)=>{let t=(this._lastLog.count||0)-this.options.throttleMin;if(this._lastLog.object&&t>0){let e=[...this._lastLog.object.args];t>1&&e.push(`(repeated ${t} times)`),this._log({...this._lastLog.object,args:e}),this._lastLog.count=1}e&&(this._lastLog.object=i,this._log(i))};clearTimeout(this._lastLog.timeout);let l=this._lastLog.time&&i.date?i.date.getTime()-this._lastLog.time.getTime():0;if(this._lastLog.time=i.date,l<this.options.throttle)try{let e=JSON.stringify([i.type,i.tag,i.args]),t=this._lastLog.serialized===e;if(this._lastLog.serialized=e,t&&(this._lastLog.count=(this._lastLog.count||0)+1,this._lastLog.count>this.options.throttleMin)){this._lastLog.timeout=setTimeout(a,this.options.throttle);return}}catch{}a(!0)}_log(e){for(let t of this.options.reporters)t.log(e,{options:this.options})}}function n(e,t={},o=3){return void 0===e?o:"number"==typeof e?e:t[e]&&void 0!==t[e].level?t[e].level:o}i.prototype.add=i.prototype.addReporter,i.prototype.remove=i.prototype.removeReporter,i.prototype.clear=i.prototype.removeReporter,i.prototype.withScope=i.prototype.withTag,i.prototype.mock=i.prototype.mockTypes,i.prototype.pause=i.prototype.pauseLogs,i.prototype.resume=i.prototype.resumeLogs;class a{options;defaultColor;levelColorMap;typeColorMap;constructor(e){this.options={...e},this.defaultColor="#7f8c8d",this.levelColorMap={0:"#c0392b",1:"#f39c12",3:"#00BCD4"},this.typeColorMap={success:"#2ecc71"}}_getLogFn(e){return e<1?console.__error||console.error:1===e?console.__warn||console.warn:console.__log||console.log}log(e){let t=this._getLogFn(e.level),o="log"===e.type?"":e.type,r=e.tag||"",s=this.typeColorMap[e.type]||this.levelColorMap[e.level]||this.defaultColor,i=`
|
|
23
|
-
background: ${s};
|
|
24
|
-
border-radius: 0.5em;
|
|
25
|
-
color: white;
|
|
26
|
-
font-weight: bold;
|
|
27
|
-
padding: 2px 0.5em;
|
|
28
|
-
`,n=`%c${[r,o].filter(Boolean).join(":")}`;"string"==typeof e.args[0]?t(`${n}%c ${e.args[0]}`,i,"",...e.args.slice(1)):t(n,i,...e.args)}}function l(e={}){return function(e={}){return new i(e)}({reporters:e.reporters||[new a({})],prompt:(e,t={})=>"confirm"===t.type?Promise.resolve(confirm(e)):Promise.resolve(prompt(e)),...e})}l();var c,p,u=e.i(247167),d=e.i(379227);let{env:h={},argv:g=[],platform:m=""}=void 0===u.default?{}:u.default,f="NO_COLOR"in h||g.includes("--no-color"),_="FORCE_COLOR"in h||g.includes("--color"),y="dumb"===h.TERM,b=d&&d.isatty&&d.isatty(1)&&h.TERM&&!y,w="CI"in h&&("GITHUB_ACTIONS"in h||"GITLAB_CI"in h||"CIRCLECI"in h),v=!f&&(_||"win32"===m&&!y||b||w);function k(e,t,o){return function(e,t,o=e,r=e.length+1){return s=>{var i;return s||""!==s&&void 0!==s?(i=(""+s).indexOf(t,r),i<0?e+s+t:e+function e(t,o,r,s,i=o.slice(0,Math.max(0,t))+s,n=o.slice(Math.max(0,t+r.length)),a=n.indexOf(r)){return i+(a<0?n:e(a,n,r,s))}(i,s,t,o)+t):""}}(`\x1b[${e}m`,`\x1b[${t}m`,o)}let S={reset:k(0,0),bold:k(1,22,"\x1b[22m\x1b[1m"),dim:k(2,22,"\x1b[22m\x1b[2m"),italic:k(3,23),underline:k(4,24),inverse:k(7,27),hidden:k(8,28),strikethrough:k(9,29),black:k(30,39),red:k(31,39),green:k(32,39),yellow:k(33,39),blue:k(34,39),magenta:k(35,39),cyan:k(36,39),white:k(37,39),gray:k(90,39),bgBlack:k(40,49),bgRed:k(41,49),bgGreen:k(42,49),bgYellow:k(43,49),bgBlue:k(44,49),bgMagenta:k(45,49),bgCyan:k(46,49),bgWhite:k(47,49),blackBright:k(90,39),redBright:k(91,39),greenBright:k(92,39),yellowBright:k(93,39),blueBright:k(94,39),magentaBright:k(95,39),cyanBright:k(96,39),whiteBright:k(97,39),bgBlackBright:k(100,49),bgRedBright:k(101,49),bgGreenBright:k(102,49),bgYellowBright:k(103,49),bgBlueBright:k(104,49),bgMagentaBright:k(105,49),bgCyanBright:k(106,49),bgWhiteBright:k(107,49)},T=function(e=v){return e?S:Object.fromEntries(Object.keys(S).map(e=>[e,String]))}();[String.raw`[\u001B\u009B][[\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\d\/#&.:=?%@~_]+)*|[a-zA-Z\d]+(?:;[-a-zA-Z\d\/#&.:=?%@~_]*)*)?\u0007)`,String.raw`(?:(?:\d{1,4}(?:;\d{0,4})*)?[\dA-PR-TZcf-nq-uy=><~]))`].join("|");var C=e.i(41533);let O=l({level:C.IS_DEV?4:3}),A=(c=C.APP_NAME,O.withDefaults({message:(p=`${c}: `,(function(e,t="reset"){return T[e]||T[t]})("blackBright")(p))}));var M=e.i(647163);e.s(["realtimeSession",0,function(e){return({credential:t,setup:o,audio:r,on:s})=>{let i=!1,n=null,a=null,l=new Set,c=[],p=new Map,u=new Set,d=(e,t)=>{p.has(e)||(p.set(e,c.length),c.push({id:e,role:t,text:""}))},h=(e,t)=>{let o=c[e];o.text.trim()&&s.turn({...o,seq:e,done:t})},g=(e,t,o,r)=>{d(e,t);let s=p.get(e),i=c[s].text,n="append"===r?i+o:o;n!==i&&(c[s]={...c[s],text:n},u.has(e)||h(s,!1))},m=e=>{let t=p.get(e);void 0===t||u.has(e)||c[t].text.trim()&&(u.add(e),h(t,!0))},f=!1,_=!1,y=!1,b=!1,w=null,v=null,k=new Map,S=0,T=!1,C=[],O=[],L="",P=()=>{w&&clearTimeout(w),w=null},x=()=>{v&&clearTimeout(v),v=null},B=()=>{if(i)return;let e=k.size>0||T||S>0,t={speaking:f,hearing:_,tools:e?C:[]},o=JSON.stringify(t);if(o!==L&&(L=o,s.activity(t)),_||y||w||f||k.size>0)return;let r=S>0;if(r||0!==O.length){for(let e of O.splice(0))R.send({type:"conversation.item.create",item:{type:"message",role:"system",content:[{type:"input_text",text:e}]}});S=0,T=r,y=!0,b=!0,x(),v=setTimeout(()=>{v=null,b&&(b=!1,y=!1,s.warn("The voice API never answered a response we asked for."),B())},5e3),R.send({type:"response.create"})}},R=e.transport({credential:t,setup:o,audio:r,on:{event:e=>{switch(e.type){case"session.updated":n?.resolve();break;case"error":{let t=e.error?.message??"The voice API reported an error";b&&(b=!1,y=!1,x()),n?n.reject(Error(t)):s.warn(t);break}case"input_audio_buffer.speech_started":_=!0,P();break;case"input_audio_buffer.speech_stopped":_=!1,P(),w=setTimeout(()=>{w=null,B()},1500);break;case"input_audio_buffer.committed":d(e.item_id,"user");break;case"conversation.item.added":case"conversation.item.created":"message"===e.item.type&&"system"!==e.item.role&&d(e.item.id,e.item.role);break;case"response.output_item.added":"message"===e.item.type?d(e.item.id,"assistant"):"function_call"===e.item.type&&d(e.item.id,"tool");break;case"conversation.item.input_audio_transcription.delta":g(e.item_id,"user",e.delta??"","append");break;case"conversation.item.input_audio_transcription.updated":g(e.item_id,"user",e.transcript,"replace");break;case"conversation.item.input_audio_transcription.completed":g(e.item_id,"user",e.transcript??"","replace"),"in_progress"!==e.status&&m(e.item_id);break;case"conversation.item.input_audio_transcription.failed":s.warn(e.error?.message?`That turn could not be transcribed: ${e.error.message}`:"That turn could not be transcribed.");break;case"response.output_audio_transcript.delta":g(e.item_id,"assistant",e.delta,"append");break;case"response.output_audio_transcript.done":e.transcript&&g(e.item_id,"assistant",e.transcript,"replace"),m(e.item_id);break;case"response.created":y=!0,b=!1,x(),P();break;case"response.done":var t;for(let o of(y=!1,T=!1,"failed"===e.response.status&&s.warn((t=e.response,t.status_details?.error?.message??"The model could not finish answering")),e.response.output??[]))"message"===o.type&&m(o.id);for(let[e,t]of c.entries())"user"!==t.role||u.has(t.id)||h(e,!0);break;case"response.function_call_arguments.done":d(e.item_id,"tool");{let t=p.get(e.item_id);c[t]={...c[t],tool:e.name,text:e.arguments||"{}"}}m(e.item_id),0!==k.size||T||(C=[]),C=[...C,e.name],k.set(e.call_id,e.name),s.runTool({id:e.call_id,name:e.name,arguments:e.arguments}).catch(e=>`Error: ${(0,M.errorToString)(e)}`).then(t=>{i||(R.send({type:"conversation.item.create",item:{type:"function_call_output",call_id:e.call_id,output:t}}),k.delete(e.call_id),S+=1,B())});break;default:l.has(e.type)||(l.add(e.type),A.debug(`realtime: no case for ${e.type}`))}B()},playing:e=>{f=e,e&&(T=!1),B()},dropped:e=>{n?n.reject(Error(e)):s.failed(e)}}});return{async connect(){if(await R.connect(),i)throw Error("Hung up before the session opened.");R.send(e.sessionUpdate(o)),await new Promise((e,t)=>{n={resolve:e,reject:t},a=setTimeout(e,5e3)}).finally(()=>{n=null,a&&clearTimeout(a),a=null})},close(){for(let e of c)m(e.id);i=!0,P(),x(),n?.reject(Error("Hung up before the session opened.")),R.close()},mute:e=>R.mute(e),say(e){i||(O.push(e),B())}}}},"toFunctionTools",0,e=>e.map(({name:e,description:t,parameters:o})=>({type:"function",name:e,description:t,parameters:o}))],460548)},70350,e=>{"use strict";var t=e.i(379072);async function o(e,t){let o=await e.text().catch(()=>"");try{let e=JSON.parse(o)?.error?.message;if("string"==typeof e&&e)return e}catch{}return`${t} refused the call (${e.status})`}e.s(["createSocketTransport",0,function({url:e,protocols:o,label:r,audio:s,on:i}){let n=null,a=null,l=null,c=!1,p=!1,u=!1,d=!1,h=null,g=e=>{d!==e&&(d=e,i.playing(e))},m=e=>{n?.readyState===WebSocket.OPEN&&n.send(JSON.stringify(e))};return{async connect(){l=(0,t.createPcmPlayer)(s,()=>{h=null,g(!1)});let d=new Promise((t,s)=>{let a=new WebSocket(e,o);n=a,a.onopen=()=>{u=!0,t(a)};let l=e=>u?void(!c&&!p&&(p=!0,i.dropped(e))):s(Error(e));a.onerror=()=>l(`Could not reach ${r}`),a.onclose=e=>l(e.reason||`The connection to ${r} closed (${e.code})`)}),f=(0,t.openMicrophone)(e=>m({type:"input_audio_buffer.append",audio:(0,t.encodePcm)(e)})).then(e=>{c?e.close():(a=e,s.hear?.(e.stream))},e=>{throw Error(e instanceof Error?`Microphone unavailable — ${e.message}`:"Microphone unavailable")}),[_]=await Promise.all([d,f]);if(c)throw Error("Hung up before the call opened.");_.onmessage=e=>{let o;if("string"==typeof e.data){try{o=JSON.parse(e.data)}catch{return}var r=o;switch(r.type){case"response.output_audio.delta":{if(!l||!r.delta)break;let e=(0,t.decodePcm)(r.delta);h?.itemId!==r.item_id&&(h={itemId:r.item_id,contentIndex:r.content_index??0,startedAt:performance.now(),receivedMs:0}),h.receivedMs+=e.length/t.PCM_SAMPLE_RATE*1e3,l.push(e),g(!0);break}case"input_audio_buffer.speech_started":(()=>{if(!l?.speaking||!h)return;let e=Math.min(h.receivedMs,performance.now()-h.startedAt);m({type:"conversation.item.truncate",item_id:h.itemId,content_index:h.contentIndex,audio_end_ms:Math.max(0,Math.floor(e))}),l.stop(),h=null,g(!1)})()}i.event(r)}}},send:m,close:()=>{c=!0,l?.stop(),l=null,a?.close(),a=null;let e=n;n=null,e?.close()},mute(e){a?.setMuted(e)}}},"createWebRtcTransport",0,function({url:e,secret:r,label:s,audio:i,on:n}){let a=null,l=null,c=null,p=!1,u=!1,d=!1,h=!1,g=e=>{h!==e&&(h=e,n.playing(e))},m=e=>{for(let t of e?.getTracks()??[])t.stop()};return{async connect(){let h=new RTCPeerConnection;a=h;let f=h.createDataChannel("oai-events");l=f;let _=new Promise((e,t)=>{let o=e=>u?void(!p&&!d&&(d=!0,n.dropped(e))):t(Error(e));f.onopen=()=>{u=!0,e()},f.onclose=()=>o(`The connection to ${s} closed`),f.onerror=()=>o(`The connection to ${s} dropped`),h.onconnectionstatechange=()=>{let e=h.connectionState;("failed"===e||"closed"===e)&&o(`Could not reach ${s}`)}});f.onmessage=e=>{let t;if("string"==typeof e.data){try{t=JSON.parse(e.data)}catch{return}switch(t.type){case"output_audio_buffer.started":g(!0);break;case"output_audio_buffer.stopped":case"output_audio_buffer.cleared":g(!1)}n.event(t)}},h.ontrack=e=>{let[t]=e.streams;i.element.srcObject=t,i.listen(t)};let y=await navigator.mediaDevices.getUserMedia({audio:t.MICROPHONE_CONSTRAINTS});if(p)throw m(y),Error("Hung up before the call opened.");c=y,i.hear?.(y),h.addTrack(y.getAudioTracks()[0],y);let b=await h.createOffer();await h.setLocalDescription(b);let w=await fetch(e,{method:"POST",body:b.sdp,headers:{"Content-Type":"application/sdp",Authorization:`Bearer ${r}`}});if(!w.ok)throw Error(await o(w,s));await h.setRemoteDescription({type:"answer",sdp:await w.text()}),await _},send(e){l?.readyState==="open"&&l.send(JSON.stringify(e))},close:()=>{p=!0,m(c),c=null,l?.close(),l=null,a?.close(),a=null,i.element.srcObject=null},mute(e){for(let t of c?.getAudioTracks()??[])t.enabled=!e}}}])},379227,(e,t,o)=>{var r;"u">typeof __nccwpck_require__&&(__nccwpck_require__.ab="/ROOT/node_modules/next/dist/compiled/tty-browserify/"),(r={}).isatty=function(){return!1},r.ReadStream=function(){throw Error("tty.ReadStream is not implemented")},r.WriteStream=function(){throw Error("tty.WriteStream is not implemented")},t.exports=r}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,25481,e=>{"use strict";var t=e.i(843476),n=e.i(716327),s=e.i(632781),r=e.i(456420);let i={name:"ellipsis",size:24,node:[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],aliases:["more-horizontal"]};i.node;let a=(0,r.default)(i);var l=e.i(929272),o=e.i(759659),u=e.i(271645),c=e.i(798120),d=e.i(167881),x=e.i(463415),f=e.i(917162),h=e.i(660302),m=e.i(671428),g=e.i(372851),p=e.i(95187);let k=(0,p.createServerReference)("7fda72369d9fca05cd58aec3dc9180f63cb821b22a",p.callServer,void 0,p.findSourceMapURL,"clearFinishedTasksAction"),v=(0,p.createServerReference)("7ff2d4d8446eefece813fa574882748530dd7fa72a",p.callServer,void 0,p.findSourceMapURL,"deleteTaskAction");var j=e.i(451888),b=e.i(635963),y=e.i(279265),w=e.i(835878),N=e.i(222055),S=e.i(240829),T=e.i(895836),C=e.i(245629),M=e.i(609856),R=e.i(661504),I=e.i(283653),z=e.i(647163),_=e.i(206721);let A="w-36";function D({task:e,bots:r,open:i,onToggle:c,onStop:f,onDelete:m}){var g,p;let k,v="running"===e.status||"waiting"===e.status,N="running"===e.status,T=(0,u.useMemo)(()=>(0,S.taskFromRow)(e,r),[e,r]),M=function(e){if("waiting"===e.status&&e.ask)return{text:(0,j.isAppStop)(e.ask)?(0,z.plainText)(e.outcome??e.ask.question):e.ask.question,tone:z.WAITING_INK};let t=e.seen;if("failed"===e.status)return{text:(0,z.plainText)(e.outcome??"Failed"),tone:t?"text-destructive/70":"text-destructive"};if("done"===e.status)return{text:(0,z.plainText)(e.outcome??"Done"),tone:t?"text-muted-foreground":"text-foreground/80"};for(let t=e.lines.length-1;t>=0;t--){let n=e.lines[t];if("tool"===n.kind)return{text:n.note??n.input,tone:"text-muted-foreground",tool:n.name,shine:!0};if("text"===n.kind)return{text:n.text,tone:"text-muted-foreground",shine:!0};if("user"===n.kind||"waiting"===n.kind)break}return{text:`${e.bot} is taking it on…`,tone:"text-muted-foreground italic",shine:!0}}(e),R=e.tokens.input+e.tokens.output;return(0,t.jsxs)("div",{className:"group/row relative transition-colors hover:bg-muted/50",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 p-4",children:[(0,t.jsxs)("button",{type:"button",onClick:c,className:"flex min-w-0 flex-1 items-center gap-3 rounded-md text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)(b.BotMark,{size:40,seed:e.bot,vary:e.id,...(g=e.bot,p=r,k=p?.find(e=>e.name===g)?.icon,{color:k?.color,shape:k?.shape,outline:k?.outline}),state:N?"thinking":"idle",notify:"waiting"===e.status,className:"shrink-0"}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-0.5",children:[(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"truncate text-sm font-medium",children:e.label}),(0,t.jsx)(w.BotRoster,{bots:(0,S.rosterOf)(T),taskId:e.id}),N&&(0,t.jsx)(s.Loader2,{className:"size-3 shrink-0 animate-spin text-muted-foreground"})]}),M&&(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5 text-[13px] leading-snug",children:[M.tool&&(0,t.jsx)("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground",children:M.tool}),M.shine?(0,t.jsx)(h.ShinyText,{text:M.text,speed:2.2,className:"min-w-0 truncate"}):(0,t.jsx)("span",{className:(0,z.cn)("min-w-0 truncate",M.tone),children:M.text})]})]}),(0,t.jsxs)("span",{className:(0,z.cn)("flex shrink-0 flex-col items-end gap-0.5 font-mono text-[11px] leading-4 text-muted-foreground tabular-nums",A),children:[(0,t.jsx)("span",{children:(0,C.whenOf)(e.updatedAt)}),(0,t.jsxs)("span",{className:"max-w-full truncate text-muted-foreground/70",title:R>0?`${e.id} \xb7 in ${(0,z.formatCount)(e.tokens.input)} \xb7 out ${(0,z.formatCount)(e.tokens.output)}`:e.id,children:[e.bot,R>0&&` \xb7 ${(0,z.formatCount)(R)}`]})]}),(0,t.jsx)(n.ChevronDown,{className:(0,z.cn)("size-4 shrink-0 text-muted-foreground transition-transform",i&&"rotate-180")})]}),(0,t.jsxs)(x.DropdownMenu,{children:[(0,t.jsx)(x.DropdownMenuTrigger,{render:(0,t.jsx)(d.Button,{size:"icon-sm",variant:"ghost"}),children:(0,t.jsx)(a,{})}),(0,t.jsxs)(x.DropdownMenuContent,{align:"end",children:[v&&(0,t.jsxs)(x.DropdownMenuItem,{onClick:f,children:[(0,t.jsx)(l.Square,{}),"Stop"]}),(0,t.jsxs)(x.DropdownMenuItem,{variant:"destructive",onClick:m,children:[(0,t.jsx)(o.Trash2,{}),"Delete"]})]})]})]}),N&&!i&&(0,t.jsx)($,{task:e}),i&&(0,t.jsxs)("div",{className:"mx-4 mb-4 space-y-2",children:[(0,t.jsx)("div",{className:"rounded-xl border border-border/60 bg-background",children:(0,t.jsx)(y.Conversation,{task:T})}),(0,t.jsx)(_.TaskReply,{task:{id:e.id,label:e.label,bot:e.bot,ask:e.ask},status:e.status})]})]})}function $({task:e}){let n=[];if(e.lines.forEach((t,s)=>{if("tool"!==t.kind)return;let r=e.lines[s+1];n.push({step:t,took:r?(0,C.toDate)(r.at).getTime()-(0,C.toDate)(t.at).getTime():null})}),0===n.length)return null;let r=(0,C.toDate)(e.updatedAt).getTime()-(0,C.toDate)(e.createdAt).getTime();return(0,t.jsxs)("div",{className:"pointer-events-none absolute top-[calc(100%-0.75rem)] left-17 z-20 hidden w-96 max-w-[calc(100%-5rem)] rounded-xl bg-background p-3 pb-2 shadow-xl shadow-black/10 ring-1 ring-border/60 group-hover/row:block",children:[(0,t.jsxs)("div",{className:"mb-1.5 flex items-center gap-2 font-mono text-[10px] text-muted-foreground",children:[(0,t.jsx)("span",{children:e.bot}),(0,t.jsx)("span",{className:"opacity-50",children:"·"}),(0,t.jsxs)("span",{children:[n.length," ",1===n.length?"step":"steps"]}),(0,t.jsx)("span",{className:"opacity-50",children:"·"}),(0,t.jsx)("span",{children:O(r)})]}),n.slice(-6).map(({step:e,took:n})=>{let r=(0,N.toolIcon)(e.name);return(0,t.jsxs)("div",{className:"flex h-5.5 items-center gap-2 font-mono text-[11px]",children:[null===n?(0,t.jsx)(s.Loader2,{className:"size-3 shrink-0 animate-spin text-muted-foreground"}):(0,t.jsx)(r,{className:"size-3 shrink-0 text-muted-foreground"}),(0,t.jsx)("span",{className:"w-24 shrink-0 truncate text-muted-foreground",children:e.name}),null===n?(0,t.jsx)(h.ShinyText,{text:e.note??e.input,speed:2.2,className:"min-w-0 flex-1 truncate"}):(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate text-foreground",children:e.note??e.input}),(0,t.jsx)("span",{className:"w-10 shrink-0 text-right text-muted-foreground/70 tabular-nums",children:null===n?"":O(n)})]},e.id)})]})}function O(e){let t=Math.max(0,e)/1e3;if(t<10)return`${t.toFixed(1)}s`;if(t<60)return`${Math.round(t)}s`;let n=Math.floor(t/60);return`${n}m ${Math.round(t-60*n)}s`}function E(){return(0,t.jsxs)("div",{className:"flex items-center gap-3 p-4",children:[(0,t.jsx)(m.Skeleton,{className:"size-10 shrink-0 rounded-full"}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-2",children:[(0,t.jsx)(m.Skeleton,{className:"h-3 w-40 max-w-full"}),(0,t.jsx)(m.Skeleton,{className:"h-2.5 w-80 max-w-full"})]}),(0,t.jsxs)("span",{className:(0,z.cn)("flex shrink-0 flex-col items-end gap-1.5",A),children:[(0,t.jsx)(m.Skeleton,{className:"h-2.5 w-12"}),(0,t.jsx)(m.Skeleton,{className:"h-2.5 w-24"})]}),(0,t.jsx)("span",{className:"size-4 shrink-0"}),(0,t.jsx)("span",{className:"size-7 shrink-0"})]})}e.s(["TaskSetting",0,function(){let[e,n]=(0,u.useState)(null),[s,r]=(0,u.useState)(""),{data:i}=(0,I.useServerRoute)(c.queryKey.bot),{items:a,isLoading:l,isLoadingMore:o,error:x,hasMore:h,sentinelRef:m}=(0,R.useServerPages)({key:(e,t)=>{if(0===e)return c.queryKey.taskHistory(null);let n=t?.at(-1);return n?c.queryKey.taskHistory((0,C.toDate)(n.updatedAt).toISOString()):null},size:j.TASK_HISTORY_PAGE,swr:{revalidateFirstPage:!0,refreshInterval:e=>3e3*!!e?.[0]?.some(e=>"running"===e.status)}});(0,S.useSeenOnDetail)(a.find(t=>t.id===e));let[p]=(0,M.useServerAction)(g.cancelTaskAction,{okMessage:"Task stopped",onOk:e=>{(0,I.revalidate)(c.queryKey.tasks),S.screenActs.announce({kind:"stopped",id:e.id,label:e.label})}}),[b]=(0,M.useServerAction)(v,{okMessage:"Task deleted",onOk:()=>(0,I.revalidate)(c.queryKey.tasks)}),[y]=(0,M.useServerAction)(k,{onOk:()=>(0,I.revalidate)(c.queryKey.tasks)}),w=async()=>{await f.notify.confirm({title:"Clear finished jobs?",description:"Everything done or failed goes, threads included. Running and waiting jobs stay.",okText:"Clear",destructive:!0})&&y()},N=async e=>{await f.notify.confirm({title:`Delete "${e.label}"?`,description:"The thread goes with it — nothing can be picked back up.",okText:"Delete",destructive:!0})&&b(e.id)};if(l)return(0,t.jsx)(T.SettingSkeleton,{rows:3});if(x)return(0,t.jsx)(T.SettingError,{message:x.message});let z=s.trim().toLowerCase(),_=z?a.filter(e=>[e.label,e.outcome,e.bot].join(" ").toLowerCase().includes(z)):a,A=a.filter(e=>"waiting"===e.status).length,$=a.filter(e=>"failed"===e.status).length;return(0,t.jsx)(T.SettingScreen,{footer:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(T.SettingRailNote,{children:[a.length," loaded",A>0&&` \xb7 ${A} waiting on you`,$>0&&` \xb7 ${$} failed`]}),(0,t.jsx)(d.Button,{variant:"outline",size:"sm",onClick:w,children:"Clear finished"})]}),children:(0,t.jsx)(T.SettingGroup,{filter:(0,t.jsx)(T.SettingFilter,{value:s,onChange:r,placeholder:"Filter by label, bot or word"}),right:z?`${_.length} of ${a.length}`:void 0,children:(0,t.jsxs)(T.SettingItems,{children:[0===_.length?(0,t.jsx)("p",{className:"p-4 text-sm leading-relaxed text-muted-foreground",children:z?"Nothing loaded matches. Keep scrolling to search further back.":"Nothing yet. When Thursday hands a job to a bot mid-call, it shows up here — while it runs, and after."}):_.map(s=>(0,t.jsx)(D,{task:s,bots:i,open:e===s.id,onToggle:()=>n(e=>e===s.id?null:s.id),onStop:()=>p(s.id),onDelete:()=>N(s)},s.id)),(0,t.jsx)(T.SettingMore,{hasMore:h,loading:o,sentinelRef:m,ghost:(0,t.jsx)(E,{}),className:"divide-y divide-border/60"})]})})})}],25481)},661504,e=>{"use strict";var t=e.i(271645),n=e.i(699018),s=e.i(677309),r=e.i(271235),i=e.i(802239),a=e.i(646192);let l=Promise.resolve(),o=(0,r.withMiddleware)(n.u,e=>(n,r,o)=>{let u,c=(0,t.useRef)(!1),{cache:d,initialSize:x=1,revalidateAll:f=!1,persistSize:h=!1,revalidateFirstPage:m=!0,revalidateOnMount:g=!1,parallel:p=!1}=o,[,,,k]=s.a.get(s.o);try{(u=(0,s.s)(n?n(0,null):null)[0])&&(u=a.INFINITE_PREFIX+u)}catch(e){}let[v,j,b]=(0,s.c)(d,u),y=(0,t.useCallback)(()=>(0,s.i)(v()._l)?x:v()._l,[d,u,x]);(0,i.useSyncExternalStore)((0,t.useCallback)(e=>u?b(u,()=>{e()}):()=>{},[d,u]),y,y);let w=(0,t.useCallback)(()=>{let e=v()._l;return(0,s.i)(e)?x:e},[u,x]),N=(0,t.useRef)(w());(0,s.u)(()=>{if(!c.current){c.current=!0;return}u&&j({_l:h?N.current:w()})},[u,d]);let S=g&&!c.current,T=e(u,async e=>{let t=v()._i,i=v()._r,a=s.a.get(d),l=a[8],u=()=>a[8]!==l;j({_r:s.U});let c=[],x=w(),[h]=(0,s.c)(d,e),g=h().data,b=[],y=null;for(let e=0;e<x;++e){let[a,l]=(0,s.s)(n(e,p?null:y));if(!a)break;let[x,h]=(0,s.c)(d,a),v=x().data,j=f||t||(0,s.i)(v)||m&&!e&&!(0,s.i)(g)||S||g&&!(0,s.i)(g[e])&&!o.compare(g[e],v);if(r&&("function"==typeof i?i(v,l):j)){let t=async()=>{if(a in k){let e=k[a];delete k[a],v=await e}else v=await r(l);u()||h({data:v,_k:l}),c[e]=v};p?b.push(t):await t()}else c[e]=v;p||(y=v)}return p&&await Promise.all(b.map(e=>e())),u()||j({_i:s.U}),c},o),C=(0,t.useCallback)(function(e,t){let n="boolean"==typeof t?{revalidate:t}:t||{},r=!1!==n.revalidate;return u?(r&&((0,s.i)(e)?j({_i:!0,_r:n.revalidate}):j({_i:!1,_r:n.revalidate})),arguments.length?T.mutate(e,{...n,revalidate:r}):T.mutate()):l},[u,d]),M=(0,t.useCallback)(e=>{let t;if(!u)return l;let[,r]=(0,s.c)(d,u);if((0,s.e)(e)?t=e(w()):"number"==typeof e&&(t=e),"number"!=typeof t)return l;r({_l:t}),N.current=t;let i=[],[a]=(0,s.c)(d,u),o=null;for(let e=0;e<t;++e){let[t]=(0,s.s)(n(e,o)),[r]=(0,s.c)(d,t),l=t?r().data:s.U;if((0,s.i)(l))return C(a().data);i.push(l),o=l}return C(i)},[u,d,C,w]);return{size:w(),setSize:M,mutate:C,get data(){return T.data},get error(){return T.error},get isValidating(){return T.isValidating},get isLoading(){return T.isLoading}}});var u=e.i(41533),c=e.i(283653);e.s(["useServerPages",0,function(e){let n=e.size??u.PAGE_SIZE,{key:s}=e,{data:r,error:i,isLoading:a,isValidating:l,setSize:d,mutate:x}=o((e,t)=>(0,c.resolveKey)(s(e,t)),c.fetchRoute,{dedupingInterval:500,revalidateOnMount:!0,revalidateOnFocus:!0,revalidateOnReconnect:!0,focusThrottleInterval:1e3,revalidateFirstPage:!1,...e.swr}),f=r??[],h=f.flat(),m=f.at(-1),g=void 0!==m&&m.length>=n,p=(0,t.useRef)(0),k=l&&f.length>0&&p.current>f.length,v=(0,t.useRef)({isValidating:l,setSize:d,pages:f.length});v.current={isValidating:l,setSize:d,pages:f.length};let j=(0,c.resolveKey)(s(0,null)),b="string"==typeof j?j:j?.url;(0,t.useEffect)(()=>{if(b)return(0,c.registerPagedReader)({url:b,refresh:()=>x()})},[b,x]);let y=function(e,n={}){let{enabled:s=!0,margin:r="600px",revision:i}=n,a=(0,t.useRef)(e);a.current=e;let l=(0,t.useRef)(null),o=(0,t.useRef)(null),u=(0,t.useCallback)(e=>{l.current=e},[]);return(0,t.useEffect)(()=>{o.current?.disconnect();let e=l.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,i]),u}(()=>{let e=v.current;e.isValidating||(p.current=e.pages+1,e.setSize(e.pages+1))},{enabled:g,revision:`${f.length}:${l}`});return{items:h,isLoading:a,isLoadingMore:k,error:i,hasMore:g,sentinelRef:y,refresh:()=>x()}}],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,18 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,787800,e=>{"use strict";var t=e.i(843476),n=e.i(689664),s=e.i(716327),r=e.i(867927),o=e.i(456420);let a={name:"play",size:24,node:[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]};a.node;let i=(0,o.default)(a);var c=e.i(77071);let l={name:"refresh-cw",size:24,node:[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]};l.node;let d=(0,o.default)(l),m={name:"server",size:24,node:[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]};m.node;let p=(0,o.default)(m);var u=e.i(759659),h=e.i(263676),g=e.i(271645),f=e.i(798120),x=e.i(167881),v=e.i(986530),j=e.i(23750),y=e.i(647163);let b=(0,g.memo)(({data:e,name:n,initialExpandDepth:s=2})=>{let r=(0,g.useMemo)(()=>"string"==typeof e?function(e){let t=e.trim();if(!(t.startsWith("{")&&t.endsWith("}"))&&!(t.startsWith("[")&&t.endsWith("]")))return{success:!1,data:e};try{return{success:!0,data:JSON.parse(e)}}catch{return{success:!1,data:e}}}(e).data:e,[e]);return(0,t.jsx)("div",{className:" text-sm transition-all duration-300",children:(0,t.jsx)(N,{data:r,name:n,depth:0,initialExpandDepth:s})})});b.displayName="JsonView";let N=(0,g.memo)(({data:e,name:n,depth:s=0,initialExpandDepth:r})=>{var o;let a=void 0===e?"undefined":Array.isArray(e)?"array":null===e?"null":typeof e,[i,c]=(0,g.useState)("string"!==a&&s<r),l={number:"text-blue-500",boolean:"text-amber-500",null:"text-purple-500",undefined:"text-gray-500",string:"text-foreground break-all whitespace-pre-wrap",default:"text-muted-foreground"};switch(a){case"object":case"array":let d,m,p;return m=(d=(o="array"===a)?e:Object.entries(e)).length,p={open:o?"[":"{",close:o?"]":"}",collapsed:o?"[ ... ]":"{ ... }",empty:o?"[]":"{}"},0===m?(0,t.jsxs)("div",{className:"flex items-center",children:[n&&(0,t.jsxs)("span",{className:"mr-1 text-muted-foreground",children:[n,":"]}),(0,t.jsx)("span",{className:"text-muted-foreground",children:p.empty})]}):(0,t.jsxs)("div",{className:"flex flex-col",children:[(0,t.jsxs)("div",{className:"flex items-center mr-1 rounded cursor-pointer group hover:bg-input/30",onClick:()=>c(!i),children:[n&&(0,t.jsxs)("span",{className:"mr-1 text-muted-foreground hover:text-foreground",children:[n,":"]}),i?(0,t.jsx)("span",{className:"text-muted-foreground group-hover:text-foreground",children:p.open}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-muted-foreground group-hover:text-foreground",children:p.collapsed}),(0,t.jsxs)("span",{className:"ml-1 text-muted-foreground group-hover:text-foreground",children:[m," ",1===m?"item":"items"]})]})]}),i&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"pl-2 ml-4 border-l border-border",children:o?d.map((e,n)=>(0,t.jsx)("div",{className:"my-1",children:(0,t.jsx)(N,{data:e,name:`${n}`,depth:s+1,initialExpandDepth:r})},n)):d.map(([e,n])=>(0,t.jsx)("div",{className:"my-1",children:(0,t.jsx)(N,{data:n,name:e,depth:s+1,initialExpandDepth:r})},e))}),(0,t.jsx)("div",{className:"text-muted-foreground",children:p.close})]})]});case"string":return e.length>100?(0,t.jsxs)("div",{className:"flex mr-1 rounded group hover:bg-input/30",children:[n&&(0,t.jsxs)("span",{className:"mr-1 text-muted-foreground hover:text-foreground",children:[n,":"]}),(0,t.jsx)("pre",{className:(0,y.cn)(l.string,"cursor-pointer group-hover:text-foreground"),onClick:()=>c(!i),title:i?"Click to collapse":"Click to expand",children:i?`"${e}"`:`"${e.slice(0,100)}..."`})]}):(0,t.jsxs)("div",{className:"flex mr-1 rounded hover:bg-input/30",children:[n&&(0,t.jsxs)("span",{className:"mr-1 text-muted-foreground",children:[n,":"]}),(0,t.jsxs)("pre",{className:l.string,children:['"',e,'"']})]});case"undefined":return(0,t.jsxs)("div",{className:"flex items-center mr-1 rounded hover:bg-input/30",children:[n&&(0,t.jsxs)("span",{className:"mr-1 text-muted-foreground",children:[n,":"]}),(0,t.jsx)("span",{className:l.undefined,children:"undefined"})]});default:return(0,t.jsxs)("div",{className:"flex items-center mr-1 rounded hover:bg-input/30",children:[n&&(0,t.jsxs)("span",{className:"mr-1 text-muted-foreground",children:[n,":"]}),(0,t.jsx)("span",{className:l[a]||l.default,children:null===e?"null":String(e)})]})}});N.displayName="JsonNode";var k=e.i(917162),S=e.i(319036),C=e.i(127341),w=e.i(184762),z=e.i(6799),O=e.i(95187);let T=(0,O.createServerReference)("7fa0c79ff2fb7f80629f25e491a9e69729aeedbd9a",O.callServer,void 0,O.findSourceMapURL,"callToolAction"),A=(0,O.createServerReference)("7f3396873361a98f9646981d66a61d2f8a456275ad",O.callServer,void 0,O.findSourceMapURL,"deleteServerAction"),I=(0,O.createServerReference)("7f959e357c3e9baa28d463b01bf77f8d21bdb66ca6",O.callServer,void 0,O.findSourceMapURL,"refreshServerAction"),P=(0,O.createServerReference)("7f6eacef15427e497ad6330ff0fa5820ce77ba0e87",O.callServer,void 0,O.findSourceMapURL,"registerServerAction");var F=e.i(681307),$=e.i(245629);let M=F.z.object({url:F.z.url(),headers:F.z.record(F.z.string(),F.z.string()).optional(),oauthClient:F.z.object({clientId:F.z.string().min(1),clientSecret:F.z.string().optional()}).optional()}),R=F.z.object({command:F.z.string().min(1),args:F.z.array(F.z.string()).optional(),env:F.z.record(F.z.string(),F.z.string()).optional()}),D=F.z.union([M,R]),E=F.z.object({name:F.z.string(),description:F.z.string().optional(),inputSchema:F.z.looseObject({}).optional(),outputSchema:F.z.looseObject({}).optional()});function L(e){return"url"in e}F.z.object({clientInformation:F.z.looseObject({}).optional(),tokens:F.z.looseObject({}).optional(),authorizationServer:F.z.looseObject({}).optional(),codeVerifier:F.z.string().optional(),state:F.z.string().optional()});let q=F.z.object({name:F.z.string().min(1).max(40),config:D,toolCount:F.z.number().int(),lastError:F.z.string().nullish()}),B=E.extend({id:F.z.number().int(),description:F.z.string().nullish()});q.omit({toolCount:!0}).extend({tools:B.array().default([]),toolsSyncedAt:$.DateLikeSchema});let J=F.z.object({name:F.z.string().min(1,"Name is required").max(40).regex(/^[a-zA-Z0-9_-]+$/,"Only letters, numbers, - and _ are allowed"),config:D}),U=F.z.union([F.z.object({mcpServers:F.z.record(F.z.string(),D)}),F.z.record(F.z.string(),D)]),K=[{name:"notion",icon:"notion.so",description:"Pages, databases, and search",config:{url:"https://mcp.notion.com/mcp"}},{name:"github",icon:"github.com",description:"Repos, issues, PRs — paste a personal access token",config:{url:"https://api.githubcopilot.com/mcp/",headers:{Authorization:"Bearer <your-github-pat>"}}},{name:"linear",icon:"linear.app",description:"Issues, projects, and cycles",config:{url:"https://mcp.linear.app/mcp"}},{name:"slack",icon:"slack.com",description:"Channels, messages, and search",config:{url:"https://mcp.slack.com/mcp"}},{name:"atlassian",icon:"atlassian.com",description:"Jira and Confluence",config:{url:"https://mcp.atlassian.com/v1/mcp"}},{name:"asana",icon:"asana.com",description:"Tasks, projects, and portfolios",config:{url:"https://mcp.asana.com/mcp"}},{name:"monday",icon:"monday.com",description:"Boards, items, and updates",config:{url:"https://mcp.monday.com/mcp"}},{name:"clickup",icon:"clickup.com",description:"Tasks, docs, and spaces",config:{url:"https://mcp.clickup.com/mcp"}},{name:"airtable",icon:"airtable.com",description:"Bases, tables, and records",config:{url:"https://mcp.airtable.com/mcp"}},{name:"box",icon:"box.com",description:"Files, folders, and content search",config:{url:"https://mcp.box.com/mcp"}},{name:"figma",icon:"figma.com",description:"Design files and components",config:{url:"https://mcp.figma.com/mcp"}},{name:"canva",icon:"canva.com",description:"Create and manage designs",config:{url:"https://mcp.canva.com/mcp"}},{name:"sanity",icon:"sanity.io",description:"Structured content and datasets",config:{url:"https://mcp.sanity.io/mcp"}},{name:"webflow",icon:"webflow.com",description:"Sites, pages, and CMS collections",config:{url:"https://mcp.webflow.com/mcp"}},{name:"wix",icon:"wix.com",description:"Sites, stores, and bookings",config:{url:"https://mcp.wix.com/mcp"}},{name:"hubspot",icon:"hubspot.com",description:"Contacts, deals, and companies",config:{url:"https://app.hubspot.com/mcp/v1/http"}},{name:"attio",icon:"attio.com",description:"CRM records and lists",config:{url:"https://mcp.attio.com/mcp"}},{name:"intercom",icon:"intercom.com",description:"Conversations and support tickets",config:{url:"https://mcp.intercom.com/mcp"}},{name:"fireflies",icon:"fireflies.ai",description:"Meeting transcripts and summaries",config:{url:"https://mcp.fireflies.ai/mcp"}},{name:"stripe",icon:"stripe.com",description:"Payments, invoices, and customers",config:{url:"https://mcp.stripe.com"}},{name:"paypal",icon:"paypal.com",description:"Payments and orders",config:{url:"https://mcp.paypal.com/mcp"}},{name:"square",icon:"squareup.com",description:"Payments, catalog, and orders",config:{url:"https://mcp.squareup.com/mcp"}},{name:"ramp",icon:"ramp.com",description:"Spend, cards, and transactions",config:{url:"https://mcp.ramp.com/mcp"}},{name:"vercel",icon:"vercel.com",description:"Deployments and projects",config:{url:"https://mcp.vercel.com"}},{name:"netlify",icon:"netlify.com",description:"Sites, builds, and deploys",config:{url:"https://mcp.netlify.com/mcp"}},{name:"cloudflare",icon:"cloudflare.com",description:"Workers bindings — D1, R2, KV",config:{url:"https://bindings.mcp.cloudflare.com/mcp"}},{name:"supabase",icon:"supabase.com",description:"Projects, tables, and SQL",config:{url:"https://mcp.supabase.com/mcp"}},{name:"neon",icon:"neon.tech",description:"Postgres branches and queries",config:{url:"https://mcp.neon.tech/mcp"}},{name:"prisma",icon:"prisma.io",description:"Postgres databases and schema",config:{url:"https://mcp.prisma.io/mcp"}},{name:"sentry",icon:"sentry.io",description:"Errors and performance issues",config:{url:"https://mcp.sentry.dev/mcp"}},{name:"grafana",icon:"grafana.com",description:"Dashboards, metrics, and alerts",config:{url:"https://mcp.grafana.com/mcp"}},{name:"semgrep",icon:"semgrep.dev",description:"Scan code for security findings",config:{url:"https://mcp.semgrep.ai/mcp"}},{name:"postman",icon:"postman.com",description:"Collections, environments, and requests",config:{url:"https://mcp.postman.com/mcp"}},{name:"resend",icon:"resend.com",description:"Send email and manage audiences",config:{url:"https://mcp.resend.com/mcp"}},{name:"hugging-face",icon:"huggingface.co",description:"Models, datasets, and Spaces",config:{url:"https://huggingface.co/mcp"}},{name:"apify",icon:"apify.com",description:"Run scrapers and automation actors",config:{url:"https://mcp.apify.com"}},{name:"exa",icon:"exa.ai",description:"Web search for agents",config:{url:"https://mcp.exa.ai/mcp"}},{name:"kagi",icon:"kagi.com",description:"Search, summarize, and answer",config:{url:"https://mcp.kagi.com/mcp"}},{name:"context7",icon:"context7.com",description:"Up-to-date library docs",config:{url:"https://mcp.context7.com/mcp"}},{name:"deepwiki",icon:"deepwiki.com",description:"Ask questions about any GitHub repo",config:{url:"https://mcp.deepwiki.com/mcp"}},{name:"microsoft-learn",icon:"learn.microsoft.com",description:"Microsoft and Azure docs — no account",config:{url:"https://learn.microsoft.com/api/mcp"}},{name:"aws-knowledge",icon:"aws.amazon.com",description:"AWS docs and API references — no account",config:{url:"https://knowledge-mcp.global.api.aws"}},{name:"cloudflare-docs",icon:"developers.cloudflare.com",description:"Cloudflare docs — no account",config:{url:"https://docs.mcp.cloudflare.com/mcp"}},{name:"stack-overflow",icon:"stackoverflow.com",description:"Questions, answers, and teams",config:{url:"https://mcp.stackoverflow.com"}},{name:"playwright",icon:"playwright.dev",description:"Drive a real browser",config:{command:"npx",args:["@playwright/mcp@latest"]}},{name:"chrome-devtools",icon:"developer.chrome.com",description:"Inspect and debug Chrome",config:{command:"npx",args:["chrome-devtools-mcp@latest"]}}];var _=e.i(895836),H=e.i(333999),W=e.i(609856),V=e.i(283653);function G({name:e,onDone:n}){let{data:s,isLoading:r}=(0,V.useServerRoute)(f.queryKey.mcpServer(e)),[o,a]=(0,W.useServerAction)(I,{...ec,onOk:t=>{ec.onOk(t),(0,V.revalidate)(f.queryKey.mcpServer(e))}}),[i,c]=(0,W.useServerAction)(A,{okMessage:"Server deleted",onOk:()=>{n(),(0,V.revalidate)(f.queryKey.mcp)}}),l=async()=>{await k.notify.confirm({title:`Delete ${e}?`,description:"Its connection and saved authorization go with it.",okText:"Delete",destructive:!0})&&i(e)};if(r)return(0,t.jsx)(_.SettingSkeleton,{rows:4});if(!s)return null;let m=s.tools.length,p=L(s.config)?"HTTP":"STDIO";return(0,t.jsxs)(_.SettingDialogContent,{title:s.name,description:(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5",children:[(0,t.jsx)("span",{className:"shrink-0 rounded-sm bg-muted px-1.5 py-0.5 font-mono text-[10px]",children:p}),(0,t.jsx)("span",{className:"truncate font-mono",children:ed(s.config)})]}),footer:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(x.Button,{variant:"ghost",loading:c,onClick:l,children:[(0,t.jsx)(u.Trash2,{}),"Delete"]}),(0,t.jsxs)(x.Button,{variant:"outline",loading:a,onClick:()=>o(s.name),children:[(0,t.jsx)(d,{}),"Reconnect"]})]}),children:[s.lastError&&(0,t.jsx)("p",{className:"rounded-lg bg-destructive/10 px-3 py-2 font-mono text-xs text-destructive",children:s.lastError}),(0,t.jsxs)("p",{className:"text-right font-mono text-xs text-muted-foreground",children:[m," ",1===m?"tool":"tools"]}),s.tools.map(e=>(0,t.jsx)(Y,{tool:e,serverName:s.name},e.name))]})}function Q({server:e}){let s=e.toolCount,o=e.lastError?"error":s>0?"connected":"idle";return(0,t.jsxs)("button",{type:"button",onClick:()=>{k.notify.component({className:"sm:max-w-3xl",renderer:({close:n})=>(0,t.jsx)(G,{name:e.name,onDone:n})})},className:"group 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)(X,{server:e})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-0.5",children:[(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5",children:[(0,t.jsx)("span",{className:"truncate text-sm font-medium",children:e.name}),"connected"===o&&(0,t.jsx)(n.Check,{className:"size-3 shrink-0 text-muted-foreground"})]}),(0,t.jsx)("span",{className:"block truncate text-xs text-muted-foreground",children:"error"===o?(0,t.jsx)("span",{className:"text-destructive",children:e.lastError}):(0,t.jsxs)(t.Fragment,{children:[s>0?`${s} ${1===s?"tool":"tools"}`:"No tools yet",(0,t.jsxs)("span",{className:"font-mono text-[11px] text-muted-foreground/70",children:[" · ",ed(e.config)]})]})})]}),(0,t.jsx)(r.ChevronRight,{className:"size-4 shrink-0 text-muted-foreground/60 transition-colors group-hover:text-foreground"})]})}function X({server:e}){let n,s=(n=K.find(t=>L(t.config)?L(e.config)&&t.config.url.replace(/\/+$/,"")===e.config.url.replace(/\/+$/,""):!L(e.config)&&t.config.command===e.config.command&&(t.config.args??[]).join(" ")===(e.config.args??[]).join(" "))??K.find(t=>t.name===e.name),n?.icon);return s?(0,t.jsx)("img",{src:(0,y.faviconUrl)(s),alt:"",className:"size-5"}):(0,t.jsx)(p,{className:"size-4"})}function Y({tool:e,serverName:n}){let[o,a]=(0,g.useState)(!1),[i,c]=(0,g.useState)(!1),[l,d]=(0,g.useState)(!1),m=[["inputSchema",e.inputSchema],["outputSchema",e.outputSchema]].filter(([,e])=>e);return(0,t.jsxs)("div",{className:"rounded-xl border border-border/60 bg-background p-4",children:[(0,t.jsxs)("div",{className:"min-w-0 space-y-1",children:[(0,t.jsx)("span",{className:"block truncate font-mono text-sm",children:e.name}),e.description?(0,t.jsx)("p",{className:(0,y.cn)("text-xs text-muted-foreground",!l&&"line-clamp-2",e.description.length>140&&"cursor-pointer"),onClick:()=>d(!l),children:e.description}):null]}),(0,t.jsxs)("div",{className:"mt-2 flex justify-end gap-1",children:[m.length>0&&(0,t.jsxs)(x.Button,{size:"xs",variant:"ghost",className:"font-mono",onClick:()=>a(!o),children:[o?(0,t.jsx)(s.ChevronDown,{}):(0,t.jsx)(r.ChevronRight,{}),"Schema"]}),(0,t.jsxs)(x.Button,{size:"xs",variant:"ghost",className:"font-mono",onClick:()=>c(!i),children:[i?(0,t.jsx)(s.ChevronDown,{}):(0,t.jsx)(r.ChevronRight,{}),"Test"]})]}),o?(0,t.jsx)("div",{className:"mt-2 space-y-3 overflow-x-auto rounded-lg border border-input p-3",children:m.map(([e,n])=>(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("span",{className:"block font-mono text-xs text-muted-foreground",children:"inputSchema"===e?"in":"out"}),(0,t.jsx)("pre",{className:"font-mono text-xs leading-relaxed whitespace-pre",children:function e(t,n=0){if(!t||"object"!=typeof t)return"unknown";let s=" ".repeat(n+1),r=" ".repeat(n);if(Array.isArray(t.enum))return t.enum.map(e=>JSON.stringify(e)).join(" | ");let o=t.anyOf??t.oneOf;if(Array.isArray(o))return o.map(t=>e(t,n)).join(" | ");if("array"===t.type){let s=e(t.items,n);return/[|{]/.test(s)?`(${s})[]`:`${s}[]`}if("object"===t.type||t.properties){let o=t.properties;if(!o||0===Object.keys(o).length)return"{}";let a=t.required??[],i=Object.entries(o).map(([t,r])=>{let o=a.includes(t)?"":"?",i=r?.description,c="string"==typeof i&&i.length<=60?` // ${i}`:"";return`${s}${t}${o}: ${e(r,n+1)}${c}`});return`{
|
|
2
|
-
${i.join("\n")}
|
|
3
|
-
${r}}`}return Array.isArray(t.type)?t.type.join(" | "):"string"==typeof t.type?t.type:"unknown"}(n)})]},e))}):null,i?(0,t.jsx)(Z,{tool:e,serverName:n}):null]})}function Z({tool:e,serverName:n}){let[s,r]=(0,g.useState)(()=>(function(e){let t=e.inputSchema?.properties;if(!t||"object"!=typeof t)return"{}";let n={};for(let[e,s]of Object.entries(t))n[e]=s?.type==="number"||s?.type==="integer"?0:s?.type!=="boolean"&&(s?.type==="array"?[]:s?.type==="object"?{}:"");return JSON.stringify(n,null,2)})(e)),[o,a]=(0,g.useState)(""),[c,l,d,m,p]=(0,W.useServerAction)(T,{errorMessage:!1});return(0,t.jsxs)("div",{className:"mt-2 space-y-2 rounded-lg border border-input p-3",children:[(0,t.jsx)(w.Textarea,{value:s,onChange:e=>r(e.target.value),spellCheck:!1,className:"min-h-24 resize-none font-mono text-xs"}),(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)("span",{className:"font-mono text-xs text-destructive",children:o||m}),(0,t.jsxs)(x.Button,{size:"sm",loading:l,onClick:()=>{let t;try{t=s.trim()?JSON.parse(s):void 0}catch{a("Not valid JSON");return}a(""),p(),c(n,e.name,t)},children:[!l&&(0,t.jsx)(i,{}),"Run"]})]}),void 0!==d&&(0,t.jsx)("div",{className:"overflow-x-auto rounded-lg bg-muted/40 p-3",children:(0,t.jsx)(b,{data:d,initialExpandDepth:3})})]})}function ee(e){return k.notify.component({className:"sm:max-w-lg",renderer:({close:n})=>(0,t.jsx)(et,{initial:e,onDone:n})})}function et({initial:e,onDone:n}){let s=e&&L(e.config)?e.config:void 0,r=e&&!L(e.config)?e.config:void 0,[o,a]=(0,H.useObjectState)({mode:r?"stdio":"http",name:e?.name??"",url:s?.url??"",headers:er(s?.headers),clientId:s?.oauthClient?.clientId??"",clientSecret:s?.oauthClient?.clientSecret??"",command:r?.command??"",args:(r?.args??[]).join(" "),env:er(r?.env),raw:""}),{mode:i,name:c,url:l,headers:d,clientId:m,clientSecret:p,command:u,args:h,env:f,raw:y}=o,[b,N]=(0,W.useServerAction)(P,{...ec,onOk:e=>{ec.onOk(e),"error"!==e.status&&n()}}),k=(0,g.useMemo)(()=>{var e,t,n,s,r,o,a;let c,g;return"json"===i?function(e){let t,n=e.trim();if(!n)return{value:null,error:""};try{t=JSON.parse(n)}catch{return{value:null,error:"Not valid JSON"}}let s=D.safeParse(t);if(s.success)return{value:{name:null,config:s.data},error:""};let r=U.safeParse(t);if(!r.success)return{value:null,error:"Needs a url or a command"};let o=Object.entries("mcpServers"in r.data?r.data.mcpServers:r.data)[0];return o?{value:{name:o[0],config:o[1]},error:""}:{value:null,error:"No server in there"}}(y):"http"===i?(e=l,t=d,n=m,s=p,(c=M.safeParse({url:e.trim(),headers:eo(t),oauthClient:n.trim()?{clientId:n.trim(),clientSecret:s.trim()}:void 0})).success?{value:{name:null,config:c.data},error:""}:{value:null,error:e.trim()?"Needs a valid url":""}):(r=u,o=h,a=f,(g=R.safeParse({command:r.trim(),args:o.split(/\s+/).filter(Boolean),env:eo(a)})).success?{value:{name:null,config:g.data},error:""}:{value:null,error:r.trim()?"Needs a command":""})},[i,y,l,d,m,p,u,h,f]),z="json"===i?y:JSON.stringify([i,l,d,m,p,u,h,f]),[O,T]=(0,g.useState)(z);(0,g.useEffect)(()=>{let e=setTimeout(()=>T(z),700);return()=>clearTimeout(e)},[z]);let A=O===z?k.error:"",I=c||k.value?.name||"",F=J.safeParse({name:I,config:k.value?.config});function $(e){let t=k.value?.config;return t?"json"===e?a({mode:e,raw:JSON.stringify(t,null,2)}):"http"===e&&L(t)?a({mode:e,url:t.url,headers:er(t.headers),clientId:t.oauthClient?.clientId??"",clientSecret:t.oauthClient?.clientSecret??""}):"stdio"!==e||L(t)?void a({mode:e}):a({mode:e,command:t.command,args:(t.args??[]).join(" "),env:er(t.env)}):a({mode:e})}let E=(0,t.jsxs)("span",{className:"flex items-center gap-2 font-mono text-xs text-muted-foreground",children:["JSON",(0,t.jsx)(S.Switch,{size:"sm",checked:"json"===i,onCheckedChange:e=>{let t;return e?$("json"):void $((t=k.value?.config)&&!L(t)?"stdio":"http")}})]});return(0,t.jsx)(_.SettingDialogContent,{title:"Add MCP server",description:"Its tools become available to Thursday and every sub-agent.",footer:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(x.Button,{variant:"ghost",onClick:n,children:"Cancel"}),(0,t.jsx)(x.Button,{disabled:!F.success,loading:N,onClick:()=>{F.success&&!N&&b(F.data)},children:"Connect"})]}),children:(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsxs)(v.Field,{children:[(0,t.jsx)(v.FieldLabel,{children:"Name"}),(0,t.jsx)(j.Input,{value:I,onChange:e=>a({name:e.target.value}),placeholder:"notion",spellCheck:!1})]}),"json"===i?(0,t.jsxs)(v.Field,{children:[(0,t.jsxs)("div",{className:"flex min-h-6 items-center justify-between gap-2",children:[(0,t.jsx)(v.FieldLabel,{children:"JSON"}),E]}),(0,t.jsx)(w.Textarea,{value:y,onChange:e=>a({raw:e.target.value}),spellCheck:!1,placeholder:ea,className:"min-h-64 resize-none font-mono text-xs"})]}):(0,t.jsxs)(C.Tabs,{value:i,onValueChange:e=>$(e),className:"gap-6",children:[(0,t.jsxs)(v.Field,{children:[(0,t.jsxs)("div",{className:"flex min-h-6 items-center justify-between gap-2",children:[(0,t.jsx)(v.FieldLabel,{children:"Transport"}),E]}),(0,t.jsxs)(C.TabsList,{className:"w-full",children:[(0,t.jsx)(C.TabsTrigger,{value:"http",children:"HTTP"}),(0,t.jsx)(C.TabsTrigger,{value:"stdio",children:"STDIO"})]})]}),(0,t.jsxs)(C.TabsContent,{value:"http",className:"space-y-6",children:[(0,t.jsxs)(v.Field,{children:[(0,t.jsx)(v.FieldLabel,{children:"URL"}),(0,t.jsx)(j.Input,{value:l,onChange:e=>a({url:e.target.value}),placeholder:"https://mcp.notion.com/mcp",spellCheck:!1,className:"font-mono text-xs"})]}),(0,t.jsx)(en,{label:"Headers",pairs:d,onChange:e=>a({headers:e}),keyPlaceholder:"Authorization",valuePlaceholder:"Bearer sk-..."}),(0,t.jsxs)(v.Field,{children:[(0,t.jsx)(v.FieldLabel,{children:"OAuth client"}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsx)(j.Input,{value:m,onChange:e=>a({clientId:e.target.value}),placeholder:"Client ID",spellCheck:!1,className:"font-mono text-xs"}),(0,t.jsx)(j.Input,{value:p,onChange:e=>a({clientSecret:e.target.value}),placeholder:"Client secret",spellCheck:!1,type:"password",className:"font-mono text-xs"})]}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:"Only for servers that refuse to register clients on their own, like Figma. Leave empty and one is created during sign-in."})]})]}),(0,t.jsxs)(C.TabsContent,{value:"stdio",className:"space-y-6",children:[(0,t.jsxs)(v.Field,{children:[(0,t.jsx)(v.FieldLabel,{children:"Command"}),(0,t.jsx)(j.Input,{value:u,onChange:e=>a({command:e.target.value}),placeholder:"npx",spellCheck:!1,className:"font-mono text-xs"})]}),(0,t.jsxs)(v.Field,{children:[(0,t.jsx)(v.FieldLabel,{children:"Args"}),(0,t.jsx)(j.Input,{value:h,onChange:e=>a({args:e.target.value}),placeholder:"-y @notionhq/notion-mcp-server",spellCheck:!1,className:"font-mono text-xs"})]}),(0,t.jsx)(en,{label:"Env",pairs:f,onChange:e=>a({env:e}),keyPlaceholder:"NOTION_TOKEN",valuePlaceholder:"ntn_..."})]})]}),A&&(0,t.jsx)("p",{className:"font-mono text-xs text-destructive",children:A})]})})}function en({label:e,pairs:n,onChange:s,keyPlaceholder:r,valuePlaceholder:o}){let a=(e,t)=>s(n.map(n=>n.id===e?{...n,...t}:n));return(0,t.jsxs)(v.Field,{children:[(0,t.jsx)(v.FieldLabel,{children:e}),(0,t.jsxs)("div",{className:"space-y-2",children:[n.map(e=>(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsx)(j.Input,{value:e.key,onChange:t=>a(e.id,{key:t.target.value}),placeholder:r,spellCheck:!1,className:"font-mono text-xs"}),(0,t.jsx)(j.Input,{value:e.value,onChange:t=>a(e.id,{value:t.target.value}),placeholder:o,spellCheck:!1,className:"font-mono text-xs"}),(0,t.jsx)(x.Button,{variant:"ghost",size:"icon",onClick:()=>s(n.filter(t=>t.id!==e.id)),children:(0,t.jsx)(h.X,{})})]},e.id)),(0,t.jsxs)(x.Button,{variant:"outline",size:"sm",onClick:()=>s([...n,es()]),children:[(0,t.jsx)(c.Plus,{}),"Add"]})]})]})}let es=(e="",t="")=>({id:crypto.randomUUID(),key:e,value:t}),er=e=>Object.entries(e??{}).map(([e,t])=>es(e,t)),eo=e=>{let t=e.filter(e=>e.key.trim());if(t.length)return Object.fromEntries(t.map(e=>[e.key.trim(),e.value]))},ea=`/** STDIO Example */
|
|
4
|
-
{
|
|
5
|
-
"command": "node",
|
|
6
|
-
"args": ["index.js"],
|
|
7
|
-
"env": {
|
|
8
|
-
"OPENAI_API_KEY": "sk-..."
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
/** SSE, Streamable HTTP Example */
|
|
13
|
-
{
|
|
14
|
-
"url": "https://api.example.com",
|
|
15
|
-
"headers": {
|
|
16
|
-
"Authorization": "Bearer sk-..."
|
|
17
|
-
}
|
|
18
|
-
}`;function ei(e){if("auth_required"===e.status&&e.authorizationUrl){let t=window.open(e.authorizationUrl,"thursday-oauth","popup,width=520,height=720");z.toast.add({title:`${e.name} needs authorization`,description:"Approve access in the window that just opened"});let n=Date.now()+3e5,s=setInterval(()=>{let e=!t||t.closed;!(!e&&Date.now()<n)&&(clearInterval(s),e&&(0,V.revalidate)(f.queryKey.mcp))},700);return}"error"===e.status?z.toast.add({type:"error",title:`${e.name} could not connect`,description:e.error}):z.toast.add({type:"success",title:`${e.name} connected`,description:`${e.toolCount} ${1===e.toolCount?"tool":"tools"} available`})}let ec={onOk:e=>{(0,V.revalidate)(f.queryKey.mcp),ei(e)}};function el({filter:e,onFilter:n,onPreset:s}){let r=e.trim().toLowerCase(),o=K.filter(e=>!r||`${e.name} ${e.description}`.toLowerCase().includes(r));return(0,t.jsx)(_.SettingGroup,{label:"Presets",filter:(0,t.jsx)(_.SettingFilter,{value:e,onChange:n,placeholder:"Filter presets",className:"w-56"}),right:r?`${o.length} of ${K.length}`:void 0,children:(0,t.jsx)("div",{className:"grid grid-cols-[repeat(4,minmax(0,1fr))] gap-3",children:o.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>s(e),className:"group relative flex flex-col gap-2 rounded-xl border border-border/60 p-3 text-left text-muted-foreground outline-none transition-colors hover:bg-accent hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50",children:[(0,t.jsx)(c.Plus,{className:"absolute top-3 right-3 size-3.5 shrink-0 text-muted-foreground/50 group-hover:text-foreground"}),(0,t.jsx)("span",{className:"grid size-6 shrink-0 place-items-center rounded-md bg-muted text-muted-foreground",children:e.icon?(0,t.jsx)("img",{src:(0,y.faviconUrl)(e.icon),alt:"",className:"size-4"}):(0,t.jsx)(p,{className:"size-3.5"})}),(0,t.jsxs)("span",{className:"min-w-0",children:[(0,t.jsx)("span",{className:"block truncate font-mono text-xs font-semibold",children:e.name}),(0,t.jsx)("span",{className:"block truncate text-xs",children:e.description})]})]},e.name))})})}function ed(e){return L(e)?e.url:[e.command,...e.args??[]].join(" ")}e.s(["CONNECT_OPTIONS",0,ec,"McpSetting",0,function(){let[e,n]=(0,g.useState)(""),{data:s=[],isLoading:r,error:o}=(0,V.useServerRoute)(f.queryKey.mcp);if(r)return(0,t.jsx)(_.SettingSkeleton,{rows:3});if(o)return(0,t.jsx)(_.SettingError,{message:o.message});let a=s.reduce((e,t)=>e+t.toolCount,0),i=s.filter(e=>e.lastError).length;return(0,t.jsxs)(_.SettingScreen,{footer:(0,t.jsx)(_.SettingRailNote,{children:0===s.length?"Nothing connected yet — a preset is the shortest way in":(0,t.jsxs)(t.Fragment,{children:[s.length," connected · ",a," tools",i>0&&` \xb7 ${i} failed`]})}),children:[(0,t.jsx)(_.SettingGroup,{label:"Connected",children:(0,t.jsx)(_.SettingItems,{addRow:{label:"Add server",onClick:()=>ee()},children:s.map(e=>(0,t.jsx)(Q,{server:e},e.name))})}),(0,t.jsx)(el,{filter:e,onFilter:n,onPreset:ee})]})},"openMcpRegister",0,ee,"reportConnect",0,ei],787800)},333999,e=>{"use strict";var t=e.i(271645),n=e.i(647163);e.s(["useObjectState",0,e=>{let[s,r]=(0,t.useState)(e);return[s,(0,t.useMemo)(()=>{let e=e=>{r(t=>{let s=(0,n.isFunction)(e)?e(t):e;return Object.keys(s).some(e=>!Object.is(t[e],s[e]))?{...t,...s}:t})},t=new Map;return new Proxy(e,{get(s,r,o){if("symbol"==typeof r)return Reflect.get(s,r,o);let a=t.get(r);return a||(a=t=>{e(e=>({[r]:(0,n.isFunction)(t)?t(e[r]):t}))},t.set(r,a)),a}})},[])]}])},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)}]);
|