@alook/app 0.0.133 → 0.0.134

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/bundled/email-worker/index.js +17 -9
  2. package/bundled/web/.open-next/.build/durable-objects/queue.js +5 -5
  3. package/bundled/web/.open-next/assets/BUILD_ID +1 -1
  4. package/bundled/web/.open-next/assets/_next/static/chunks/0vq-9me5zdpwe.js +1 -0
  5. package/bundled/web/.open-next/assets/_next/static/chunks/{3issuq6aouf1q.js → 1soxnit9hjz-0.js} +1 -1
  6. package/bundled/web/.open-next/assets/_next/static/chunks/{1iux65sajp19w.js → 25mf0rxvnm36s.js} +1 -1
  7. package/bundled/web/.open-next/assets/_next/static/chunks/{1z4a4-hyguhc1.js → 29vahszwp_yzk.js} +3 -3
  8. package/bundled/web/.open-next/assets/_next/static/chunks/2evdmhjrm4fp4.js +1 -0
  9. package/bundled/web/.open-next/assets/_next/static/chunks/2owkk0a9xurql.js +1 -0
  10. package/bundled/web/.open-next/assets/_next/static/chunks/{27vz1_55bn5h_.js → 2vvce1uli_yf3.js} +1 -1
  11. package/bundled/web/.open-next/assets/_next/static/chunks/3ad50t_oqhpk_.js +1 -0
  12. package/bundled/web/.open-next/assets/_next/static/chunks/{2yh4j7b0i4eye.js → 3g9-r7m865tot.js} +2 -2
  13. package/bundled/web/.open-next/cache/{UUtXyb9u1pubazU2jTktS → VmFOnIGsnimmwjDQLrNlX}/_global-error.cache +1 -1
  14. package/bundled/web/.open-next/cache/{UUtXyb9u1pubazU2jTktS → VmFOnIGsnimmwjDQLrNlX}/_not-found.cache +1 -1
  15. package/bundled/web/.open-next/cache/{UUtXyb9u1pubazU2jTktS → VmFOnIGsnimmwjDQLrNlX}/device.cache +1 -1
  16. package/bundled/web/.open-next/cache/{UUtXyb9u1pubazU2jTktS → VmFOnIGsnimmwjDQLrNlX}/privacy.cache +1 -1
  17. package/bundled/web/.open-next/cache/{UUtXyb9u1pubazU2jTktS → VmFOnIGsnimmwjDQLrNlX}/sitemap.xml.cache +1 -1
  18. package/bundled/web/.open-next/cloudflare/cache-assets-manifest.sql +1 -1
  19. package/bundled/web/.open-next/cloudflare/init.js +1 -1
  20. package/bundled/web/.open-next/dynamodb-provider/dynamodb-cache.json +1 -1
  21. package/bundled/web/.open-next/middleware/handler.mjs +6 -6
  22. package/bundled/web/.open-next/server-functions/default/src/web/.next/BUILD_ID +1 -1
  23. package/bundled/web/.open-next/server-functions/default/src/web/.next/app-path-routes-manifest.json +1 -0
  24. package/bundled/web/.open-next/server-functions/default/src/web/.next/build-manifest.json +3 -3
  25. package/bundled/web/.open-next/server-functions/default/src/web/.next/prerender-manifest.json +3 -3
  26. package/bundled/web/.open-next/server-functions/default/src/web/.next/required-server-files.json +3 -1
  27. package/bundled/web/.open-next/server-functions/default/src/web/.next/routes-manifest.json +8 -0
  28. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/invite/[token]/page_client-reference-manifest.js +1 -1
  29. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/studio/new/page_client-reference-manifest.js +1 -1
  30. 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
  31. 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
  32. 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
  33. 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
  34. 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
  35. 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
  36. 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
  37. 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
  38. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/page_client-reference-manifest.js +1 -1
  39. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/calendar/page_client-reference-manifest.js +1 -1
  40. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/flags/page_client-reference-manifest.js +1 -1
  41. 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
  42. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/home/page_client-reference-manifest.js +1 -1
  43. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/issues/page_client-reference-manifest.js +1 -1
  44. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/page_client-reference-manifest.js +1 -1
  45. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/runtimes/page_client-reference-manifest.js +1 -1
  46. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/settings/page_client-reference-manifest.js +1 -1
  47. 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
  48. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/traces/page_client-reference-manifest.js +1 -1
  49. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/unread/page_client-reference-manifest.js +1 -1
  50. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/agents/recruit/route.js +1 -1
  51. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/email/[id]/trust/route.js +15 -0
  52. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/email/[id]/trust/route_client-reference-manifest.js +3 -0
  53. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/email/notify/route.js +2 -2
  54. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/email/send/route.js +1 -1
  55. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/page/react-loadable-manifest.json +1 -1
  56. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/page_client-reference-manifest.js +1 -1
  57. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app-paths-manifest.json +1 -0
  58. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__12fz1lr._.js +1 -1
  59. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[turbopack]_runtime.js +7 -5
  60. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_1pt-oj4._.js → _0eu_mts._.js} +2 -2
  61. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0c6q0et._.js → _0kca2k0._.js} +2 -2
  62. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0r2vuif._.js +3 -0
  63. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0v95a0y._.js +14 -14
  64. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_139j3zh._.js +14 -14
  65. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_1nfaney._.js +14 -14
  66. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_1p90k-4._.js +3 -0
  67. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/src_web__next-internal_server_app_api_email_[id]_trust_route_actions_0rx9apz.js +3 -0
  68. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/1b4r_lucide-react_dist_esm_icons_0ci7b7p._.js +3 -0
  69. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[turbopack]_runtime.js +7 -5
  70. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0p54okk._.js +13 -13
  71. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0qgcnj5._.js +1 -1
  72. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0t5ob43._.js +3 -0
  73. 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
  74. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_lib_api_ts_1ffelwp._.js +1 -1
  75. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/middleware-build-manifest.js +3 -3
  76. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/middleware-manifest.json +5 -5
  77. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/server-reference-manifest.js +1 -1
  78. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/server-reference-manifest.json +1 -1
  79. package/bundled/web/.open-next/server-functions/default/src/web/handler.mjs +99 -97
  80. package/bundled/web/.open-next/server-functions/default/src/web/handler.mjs.meta.json +157 -89
  81. package/bundled/web/.open-next/server-functions/default/src/web/index.mjs +6 -6
  82. package/bundled/ws-do/index.js +17 -9
  83. package/package.json +1 -1
  84. package/bundled/web/.open-next/assets/_next/static/chunks/0pd5shecdv7w3.js +0 -1
  85. package/bundled/web/.open-next/assets/_next/static/chunks/1ox78wqeeqant.js +0 -1
  86. package/bundled/web/.open-next/assets/_next/static/chunks/38j_4uwfj09mb.js +0 -1
  87. package/bundled/web/.open-next/assets/_next/static/chunks/3bfk44a51kg4q.js +0 -1
  88. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0qy7lt2._.js +0 -3
  89. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/1b4r_lucide-react_dist_esm_icons_0u7bkx8._.js +0 -3
  90. package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_app_(app)_w_[slug]_agents_[id]_meetings_page_tsx_0ciapb3._.js +0 -3
  91. /package/bundled/web/.open-next/assets/_next/static/{UUtXyb9u1pubazU2jTktS → VmFOnIGsnimmwjDQLrNlX}/_buildManifest.js +0 -0
  92. /package/bundled/web/.open-next/assets/_next/static/{UUtXyb9u1pubazU2jTktS → VmFOnIGsnimmwjDQLrNlX}/_clientMiddlewareManifest.js +0 -0
  93. /package/bundled/web/.open-next/assets/_next/static/{UUtXyb9u1pubazU2jTktS → VmFOnIGsnimmwjDQLrNlX}/_ssgManifest.js +0 -0
  94. /package/bundled/web/.open-next/cache/{UUtXyb9u1pubazU2jTktS → VmFOnIGsnimmwjDQLrNlX}/robots.txt.cache +0 -0
@@ -26324,7 +26324,15 @@ async function listActiveTaskCountsByWorkspace(db, workspaceId) {
26324
26324
  )
26325
26325
  ).groupBy(agentTaskQueue.agentId).limit(200);
26326
26326
  }
26327
- async function listActiveTasksByWorkspace(db, workspaceId) {
26327
+ async function listActiveTasksByWorkspace(db, workspaceId, agentIds) {
26328
+ const conditions = [
26329
+ eq(agentTaskQueue.workspaceId, workspaceId),
26330
+ inArray(agentTaskQueue.status, ["queued", "dispatched", "running"]),
26331
+ ne(agentTaskQueue.type, TASK_TYPES.KILL_TASK)
26332
+ ];
26333
+ if (agentIds && agentIds.length > 0) {
26334
+ conditions.push(inArray(agentTaskQueue.agentId, agentIds));
26335
+ }
26328
26336
  return db.select({
26329
26337
  id: agentTaskQueue.id,
26330
26338
  agentId: agentTaskQueue.agentId,
@@ -26334,13 +26342,7 @@ async function listActiveTasksByWorkspace(db, workspaceId) {
26334
26342
  conversationId: agentTaskQueue.conversationId,
26335
26343
  createdAt: agentTaskQueue.createdAt,
26336
26344
  channel: conversation.channel
26337
- }).from(agentTaskQueue).leftJoin(conversation, eq(agentTaskQueue.conversationId, conversation.id)).where(
26338
- and(
26339
- eq(agentTaskQueue.workspaceId, workspaceId),
26340
- inArray(agentTaskQueue.status, ["queued", "dispatched", "running"]),
26341
- ne(agentTaskQueue.type, TASK_TYPES.KILL_TASK)
26342
- )
26343
- ).orderBy(desc(agentTaskQueue.createdAt)).limit(50);
26345
+ }).from(agentTaskQueue).leftJoin(conversation, eq(agentTaskQueue.conversationId, conversation.id)).where(and(...conditions)).orderBy(desc(agentTaskQueue.createdAt)).limit(50);
26344
26346
  }
