@alook/app 0.0.137 → 0.0.139
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/bundled/email-worker/index.js +19 -9
- package/bundled/web/.open-next/.build/durable-objects/queue.js +5 -5
- package/bundled/web/.open-next/assets/BUILD_ID +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/{0njval22g1rht.js → 0gadq1gaq7l2d.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/{2n2-erdcjib3l.js → 0pqa0bk3fnq2q.js} +2 -2
- package/bundled/web/.open-next/assets/_next/static/chunks/0pydx20mmtmb-.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/{412d684t3r9n2.js → 0u04xzcqoxacf.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/{24uei2njvsgf4.js → 10ey8by6dfgey.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/{07ib-ldk87gmo.js → 1c0k_1upngs79.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/1fs7xmjtwdhjj.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/{1n2ogp1w_pw5c.js → 1l3nq6kc3fbh-.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/{19j0bml2m-9uo.js → 22y46i-vrrny_.js} +3 -3
- package/bundled/web/.open-next/assets/_next/static/chunks/25z9kj3uj7xzn.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/{18pvrsqlzwvzb.js → 2h7oy-ljwoem9.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/{1uj4q_n378l_e.js → 2qc57pol1-1f3.js} +3 -3
- package/bundled/web/.open-next/assets/_next/static/chunks/2usqt49xbpqd2.css +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/3rbv_zutwzuxv.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/{1ksb3nu_qkssl.js → 41k5317-tm9ix.js} +1 -1
- package/bundled/web/.open-next/cache/{h1hjyI_Nl636o2wkYxPeR → 0z9UpPLBZKa_jgTjfoBR5}/_global-error.cache +1 -1
- package/bundled/web/.open-next/cache/{h1hjyI_Nl636o2wkYxPeR → 0z9UpPLBZKa_jgTjfoBR5}/_not-found.cache +1 -1
- package/bundled/web/.open-next/cache/{h1hjyI_Nl636o2wkYxPeR → 0z9UpPLBZKa_jgTjfoBR5}/device.cache +1 -1
- package/bundled/web/.open-next/cache/{h1hjyI_Nl636o2wkYxPeR → 0z9UpPLBZKa_jgTjfoBR5}/privacy.cache +1 -1
- package/bundled/web/.open-next/cache/{h1hjyI_Nl636o2wkYxPeR → 0z9UpPLBZKa_jgTjfoBR5}/sitemap.xml.cache +1 -1
- package/bundled/web/.open-next/cloudflare/cache-assets-manifest.sql +1 -1
- package/bundled/web/.open-next/cloudflare/init.js +1 -1
- package/bundled/web/.open-next/dynamodb-provider/dynamodb-cache.json +1 -1
- package/bundled/web/.open-next/middleware/handler.mjs +7 -7
- package/bundled/web/.open-next/server-functions/default/src/web/.next/BUILD_ID +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/app-path-routes-manifest.json +1 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/build-manifest.json +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/prerender-manifest.json +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/required-server-files.json +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/routes-manifest.json +8 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/invite/[token]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/studio/new/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/activity/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/chat/[convId]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/chat/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/email/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/files/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/meetings/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/new/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/calendar/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/flags/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/help/email-setup/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/home/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/issues/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/runtimes/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/settings/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/traces/[traceId]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/traces/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/unread/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/workspaces/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(auth)/sign-in/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/agent-links/route.js +4 -4
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/agents/[id]/workspace/browse/route.js +5 -5
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/agents/active-task-counts/route.js +5 -5
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/artifacts/[id]/thumbnail/route.js +14 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/artifacts/[id]/thumbnail/route_client-reference-manifest.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/artifacts/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/email/[id]/raw/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/tasks/[id]/retry/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/device/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/templates/[id]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/templates/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app-paths-manifest.json +1 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/0_kl__next-internal_server_app_api_artifacts_[id]_thumbnail_route_actions_17k4myq.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0255f4r._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__03zvu2n._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__055kbgp._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__05b3ysj._.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__09-j82k._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__09psmu_._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0eaeyl_._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0gkkbf4._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0t2tu5g._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0wd6xqg._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__155l597._.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__18yr8rv._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__1_d30qf._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__1bu3ajw._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__1g-mlb0._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__1k1navi._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__1kg1kju._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__1lpr5ex._.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__1pmcw25._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[turbopack]_runtime.js +19 -17
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_03r3es0._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0591v0o._.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_059g9--._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_06fjxe_._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_08gc1s_._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0ulry_i._.js → _0m_ehw8._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0n8pg0d._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0p79t7w._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0r2vuif._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0v95a0y._.js +4 -4
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_12qkx0d._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_139j3zh._.js +4 -4
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_1a2lyoh._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_1bq9v_v._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_1eu061o._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_1i4egv6._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_1i9fvyt._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_1nfaney._.js +4 -4
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_1pn2do-._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_1tu2mle._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_1wx8s3g._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[root-of-the-server]__02a8jxi._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{[root-of-the-server]__172hwkq._.js → [root-of-the-server]__1e237f4._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[root-of-the-server]__1nnp8st._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[turbopack]_runtime.js +19 -17
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_04ht2b1._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_09v4-yk._.js +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{_0kozrym._.js → _0g_x3qh._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0lil2o-._.js +65 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0qgcnj5._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{_00ft3vz._.js → _10-8eci._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_15s-tjk._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{_17z3ujw._.js → _19hsbaa._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_1vs9m39._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_1xq5127._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{node_modules__pnpm_0wq6umk._.js → node_modules__pnpm_0-sy0jc._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{node_modules__pnpm_0fjz-0c._.js → node_modules__pnpm_03t1_eh._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{node_modules__pnpm_0s5w--e._.js → node_modules__pnpm_0b_f_5l._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{node_modules__pnpm_1ve6v4p._.js → node_modules__pnpm_0lmr_qu._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{node_modules__pnpm_17siyfl._.js → node_modules__pnpm_0os8mdu._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{node_modules__pnpm_1ajm7qp._.js → node_modules__pnpm_0pd1a42._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{node_modules__pnpm_1o8q6qh._.js → node_modules__pnpm_0z21f3h._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{node_modules__pnpm_198l9yo._.js → node_modules__pnpm_1tajvfi._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_0pwl5s4._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_1kzi5ju._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_app_(app)_w_[slug]_agents_[id]_email_page_tsx_0gv3qni._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_app_(app)_w_[slug]_home_page_tsx_0-vs82-._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_components_avatar_0hmu31-._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_components_home_home-page_tsx_1e1vr_i._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/middleware-build-manifest.js +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/middleware-manifest.json +5 -5
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/server-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/server-reference-manifest.json +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/handler.mjs +235 -235
- package/bundled/web/.open-next/server-functions/default/src/web/handler.mjs.meta.json +466 -347
- package/bundled/web/.open-next/server-functions/default/src/web/index.mjs +6 -6
- package/bundled/web/migrations/0042_artifact_thumbnail.sql +1 -0
- package/bundled/web/wrangler.toml +1 -1
- package/bundled/ws-do/index.js +18 -8
- package/dist/cli/index.js +22 -4
- package/dist/cli/session-runner.js +6 -4
- package/dist/index.js +1 -0
- package/package.json +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/05mvqqr0d48pd.css +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0b0bf61oxocmd.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/2l42wg35hly5d.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/2tyy_fxi6rlas.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/3ad50t_oqhpk_.js +0 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0_qhrkj._.js +0 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0csf1z3._.js +0 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_18iwzmu._.js +0 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_1xvbchf._.js +0 -65
- /package/bundled/web/.open-next/assets/_next/static/{h1hjyI_Nl636o2wkYxPeR → 0z9UpPLBZKa_jgTjfoBR5}/_buildManifest.js +0 -0
- /package/bundled/web/.open-next/assets/_next/static/{h1hjyI_Nl636o2wkYxPeR → 0z9UpPLBZKa_jgTjfoBR5}/_clientMiddlewareManifest.js +0 -0
- /package/bundled/web/.open-next/assets/_next/static/{h1hjyI_Nl636o2wkYxPeR → 0z9UpPLBZKa_jgTjfoBR5}/_ssgManifest.js +0 -0
- /package/bundled/web/.open-next/cache/{h1hjyI_Nl636o2wkYxPeR → 0z9UpPLBZKa_jgTjfoBR5}/robots.txt.cache +0 -0
|
@@ -24962,6 +24962,7 @@ var init_schema = __esm({
|
|
|
24962
24962
|
contentType: text("content_type").notNull().default("application/octet-stream"),
|
|
24963
24963
|
size: integer2("size").notNull(),
|
|
24964
24964
|
r2Key: text("r2_key").notNull(),
|
|
24965
|
+
thumbnailR2Key: text("thumbnail_r2_key"),
|
|
24965
24966
|
source: text("source").notNull().default("agent"),
|
|
24966
24967
|
createdAt: text("created_at").notNull().$defaultFn(() => (/* @__PURE__ */ new Date()).toISOString())
|
|
24967
24968
|
},
|
|
@@ -26316,17 +26317,19 @@ async function countRunningTasks(db, agentId, workspaceId, excludeTaskId) {
|
|
|
26316
26317
|
const rows = await db.select({ value: count3() }).from(agentTaskQueue).where(and(...conditions));
|
|
26317
26318
|
return Number(rows[0]?.value ?? 0);
|
|
26318
26319
|
}
|
|
26319
|
-
async function listActiveTaskCountsByWorkspace(db, workspaceId) {
|
|
26320
|
+
async function listActiveTaskCountsByWorkspace(db, workspaceId, agentIds) {
|
|
26321
|
+
const conditions = [
|
|
26322
|
+
eq(agentTaskQueue.workspaceId, workspaceId),
|
|
26323
|
+
inArray(agentTaskQueue.status, ["queued", "dispatched", "running"]),
|
|
26324
|
+
ne(agentTaskQueue.type, TASK_TYPES.KILL_TASK)
|
|
26325
|
+
];
|
|
26326
|
+
if (agentIds && agentIds.length > 0) {
|
|
26327
|
+
conditions.push(inArray(agentTaskQueue.agentId, agentIds));
|
|
26328
|
+
}
|
|
26320
26329
|
return db.select({
|
|
26321
26330
|
agentId: agentTaskQueue.agentId,
|
|
26322
26331
|
count: count3()
|
|
26323
|
-
}).from(agentTaskQueue).where(
|
|
26324
|
-
and(
|
|
26325
|
-
eq(agentTaskQueue.workspaceId, workspaceId),
|
|
26326
|
-
inArray(agentTaskQueue.status, ["queued", "dispatched", "running"]),
|
|
26327
|
-
ne(agentTaskQueue.type, TASK_TYPES.KILL_TASK)
|
|
26328
|
-
)
|
|
26329
|
-
).groupBy(agentTaskQueue.agentId).limit(200);
|
|
26332
|
+
}).from(agentTaskQueue).where(and(...conditions)).groupBy(agentTaskQueue.agentId).limit(200);
|
|
26330
26333
|
}
|
|
26331
26334
|
async function listActiveTasksByWorkspace(db, workspaceId, agentIds) {
|
|
26332
26335
|
const conditions = [
|
|
@@ -27503,6 +27506,7 @@ function artifactToResponse(row) {
|
|
|
27503
27506
|
content_type: row.contentType,
|
|
27504
27507
|
size: row.size,
|
|
27505
27508
|
source: row.source,
|
|
27509
|
+
has_thumbnail: row.thumbnailR2Key != null,
|
|
27506
27510
|
created_at: row.createdAt
|
|
27507
27511
|
};
|
|
27508
27512
|
}
|
|
@@ -28514,6 +28518,7 @@ var agent_link_exports = {};
|
|
|
28514
28518
|
__export(agent_link_exports, {
|
|
28515
28519
|
create: () => create,
|
|
28516
28520
|
getAllColleaguesForWorkspace: () => getAllColleaguesForWorkspace,
|
|
28521
|
+
getById: () => getById,
|
|
28517
28522
|
getByPair: () => getByPair,
|
|
28518
28523
|
getColleaguesForAgent: () => getColleaguesForAgent,
|
|
28519
28524
|
getColleaguesForAgents: () => getColleaguesForAgents,
|
|
@@ -28581,6 +28586,10 @@ async function upsertByPair(db, data) {
|
|
|
28581
28586
|
const created = await create(db, data);
|
|
28582
28587
|
return { row: created, created: true };
|
|
28583
28588
|
}
|
|
28589
|
+
async function getById(db, id, workspaceId) {
|
|
28590
|
+
const rows = await db.select().from(agentLink).where(and(eq(agentLink.id, id), eq(agentLink.workspaceId, workspaceId)));
|
|
28591
|
+
return rows[0] ?? null;
|
|
28592
|
+
}
|
|
28584
28593
|
async function update(db, id, workspaceId, data) {
|
|
28585
28594
|
const rows = await db.update(agentLink).set({
|
|
28586
28595
|
instruction: data.instruction,
|
|
@@ -28693,6 +28702,7 @@ var init_agent_link = __esm({
|
|
|
28693
28702
|
__name(create, "create");
|
|
28694
28703
|
__name(getByPair, "getByPair");
|
|
28695
28704
|
__name(upsertByPair, "upsertByPair");
|
|
28705
|
+
__name(getById, "getById");
|
|
28696
28706
|
__name(update, "update");
|
|
28697
28707
|
__name(remove, "remove");
|
|
28698
28708
|
__name(getColleaguesForAgent, "getColleaguesForAgent");
|
|
@@ -29466,7 +29476,7 @@ var init_db_errors = __esm({
|
|
|
29466
29476
|
|
|
29467
29477
|
// ../shared/src/utils/slug.ts
|
|
29468
29478
|
function generateWorkspaceSlug() {
|
|
29469
|
-
return `
|
|
29479
|
+
return `company-${nanoid(8)}`;
|
|
29470
29480
|
}
|
|
29471
29481
|
var init_slug = __esm({
|
|
29472
29482
|
"../shared/src/utils/slug.ts"() {
|
|
@@ -156,7 +156,7 @@ var DOQueueHandler = class extends DurableObject {
|
|
|
156
156
|
method: "HEAD",
|
|
157
157
|
headers: {
|
|
158
158
|
// This is defined during build
|
|
159
|
-
"x-prerender-revalidate": "
|
|
159
|
+
"x-prerender-revalidate": "ad9eb5749e96d72f91a46e5bf04b9636",
|
|
160
160
|
"x-isr": "1"
|
|
161
161
|
},
|
|
162
162
|
// This one is kind of problematic, it will always show the wall time of the revalidation to `this.revalidationTimeout`
|
|
@@ -180,7 +180,7 @@ var DOQueueHandler = class extends DurableObject {
|
|
|
180
180
|
"INSERT OR REPLACE INTO sync (id, lastSuccess, buildId) VALUES (?, unixepoch(), ?)",
|
|
181
181
|
// We cannot use the deduplication id because it's not unique per route - every time a route is revalidated, the deduplication id is different.
|
|
182
182
|
`${host}${url}`,
|
|
183
|
-
"
|
|
183
|
+
"0z9UpPLBZKa_jgTjfoBR5"
|
|
184
184
|
);
|
|
185
185
|
}
|
|
186
186
|
this.routeInFailedState.delete(msg.MessageDeduplicationId);
|
|
@@ -232,7 +232,7 @@ var DOQueueHandler = class extends DurableObject {
|
|
|
232
232
|
}
|
|
233
233
|
this.routeInFailedState.set(msg.MessageDeduplicationId, updatedFailedState);
|
|
234
234
|
if (!this.disableSQLite) {
|
|
235
|
-
this.sql.exec("INSERT OR REPLACE INTO failed_state (id, data, buildId) VALUES (?, ?, ?)", msg.MessageDeduplicationId, JSON.stringify(updatedFailedState), "
|
|
235
|
+
this.sql.exec("INSERT OR REPLACE INTO failed_state (id, data, buildId) VALUES (?, ?, ?)", msg.MessageDeduplicationId, JSON.stringify(updatedFailedState), "0z9UpPLBZKa_jgTjfoBR5");
|
|
236
236
|
}
|
|
237
237
|
await this.addAlarm();
|
|
238
238
|
}
|
|
@@ -256,8 +256,8 @@ var DOQueueHandler = class extends DurableObject {
|
|
|
256
256
|
return;
|
|
257
257
|
this.sql.exec("CREATE TABLE IF NOT EXISTS failed_state (id TEXT PRIMARY KEY, data TEXT, buildId TEXT)");
|
|
258
258
|
this.sql.exec("CREATE TABLE IF NOT EXISTS sync (id TEXT PRIMARY KEY, lastSuccess INTEGER, buildId TEXT)");
|
|
259
|
-
this.sql.exec("DELETE FROM failed_state WHERE buildId != ?", "
|
|
260
|
-
this.sql.exec("DELETE FROM sync WHERE buildId != ?", "
|
|
259
|
+
this.sql.exec("DELETE FROM failed_state WHERE buildId != ?", "0z9UpPLBZKa_jgTjfoBR5");
|
|
260
|
+
this.sql.exec("DELETE FROM sync WHERE buildId != ?", "0z9UpPLBZKa_jgTjfoBR5");
|
|
261
261
|
const failedStateCursor = this.sql.exec("SELECT * FROM failed_state");
|
|
262
262
|
for (const row of failedStateCursor) {
|
|
263
263
|
this.routeInFailedState.set(row.id, JSON.parse(row.data));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
0z9UpPLBZKa_jgTjfoBR5
|
package/bundled/web/.open-next/assets/_next/static/chunks/{0njval22g1rht.js → 0gadq1gaq7l2d.js}
RENAMED
|
@@ -61,4 +61,4 @@ Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpattern
|
|
|
61
61
|
- Every interaction builds trust. Be empathetic, accurate, and efficient — resolve on first response when possible.
|
|
62
62
|
- Lead with acknowledgment, then solution or clear next steps. Use simple language.
|
|
63
63
|
- If you can't resolve immediately, set realistic expectations: what you'll do, by when.
|
|
64
|
-
- Track open issues proactively. Escalate complex or sensitive cases with full context.`,relationship:"Delegate support tasks with: customer issue summary, urgency level, prior interaction context, and resolution approach.\n\nReport back with: response drafted or sent, resolution status, follow-up schedule, and recurring patterns to flag."}]},{id:"custom",label:"Custom",description:"Build your own team from scratch",icon:"✨",members:[{role:"leader",description:"Coordinates work and replies to you",instructions:y}]}];function b(e){let t=new Set,s=[];for(let r=0;r<e;r++){let e,r=0;do e=(0,g.uniqueNamesGenerator)({dictionaries:[g.names],length:1,style:"capital"}),r++;while(t.has(e)&&r<100)t.add(e),s.push({name:e,avatarUrl:(0,x.serializeAvatarConfig)((0,x.randomConfig)())})}return s}function w({selected:e,onSelect:s,onBrowseTemplates:r}){return(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("h2",{className:"text-base font-semibold tracking-tight",children:"What will your company focus on?"}),r&&(0,t.jsxs)("button",{type:"button",onClick:r,className:"text-[11px] text-muted-foreground hover:text-foreground transition-colors underline underline-offset-2",children:["Browse templates ",(0,t.jsx)("span",{"aria-hidden":"true",children:"›"})]})]}),(0,t.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-3",children:v.map(r=>(0,t.jsxs)("button",{onClick:()=>s(r.id),className:(0,f.cn)("flex flex-col items-start gap-1 rounded-lg border p-4 text-left transition-all hover:border-foreground/30",e===r.id?"border-foreground/50 bg-muted/50":"border-border"),children:[(0,t.jsxs)("div",{className:"flex items-center justify-between w-full",children:[(0,t.jsx)("span",{className:"text-lg",children:r.icon}),(0,t.jsxs)("span",{className:"text-[10px] text-muted-foreground/70",children:[r.members.length," agent",r.members.length>1?"s":""]})]}),(0,t.jsx)("span",{className:"text-sm font-medium",children:r.label}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground leading-tight",children:r.description})]},r.id))})]})}var j=e.i(934351),C=e.i(758870),k=e.i(89110),N=e.i(855372);e.i(954194);var S=e.i(439769);let P={leader:"Lead",researcher:"Researcher",engineer:"Engineer",assistant:"Assistant"};function _({members:e,runtimes:s,onShuffle:r,onAssignRuntime:i}){let n=s.length>1&&i;return(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("h2",{className:"text-base font-semibold tracking-tight",children:"Your company"}),(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",onClick:r,className:"h-7 text-xs gap-1.5",children:[(0,t.jsx)(C.RefreshCw,{className:"size-3"}),"Shuffle"]})]}),(0,t.jsx)("div",{className:(0,f.cn)("grid gap-3 grid-cols-1",2===e.length&&"sm:grid-cols-2",3===e.length&&"sm:grid-cols-2 md:grid-cols-3",e.length>=4&&"sm:grid-cols-2 md:grid-cols-4"),children:e.map((e,r)=>{let a,o=e.avatarUrl?(0,x.parseAvatarUrl)(e.avatarUrl):null;return(0,t.jsxs)(j.Card,{size:"sm",className:"flex flex-col px-3 py-4 gap-2 h-full",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2.5",children:[o?(0,t.jsx)(x.AvatarRenderer,{config:o,size:36,className:"rounded-xl shrink-0"}):(0,t.jsx)("div",{className:"size-9 rounded-xl bg-muted flex items-center justify-center text-sm font-semibold shrink-0",children:e.name.charAt(0)}),(0,t.jsxs)("div",{className:"flex flex-col items-start gap-0.5",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:e.name}),(0,t.jsx)("span",{className:"text-[10px] text-muted-foreground bg-muted/60 px-1.5 py-0.5 rounded",children:P[e.role]})]})]}),(0,t.jsx)("p",{className:"text-[10px] text-muted-foreground/70 font-mono truncate",children:(0,S.toAlookAddress)(e.emailHandle||e.name.toLowerCase())}),(0,t.jsx)("p",{className:"text-[11px] text-muted-foreground leading-snug flex-1",children:e.description}),n&&(a=s.find(t=>t.id===e.runtimeId),(0,t.jsx)("div",{className:"mt-1",children:(0,t.jsxs)(k.Select,{value:e.runtimeId,onValueChange:e=>{e&&i(r,e)},children:[(0,t.jsx)(k.SelectTrigger,{className:"h-7 text-[11px]",children:(0,t.jsxs)("div",{className:"flex items-center gap-1.5 truncate",children:[a&&(0,t.jsx)(N.ProviderLogo,{provider:a.provider||"",className:"size-3 shrink-0"}),(0,t.jsx)("span",{className:"truncate",children:a?.provider||a?.runtime_mode||"Select"})]})}),(0,t.jsx)(k.SelectContent,{children:s.map(e=>(0,t.jsx)(k.SelectItem,{value:e.id,children:e.provider||e.runtime_mode},e.id))})]})}))]},r)})})]})}var z=e.i(824863),O=e.i(222862),R=e.i(642342),A=e.i(371406);e.s(["StudioOnboardingClient",0,function({workspaceId:e,workspaceSlug:f,workspaceName:g,initialTemplate:x}){let y=(0,r.useRouter)(),[j,C]=(0,s.useState)([]),[k,N]=(0,s.useState)(!0),[S,P]=(0,s.useState)(x?x.baseScenario:null),[L,M]=(0,s.useState)([]),[I,E]=(0,s.useState)(!1),[D,F]=(0,s.useState)(""),[B,H]=(0,s.useState)(!1),[T,U]=(0,s.useState)(!1),[Y,V]=(0,s.useState)(!1),q=(0,z.isTauri)()&&(0,z.isDesktop)(),G=j.filter(e=>"online"===e.status),$=G.length>0;(0,s.useEffect)(()=>{(0,O.listRuntimes)(e).then(e=>{C(e),e.some(e=>"online"===e.status)&&(U(!0),V(!0))}).catch(()=>{}).finally(()=>N(!1))},[e]);let X=(0,s.useCallback)(t=>{"runtime.registered"===t.type&&t.workspaceId===e?(U(!0),V(!0),(0,O.listRuntimes)(e).then(C).catch(()=>{})):"runtime.status"===t.type&&t.workspaceId===e&&(U(!0),"online"===t.status?V(!0):V(!1))},[e]);(0,R.useUserWs)(X);let W=(0,s.useCallback)(async()=>{H(!0);try{let t=await (0,O.createMachineToken)("cli",e);if(F(t.token),q){let s=await (0,z.tauriInvoke)("register_cli",{token:t.token});s.success?(U(!0),V(!0),(0,O.listRuntimes)(e).then(C).catch(()=>{})):d.toast.error(s.message||"Auto-registration failed")}}catch{d.toast.error("Failed to generate token")}finally{H(!1)}},[e,q]);(0,s.useEffect)(()=>{let e=G[0]?.id;e&&M(t=>0!==t.length&&t.some(e=>!e.runtimeId)?t.map(t=>t.runtimeId?t:{...t,runtimeId:e}):t)},[G]);let K=(0,s.useCallback)(async e=>{try{let t=await fetch("/api/studios/check-handles",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({names:e})});if(!t.ok)return null;return await t.json()}catch{return null}},[]);(0,s.useEffect)(()=>{if(!x||k||L.length>0)return;let e=b(x.members.length),t=G[0]?.id||"",s=x.members.map((s,r)=>({name:e[r].name,role:s.role,description:s.description,instructions:s.instructions,avatarUrl:e[r].avatarUrl,runtimeId:t,relationship:s.relationship}));M(s),K(s.map(e=>e.name)).then(e=>{e&&M(t=>t.map(t=>{let s=e.find(e=>e.name===t.name);return s?{...t,emailHandle:s.handle}:t}))})},[x,k]);let Z=async e=>{P(e);let t=v.find(t=>t.id===e),s=b(t.members.length),r=G[0]?.id||"",a=t.members.map((e,t)=>({name:s[t].name,role:e.role,description:e.description,instructions:e.instructions,avatarUrl:s[t].avatarUrl,runtimeId:r,relationship:e.relationship}));M(a);let i=await K(a.map(e=>e.name));i&&M(e=>e.map(e=>{let t=i.find(t=>t.name===e.name);return t?{...e,emailHandle:t.handle}:e}))},J=async()=>{let e=b(L.length),t=L.map((t,s)=>({...t,name:e[s].name,avatarUrl:e[s].avatarUrl,emailHandle:void 0}));M(t);let s=await K(t.map(e=>e.name));s&&M(e=>e.map(e=>{let t=s.find(t=>t.name===e.name);return t?{...e,emailHandle:t.handle}:e}))},Q=async()=>{E(!0);try{let t=await fetch("/api/studios",{method:"POST",headers:{"Content-Type":"application/json","X-Workspace-ID":e},body:JSON.stringify({name:void 0,scenario:S,members:L.map(e=>({name:e.name,role:e.role,runtime_id:e.runtimeId,description:e.description,instructions:e.instructions,avatar_url:e.avatarUrl||null,email_handle:e.emailHandle||void 0,relationship:e.relationship||void 0}))})});if(!t.ok){let e=await t.json();throw Error(e.error||"Failed to create company")}let s=await t.json();await fetch(`/api/workspaces/${e}/onboarded`,{method:"POST"}).catch(()=>{}),(0,p.trackWorkspaceCreated)("onboarding"),(0,p.trackOnboardingCompleted)({template_used:S??void 0,agent_count:L.length});for(let e=0;e<L.length;e++)(0,p.trackAgentCreated)({is_first_agent:0===e,has_email:!!L[e].emailHandle});d.toast.success("Company created!"),y.push(`/w/${s.workspace.slug}/agents/${s.leader_agent_id}`)}catch(e){d.toast.error(e instanceof Error?e.message:"Failed to create company"),E(!1)}},ee=S&&L.length>0&&L.every(e=>e.runtimeId)&&($||T&&Y||q);return S?(0,t.jsx)(h.PublicLayout,{leftSlot:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:()=>y.push("/workspaces"),children:[(0,t.jsx)(c.LayoutGrid,{className:"size-3 mr-1.5"}),"Workspaces"]}),(0,t.jsx)("span",{className:"text-muted-foreground/40",children:"/"}),(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:()=>P(null),children:[(0,t.jsx)(l.ArrowLeft,{className:"size-3 mr-1.5"}),"Back"]})]}),rightSlot:(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:async()=>{await (0,m.clearAllCache)(),(0,u.signOut)({fetchOptions:{onSuccess:()=>y.push("/sign-in")}})},children:[(0,t.jsx)(o.LogOut,{className:"size-3 mr-1.5"}),"Sign out"]}),children:(0,t.jsxs)("div",{className:"mx-auto w-full max-w-3xl space-y-10 px-6 py-14",children:[(0,t.jsx)("div",{className:"text-center",children:(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",style:{fontFamily:"var(--font-news)"},children:"Build your company"})}),k?(0,t.jsx)("div",{className:"flex justify-center py-8",children:(0,t.jsx)(i.Loader2,{className:"size-5 animate-spin text-muted-foreground"})}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(_,{members:L,runtimes:G,onShuffle:J,onAssignRuntime:(e,t)=>{M(s=>s.map((s,r)=>r===e?{...s,runtimeId:t}:s))}}),!q&&(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)("h2",{className:"text-base font-semibold tracking-tight",children:"Connect a computer"}),$||T&&Y?(0,t.jsxs)("p",{className:"text-xs text-emerald-600 flex items-center gap-1",children:[(0,t.jsx)(n.CheckCircle2,{className:"size-3"})," Computer connected"]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:"Your company needs a connected computer to run tasks."}),(0,t.jsx)("div",{className:"rounded-xl bg-muted/40 p-5",children:(0,t.jsx)(A.ConnectMachineSteps,{generatedToken:D,generatingToken:B,onGenerateToken:W,registered:T,daemonOnline:Y})})]})]}),(0,t.jsx)(a.Button,{onClick:Q,disabled:!ee||I,className:"w-full",size:"lg",children:I?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(i.Loader2,{className:"size-4 animate-spin mr-2"}),"Launching..."]}):"Launch company"})]})]})}):(0,t.jsx)(h.PublicLayout,{leftSlot:(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:()=>y.push("/workspaces"),children:[(0,t.jsx)(c.LayoutGrid,{className:"size-3 mr-1.5"}),"Workspaces"]}),rightSlot:(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:async()=>{await (0,m.clearAllCache)(),(0,u.signOut)({fetchOptions:{onSuccess:()=>y.push("/sign-in")}})},children:[(0,t.jsx)(o.LogOut,{className:"size-3 mr-1.5"}),"Sign out"]}),mainClassName:"flex items-center justify-center",children:(0,t.jsxs)("div",{className:"w-full max-w-3xl space-y-8 px-6 py-6",children:[(0,t.jsxs)("div",{className:"text-center space-y-2",children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",style:{fontFamily:"var(--font-news)"},children:"What will your company do?"}),(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:"Pick a focus area. You can always add more agents later."})]}),(0,t.jsx)(w,{selected:S,onSelect:Z,onBrowseTemplates:()=>y.push(`/templates?workspace_id=${e}`)}),(0,t.jsx)("div",{className:"flex justify-center pt-2",children:(0,t.jsx)("button",{type:"button",onClick:async()=>{await fetch(`/api/workspaces/${e}/onboarded`,{method:"POST"}).catch(()=>{}),y.push(`/w/${f}/home`)},className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:"Skip for now"})})]})})}],319755)}]);
|
|
64
|
+
- Track open issues proactively. Escalate complex or sensitive cases with full context.`,relationship:"Delegate support tasks with: customer issue summary, urgency level, prior interaction context, and resolution approach.\n\nReport back with: response drafted or sent, resolution status, follow-up schedule, and recurring patterns to flag."}]},{id:"custom",label:"Custom",description:"Build your own team from scratch",icon:"✨",members:[{role:"leader",description:"Coordinates work and replies to you",instructions:y}]}];function b(e){let t=new Set,s=[];for(let r=0;r<e;r++){let e,r=0;do e=(0,g.uniqueNamesGenerator)({dictionaries:[g.names],length:1,style:"capital"}),r++;while(t.has(e)&&r<100)t.add(e),s.push({name:e,avatarUrl:(0,x.serializeAvatarConfig)((0,x.randomConfig)())})}return s}function w({selected:e,onSelect:s,onBrowseTemplates:r}){return(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("h2",{className:"text-base font-semibold tracking-tight",children:"What will your company focus on?"}),r&&(0,t.jsxs)("button",{type:"button",onClick:r,className:"text-[11px] text-muted-foreground hover:text-foreground transition-colors underline underline-offset-2",children:["Browse templates ",(0,t.jsx)("span",{"aria-hidden":"true",children:"›"})]})]}),(0,t.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-3",children:v.map(r=>(0,t.jsxs)("button",{onClick:()=>s(r.id),className:(0,f.cn)("flex flex-col items-start gap-1 rounded-lg border p-4 text-left transition-all hover:border-foreground/30",e===r.id?"border-foreground/50 bg-muted/50":"border-border"),children:[(0,t.jsxs)("div",{className:"flex items-center justify-between w-full",children:[(0,t.jsx)("span",{className:"text-lg",children:r.icon}),(0,t.jsxs)("span",{className:"text-[10px] text-muted-foreground/70",children:[r.members.length," agent",r.members.length>1?"s":""]})]}),(0,t.jsx)("span",{className:"text-sm font-medium",children:r.label}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground leading-tight",children:r.description})]},r.id))})]})}var j=e.i(934351),C=e.i(758870),k=e.i(89110),N=e.i(855372);e.i(954194);var S=e.i(439769);let P={leader:"Lead",researcher:"Researcher",engineer:"Engineer",assistant:"Assistant"};function _({members:e,runtimes:s,onShuffle:r,onAssignRuntime:i}){let n=s.length>1&&i;return(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("h2",{className:"text-base font-semibold tracking-tight",children:"Your company"}),(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",onClick:r,className:"h-7 text-xs gap-1.5",children:[(0,t.jsx)(C.RefreshCw,{className:"size-3"}),"Shuffle"]})]}),(0,t.jsx)("div",{className:(0,f.cn)("grid gap-3 grid-cols-1",2===e.length&&"sm:grid-cols-2",3===e.length&&"sm:grid-cols-2 md:grid-cols-3",e.length>=4&&"sm:grid-cols-2 md:grid-cols-4"),children:e.map((e,r)=>{let a,o=e.avatarUrl?(0,x.parseAvatarUrl)(e.avatarUrl):null;return(0,t.jsxs)(j.Card,{size:"sm",className:"flex flex-col px-3 py-4 gap-2 h-full",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2.5",children:[o?(0,t.jsx)(x.AvatarRenderer,{config:o,size:36,className:"rounded-xl shrink-0"}):(0,t.jsx)("div",{className:"size-9 rounded-xl bg-muted flex items-center justify-center text-sm font-semibold shrink-0",children:e.name.charAt(0)}),(0,t.jsxs)("div",{className:"flex flex-col items-start gap-0.5",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:e.name}),(0,t.jsx)("span",{className:"text-[10px] text-muted-foreground bg-muted/60 px-1.5 py-0.5 rounded",children:P[e.role]})]})]}),(0,t.jsx)("p",{className:"text-[10px] text-muted-foreground/70 font-mono truncate",children:(0,S.toAlookAddress)(e.emailHandle||e.name.toLowerCase())}),(0,t.jsx)("p",{className:"text-[11px] text-muted-foreground leading-snug flex-1",children:e.description}),n&&(a=s.find(t=>t.id===e.runtimeId),(0,t.jsx)("div",{className:"mt-1",children:(0,t.jsxs)(k.Select,{value:e.runtimeId,onValueChange:e=>{e&&i(r,e)},children:[(0,t.jsx)(k.SelectTrigger,{className:"h-7 text-[11px]",children:(0,t.jsxs)("div",{className:"flex items-center gap-1.5 truncate",children:[a&&(0,t.jsx)(N.ProviderLogo,{provider:a.provider||"",className:"size-3 shrink-0"}),(0,t.jsx)("span",{className:"truncate",children:a?.provider||a?.runtime_mode||"Select"})]})}),(0,t.jsx)(k.SelectContent,{children:s.map(e=>(0,t.jsx)(k.SelectItem,{value:e.id,children:e.provider||e.runtime_mode},e.id))})]})}))]},r)})})]})}var z=e.i(824863),O=e.i(222862),R=e.i(642342),A=e.i(371406);e.s(["StudioOnboardingClient",0,function({workspaceId:e,workspaceSlug:f,initialTemplate:g}){let x=(0,r.useRouter)(),[y,j]=(0,s.useState)([]),[C,k]=(0,s.useState)(!0),[N,S]=(0,s.useState)(g?g.baseScenario:null),[P,L]=(0,s.useState)([]),[M,I]=(0,s.useState)(!1),[E,D]=(0,s.useState)(""),[F,B]=(0,s.useState)(!1),[H,T]=(0,s.useState)(!1),[U,Y]=(0,s.useState)(!1),V=(0,z.isTauri)()&&(0,z.isDesktop)(),q=y.filter(e=>"online"===e.status),G=q.length>0;(0,s.useEffect)(()=>{(0,O.listRuntimes)(e).then(e=>{j(e),e.some(e=>"online"===e.status)&&(T(!0),Y(!0))}).catch(()=>{}).finally(()=>k(!1))},[e]);let $=(0,s.useCallback)(t=>{"runtime.registered"===t.type&&t.workspaceId===e?(T(!0),Y(!0),(0,O.listRuntimes)(e).then(j).catch(()=>{})):"runtime.status"===t.type&&t.workspaceId===e&&(T(!0),"online"===t.status?Y(!0):Y(!1))},[e]);(0,R.useUserWs)($);let X=(0,s.useCallback)(async()=>{B(!0);try{let t=await (0,O.createMachineToken)("cli",e);if(D(t.token),V){let s=await (0,z.tauriInvoke)("register_cli",{token:t.token});s.success?(T(!0),Y(!0),(0,O.listRuntimes)(e).then(j).catch(()=>{})):d.toast.error(s.message||"Auto-registration failed")}}catch{d.toast.error("Failed to generate token")}finally{B(!1)}},[e,V]);(0,s.useEffect)(()=>{let e=q[0]?.id;e&&L(t=>0!==t.length&&t.some(e=>!e.runtimeId)?t.map(t=>t.runtimeId?t:{...t,runtimeId:e}):t)},[q]);let W=(0,s.useCallback)(async e=>{try{let t=await fetch("/api/studios/check-handles",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({names:e})});if(!t.ok)return null;return await t.json()}catch{return null}},[]);(0,s.useEffect)(()=>{if(!g||C||P.length>0)return;let e=b(g.members.length),t=q[0]?.id||"",s=g.members.map((s,r)=>({name:e[r].name,role:s.role,description:s.description,instructions:s.instructions,avatarUrl:e[r].avatarUrl,runtimeId:t,relationship:s.relationship}));L(s),W(s.map(e=>e.name)).then(e=>{e&&L(t=>t.map(t=>{let s=e.find(e=>e.name===t.name);return s?{...t,emailHandle:s.handle}:t}))})},[g,C]);let K=async e=>{S(e);let t=v.find(t=>t.id===e),s=b(t.members.length),r=q[0]?.id||"",a=t.members.map((e,t)=>({name:s[t].name,role:e.role,description:e.description,instructions:e.instructions,avatarUrl:s[t].avatarUrl,runtimeId:r,relationship:e.relationship}));L(a);let i=await W(a.map(e=>e.name));i&&L(e=>e.map(e=>{let t=i.find(t=>t.name===e.name);return t?{...e,emailHandle:t.handle}:e}))},Z=async()=>{let e=b(P.length),t=P.map((t,s)=>({...t,name:e[s].name,avatarUrl:e[s].avatarUrl,emailHandle:void 0}));L(t);let s=await W(t.map(e=>e.name));s&&L(e=>e.map(e=>{let t=s.find(t=>t.name===e.name);return t?{...e,emailHandle:t.handle}:e}))},J=async()=>{I(!0);try{let t=await fetch("/api/studios",{method:"POST",headers:{"Content-Type":"application/json","X-Workspace-ID":e},body:JSON.stringify({name:void 0,scenario:N,members:P.map(e=>({name:e.name,role:e.role,runtime_id:e.runtimeId,description:e.description,instructions:e.instructions,avatar_url:e.avatarUrl||null,email_handle:e.emailHandle||void 0,relationship:e.relationship||void 0}))})});if(!t.ok){let e=await t.json();throw Error(e.error||"Failed to create company")}let s=await t.json();await fetch(`/api/workspaces/${e}/onboarded`,{method:"POST"}).catch(()=>{}),(0,p.trackWorkspaceCreated)("onboarding"),(0,p.trackOnboardingCompleted)({template_used:N??void 0,agent_count:P.length});for(let e=0;e<P.length;e++)(0,p.trackAgentCreated)({is_first_agent:0===e,has_email:!!P[e].emailHandle});d.toast.success("Company created!"),x.push(`/w/${s.workspace.slug}/agents/${s.leader_agent_id}`)}catch(e){d.toast.error(e instanceof Error?e.message:"Failed to create company"),I(!1)}},Q=N&&P.length>0&&P.every(e=>e.runtimeId)&&(G||H&&U||V);return N?(0,t.jsx)(h.PublicLayout,{leftSlot:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:()=>x.push("/workspaces"),children:[(0,t.jsx)(c.LayoutGrid,{className:"size-3 mr-1.5"}),"Workspaces"]}),(0,t.jsx)("span",{className:"text-muted-foreground/40",children:"/"}),(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:()=>S(null),children:[(0,t.jsx)(l.ArrowLeft,{className:"size-3 mr-1.5"}),"Back"]})]}),rightSlot:(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:async()=>{await (0,m.clearAllCache)(),(0,u.signOut)({fetchOptions:{onSuccess:()=>x.push("/sign-in")}})},children:[(0,t.jsx)(o.LogOut,{className:"size-3 mr-1.5"}),"Sign out"]}),children:(0,t.jsxs)("div",{className:"mx-auto w-full max-w-3xl space-y-10 px-6 py-14",children:[(0,t.jsx)("div",{className:"text-center",children:(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",style:{fontFamily:"var(--font-news)"},children:"Build your company"})}),C?(0,t.jsx)("div",{className:"flex justify-center py-8",children:(0,t.jsx)(i.Loader2,{className:"size-5 animate-spin text-muted-foreground"})}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(_,{members:P,runtimes:q,onShuffle:Z,onAssignRuntime:(e,t)=>{L(s=>s.map((s,r)=>r===e?{...s,runtimeId:t}:s))}}),!V&&(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)("h2",{className:"text-base font-semibold tracking-tight",children:"Connect a computer"}),G||H&&U?(0,t.jsxs)("p",{className:"text-xs text-emerald-600 flex items-center gap-1",children:[(0,t.jsx)(n.CheckCircle2,{className:"size-3"})," Computer connected"]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:"Your company needs a connected computer to run tasks."}),(0,t.jsx)("div",{className:"rounded-xl bg-muted/40 p-5",children:(0,t.jsx)(A.ConnectMachineSteps,{generatedToken:E,generatingToken:F,onGenerateToken:X,registered:H,daemonOnline:U})})]})]}),(0,t.jsx)(a.Button,{onClick:J,disabled:!Q||M,className:"w-full",size:"lg",children:M?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(i.Loader2,{className:"size-4 animate-spin mr-2"}),"Launching..."]}):"Launch company"})]})]})}):(0,t.jsx)(h.PublicLayout,{leftSlot:(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:()=>x.push("/workspaces"),children:[(0,t.jsx)(c.LayoutGrid,{className:"size-3 mr-1.5"}),"Workspaces"]}),rightSlot:(0,t.jsxs)(a.Button,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground",onClick:async()=>{await (0,m.clearAllCache)(),(0,u.signOut)({fetchOptions:{onSuccess:()=>x.push("/sign-in")}})},children:[(0,t.jsx)(o.LogOut,{className:"size-3 mr-1.5"}),"Sign out"]}),mainClassName:"flex items-center justify-center",children:(0,t.jsxs)("div",{className:"w-full max-w-3xl space-y-8 px-6 py-6",children:[(0,t.jsxs)("div",{className:"text-center space-y-2",children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",style:{fontFamily:"var(--font-news)"},children:"What will your company do?"}),(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:"Pick a focus area. You can always add more agents later."})]}),(0,t.jsx)(w,{selected:N,onSelect:K,onBrowseTemplates:()=>x.push(`/templates?workspace_id=${e}`)}),(0,t.jsx)("div",{className:"flex justify-center pt-2",children:(0,t.jsx)("button",{type:"button",onClick:async()=>{await fetch(`/api/workspaces/${e}/onboarded`,{method:"POST"}).catch(()=>{}),x.push(`/w/${f}/home`)},className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:"Skip for now"})})]})})}],319755)}]);
|
package/bundled/web/.open-next/assets/_next/static/chunks/{2n2-erdcjib3l.js → 0pqa0bk3fnq2q.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,275351,e=>{"use strict";let t,a,r,n,i=(e,t)=>t.some(t=>e instanceof t),s=new WeakMap,o=new WeakMap,l=new WeakMap,c={get(e,t,a){if(e instanceof IDBTransaction){if("done"===t)return s.get(e);if("store"===t)return a.objectStoreNames[1]?void 0:a.objectStore(a.objectStoreNames[0])}return d(e[t])},set:(e,t,a)=>(e[t]=a,!0),has:(e,t)=>e instanceof IDBTransaction&&("done"===t||"store"===t)||t in e};function d(e){if(e instanceof IDBRequest){let t;return t=new Promise((t,a)=>{let r=()=>{e.removeEventListener("success",n),e.removeEventListener("error",i)},n=()=>{t(d(e.result)),r()},i=()=>{a(e.error),r()};e.addEventListener("success",n),e.addEventListener("error",i)}),l.set(t,e),t}if(o.has(e))return o.get(e);let t=function(e){if("function"==typeof e)return(n||(n=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(e)?function(...t){return e.apply(u(this),t),d(this.request)}:function(...t){return d(e.apply(u(this),t))};return(e instanceof IDBTransaction&&function(e){if(s.has(e))return;let t=new Promise((t,a)=>{let r=()=>{e.removeEventListener("complete",n),e.removeEventListener("error",i),e.removeEventListener("abort",i)},n=()=>{t(),r()},i=()=>{a(e.error||new DOMException("AbortError","AbortError")),r()};e.addEventListener("complete",n),e.addEventListener("error",i),e.addEventListener("abort",i)});s.set(e,t)}(e),i(e,r||(r=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])))?new Proxy(e,c):e}(e);return t!==e&&(o.set(e,t),l.set(t,e)),t}let u=e=>l.get(e),p=["get","getKey","getAll","getAllKeys","count"],m=["put","add","delete","clear"],f=new Map;function g(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&"string"==typeof t))return;if(f.get(t))return f.get(t);let a=t.replace(/FromIndex$/,""),r=t!==a,n=m.includes(a);if(!(a in(r?IDBIndex:IDBObjectStore).prototype)||!(n||p.includes(a)))return;let i=async function(e,...t){let i=this.transaction(e,n?"readwrite":"readonly"),s=i.store;return r&&(s=s.index(t.shift())),(await Promise.all([s[a](...t),n&&i.done]))[0]};return f.set(t,i),i}c={...t=c,get:(e,a,r)=>g(e,a)||t.get(e,a,r),has:(e,a)=>!!g(e,a)||t.has(e,a)};let h=["continue","continuePrimaryKey","advance"],y={},b=new WeakMap,w=new WeakMap,v={get(e,t){if(!h.includes(t))return e[t];let a=y[t];return a||(a=y[t]=function(...e){b.set(this,w.get(this)[t](...e))}),a}};async function*$(...e){let t=this;if(t instanceof IDBCursor||(t=await t.openCursor(...e)),!t)return;let a=new Proxy(t,v);for(w.set(a,t),l.set(a,u(t));t;)yield a,t=await (b.get(a)||t.continue()),b.delete(a)}function k(e,t){return t===Symbol.asyncIterator&&i(e,[IDBIndex,IDBObjectStore,IDBCursor])||"iterate"===t&&i(e,[IDBIndex,IDBObjectStore])}c={...a=c,get:(e,t,r)=>k(e,t)?$:a.get(e,t,r),has:(e,t)=>k(e,t)||a.has(e,t)};let x=null,S=null;function E(e){return"u"<typeof indexedDB?null:x&&S===e?x:(S=e,x=function(e,{blocked:t,upgrade:a,blocking:r,terminated:n}={}){let i=indexedDB.open(e,4),s=d(i);return a&&i.addEventListener("upgradeneeded",e=>{a(d(i.result),e.oldVersion,e.newVersion,d(i.transaction),e)}),t&&i.addEventListener("blocked",e=>t(e.oldVersion,e.newVersion,e)),s.then(e=>{n&&e.addEventListener("close",()=>n()),r&&e.addEventListener("versionchange",e=>r(e.oldVersion,e.newVersion,e))}).catch(()=>{}),s}(`alook-chat-cache-${e}`,{upgrade(e,t){if(t<1){let t=e.createObjectStore("messages",{keyPath:["conversation_id","id"]});t.createIndex("by-conversation","conversation_id",{unique:!1}),t.createIndex("by-created",["conversation_id","created_at"],{unique:!1}),e.createObjectStore("cache_meta",{keyPath:"conversation_id"})}t<3&&e.createObjectStore("last_open",{keyPath:"key"}).createIndex("by-conversation","conversation_id",{unique:!1}),t<4&&e.createObjectStore("conv_extras",{keyPath:"conversation_id"})}}))}function _(e){return e?E(e):x}async function C(e,t){let a=_(t);if(!a)return null;try{let t=await a,r=await t.getAllFromIndex("messages","by-conversation",e);if(0===r.length)return null;let n=r.filter(e=>!e.id.startsWith("temp-"));n.sort((e,t)=>{let a=e.created_at.localeCompare(t.created_at);return 0!==a?a:e.id.localeCompare(t.id)});let i=await t.get("cache_meta",e);return i&&await t.put("cache_meta",{...i,lastAccessedAt:Date.now()}),n}catch{return null}}async function T(e,t,a,r,n){let i=_(n);if(!i)return null;try{let n=await i,s=await n.get("cache_meta",e);if(!s)return null;let o=IDBKeyRange.bound([e,""],[e,t],!1,!1),l=(await n.getAllFromIndex("messages","by-created",o)).filter(e=>!e.id.startsWith("temp-")&&(e.created_at!==t||!(e.id>=a)));l.sort((e,t)=>{let a=t.created_at.localeCompare(e.created_at);return 0!==a?a:t.id.localeCompare(e.id)});let c=l.slice(0,r);if(c.length<r&&s.hasMore)return null;return await n.put("cache_meta",{...s,lastAccessedAt:Date.now()}),{messages:c.reverse(),hasMore:l.length>r||s.hasMore}}catch{return null}}async function I(e,t,a,r,n){let i=_(r);if(i)try{let r=await i,s=t.filter(e=>!e.id.startsWith("temp-"));if(0===s.length)return;let o=r.transaction(["messages","cache_meta"],"readwrite"),l=o.objectStore("messages"),c=o.objectStore("cache_meta");for(let e of s)await l.put(e);let d=await l.index("by-conversation").getAllKeys(e),u=Date.now(),p=s.reduce((e,t)=>e.created_at>t.created_at?e:t),m=await c.get(e),f=a??m?.hasMore??!0,g=m?.newestMessageId&&m.newestMessageId!==p.id?await (async()=>{let t=await l.get([e,m.newestMessageId]);return t&&t.created_at>p.created_at?t.id:p.id})():p.id,h={conversation_id:e,lastFetchedAt:u,lastAccessedAt:u,messageCount:d.length,newestMessageId:g,hasMore:f,serverMessageCount:n??m?.serverMessageCount??0};await c.put(h),await o.done,L().catch(()=>{})}catch{}}async function j(e,t,a){let r=_(a);if(r&&!t.id.startsWith("temp-"))try{let a=await r,n=await a.get("cache_meta",e);if(!n)return;let i=await a.get("messages",[e,t.id]);await a.put("messages",t),await a.put("cache_meta",{...n,lastAccessedAt:Date.now(),messageCount:i?n.messageCount:n.messageCount+1,newestMessageId:t.id})}catch{}}async function M(e,t){let a=_(t);if(!a)return null;try{let t=await a;return await t.get("cache_meta",e)??null}catch{return null}}function P(e,t){return`${e}::${null==t?"":t}`}async function A(e,t,a){let r=_(a);if(!r)return null;try{let a=await r;return await a.get("last_open",P(e,t))??null}catch{return null}}async function N(e,t,a,r){let n=_(r);if(n)try{let r=await n;await r.put("last_open",{key:P(e,t),conversation_id:a.conversation_id,newestMessageId:a.newestMessageId,serverMessageCount:a.serverMessageCount,updatedAt:Date.now()})}catch{}}async function O(e,t){let a=_(t);if(!a)return null;try{let t=await a;return await t.get("conv_extras",e)??null}catch{return null}}async function D(e,t,a){let r=_(a);if(r)try{let a=await r;await a.put("conv_extras",{conversation_id:e,...t,updatedAt:Date.now()})}catch{}}async function L(e=50){let t=_();if(t)try{let a=await t,r=await a.getAll("cache_meta");if(r.length<=e)return;r.sort((e,t)=>e.lastAccessedAt-t.lastAccessedAt);let n=r.slice(0,r.length-e),i=a.transaction(["messages","cache_meta","last_open","conv_extras"],"readwrite"),s=i.objectStore("messages"),o=i.objectStore("cache_meta"),l=i.objectStore("last_open"),c=i.objectStore("conv_extras");for(let e of n){for(let t of(await s.index("by-conversation").getAllKeys(e.conversation_id)))await s.delete(t);for(let t of(await o.delete(e.conversation_id),await l.index("by-conversation").getAllKeys(e.conversation_id)))await l.delete(t);await c.delete(e.conversation_id)}await i.done}catch{}}async function B(){if("u">typeof indexedDB)try{x&&((await x).close(),x=null),S&&(await R(`alook-chat-cache-${S}`),S=null)}catch{}}async function R(e){return new Promise((t,a)=>{let r=indexedDB.deleteDatabase(e);r.onsuccess=()=>t(),r.onerror=()=>a(r.error),r.onblocked=()=>t()})}e.s(["appendCachedMessage",0,j,"clearAllCache",0,B,"getCacheMeta",0,M,"getCachedMessages",0,C,"getCachedMessagesBefore",0,T,"getConvExtras",0,O,"getLastOpenConversation",0,A,"mergeCachedMessages",0,I,"openCacheDB",0,E,"setConvExtras",0,D,"setLastOpenConversation",0,N],275351)},345262,e=>{"use strict";let t=(0,e.i(419412).default)("arrow-up-right",[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]]);e.s(["ArrowUpRight",0,t],345262)},500324,e=>{"use strict";var t=e.i(653772),a=e.i(511043);let r=(0,a.createContext)(null);e.s(["WorkspaceProvider",0,function({workspaceId:e,slug:n,children:i}){return(0,a.useEffect)(()=>{try{localStorage.setItem("lastWorkspace",n)}catch{}},[n]),(0,t.jsx)(r.Provider,{value:{workspaceId:e,slug:n},children:i})},"useWorkspace",0,function(){let e=(0,a.useContext)(r);if(!e)throw Error("useWorkspace must be used within WorkspaceProvider");return e}])},126942,(e,t,a)=>{t.exports=e.r(871628)},222862,636557,e=>{"use strict";var t=e.i(811374);class a extends Error{status;details;constructor(e,t,a){super(e),this.name="ApiError",this.status=t,this.details=a}get isNetworkError(){return 0===this.status}get isRateLimit(){return 429===this.status}get isUnauthorized(){return 401===this.status}}function r(e,t){return"validation error"===e&&t?.length?function(e){let[t,...a]=e.split(":"),r=a.join(":").trim();if(!r)return e;let n=t.trim(),i=n.trim().replace(/[_-]+/g," ").replace(/\b\w/g,e=>e.toUpperCase()),s=r.replace(/^required$/i,"is required"),o=s.toLowerCase().replace(/[_-]+/g," "),l=n.toLowerCase().replace(/[_-]+/g," ");return l&&o.startsWith(`${l} `)&&(s=s.slice(n.length).trimStart()),i?`${i} ${s}`:s}(t[0]):e}async function n(e,t){let n;try{n=await fetch(""+e,{...t,credentials:"include",headers:{"Content-Type":"application/json",...t?.headers}})}catch(e){if(e instanceof TypeError)throw new a("Unable to connect — check your network",0);throw e}if(401===n.status)throw window.location.href="/sign-in",new a("Unauthorized",401);if(!n.ok){let e,t;try{let a=await n.json();e=a.error,t=a.details}catch{}if(429===n.status)throw new a("Please wait a moment before trying again",429);if(n.status>=500)throw new a(r(e,t)||"Something went wrong — please try again",n.status,t);throw new a(r(e,t)||"Something went wrong",n.status,t)}if(204!==n.status)return n.json()}function i(e,t){let a=new URLSearchParams({workspace_id:e,...t});return`?${a.toString()}`}e.s(["ApiError",0,a],636557),parseInt(t.default.env.NEXT_PUBLIC_MOCK_NETWORK_DELAY_MS||"300",10);let s=async(e,t,r,s,o)=>{let l;if(!s||0===s.length)return n(`/api/conversations/${e}/messages${i(r)}`,{method:"POST",body:JSON.stringify({content:t,...o?{metadata:o}:{}})});let c=new FormData;for(let e of(c.append("content",t),o&&c.append("metadata",JSON.stringify(o)),s))c.append("file",e);try{l=await fetch(`/api/conversations/${e}/messages${i(r)}`,{method:"POST",credentials:"include",body:c})}catch(e){if(e instanceof TypeError)throw new a("Unable to connect — check your network",0);throw e}if(401===l.status)throw window.location.href="/sign-in",new a("Unauthorized",401);if(!l.ok){let e,t;try{let a=await l.json();e=a.error,t=a.details}catch{}if(429===l.status)throw new a("Please wait a moment before trying again",429);if(l.status>=500)throw new a(e||"Something went wrong — please try again",l.status,t);throw new a(e||"Something went wrong",l.status,t)}return l.json()},o=async(e,t)=>{let a=new URLSearchParams({workspace_id:t}),r=await fetch(`/api/email/${e}/body?${a}`,{credentials:"include"});if(!r.ok)return{content:"(body not available)",isHtml:!1};let n=r.headers.get("Content-Type")??"";return{content:await r.text(),isHtml:n.includes("text/html")}},l=async(e,t)=>{let r=new FormData;r.append("file",e);let n=await fetch(`/api/email/upload${i(t)}`,{method:"POST",credentials:"include",body:r});if(!n.ok)throw new a(await n.text().catch(()=>"Upload failed"),n.status);return n.json()},c=async(e,t)=>{let r;if(!t.files||0===t.files.length)return n(`/api/issues${i(e)}`,{method:"POST",body:JSON.stringify({agent_id:t.agent_id,title:t.title,description:t.description})});let s=new FormData;for(let e of(t.agent_id&&s.append("agent_id",t.agent_id),s.append("title",t.title),s.append("description",t.description??""),t.files))s.append("file",e);try{r=await fetch(`/api/issues${i(e)}`,{method:"POST",credentials:"include",body:s})}catch(e){if(e instanceof TypeError)throw new a("Unable to connect — check your network",0);throw e}if(401===r.status)throw window.location.href="/sign-in",new a("Unauthorized",401);if(!r.ok){let e,t;try{let a=await r.json();e=a.error,t=a.details}catch{}if(429===r.status)throw new a("Please wait a moment before trying again",429);if(r.status>=500)throw new a(e||"Something went wrong — please try again",r.status,t);throw new a(e||"Something went wrong",r.status,t)}return r.json()},d=async(e,t)=>{let a=new URLSearchParams({workspace_id:t}),r=await fetch(`/api/artifacts/${e}/content?${a}`,{credentials:"include"});return r.ok?r.text():"(content not available)"};e.s(["acceptInvite",0,e=>n(`/api/invite/${e}`,{method:"POST"}),"addWhitelistEmail",0,(e,t,a)=>n(`/api/agents/${e}/whitelist${i(a)}`,{method:"POST",body:JSON.stringify({email:t})}),"approveMeeting",0,(e,t,a)=>n(`/api/agents/${e}/meetings/${t}/approve${i(a)}`,{method:"POST"}),"cancelActiveTask",0,(e,t)=>n(`/api/conversations/${e}/active-task${i(t)}`,{method:"DELETE"}),"chatInit",0,(e,t,a)=>n(`/api/agents/${e}/chat-init${i(t)}`,{method:"POST",body:JSON.stringify({...a?{channel:a}:{}})}),"checkFreshness",0,(e,t)=>{let a={};return e.conversationId&&(a.conversation_id=e.conversationId),e.agentId&&(a.agent_id=e.agentId),e.channel&&(a.channel=e.channel),n(`/api/conversations/check-fresh${i(t,a)}`)},"conversationInit",0,(e,t,a)=>{let r={};return a?.newestMessageId&&(r.newest_message_id=a.newestMessageId),a?.messageCount&&(r.message_count=String(a.messageCount)),n(`/api/conversations/${e}/init${i(t,r)}`)},"createAgent",0,(e,t)=>n(`/api/agents${i(t)}`,{method:"POST",body:JSON.stringify(e)}),"createAgentLink",0,(e,t)=>n(`/api/agent-links${i(t)}`,{method:"POST",body:JSON.stringify(e)}),"createCalendarEvent",0,(e,t)=>n(`/api/calendar${i(t)}`,{method:"POST",body:JSON.stringify(e)}),"createChannelApi",0,(e,t)=>n(`/api/channels${i(e)}`,{method:"POST",body:JSON.stringify({name:t})}),"createConversation",0,(e,t,a)=>n(`/api/conversations${i(t)}`,{method:"POST",body:JSON.stringify({agent_id:e,...a?{channel:a}:{}})}),"createEmailAccount",0,(e,t,a)=>n(`/api/agents/${e}/email-accounts${i(a)}`,{method:"POST",body:JSON.stringify(t)}),"createInvite",0,e=>n(`/api/workspaces/${e}/invites${i(e)}`,{method:"POST"}),"createIssue",0,c,"createMachineToken",0,(e,t)=>n(`/api/machine-tokens${t?i(t):""}`,{method:"POST",body:JSON.stringify({name:e||"default"})}),"createMeeting",0,(e,t,a)=>n(`/api/agents/${e}/meetings${i(t)}`,{method:"POST",body:JSON.stringify(a)}),"createThread",0,(e,t,a,r)=>n(`/api/conversations/${e}/threads${i(r)}`,{method:"POST",body:JSON.stringify({parent_message_id:t,content:a})}),"deleteAgent",0,(e,t)=>n(`/api/agents/${e}${i(t)}`,{method:"DELETE"}),"deleteAgentLink",0,(e,t)=>n(`/api/agent-links/${e}${i(t)}`,{method:"DELETE"}),"deleteCalendarEvent",0,(e,t,a)=>n(`/api/calendar/${e}${i(t)}`,{method:"DELETE",...a&&a.scope?{headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}:{}}),"deleteChannelApi",0,(e,t)=>n(`/api/channels/${e}${i(t)}`,{method:"DELETE"}),"deleteEmail",0,(e,t)=>n(`/api/email/${e}${i(t)}`,{method:"DELETE"}),"deleteEmailAccount",0,(e,t,a)=>n(`/api/agents/${e}/email-accounts/${t}${i(a)}`,{method:"DELETE"}),"deleteIssue",0,(e,t)=>n(`/api/issues/${t}${i(e)}`,{method:"DELETE"}),"deleteMachine",0,(e,t)=>n(`/api/runtimes/machine${i(t,{daemon_id:e})}`,{method:"DELETE"}),"deleteMeeting",0,(e,t,a)=>n(`/api/agents/${e}/meetings/${t}${i(a)}`,{method:"DELETE"}),"deleteWorkspace",0,(e,t)=>n(`/api/workspaces/${e}${i(e)}`,{method:"DELETE",body:JSON.stringify({confirm_name:t})}),"fetchLatestCliVersion",0,()=>n("/api/cli/latest-version"),"fetchModelOptions",0,()=>n("/api/config/model-options"),"flagMessage",0,(e,t)=>n(`/api/flags${i(e)}`,{method:"POST",body:JSON.stringify({messageId:t})}),"getActiveTask",0,(e,t)=>n(`/api/conversations/${e}/active-task${i(t)}`),"getAgentSkills",0,(e,t)=>n(`/api/agents/${e}/skills${i(t)}`),"getArtifactContent",0,d,"getCalendarEvent",0,(e,t)=>n(`/api/calendar/${e}${i(t)}`),"getEmail",0,(e,t)=>n(`/api/email/${e}${i(t)}`),"getEmailBody",0,o,"getEmailThread",0,(e,t)=>n(`/api/email/${e}/thread${i(t)}`),"getFlaggedCount",0,e=>n(`/api/flags/count${i(e)}`),"getInboxCount",0,(e,t)=>{let a={};return t?.types?.length&&(a.types=t.types.join(",")),n(`/api/inbox/count${i(e,a)}`)},"getInviteInfo",0,e=>n(`/api/invite/${e}`),"getIssue",0,(e,t)=>n(`/api/issues/${t}${i(e)}`),"getMemberMe",0,e=>n(`/api/members/me${i(e)}`),"getMinCliVersion",0,()=>n("/api/config/min-version"),"getTask",0,(e,t)=>n(`/api/tasks/${e}${i(t)}`),"getTaskMessages",0,(e,t,a)=>n(`/api/tasks/${e}/messages${i(t,a?{since:String(a)}:void 0)}`),"getThreadSummaries",0,(e,t)=>n(`/api/conversations/${e}/threads${i(t)}`),"getTrace",0,(e,t)=>n(`/api/traces/${e}${i(t)}`),"getWorkspaceOverview",0,e=>n(`/api/workspaces/${e}/overview${i(e)}`),"grantAgentAccess",0,(e,t,a)=>n(`/api/agents/${t}/access${i(e)}`,{method:"POST",body:JSON.stringify({user_id:a})}),"listAgentAccess",0,(e,t)=>n(`/api/agents/${t}/access${i(e)}`),"listAgentActiveTaskCounts",0,e=>n(`/api/agents/active-task-counts${i(e)}`),"listAgentActivity",0,(e,t,a)=>{let r={};return a?.limit&&(r.limit=String(a.limit)),a?.before&&(r.before=a.before),a?.beforeId&&(r.before_id=a.beforeId),a?.status&&(r.status=a.status),a?.type&&(r.type=a.type),n(`/api/agents/${e}/activity${i(t,r)}`)},"listAgentLinks",0,e=>n(`/api/agent-links${i(e)}`),"listAgentPins",0,e=>n(`/api/agents/pins${i(e)}`),"listAgents",0,e=>n(`/api/agents${i(e)}`),"listArtifacts",0,(e,t)=>n(`/api/artifacts${i(t,{conversation_id:e})}`),"listCalendarEvents",0,(e,t)=>{let a={};return t?.agentId&&(a.agentId=t.agentId),t?.from&&(a.from=t.from),t?.to&&(a.to=t.to),n(`/api/calendar${i(e,a)}`)},"listChannels",0,e=>n(`/api/channels${i(e)}`),"listEmailAccounts",0,(e,t)=>n(`/api/agents/${e}/email-accounts${i(t)}`),"listEmails",0,(e,t,a,r)=>n(`/api/email${i(t,{agentId:e,...a?{folder:a}:{},...r?{address:r}:{}})}`),"listFlaggedItems",0,(e,t)=>{let a={};return t?.limit&&(a.limit=String(t.limit)),t?.before&&(a.before=t.before),n(`/api/flags${i(e,a)}`)},"listFlaggedMessageIds",0,(e,t)=>n(`/api/flags${i(e,{conversation_id:t,ids_only:"true"})}`),"listInboxItems",0,(e,t)=>{let a={};return t?.limit&&(a.limit=String(t.limit)),t?.before&&(a.before=t.before),t?.types?.length&&(a.types=t.types.join(",")),n(`/api/inbox${i(e,a)}`)},"listInvites",0,e=>n(`/api/workspaces/${e}/invites${i(e)}`),"listIssues",0,(e,t)=>{let a={};return t?.agentId&&(a.agentId=t.agentId),t?.status&&(a.status=t.status),t?.terminal!==void 0&&(a.terminal=String(t.terminal)),n(`/api/issues${i(e,a)}`)},"listMeetings",0,(e,t)=>n(`/api/agents/${e}/meetings${i(t)}`),"listMembers",0,e=>n(`/api/workspaces/${e}/members${i(e)}`),"listMessages",0,(e,t,a)=>{let r={};return a?.limit&&(r.limit=String(a.limit)),a?.before&&(r.before=a.before),a?.beforeId&&(r.before_id=a.beforeId),n(`/api/conversations/${e}/messages${i(t,r)}`)},"listMessagesAroundTask",0,(e,t,a)=>n(`/api/conversations/${e}/messages${i(t,{around_task:a})}`),"listPreviousConversations",0,(e,t,a)=>{let r={exclude:a.exclude,before:a.before};return a.channel&&(r.channel=a.channel),a.limit&&(r.limit=String(a.limit)),n(`/api/agents/${e}/conversations${i(t,r)}`)},"listRuntimes",0,e=>n(`/api/runtimes${i(e)}`),"listTraces",0,(e,t)=>{let a={};return t?.limit&&(a.limit=String(t.limit)),t?.before&&(a.before=t.before),t?.status&&(a.status=t.status),t?.multiAgent&&(a.multiAgent="true"),t?.agentId&&(a.agentId=t.agentId),t?.channel&&(a.channel=t.channel),n(`/api/traces${i(e,a)}`)},"listWhitelist",0,(e,t)=>n(`/api/agents/${e}/whitelist${i(t)}`),"listWorkspaceActiveTasks",0,e=>n(`/api/agents/active-tasks${i(e)}`),"listWorkspaces",0,()=>n("/api/workspaces"),"markAllInboxRead",0,e=>n(`/api/inbox/read-all${i(e)}`,{method:"POST"}),"markInboxRead",0,(e,t)=>n(`/api/inbox/read${i(t)}`,{method:"POST",body:JSON.stringify({conversationId:e})}),"pinAgent",0,(e,t)=>n(`/api/agents/${t}/pin${i(e)}`,{method:"POST"}),"removeMember",0,(e,t)=>n(`/api/workspaces/${e}/members/${t}${i(e)}`,{method:"DELETE"}),"removeWhitelistEmail",0,(e,t,a)=>n(`/api/agents/${e}/whitelist/${t}${i(a)}`,{method:"DELETE"}),"renameChannelApi",0,(e,t,a)=>n(`/api/channels/${e}${i(t)}`,{method:"PATCH",body:JSON.stringify({name:a})}),"reorderAgentPins",0,(e,t)=>n(`/api/agents/pins/reorder${i(e)}`,{method:"PUT",body:JSON.stringify({ordered_agent_ids:t})}),"reorderChannelsApi",0,(e,t)=>n(`/api/channels/reorder${i(e)}`,{method:"PUT",body:JSON.stringify({ordered_channel_ids:t})}),"reorderUnpinnedAgents",0,(e,t)=>n(`/api/agents/sidebar/reorder${i(e)}`,{method:"PUT",body:JSON.stringify({ordered_agent_ids:t})}),"requestWorkspaceBrowse",0,(e,t,a,r)=>n(`/api/agents/${e}/workspace/browse${i(t)}`,{method:"POST",body:JSON.stringify({request_type:a,path:r})}),"retryTask",0,(e,t)=>n(`/api/tasks/${e}/retry${i(t)}`,{method:"POST"}),"revokeAgentAccess",0,(e,t,a,r=!1)=>n(`/api/agents/${t}/access/${a}${i(e)}${r?"&remove_whitelist=true":""}`,{method:"DELETE"}),"revokeInvite",0,(e,t)=>n(`/api/workspaces/${e}/invites/${t}${i(e)}`,{method:"DELETE"}),"sendEmail",0,(e,t,a,r,s,o,l,c)=>n(`/api/email/send${i(s)}`,{method:"POST",body:JSON.stringify({agentId:e,to:t,subject:a,htmlBody:r,attachments:o,...l,customAccountId:c})}),"sendMessage",0,s,"stopMeeting",0,(e,t,a)=>n(`/api/agents/${e}/meetings/${t}/stop${i(a)}`,{method:"POST"}),"syncEmailAccount",0,(e,t,a)=>n(`/api/agents/${e}/email-accounts/${t}/sync${i(a)}`,{method:"POST"}),"triggerRuntimeRescan",0,(e,t)=>n(`/api/runtimes/${e}/rescan${i(t)}`,{method:"POST"}),"triggerRuntimeUpdate",0,(e,t)=>n(`/api/runtimes/${e}/update${i(t)}`,{method:"POST"}),"trustEmail",0,(e,t)=>n(`/api/email/${e}/trust${i(t)}`,{method:"POST"}),"unflagMessage",0,(e,t)=>n(`/api/flags/${t}${i(e)}`,{method:"DELETE"}),"unpinAgent",0,(e,t)=>n(`/api/agents/${t}/pin${i(e)}`,{method:"DELETE"}),"updateAgent",0,(e,t,a)=>n(`/api/agents/${e}${i(a)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateAgentLink",0,(e,t,a)=>n(`/api/agent-links/${e}${i(a)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateCalendarEvent",0,(e,t,a)=>n(`/api/calendar/${e}${i(a)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateEmailStatus",0,(e,t,a)=>n(`/api/email/${e}${i(t)}`,{method:"PATCH",body:JSON.stringify({status:a})}),"updateIssue",0,(e,t,a)=>n(`/api/issues/${t}${i(e)}`,{method:"PATCH",body:JSON.stringify(a)}),"updateMemberMe",0,(e,t)=>n(`/api/members/me${i(e)}`,{method:"PATCH",body:JSON.stringify({global_instruction:t})}),"updateWorkspace",0,(e,t)=>n(`/api/workspaces/${e}${i(e)}`,{method:"PATCH",body:JSON.stringify(t)}),"uploadEmailAttachment",0,l],222862)},728886,e=>{"use strict";var t=e.i(653772),a=e.i(613349);e.s(["Skeleton",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"skeleton",className:(0,a.cn)("animate-pulse rounded-md bg-muted",e),...r})}])},896210,e=>{"use strict";let t=(0,e.i(419412).default)("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]]);e.s(["Mail",0,t],896210)},330746,e=>{"use strict";let t=(0,e.i(419412).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",0,t],330746)},966662,940931,e=>{"use strict";let t=(0,e.i(419412).default)("paperclip",[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]]);e.s(["Paperclip",0,t],966662);var a=e.i(653772),r=e.i(511043),n=e.i(111114);let i=`
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,275351,e=>{"use strict";let t,a,r,n,i=(e,t)=>t.some(t=>e instanceof t),s=new WeakMap,o=new WeakMap,l=new WeakMap,c={get(e,t,a){if(e instanceof IDBTransaction){if("done"===t)return s.get(e);if("store"===t)return a.objectStoreNames[1]?void 0:a.objectStore(a.objectStoreNames[0])}return d(e[t])},set:(e,t,a)=>(e[t]=a,!0),has:(e,t)=>e instanceof IDBTransaction&&("done"===t||"store"===t)||t in e};function d(e){if(e instanceof IDBRequest){let t;return t=new Promise((t,a)=>{let r=()=>{e.removeEventListener("success",n),e.removeEventListener("error",i)},n=()=>{t(d(e.result)),r()},i=()=>{a(e.error),r()};e.addEventListener("success",n),e.addEventListener("error",i)}),l.set(t,e),t}if(o.has(e))return o.get(e);let t=function(e){if("function"==typeof e)return(n||(n=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(e)?function(...t){return e.apply(u(this),t),d(this.request)}:function(...t){return d(e.apply(u(this),t))};return(e instanceof IDBTransaction&&function(e){if(s.has(e))return;let t=new Promise((t,a)=>{let r=()=>{e.removeEventListener("complete",n),e.removeEventListener("error",i),e.removeEventListener("abort",i)},n=()=>{t(),r()},i=()=>{a(e.error||new DOMException("AbortError","AbortError")),r()};e.addEventListener("complete",n),e.addEventListener("error",i),e.addEventListener("abort",i)});s.set(e,t)}(e),i(e,r||(r=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])))?new Proxy(e,c):e}(e);return t!==e&&(o.set(e,t),l.set(t,e)),t}let u=e=>l.get(e),p=["get","getKey","getAll","getAllKeys","count"],m=["put","add","delete","clear"],f=new Map;function g(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&"string"==typeof t))return;if(f.get(t))return f.get(t);let a=t.replace(/FromIndex$/,""),r=t!==a,n=m.includes(a);if(!(a in(r?IDBIndex:IDBObjectStore).prototype)||!(n||p.includes(a)))return;let i=async function(e,...t){let i=this.transaction(e,n?"readwrite":"readonly"),s=i.store;return r&&(s=s.index(t.shift())),(await Promise.all([s[a](...t),n&&i.done]))[0]};return f.set(t,i),i}c={...t=c,get:(e,a,r)=>g(e,a)||t.get(e,a,r),has:(e,a)=>!!g(e,a)||t.has(e,a)};let h=["continue","continuePrimaryKey","advance"],y={},b=new WeakMap,w=new WeakMap,v={get(e,t){if(!h.includes(t))return e[t];let a=y[t];return a||(a=y[t]=function(...e){b.set(this,w.get(this)[t](...e))}),a}};async function*k(...e){let t=this;if(t instanceof IDBCursor||(t=await t.openCursor(...e)),!t)return;let a=new Proxy(t,v);for(w.set(a,t),l.set(a,u(t));t;)yield a,t=await (b.get(a)||t.continue()),b.delete(a)}function $(e,t){return t===Symbol.asyncIterator&&i(e,[IDBIndex,IDBObjectStore,IDBCursor])||"iterate"===t&&i(e,[IDBIndex,IDBObjectStore])}c={...a=c,get:(e,t,r)=>$(e,t)?k:a.get(e,t,r),has:(e,t)=>$(e,t)||a.has(e,t)};let x=null,S=null;function E(e){return"u"<typeof indexedDB?null:x&&S===e?x:(S=e,x=function(e,{blocked:t,upgrade:a,blocking:r,terminated:n}={}){let i=indexedDB.open(e,4),s=d(i);return a&&i.addEventListener("upgradeneeded",e=>{a(d(i.result),e.oldVersion,e.newVersion,d(i.transaction),e)}),t&&i.addEventListener("blocked",e=>t(e.oldVersion,e.newVersion,e)),s.then(e=>{n&&e.addEventListener("close",()=>n()),r&&e.addEventListener("versionchange",e=>r(e.oldVersion,e.newVersion,e))}).catch(()=>{}),s}(`alook-chat-cache-${e}`,{upgrade(e,t){if(t<1){let t=e.createObjectStore("messages",{keyPath:["conversation_id","id"]});t.createIndex("by-conversation","conversation_id",{unique:!1}),t.createIndex("by-created",["conversation_id","created_at"],{unique:!1}),e.createObjectStore("cache_meta",{keyPath:"conversation_id"})}t<3&&e.createObjectStore("last_open",{keyPath:"key"}).createIndex("by-conversation","conversation_id",{unique:!1}),t<4&&e.createObjectStore("conv_extras",{keyPath:"conversation_id"})}}))}function _(e){return e?E(e):x}async function C(e,t){let a=_(t);if(!a)return null;try{let t=await a,r=await t.getAllFromIndex("messages","by-conversation",e);if(0===r.length)return null;let n=r.filter(e=>!e.id.startsWith("temp-"));n.sort((e,t)=>{let a=e.created_at.localeCompare(t.created_at);return 0!==a?a:e.id.localeCompare(t.id)});let i=await t.get("cache_meta",e);return i&&await t.put("cache_meta",{...i,lastAccessedAt:Date.now()}),n}catch{return null}}async function T(e,t,a,r,n){let i=_(n);if(!i)return null;try{let n=await i,s=await n.get("cache_meta",e);if(!s)return null;let o=IDBKeyRange.bound([e,""],[e,t],!1,!1),l=(await n.getAllFromIndex("messages","by-created",o)).filter(e=>!e.id.startsWith("temp-")&&(e.created_at!==t||!(e.id>=a)));l.sort((e,t)=>{let a=t.created_at.localeCompare(e.created_at);return 0!==a?a:t.id.localeCompare(e.id)});let c=l.slice(0,r);if(c.length<r&&s.hasMore)return null;return await n.put("cache_meta",{...s,lastAccessedAt:Date.now()}),{messages:c.reverse(),hasMore:l.length>r||s.hasMore}}catch{return null}}async function I(e,t,a,r,n){let i=_(r);if(i)try{let r=await i,s=t.filter(e=>!e.id.startsWith("temp-"));if(0===s.length)return;let o=r.transaction(["messages","cache_meta"],"readwrite"),l=o.objectStore("messages"),c=o.objectStore("cache_meta");for(let e of s)await l.put(e);let d=await l.index("by-conversation").getAllKeys(e),u=Date.now(),p=s.reduce((e,t)=>e.created_at>t.created_at?e:t),m=await c.get(e),f=a??m?.hasMore??!0,g=m?.newestMessageId&&m.newestMessageId!==p.id?await (async()=>{let t=await l.get([e,m.newestMessageId]);return t&&t.created_at>p.created_at?t.id:p.id})():p.id,h={conversation_id:e,lastFetchedAt:u,lastAccessedAt:u,messageCount:d.length,newestMessageId:g,hasMore:f,serverMessageCount:n??m?.serverMessageCount??0};await c.put(h),await o.done,L().catch(()=>{})}catch{}}async function j(e,t,a){let r=_(a);if(r&&!t.id.startsWith("temp-"))try{let a=await r,n=await a.get("cache_meta",e);if(!n)return;let i=await a.get("messages",[e,t.id]);await a.put("messages",t),await a.put("cache_meta",{...n,lastAccessedAt:Date.now(),messageCount:i?n.messageCount:n.messageCount+1,newestMessageId:t.id})}catch{}}async function M(e,t){let a=_(t);if(!a)return null;try{let t=await a;return await t.get("cache_meta",e)??null}catch{return null}}function P(e,t){return`${e}::${null==t?"":t}`}async function A(e,t,a){let r=_(a);if(!r)return null;try{let a=await r;return await a.get("last_open",P(e,t))??null}catch{return null}}async function N(e,t,a,r){let n=_(r);if(n)try{let r=await n;await r.put("last_open",{key:P(e,t),conversation_id:a.conversation_id,newestMessageId:a.newestMessageId,serverMessageCount:a.serverMessageCount,updatedAt:Date.now()})}catch{}}async function O(e,t){let a=_(t);if(!a)return null;try{let t=await a;return await t.get("conv_extras",e)??null}catch{return null}}async function D(e,t,a){let r=_(a);if(r)try{let a=await r;await a.put("conv_extras",{conversation_id:e,...t,updatedAt:Date.now()})}catch{}}async function L(e=50){let t=_();if(t)try{let a=await t,r=await a.getAll("cache_meta");if(r.length<=e)return;r.sort((e,t)=>e.lastAccessedAt-t.lastAccessedAt);let n=r.slice(0,r.length-e),i=a.transaction(["messages","cache_meta","last_open","conv_extras"],"readwrite"),s=i.objectStore("messages"),o=i.objectStore("cache_meta"),l=i.objectStore("last_open"),c=i.objectStore("conv_extras");for(let e of n){for(let t of(await s.index("by-conversation").getAllKeys(e.conversation_id)))await s.delete(t);for(let t of(await o.delete(e.conversation_id),await l.index("by-conversation").getAllKeys(e.conversation_id)))await l.delete(t);await c.delete(e.conversation_id)}await i.done}catch{}}async function B(){if("u">typeof indexedDB)try{x&&((await x).close(),x=null),S&&(await R(`alook-chat-cache-${S}`),S=null)}catch{}}async function R(e){return new Promise((t,a)=>{let r=indexedDB.deleteDatabase(e);r.onsuccess=()=>t(),r.onerror=()=>a(r.error),r.onblocked=()=>t()})}e.s(["appendCachedMessage",0,j,"clearAllCache",0,B,"getCacheMeta",0,M,"getCachedMessages",0,C,"getCachedMessagesBefore",0,T,"getConvExtras",0,O,"getLastOpenConversation",0,A,"mergeCachedMessages",0,I,"openCacheDB",0,E,"setConvExtras",0,D,"setLastOpenConversation",0,N],275351)},345262,e=>{"use strict";let t=(0,e.i(419412).default)("arrow-up-right",[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]]);e.s(["ArrowUpRight",0,t],345262)},500324,e=>{"use strict";var t=e.i(653772),a=e.i(511043);let r=(0,a.createContext)(null);e.s(["WorkspaceProvider",0,function({workspaceId:e,slug:n,children:i}){return(0,a.useEffect)(()=>{try{localStorage.setItem("lastWorkspace",n)}catch{}},[n]),(0,t.jsx)(r.Provider,{value:{workspaceId:e,slug:n},children:i})},"useWorkspace",0,function(){let e=(0,a.useContext)(r);if(!e)throw Error("useWorkspace must be used within WorkspaceProvider");return e}])},126942,(e,t,a)=>{t.exports=e.r(871628)},222862,636557,e=>{"use strict";var t=e.i(811374);class a extends Error{status;details;constructor(e,t,a){super(e),this.name="ApiError",this.status=t,this.details=a}get isNetworkError(){return 0===this.status}get isRateLimit(){return 429===this.status}get isUnauthorized(){return 401===this.status}}function r(e,t){return"validation error"===e&&t?.length?function(e){let[t,...a]=e.split(":"),r=a.join(":").trim();if(!r)return e;let n=t.trim(),i=n.trim().replace(/[_-]+/g," ").replace(/\b\w/g,e=>e.toUpperCase()),s=r.replace(/^required$/i,"is required"),o=s.toLowerCase().replace(/[_-]+/g," "),l=n.toLowerCase().replace(/[_-]+/g," ");return l&&o.startsWith(`${l} `)&&(s=s.slice(n.length).trimStart()),i?`${i} ${s}`:s}(t[0]):e}async function n(e,t){let n;try{n=await fetch(""+e,{...t,credentials:"include",headers:{"Content-Type":"application/json",...t?.headers}})}catch(e){if(e instanceof TypeError)throw new a("Unable to connect — check your network",0);throw e}if(401===n.status)throw window.location.href="/sign-in",new a("Unauthorized",401);if(!n.ok){let e,t;try{let a=await n.json();e=a.error,t=a.details}catch{}if(429===n.status)throw new a("Please wait a moment before trying again",429);if(n.status>=500)throw new a(r(e,t)||"Something went wrong — please try again",n.status,t);throw new a(r(e,t)||"Something went wrong",n.status,t)}if(204!==n.status)return n.json()}function i(e,t){let a=new URLSearchParams({workspace_id:e,...t});return`?${a.toString()}`}e.s(["ApiError",0,a],636557),parseInt(t.default.env.NEXT_PUBLIC_MOCK_NETWORK_DELAY_MS||"300",10);let s=async(e,t,r,s,o)=>{let l;if(!s||0===s.length)return n(`/api/conversations/${e}/messages${i(r)}`,{method:"POST",body:JSON.stringify({content:t,...o?{metadata:o}:{}})});let c=new FormData;for(let e of(c.append("content",t),o&&c.append("metadata",JSON.stringify(o)),s))c.append("file",e);try{l=await fetch(`/api/conversations/${e}/messages${i(r)}`,{method:"POST",credentials:"include",body:c})}catch(e){if(e instanceof TypeError)throw new a("Unable to connect — check your network",0);throw e}if(401===l.status)throw window.location.href="/sign-in",new a("Unauthorized",401);if(!l.ok){let e,t;try{let a=await l.json();e=a.error,t=a.details}catch{}if(429===l.status)throw new a("Please wait a moment before trying again",429);if(l.status>=500)throw new a(e||"Something went wrong — please try again",l.status,t);throw new a(e||"Something went wrong",l.status,t)}return l.json()},o=async(e,t)=>{let a=new URLSearchParams({workspace_id:t}),r=await fetch(`/api/email/${e}/body?${a}`,{credentials:"include"});if(!r.ok)return{content:"(body not available)",isHtml:!1};let n=r.headers.get("Content-Type")??"";return{content:await r.text(),isHtml:n.includes("text/html")}},l=async(e,t)=>{let r=new FormData;r.append("file",e);let n=await fetch(`/api/email/upload${i(t)}`,{method:"POST",credentials:"include",body:r});if(!n.ok)throw new a(await n.text().catch(()=>"Upload failed"),n.status);return n.json()},c=async(e,t)=>{let r;if(!t.files||0===t.files.length)return n(`/api/issues${i(e)}`,{method:"POST",body:JSON.stringify({agent_id:t.agent_id,title:t.title,description:t.description})});let s=new FormData;for(let e of(t.agent_id&&s.append("agent_id",t.agent_id),s.append("title",t.title),s.append("description",t.description??""),t.files))s.append("file",e);try{r=await fetch(`/api/issues${i(e)}`,{method:"POST",credentials:"include",body:s})}catch(e){if(e instanceof TypeError)throw new a("Unable to connect — check your network",0);throw e}if(401===r.status)throw window.location.href="/sign-in",new a("Unauthorized",401);if(!r.ok){let e,t;try{let a=await r.json();e=a.error,t=a.details}catch{}if(429===r.status)throw new a("Please wait a moment before trying again",429);if(r.status>=500)throw new a(e||"Something went wrong — please try again",r.status,t);throw new a(e||"Something went wrong",r.status,t)}return r.json()},d=async(e,t)=>{let a=new URLSearchParams({workspace_id:t}),r=await fetch(`/api/artifacts/${e}/content?${a}`,{credentials:"include"});return r.ok?r.text():"(content not available)"};e.s(["acceptInvite",0,e=>n(`/api/invite/${e}`,{method:"POST"}),"addWhitelistEmail",0,(e,t,a)=>n(`/api/agents/${e}/whitelist${i(a)}`,{method:"POST",body:JSON.stringify({email:t})}),"approveMeeting",0,(e,t,a)=>n(`/api/agents/${e}/meetings/${t}/approve${i(a)}`,{method:"POST"}),"cancelActiveTask",0,(e,t)=>n(`/api/conversations/${e}/active-task${i(t)}`,{method:"DELETE"}),"chatInit",0,(e,t,a)=>n(`/api/agents/${e}/chat-init${i(t)}`,{method:"POST",body:JSON.stringify({...a?{channel:a}:{}})}),"checkFreshness",0,(e,t)=>{let a={};return e.conversationId&&(a.conversation_id=e.conversationId),e.agentId&&(a.agent_id=e.agentId),e.channel&&(a.channel=e.channel),n(`/api/conversations/check-fresh${i(t,a)}`)},"conversationInit",0,(e,t,a)=>{let r={};return a?.newestMessageId&&(r.newest_message_id=a.newestMessageId),a?.messageCount&&(r.message_count=String(a.messageCount)),n(`/api/conversations/${e}/init${i(t,r)}`)},"createAgent",0,(e,t)=>n(`/api/agents${i(t)}`,{method:"POST",body:JSON.stringify(e)}),"createAgentLink",0,(e,t)=>n(`/api/agent-links${i(t)}`,{method:"POST",body:JSON.stringify(e)}),"createCalendarEvent",0,(e,t)=>n(`/api/calendar${i(t)}`,{method:"POST",body:JSON.stringify(e)}),"createChannelApi",0,(e,t)=>n(`/api/channels${i(e)}`,{method:"POST",body:JSON.stringify({name:t})}),"createConversation",0,(e,t,a)=>n(`/api/conversations${i(t)}`,{method:"POST",body:JSON.stringify({agent_id:e,...a?{channel:a}:{}})}),"createEmailAccount",0,(e,t,a)=>n(`/api/agents/${e}/email-accounts${i(a)}`,{method:"POST",body:JSON.stringify(t)}),"createInvite",0,e=>n(`/api/workspaces/${e}/invites${i(e)}`,{method:"POST"}),"createIssue",0,c,"createMachineToken",0,(e,t)=>n(`/api/machine-tokens${t?i(t):""}`,{method:"POST",body:JSON.stringify({name:e||"default"})}),"createMeeting",0,(e,t,a)=>n(`/api/agents/${e}/meetings${i(t)}`,{method:"POST",body:JSON.stringify(a)}),"createThread",0,(e,t,a,r)=>n(`/api/conversations/${e}/threads${i(r)}`,{method:"POST",body:JSON.stringify({parent_message_id:t,content:a})}),"deleteAgent",0,(e,t)=>n(`/api/agents/${e}${i(t)}`,{method:"DELETE"}),"deleteAgentLink",0,(e,t)=>n(`/api/agent-links/${e}${i(t)}`,{method:"DELETE"}),"deleteCalendarEvent",0,(e,t,a)=>n(`/api/calendar/${e}${i(t)}`,{method:"DELETE",...a&&a.scope?{headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}:{}}),"deleteChannelApi",0,(e,t)=>n(`/api/channels/${e}${i(t)}`,{method:"DELETE"}),"deleteEmail",0,(e,t)=>n(`/api/email/${e}${i(t)}`,{method:"DELETE"}),"deleteEmailAccount",0,(e,t,a)=>n(`/api/agents/${e}/email-accounts/${t}${i(a)}`,{method:"DELETE"}),"deleteIssue",0,(e,t)=>n(`/api/issues/${t}${i(e)}`,{method:"DELETE"}),"deleteMachine",0,(e,t)=>n(`/api/runtimes/machine${i(t,{daemon_id:e})}`,{method:"DELETE"}),"deleteMeeting",0,(e,t,a)=>n(`/api/agents/${e}/meetings/${t}${i(a)}`,{method:"DELETE"}),"deleteWorkspace",0,(e,t)=>n(`/api/workspaces/${e}${i(e)}`,{method:"DELETE",body:JSON.stringify({confirm_name:t})}),"fetchLatestCliVersion",0,()=>n("/api/cli/latest-version"),"fetchModelOptions",0,()=>n("/api/config/model-options"),"flagMessage",0,(e,t)=>n(`/api/flags${i(e)}`,{method:"POST",body:JSON.stringify({messageId:t})}),"getActiveTask",0,(e,t)=>n(`/api/conversations/${e}/active-task${i(t)}`),"getAgentSkills",0,(e,t)=>n(`/api/agents/${e}/skills${i(t)}`),"getArtifactContent",0,d,"getCalendarEvent",0,(e,t)=>n(`/api/calendar/${e}${i(t)}`),"getEmail",0,(e,t)=>n(`/api/email/${e}${i(t)}`),"getEmailBody",0,o,"getEmailThread",0,(e,t)=>n(`/api/email/${e}/thread${i(t)}`),"getFlaggedCount",0,e=>n(`/api/flags/count${i(e)}`),"getInboxCount",0,(e,t)=>{let a={};return t?.types?.length&&(a.types=t.types.join(",")),n(`/api/inbox/count${i(e,a)}`)},"getInviteInfo",0,e=>n(`/api/invite/${e}`),"getIssue",0,(e,t)=>n(`/api/issues/${t}${i(e)}`),"getMemberMe",0,e=>n(`/api/members/me${i(e)}`),"getMinCliVersion",0,()=>n("/api/config/min-version"),"getTask",0,(e,t)=>n(`/api/tasks/${e}${i(t)}`),"getTaskMessages",0,(e,t,a)=>n(`/api/tasks/${e}/messages${i(t,a?{since:String(a)}:void 0)}`),"getThreadSummaries",0,(e,t)=>n(`/api/conversations/${e}/threads${i(t)}`),"getTrace",0,(e,t)=>n(`/api/traces/${e}${i(t)}`),"getWorkspaceOverview",0,e=>n(`/api/workspaces/${e}/overview${i(e)}`),"grantAgentAccess",0,(e,t,a)=>n(`/api/agents/${t}/access${i(e)}`,{method:"POST",body:JSON.stringify({user_id:a})}),"listAgentAccess",0,(e,t)=>n(`/api/agents/${t}/access${i(e)}`),"listAgentActiveTaskCounts",0,e=>n(`/api/agents/active-task-counts${i(e)}`),"listAgentActivity",0,(e,t,a)=>{let r={};return a?.limit&&(r.limit=String(a.limit)),a?.before&&(r.before=a.before),a?.beforeId&&(r.before_id=a.beforeId),a?.status&&(r.status=a.status),a?.type&&(r.type=a.type),n(`/api/agents/${e}/activity${i(t,r)}`)},"listAgentLinks",0,e=>n(`/api/agent-links${i(e)}`),"listAgentPins",0,e=>n(`/api/agents/pins${i(e)}`),"listAgents",0,e=>n(`/api/agents${i(e)}`),"listArtifacts",0,(e,t)=>n(`/api/artifacts${i(t,{conversation_id:e})}`),"listCalendarEvents",0,(e,t)=>{let a={};return t?.agentId&&(a.agentId=t.agentId),t?.from&&(a.from=t.from),t?.to&&(a.to=t.to),n(`/api/calendar${i(e,a)}`)},"listChannels",0,e=>n(`/api/channels${i(e)}`),"listEmailAccounts",0,(e,t)=>n(`/api/agents/${e}/email-accounts${i(t)}`),"listEmails",0,(e,t,a,r)=>n(`/api/email${i(t,{agentId:e,...a?{folder:a}:{},...r?{address:r}:{}})}`),"listFlaggedItems",0,(e,t)=>{let a={};return t?.limit&&(a.limit=String(t.limit)),t?.before&&(a.before=t.before),n(`/api/flags${i(e,a)}`)},"listFlaggedMessageIds",0,(e,t)=>n(`/api/flags${i(e,{conversation_id:t,ids_only:"true"})}`),"listInboxItems",0,(e,t)=>{let a={};return t?.limit&&(a.limit=String(t.limit)),t?.before&&(a.before=t.before),t?.types?.length&&(a.types=t.types.join(",")),n(`/api/inbox${i(e,a)}`)},"listInvites",0,e=>n(`/api/workspaces/${e}/invites${i(e)}`),"listIssues",0,(e,t)=>{let a={};return t?.agentId&&(a.agentId=t.agentId),t?.status&&(a.status=t.status),t?.terminal!==void 0&&(a.terminal=String(t.terminal)),n(`/api/issues${i(e,a)}`)},"listMeetings",0,(e,t)=>n(`/api/agents/${e}/meetings${i(t)}`),"listMembers",0,e=>n(`/api/workspaces/${e}/members${i(e)}`),"listMessages",0,(e,t,a)=>{let r={};return a?.limit&&(r.limit=String(a.limit)),a?.before&&(r.before=a.before),a?.beforeId&&(r.before_id=a.beforeId),n(`/api/conversations/${e}/messages${i(t,r)}`)},"listMessagesAroundTask",0,(e,t,a)=>n(`/api/conversations/${e}/messages${i(t,{around_task:a})}`),"listPreviousConversations",0,(e,t,a)=>{let r={exclude:a.exclude,before:a.before};return a.channel&&(r.channel=a.channel),a.limit&&(r.limit=String(a.limit)),n(`/api/agents/${e}/conversations${i(t,r)}`)},"listRuntimes",0,e=>n(`/api/runtimes${i(e)}`),"listTraces",0,(e,t)=>{let a={};return t?.limit&&(a.limit=String(t.limit)),t?.before&&(a.before=t.before),t?.status&&(a.status=t.status),t?.multiAgent&&(a.multiAgent="true"),t?.agentId&&(a.agentId=t.agentId),t?.channel&&(a.channel=t.channel),n(`/api/traces${i(e,a)}`)},"listWhitelist",0,(e,t)=>n(`/api/agents/${e}/whitelist${i(t)}`),"listWorkspaceActiveTasks",0,e=>n(`/api/agents/active-tasks${i(e)}`),"listWorkspaces",0,()=>n("/api/workspaces"),"markAllInboxRead",0,e=>n(`/api/inbox/read-all${i(e)}`,{method:"POST"}),"markInboxRead",0,(e,t)=>n(`/api/inbox/read${i(t)}`,{method:"POST",body:JSON.stringify({conversationId:e})}),"pinAgent",0,(e,t)=>n(`/api/agents/${t}/pin${i(e)}`,{method:"POST"}),"removeMember",0,(e,t)=>n(`/api/workspaces/${e}/members/${t}${i(e)}`,{method:"DELETE"}),"removeWhitelistEmail",0,(e,t,a)=>n(`/api/agents/${e}/whitelist/${t}${i(a)}`,{method:"DELETE"}),"renameChannelApi",0,(e,t,a)=>n(`/api/channels/${e}${i(t)}`,{method:"PATCH",body:JSON.stringify({name:a})}),"reorderAgentPins",0,(e,t)=>n(`/api/agents/pins/reorder${i(e)}`,{method:"PUT",body:JSON.stringify({ordered_agent_ids:t})}),"reorderChannelsApi",0,(e,t)=>n(`/api/channels/reorder${i(e)}`,{method:"PUT",body:JSON.stringify({ordered_channel_ids:t})}),"reorderUnpinnedAgents",0,(e,t)=>n(`/api/agents/sidebar/reorder${i(e)}`,{method:"PUT",body:JSON.stringify({ordered_agent_ids:t})}),"requestWorkspaceBrowse",0,(e,t,a,r)=>n(`/api/agents/${e}/workspace/browse${i(t)}`,{method:"POST",body:JSON.stringify({request_type:a,path:r})}),"retryTask",0,(e,t)=>n(`/api/tasks/${e}/retry${i(t)}`,{method:"POST"}),"revokeAgentAccess",0,(e,t,a,r=!1)=>n(`/api/agents/${t}/access/${a}${i(e)}${r?"&remove_whitelist=true":""}`,{method:"DELETE"}),"revokeInvite",0,(e,t)=>n(`/api/workspaces/${e}/invites/${t}${i(e)}`,{method:"DELETE"}),"sendEmail",0,(e,t,a,r,s,o,l,c)=>n(`/api/email/send${i(s)}`,{method:"POST",body:JSON.stringify({agentId:e,to:t,subject:a,htmlBody:r,attachments:o,...l,customAccountId:c})}),"sendMessage",0,s,"stopMeeting",0,(e,t,a)=>n(`/api/agents/${e}/meetings/${t}/stop${i(a)}`,{method:"POST"}),"syncEmailAccount",0,(e,t,a)=>n(`/api/agents/${e}/email-accounts/${t}/sync${i(a)}`,{method:"POST"}),"triggerRuntimeRescan",0,(e,t)=>n(`/api/runtimes/${e}/rescan${i(t)}`,{method:"POST"}),"triggerRuntimeUpdate",0,(e,t)=>n(`/api/runtimes/${e}/update${i(t)}`,{method:"POST"}),"trustEmail",0,(e,t)=>n(`/api/email/${e}/trust${i(t)}`,{method:"POST"}),"unflagMessage",0,(e,t)=>n(`/api/flags/${t}${i(e)}`,{method:"DELETE"}),"unpinAgent",0,(e,t)=>n(`/api/agents/${t}/pin${i(e)}`,{method:"DELETE"}),"updateAgent",0,(e,t,a)=>n(`/api/agents/${e}${i(a)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateAgentLink",0,(e,t,a)=>n(`/api/agent-links/${e}${i(a)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateCalendarEvent",0,(e,t,a)=>n(`/api/calendar/${e}${i(a)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateEmailStatus",0,(e,t,a)=>n(`/api/email/${e}${i(t)}`,{method:"PATCH",body:JSON.stringify({status:a})}),"updateIssue",0,(e,t,a)=>n(`/api/issues/${t}${i(e)}`,{method:"PATCH",body:JSON.stringify(a)}),"updateMemberMe",0,(e,t)=>n(`/api/members/me${i(e)}`,{method:"PATCH",body:JSON.stringify({global_instruction:t})}),"updateWorkspace",0,(e,t)=>n(`/api/workspaces/${e}${i(e)}`,{method:"PATCH",body:JSON.stringify(t)}),"uploadEmailAttachment",0,l],222862)},728886,e=>{"use strict";var t=e.i(653772),a=e.i(613349);e.s(["Skeleton",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"skeleton",className:(0,a.cn)("animate-pulse rounded-md bg-muted",e),...r})}])},896210,e=>{"use strict";let t=(0,e.i(419412).default)("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]]);e.s(["Mail",0,t],896210)},330746,e=>{"use strict";let t=(0,e.i(419412).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",0,t],330746)},966662,940931,e=>{"use strict";let t=(0,e.i(419412).default)("paperclip",[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]]);e.s(["Paperclip",0,t],966662);var a=e.i(653772),r=e.i(511043),n=e.i(111114);let i=`
|
|
2
2
|
html, body {
|
|
3
3
|
overflow: hidden;
|
|
4
4
|
}
|
|
@@ -60,4 +60,4 @@
|
|
|
60
60
|
<style>${i}${p?o:s}</style>
|
|
61
61
|
</head>
|
|
62
62
|
<body>${e}</body>
|
|
63
|
-
</html>`;let r=()=>{let e=t.contentDocument;if(!e)return;let r=()=>{let t=e.documentElement.scrollHeight;t>0&&u(t)};r(),(a=new ResizeObserver(r)).observe(e.documentElement)};return t.addEventListener("load",r),()=>{t.removeEventListener("load",r),a?.disconnect()}},[e,p]),(0,a.jsx)("iframe",{ref:l,sandbox:"allow-same-origin",className:t,style:{width:"100%",height:`${d}px`,border:"none",display:"block"},title:"Email content"})}],940931)},481282,731316,657587,385745,e=>{"use strict";var t=e.i(127677),a=(0,e.i(995292).default)(Object.keys,Object),r=Object.prototype.hasOwnProperty;let n=function(e){if(!(0,t.default)(e))return a(e);var n=[];for(var i in Object(e))r.call(e,i)&&"constructor"!=i&&n.push(i);return n};e.s(["default",0,n],731316);var i=e.i(130636),s=e.i(659173),o=(0,i.default)(s.default,"DataView"),l=e.i(121200),c=(0,i.default)(s.default,"Promise"),d=(0,i.default)(s.default,"Set");e.s(["default",0,d],657587);var u=(0,i.default)(s.default,"WeakMap"),p=e.i(706462),m=e.i(882148),f="[object Map]",g="[object Promise]",h="[object Set]",y="[object WeakMap]",b="[object DataView]",w=(0,m.default)(o),v=(0,m.default)(l.default),$=(0,m.default)(c),k=(0,m.default)(d),x=(0,m.default)(u),S=p.default;(o&&S(new o(new ArrayBuffer(1)))!=b||l.default&&S(new l.default)!=f||c&&S(c.resolve())!=g||d&&S(new d)!=h||u&&S(new u)!=y)&&(S=function(e){var t=(0,p.default)(e),a="[object Object]"==t?e.constructor:void 0,r=a?(0,m.default)(a):"";if(r)switch(r){case w:return b;case v:return f;case $:return g;case k:return h;case x:return y}return t});let E=S;e.s(["default",0,E],385745);var _=e.i(530194),C=e.i(764843),T=e.i(750244),I=e.i(330772),j=e.i(400745),M=Object.prototype.hasOwnProperty;e.s(["default",0,function(e){if(null==e)return!0;if((0,T.default)(e)&&((0,C.default)(e)||"string"==typeof e||"function"==typeof e.splice||(0,I.default)(e)||(0,j.default)(e)||(0,_.default)(e)))return!e.length;var a=E(e);if("[object Map]"==a||"[object Set]"==a)return!e.size;if((0,t.default)(e))return!n(e).length;for(var r in e)if(M.call(e,r))return!1;return!0}],481282)},505494,e=>{"use strict";var t=e.i(752872),a=e.i(351359);e.i(991577);var r=e.i(692423),n=(0,a.__name)(e=>{let{securityLevel:a}=(0,t.getConfig2)(),n=(0,r.select)("body");if("sandbox"===a){let t=(0,r.select)(`#i${e}`),a=t.node()?.contentDocument??document;n=(0,r.select)(a.body)}return n.select(`#${e}`)},"selectSvgElement");e.s(["selectSvgElement",0,n])},489368,e=>{"use strict";var t=e.i(102198),a=e.i(103274),r=e.i(595995),n=e.i(752872),i=e.i(351359),s={common:n.common_default,getConfig:n.getConfig,insertCluster:a.insertCluster,insertEdge:t.insertEdge,insertEdgeLabel:t.insertEdgeLabel,insertMarkers:t.markers_default,insertNode:a.insertNode,interpolateToCurve:r.interpolateToCurve,labelHelper:a.labelHelper,log:i.log,positionEdgeLabel:t.positionEdgeLabel},o={},l=(0,i.__name)(e=>{for(let t of e)o[t.name]=t},"registerLayoutLoaders");(0,i.__name)(()=>{l([{name:"dagre",loader:(0,i.__name)(async()=>await e.A(274989),"loader")},{name:"cose-bilkent",loader:(0,i.__name)(async()=>await e.A(619639),"loader")}])},"registerDefaultLayoutLoaders")();var c=(0,i.__name)(async(e,t)=>{if(!(e.layoutAlgorithm in o))throw Error(`Unknown layout algorithm: ${e.layoutAlgorithm}`);if(e.diagramId)for(let t of e.nodes){let a=t.domId||t.id;t.domId=`${e.diagramId}-${a}`}let a=o[e.layoutAlgorithm],r=await a.loader(),{theme:n,themeVariables:i}=e.config,{useGradient:l,gradientStart:c,gradientStop:d}=i,u=t.attr("id");if(t.append("defs").append("filter").attr("id",`${u}-drop-shadow`).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${n?.includes("dark")?"#FFFFFF":"#000000"}`),t.append("defs").append("filter").attr("id",`${u}-drop-shadow-small`).attr("height","150%").attr("width","150%").append("feDropShadow").attr("dx","2").attr("dy","2").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${n?.includes("dark")?"#FFFFFF":"#000000"}`),l){let e=t.append("linearGradient").attr("id",t.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");e.append("svg:stop").attr("offset","0%").attr("stop-color",c).attr("stop-opacity",1),e.append("svg:stop").attr("offset","100%").attr("stop-color",d).attr("stop-opacity",1)}return r.render(e,t,s,{algorithm:a.algorithm})},"render"),d=(0,i.__name)((e="",{fallback:t="dagre"}={})=>{if(e in o)return e;if(t in o)return i.log.warn(`Layout algorithm ${e} is not registered. Using ${t} as fallback.`),t;throw Error(`Both layout algorithms ${e} and ${t} are not registered.`)},"getRegisteredLayoutAlgorithm");e.s(["getRegisteredLayoutAlgorithm",0,d,"registerLayoutLoaders",0,l,"render",0,c])},967723,e=>{"use strict";let t=(0,e.i(419412).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],967723)},492451,e=>{"use strict";let t=(0,e.i(419412).default)("file",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]);e.s(["File",0,t],492451)},80137,e=>{"use strict";let t=(0,e.i(419412).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);e.s(["FileText",0,t],80137)},68322,522281,e=>{"use strict";var t=e.i(566710);e.s([],68322),e.s(["Streamdown",()=>t.C],522281)},288329,e=>{"use strict";var t=e.i(653772),a=e.i(511043),r=e.i(613349);e.s(["SheetResizeHandle",0,function({onPointerDown:e,onPointerMove:a,onPointerUp:n,className:i,withHandle:s=!0}){return(0,t.jsx)("div",{onPointerDown:e,onPointerMove:a,onPointerUp:n,onLostPointerCapture:n,className:(0,r.cn)("hidden sm:flex absolute left-0 top-0 bottom-0 w-1.5 cursor-col-resize z-10 items-center justify-center hover:bg-primary/10 active:bg-primary/20 transition-colors rounded-l-xl",i),children:s&&(0,t.jsx)("div",{className:"h-6 w-1 rounded-lg bg-border"})})},"useSheetResize",0,function({defaultWidth:e=480,minWidth:t=320,maxWidthRatio:r=.8}={}){let[n,i]=(0,a.useState)(e),s=(0,a.useRef)(!1),o=(0,a.useCallback)(e=>{e.preventDefault(),e.target.setPointerCapture(e.pointerId),s.current=!0},[]);return{width:n,onPointerDown:o,onPointerMove:(0,a.useCallback)(e=>{s.current&&i(Math.min(window.innerWidth*r,Math.max(t,window.innerWidth-e.clientX)))},[t,r]),onPointerUp:(0,a.useCallback)(e=>{s.current=!1,e.target.releasePointerCapture(e.pointerId)},[])}}])},998771,e=>{"use strict";let t=(0,e.i(419412).default)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);e.s(["User",0,t],998771)},758956,e=>{"use strict";let t=(0,e.i(419412).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);e.s(["MessageSquare",0,t],758956)},51724,e=>{"use strict";let t=(0,e.i(419412).default)("circle-dot",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]]);e.s(["CircleDot",0,t],51724)},131890,e=>{"use strict";let t=(0,e.i(419412).default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);e.s(["ArrowUp",0,t],131890)},450463,e=>{"use strict";e.s(["relativeTime",0,function(e){let t=new Date(e);if(isNaN(t.getTime()))return"";let a=Math.floor((new Date().getTime()-t.getTime())/6e4);if(a<1)return"just now";if(a<60)return`${a}m ago`;let r=Math.floor(a/60);if(r<24)return`${r}h ago`;let n=Math.floor(r/24);return n<7?`${n}d ago`:t.toLocaleDateString(void 0,{month:"short",day:"numeric"})}])},465368,648632,e=>{"use strict";var t=e.i(653772),a=e.i(511043),r=e.i(450463);e.i(400175);var n=e.i(819748),i=e.i(126366),s=e.i(496673),o=e.i(758956),l=e.i(332680);function c(e,{delay:t=450,moveThreshold:r=10}={}){let n=a.useRef(null),i=a.useRef(null),s=a.useRef(!1),o=a.useRef(e);a.useEffect(()=>{o.current=e});let l=a.useCallback(()=>{n.current&&(clearTimeout(n.current),n.current=null),i.current=null},[]),d=a.useCallback(e=>{"mouse"!==e.pointerType&&(l(),s.current=!1,i.current={x:e.clientX,y:e.clientY},n.current=setTimeout(()=>{s.current=!0,i.current=null,n.current=null,o.current()},t))},[l,t]),u=a.useCallback(e=>{let t=i.current;if(!t)return;let a=Math.abs(e.clientX-t.x),n=Math.abs(e.clientY-t.y);(a>r||n>r)&&l()},[l,r]),p=a.useCallback(e=>{s.current&&(e.preventDefault(),e.stopPropagation(),s.current=!1)},[]);return a.useEffect(()=>l,[l]),{onPointerDown:d,onPointerMove:u,onPointerUp:l,onPointerCancel:l,onPointerLeave:l,onClick:p}}e.s(["useLongPress",0,c],648632),e.s(["EmailCard",0,function({subject:e,address:d,direction:u,onClick:p,timestamp:m,isInternal:f,internalHandle:g,targetConvId:h,targetAgentId:y,agents:b,onAgentChatOpen:w,touchAction:v}){let[$,k]=(0,a.useState)(null),[x,S]=(0,a.useState)(!1),[E,_]=(0,a.useState)(!1),C=c(()=>{v&&_(!0)}),T=(0,a.useCallback)(()=>{if(!f||x)return;S(!0);let e=b?.find(e=>e.email_handle===g);e&&k({name:e.name,avatarConfig:(0,i.parseAvatarUrl)(e.avatar_url)})},[f,x,b,g]);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("button",{type:"button",onClick:e=>{v&&C.onClick&&(C.onClick(e),e.defaultPrevented)||p?.()},disabled:!p,onPointerEnter:T,...v?{onPointerDown:C.onPointerDown,onPointerMove:C.onPointerMove,onPointerUp:C.onPointerUp,onPointerCancel:C.onPointerCancel,onPointerLeave:C.onPointerLeave}:{},className:`card-grain w-104 max-w-full rounded-(--radius) border border-(--border) bg-(--paper) text-left flex flex-col cursor-pointer [transition:translate_.2s_cubic-bezier(.2,.8,.2,1),box-shadow_.2s_ease] hover:-translate-y-0.5 [box-shadow:var(--e1)] hover:[box-shadow:var(--e2)] ${f&&h?"overflow-visible group/ecard":"overflow-hidden"}`,children:[(0,t.jsx)("span",{className:"h-2.5 relative block",children:(0,t.jsx)("svg",{viewBox:"0 0 100 10",preserveAspectRatio:"none",className:"absolute inset-0 w-full h-full",children:(0,t.jsx)("path",{d:"M8,-1 L50,9 L92,-1",stroke:"var(--te)",strokeWidth:"2.5",opacity:"0.4",fill:"none",strokeLinejoin:"round",strokeLinecap:"round"})})}),(0,t.jsxs)("span",{className:"p-3 flex flex-col",children:[(0,t.jsxs)("span",{className:"flex items-start gap-1 mb-1",children:[(0,t.jsxs)("span",{className:"text-[0.72rem] text-(--muted-foreground) flex-1 min-w-0 whitespace-nowrap overflow-hidden text-ellipsis",children:["inbound"===u?"from ":"to ",d]}),(0,t.jsxs)("span",{className:"shrink-0 flex flex-col items-end gap-0.5",children:[m&&(0,t.jsx)("span",{className:"text-[0.62rem] font-mono text-muted-foreground/65",children:(0,r.relativeTime)(m)}),(0,t.jsx)("span",{className:"text-[0.5rem] font-bold uppercase tracking-wider text-(--te) px-1 py-0.5 rounded-[3px] border-[1.5px] border-(--te) opacity-45 -rotate-3",children:"inbound"===u?"Inbound":"Sent"})]})]}),(0,t.jsx)("span",{className:"text-[0.95rem] font-semibold tracking-[-0.01em] leading-[1.35] line-clamp-2",children:e})]}),f&&$&&h&&(0,t.jsx)("span",{className:"absolute -bottom-2.5 left-1/2 -translate-x-1/2 translate-y-1 opacity-0 group-hover/ecard:opacity-100 group-hover/ecard:translate-y-0 transition-all duration-200 ease-out pointer-events-none group-hover/ecard:pointer-events-auto z-10",children:(0,t.jsxs)("span",{role:"button",tabIndex:0,onClick:e=>{e.stopPropagation(),h&&y&&w?.(y,h)},onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.stopPropagation(),h&&y&&w?.(y,h))},className:"flex items-center gap-1.5 py-0.5 pl-0.5 pr-2 bg-(--paper) border border-(--border) rounded-full shadow-md hover:bg-(--secondary) cursor-pointer whitespace-nowrap",children:[$.avatarConfig&&(0,t.jsx)(n.AnimatedAvatar,{config:$.avatarConfig,size:20,isHovered:!1,className:"rounded-full"}),(0,t.jsx)("span",{className:"text-[0.62rem] font-semibold opacity-80",children:$.name}),(0,t.jsx)(s.ChevronRight,{className:"w-2.5 h-2.5 text-muted-foreground/45 -ml-0.5"})]})})]}),v&&(0,t.jsx)(l.Sheet,{open:E,onOpenChange:_,children:(0,t.jsx)(l.SheetContent,{side:"bottom",showCloseButton:!1,className:"rounded-t-2xl p-2",children:(0,t.jsx)("div",{className:"flex flex-col",children:(0,t.jsxs)("button",{type:"button",onClick:()=>{v.onClick(),_(!1)},className:"flex items-center gap-3 rounded-lg px-3 py-3 text-left text-[0.95rem] active:bg-muted text-foreground",children:[(0,t.jsx)("span",{className:"text-muted-foreground",children:(0,t.jsx)(o.MessageSquare,{className:"w-5 h-5"})}),v.label]})})})})]})}],465368)},754902,855351,157349,e=>{"use strict";var t=e.i(653772),a=e.i(613349);let r={single:"rounded-[1.05rem]",first:"rounded-[1.05rem] rounded-br-[0.35rem]",middle:"rounded-[1.05rem] rounded-tr-[0.35rem] rounded-br-[0.35rem]",last:"rounded-[1.05rem] rounded-tr-[0.35rem]"},n={single:"rounded-[1.05rem]",first:"rounded-[1.05rem] rounded-bl-[0.35rem]",middle:"rounded-[1.05rem] rounded-tl-[0.35rem] rounded-bl-[0.35rem]",last:"rounded-[1.05rem] rounded-tl-[0.35rem]"};function i(){return(0,t.jsxs)("span",{className:"inline-flex items-center gap-0.5","aria-hidden":!0,children:[(0,t.jsx)("span",{className:"size-1 rounded-full bg-muted-foreground/60 motion-safe:animate-[typing-dot_1.2s_ease-in-out_infinite]"}),(0,t.jsx)("span",{className:"size-1 rounded-full bg-muted-foreground/60 motion-safe:animate-[typing-dot_1.2s_ease-in-out_0.2s_infinite]"}),(0,t.jsx)("span",{className:"size-1 rounded-full bg-muted-foreground/60 motion-safe:animate-[typing-dot_1.2s_ease-in-out_0.4s_infinite]"})]})}e.s(["MessageBubble",0,function({variant:e,position:i,children:s,className:o,...l}){let c="user"===e?r[i]:n[i];return(0,t.jsx)("div",{className:(0,a.cn)("px-3 py-1.5 text-base",c,"user"===e?"bg-primary text-primary-foreground":"bg-muted text-foreground",o),...l,children:s})}],754902),e.s(["AVATAR_SIZE",0,30,"MessageCluster",0,function({avatar:e,name:r,children:n,position:i,className:s}){let o="first"===i||"solo"===i;return(0,t.jsxs)("div",{className:(0,a.cn)("flex justify-start items-start gap-2 min-w-0",s),children:[(0,t.jsx)("div",{className:(0,a.cn)("w-[30px]","shrink-0"),"aria-hidden":!o,children:o&&e}),(0,t.jsxs)("div",{className:"min-w-0 max-w-[86%] flex flex-col items-start gap-0.5",children:[o&&(0,t.jsx)("span",{className:"text-[0.85rem] font-semibold text-foreground leading-[1.15] pt-0.5 mb-1",children:r}),n]})]})}],855351),e.s(["PresenceLine",0,function({agentFirstName:e,taskStatus:r}){let n="running"===r?"typing":"queued"===r||"dispatched"===r?"reading":"idle";return(0,t.jsx)("div",{className:"h-5 px-1 mb-2 flex items-center","aria-live":"polite",children:(0,t.jsx)("span",{className:(0,a.cn)("inline-flex items-center gap-1.5 text-sm text-muted-foreground","idle"!==n&&"motion-safe:animate-[fade-up_200ms_ease-out_both]"),children:"idle"!==n&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{children:"reading"===n?`${e} is reading`:`${e} is typing`}),(0,t.jsx)(i,{})]})},n)})}],157349)},899746,e=>{"use strict";let t="browser-notification-enabled",a="browser-notification-events",r=["completed","failed"],n={completed:"Task Completed",failed:"Task Failed"};function i(){return"Notification"in window}function s(){return"true"===localStorage.getItem(t)}function o(){try{let e=localStorage.getItem(a);if(e)return JSON.parse(e)}catch{}return[...r]}async function l(){return!!i()&&("granted"===Notification.permission||"denied"!==Notification.permission&&"granted"===await Notification.requestPermission())}e.s(["NOTIFICATION_EVENTS",0,r,"NOTIFICATION_EVENT_LABELS",0,n,"getNotificationEnabled",0,s,"getNotificationEvents",0,o,"isNotificationSupported",0,i,"requestNotificationPermission",0,l,"sendTaskNotification",0,function(e,t,a){if(!i()||"granted"!==Notification.permission||!s()||!o().includes(e))return;let r=n[e]??`Task ${e}`;new Notification(t?`${t} — ${r}`:r,{body:a??"",icon:"/alook.svg"})},"setNotificationEnabled",0,function(e){localStorage.setItem(t,String(e))},"setNotificationEvents",0,function(e){localStorage.setItem(a,JSON.stringify(e))}])},875494,685835,e=>{"use strict";var t=e.i(653772),a=e.i(511043),r=e.i(222862),n=e.i(355578),i=e.i(500324),s=e.i(899746);let o="inbox-filter-types",l=["user_dm_message","calendar_event","email_notification"],c=["user_dm_message"],d=["user_dm_message"];function u(){try{let e=localStorage.getItem(o);if(!e)return c;let t=JSON.parse(e).filter(e=>l.includes(e));if(0===t.length)return c;for(let e of d)t.includes(e)||t.unshift(e);return t}catch{return c}}e.s(["INBOX_FILTER_LABELS",0,{user_dm_message:"DM",calendar_event:"Calendar",email_notification:"Email"},"INBOX_FILTER_TYPES",0,l,"MANDATORY_INBOX_TYPES",0,d,"getInboxFilterTypes",0,u,"setInboxFilterTypes",0,function(e){let t=[...e];for(let e of d)t.includes(e)||t.unshift(e);localStorage.setItem(o,JSON.stringify(t))}],685835);let p=(0,a.createContext)(null),m={count:0,notificationToken:0,refresh:()=>{},decrement:()=>{}};e.s(["InboxCountProvider",0,function({children:e}){let{workspaceId:o}=(0,i.useWorkspace)(),{subscribeWs:l,agents:c}=(0,n.useAgentContext)(),[d,m]=(0,a.useState)(0),[f,g]=(0,a.useState)(0),h=(0,a.useRef)(null),y=(0,a.useRef)(null),b=(0,a.useRef)(c);(0,a.useEffect)(()=>{b.current=c});let w=(0,a.useCallback)(()=>{let e=u();(0,r.getInboxCount)(o,{types:e}).then(e=>{let t=h.current;if(h.current=e.count,m(e.count),null!==t&&e.count>t){g(e=>e+1);let e=y.current?b.current.find(e=>e.id===y.current):void 0;(0,s.sendTaskNotification)("completed",e?.name)}y.current=null}).catch(()=>{})},[o]),v=(0,a.useCallback)(()=>{m(e=>Math.max(0,e-1))},[]);return(0,a.useEffect)(()=>{w()},[w]),(0,a.useEffect)(()=>l(e=>{"task.updated"===e.type&&("completed"===e.status||"failed"===e.status)&&(y.current=e.agentId,w())}),[l,w]),(0,a.useEffect)(()=>{let e=setInterval(w,6e4);return()=>clearInterval(e)},[w]),(0,t.jsx)(p.Provider,{value:{count:d,notificationToken:f,refresh:w,decrement:v},children:e})},"useInboxCount",0,function(){return(0,a.useContext)(p)??m}],875494)},353155,e=>{"use strict";var t=e.i(452691);e.s(["Check",()=>t.default])},813141,e=>{"use strict";let t=(0,e.i(419412).default)("trash-2",[["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"}]]);e.s(["Trash2",0,t],813141)},393153,e=>{"use strict";var t=e.i(653772),a=e.i(779646),r=e.i(186339);e.s(["ConfirmDialog",0,function({open:e,onOpenChange:n,title:i,description:s,confirmLabel:o="Remove",loadingLabel:l,confirmVariant:c="destructive",loading:d=!1,onConfirm:u}){return(0,t.jsx)(a.Dialog,{open:e,onOpenChange:n,children:(0,t.jsxs)(a.DialogContent,{showCloseButton:!1,children:[(0,t.jsxs)(a.DialogHeader,{children:[(0,t.jsx)(a.DialogTitle,{children:i}),(0,t.jsx)(a.DialogDescription,{children:s})]}),(0,t.jsxs)(a.DialogFooter,{children:[(0,t.jsx)(r.Button,{variant:"outline",size:"sm",onClick:()=>n(!1),disabled:d,children:"Cancel"}),(0,t.jsx)(r.Button,{variant:c,size:"sm",onClick:u,disabled:d,children:d?l??`${o}...`:o})]})]})})}])},82970,e=>{"use strict";let t=(0,e.i(419412).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",0,t],82970)},294518,e=>{"use strict";let t=(0,e.i(419412).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",0,t],294518)},267007,e=>{"use strict";let t=(0,e.i(419412).default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);e.s(["Square",0,t],267007)},41793,e=>{"use strict";let t=(0,e.i(419412).default)("calendar-days",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 18h.01",key:"lrp35t"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M16 18h.01",key:"kzsmim"}]]);e.s(["CalendarDays",0,t],41793)},896315,219658,e=>{"use strict";var t=e.i(419412);let a=(0,t.default)("rotate-cw",[["path",{d:"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8",key:"1p45f6"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}]]);e.s(["RotateCw",0,a],896315);var r=e.i(653772),n=e.i(511043),i=e.i(186339),s=e.i(329686);let o=(0,t.default)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);var l=e.i(613349);e.s(["ScrollToBottomButton",0,function({scrollRef:e,threshold:t=100}){let[a,c]=(0,n.useState)(!1),d=(0,n.useCallback)(()=>{let a=e.current;if(!a)return;let r=a.scrollHeight-a.scrollTop-a.clientHeight<t;c(a.scrollHeight>a.clientHeight&&!r)},[e,t]);return(0,n.useEffect)(()=>{let t=e.current;if(!t)return;t.addEventListener("scroll",d,{passive:!0}),d();let a=new ResizeObserver(d);return a.observe(t),()=>{t.removeEventListener("scroll",d),a.disconnect()}},[e,d]),(0,r.jsx)("div",{className:(0,l.cn)("absolute bottom-1 left-1/2 -translate-x-1/2 z-10 transition-all duration-200 ease-out",a?"opacity-100 translate-y-0":"opacity-0 translate-y-2 pointer-events-none"),children:(0,r.jsxs)(s.Tooltip,{children:[(0,r.jsx)(s.TooltipTrigger,{render:(0,r.jsx)(i.Button,{variant:"ghost",size:"icon-sm",onClick:()=>{let t=e.current;t&&t.scrollTo({top:t.scrollHeight,behavior:"smooth"})},className:"rounded-full bg-background/80 backdrop-blur-sm border shadow-sm hover:bg-background"}),children:(0,r.jsx)(o,{})}),(0,r.jsx)(s.TooltipContent,{side:"top",children:"Scroll to bottom"})]})})}],219658)}]);
|
|
63
|
+
</html>`;let r=()=>{let e=t.contentDocument;if(!e)return;let r=()=>{let t=e.documentElement.scrollHeight;t>0&&u(t)};r(),(a=new ResizeObserver(r)).observe(e.documentElement)};return t.addEventListener("load",r),()=>{t.removeEventListener("load",r),a?.disconnect()}},[e,p]),(0,a.jsx)("iframe",{ref:l,sandbox:"allow-same-origin",className:t,style:{width:"100%",height:`${d}px`,border:"none",display:"block"},title:"Email content"})}],940931)},355753,e=>{"use strict";let t=(0,e.i(419412).default)("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);e.s(["default",0,t])},481282,731316,657587,385745,e=>{"use strict";var t=e.i(127677),a=(0,e.i(995292).default)(Object.keys,Object),r=Object.prototype.hasOwnProperty;let n=function(e){if(!(0,t.default)(e))return a(e);var n=[];for(var i in Object(e))r.call(e,i)&&"constructor"!=i&&n.push(i);return n};e.s(["default",0,n],731316);var i=e.i(130636),s=e.i(659173),o=(0,i.default)(s.default,"DataView"),l=e.i(121200),c=(0,i.default)(s.default,"Promise"),d=(0,i.default)(s.default,"Set");e.s(["default",0,d],657587);var u=(0,i.default)(s.default,"WeakMap"),p=e.i(706462),m=e.i(882148),f="[object Map]",g="[object Promise]",h="[object Set]",y="[object WeakMap]",b="[object DataView]",w=(0,m.default)(o),v=(0,m.default)(l.default),k=(0,m.default)(c),$=(0,m.default)(d),x=(0,m.default)(u),S=p.default;(o&&S(new o(new ArrayBuffer(1)))!=b||l.default&&S(new l.default)!=f||c&&S(c.resolve())!=g||d&&S(new d)!=h||u&&S(new u)!=y)&&(S=function(e){var t=(0,p.default)(e),a="[object Object]"==t?e.constructor:void 0,r=a?(0,m.default)(a):"";if(r)switch(r){case w:return b;case v:return f;case k:return g;case $:return h;case x:return y}return t});let E=S;e.s(["default",0,E],385745);var _=e.i(530194),C=e.i(764843),T=e.i(750244),I=e.i(330772),j=e.i(400745),M=Object.prototype.hasOwnProperty;e.s(["default",0,function(e){if(null==e)return!0;if((0,T.default)(e)&&((0,C.default)(e)||"string"==typeof e||"function"==typeof e.splice||(0,I.default)(e)||(0,j.default)(e)||(0,_.default)(e)))return!e.length;var a=E(e);if("[object Map]"==a||"[object Set]"==a)return!e.size;if((0,t.default)(e))return!n(e).length;for(var r in e)if(M.call(e,r))return!1;return!0}],481282)},505494,e=>{"use strict";var t=e.i(752872),a=e.i(351359);e.i(991577);var r=e.i(692423),n=(0,a.__name)(e=>{let{securityLevel:a}=(0,t.getConfig2)(),n=(0,r.select)("body");if("sandbox"===a){let t=(0,r.select)(`#i${e}`),a=t.node()?.contentDocument??document;n=(0,r.select)(a.body)}return n.select(`#${e}`)},"selectSvgElement");e.s(["selectSvgElement",0,n])},489368,e=>{"use strict";var t=e.i(102198),a=e.i(103274),r=e.i(595995),n=e.i(752872),i=e.i(351359),s={common:n.common_default,getConfig:n.getConfig,insertCluster:a.insertCluster,insertEdge:t.insertEdge,insertEdgeLabel:t.insertEdgeLabel,insertMarkers:t.markers_default,insertNode:a.insertNode,interpolateToCurve:r.interpolateToCurve,labelHelper:a.labelHelper,log:i.log,positionEdgeLabel:t.positionEdgeLabel},o={},l=(0,i.__name)(e=>{for(let t of e)o[t.name]=t},"registerLayoutLoaders");(0,i.__name)(()=>{l([{name:"dagre",loader:(0,i.__name)(async()=>await e.A(274989),"loader")},{name:"cose-bilkent",loader:(0,i.__name)(async()=>await e.A(619639),"loader")}])},"registerDefaultLayoutLoaders")();var c=(0,i.__name)(async(e,t)=>{if(!(e.layoutAlgorithm in o))throw Error(`Unknown layout algorithm: ${e.layoutAlgorithm}`);if(e.diagramId)for(let t of e.nodes){let a=t.domId||t.id;t.domId=`${e.diagramId}-${a}`}let a=o[e.layoutAlgorithm],r=await a.loader(),{theme:n,themeVariables:i}=e.config,{useGradient:l,gradientStart:c,gradientStop:d}=i,u=t.attr("id");if(t.append("defs").append("filter").attr("id",`${u}-drop-shadow`).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${n?.includes("dark")?"#FFFFFF":"#000000"}`),t.append("defs").append("filter").attr("id",`${u}-drop-shadow-small`).attr("height","150%").attr("width","150%").append("feDropShadow").attr("dx","2").attr("dy","2").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${n?.includes("dark")?"#FFFFFF":"#000000"}`),l){let e=t.append("linearGradient").attr("id",t.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");e.append("svg:stop").attr("offset","0%").attr("stop-color",c).attr("stop-opacity",1),e.append("svg:stop").attr("offset","100%").attr("stop-color",d).attr("stop-opacity",1)}return r.render(e,t,s,{algorithm:a.algorithm})},"render"),d=(0,i.__name)((e="",{fallback:t="dagre"}={})=>{if(e in o)return e;if(t in o)return i.log.warn(`Layout algorithm ${e} is not registered. Using ${t} as fallback.`),t;throw Error(`Both layout algorithms ${e} and ${t} are not registered.`)},"getRegisteredLayoutAlgorithm");e.s(["getRegisteredLayoutAlgorithm",0,d,"registerLayoutLoaders",0,l,"render",0,c])},967723,e=>{"use strict";let t=(0,e.i(419412).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],967723)},492451,e=>{"use strict";let t=(0,e.i(419412).default)("file",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]);e.s(["File",0,t],492451)},80137,e=>{"use strict";let t=(0,e.i(419412).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);e.s(["FileText",0,t],80137)},68322,522281,e=>{"use strict";var t=e.i(566710);e.s([],68322),e.s(["Streamdown",()=>t.C],522281)},288329,e=>{"use strict";var t=e.i(653772),a=e.i(511043),r=e.i(613349);e.s(["SheetResizeHandle",0,function({onPointerDown:e,onPointerMove:a,onPointerUp:n,className:i,withHandle:s=!0}){return(0,t.jsx)("div",{onPointerDown:e,onPointerMove:a,onPointerUp:n,onLostPointerCapture:n,className:(0,r.cn)("hidden sm:flex absolute left-0 top-0 bottom-0 w-1.5 cursor-col-resize z-10 items-center justify-center hover:bg-primary/10 active:bg-primary/20 transition-colors rounded-l-xl",i),children:s&&(0,t.jsx)("div",{className:"h-6 w-1 rounded-lg bg-border"})})},"useSheetResize",0,function({defaultWidth:e=480,minWidth:t=320,maxWidthRatio:r=.8}={}){let[n,i]=(0,a.useState)(e),s=(0,a.useRef)(!1),o=(0,a.useCallback)(e=>{e.preventDefault(),e.target.setPointerCapture(e.pointerId),s.current=!0},[]);return{width:n,onPointerDown:o,onPointerMove:(0,a.useCallback)(e=>{s.current&&i(Math.min(window.innerWidth*r,Math.max(t,window.innerWidth-e.clientX)))},[t,r]),onPointerUp:(0,a.useCallback)(e=>{s.current=!1,e.target.releasePointerCapture(e.pointerId)},[])}}])},998771,e=>{"use strict";let t=(0,e.i(419412).default)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);e.s(["User",0,t],998771)},758956,e=>{"use strict";let t=(0,e.i(419412).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);e.s(["MessageSquare",0,t],758956)},51724,e=>{"use strict";let t=(0,e.i(419412).default)("circle-dot",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]]);e.s(["CircleDot",0,t],51724)},131890,e=>{"use strict";let t=(0,e.i(419412).default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);e.s(["ArrowUp",0,t],131890)},450463,e=>{"use strict";e.s(["relativeTime",0,function(e){let t=new Date(e);if(isNaN(t.getTime()))return"";let a=Math.floor((new Date().getTime()-t.getTime())/6e4);if(a<1)return"just now";if(a<60)return`${a}m ago`;let r=Math.floor(a/60);if(r<24)return`${r}h ago`;let n=Math.floor(r/24);return n<7?`${n}d ago`:t.toLocaleDateString(void 0,{month:"short",day:"numeric"})}])},465368,648632,e=>{"use strict";var t=e.i(653772),a=e.i(511043),r=e.i(450463);e.i(400175);var n=e.i(819748),i=e.i(126366),s=e.i(496673),o=e.i(758956),l=e.i(332680);function c(e,{delay:t=450,moveThreshold:r=10}={}){let n=a.useRef(null),i=a.useRef(null),s=a.useRef(!1),o=a.useRef(e);a.useEffect(()=>{o.current=e});let l=a.useCallback(()=>{n.current&&(clearTimeout(n.current),n.current=null),i.current=null},[]),d=a.useCallback(e=>{"mouse"!==e.pointerType&&(l(),s.current=!1,i.current={x:e.clientX,y:e.clientY},n.current=setTimeout(()=>{s.current=!0,i.current=null,n.current=null,o.current()},t))},[l,t]),u=a.useCallback(e=>{let t=i.current;if(!t)return;let a=Math.abs(e.clientX-t.x),n=Math.abs(e.clientY-t.y);(a>r||n>r)&&l()},[l,r]),p=a.useCallback(e=>{s.current&&(e.preventDefault(),e.stopPropagation(),s.current=!1)},[]);return a.useEffect(()=>l,[l]),{onPointerDown:d,onPointerMove:u,onPointerUp:l,onPointerCancel:l,onPointerLeave:l,onClick:p}}e.s(["useLongPress",0,c],648632),e.s(["EmailCard",0,function({subject:e,address:d,direction:u,onClick:p,timestamp:m,isInternal:f,internalHandle:g,targetConvId:h,targetAgentId:y,agents:b,onAgentChatOpen:w,touchAction:v}){let[k,$]=(0,a.useState)(null),[x,S]=(0,a.useState)(!1),[E,_]=(0,a.useState)(!1),C=c(()=>{v&&_(!0)}),T=(0,a.useCallback)(()=>{if(!f||x)return;S(!0);let e=b?.find(e=>e.email_handle===g);e&&$({name:e.name,avatarConfig:(0,i.parseAvatarUrl)(e.avatar_url)})},[f,x,b,g]);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("button",{type:"button",onClick:e=>{v&&C.onClick&&(C.onClick(e),e.defaultPrevented)||p?.()},disabled:!p,onPointerEnter:T,...v?{onPointerDown:C.onPointerDown,onPointerMove:C.onPointerMove,onPointerUp:C.onPointerUp,onPointerCancel:C.onPointerCancel,onPointerLeave:C.onPointerLeave}:{},className:`card-grain w-104 max-w-full rounded-(--radius) border border-(--border) bg-(--paper) text-left flex flex-col cursor-pointer [transition:translate_.2s_cubic-bezier(.2,.8,.2,1),box-shadow_.2s_ease] hover:-translate-y-0.5 [box-shadow:var(--e1)] hover:[box-shadow:var(--e2)] ${f&&h?"overflow-visible group/ecard relative hover:z-20":"overflow-hidden"}`,children:[(0,t.jsx)("span",{className:"h-2.5 relative block",children:(0,t.jsx)("svg",{viewBox:"0 0 100 10",preserveAspectRatio:"none",className:"absolute inset-0 w-full h-full",children:(0,t.jsx)("path",{d:"M8,-1 L50,9 L92,-1",stroke:"var(--te)",strokeWidth:"2.5",opacity:"0.4",fill:"none",strokeLinejoin:"round",strokeLinecap:"round"})})}),(0,t.jsxs)("span",{className:"p-3 flex flex-col",children:[(0,t.jsxs)("span",{className:"flex items-start gap-1 mb-1",children:[(0,t.jsxs)("span",{className:"text-[0.72rem] text-(--muted-foreground) flex-1 min-w-0 whitespace-nowrap overflow-hidden text-ellipsis",children:["inbound"===u?"from ":"to ",d]}),(0,t.jsxs)("span",{className:"shrink-0 flex flex-col items-end gap-0.5",children:[m&&(0,t.jsx)("span",{className:"text-[0.62rem] font-mono text-muted-foreground/65",children:(0,r.relativeTime)(m)}),(0,t.jsx)("span",{className:"text-[0.5rem] font-bold uppercase tracking-wider text-(--te) px-1 py-0.5 rounded-[3px] border-[1.5px] border-(--te) opacity-45 -rotate-3",children:"inbound"===u?"Inbound":"Sent"})]})]}),(0,t.jsx)("span",{className:"text-[0.95rem] font-semibold tracking-[-0.01em] leading-[1.35] line-clamp-2",children:e})]}),f&&k&&h&&(0,t.jsx)("span",{className:"absolute -bottom-2.5 left-1/2 -translate-x-1/2 translate-y-1 opacity-0 group-hover/ecard:opacity-100 group-hover/ecard:translate-y-0 transition-all duration-200 ease-out pointer-events-none group-hover/ecard:pointer-events-auto z-10",children:(0,t.jsxs)("span",{role:"button",tabIndex:0,onClick:e=>{e.stopPropagation(),h&&y&&w?.(y,h)},onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.stopPropagation(),h&&y&&w?.(y,h))},className:"flex items-center gap-1.5 py-0.5 pl-0.5 pr-2 bg-(--paper) border border-(--border) rounded-full shadow-md hover:bg-(--secondary) cursor-pointer whitespace-nowrap",children:[k.avatarConfig&&(0,t.jsx)(n.AnimatedAvatar,{config:k.avatarConfig,size:20,isHovered:!1,className:"rounded-full"}),(0,t.jsx)("span",{className:"text-[0.62rem] font-semibold opacity-80",children:k.name}),(0,t.jsx)(s.ChevronRight,{className:"w-2.5 h-2.5 text-muted-foreground/45 -ml-0.5"})]})})]}),v&&(0,t.jsx)(l.Sheet,{open:E,onOpenChange:_,children:(0,t.jsx)(l.SheetContent,{side:"bottom",showCloseButton:!1,className:"rounded-t-2xl p-2",children:(0,t.jsx)("div",{className:"flex flex-col",children:(0,t.jsxs)("button",{type:"button",onClick:()=>{v.onClick(),_(!1)},className:"flex items-center gap-3 rounded-lg px-3 py-3 text-left text-[0.95rem] active:bg-muted text-foreground",children:[(0,t.jsx)("span",{className:"text-muted-foreground",children:(0,t.jsx)(o.MessageSquare,{className:"w-5 h-5"})}),v.label]})})})})]})}],465368)},754902,855351,157349,e=>{"use strict";var t=e.i(653772),a=e.i(613349);let r={single:"rounded-[1.05rem]",first:"rounded-[1.05rem] rounded-br-[0.35rem]",middle:"rounded-[1.05rem] rounded-tr-[0.35rem] rounded-br-[0.35rem]",last:"rounded-[1.05rem] rounded-tr-[0.35rem]"},n={single:"rounded-[1.05rem]",first:"rounded-[1.05rem] rounded-bl-[0.35rem]",middle:"rounded-[1.05rem] rounded-tl-[0.35rem] rounded-bl-[0.35rem]",last:"rounded-[1.05rem] rounded-tl-[0.35rem]"};function i(){return(0,t.jsxs)("span",{className:"inline-flex items-center gap-0.5","aria-hidden":!0,children:[(0,t.jsx)("span",{className:"size-1 rounded-full bg-muted-foreground/60 motion-safe:animate-[typing-dot_1.2s_ease-in-out_infinite]"}),(0,t.jsx)("span",{className:"size-1 rounded-full bg-muted-foreground/60 motion-safe:animate-[typing-dot_1.2s_ease-in-out_0.2s_infinite]"}),(0,t.jsx)("span",{className:"size-1 rounded-full bg-muted-foreground/60 motion-safe:animate-[typing-dot_1.2s_ease-in-out_0.4s_infinite]"})]})}e.s(["MessageBubble",0,function({variant:e,position:i,children:s,className:o,...l}){let c="user"===e?r[i]:n[i];return(0,t.jsx)("div",{className:(0,a.cn)("px-3 py-1.5 text-base",c,"user"===e?"bg-primary text-primary-foreground":"bg-muted text-foreground",o),...l,children:s})}],754902),e.s(["AVATAR_SIZE",0,30,"MessageCluster",0,function({avatar:e,name:r,children:n,position:i,className:s}){let o="first"===i||"solo"===i;return(0,t.jsxs)("div",{className:(0,a.cn)("flex justify-start items-start gap-2 min-w-0",s),children:[(0,t.jsx)("div",{className:(0,a.cn)("w-[30px]","shrink-0"),"aria-hidden":!o,children:o&&e}),(0,t.jsxs)("div",{className:"min-w-0 max-w-[86%] flex flex-col items-start gap-0.5",children:[o&&(0,t.jsx)("span",{className:"text-[0.85rem] font-semibold text-foreground leading-[1.15] pt-0.5 mb-1",children:r}),n]})]})}],855351),e.s(["PresenceLine",0,function({agentFirstName:e,taskStatus:r}){let n="running"===r?"typing":"queued"===r||"dispatched"===r?"reading":"idle";return(0,t.jsx)("div",{className:"h-5 px-1 mb-2 flex items-center","aria-live":"polite",children:(0,t.jsx)("span",{className:(0,a.cn)("inline-flex items-center gap-1.5 text-sm text-muted-foreground","idle"!==n&&"motion-safe:animate-[fade-up_200ms_ease-out_both]"),children:"idle"!==n&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{children:"reading"===n?`${e} is reading`:`${e} is typing`}),(0,t.jsx)(i,{})]})},n)})}],157349)},899746,e=>{"use strict";let t="browser-notification-enabled",a="browser-notification-events",r=["completed","failed"],n={completed:"Task Completed",failed:"Task Failed"};function i(){return"Notification"in window}function s(){return"true"===localStorage.getItem(t)}function o(){try{let e=localStorage.getItem(a);if(e)return JSON.parse(e)}catch{}return[...r]}async function l(){return!!i()&&("granted"===Notification.permission||"denied"!==Notification.permission&&"granted"===await Notification.requestPermission())}e.s(["NOTIFICATION_EVENTS",0,r,"NOTIFICATION_EVENT_LABELS",0,n,"getNotificationEnabled",0,s,"getNotificationEvents",0,o,"isNotificationSupported",0,i,"requestNotificationPermission",0,l,"sendTaskNotification",0,function(e,t,a){if(!i()||"granted"!==Notification.permission||!s()||!o().includes(e))return;let r=n[e]??`Task ${e}`;new Notification(t?`${t} — ${r}`:r,{body:a??"",icon:"/alook.svg"})},"setNotificationEnabled",0,function(e){localStorage.setItem(t,String(e))},"setNotificationEvents",0,function(e){localStorage.setItem(a,JSON.stringify(e))}])},875494,685835,e=>{"use strict";var t=e.i(653772),a=e.i(511043),r=e.i(222862),n=e.i(355578),i=e.i(500324),s=e.i(899746);let o="inbox-filter-types",l=["user_dm_message","calendar_event","email_notification"],c=["user_dm_message"],d=["user_dm_message"];function u(){try{let e=localStorage.getItem(o);if(!e)return c;let t=JSON.parse(e).filter(e=>l.includes(e));if(0===t.length)return c;for(let e of d)t.includes(e)||t.unshift(e);return t}catch{return c}}e.s(["INBOX_FILTER_LABELS",0,{user_dm_message:"DM",calendar_event:"Calendar",email_notification:"Email"},"INBOX_FILTER_TYPES",0,l,"MANDATORY_INBOX_TYPES",0,d,"getInboxFilterTypes",0,u,"setInboxFilterTypes",0,function(e){let t=[...e];for(let e of d)t.includes(e)||t.unshift(e);localStorage.setItem(o,JSON.stringify(t))}],685835);let p=(0,a.createContext)(null),m={count:0,notificationToken:0,refresh:()=>{},decrement:()=>{}};e.s(["InboxCountProvider",0,function({children:e}){let{workspaceId:o}=(0,i.useWorkspace)(),{subscribeWs:l,agents:c}=(0,n.useAgentContext)(),[d,m]=(0,a.useState)(0),[f,g]=(0,a.useState)(0),h=(0,a.useRef)(null),y=(0,a.useRef)(null),b=(0,a.useRef)(c);(0,a.useEffect)(()=>{b.current=c});let w=(0,a.useCallback)(()=>{let e=u();(0,r.getInboxCount)(o,{types:e}).then(e=>{let t=h.current;if(h.current=e.count,m(e.count),null!==t&&e.count>t){g(e=>e+1);let e=y.current?b.current.find(e=>e.id===y.current):void 0;(0,s.sendTaskNotification)("completed",e?.name)}y.current=null}).catch(()=>{})},[o]),v=(0,a.useCallback)(()=>{m(e=>Math.max(0,e-1))},[]);return(0,a.useEffect)(()=>{w()},[w]),(0,a.useEffect)(()=>l(e=>{"task.updated"===e.type&&("completed"===e.status||"failed"===e.status)&&(y.current=e.agentId,w())}),[l,w]),(0,a.useEffect)(()=>{let e=setInterval(w,6e4);return()=>clearInterval(e)},[w]),(0,t.jsx)(p.Provider,{value:{count:d,notificationToken:f,refresh:w,decrement:v},children:e})},"useInboxCount",0,function(){return(0,a.useContext)(p)??m}],875494)},353155,e=>{"use strict";var t=e.i(452691);e.s(["Check",()=>t.default])},813141,e=>{"use strict";let t=(0,e.i(419412).default)("trash-2",[["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"}]]);e.s(["Trash2",0,t],813141)},393153,e=>{"use strict";var t=e.i(653772),a=e.i(779646),r=e.i(186339);e.s(["ConfirmDialog",0,function({open:e,onOpenChange:n,title:i,description:s,confirmLabel:o="Remove",loadingLabel:l,confirmVariant:c="destructive",loading:d=!1,onConfirm:u}){return(0,t.jsx)(a.Dialog,{open:e,onOpenChange:n,children:(0,t.jsxs)(a.DialogContent,{showCloseButton:!1,children:[(0,t.jsxs)(a.DialogHeader,{children:[(0,t.jsx)(a.DialogTitle,{children:i}),(0,t.jsx)(a.DialogDescription,{children:s})]}),(0,t.jsxs)(a.DialogFooter,{children:[(0,t.jsx)(r.Button,{variant:"outline",size:"sm",onClick:()=>n(!1),disabled:d,children:"Cancel"}),(0,t.jsx)(r.Button,{variant:c,size:"sm",onClick:u,disabled:d,children:d?l??`${o}...`:o})]})]})})}])},82970,e=>{"use strict";let t=(0,e.i(419412).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",0,t],82970)},294518,e=>{"use strict";let t=(0,e.i(419412).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",0,t],294518)},267007,e=>{"use strict";let t=(0,e.i(419412).default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);e.s(["Square",0,t],267007)},41793,e=>{"use strict";let t=(0,e.i(419412).default)("calendar-days",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 18h.01",key:"lrp35t"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M16 18h.01",key:"kzsmim"}]]);e.s(["CalendarDays",0,t],41793)},896315,219658,e=>{"use strict";var t=e.i(419412);let a=(0,t.default)("rotate-cw",[["path",{d:"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8",key:"1p45f6"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}]]);e.s(["RotateCw",0,a],896315);var r=e.i(653772),n=e.i(511043),i=e.i(186339),s=e.i(329686);let o=(0,t.default)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);var l=e.i(613349);e.s(["ScrollToBottomButton",0,function({scrollRef:e,threshold:t=100}){let[a,c]=(0,n.useState)(!1),d=(0,n.useCallback)(()=>{let a=e.current;if(!a)return;let r=a.scrollHeight-a.scrollTop-a.clientHeight<t;c(a.scrollHeight>a.clientHeight&&!r)},[e,t]);return(0,n.useEffect)(()=>{let t=e.current;if(!t)return;t.addEventListener("scroll",d,{passive:!0}),d();let a=new ResizeObserver(d);return a.observe(t),()=>{t.removeEventListener("scroll",d),a.disconnect()}},[e,d]),(0,r.jsx)("div",{className:(0,l.cn)("absolute bottom-1 left-1/2 -translate-x-1/2 z-10 transition-all duration-200 ease-out",a?"opacity-100 translate-y-0":"opacity-0 translate-y-2 pointer-events-none"),children:(0,r.jsxs)(s.Tooltip,{children:[(0,r.jsx)(s.TooltipTrigger,{render:(0,r.jsx)(i.Button,{variant:"ghost",size:"icon-sm",onClick:()=>{let t=e.current;t&&t.scrollTo({top:t.scrollHeight,behavior:"smooth"})},className:"rounded-full bg-background/80 backdrop-blur-sm border shadow-sm hover:bg-background"}),children:(0,r.jsx)(o,{})}),(0,r.jsx)(s.TooltipContent,{side:"top",children:"Scroll to bottom"})]})})}],219658)}]);
|