26345
26347
  async function listActiveTasksByAgent(db, agentId, workspaceId) {
26346
26348
  return db.select({
@@ -27139,7 +27141,8 @@ __export(email_exports, {
27139
27141
  getRejectedEmails: () => getRejectedEmails,
27140
27142
  getSentEmails: () => getSentEmails,
27141
27143
  getTrustedEmails: () => getTrustedEmails,
27142
- updateEmailStatus: () => updateEmailStatus
27144
+ updateEmailStatus: () => updateEmailStatus,
27145
+ updateEmailWhitelisted: () => updateEmailWhitelisted
27143
27146
  });
27144
27147
  async function createEmail(db, data) {
27145
27148
  const rows = await db.insert(emails).values(data).returning();
@@ -27193,6 +27196,10 @@ async function updateEmailStatus(db, id, workspaceId, status) {
27193
27196
  const rows = await db.update(emails).set({ status }).where(and(eq(emails.id, id), eq(emails.workspaceId, workspaceId))).returning();
27194
27197
  return rows[0] ?? null;
27195
27198
  }
27199
+ async function updateEmailWhitelisted(db, id, workspaceId, isWhitelisted2) {
27200
+ const rows = await db.update(emails).set({ isWhitelisted: isWhitelisted2 }).where(and(eq(emails.id, id), eq(emails.workspaceId, workspaceId))).returning();
27201
+ return rows[0] ?? null;
27202
+ }
27196
27203
  async function deleteEmail(db, id, workspaceId) {
27197
27204
  return db.delete(emails).where(and(eq(emails.id, id), eq(emails.workspaceId, workspaceId)));
27198
27205
  }
@@ -27213,6 +27220,7 @@ var init_email2 = __esm({
27213
27220
  __name(getRejectedEmails, "getRejectedEmails");
27214
27221
  __name(getEmailByMessageId, "getEmailByMessageId");
27215
27222
  __name(updateEmailStatus, "updateEmailStatus");
27223
+ __name(updateEmailWhitelisted, "updateEmailWhitelisted");
27216
27224
  __name(deleteEmail, "deleteEmail");
27217
27225
  }
27218
27226
  });
@@ -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": "7825e0b32f9836c23f00348f89abd9a3",
159
+ "x-prerender-revalidate": "369dca3fae2a08bd2dbc6591de907ec1",
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
- "UUtXyb9u1pubazU2jTktS"
183
+ "VmFOnIGsnimmwjDQLrNlX"
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), "UUtXyb9u1pubazU2jTktS");
235
+ this.sql.exec("INSERT OR REPLACE INTO failed_state (id, data, buildId) VALUES (?, ?, ?)", msg.MessageDeduplicationId, JSON.stringify(updatedFailedState), "VmFOnIGsnimmwjDQLrNlX");
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 != ?", "UUtXyb9u1pubazU2jTktS");
260
- this.sql.exec("DELETE FROM sync WHERE buildId != ?", "UUtXyb9u1pubazU2jTktS");
259
+ this.sql.exec("DELETE FROM failed_state WHERE buildId != ?", "VmFOnIGsnimmwjDQLrNlX");
260
+ this.sql.exec("DELETE FROM sync WHERE buildId != ?", "VmFOnIGsnimmwjDQLrNlX");
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
- UUtXyb9u1pubazU2jTktS
1
+ VmFOnIGsnimmwjDQLrNlX
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,222862,636557,e=>{"use strict";var t=e.i(811374);class n extends Error{status;details;constructor(e,t,n){super(e),this.name="ApiError",this.status=t,this.details=n}get isNetworkError(){return 0===this.status}get isRateLimit(){return 429===this.status}get isUnauthorized(){return 401===this.status}}function a(e,t){return"validation error"===e&&t?.length?function(e){let[t,...n]=e.split(":"),a=n.join(":").trim();if(!a)return e;let r=t.trim(),i=r.trim().replace(/[_-]+/g," ").replace(/\b\w/g,e=>e.toUpperCase()),s=a.replace(/^required$/i,"is required"),o=s.toLowerCase().replace(/[_-]+/g," "),l=r.toLowerCase().replace(/[_-]+/g," ");return l&&o.startsWith(`${l} `)&&(s=s.slice(r.length).trimStart()),i?`${i} ${s}`:s}(t[0]):e}async function r(e,t){let r;try{r=await fetch(""+e,{...t,credentials:"include",headers:{"Content-Type":"application/json",...t?.headers}})}catch(e){if(e instanceof TypeError)throw new n("Unable to connect — check your network",0);throw e}if(401===r.status)throw window.location.href="/sign-in",new n("Unauthorized",401);if(!r.ok){let e,t;try{let n=await r.json();e=n.error,t=n.details}catch{}if(429===r.status)throw new n("Please wait a moment before trying again",429);if(r.status>=500)throw new n(a(e,t)||"Something went wrong — please try again",r.status,t);throw new n(a(e,t)||"Something went wrong",r.status,t)}if(204!==r.status)return r.json()}function i(e,t){let n=new URLSearchParams({workspace_id:e,...t});return`?${n.toString()}`}e.s(["ApiError",0,n],636557),parseInt(t.default.env.NEXT_PUBLIC_MOCK_NETWORK_DELAY_MS||"300",10);let s=async(e,t,a,s,o)=>{let l;if(!s||0===s.length)return r(`/api/conversations/${e}/messages${i(a)}`,{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(a)}`,{method:"POST",credentials:"include",body:c})}catch(e){if(e instanceof TypeError)throw new n("Unable to connect — check your network",0);throw e}if(401===l.status)throw window.location.href="/sign-in",new n("Unauthorized",401);if(!l.ok){let e,t;try{let n=await l.json();e=n.error,t=n.details}catch{}if(429===l.status)throw new n("Please wait a moment before trying again",429);if(l.status>=500)throw new n(e||"Something went wrong — please try again",l.status,t);throw new n(e||"Something went wrong",l.status,t)}return l.json()},o=async(e,t)=>{let n=new URLSearchParams({workspace_id:t}),a=await fetch(`/api/email/${e}/body?${n}`,{credentials:"include"});if(!a.ok)return{content:"(body not available)",isHtml:!1};let r=a.headers.get("Content-Type")??"";return{content:await a.text(),isHtml:r.includes("text/html")}},l=async(e,t)=>{let a=new FormData;a.append("file",e);let r=await fetch(`/api/email/upload${i(t)}`,{method:"POST",credentials:"include",body:a});if(!r.ok)throw new n(await r.text().catch(()=>"Upload failed"),r.status);return r.json()},c=async(e,t)=>{let a;if(!t.files||0===t.files.length)return r(`/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{a=await fetch(`/api/issues${i(e)}`,{method:"POST",credentials:"include",body:s})}catch(e){if(e instanceof TypeError)throw new n("Unable to connect — check your network",0);throw e}if(401===a.status)throw window.location.href="/sign-in",new n("Unauthorized",401);if(!a.ok){let e,t;try{let n=await a.json();e=n.error,t=n.details}catch{}if(429===a.status)throw new n("Please wait a moment before trying again",429);if(a.status>=500)throw new n(e||"Something went wrong — please try again",a.status,t);throw new n(e||"Something went wrong",a.status,t)}return a.json()},u=async(e,t)=>{let n=new URLSearchParams({workspace_id:t}),a=await fetch(`/api/artifacts/${e}/content?${n}`,{credentials:"include"});return a.ok?a.text():"(content not available)"};e.s(["acceptInvite",0,e=>r(`/api/invite/${e}`,{method:"POST"}),"addWhitelistEmail",0,(e,t,n)=>r(`/api/agents/${e}/whitelist${i(n)}`,{method:"POST",body:JSON.stringify({email:t})}),"approveMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings/${t}/approve${i(n)}`,{method:"POST"}),"cancelActiveTask",0,(e,t)=>r(`/api/conversations/${e}/active-task${i(t)}`,{method:"DELETE"}),"chatInit",0,(e,t,n)=>r(`/api/agents/${e}/chat-init${i(t)}`,{method:"POST",body:JSON.stringify({...n?{channel:n}:{}})}),"checkFreshness",0,(e,t)=>{let n={};return e.conversationId&&(n.conversation_id=e.conversationId),e.agentId&&(n.agent_id=e.agentId),e.channel&&(n.channel=e.channel),r(`/api/conversations/check-fresh${i(t,n)}`)},"conversationInit",0,(e,t,n)=>{let a={};return n?.newestMessageId&&(a.newest_message_id=n.newestMessageId),n?.messageCount&&(a.message_count=String(n.messageCount)),r(`/api/conversations/${e}/init${i(t,a)}`)},"createAgent",0,(e,t)=>r(`/api/agents${i(t)}`,{method:"POST",body:JSON.stringify(e)}),"createAgentLink",0,(e,t)=>r(`/api/agent-links${i(t)}`,{method:"POST",body:JSON.stringify(e)}),"createCalendarEvent",0,(e,t)=>r(`/api/calendar${i(t)}`,{method:"POST",body:JSON.stringify(e)}),"createChannelApi",0,(e,t)=>r(`/api/channels${i(e)}`,{method:"POST",body:JSON.stringify({name:t})}),"createConversation",0,(e,t,n)=>r(`/api/conversations${i(t)}`,{method:"POST",body:JSON.stringify({agent_id:e,...n?{channel:n}:{}})}),"createEmailAccount",0,(e,t,n)=>r(`/api/agents/${e}/email-accounts${i(n)}`,{method:"POST",body:JSON.stringify(t)}),"createInvite",0,e=>r(`/api/workspaces/${e}/invites${i(e)}`,{method:"POST"}),"createIssue",0,c,"createMachineToken",0,(e,t)=>r(`/api/machine-tokens${t?i(t):""}`,{method:"POST",body:JSON.stringify({name:e||"default"})}),"createMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings${i(t)}`,{method:"POST",body:JSON.stringify(n)}),"createThread",0,(e,t,n,a)=>r(`/api/conversations/${e}/threads${i(a)}`,{method:"POST",body:JSON.stringify({parent_message_id:t,content:n})}),"deleteAgent",0,(e,t)=>r(`/api/agents/${e}${i(t)}`,{method:"DELETE"}),"deleteAgentLink",0,(e,t)=>r(`/api/agent-links/${e}${i(t)}`,{method:"DELETE"}),"deleteCalendarEvent",0,(e,t,n)=>r(`/api/calendar/${e}${i(t)}`,{method:"DELETE",...n&&n.scope?{headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}:{}}),"deleteChannelApi",0,(e,t)=>r(`/api/channels/${e}${i(t)}`,{method:"DELETE"}),"deleteEmail",0,(e,t)=>r(`/api/email/${e}${i(t)}`,{method:"DELETE"}),"deleteEmailAccount",0,(e,t,n)=>r(`/api/agents/${e}/email-accounts/${t}${i(n)}`,{method:"DELETE"}),"deleteIssue",0,(e,t)=>r(`/api/issues/${t}${i(e)}`,{method:"DELETE"}),"deleteMachine",0,(e,t)=>r(`/api/runtimes/machine${i(t,{daemon_id:e})}`,{method:"DELETE"}),"deleteMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings/${t}${i(n)}`,{method:"DELETE"}),"deleteWorkspace",0,(e,t)=>r(`/api/workspaces/${e}${i(e)}`,{method:"DELETE",body:JSON.stringify({confirm_name:t})}),"fetchLatestCliVersion",0,()=>r("/api/cli/latest-version"),"fetchModelOptions",0,()=>r("/api/config/model-options"),"flagMessage",0,(e,t)=>r(`/api/flags${i(e)}`,{method:"POST",body:JSON.stringify({messageId:t})}),"getActiveTask",0,(e,t)=>r(`/api/conversations/${e}/active-task${i(t)}`),"getAgentSkills",0,(e,t)=>r(`/api/agents/${e}/skills${i(t)}`),"getArtifactContent",0,u,"getCalendarEvent",0,(e,t)=>r(`/api/calendar/${e}${i(t)}`),"getEmail",0,(e,t)=>r(`/api/email/${e}${i(t)}`),"getEmailBody",0,o,"getEmailThread",0,(e,t)=>r(`/api/email/${e}/thread${i(t)}`),"getFlaggedCount",0,e=>r(`/api/flags/count${i(e)}`),"getInboxCount",0,(e,t)=>{let n={};return t?.types?.length&&(n.types=t.types.join(",")),r(`/api/inbox/count${i(e,n)}`)},"getInviteInfo",0,e=>r(`/api/invite/${e}`),"getIssue",0,(e,t)=>r(`/api/issues/${t}${i(e)}`),"getMachineTokenStatus",0,()=>r("/api/machine-tokens/status"),"getMemberMe",0,e=>r(`/api/members/me${i(e)}`),"getMinCliVersion",0,()=>r("/api/config/min-version"),"getTask",0,(e,t)=>r(`/api/tasks/${e}${i(t)}`),"getTaskMessages",0,(e,t,n)=>r(`/api/tasks/${e}/messages${i(t,n?{since:String(n)}:void 0)}`),"getThreadSummaries",0,(e,t)=>r(`/api/conversations/${e}/threads${i(t)}`),"getTrace",0,(e,t)=>r(`/api/traces/${e}${i(t)}`),"getWorkspaceOverview",0,e=>r(`/api/workspaces/${e}/overview${i(e)}`),"grantAgentAccess",0,(e,t,n)=>r(`/api/agents/${t}/access${i(e)}`,{method:"POST",body:JSON.stringify({user_id:n})}),"listAgentAccess",0,(e,t)=>r(`/api/agents/${t}/access${i(e)}`),"listAgentActiveTaskCounts",0,e=>r(`/api/agents/active-task-counts${i(e)}`),"listAgentActivity",0,(e,t,n)=>{let a={};return n?.limit&&(a.limit=String(n.limit)),n?.before&&(a.before=n.before),n?.beforeId&&(a.before_id=n.beforeId),n?.status&&(a.status=n.status),n?.type&&(a.type=n.type),r(`/api/agents/${e}/activity${i(t,a)}`)},"listAgentLinks",0,e=>r(`/api/agent-links${i(e)}`),"listAgentPins",0,e=>r(`/api/agents/pins${i(e)}`),"listAgents",0,e=>r(`/api/agents${i(e)}`),"listArtifacts",0,(e,t)=>r(`/api/artifacts${i(t,{conversation_id:e})}`),"listCalendarEvents",0,(e,t)=>{let n={};return t?.agentId&&(n.agentId=t.agentId),t?.from&&(n.from=t.from),t?.to&&(n.to=t.to),r(`/api/calendar${i(e,n)}`)},"listChannels",0,e=>r(`/api/channels${i(e)}`),"listEmailAccounts",0,(e,t)=>r(`/api/agents/${e}/email-accounts${i(t)}`),"listEmails",0,(e,t,n,a)=>r(`/api/email${i(t,{agentId:e,...n?{folder:n}:{},...a?{address:a}:{}})}`),"listFlaggedItems",0,(e,t)=>{let n={};return t?.limit&&(n.limit=String(t.limit)),t?.before&&(n.before=t.before),r(`/api/flags${i(e,n)}`)},"listFlaggedMessageIds",0,(e,t)=>r(`/api/flags${i(e,{conversation_id:t,ids_only:"true"})}`),"listInboxItems",0,(e,t)=>{let n={};return t?.limit&&(n.limit=String(t.limit)),t?.before&&(n.before=t.before),t?.types?.length&&(n.types=t.types.join(",")),r(`/api/inbox${i(e,n)}`)},"listInvites",0,e=>r(`/api/workspaces/${e}/invites${i(e)}`),"listIssues",0,(e,t)=>{let n={};return t?.agentId&&(n.agentId=t.agentId),t?.status&&(n.status=t.status),t?.terminal!==void 0&&(n.terminal=String(t.terminal)),r(`/api/issues${i(e,n)}`)},"listMeetings",0,(e,t)=>r(`/api/agents/${e}/meetings${i(t)}`),"listMembers",0,e=>r(`/api/workspaces/${e}/members${i(e)}`),"listMessages",0,(e,t,n)=>{let a={};return n?.limit&&(a.limit=String(n.limit)),n?.before&&(a.before=n.before),n?.beforeId&&(a.before_id=n.beforeId),r(`/api/conversations/${e}/messages${i(t,a)}`)},"listMessagesAroundTask",0,(e,t,n)=>r(`/api/conversations/${e}/messages${i(t,{around_task:n})}`),"listPreviousConversations",0,(e,t,n)=>{let a={exclude:n.exclude,before:n.before};return n.channel&&(a.channel=n.channel),n.limit&&(a.limit=String(n.limit)),r(`/api/agents/${e}/conversations${i(t,a)}`)},"listRuntimes",0,e=>r(`/api/runtimes${i(e)}`),"listTraces",0,(e,t)=>{let n={};return t?.limit&&(n.limit=String(t.limit)),t?.before&&(n.before=t.before),t?.status&&(n.status=t.status),t?.multiAgent&&(n.multiAgent="true"),t?.agentId&&(n.agentId=t.agentId),t?.channel&&(n.channel=t.channel),r(`/api/traces${i(e,n)}`)},"listWhitelist",0,(e,t)=>r(`/api/agents/${e}/whitelist${i(t)}`),"listWorkspaceActiveTasks",0,e=>r(`/api/agents/active-tasks${i(e)}`),"listWorkspaces",0,()=>r("/api/workspaces"),"markAllInboxRead",0,e=>r(`/api/inbox/read-all${i(e)}`,{method:"POST"}),"markInboxRead",0,(e,t)=>r(`/api/inbox/read${i(t)}`,{method:"POST",body:JSON.stringify({conversationId:e})}),"pinAgent",0,(e,t)=>r(`/api/agents/${t}/pin${i(e)}`,{method:"POST"}),"removeMember",0,(e,t)=>r(`/api/workspaces/${e}/members/${t}${i(e)}`,{method:"DELETE"}),"removeWhitelistEmail",0,(e,t,n)=>r(`/api/agents/${e}/whitelist/${t}${i(n)}`,{method:"DELETE"}),"renameChannelApi",0,(e,t,n)=>r(`/api/channels/${e}${i(t)}`,{method:"PATCH",body:JSON.stringify({name:n})}),"reorderAgentPins",0,(e,t)=>r(`/api/agents/pins/reorder${i(e)}`,{method:"PUT",body:JSON.stringify({ordered_agent_ids:t})}),"reorderChannelsApi",0,(e,t)=>r(`/api/channels/reorder${i(e)}`,{method:"PUT",body:JSON.stringify({ordered_channel_ids:t})}),"reorderUnpinnedAgents",0,(e,t)=>r(`/api/agents/sidebar/reorder${i(e)}`,{method:"PUT",body:JSON.stringify({ordered_agent_ids:t})}),"requestWorkspaceBrowse",0,(e,t,n,a)=>r(`/api/agents/${e}/workspace/browse${i(t)}`,{method:"POST",body:JSON.stringify({request_type:n,path:a})}),"retryTask",0,(e,t)=>r(`/api/tasks/${e}/retry${i(t)}`,{method:"POST"}),"revokeAgentAccess",0,(e,t,n,a=!1)=>r(`/api/agents/${t}/access/${n}${i(e)}${a?"&remove_whitelist=true":""}`,{method:"DELETE"}),"revokeInvite",0,(e,t)=>r(`/api/workspaces/${e}/invites/${t}${i(e)}`,{method:"DELETE"}),"sendEmail",0,(e,t,n,a,s,o,l,c)=>r(`/api/email/send${i(s)}`,{method:"POST",body:JSON.stringify({agentId:e,to:t,subject:n,htmlBody:a,attachments:o,...l,customAccountId:c})}),"sendMessage",0,s,"stopMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings/${t}/stop${i(n)}`,{method:"POST"}),"syncEmailAccount",0,(e,t,n)=>r(`/api/agents/${e}/email-accounts/${t}/sync${i(n)}`,{method:"POST"}),"triggerRuntimeRescan",0,(e,t)=>r(`/api/runtimes/${e}/rescan${i(t)}`,{method:"POST"}),"triggerRuntimeUpdate",0,(e,t)=>r(`/api/runtimes/${e}/update${i(t)}`,{method:"POST"}),"trustEmail",0,(e,t)=>r(`/api/email/${e}/trust${i(t)}`,{method:"POST"}),"unflagMessage",0,(e,t)=>r(`/api/flags/${t}${i(e)}`,{method:"DELETE"}),"unpinAgent",0,(e,t)=>r(`/api/agents/${t}/pin${i(e)}`,{method:"DELETE"}),"updateAgent",0,(e,t,n)=>r(`/api/agents/${e}${i(n)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateAgentLink",0,(e,t,n)=>r(`/api/agent-links/${e}${i(n)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateCalendarEvent",0,(e,t,n)=>r(`/api/calendar/${e}${i(n)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateEmailStatus",0,(e,t,n)=>r(`/api/email/${e}${i(t)}`,{method:"PATCH",body:JSON.stringify({status:n})}),"updateIssue",0,(e,t,n)=>r(`/api/issues/${t}${i(e)}`,{method:"PATCH",body:JSON.stringify(n)}),"updateMemberMe",0,(e,t)=>r(`/api/members/me${i(e)}`,{method:"PATCH",body:JSON.stringify({global_instruction:t})}),"updateWorkspace",0,(e,t)=>r(`/api/workspaces/${e}${i(e)}`,{method:"PATCH",body:JSON.stringify(t)}),"uploadEmailAttachment",0,l],222862)},500324,e=>{"use strict";var t=e.i(653772),n=e.i(511043);let a=(0,n.createContext)(null);e.s(["WorkspaceProvider",0,function({workspaceId:e,slug:r,children:i}){return(0,n.useEffect)(()=>{try{localStorage.setItem("lastWorkspace",r)}catch{}},[r]),(0,t.jsx)(a.Provider,{value:{workspaceId:e,slug:r},children:i})},"useWorkspace",0,function(){let e=(0,n.useContext)(a);if(!e)throw Error("useWorkspace must be used within WorkspaceProvider");return e}])},642342,e=>{"use strict";var t=e.i(811374),n=e.i(511043);let a=(0,e.i(613349).isLocalMode)(),r=Number(t.default.env.NEXT_PUBLIC_WS_DO_PORT)||8789,i=Number(t.default.env.NEXT_PUBLIC_WS_RECONNECT_DELAY_MS)||1e3,s=Number(t.default.env.NEXT_PUBLIC_WS_RECONNECT_MAX_DELAY_MS)||3e4;e.s(["useUserWs",0,function(e,t){let o=(0,n.useRef)(null),l=(0,n.useRef)(i),c=(0,n.useRef)(e),u=(0,n.useRef)(t?.onReconnect),d=(0,n.useRef)(null),g=(0,n.useRef)(!1),p=(0,n.useRef)(0),m=(0,n.useRef)(null),f=(0,n.useRef)(null);(0,n.useEffect)(()=>{c.current=e},[e]),(0,n.useEffect)(()=>{u.current=t?.onReconnect},[t?.onReconnect]);let h=(0,n.useRef)(null),$=(0,n.useCallback)(()=>{let e=Math.min(l.current,s);l.current=Math.min(2*e,s),d.current=setTimeout(()=>{h.current?.()},e+500*Math.random())},[]),y=(0,n.useCallback)(async()=>{let e,t,n,s=r;try{let n=await fetch("/api/ws/token");if(!n.ok){console.warn("[ws] token fetch failed:",n.status),$();return}let a=await n.json();e=a.userId,t=a.token,a.wsPort&&(s=a.wsPort)}catch(e){console.warn("[ws] token fetch error:",e),$();return}let d=a?`ws://localhost:${s}/?userId=${e}`:`${location.origin.replace("http","ws")}/api/ws/user?userId=${e}`;try{n=new WebSocket(d)}catch(e){console.warn("[ws] WebSocket creation failed:",e),$();return}o.current=n,n.onopen=()=>{l.current=i,n.send(JSON.stringify({type:"auth",token:t})),g.current&&u.current?.(),g.current=!0,p.current=Date.now(),m.current=setInterval(()=>{n.readyState===WebSocket.OPEN&&n.send("ping")},25e3),f.current=setInterval(()=>{Date.now()-p.current>3e4&&n.close()},5e3)},n.onmessage=e=>{p.current=Date.now();try{let t=JSON.parse(e.data);if("auth.ok"===t.type)return void n.send(JSON.stringify({type:"check_daemon_status"}));c.current(t)}catch{}},n.onerror=()=>{},n.onclose=()=>{n===o.current&&(m.current&&(clearInterval(m.current),m.current=null),f.current&&(clearInterval(f.current),f.current=null),$())}},[$]);return(0,n.useEffect)(()=>{h.current=y},[y]),(0,n.useEffect)(()=>(y(),()=>{null!==d.current&&(clearTimeout(d.current),d.current=null),m.current&&(clearInterval(m.current),m.current=null),f.current&&(clearInterval(f.current),f.current=null);let e=o.current;o.current=null,e?.close()}),[y]),{send:(0,n.useCallback)(e=>{let t=o.current;t&&t.readyState===WebSocket.OPEN&&t.send(JSON.stringify(e))},[])}}])},355578,e=>{"use strict";var t=e.i(653772),n=e.i(511043),a=e.i(222862),r=e.i(516266),i=e.i(642342);let s=(0,n.createContext)(null);e.s(["AgentProvider",0,function({workspaceId:e,children:o}){let[l,c]=(0,n.useState)([]),[u,d]=(0,n.useState)([]),[g,p]=(0,n.useState)(!0),[m,f]=(0,n.useState)({}),[h,$]=(0,n.useState)([]),y=(0,n.useRef)(!1),[w,b]=(0,n.useState)([]),[k,S]=(0,n.useState)(null),E=(0,n.useCallback)(()=>S(null),[]),[v,T]=(0,n.useState)(new Map),[O,I]=(0,n.useState)(new Map),_=(0,n.useRef)(!1),C=(0,n.useRef)(new Set),A=(0,n.useRef)(new Set),N=(0,n.useRef)(!0),P=(0,n.useRef)(!1),M=(0,n.useCallback)(e=>(C.current.add(e),()=>{C.current.delete(e)}),[]),L=(0,n.useCallback)(e=>(A.current.add(e),()=>{A.current.delete(e)}),[]),R=(0,n.useRef)(!1),J=(0,n.useCallback)(async()=>{if(!R.current){R.current=!0;try{if(y.current){let t=await (0,a.listWorkspaceActiveTasks)(e);if(!N.current)return;$(t.tasks);let n={};for(let e of t.tasks)n[e.agent_id]=(n[e.agent_id]??0)+1;f(n),y.current=t.tasks.length>0}else{let t=await (0,a.listAgentActiveTaskCounts)(e);if(!N.current)return;if(f(t.counts),Object.values(t.counts).some(e=>e>0)){y.current=!0;let t=await (0,a.listWorkspaceActiveTasks)(e);N.current&&$(t.tasks)}else $([])}}catch{}finally{R.current=!1}}},[e]);(0,n.useEffect)(()=>{N.current=!0,J();let e=setInterval(J,15e3);return()=>{N.current=!1,clearInterval(e)}},[J]);let x=(0,n.useCallback)(async()=>{try{let[t,n,r,i]=await Promise.all([(0,a.listAgents)(e),(0,a.listRuntimes)(e),(0,a.listAgentPins)(e),(0,a.listAgentLinks)(e)]);c(t),d(n),b(i),T(new Map(r.pins.map(e=>[e.agent_id,{created_at:e.created_at,position:e.position}]))),I(new Map(r.sidebar_order.map(e=>[e.agent_id,e.position])))}catch(e){r.toast.error(e instanceof Error?e.message:"Failed to load data")}finally{p(!1),_.current=!0}},[e]),D=(0,n.useCallback)(async()=>{if(!P.current){P.current=!0;try{let t=await (0,a.listRuntimes)(e);d(t)}catch{}finally{P.current=!1}}},[e]);(0,n.useEffect)(()=>{x()},[x]),(0,n.useEffect)(()=>{let e=null,t=setInterval(()=>{"visible"===document.visibilityState&&D()},3e4),n=()=>{"visible"===document.visibilityState&&(e=setTimeout(()=>D(),2e3*Math.random()))};return document.addEventListener("visibilitychange",n),()=>{clearInterval(t),e&&clearTimeout(e),document.removeEventListener("visibilitychange",n)}},[D]);let W=(0,n.useCallback)(t=>{for(let e of C.current)e(t);switch(t.type){case"runtime.registered":if(t.workspaceId!==e)break;x();break;case"runtime.deleted":x();break;case"runtime.status":if(t.workspaceId!==e)break;D();break;case"agent.created":if(t.workspaceId!==e)break;S({agentId:t.agentId,parentAgentId:t.parentAgentId}),x();break;case"task.updated":J()}},[x,D,J,e]),U=(0,n.useCallback)(()=>{for(let e of(D(),A.current))e()},[D]);(0,i.useUserWs)(W,{onReconnect:U});let F=(0,n.useCallback)(async t=>{try{let n=await (0,a.createAgent)(t,e);return await x(),n}catch(e){return r.toast.error(e instanceof Error?e.message:"Failed to create agent"),null}},[x,e]),j=(0,n.useCallback)(async(t,n)=>{try{return await (0,a.updateAgent)(t,n,e),await x(),!0}catch(e){return r.toast.error(e instanceof Error?e.message:"Failed to update agent"),!1}},[x,e]),B=(0,n.useCallback)(async t=>{try{return await (0,a.deleteAgent)(t,e),await x(),!0}catch(e){return r.toast.error(e instanceof Error?e.message:"Failed to remove agent"),!1}},[x,e]),H=(0,n.useCallback)(async t=>{T(e=>{let n=Math.max(-1,...[...e.values()].map(e=>e.position));return new Map(e).set(t,{created_at:new Date().toISOString(),position:n+1})});try{await (0,a.pinAgent)(e,t)}catch{T(e=>{let n=new Map(e);return n.delete(t),n}),r.toast.error("Failed to pin agent")}},[e]),X=(0,n.useCallback)(async t=>{let n;T(e=>{n=e.get(t);let a=new Map(e);return a.delete(t),a});try{await (0,a.unpinAgent)(e,t)}catch{void 0!==n&&T(e=>new Map(e).set(t,n)),r.toast.error("Failed to unpin agent")}},[e]),q=(0,n.useCallback)(async t=>{let n=new Map(v);T(e=>{let n=new Map(e);return t.forEach((e,t)=>{let a=n.get(e);a&&n.set(e,{...a,position:t})}),n});try{await (0,a.reorderAgentPins)(e,t)}catch{T(n),r.toast.error("Failed to reorder pins")}},[e,v]),Y=(0,n.useCallback)(async t=>{let n=new Map(O);I(new Map(t.map((e,t)=>[e,t])));try{await (0,a.reorderUnpinnedAgents)(e,t)}catch{I(n),r.toast.error("Failed to reorder agents")}},[e,O]),z=(0,n.useCallback)(()=>{let e=u.find(e=>"online"===e.status);return e?.id??""},[u]),K=(0,n.useCallback)(async()=>{try{return(await (0,a.createMachineToken)("cli",e)).token}catch(e){return r.toast.error(e instanceof Error?e.message:"Failed to generate token"),null}},[e]),V=(0,n.useCallback)(async t=>{try{return await (0,a.deleteMachine)(t,e),await x(),!0}catch(e){return r.toast.error(e instanceof Error?e.message:"Failed to remove machine"),!1}},[x,e]);return(0,t.jsx)(s.Provider,{value:{workspaceId:e,agents:l,agentLinks:w,runtimes:u,loading:g,activeTaskCounts:m,activeTaskDetails:h,pendingNewAgent:k,clearPendingNewAgent:E,pins:v,reload:x,subscribeWs:M,subscribeReconnect:L,handleCreateAgent:F,handleUpdateAgent:j,handleDeleteAgent:B,handlePinAgent:H,handleUnpinAgent:X,handleReorderPins:q,unpinnedOrder:O,handleReorderUnpinned:Y,getFirstOnlineRuntimeId:z,handleGenerateToken:K,handleDeleteMachine:V},children:o})},"useAgentContext",0,function(){let e=(0,n.useContext)(s);if(!e)throw Error("useAgentContext must be used within AgentProvider");return e},"useAgentContextSafe",0,function(){return(0,n.useContext)(s)}])},899746,e=>{"use strict";let t="browser-notification-enabled",n="browser-notification-events",a=["completed","failed"],r={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(n);if(e)return JSON.parse(e)}catch{}return[...a]}async function l(){return!!i()&&("granted"===Notification.permission||"denied"!==Notification.permission&&"granted"===await Notification.requestPermission())}e.s(["NOTIFICATION_EVENTS",0,a,"NOTIFICATION_EVENT_LABELS",0,r,"getNotificationEnabled",0,s,"getNotificationEvents",0,o,"isNotificationSupported",0,i,"requestNotificationPermission",0,l,"sendTaskNotification",0,function(e,t,n){if(!i()||"granted"!==Notification.permission||!s()||!o().includes(e))return;let a=r[e]??`Task ${e}`;new Notification(t?`${t} — ${a}`:a,{body:n??"",icon:"/alook.svg"})},"setNotificationEnabled",0,function(e){localStorage.setItem(t,String(e))},"setNotificationEvents",0,function(e){localStorage.setItem(n,JSON.stringify(e))}])},875494,685835,e=>{"use strict";var t=e.i(653772),n=e.i(511043),a=e.i(222862),r=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"],u=["user_dm_message"];function d(){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 u)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,u,"getInboxFilterTypes",0,d,"setInboxFilterTypes",0,function(e){let t=[...e];for(let e of u)t.includes(e)||t.unshift(e);localStorage.setItem(o,JSON.stringify(t))}],685835);let g=(0,n.createContext)(null),p={count:0,notificationToken:0,refresh:()=>{},decrement:()=>{}};e.s(["InboxCountProvider",0,function({children:e}){let{workspaceId:o}=(0,i.useWorkspace)(),{subscribeWs:l,agents:c}=(0,r.useAgentContext)(),[u,p]=(0,n.useState)(0),[m,f]=(0,n.useState)(0),h=(0,n.useRef)(null),$=(0,n.useRef)(null),y=(0,n.useRef)(c);(0,n.useEffect)(()=>{y.current=c});let w=(0,n.useCallback)(()=>{let e=d();(0,a.getInboxCount)(o,{types:e}).then(e=>{let t=h.current;if(h.current=e.count,p(e.count),null!==t&&e.count>t){f(e=>e+1);let e=$.current?y.current.find(e=>e.id===$.current):void 0;(0,s.sendTaskNotification)("completed",e?.name)}$.current=null}).catch(()=>{})},[o]),b=(0,n.useCallback)(()=>{p(e=>Math.max(0,e-1))},[]);return(0,n.useEffect)(()=>{w()},[w]),(0,n.useEffect)(()=>l(e=>{"task.updated"===e.type&&("completed"===e.status||"failed"===e.status)&&($.current=e.agentId,w())}),[l,w]),(0,n.useEffect)(()=>{let e=setInterval(w,6e4);return()=>clearInterval(e)},[w]),(0,t.jsx)(g.Provider,{value:{count:u,notificationToken:m,refresh:w,decrement:b},children:e})},"useInboxCount",0,function(){return(0,n.useContext)(g)??p}],875494)},631822,e=>{e.v(t=>Promise.all(["static/chunks/3c9-pu4v167fy.js"].map(t=>e.l(t))).then(()=>t(70725)))}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,527746,e=>{"use strict";var t=e.i(653772),s=e.i(511043),a=e.i(126942),i=e.i(500324),n=e.i(186339),l=e.i(875061),r=e.i(332680),c=e.i(393153),o=e.i(728886),d=e.i(782265),u=e.i(947308),m=e.i(267007),x=e.i(353155),p=e.i(294518),g=e.i(82970),h=e.i(945074),f=e.i(813141);let j=(0,e.i(419412).default)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);var v=e.i(516266),b=e.i(613349),N=e.i(222862);let y={pending:{label:"Pending",variant:"outline",icon:p.Clock},scheduled:{label:"Scheduled",variant:"secondary",icon:p.Clock},joining:{label:"Joining...",variant:"default",icon:h.Loader2},recording:{label:"Recording",variant:"default",icon:d.Video},completed:{label:"Completed",variant:"secondary",icon:x.Check},failed:{label:"Failed",variant:"destructive",icon:g.AlertCircle}};function k({status:e}){let s=y[e]??y.pending,a=s.icon;return(0,t.jsxs)(l.Badge,{variant:s.variant,className:"gap-1 text-[10px]",children:[(0,t.jsx)(a,{className:(0,b.cn)("size-2.5","joining"===e&&"animate-spin","recording"===e&&"animate-pulse")}),s.label]})}function C(e){return e?new Date(e).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}):""}e.s(["default",0,function(){let e=(0,a.useParams)().id,{workspaceId:l}=(0,i.useWorkspace)(),[x,p]=(0,s.useState)([]),[g,y]=(0,s.useState)(!0),[S,M]=(0,s.useState)(!1),[w,z]=(0,s.useState)(!1),[B,_]=(0,s.useState)(null),[F,T]=(0,s.useState)(!1),[P,J]=(0,s.useState)(""),[R,U]=(0,s.useState)(""),[A,L]=(0,s.useState)(""),O=(0,s.useCallback)(async()=>{try{let t=await (0,N.listMeetings)(e,l);p(t)}catch{v.toast.error("Failed to load meetings")}finally{y(!1)}},[e,l]);(0,s.useEffect)(()=>{let t=!1;return(0,N.listMeetings)(e,l).then(e=>{t||(p(e),y(!1))}).catch(()=>{t||(v.toast.error("Failed to load meetings"),y(!1))}),()=>{t=!0}},[e,l]),(0,s.useEffect)(()=>{if(!x.some(e=>"joining"===e.status||"recording"===e.status))return;let e=setInterval(O,5e3);return()=>clearInterval(e)},[x,O]);let D=async()=>{if(P){z(!0);try{let t=A.split(/[,\n]/).map(e=>e.trim()).filter(Boolean);await (0,N.createMeeting)(e,l,{meetingUrl:P,title:R||void 0,participants:t.length>0?t:void 0}),v.toast.success("Meeting created"),M(!1),J(""),U(""),L(""),O()}catch(e){v.toast.error(e instanceof Error?e.message:"Failed to create meeting")}finally{z(!1)}}},E=async t=>{try{await (0,N.stopMeeting)(e,t.id,l),v.toast.success("Meeting stopped"),O()}catch{v.toast.error("Failed to stop meeting")}},V=async t=>{try{await (0,N.approveMeeting)(e,t.id,l),v.toast.success("Meeting approved"),O()}catch{v.toast.error("Failed to approve meeting")}},G=async()=>{if(B){T(!0);try{await (0,N.deleteMeeting)(e,B.id,l),v.toast.success("Meeting deleted"),_(null),O()}catch{v.toast.error("Failed to delete meeting")}finally{T(!1)}}};return(0,t.jsxs)("div",{className:"flex-1 flex flex-col min-h-0",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border/50",children:[(0,t.jsx)("h2",{className:"text-sm font-medium",children:"Meetings"}),(0,t.jsxs)(n.Button,{size:"sm",onClick:()=>M(!0),className:"gap-1",children:[(0,t.jsx)(u.Plus,{className:"size-3"}),"Join Meeting"]})]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto thin-scrollbar",children:g?(0,t.jsx)("div",{className:"p-4 space-y-3",children:[1,2,3].map(e=>(0,t.jsx)(o.Skeleton,{className:"h-16 w-full rounded-lg"},e))}):0===x.length?(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center h-full text-muted-foreground gap-2 p-8",children:[(0,t.jsx)(d.Video,{className:"size-8 opacity-40"}),(0,t.jsx)("p",{className:"text-sm",children:"No meetings yet"}),(0,t.jsx)("p",{className:"text-xs",children:"Join a Google Meet to start recording transcripts."})]}):(0,t.jsx)("div",{className:"p-2 space-y-1",children:x.map(e=>(0,t.jsxs)("div",{className:(0,b.cn)("flex items-center gap-3 rounded-lg border border-border/50 px-3 py-2.5 transition-colors","pending"===e.status&&!e.is_whitelisted&&"opacity-60"),children:[(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 mb-0.5",children:[(0,t.jsx)("span",{className:"text-sm font-medium truncate",children:e.title||"Untitled Meeting"}),(0,t.jsx)(k,{status:e.status})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[(0,t.jsx)("span",{className:"truncate",children:e.meeting_url.replace("https://","")}),e.scheduled_at&&(0,t.jsx)("span",{className:"shrink-0",children:C(e.scheduled_at)}),e.started_at&&!e.completed_at&&(0,t.jsxs)("span",{className:"shrink-0",children:["Started ",C(e.started_at)]}),e.completed_at&&(0,t.jsx)("span",{className:"shrink-0",children:C(e.completed_at)}),e.participants?.length>0&&(0,t.jsxs)("span",{className:"shrink-0",children:[e.participants.length," participants"]})]}),e.error&&(0,t.jsx)("p",{className:"text-xs text-destructive mt-1 truncate",children:e.error})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 shrink-0",children:["pending"===e.status&&(0,t.jsxs)(n.Button,{variant:"outline",size:"xs",className:"gap-1",onClick:()=>V(e),children:[(0,t.jsx)(j,{className:"size-3"}),"Approve"]}),("recording"===e.status||"joining"===e.status)&&(0,t.jsxs)(n.Button,{variant:"outline",size:"xs",className:"gap-1 text-destructive",onClick:()=>E(e),children:[(0,t.jsx)(m.Square,{className:"size-3"}),"Stop"]}),(0,t.jsx)(n.Button,{variant:"ghost",size:"icon-sm",className:"text-muted-foreground hover:text-destructive",onClick:()=>_(e),children:(0,t.jsx)(f.Trash2,{className:"size-3"})})]})]},e.id))})}),(0,t.jsx)(r.Sheet,{open:S,onOpenChange:M,children:(0,t.jsxs)(r.SheetContent,{children:[(0,t.jsx)(r.SheetHeader,{children:(0,t.jsx)(r.SheetTitle,{children:"Join a Meeting"})}),(0,t.jsxs)(r.SheetBody,{className:"space-y-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground mb-1 block",children:"Google Meet URL *"}),(0,t.jsx)("input",{type:"url",placeholder:"https://meet.google.com/abc-defg-hij",value:P,onChange:e=>J(e.target.value),className:"w-full rounded-md border border-border bg-background px-3 py-2 text-sm outline-none focus:ring-1 focus:ring-ring"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground mb-1 block",children:"Title"}),(0,t.jsx)("input",{type:"text",placeholder:"Weekly Standup",value:R,onChange:e=>U(e.target.value),className:"w-full rounded-md border border-border bg-background px-3 py-2 text-sm outline-none focus:ring-1 focus:ring-ring"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground mb-1 block",children:"Participants (one email per line)"}),(0,t.jsx)("textarea",{placeholder:"alice@example.com\nbob@example.com",value:A,onChange:e=>L(e.target.value),rows:3,className:"w-full rounded-md border border-border bg-background px-3 py-2 text-sm outline-none focus:ring-1 focus:ring-ring resize-none"})]})]}),(0,t.jsxs)(r.SheetFooter,{children:[(0,t.jsx)(n.Button,{variant:"outline",onClick:()=>M(!1),children:"Cancel"}),(0,t.jsxs)(n.Button,{onClick:D,disabled:w||!P,children:[w&&(0,t.jsx)(h.Loader2,{className:"size-3 animate-spin"}),"Join Meeting"]})]})]})}),(0,t.jsx)(c.ConfirmDialog,{open:!!B,onOpenChange:e=>!e&&_(null),title:"Delete meeting",description:`Remove "${B?.title||"this meeting"}" and its transcript?`,loading:F,onConfirm:G})]})}],527746)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,32273,e=>{"use strict";let t=(0,e.i(419412).default)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["ShieldCheck",0,t],32273)},527746,e=>{"use strict";var t=e.i(653772),s=e.i(511043),a=e.i(126942),i=e.i(500324),n=e.i(186339),l=e.i(875061),r=e.i(332680),c=e.i(393153),o=e.i(728886),d=e.i(782265),u=e.i(947308),m=e.i(267007),x=e.i(353155),h=e.i(294518),p=e.i(82970),g=e.i(945074),f=e.i(813141),j=e.i(32273),v=e.i(516266),b=e.i(613349),N=e.i(222862);let y={pending:{label:"Pending",variant:"outline",icon:h.Clock},scheduled:{label:"Scheduled",variant:"secondary",icon:h.Clock},joining:{label:"Joining...",variant:"default",icon:g.Loader2},recording:{label:"Recording",variant:"default",icon:d.Video},completed:{label:"Completed",variant:"secondary",icon:x.Check},failed:{label:"Failed",variant:"destructive",icon:p.AlertCircle}};function k({status:e}){let s=y[e]??y.pending,a=s.icon;return(0,t.jsxs)(l.Badge,{variant:s.variant,className:"gap-1 text-[10px]",children:[(0,t.jsx)(a,{className:(0,b.cn)("size-2.5","joining"===e&&"animate-spin","recording"===e&&"animate-pulse")}),s.label]})}function C(e){return e?new Date(e).toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}):""}e.s(["default",0,function(){let e=(0,a.useParams)().id,{workspaceId:l}=(0,i.useWorkspace)(),[x,h]=(0,s.useState)([]),[p,y]=(0,s.useState)(!0),[S,M]=(0,s.useState)(!1),[w,z]=(0,s.useState)(!1),[B,_]=(0,s.useState)(null),[F,T]=(0,s.useState)(!1),[P,J]=(0,s.useState)(""),[R,U]=(0,s.useState)(""),[A,L]=(0,s.useState)(""),O=(0,s.useCallback)(async()=>{try{let t=await (0,N.listMeetings)(e,l);h(t)}catch{v.toast.error("Failed to load meetings")}finally{y(!1)}},[e,l]);(0,s.useEffect)(()=>{let t=!1;return(0,N.listMeetings)(e,l).then(e=>{t||(h(e),y(!1))}).catch(()=>{t||(v.toast.error("Failed to load meetings"),y(!1))}),()=>{t=!0}},[e,l]),(0,s.useEffect)(()=>{if(!x.some(e=>"joining"===e.status||"recording"===e.status))return;let e=setInterval(O,5e3);return()=>clearInterval(e)},[x,O]);let D=async()=>{if(P){z(!0);try{let t=A.split(/[,\n]/).map(e=>e.trim()).filter(Boolean);await (0,N.createMeeting)(e,l,{meetingUrl:P,title:R||void 0,participants:t.length>0?t:void 0}),v.toast.success("Meeting created"),M(!1),J(""),U(""),L(""),O()}catch(e){v.toast.error(e instanceof Error?e.message:"Failed to create meeting")}finally{z(!1)}}},E=async t=>{try{await (0,N.stopMeeting)(e,t.id,l),v.toast.success("Meeting stopped"),O()}catch{v.toast.error("Failed to stop meeting")}},V=async t=>{try{await (0,N.approveMeeting)(e,t.id,l),v.toast.success("Meeting approved"),O()}catch{v.toast.error("Failed to approve meeting")}},G=async()=>{if(B){T(!0);try{await (0,N.deleteMeeting)(e,B.id,l),v.toast.success("Meeting deleted"),_(null),O()}catch{v.toast.error("Failed to delete meeting")}finally{T(!1)}}};return(0,t.jsxs)("div",{className:"flex-1 flex flex-col min-h-0",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border/50",children:[(0,t.jsx)("h2",{className:"text-sm font-medium",children:"Meetings"}),(0,t.jsxs)(n.Button,{size:"sm",onClick:()=>M(!0),className:"gap-1",children:[(0,t.jsx)(u.Plus,{className:"size-3"}),"Join Meeting"]})]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto thin-scrollbar",children:p?(0,t.jsx)("div",{className:"p-4 space-y-3",children:[1,2,3].map(e=>(0,t.jsx)(o.Skeleton,{className:"h-16 w-full rounded-lg"},e))}):0===x.length?(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center h-full text-muted-foreground gap-2 p-8",children:[(0,t.jsx)(d.Video,{className:"size-8 opacity-40"}),(0,t.jsx)("p",{className:"text-sm",children:"No meetings yet"}),(0,t.jsx)("p",{className:"text-xs",children:"Join a Google Meet to start recording transcripts."})]}):(0,t.jsx)("div",{className:"p-2 space-y-1",children:x.map(e=>(0,t.jsxs)("div",{className:(0,b.cn)("flex items-center gap-3 rounded-lg border border-border/50 px-3 py-2.5 transition-colors","pending"===e.status&&!e.is_whitelisted&&"opacity-60"),children:[(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 mb-0.5",children:[(0,t.jsx)("span",{className:"text-sm font-medium truncate",children:e.title||"Untitled Meeting"}),(0,t.jsx)(k,{status:e.status})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[(0,t.jsx)("span",{className:"truncate",children:e.meeting_url.replace("https://","")}),e.scheduled_at&&(0,t.jsx)("span",{className:"shrink-0",children:C(e.scheduled_at)}),e.started_at&&!e.completed_at&&(0,t.jsxs)("span",{className:"shrink-0",children:["Started ",C(e.started_at)]}),e.completed_at&&(0,t.jsx)("span",{className:"shrink-0",children:C(e.completed_at)}),e.participants?.length>0&&(0,t.jsxs)("span",{className:"shrink-0",children:[e.participants.length," participants"]})]}),e.error&&(0,t.jsx)("p",{className:"text-xs text-destructive mt-1 truncate",children:e.error})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 shrink-0",children:["pending"===e.status&&(0,t.jsxs)(n.Button,{variant:"outline",size:"xs",className:"gap-1",onClick:()=>V(e),children:[(0,t.jsx)(j.ShieldCheck,{className:"size-3"}),"Approve"]}),("recording"===e.status||"joining"===e.status)&&(0,t.jsxs)(n.Button,{variant:"outline",size:"xs",className:"gap-1 text-destructive",onClick:()=>E(e),children:[(0,t.jsx)(m.Square,{className:"size-3"}),"Stop"]}),(0,t.jsx)(n.Button,{variant:"ghost",size:"icon-sm",className:"text-muted-foreground hover:text-destructive",onClick:()=>_(e),children:(0,t.jsx)(f.Trash2,{className:"size-3"})})]})]},e.id))})}),(0,t.jsx)(r.Sheet,{open:S,onOpenChange:M,children:(0,t.jsxs)(r.SheetContent,{children:[(0,t.jsx)(r.SheetHeader,{children:(0,t.jsx)(r.SheetTitle,{children:"Join a Meeting"})}),(0,t.jsxs)(r.SheetBody,{className:"space-y-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground mb-1 block",children:"Google Meet URL *"}),(0,t.jsx)("input",{type:"url",placeholder:"https://meet.google.com/abc-defg-hij",value:P,onChange:e=>J(e.target.value),className:"w-full rounded-md border border-border bg-background px-3 py-2 text-sm outline-none focus:ring-1 focus:ring-ring"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground mb-1 block",children:"Title"}),(0,t.jsx)("input",{type:"text",placeholder:"Weekly Standup",value:R,onChange:e=>U(e.target.value),className:"w-full rounded-md border border-border bg-background px-3 py-2 text-sm outline-none focus:ring-1 focus:ring-ring"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground mb-1 block",children:"Participants (one email per line)"}),(0,t.jsx)("textarea",{placeholder:"alice@example.com\nbob@example.com",value:A,onChange:e=>L(e.target.value),rows:3,className:"w-full rounded-md border border-border bg-background px-3 py-2 text-sm outline-none focus:ring-1 focus:ring-ring resize-none"})]})]}),(0,t.jsxs)(r.SheetFooter,{children:[(0,t.jsx)(n.Button,{variant:"outline",onClick:()=>M(!1),children:"Cancel"}),(0,t.jsxs)(n.Button,{onClick:D,disabled:w||!P,children:[w&&(0,t.jsx)(g.Loader2,{className:"size-3 animate-spin"}),"Join Meeting"]})]})]})}),(0,t.jsx)(c.ConfirmDialog,{open:!!B,onOpenChange:e=>!e&&_(null),title:"Delete meeting",description:`Remove "${B?.title||"this meeting"}" and its transcript?`,loading:F,onConfirm:G})]})}])}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,945074,e=>{"use strict";let t=(0,e.i(419412).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["Loader2",0,t],945074)},642342,e=>{"use strict";var t=e.i(811374),n=e.i(511043);let i=(0,e.i(613349).isLocalMode)(),r=Number(t.default.env.NEXT_PUBLIC_WS_DO_PORT)||8789,a=Number(t.default.env.NEXT_PUBLIC_WS_RECONNECT_DELAY_MS)||1e3,s=Number(t.default.env.NEXT_PUBLIC_WS_RECONNECT_MAX_DELAY_MS)||3e4;e.s(["useUserWs",0,function(e,t){let o=(0,n.useRef)(null),l=(0,n.useRef)(a),u=(0,n.useRef)(e),c=(0,n.useRef)(t?.onReconnect),d=(0,n.useRef)(null),f=(0,n.useRef)(!1),p=(0,n.useRef)(0),m=(0,n.useRef)(null),g=(0,n.useRef)(null);(0,n.useEffect)(()=>{u.current=e},[e]),(0,n.useEffect)(()=>{c.current=t?.onReconnect},[t?.onReconnect]);let h=(0,n.useRef)(null),$=(0,n.useCallback)(()=>{let e=Math.min(l.current,s);l.current=Math.min(2*e,s),d.current=setTimeout(()=>{h.current?.()},e+500*Math.random())},[]),y=(0,n.useCallback)(async()=>{let e,t,n,s=r;try{let n=await fetch("/api/ws/token");if(!n.ok){console.warn("[ws] token fetch failed:",n.status),$();return}let i=await n.json();e=i.userId,t=i.token,i.wsPort&&(s=i.wsPort)}catch(e){console.warn("[ws] token fetch error:",e),$();return}let d=i?`ws://localhost:${s}/?userId=${e}`:`${location.origin.replace("http","ws")}/api/ws/user?userId=${e}`;try{n=new WebSocket(d)}catch(e){console.warn("[ws] WebSocket creation failed:",e),$();return}o.current=n,n.onopen=()=>{l.current=a,n.send(JSON.stringify({type:"auth",token:t})),f.current&&c.current?.(),f.current=!0,p.current=Date.now(),m.current=setInterval(()=>{n.readyState===WebSocket.OPEN&&n.send("ping")},25e3),g.current=setInterval(()=>{Date.now()-p.current>3e4&&n.close()},5e3)},n.onmessage=e=>{p.current=Date.now();try{let t=JSON.parse(e.data);if("auth.ok"===t.type)return void n.send(JSON.stringify({type:"check_daemon_status"}));u.current(t)}catch{}},n.onerror=()=>{},n.onclose=()=>{n===o.current&&(m.current&&(clearInterval(m.current),m.current=null),g.current&&(clearInterval(g.current),g.current=null),$())}},[$]);return(0,n.useEffect)(()=>{h.current=y},[y]),(0,n.useEffect)(()=>(y(),()=>{null!==d.current&&(clearTimeout(d.current),d.current=null),m.current&&(clearInterval(m.current),m.current=null),g.current&&(clearInterval(g.current),g.current=null);let e=o.current;o.current=null,e?.close()}),[y]),{send:(0,n.useCallback)(e=>{let t=o.current;t&&t.readyState===WebSocket.OPEN&&t.send(JSON.stringify(e))},[])}}])},439769,e=>{"use strict";var t=e.i(811374);let n=`@${t.default.env.ALOOK_DOMAIN||"alook.ai"}`,i=/^[a-zA-Z0-9-]{3,}$/,r=new Set(["no-reply","noreply","admin","support","help","info","postmaster","abuse","security","mailer-daemon","root","webmaster","hostmaster","system","alook"]);e.s(["isValidHandle",0,function(e){return i.test(e)&&!r.has(e.toLowerCase())},"parseEmailHandle",0,function(e){return e.endsWith(n)?e.slice(0,-n.length):""},"toAlookAddress",0,function(e){return`${e}${n}`}])},126942,(e,t,n)=>{t.exports=e.r(871628)},222862,636557,e=>{"use strict";var t=e.i(811374);class n extends Error{status;details;constructor(e,t,n){super(e),this.name="ApiError",this.status=t,this.details=n}get isNetworkError(){return 0===this.status}get isRateLimit(){return 429===this.status}get isUnauthorized(){return 401===this.status}}function i(e,t){return"validation error"===e&&t?.length?function(e){let[t,...n]=e.split(":"),i=n.join(":").trim();if(!i)return e;let r=t.trim(),a=r.trim().replace(/[_-]+/g," ").replace(/\b\w/g,e=>e.toUpperCase()),s=i.replace(/^required$/i,"is required"),o=s.toLowerCase().replace(/[_-]+/g," "),l=r.toLowerCase().replace(/[_-]+/g," ");return l&&o.startsWith(`${l} `)&&(s=s.slice(r.length).trimStart()),a?`${a} ${s}`:s}(t[0]):e}async function r(e,t){let r;try{r=await fetch(""+e,{...t,credentials:"include",headers:{"Content-Type":"application/json",...t?.headers}})}catch(e){if(e instanceof TypeError)throw new n("Unable to connect — check your network",0);throw e}if(401===r.status)throw window.location.href="/sign-in",new n("Unauthorized",401);if(!r.ok){let e,t;try{let n=await r.json();e=n.error,t=n.details}catch{}if(429===r.status)throw new n("Please wait a moment before trying again",429);if(r.status>=500)throw new n(i(e,t)||"Something went wrong — please try again",r.status,t);throw new n(i(e,t)||"Something went wrong",r.status,t)}if(204!==r.status)return r.json()}function a(e,t){let n=new URLSearchParams({workspace_id:e,...t});return`?${n.toString()}`}e.s(["ApiError",0,n],636557),parseInt(t.default.env.NEXT_PUBLIC_MOCK_NETWORK_DELAY_MS||"300",10);let s=async(e,t,i,s,o)=>{let l;if(!s||0===s.length)return r(`/api/conversations/${e}/messages${a(i)}`,{method:"POST",body:JSON.stringify({content:t,...o?{metadata:o}:{}})});let u=new FormData;for(let e of(u.append("content",t),o&&u.append("metadata",JSON.stringify(o)),s))u.append("file",e);try{l=await fetch(`/api/conversations/${e}/messages${a(i)}`,{method:"POST",credentials:"include",body:u})}catch(e){if(e instanceof TypeError)throw new n("Unable to connect — check your network",0);throw e}if(401===l.status)throw window.location.href="/sign-in",new n("Unauthorized",401);if(!l.ok){let e,t;try{let n=await l.json();e=n.error,t=n.details}catch{}if(429===l.status)throw new n("Please wait a moment before trying again",429);if(l.status>=500)throw new n(e||"Something went wrong — please try again",l.status,t);throw new n(e||"Something went wrong",l.status,t)}return l.json()},o=async(e,t)=>{let n=new URLSearchParams({workspace_id:t}),i=await fetch(`/api/email/${e}/body?${n}`,{credentials:"include"});if(!i.ok)return{content:"(body not available)",isHtml:!1};let r=i.headers.get("Content-Type")??"";return{content:await i.text(),isHtml:r.includes("text/html")}},l=async(e,t)=>{let i=new FormData;i.append("file",e);let r=await fetch(`/api/email/upload${a(t)}`,{method:"POST",credentials:"include",body:i});if(!r.ok)throw new n(await r.text().catch(()=>"Upload failed"),r.status);return r.json()},u=async(e,t)=>{let i;if(!t.files||0===t.files.length)return r(`/api/issues${a(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{i=await fetch(`/api/issues${a(e)}`,{method:"POST",credentials:"include",body:s})}catch(e){if(e instanceof TypeError)throw new n("Unable to connect — check your network",0);throw e}if(401===i.status)throw window.location.href="/sign-in",new n("Unauthorized",401);if(!i.ok){let e,t;try{let n=await i.json();e=n.error,t=n.details}catch{}if(429===i.status)throw new n("Please wait a moment before trying again",429);if(i.status>=500)throw new n(e||"Something went wrong — please try again",i.status,t);throw new n(e||"Something went wrong",i.status,t)}return i.json()},c=async(e,t)=>{let n=new URLSearchParams({workspace_id:t}),i=await fetch(`/api/artifacts/${e}/content?${n}`,{credentials:"include"});return i.ok?i.text():"(content not available)"};e.s(["acceptInvite",0,e=>r(`/api/invite/${e}`,{method:"POST"}),"addWhitelistEmail",0,(e,t,n)=>r(`/api/agents/${e}/whitelist${a(n)}`,{method:"POST",body:JSON.stringify({email:t})}),"approveMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings/${t}/approve${a(n)}`,{method:"POST"}),"cancelActiveTask",0,(e,t)=>r(`/api/conversations/${e}/active-task${a(t)}`,{method:"DELETE"}),"chatInit",0,(e,t,n)=>r(`/api/agents/${e}/chat-init${a(t)}`,{method:"POST",body:JSON.stringify({...n?{channel:n}:{}})}),"checkFreshness",0,(e,t)=>{let n={};return e.conversationId&&(n.conversation_id=e.conversationId),e.agentId&&(n.agent_id=e.agentId),e.channel&&(n.channel=e.channel),r(`/api/conversations/check-fresh${a(t,n)}`)},"conversationInit",0,(e,t,n)=>{let i={};return n?.newestMessageId&&(i.newest_message_id=n.newestMessageId),n?.messageCount&&(i.message_count=String(n.messageCount)),r(`/api/conversations/${e}/init${a(t,i)}`)},"createAgent",0,(e,t)=>r(`/api/agents${a(t)}`,{method:"POST",body:JSON.stringify(e)}),"createAgentLink",0,(e,t)=>r(`/api/agent-links${a(t)}`,{method:"POST",body:JSON.stringify(e)}),"createCalendarEvent",0,(e,t)=>r(`/api/calendar${a(t)}`,{method:"POST",body:JSON.stringify(e)}),"createChannelApi",0,(e,t)=>r(`/api/channels${a(e)}`,{method:"POST",body:JSON.stringify({name:t})}),"createConversation",0,(e,t,n)=>r(`/api/conversations${a(t)}`,{method:"POST",body:JSON.stringify({agent_id:e,...n?{channel:n}:{}})}),"createEmailAccount",0,(e,t,n)=>r(`/api/agents/${e}/email-accounts${a(n)}`,{method:"POST",body:JSON.stringify(t)}),"createInvite",0,e=>r(`/api/workspaces/${e}/invites${a(e)}`,{method:"POST"}),"createIssue",0,u,"createMachineToken",0,(e,t)=>r(`/api/machine-tokens${t?a(t):""}`,{method:"POST",body:JSON.stringify({name:e||"default"})}),"createMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings${a(t)}`,{method:"POST",body:JSON.stringify(n)}),"createThread",0,(e,t,n,i)=>r(`/api/conversations/${e}/threads${a(i)}`,{method:"POST",body:JSON.stringify({parent_message_id:t,content:n})}),"deleteAgent",0,(e,t)=>r(`/api/agents/${e}${a(t)}`,{method:"DELETE"}),"deleteAgentLink",0,(e,t)=>r(`/api/agent-links/${e}${a(t)}`,{method:"DELETE"}),"deleteCalendarEvent",0,(e,t,n)=>r(`/api/calendar/${e}${a(t)}`,{method:"DELETE",...n&&n.scope?{headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}:{}}),"deleteChannelApi",0,(e,t)=>r(`/api/channels/${e}${a(t)}`,{method:"DELETE"}),"deleteEmail",0,(e,t)=>r(`/api/email/${e}${a(t)}`,{method:"DELETE"}),"deleteEmailAccount",0,(e,t,n)=>r(`/api/agents/${e}/email-accounts/${t}${a(n)}`,{method:"DELETE"}),"deleteIssue",0,(e,t)=>r(`/api/issues/${t}${a(e)}`,{method:"DELETE"}),"deleteMachine",0,(e,t)=>r(`/api/runtimes/machine${a(t,{daemon_id:e})}`,{method:"DELETE"}),"deleteMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings/${t}${a(n)}`,{method:"DELETE"}),"deleteWorkspace",0,(e,t)=>r(`/api/workspaces/${e}${a(e)}`,{method:"DELETE",body:JSON.stringify({confirm_name:t})}),"fetchLatestCliVersion",0,()=>r("/api/cli/latest-version"),"fetchModelOptions",0,()=>r("/api/config/model-options"),"flagMessage",0,(e,t)=>r(`/api/flags${a(e)}`,{method:"POST",body:JSON.stringify({messageId:t})}),"getActiveTask",0,(e,t)=>r(`/api/conversations/${e}/active-task${a(t)}`),"getAgentSkills",0,(e,t)=>r(`/api/agents/${e}/skills${a(t)}`),"getArtifactContent",0,c,"getCalendarEvent",0,(e,t)=>r(`/api/calendar/${e}${a(t)}`),"getEmail",0,(e,t)=>r(`/api/email/${e}${a(t)}`),"getEmailBody",0,o,"getEmailThread",0,(e,t)=>r(`/api/email/${e}/thread${a(t)}`),"getFlaggedCount",0,e=>r(`/api/flags/count${a(e)}`),"getInboxCount",0,(e,t)=>{let n={};return t?.types?.length&&(n.types=t.types.join(",")),r(`/api/inbox/count${a(e,n)}`)},"getInviteInfo",0,e=>r(`/api/invite/${e}`),"getIssue",0,(e,t)=>r(`/api/issues/${t}${a(e)}`),"getMachineTokenStatus",0,()=>r("/api/machine-tokens/status"),"getMemberMe",0,e=>r(`/api/members/me${a(e)}`),"getMinCliVersion",0,()=>r("/api/config/min-version"),"getTask",0,(e,t)=>r(`/api/tasks/${e}${a(t)}`),"getTaskMessages",0,(e,t,n)=>r(`/api/tasks/${e}/messages${a(t,n?{since:String(n)}:void 0)}`),"getThreadSummaries",0,(e,t)=>r(`/api/conversations/${e}/threads${a(t)}`),"getTrace",0,(e,t)=>r(`/api/traces/${e}${a(t)}`),"getWorkspaceOverview",0,e=>r(`/api/workspaces/${e}/overview${a(e)}`),"grantAgentAccess",0,(e,t,n)=>r(`/api/agents/${t}/access${a(e)}`,{method:"POST",body:JSON.stringify({user_id:n})}),"listAgentAccess",0,(e,t)=>r(`/api/agents/${t}/access${a(e)}`),"listAgentActiveTaskCounts",0,e=>r(`/api/agents/active-task-counts${a(e)}`),"listAgentActivity",0,(e,t,n)=>{let i={};return n?.limit&&(i.limit=String(n.limit)),n?.before&&(i.before=n.before),n?.beforeId&&(i.before_id=n.beforeId),n?.status&&(i.status=n.status),n?.type&&(i.type=n.type),r(`/api/agents/${e}/activity${a(t,i)}`)},"listAgentLinks",0,e=>r(`/api/agent-links${a(e)}`),"listAgentPins",0,e=>r(`/api/agents/pins${a(e)}`),"listAgents",0,e=>r(`/api/agents${a(e)}`),"listArtifacts",0,(e,t)=>r(`/api/artifacts${a(t,{conversation_id:e})}`),"listCalendarEvents",0,(e,t)=>{let n={};return t?.agentId&&(n.agentId=t.agentId),t?.from&&(n.from=t.from),t?.to&&(n.to=t.to),r(`/api/calendar${a(e,n)}`)},"listChannels",0,e=>r(`/api/channels${a(e)}`),"listEmailAccounts",0,(e,t)=>r(`/api/agents/${e}/email-accounts${a(t)}`),"listEmails",0,(e,t,n,i)=>r(`/api/email${a(t,{agentId:e,...n?{folder:n}:{},...i?{address:i}:{}})}`),"listFlaggedItems",0,(e,t)=>{let n={};return t?.limit&&(n.limit=String(t.limit)),t?.before&&(n.before=t.before),r(`/api/flags${a(e,n)}`)},"listFlaggedMessageIds",0,(e,t)=>r(`/api/flags${a(e,{conversation_id:t,ids_only:"true"})}`),"listInboxItems",0,(e,t)=>{let n={};return t?.limit&&(n.limit=String(t.limit)),t?.before&&(n.before=t.before),t?.types?.length&&(n.types=t.types.join(",")),r(`/api/inbox${a(e,n)}`)},"listInvites",0,e=>r(`/api/workspaces/${e}/invites${a(e)}`),"listIssues",0,(e,t)=>{let n={};return t?.agentId&&(n.agentId=t.agentId),t?.status&&(n.status=t.status),t?.terminal!==void 0&&(n.terminal=String(t.terminal)),r(`/api/issues${a(e,n)}`)},"listMeetings",0,(e,t)=>r(`/api/agents/${e}/meetings${a(t)}`),"listMembers",0,e=>r(`/api/workspaces/${e}/members${a(e)}`),"listMessages",0,(e,t,n)=>{let i={};return n?.limit&&(i.limit=String(n.limit)),n?.before&&(i.before=n.before),n?.beforeId&&(i.before_id=n.beforeId),r(`/api/conversations/${e}/messages${a(t,i)}`)},"listMessagesAroundTask",0,(e,t,n)=>r(`/api/conversations/${e}/messages${a(t,{around_task:n})}`),"listPreviousConversations",0,(e,t,n)=>{let i={exclude:n.exclude,before:n.before};return n.channel&&(i.channel=n.channel),n.limit&&(i.limit=String(n.limit)),r(`/api/agents/${e}/conversations${a(t,i)}`)},"listRuntimes",0,e=>r(`/api/runtimes${a(e)}`),"listTraces",0,(e,t)=>{let n={};return t?.limit&&(n.limit=String(t.limit)),t?.before&&(n.before=t.before),t?.status&&(n.status=t.status),t?.multiAgent&&(n.multiAgent="true"),t?.agentId&&(n.agentId=t.agentId),t?.channel&&(n.channel=t.channel),r(`/api/traces${a(e,n)}`)},"listWhitelist",0,(e,t)=>r(`/api/agents/${e}/whitelist${a(t)}`),"listWorkspaceActiveTasks",0,e=>r(`/api/agents/active-tasks${a(e)}`),"listWorkspaces",0,()=>r("/api/workspaces"),"markAllInboxRead",0,e=>r(`/api/inbox/read-all${a(e)}`,{method:"POST"}),"markInboxRead",0,(e,t)=>r(`/api/inbox/read${a(t)}`,{method:"POST",body:JSON.stringify({conversationId:e})}),"pinAgent",0,(e,t)=>r(`/api/agents/${t}/pin${a(e)}`,{method:"POST"}),"removeMember",0,(e,t)=>r(`/api/workspaces/${e}/members/${t}${a(e)}`,{method:"DELETE"}),"removeWhitelistEmail",0,(e,t,n)=>r(`/api/agents/${e}/whitelist/${t}${a(n)}`,{method:"DELETE"}),"renameChannelApi",0,(e,t,n)=>r(`/api/channels/${e}${a(t)}`,{method:"PATCH",body:JSON.stringify({name:n})}),"reorderAgentPins",0,(e,t)=>r(`/api/agents/pins/reorder${a(e)}`,{method:"PUT",body:JSON.stringify({ordered_agent_ids:t})}),"reorderChannelsApi",0,(e,t)=>r(`/api/channels/reorder${a(e)}`,{method:"PUT",body:JSON.stringify({ordered_channel_ids:t})}),"reorderUnpinnedAgents",0,(e,t)=>r(`/api/agents/sidebar/reorder${a(e)}`,{method:"PUT",body:JSON.stringify({ordered_agent_ids:t})}),"requestWorkspaceBrowse",0,(e,t,n,i)=>r(`/api/agents/${e}/workspace/browse${a(t)}`,{method:"POST",body:JSON.stringify({request_type:n,path:i})}),"retryTask",0,(e,t)=>r(`/api/tasks/${e}/retry${a(t)}`,{method:"POST"}),"revokeAgentAccess",0,(e,t,n,i=!1)=>r(`/api/agents/${t}/access/${n}${a(e)}${i?"&remove_whitelist=true":""}`,{method:"DELETE"}),"revokeInvite",0,(e,t)=>r(`/api/workspaces/${e}/invites/${t}${a(e)}`,{method:"DELETE"}),"sendEmail",0,(e,t,n,i,s,o,l,u)=>r(`/api/email/send${a(s)}`,{method:"POST",body:JSON.stringify({agentId:e,to:t,subject:n,htmlBody:i,attachments:o,...l,customAccountId:u})}),"sendMessage",0,s,"stopMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings/${t}/stop${a(n)}`,{method:"POST"}),"syncEmailAccount",0,(e,t,n)=>r(`/api/agents/${e}/email-accounts/${t}/sync${a(n)}`,{method:"POST"}),"triggerRuntimeRescan",0,(e,t)=>r(`/api/runtimes/${e}/rescan${a(t)}`,{method:"POST"}),"triggerRuntimeUpdate",0,(e,t)=>r(`/api/runtimes/${e}/update${a(t)}`,{method:"POST"}),"unflagMessage",0,(e,t)=>r(`/api/flags/${t}${a(e)}`,{method:"DELETE"}),"unpinAgent",0,(e,t)=>r(`/api/agents/${t}/pin${a(e)}`,{method:"DELETE"}),"updateAgent",0,(e,t,n)=>r(`/api/agents/${e}${a(n)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateAgentLink",0,(e,t,n)=>r(`/api/agent-links/${e}${a(n)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateCalendarEvent",0,(e,t,n)=>r(`/api/calendar/${e}${a(n)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateEmailStatus",0,(e,t,n)=>r(`/api/email/${e}${a(t)}`,{method:"PATCH",body:JSON.stringify({status:n})}),"updateIssue",0,(e,t,n)=>r(`/api/issues/${t}${a(e)}`,{method:"PATCH",body:JSON.stringify(n)}),"updateMemberMe",0,(e,t)=>r(`/api/members/me${a(e)}`,{method:"PATCH",body:JSON.stringify({global_instruction:t})}),"updateWorkspace",0,(e,t)=>r(`/api/workspaces/${e}${a(e)}`,{method:"PATCH",body:JSON.stringify(t)}),"uploadEmailAttachment",0,l],222862)},452691,e=>{"use strict";let t=(0,e.i(419412).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",0,t])},392511,e=>{"use strict";var t=e.i(511043);e.s(["useControlled",0,function({controlled:e,default:n,name:i,state:r="value"}){let{current:a}=t.useRef(void 0!==e),[s,o]=t.useState(n),l=t.useCallback(e=>{a||o(e)},[]);return[a?e:s,l]}])},241836,909578,e=>{"use strict";e.i(811374);var t,n=e.i(154680),i=e.i(511043),r=e.i(959947);let a=((t={}).disabled="data-disabled",t.valid="data-valid",t.invalid="data-invalid",t.touched="data-touched",t.dirty="data-dirty",t.filled="data-filled",t.focused="data-focused",t),s={badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valid:null,valueMissing:!1},o={valid:null,touched:!1,dirty:!1,filled:!1,focused:!1},l={disabled:!1,...o};e.s(["DEFAULT_FIELD_ROOT_STATE",0,l,"DEFAULT_FIELD_STATE_ATTRIBUTES",0,o,"DEFAULT_VALIDITY_STATE",0,s,"fieldValidityMapping",0,{valid:e=>null===e?null:e?{[a.valid]:""}:{[a.invalid]:""}}],909578);let u={invalid:void 0,name:void 0,validityData:{state:s,errors:[],error:"",value:"",initialValue:null},setValidityData:r.NOOP,disabled:void 0,touched:o.touched,setTouched:r.NOOP,dirty:o.dirty,setDirty:r.NOOP,filled:o.filled,setFilled:r.NOOP,focused:o.focused,setFocused:r.NOOP,validate:()=>null,validationMode:"onSubmit",validationDebounceTime:0,shouldValidateOnChange:()=>!1,state:l,markedDirtyRef:{current:!1},registerFieldControl:r.NOOP,validation:{getValidationProps:(e=r.EMPTY_OBJECT)=>e,getInputValidationProps:(e=r.EMPTY_OBJECT)=>e,inputRef:{current:null},commit:async()=>{}}},c=i.createContext(u);e.s(["FieldRootContext",0,c,"useFieldRootContext",0,function(e=!0){let t=i.useContext(c);if(t.setValidityData===r.NOOP&&!e)throw Error((0,n.default)(28));return t}],241836)},251923,e=>{"use strict";var t=e.i(511043),n=e.i(959947);let i=t.createContext({formRef:{current:{fields:new Map}},errors:{},clearErrors:n.NOOP,validationMode:"onSubmit",submitAttemptedRef:{current:!1}});e.s(["useFormContext",0,function(){return t.useContext(i)}])},988072,e=>{"use strict";var t=e.i(511043),n=e.i(959947);let i=t.createContext({controlId:void 0,registerControlId:n.NOOP,labelId:void 0,setLabelId:n.NOOP,messageIds:[],setMessageIds:n.NOOP,getDescriptionProps:e=>e});e.s(["LabelableContext",0,i,"useLabelableContext",0,function(){return t.useContext(i)}])},585248,e=>{"use strict";var t=e.i(92615),n=e.i(236432),i=e.i(298604),r=e.i(168879),a=e.i(990966),s=e.i(962795),o=e.i(988072);e.s(["useLabel",0,function(e={}){let l,{id:u,fallbackControlId:c,native:d=!1,setLabelId:f,focusControl:p}=e,{controlId:m,setLabelId:g}=(0,o.useLabelableContext)(),h=(0,i.useStableCallback)(e=>{g(e),f?.(e)}),$=(l=(0,s.useBaseUiId)(u),(0,a.useIsoLayoutEffect)(()=>(h(l),()=>{h(void 0)}),[l,h]),l),y=m??c;function b(e){let i=(0,r.getTarget)(e.nativeEvent);i?.closest("button,input,select,textarea")||(!e.defaultPrevented&&e.detail>1&&e.preventDefault(),d||function(e){if(p)return p(e,y);if(!y)return;let i=(0,n.ownerDocument)(e.currentTarget).getElementById(y);(0,t.isHTMLElement)(i)&&i.focus({focusVisible:!0})}(e))}return d?{id:$,htmlFor:y??void 0,onMouseDown:b}:{id:$,onClick:b,onPointerDown(e){e.preventDefault()}}}],585248)},65756,e=>{"use strict";var t=e.i(511043),n=e.i(990966),i=e.i(241836);e.s(["useRegisterFieldControl",0,function(e,r,a,s,o=!0){let{registerFieldControl:l}=(0,i.useFieldRootContext)(),u=t.useRef(null);u.current||(u.current=Symbol()),(0,n.useIsoLayoutEffect)(()=>{let t=u.current;if(t&&o)return l(t,{controlRef:e,getValue:s,id:r,value:a}),()=>{l(t,void 0)}},[e,o,s,r,l,a])}])},865306,e=>{"use strict";var t=e.i(511043),n=e.i(990966),i=e.i(298604),r=e.i(826918),a=e.i(92615),s=e.i(959947),o=e.i(962795),l=e.i(988072);e.s(["useLabelableId",0,function(e={}){let{id:u,implicit:c=!1,controlRef:d}=e,{controlId:f,registerControlId:p}=(0,l.useLabelableContext)(),m=(0,o.useBaseUiId)(u),g=c?f:void 0,h=(0,r.useRefWithInit)(()=>Symbol("labelable-control")),$=t.useRef(!1),y=t.useRef(null!=u),b=(0,i.useStableCallback)(()=>{$.current&&p!==s.NOOP&&($.current=!1,p(h.current,void 0))});return(0,n.useIsoLayoutEffect)(()=>{let e;if(p!==s.NOOP){if(c){let t=d?.current;e=(0,a.isElement)(t)&&null!=t.closest("label")?u??null:g??m}else if(null!=u)y.current=!0,e=u;else{if(!y.current)return void b();e=m}if(void 0===e)return void b();$.current=!0,p(h.current,e)}},[u,d,g,p,c,m,h,b]),t.useEffect(()=>b,[b]),f??m}])},386102,e=>{"use strict";var t=e.i(511043),n=e.i(695681);let i=t.forwardRef(function(e,t){let{className:i,render:r,orientation:a="horizontal",style:s,...o}=e;return(0,n.useRenderElement)("div",e,{state:{orientation:a},ref:t,props:[{role:"separator","aria-orientation":a},o]})});e.s(["Separator",0,i])},991065,e=>{"use strict";var t=e.i(511043);let n=t.createContext(void 0),i={disableStyleElements:!1};e.s(["useCSPContext",0,function(){return t.useContext(n)??i}])},392662,e=>{"use strict";var t=e.i(511043);let n=t.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},elementsRef:{current:[]},nextIndexRef:{current:0}});e.s(["CompositeListContext",0,n,"useCompositeListContext",0,function(){return t.useContext(n)}])},814378,e=>{"use strict";var t=e.i(511043),n=e.i(826918),i=e.i(298604),r=e.i(990966),a=e.i(392662),s=e.i(653772);function o(){return new Map}function l(){return new Set}function u(e,t){let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING||n&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:n&Node.DOCUMENT_POSITION_PRECEDING||n&Node.DOCUMENT_POSITION_CONTAINS?1:0}e.s(["CompositeList",0,function(e){let{children:c,elementsRef:d,labelsRef:f,onMapChange:p}=e,m=(0,i.useStableCallback)(p),g=t.useRef(0),h=(0,n.useRefWithInit)(l).current,$=(0,n.useRefWithInit)(o).current,[y,b]=t.useState(0),E=t.useRef(y),v=(0,i.useStableCallback)((e,t)=>{$.set(e,t??null),E.current+=1,b(E.current)}),w=(0,i.useStableCallback)(e=>{$.delete(e),E.current+=1,b(E.current)}),O=t.useMemo(()=>{let e=new Map;return Array.from($.keys()).filter(e=>e.isConnected).sort(u).forEach((t,n)=>{let i=$.get(t)??{};e.set(t,{...i,index:n})}),e},[$,y]);(0,r.useIsoLayoutEffect)(()=>{if("function"!=typeof MutationObserver||0===O.size)return;let e=new MutationObserver(e=>{let t=new Set,n=e=>t.has(e)?t.delete(e):t.add(e);e.forEach(e=>{e.removedNodes.forEach(n),e.addedNodes.forEach(n)}),0===t.size&&(E.current+=1,b(E.current))});return O.forEach((t,n)=>{n.parentElement&&e.observe(n.parentElement,{childList:!0})}),()=>{e.disconnect()}},[O]),(0,r.useIsoLayoutEffect)(()=>{E.current===y&&(d.current.length!==O.size&&(d.current.length=O.size),f&&f.current.length!==O.size&&(f.current.length=O.size),g.current=O.size),m(O)},[m,O,d,f,y]),(0,r.useIsoLayoutEffect)(()=>()=>{d.current=[]},[d]),(0,r.useIsoLayoutEffect)(()=>()=>{f&&(f.current=[])},[f]);let S=(0,i.useStableCallback)(e=>(h.add(e),()=>{h.delete(e)}));(0,r.useIsoLayoutEffect)(()=>{h.forEach(e=>e(O))},[h,O]);let T=t.useMemo(()=>({register:v,unregister:w,subscribeMapChange:S,elementsRef:d,labelsRef:f,nextIndexRef:g}),[v,w,S,d,f,g]);return(0,s.jsx)(a.CompositeListContext.Provider,{value:T,children:c})}])},657614,e=>{"use strict";var t,n=e.i(511043),i=e.i(990966),r=e.i(392662);let a=((t={})[t.None=0]="None",t[t.GuessFromOrder=1]="GuessFromOrder",t);e.s(["IndexGuessBehavior",0,a,"useCompositeListItem",0,function(e={}){let{label:t,metadata:s,textRef:o,indexGuessBehavior:l,index:u}=e,{register:c,unregister:d,subscribeMapChange:f,elementsRef:p,labelsRef:m,nextIndexRef:g}=(0,r.useCompositeListContext)(),h=n.useRef(-1),[$,y]=n.useState(u??(l===a.GuessFromOrder?()=>{if(-1===h.current){let e=g.current;g.current+=1,h.current=e}return h.current}:-1)),b=n.useRef(null),E=n.useCallback(e=>{if(b.current=e,-1!==$&&null!==e&&(p.current[$]=e,m)){let n=void 0!==t;m.current[$]=n?t:o?.current?.textContent??e.textContent}},[$,p,m,t,o]);return(0,i.useIsoLayoutEffect)(()=>{if(null!=u)return;let e=b.current;if(e)return c(e,s),()=>{d(e)}},[u,c,d,s]),(0,i.useIsoLayoutEffect)(()=>{if(null==u)return f(e=>{let t=b.current?e.get(b.current)?.index:null;null!=t&&y(t)})},[u,f,y]),n.useMemo(()=>({ref:E,index:$}),[$,E])}])},26349,e=>{"use strict";var t=e.i(452691);e.s(["CheckIcon",()=>t.default])},485322,e=>{"use strict";let t=(0,e.i(419412).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["default",0,t])},490159,422987,e=>{"use strict";function t(e,n=Number.MIN_SAFE_INTEGER,i=Number.MAX_SAFE_INTEGER){return Math.max(n,Math.min(e,i))}e.s(["clamp",0,t],422987),e.s(["SCROLL_EDGE_TOLERANCE_PX",0,1,"getMaxScrollOffset",0,function(e,t){return Math.max(0,e-t)},"normalizeScrollOffset",0,function(e,n){if(n<=0)return 0;let i=t(e,0,n),r=n-i,a=i<=1,s=r<=1;return a&&s?i<=r?0:n:a?0:s?n:i}],490159)},358719,e=>{"use strict";var t=e.i(653772);let n="base-ui-disable-scrollbar";e.s(["styleDisableScrollbar",0,{className:n,getElement:e=>(0,t.jsx)("style",{nonce:e,href:n,precedence:"base-ui:low",children:`.${n}{scrollbar-width:none}.${n}::-webkit-scrollbar{display:none}`})}])}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,945074,e=>{"use strict";let t=(0,e.i(419412).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["Loader2",0,t],945074)},642342,e=>{"use strict";var t=e.i(811374),n=e.i(511043);let i=(0,e.i(613349).isLocalMode)(),r=Number(t.default.env.NEXT_PUBLIC_WS_DO_PORT)||8789,a=Number(t.default.env.NEXT_PUBLIC_WS_RECONNECT_DELAY_MS)||1e3,s=Number(t.default.env.NEXT_PUBLIC_WS_RECONNECT_MAX_DELAY_MS)||3e4;e.s(["useUserWs",0,function(e,t){let o=(0,n.useRef)(null),l=(0,n.useRef)(a),u=(0,n.useRef)(e),c=(0,n.useRef)(t?.onReconnect),d=(0,n.useRef)(null),f=(0,n.useRef)(!1),p=(0,n.useRef)(0),m=(0,n.useRef)(null),g=(0,n.useRef)(null);(0,n.useEffect)(()=>{u.current=e},[e]),(0,n.useEffect)(()=>{c.current=t?.onReconnect},[t?.onReconnect]);let h=(0,n.useRef)(null),$=(0,n.useCallback)(()=>{let e=Math.min(l.current,s);l.current=Math.min(2*e,s),d.current=setTimeout(()=>{h.current?.()},e+500*Math.random())},[]),y=(0,n.useCallback)(async()=>{let e,t,n,s=r;try{let n=await fetch("/api/ws/token");if(!n.ok){console.warn("[ws] token fetch failed:",n.status),$();return}let i=await n.json();e=i.userId,t=i.token,i.wsPort&&(s=i.wsPort)}catch(e){console.warn("[ws] token fetch error:",e),$();return}let d=i?`ws://localhost:${s}/?userId=${e}`:`${location.origin.replace("http","ws")}/api/ws/user?userId=${e}`;try{n=new WebSocket(d)}catch(e){console.warn("[ws] WebSocket creation failed:",e),$();return}o.current=n,n.onopen=()=>{l.current=a,n.send(JSON.stringify({type:"auth",token:t})),f.current&&c.current?.(),f.current=!0,p.current=Date.now(),m.current=setInterval(()=>{n.readyState===WebSocket.OPEN&&n.send("ping")},25e3),g.current=setInterval(()=>{Date.now()-p.current>3e4&&n.close()},5e3)},n.onmessage=e=>{p.current=Date.now();try{let t=JSON.parse(e.data);if("auth.ok"===t.type)return void n.send(JSON.stringify({type:"check_daemon_status"}));u.current(t)}catch{}},n.onerror=()=>{},n.onclose=()=>{n===o.current&&(m.current&&(clearInterval(m.current),m.current=null),g.current&&(clearInterval(g.current),g.current=null),$())}},[$]);return(0,n.useEffect)(()=>{h.current=y},[y]),(0,n.useEffect)(()=>(y(),()=>{null!==d.current&&(clearTimeout(d.current),d.current=null),m.current&&(clearInterval(m.current),m.current=null),g.current&&(clearInterval(g.current),g.current=null);let e=o.current;o.current=null,e?.close()}),[y]),{send:(0,n.useCallback)(e=>{let t=o.current;t&&t.readyState===WebSocket.OPEN&&t.send(JSON.stringify(e))},[])}}])},439769,e=>{"use strict";var t=e.i(811374);let n=`@${t.default.env.ALOOK_DOMAIN||"alook.ai"}`,i=/^[a-zA-Z0-9-]{3,}$/,r=new Set(["no-reply","noreply","admin","support","help","info","postmaster","abuse","security","mailer-daemon","root","webmaster","hostmaster","system","alook"]);e.s(["isValidHandle",0,function(e){return i.test(e)&&!r.has(e.toLowerCase())},"parseEmailHandle",0,function(e){return e.endsWith(n)?e.slice(0,-n.length):""},"toAlookAddress",0,function(e){return`${e}${n}`}])},126942,(e,t,n)=>{t.exports=e.r(871628)},222862,636557,e=>{"use strict";var t=e.i(811374);class n extends Error{status;details;constructor(e,t,n){super(e),this.name="ApiError",this.status=t,this.details=n}get isNetworkError(){return 0===this.status}get isRateLimit(){return 429===this.status}get isUnauthorized(){return 401===this.status}}function i(e,t){return"validation error"===e&&t?.length?function(e){let[t,...n]=e.split(":"),i=n.join(":").trim();if(!i)return e;let r=t.trim(),a=r.trim().replace(/[_-]+/g," ").replace(/\b\w/g,e=>e.toUpperCase()),s=i.replace(/^required$/i,"is required"),o=s.toLowerCase().replace(/[_-]+/g," "),l=r.toLowerCase().replace(/[_-]+/g," ");return l&&o.startsWith(`${l} `)&&(s=s.slice(r.length).trimStart()),a?`${a} ${s}`:s}(t[0]):e}async function r(e,t){let r;try{r=await fetch(""+e,{...t,credentials:"include",headers:{"Content-Type":"application/json",...t?.headers}})}catch(e){if(e instanceof TypeError)throw new n("Unable to connect — check your network",0);throw e}if(401===r.status)throw window.location.href="/sign-in",new n("Unauthorized",401);if(!r.ok){let e,t;try{let n=await r.json();e=n.error,t=n.details}catch{}if(429===r.status)throw new n("Please wait a moment before trying again",429);if(r.status>=500)throw new n(i(e,t)||"Something went wrong — please try again",r.status,t);throw new n(i(e,t)||"Something went wrong",r.status,t)}if(204!==r.status)return r.json()}function a(e,t){let n=new URLSearchParams({workspace_id:e,...t});return`?${n.toString()}`}e.s(["ApiError",0,n],636557),parseInt(t.default.env.NEXT_PUBLIC_MOCK_NETWORK_DELAY_MS||"300",10);let s=async(e,t,i,s,o)=>{let l;if(!s||0===s.length)return r(`/api/conversations/${e}/messages${a(i)}`,{method:"POST",body:JSON.stringify({content:t,...o?{metadata:o}:{}})});let u=new FormData;for(let e of(u.append("content",t),o&&u.append("metadata",JSON.stringify(o)),s))u.append("file",e);try{l=await fetch(`/api/conversations/${e}/messages${a(i)}`,{method:"POST",credentials:"include",body:u})}catch(e){if(e instanceof TypeError)throw new n("Unable to connect — check your network",0);throw e}if(401===l.status)throw window.location.href="/sign-in",new n("Unauthorized",401);if(!l.ok){let e,t;try{let n=await l.json();e=n.error,t=n.details}catch{}if(429===l.status)throw new n("Please wait a moment before trying again",429);if(l.status>=500)throw new n(e||"Something went wrong — please try again",l.status,t);throw new n(e||"Something went wrong",l.status,t)}return l.json()},o=async(e,t)=>{let n=new URLSearchParams({workspace_id:t}),i=await fetch(`/api/email/${e}/body?${n}`,{credentials:"include"});if(!i.ok)return{content:"(body not available)",isHtml:!1};let r=i.headers.get("Content-Type")??"";return{content:await i.text(),isHtml:r.includes("text/html")}},l=async(e,t)=>{let i=new FormData;i.append("file",e);let r=await fetch(`/api/email/upload${a(t)}`,{method:"POST",credentials:"include",body:i});if(!r.ok)throw new n(await r.text().catch(()=>"Upload failed"),r.status);return r.json()},u=async(e,t)=>{let i;if(!t.files||0===t.files.length)return r(`/api/issues${a(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{i=await fetch(`/api/issues${a(e)}`,{method:"POST",credentials:"include",body:s})}catch(e){if(e instanceof TypeError)throw new n("Unable to connect — check your network",0);throw e}if(401===i.status)throw window.location.href="/sign-in",new n("Unauthorized",401);if(!i.ok){let e,t;try{let n=await i.json();e=n.error,t=n.details}catch{}if(429===i.status)throw new n("Please wait a moment before trying again",429);if(i.status>=500)throw new n(e||"Something went wrong — please try again",i.status,t);throw new n(e||"Something went wrong",i.status,t)}return i.json()},c=async(e,t)=>{let n=new URLSearchParams({workspace_id:t}),i=await fetch(`/api/artifacts/${e}/content?${n}`,{credentials:"include"});return i.ok?i.text():"(content not available)"};e.s(["acceptInvite",0,e=>r(`/api/invite/${e}`,{method:"POST"}),"addWhitelistEmail",0,(e,t,n)=>r(`/api/agents/${e}/whitelist${a(n)}`,{method:"POST",body:JSON.stringify({email:t})}),"approveMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings/${t}/approve${a(n)}`,{method:"POST"}),"cancelActiveTask",0,(e,t)=>r(`/api/conversations/${e}/active-task${a(t)}`,{method:"DELETE"}),"chatInit",0,(e,t,n)=>r(`/api/agents/${e}/chat-init${a(t)}`,{method:"POST",body:JSON.stringify({...n?{channel:n}:{}})}),"checkFreshness",0,(e,t)=>{let n={};return e.conversationId&&(n.conversation_id=e.conversationId),e.agentId&&(n.agent_id=e.agentId),e.channel&&(n.channel=e.channel),r(`/api/conversations/check-fresh${a(t,n)}`)},"conversationInit",0,(e,t,n)=>{let i={};return n?.newestMessageId&&(i.newest_message_id=n.newestMessageId),n?.messageCount&&(i.message_count=String(n.messageCount)),r(`/api/conversations/${e}/init${a(t,i)}`)},"createAgent",0,(e,t)=>r(`/api/agents${a(t)}`,{method:"POST",body:JSON.stringify(e)}),"createAgentLink",0,(e,t)=>r(`/api/agent-links${a(t)}`,{method:"POST",body:JSON.stringify(e)}),"createCalendarEvent",0,(e,t)=>r(`/api/calendar${a(t)}`,{method:"POST",body:JSON.stringify(e)}),"createChannelApi",0,(e,t)=>r(`/api/channels${a(e)}`,{method:"POST",body:JSON.stringify({name:t})}),"createConversation",0,(e,t,n)=>r(`/api/conversations${a(t)}`,{method:"POST",body:JSON.stringify({agent_id:e,...n?{channel:n}:{}})}),"createEmailAccount",0,(e,t,n)=>r(`/api/agents/${e}/email-accounts${a(n)}`,{method:"POST",body:JSON.stringify(t)}),"createInvite",0,e=>r(`/api/workspaces/${e}/invites${a(e)}`,{method:"POST"}),"createIssue",0,u,"createMachineToken",0,(e,t)=>r(`/api/machine-tokens${t?a(t):""}`,{method:"POST",body:JSON.stringify({name:e||"default"})}),"createMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings${a(t)}`,{method:"POST",body:JSON.stringify(n)}),"createThread",0,(e,t,n,i)=>r(`/api/conversations/${e}/threads${a(i)}`,{method:"POST",body:JSON.stringify({parent_message_id:t,content:n})}),"deleteAgent",0,(e,t)=>r(`/api/agents/${e}${a(t)}`,{method:"DELETE"}),"deleteAgentLink",0,(e,t)=>r(`/api/agent-links/${e}${a(t)}`,{method:"DELETE"}),"deleteCalendarEvent",0,(e,t,n)=>r(`/api/calendar/${e}${a(t)}`,{method:"DELETE",...n&&n.scope?{headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}:{}}),"deleteChannelApi",0,(e,t)=>r(`/api/channels/${e}${a(t)}`,{method:"DELETE"}),"deleteEmail",0,(e,t)=>r(`/api/email/${e}${a(t)}`,{method:"DELETE"}),"deleteEmailAccount",0,(e,t,n)=>r(`/api/agents/${e}/email-accounts/${t}${a(n)}`,{method:"DELETE"}),"deleteIssue",0,(e,t)=>r(`/api/issues/${t}${a(e)}`,{method:"DELETE"}),"deleteMachine",0,(e,t)=>r(`/api/runtimes/machine${a(t,{daemon_id:e})}`,{method:"DELETE"}),"deleteMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings/${t}${a(n)}`,{method:"DELETE"}),"deleteWorkspace",0,(e,t)=>r(`/api/workspaces/${e}${a(e)}`,{method:"DELETE",body:JSON.stringify({confirm_name:t})}),"fetchLatestCliVersion",0,()=>r("/api/cli/latest-version"),"fetchModelOptions",0,()=>r("/api/config/model-options"),"flagMessage",0,(e,t)=>r(`/api/flags${a(e)}`,{method:"POST",body:JSON.stringify({messageId:t})}),"getActiveTask",0,(e,t)=>r(`/api/conversations/${e}/active-task${a(t)}`),"getAgentSkills",0,(e,t)=>r(`/api/agents/${e}/skills${a(t)}`),"getArtifactContent",0,c,"getCalendarEvent",0,(e,t)=>r(`/api/calendar/${e}${a(t)}`),"getEmail",0,(e,t)=>r(`/api/email/${e}${a(t)}`),"getEmailBody",0,o,"getEmailThread",0,(e,t)=>r(`/api/email/${e}/thread${a(t)}`),"getFlaggedCount",0,e=>r(`/api/flags/count${a(e)}`),"getInboxCount",0,(e,t)=>{let n={};return t?.types?.length&&(n.types=t.types.join(",")),r(`/api/inbox/count${a(e,n)}`)},"getInviteInfo",0,e=>r(`/api/invite/${e}`),"getIssue",0,(e,t)=>r(`/api/issues/${t}${a(e)}`),"getMachineTokenStatus",0,()=>r("/api/machine-tokens/status"),"getMemberMe",0,e=>r(`/api/members/me${a(e)}`),"getMinCliVersion",0,()=>r("/api/config/min-version"),"getTask",0,(e,t)=>r(`/api/tasks/${e}${a(t)}`),"getTaskMessages",0,(e,t,n)=>r(`/api/tasks/${e}/messages${a(t,n?{since:String(n)}:void 0)}`),"getThreadSummaries",0,(e,t)=>r(`/api/conversations/${e}/threads${a(t)}`),"getTrace",0,(e,t)=>r(`/api/traces/${e}${a(t)}`),"getWorkspaceOverview",0,e=>r(`/api/workspaces/${e}/overview${a(e)}`),"grantAgentAccess",0,(e,t,n)=>r(`/api/agents/${t}/access${a(e)}`,{method:"POST",body:JSON.stringify({user_id:n})}),"listAgentAccess",0,(e,t)=>r(`/api/agents/${t}/access${a(e)}`),"listAgentActiveTaskCounts",0,e=>r(`/api/agents/active-task-counts${a(e)}`),"listAgentActivity",0,(e,t,n)=>{let i={};return n?.limit&&(i.limit=String(n.limit)),n?.before&&(i.before=n.before),n?.beforeId&&(i.before_id=n.beforeId),n?.status&&(i.status=n.status),n?.type&&(i.type=n.type),r(`/api/agents/${e}/activity${a(t,i)}`)},"listAgentLinks",0,e=>r(`/api/agent-links${a(e)}`),"listAgentPins",0,e=>r(`/api/agents/pins${a(e)}`),"listAgents",0,e=>r(`/api/agents${a(e)}`),"listArtifacts",0,(e,t)=>r(`/api/artifacts${a(t,{conversation_id:e})}`),"listCalendarEvents",0,(e,t)=>{let n={};return t?.agentId&&(n.agentId=t.agentId),t?.from&&(n.from=t.from),t?.to&&(n.to=t.to),r(`/api/calendar${a(e,n)}`)},"listChannels",0,e=>r(`/api/channels${a(e)}`),"listEmailAccounts",0,(e,t)=>r(`/api/agents/${e}/email-accounts${a(t)}`),"listEmails",0,(e,t,n,i)=>r(`/api/email${a(t,{agentId:e,...n?{folder:n}:{},...i?{address:i}:{}})}`),"listFlaggedItems",0,(e,t)=>{let n={};return t?.limit&&(n.limit=String(t.limit)),t?.before&&(n.before=t.before),r(`/api/flags${a(e,n)}`)},"listFlaggedMessageIds",0,(e,t)=>r(`/api/flags${a(e,{conversation_id:t,ids_only:"true"})}`),"listInboxItems",0,(e,t)=>{let n={};return t?.limit&&(n.limit=String(t.limit)),t?.before&&(n.before=t.before),t?.types?.length&&(n.types=t.types.join(",")),r(`/api/inbox${a(e,n)}`)},"listInvites",0,e=>r(`/api/workspaces/${e}/invites${a(e)}`),"listIssues",0,(e,t)=>{let n={};return t?.agentId&&(n.agentId=t.agentId),t?.status&&(n.status=t.status),t?.terminal!==void 0&&(n.terminal=String(t.terminal)),r(`/api/issues${a(e,n)}`)},"listMeetings",0,(e,t)=>r(`/api/agents/${e}/meetings${a(t)}`),"listMembers",0,e=>r(`/api/workspaces/${e}/members${a(e)}`),"listMessages",0,(e,t,n)=>{let i={};return n?.limit&&(i.limit=String(n.limit)),n?.before&&(i.before=n.before),n?.beforeId&&(i.before_id=n.beforeId),r(`/api/conversations/${e}/messages${a(t,i)}`)},"listMessagesAroundTask",0,(e,t,n)=>r(`/api/conversations/${e}/messages${a(t,{around_task:n})}`),"listPreviousConversations",0,(e,t,n)=>{let i={exclude:n.exclude,before:n.before};return n.channel&&(i.channel=n.channel),n.limit&&(i.limit=String(n.limit)),r(`/api/agents/${e}/conversations${a(t,i)}`)},"listRuntimes",0,e=>r(`/api/runtimes${a(e)}`),"listTraces",0,(e,t)=>{let n={};return t?.limit&&(n.limit=String(t.limit)),t?.before&&(n.before=t.before),t?.status&&(n.status=t.status),t?.multiAgent&&(n.multiAgent="true"),t?.agentId&&(n.agentId=t.agentId),t?.channel&&(n.channel=t.channel),r(`/api/traces${a(e,n)}`)},"listWhitelist",0,(e,t)=>r(`/api/agents/${e}/whitelist${a(t)}`),"listWorkspaceActiveTasks",0,e=>r(`/api/agents/active-tasks${a(e)}`),"listWorkspaces",0,()=>r("/api/workspaces"),"markAllInboxRead",0,e=>r(`/api/inbox/read-all${a(e)}`,{method:"POST"}),"markInboxRead",0,(e,t)=>r(`/api/inbox/read${a(t)}`,{method:"POST",body:JSON.stringify({conversationId:e})}),"pinAgent",0,(e,t)=>r(`/api/agents/${t}/pin${a(e)}`,{method:"POST"}),"removeMember",0,(e,t)=>r(`/api/workspaces/${e}/members/${t}${a(e)}`,{method:"DELETE"}),"removeWhitelistEmail",0,(e,t,n)=>r(`/api/agents/${e}/whitelist/${t}${a(n)}`,{method:"DELETE"}),"renameChannelApi",0,(e,t,n)=>r(`/api/channels/${e}${a(t)}`,{method:"PATCH",body:JSON.stringify({name:n})}),"reorderAgentPins",0,(e,t)=>r(`/api/agents/pins/reorder${a(e)}`,{method:"PUT",body:JSON.stringify({ordered_agent_ids:t})}),"reorderChannelsApi",0,(e,t)=>r(`/api/channels/reorder${a(e)}`,{method:"PUT",body:JSON.stringify({ordered_channel_ids:t})}),"reorderUnpinnedAgents",0,(e,t)=>r(`/api/agents/sidebar/reorder${a(e)}`,{method:"PUT",body:JSON.stringify({ordered_agent_ids:t})}),"requestWorkspaceBrowse",0,(e,t,n,i)=>r(`/api/agents/${e}/workspace/browse${a(t)}`,{method:"POST",body:JSON.stringify({request_type:n,path:i})}),"retryTask",0,(e,t)=>r(`/api/tasks/${e}/retry${a(t)}`,{method:"POST"}),"revokeAgentAccess",0,(e,t,n,i=!1)=>r(`/api/agents/${t}/access/${n}${a(e)}${i?"&remove_whitelist=true":""}`,{method:"DELETE"}),"revokeInvite",0,(e,t)=>r(`/api/workspaces/${e}/invites/${t}${a(e)}`,{method:"DELETE"}),"sendEmail",0,(e,t,n,i,s,o,l,u)=>r(`/api/email/send${a(s)}`,{method:"POST",body:JSON.stringify({agentId:e,to:t,subject:n,htmlBody:i,attachments:o,...l,customAccountId:u})}),"sendMessage",0,s,"stopMeeting",0,(e,t,n)=>r(`/api/agents/${e}/meetings/${t}/stop${a(n)}`,{method:"POST"}),"syncEmailAccount",0,(e,t,n)=>r(`/api/agents/${e}/email-accounts/${t}/sync${a(n)}`,{method:"POST"}),"triggerRuntimeRescan",0,(e,t)=>r(`/api/runtimes/${e}/rescan${a(t)}`,{method:"POST"}),"triggerRuntimeUpdate",0,(e,t)=>r(`/api/runtimes/${e}/update${a(t)}`,{method:"POST"}),"trustEmail",0,(e,t)=>r(`/api/email/${e}/trust${a(t)}`,{method:"POST"}),"unflagMessage",0,(e,t)=>r(`/api/flags/${t}${a(e)}`,{method:"DELETE"}),"unpinAgent",0,(e,t)=>r(`/api/agents/${t}/pin${a(e)}`,{method:"DELETE"}),"updateAgent",0,(e,t,n)=>r(`/api/agents/${e}${a(n)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateAgentLink",0,(e,t,n)=>r(`/api/agent-links/${e}${a(n)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateCalendarEvent",0,(e,t,n)=>r(`/api/calendar/${e}${a(n)}`,{method:"PATCH",body:JSON.stringify(t)}),"updateEmailStatus",0,(e,t,n)=>r(`/api/email/${e}${a(t)}`,{method:"PATCH",body:JSON.stringify({status:n})}),"updateIssue",0,(e,t,n)=>r(`/api/issues/${t}${a(e)}`,{method:"PATCH",body:JSON.stringify(n)}),"updateMemberMe",0,(e,t)=>r(`/api/members/me${a(e)}`,{method:"PATCH",body:JSON.stringify({global_instruction:t})}),"updateWorkspace",0,(e,t)=>r(`/api/workspaces/${e}${a(e)}`,{method:"PATCH",body:JSON.stringify(t)}),"uploadEmailAttachment",0,l],222862)},452691,e=>{"use strict";let t=(0,e.i(419412).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",0,t])},392511,e=>{"use strict";var t=e.i(511043);e.s(["useControlled",0,function({controlled:e,default:n,name:i,state:r="value"}){let{current:a}=t.useRef(void 0!==e),[s,o]=t.useState(n),l=t.useCallback(e=>{a||o(e)},[]);return[a?e:s,l]}])},241836,909578,e=>{"use strict";e.i(811374);var t,n=e.i(154680),i=e.i(511043),r=e.i(959947);let a=((t={}).disabled="data-disabled",t.valid="data-valid",t.invalid="data-invalid",t.touched="data-touched",t.dirty="data-dirty",t.filled="data-filled",t.focused="data-focused",t),s={badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valid:null,valueMissing:!1},o={valid:null,touched:!1,dirty:!1,filled:!1,focused:!1},l={disabled:!1,...o};e.s(["DEFAULT_FIELD_ROOT_STATE",0,l,"DEFAULT_FIELD_STATE_ATTRIBUTES",0,o,"DEFAULT_VALIDITY_STATE",0,s,"fieldValidityMapping",0,{valid:e=>null===e?null:e?{[a.valid]:""}:{[a.invalid]:""}}],909578);let u={invalid:void 0,name:void 0,validityData:{state:s,errors:[],error:"",value:"",initialValue:null},setValidityData:r.NOOP,disabled:void 0,touched:o.touched,setTouched:r.NOOP,dirty:o.dirty,setDirty:r.NOOP,filled:o.filled,setFilled:r.NOOP,focused:o.focused,setFocused:r.NOOP,validate:()=>null,validationMode:"onSubmit",validationDebounceTime:0,shouldValidateOnChange:()=>!1,state:l,markedDirtyRef:{current:!1},registerFieldControl:r.NOOP,validation:{getValidationProps:(e=r.EMPTY_OBJECT)=>e,getInputValidationProps:(e=r.EMPTY_OBJECT)=>e,inputRef:{current:null},commit:async()=>{}}},c=i.createContext(u);e.s(["FieldRootContext",0,c,"useFieldRootContext",0,function(e=!0){let t=i.useContext(c);if(t.setValidityData===r.NOOP&&!e)throw Error((0,n.default)(28));return t}],241836)},251923,e=>{"use strict";var t=e.i(511043),n=e.i(959947);let i=t.createContext({formRef:{current:{fields:new Map}},errors:{},clearErrors:n.NOOP,validationMode:"onSubmit",submitAttemptedRef:{current:!1}});e.s(["useFormContext",0,function(){return t.useContext(i)}])},988072,e=>{"use strict";var t=e.i(511043),n=e.i(959947);let i=t.createContext({controlId:void 0,registerControlId:n.NOOP,labelId:void 0,setLabelId:n.NOOP,messageIds:[],setMessageIds:n.NOOP,getDescriptionProps:e=>e});e.s(["LabelableContext",0,i,"useLabelableContext",0,function(){return t.useContext(i)}])},585248,e=>{"use strict";var t=e.i(92615),n=e.i(236432),i=e.i(298604),r=e.i(168879),a=e.i(990966),s=e.i(962795),o=e.i(988072);e.s(["useLabel",0,function(e={}){let l,{id:u,fallbackControlId:c,native:d=!1,setLabelId:f,focusControl:p}=e,{controlId:m,setLabelId:g}=(0,o.useLabelableContext)(),h=(0,i.useStableCallback)(e=>{g(e),f?.(e)}),$=(l=(0,s.useBaseUiId)(u),(0,a.useIsoLayoutEffect)(()=>(h(l),()=>{h(void 0)}),[l,h]),l),y=m??c;function b(e){let i=(0,r.getTarget)(e.nativeEvent);i?.closest("button,input,select,textarea")||(!e.defaultPrevented&&e.detail>1&&e.preventDefault(),d||function(e){if(p)return p(e,y);if(!y)return;let i=(0,n.ownerDocument)(e.currentTarget).getElementById(y);(0,t.isHTMLElement)(i)&&i.focus({focusVisible:!0})}(e))}return d?{id:$,htmlFor:y??void 0,onMouseDown:b}:{id:$,onClick:b,onPointerDown(e){e.preventDefault()}}}],585248)},65756,e=>{"use strict";var t=e.i(511043),n=e.i(990966),i=e.i(241836);e.s(["useRegisterFieldControl",0,function(e,r,a,s,o=!0){let{registerFieldControl:l}=(0,i.useFieldRootContext)(),u=t.useRef(null);u.current||(u.current=Symbol()),(0,n.useIsoLayoutEffect)(()=>{let t=u.current;if(t&&o)return l(t,{controlRef:e,getValue:s,id:r,value:a}),()=>{l(t,void 0)}},[e,o,s,r,l,a])}])},865306,e=>{"use strict";var t=e.i(511043),n=e.i(990966),i=e.i(298604),r=e.i(826918),a=e.i(92615),s=e.i(959947),o=e.i(962795),l=e.i(988072);e.s(["useLabelableId",0,function(e={}){let{id:u,implicit:c=!1,controlRef:d}=e,{controlId:f,registerControlId:p}=(0,l.useLabelableContext)(),m=(0,o.useBaseUiId)(u),g=c?f:void 0,h=(0,r.useRefWithInit)(()=>Symbol("labelable-control")),$=t.useRef(!1),y=t.useRef(null!=u),b=(0,i.useStableCallback)(()=>{$.current&&p!==s.NOOP&&($.current=!1,p(h.current,void 0))});return(0,n.useIsoLayoutEffect)(()=>{let e;if(p!==s.NOOP){if(c){let t=d?.current;e=(0,a.isElement)(t)&&null!=t.closest("label")?u??null:g??m}else if(null!=u)y.current=!0,e=u;else{if(!y.current)return void b();e=m}if(void 0===e)return void b();$.current=!0,p(h.current,e)}},[u,d,g,p,c,m,h,b]),t.useEffect(()=>b,[b]),f??m}])},386102,e=>{"use strict";var t=e.i(511043),n=e.i(695681);let i=t.forwardRef(function(e,t){let{className:i,render:r,orientation:a="horizontal",style:s,...o}=e;return(0,n.useRenderElement)("div",e,{state:{orientation:a},ref:t,props:[{role:"separator","aria-orientation":a},o]})});e.s(["Separator",0,i])},991065,e=>{"use strict";var t=e.i(511043);let n=t.createContext(void 0),i={disableStyleElements:!1};e.s(["useCSPContext",0,function(){return t.useContext(n)??i}])},392662,e=>{"use strict";var t=e.i(511043);let n=t.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},elementsRef:{current:[]},nextIndexRef:{current:0}});e.s(["CompositeListContext",0,n,"useCompositeListContext",0,function(){return t.useContext(n)}])},814378,e=>{"use strict";var t=e.i(511043),n=e.i(826918),i=e.i(298604),r=e.i(990966),a=e.i(392662),s=e.i(653772);function o(){return new Map}function l(){return new Set}function u(e,t){let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING||n&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:n&Node.DOCUMENT_POSITION_PRECEDING||n&Node.DOCUMENT_POSITION_CONTAINS?1:0}e.s(["CompositeList",0,function(e){let{children:c,elementsRef:d,labelsRef:f,onMapChange:p}=e,m=(0,i.useStableCallback)(p),g=t.useRef(0),h=(0,n.useRefWithInit)(l).current,$=(0,n.useRefWithInit)(o).current,[y,b]=t.useState(0),E=t.useRef(y),v=(0,i.useStableCallback)((e,t)=>{$.set(e,t??null),E.current+=1,b(E.current)}),w=(0,i.useStableCallback)(e=>{$.delete(e),E.current+=1,b(E.current)}),O=t.useMemo(()=>{let e=new Map;return Array.from($.keys()).filter(e=>e.isConnected).sort(u).forEach((t,n)=>{let i=$.get(t)??{};e.set(t,{...i,index:n})}),e},[$,y]);(0,r.useIsoLayoutEffect)(()=>{if("function"!=typeof MutationObserver||0===O.size)return;let e=new MutationObserver(e=>{let t=new Set,n=e=>t.has(e)?t.delete(e):t.add(e);e.forEach(e=>{e.removedNodes.forEach(n),e.addedNodes.forEach(n)}),0===t.size&&(E.current+=1,b(E.current))});return O.forEach((t,n)=>{n.parentElement&&e.observe(n.parentElement,{childList:!0})}),()=>{e.disconnect()}},[O]),(0,r.useIsoLayoutEffect)(()=>{E.current===y&&(d.current.length!==O.size&&(d.current.length=O.size),f&&f.current.length!==O.size&&(f.current.length=O.size),g.current=O.size),m(O)},[m,O,d,f,y]),(0,r.useIsoLayoutEffect)(()=>()=>{d.current=[]},[d]),(0,r.useIsoLayoutEffect)(()=>()=>{f&&(f.current=[])},[f]);let S=(0,i.useStableCallback)(e=>(h.add(e),()=>{h.delete(e)}));(0,r.useIsoLayoutEffect)(()=>{h.forEach(e=>e(O))},[h,O]);let T=t.useMemo(()=>({register:v,unregister:w,subscribeMapChange:S,elementsRef:d,labelsRef:f,nextIndexRef:g}),[v,w,S,d,f,g]);return(0,s.jsx)(a.CompositeListContext.Provider,{value:T,children:c})}])},657614,e=>{"use strict";var t,n=e.i(511043),i=e.i(990966),r=e.i(392662);let a=((t={})[t.None=0]="None",t[t.GuessFromOrder=1]="GuessFromOrder",t);e.s(["IndexGuessBehavior",0,a,"useCompositeListItem",0,function(e={}){let{label:t,metadata:s,textRef:o,indexGuessBehavior:l,index:u}=e,{register:c,unregister:d,subscribeMapChange:f,elementsRef:p,labelsRef:m,nextIndexRef:g}=(0,r.useCompositeListContext)(),h=n.useRef(-1),[$,y]=n.useState(u??(l===a.GuessFromOrder?()=>{if(-1===h.current){let e=g.current;g.current+=1,h.current=e}return h.current}:-1)),b=n.useRef(null),E=n.useCallback(e=>{if(b.current=e,-1!==$&&null!==e&&(p.current[$]=e,m)){let n=void 0!==t;m.current[$]=n?t:o?.current?.textContent??e.textContent}},[$,p,m,t,o]);return(0,i.useIsoLayoutEffect)(()=>{if(null!=u)return;let e=b.current;if(e)return c(e,s),()=>{d(e)}},[u,c,d,s]),(0,i.useIsoLayoutEffect)(()=>{if(null==u)return f(e=>{let t=b.current?e.get(b.current)?.index:null;null!=t&&y(t)})},[u,f,y]),n.useMemo(()=>({ref:E,index:$}),[$,E])}])},26349,e=>{"use strict";var t=e.i(452691);e.s(["CheckIcon",()=>t.default])},485322,e=>{"use strict";let t=(0,e.i(419412).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["default",0,t])},490159,422987,e=>{"use strict";function t(e,n=Number.MIN_SAFE_INTEGER,i=Number.MAX_SAFE_INTEGER){return Math.max(n,Math.min(e,i))}e.s(["clamp",0,t],422987),e.s(["SCROLL_EDGE_TOLERANCE_PX",0,1,"getMaxScrollOffset",0,function(e,t){return Math.max(0,e-t)},"normalizeScrollOffset",0,function(e,n){if(n<=0)return 0;let i=t(e,0,n),r=n-i,a=i<=1,s=r<=1;return a&&s?i<=r?0:n:a?0:s?n:i}],490159)},358719,e=>{"use strict";var t=e.i(653772);let n="base-ui-disable-scrollbar";e.s(["styleDisableScrollbar",0,{className:n,getElement:e=>(0,t.jsx)("style",{nonce:e,href:n,precedence:"base-ui:low",children:`.${n}{scrollbar-width:none}.${n}::-webkit-scrollbar{display:none}`})}])}]);