@alook/app 0.0.108 → 0.0.110
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundled/email-worker/index.js +8 -5
- package/bundled/web/.open-next/.build/durable-objects/queue.js +5 -5
- package/bundled/web/.open-next/assets/BUILD_ID +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/{0t3u2c6n51rlj.js → 01apep3k2lhu1.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/039rsmy2xv5a-.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/08_pxrd46meym.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/08p2ekglkxw~q.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/0aj8yzj6vrad4.css +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/{1712ppta_sub~.js → 0caq6r63e_.cz.js} +2 -2
- package/bundled/web/.open-next/assets/_next/static/chunks/0kjdnm3_zoplm.js +63 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/11.l90o9r_vdp.js +62 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/{0aiuwip8_7r1i.js → 13bvgms2h_9ud.js} +1 -1
- package/bundled/web/.open-next/cache/{ZoH0qYtBG9o2M-yTRK3ab → KbaMV38oRSu84qh40vSuT}/_global-error.cache +1 -1
- package/bundled/web/.open-next/cache/{ZoH0qYtBG9o2M-yTRK3ab → KbaMV38oRSu84qh40vSuT}/_not-found.cache +1 -1
- package/bundled/web/.open-next/cache/{ZoH0qYtBG9o2M-yTRK3ab → KbaMV38oRSu84qh40vSuT}/device.cache +1 -1
- package/bundled/web/.open-next/cache/{ZoH0qYtBG9o2M-yTRK3ab → KbaMV38oRSu84qh40vSuT}/privacy.cache +1 -1
- package/bundled/web/.open-next/cache/{ZoH0qYtBG9o2M-yTRK3ab → KbaMV38oRSu84qh40vSuT}/sitemap.xml.cache +1 -1
- package/bundled/web/.open-next/cloudflare/cache-assets-manifest.sql +1 -1
- package/bundled/web/.open-next/cloudflare/init.js +1 -1
- package/bundled/web/.open-next/dynamodb-provider/dynamodb-cache.json +1 -1
- package/bundled/web/.open-next/middleware/handler.mjs +4 -4
- package/bundled/web/.open-next/server-functions/default/src/web/.next/BUILD_ID +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/build-manifest.json +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/prerender-manifest.json +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/invite/[token]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/studio/new/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/activity/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/chat/[convId]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/chat/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/email/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/files/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/meetings/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/new/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/calendar/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/flags/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/help/email-setup/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/home/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/issues/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/runtimes/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/settings/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/threads/[traceId]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/threads/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/unread/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/workspaces/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(auth)/sign-in/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/agents/[id]/chat-init/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/agents/[id]/whitelist/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/agents/recruit/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/agents/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/calendar/[id]/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/calendar/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/conversations/[id]/active-task/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/conversations/[id]/buffered-messages/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/conversations/[id]/init/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/conversations/[id]/messages/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/daemon/deregister/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/daemon/heartbeat/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/daemon/register/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/daemon/sweep/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/daemon/tasks/[taskId]/complete/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/daemon/tasks/[taskId]/fail/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/daemon/tasks/[taskId]/messages/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/daemon/tasks/[taskId]/start/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/daemon/tasks/[taskId]/supersede/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/daemon/tasks/poll/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/email/notify/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/issues/[id]/comments/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/issues/[id]/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/issues/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/meeting/callback/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/runtimes/machine/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/studios/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/tasks/[id]/retry/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/device/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/templates/[id]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/templates/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__027mioa._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0ai~o9t._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0g2f8es._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0hfok0d._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0ibt4_b._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{[root-of-the-server]__0d6ebrz._.js → [root-of-the-server]__0l2s5a9._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{[root-of-the-server]__0ycrc-4._.js → [root-of-the-server]__0p25hr6._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{[root-of-the-server]__042daks._.js → [root-of-the-server]__0twttjc._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{[root-of-the-server]__0lc6d3p._.js → [root-of-the-server]__0y7iq_6._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{[root-of-the-server]__0l7bqz8._.js → [root-of-the-server]__0~6oegu._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0~qx7w~._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[turbopack]_runtime.js +35 -35
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0kfs6gu._.js → _0.gkbx8._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0xjhix2._.js → _00-p7_0._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0v78k7n._.js → _0047hu1._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0r7d~ex._.js → _03.wj5m._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0j5oga0._.js → _03gwxos._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_09yl_9p._.js → _03pj4c4._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0zhu~h5._.js → _0403fh~._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_06imn.m._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_08xh_f8._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0xfvf8p._.js → _0aa_-d.._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0a3hhbw._.js → _0aomz8a._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0qh5atg._.js → _0aqlpnt._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0iiaqss._.js → _0b6v~wp._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0d5xg0u._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0es3xrw._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_089u_am._.js → _0fj.mo3._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0fjzb27._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0j22j5s._.js → _0huk3rm._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_027kyge._.js → _0i~wxfn._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0f2yj1_._.js → _0nyvdk.._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_07n_1wf._.js → _0oewl7j._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0r~swxs._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0y1jmbv._.js → _0w5uflk._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0p8t2cq._.js → _0wbaduy._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0t1vdvk._.js → _0xed-yu._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0xfnkkm._.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_0422iyn._.js → _0yzq1gx._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_00clbi5._.js → _0zt3sdk._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_13sefqw._.js → _11zk~pq._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{_064~~s0._.js → _12-_-5g._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/{src_0yrpg8t._.js → src_0wkbw.-._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{[root-of-the-server]__13_rzu8._.js → [root-of-the-server]__00ir-1l._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[turbopack]_runtime.js +35 -35
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_06glull._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{_0orn3gz._.js → _0lb.qjt._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0llmkdo._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0r_z7cy._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0ryz7_7._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0v378m.._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{_0amp3a1._.js → _0xhqu2a._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{_0viys_q._.js → _12~4zih._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_0~23g-y._.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_components_00xgo_-._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_components_0nj0euq._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{src_web_src_components_avatar_04z95~4._.js → src_web_src_components_avatar_0a0h8en._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_components_home_home-page_tsx_0to84tv._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_components_typewriter-visual_tsx_0lk-33~._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/middleware-build-manifest.js +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/middleware-manifest.json +5 -5
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/server-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/server-reference-manifest.json +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/handler.mjs +55 -55
- package/bundled/web/.open-next/server-functions/default/src/web/handler.mjs.meta.json +358 -358
- package/bundled/web/.open-next/server-functions/default/src/web/index.mjs +3 -3
- package/bundled/ws-do/index.js +4 -2
- package/dist/cli/index.js +5 -4
- package/package.json +5 -3
- package/bundled/web/.open-next/assets/_next/static/chunks/0-cq0qfayk62j.js +0 -63
- package/bundled/web/.open-next/assets/_next/static/chunks/09fgwh4kts~24.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0eih9s5qcj60s.js +0 -62
- package/bundled/web/.open-next/assets/_next/static/chunks/0or~sn2q6u39-.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0puh0qew5ubn-.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0q.6r1w8fuz_c.css +0 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_11wu9fj._.js +0 -3
- /package/bundled/web/.open-next/assets/_next/static/{ZoH0qYtBG9o2M-yTRK3ab → KbaMV38oRSu84qh40vSuT}/_buildManifest.js +0 -0
- /package/bundled/web/.open-next/assets/_next/static/{ZoH0qYtBG9o2M-yTRK3ab → KbaMV38oRSu84qh40vSuT}/_clientMiddlewareManifest.js +0 -0
- /package/bundled/web/.open-next/assets/_next/static/{ZoH0qYtBG9o2M-yTRK3ab → KbaMV38oRSu84qh40vSuT}/_ssgManifest.js +0 -0
- /package/bundled/web/.open-next/cache/{ZoH0qYtBG9o2M-yTRK3ab → KbaMV38oRSu84qh40vSuT}/robots.txt.cache +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,617108,611232,e=>{"use strict";var s=e.i(368075),t=e.i(298699),a=e.i(186339),r=e.i(903477),i=e.i(473131),l=e.i(89110),n=e.i(779646),d=e.i(855372);function o({value:e,onValueChange:t,runtimes:a,disabled:r,triggerProps:i}){let n=function(e){let s=new Map;for(let t of e){let e=t.daemon_id||t.id;s.has(e)||s.set(e,{label:("string"==typeof t.device_info?t.device_info:"")||e,runtimes:[]}),s.get(e).runtimes.push(t)}return s}(a),c=r||0===a.length||a.every(e=>"online"!==e.status);return(0,s.jsxs)(l.Select,{value:e,onValueChange:e=>{e&&t(e)},disabled:c,items:a.map(e=>{let s=("string"==typeof e.device_info?e.device_info:"")||"",t=s?`${e.provider} (${s})`:e.provider;return{value:e.id,label:t}}),children:[(0,s.jsx)(l.SelectTrigger,{...i,children:(0,s.jsx)(l.SelectValue,{placeholder:0===a.length?"No runtimes — start a daemon first":a.every(e=>"online"!==e.status)?"All runtimes offline":"Select a runtime"})}),(0,s.jsx)(l.SelectContent,{children:Array.from(n.entries()).map(([e,t])=>(0,s.jsxs)(l.SelectGroup,{children:[(0,s.jsx)(l.SelectLabel,{className:"truncate",children:t.label}),t.runtimes.map(e=>(0,s.jsx)(l.SelectItem,{value:e.id,disabled:"online"!==e.status,children:(0,s.jsxs)("span",{className:"flex items-center gap-2",children:[(0,s.jsx)(d.ProviderLogo,{provider:e.provider,className:"h-4 w-4"}),(0,s.jsx)("span",{children:e.provider}),(0,s.jsxs)("span",{className:"text-muted-foreground text-xs",children:["(",e.status,")"]})]})},e.id))]},e))})]})}e.s(["RuntimeSelect",0,o],611232),e.i(954194),e.i(459119).default.env.ALOOK_DOMAIN;let c=/^[a-zA-Z0-9-]{3,}$/,m=new Set(["no-reply","noreply","admin","support","help","info","postmaster","abuse","security","mailer-daemon","root","webmaster","hostmaster","system","alook"]);function u(e){return c.test(e)&&!m.has(e.toLowerCase())}var x=e.i(613349),p=e.i(406963);let h=(0,p.default)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);var g=e.i(49695);let v=(0,p.default)("dices",[["rect",{width:"12",height:"12",x:"2",y:"10",rx:"2",ry:"2",key:"6agr2n"}],["path",{d:"m17.92 14 3.5-3.5a2.24 2.24 0 0 0 0-3l-5-4.92a2.24 2.24 0 0 0-3 0L10 6",key:"1o487t"}],["path",{d:"M6 18h.01",key:"uhywen"}],["path",{d:"M10 14h.01",key:"ssrbsk"}],["path",{d:"M15 6h.01",key:"cblpky"}],["path",{d:"M18 9h.01",key:"2061c0"}]]);var f=e.i(848533),j=e.i(500324),y=e.i(222862);e.i(355578);var b=e.i(636557),N=e.i(880932),w=e.i(254618),S=e.i(520582);function C({children:e}){let[a,r]=(0,t.useState)(!1);return(0,s.jsxs)("div",{className:"pt-1",children:[(0,s.jsxs)("button",{type:"button",onClick:()=>r(!a),className:"flex items-center gap-1.5 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[(0,s.jsx)(f.ChevronDown,{className:(0,x.cn)("size-3.5 transition-transform",a&&"rotate-180")}),"Advanced"]}),a&&(0,s.jsx)("div",{className:"mt-3 space-y-4",children:e})]})}e.s(["AgentAccessTab",0,function({agentId:r,ownerId:i}){let{workspaceId:d}=(0,j.useWorkspace)(),[o,c]=(0,t.useState)("private"),[m,u]=(0,t.useState)(!1),[x,p]=(0,t.useState)([]),[h,v]=(0,t.useState)([]),[f,S]=(0,t.useState)(!0),[C,A]=(0,t.useState)(null),[k,P]=(0,t.useState)(""),[_,H]=(0,t.useState)(!1),[I,T]=(0,t.useState)(null),[E,z]=(0,t.useState)(!0);(0,t.useEffect)(()=>{let e=!1;return S(!0),Promise.all([(0,y.listAgentAccess)(d,r),(0,y.listMembers)(d)]).then(([s,t])=>{e||(p(s),v(t))}).catch(s=>{e||(s instanceof b.ApiError&&403===s.status?A(s.message):A("Failed to load access list"))}).finally(()=>{e||S(!1)}),()=>{e=!0}},[d,r]),(0,t.useEffect)(()=>{e.A(302482).then(({listAgents:e})=>{e(d).then(e=>{let s=e.find(e=>e.id===r);s&&c(s.visibility??"private")}).catch(()=>{})})},[d,r]);let M=async e=>{c(e),u(!0);try{await (0,y.updateAgent)(r,{visibility:e},d),N.toast.success("public"===e?"Agent is now public":"Agent is now private")}catch{c(o),N.toast.error("Failed to update visibility")}finally{u(!1)}},L=h.find(e=>e.user_id===i),D=new Set(x.map(e=>e.user_id)),F=h.filter(e=>!D.has(e.user_id)&&e.user_id!==i),U=async e=>{if(e&&!_){H(!0),A(null);try{await (0,y.grantAgentAccess)(d,r,e);let s=h.find(s=>s.user_id===e);s&&p(t=>[...t,{id:e,user_id:s.user_id,name:s.name,email:s.email,created_at:new Date().toISOString()}]),P(""),N.toast.success("Access granted")}catch(e){A(e instanceof Error?e.message:"Failed to grant access")}finally{H(!1)}}},R=async()=>{if(I){p(e=>e.filter(e=>e.user_id!==I.user_id)),T(null),A(null);try{await (0,y.revokeAgentAccess)(d,r,I.user_id,E),N.toast.success(E?"Access revoked and removed from whitelist":"Access revoked")}catch{p(x),A("Failed to revoke access")}}};return(0,s.jsxs)("div",{className:"mx-auto max-w-md space-y-6",children:[(0,s.jsx)("div",{className:"space-y-4 rounded-lg border border-border/50 p-4",children:(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-medium",children:"Visibility"}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5",children:"public"===o?"All workspace members can use this agent":"Only authorized members can use this agent"})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:m?"Saving…":"public"===o?"Public":"Private"}),(0,s.jsx)(w.Switch,{checked:"public"===o,onCheckedChange:e=>M(e?"public":"private"),disabled:m})]})]})}),"private"===o&&(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsx)("h3",{className:"text-sm font-medium",children:"Authorized Members"}),C&&(0,s.jsx)("p",{className:"text-xs text-destructive",children:C}),f?(0,s.jsx)("div",{className:"space-y-2",children:[1,2].map(e=>(0,s.jsx)("span",{className:"block h-10 animate-pulse rounded-md bg-muted"},e))}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"space-y-1.5",children:[L&&(0,s.jsxs)("div",{className:"flex items-center justify-between rounded-md border border-border/50 px-3 py-2",children:[(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsx)("p",{className:"text-xs font-medium truncate",children:L.name||L.email}),L.name&&(0,s.jsx)("p",{className:"text-xs text-muted-foreground truncate",children:L.email})]}),(0,s.jsx)("span",{className:"ml-2 shrink-0 text-xs text-muted-foreground",children:"Owner"})]}),x.map(e=>(0,s.jsxs)("div",{className:"flex items-center justify-between rounded-md border border-border/50 px-3 py-2",children:[(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsx)("p",{className:"text-xs font-medium truncate",children:e.name||e.email}),e.name&&(0,s.jsx)("p",{className:"text-xs text-muted-foreground truncate",children:e.email})]}),(0,s.jsx)("button",{type:"button",onClick:()=>{var s;let t;return s=e.user_id,void((t=x.find(e=>e.user_id===s))&&(T(t),z(!0)))},className:"ml-2 shrink-0 rounded-full p-1 text-muted-foreground hover:bg-destructive/10 hover:text-destructive transition-colors",children:(0,s.jsx)(g.XIcon,{className:"size-3.5"})})]},e.user_id))]}),F.length>0?(0,s.jsx)("div",{className:"flex items-center gap-2",children:(0,s.jsxs)(l.Select,{value:k,onValueChange:e=>{e&&(P(e),U(e))},children:[(0,s.jsx)(l.SelectTrigger,{className:"flex-1 text-xs",children:(0,s.jsx)(l.SelectValue,{placeholder:"Add a member..."})}),(0,s.jsx)(l.SelectContent,{children:F.map(e=>(0,s.jsx)(l.SelectItem,{value:e.user_id,children:e.name||e.email},e.user_id))})]})}):(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:"All workspace members have been added. Invite new members from workspace settings."})]})]}),(0,s.jsx)(n.Dialog,{open:!!I,onOpenChange:e=>{e||T(null)},children:(0,s.jsxs)(n.DialogContent,{children:[(0,s.jsxs)(n.DialogHeader,{children:[(0,s.jsx)(n.DialogTitle,{children:"Remove Member Access"}),(0,s.jsxs)(n.DialogDescription,{children:["Remove"," ",(0,s.jsx)("span",{className:"font-medium text-foreground",children:I?.name||I?.email})," ","from this agent?"]})]}),(0,s.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer px-1",children:[(0,s.jsx)("input",{type:"checkbox",checked:E,onChange:e=>z(e.target.checked),className:"size-4 rounded border-border accent-primary"}),(0,s.jsx)("span",{className:"text-sm",children:"Also remove from email whitelist"})]}),(0,s.jsxs)(n.DialogFooter,{children:[(0,s.jsx)(n.DialogClose,{render:(0,s.jsx)(a.Button,{variant:"outline",size:"sm"}),children:"Cancel"}),(0,s.jsx)(a.Button,{size:"sm",variant:"destructive",onClick:R,children:"Remove"})]})]})})]})},"AllowedSendersTab",0,function({agentId:e}){let{workspaceId:i}=(0,j.useWorkspace)(),[l,n]=(0,t.useState)([]),[d,o]=(0,t.useState)(""),[c,m]=(0,t.useState)(!0),[u,x]=(0,t.useState)(!1),[p,v]=(0,t.useState)(null),[f,b]=(0,t.useState)(!1);(0,t.useEffect)(()=>{let s=!1;return m(!0),(0,y.listWhitelist)(e,i).then(e=>{s||n(e)}).catch(()=>{s||v("Failed to load whitelist")}).finally(()=>{s||m(!1)}),()=>{s=!0}},[e,i]),(0,t.useEffect)(()=>{let s=!1;return(0,y.listAgents)(i).then(t=>{s||b(t.filter(s=>s.id!==e&&s.email_handle).length>0)}).catch(()=>{}),()=>{s=!0}},[e,i]);let N=d.includes("@")&&d.trim().length>0,w=async()=>{if(N&&!u){x(!0),v(null);try{let s=await (0,y.addWhitelistEmail)(e,d.toLowerCase(),i);n(e=>[...e,s]),o("")}catch(e){v(e instanceof Error?e.message:"Failed to add email")}finally{x(!1)}}},S=async s=>{n(e=>e.filter(e=>e.id!==s)),v(null);try{await (0,y.removeWhitelistEmail)(e,s,i)}catch{n(l),v("Failed to remove email")}};return(0,s.jsxs)("div",{className:"mx-auto max-w-md space-y-4",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-medium",children:"Allowed Senders"}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Only emails from these addresses will trigger this agent. Applies to all configured email addresses (alook.ai handle and custom email)."}),f&&(0,s.jsxs)("p",{className:"text-xs text-muted-foreground/70 mt-1.5 flex items-center gap-1",children:[(0,s.jsx)(h,{className:"size-3 shrink-0"}),"Agents in this workspace can already email each other — no whitelist entry needed."]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(r.Input,{value:d,onChange:e=>o(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),w())},placeholder:"user@example.com",type:"email",className:"flex-1"}),(0,s.jsx)(a.Button,{type:"button",size:"sm",variant:"secondary",disabled:!N||u,onClick:w,children:u?"Adding...":"Add"})]}),p&&(0,s.jsx)("p",{className:"text-xs text-destructive",children:p}),c?(0,s.jsx)("div",{className:"space-y-2",children:[1,2,3].map(e=>(0,s.jsx)("span",{className:"block h-8 animate-pulse rounded-md bg-muted"},e))}):0===l.length?(0,s.jsx)("p",{className:"text-sm text-muted-foreground py-4 text-center",children:"No allowed senders — all inbound emails will be rejected."}):(0,s.jsx)("div",{className:"space-y-1.5",children:l.map(e=>(0,s.jsxs)("div",{className:"flex items-center justify-between rounded-md border border-border/50 px-3 py-2",children:[(0,s.jsx)("span",{className:"text-sm",children:e.email}),(0,s.jsx)("button",{type:"button",onClick:()=>S(e.id),className:"rounded-full p-1 text-muted-foreground hover:bg-destructive/10 hover:text-destructive transition-colors",children:(0,s.jsx)(g.XIcon,{className:"size-3.5"})})]},e.id))})]})},"EmailHandleField",0,function({emailHandle:e,setEmailHandle:t,derivedHandle:a}){let r=e||a,l=r&&!u(r)?"Must be 3+ characters, letters/numbers/hyphens only":"";return(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)(i.Label,{className:"text-xs text-muted-foreground",children:"Email"}),(0,s.jsxs)("div",{className:"flex items-center",children:[(0,s.jsx)("input",{id:"agent-handle",value:e,onChange:e=>t(e.target.value.toLowerCase()),placeholder:a||"my-agent",className:"w-full border-0 bg-transparent px-0 py-0.5 text-sm text-foreground shadow-none outline-none placeholder:text-muted-foreground/40 focus-visible:ring-0"}),(0,s.jsx)("span",{className:"shrink-0 text-sm text-muted-foreground/70",children:"@alook.ai"})]}),l&&(0,s.jsx)("p",{className:"text-xs text-destructive",children:l})]})},"GeneralFields",0,function({name:e,setName:t,description:a,setDescription:r,instructions:l,setInstructions:n,model:c,setModel:m,runtimeId:u,setRuntimeId:p,runtimes:h,providerModels:g,errors:f,runtimeAsRadio:j=!1,onShuffle:y,emailHandleSlot:b,advancedSection:N}){return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)("input",{id:"agent-name",value:e,onChange:e=>t(e.target.value),placeholder:"Agent name",required:!0,autoFocus:!0,"aria-invalid":!!f?.name,"aria-describedby":f?.name?"agent-name-error":void 0,className:"w-full border-0 bg-transparent px-0 py-1 text-2xl font-medium leading-[1.2] tracking-tight shadow-none outline-none placeholder:text-muted-foreground/40 placeholder:font-normal focus-visible:ring-0"}),y&&(0,s.jsx)("button",{type:"button",onClick:y,"aria-label":"Randomize name",className:"absolute right-0 top-1/2 -translate-y-1/2 rounded p-1.5 text-muted-foreground/50 hover:text-foreground hover:bg-accent transition-colors",children:(0,s.jsx)(v,{className:"size-4"})})]}),f?.name&&(0,s.jsx)("p",{id:"agent-name-error",className:"text-xs text-destructive mt-1",children:f.name})]}),(0,s.jsx)(S.AutoResizeTextarea,{id:"agent-description",value:a,onChange:e=>r(e.target.value),placeholder:"Add a description…",rows:1,className:"w-full border-0 bg-transparent px-0 py-0.5 text-sm text-foreground shadow-none outline-none placeholder:text-muted-foreground/40 focus-visible:ring-0"}),b,(j||h.length>0)&&(0,s.jsxs)("div",{id:"agent-runtime-select",className:"space-y-1.5",children:[(0,s.jsx)(i.Label,{className:"text-xs text-muted-foreground",children:"Runtime"}),j?(0,s.jsx)("div",{className:"space-y-1.5",role:"radiogroup","aria-label":"Runtime",children:0===h.length?(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:"No runtimes — start a daemon first"}):h.map(e=>{let t="online"===e.status,a=u===e.id,r="string"==typeof e.device_info?e.device_info:"";return(0,s.jsxs)("label",{className:(0,x.cn)("flex items-center gap-2.5 rounded-lg border p-2.5 cursor-pointer transition-colors",a?"border-primary bg-primary/5":"border-border/50 hover:border-foreground/20",!t&&"opacity-40 pointer-events-none"),children:[(0,s.jsx)("input",{type:"radio",name:"runtime",value:e.id,checked:a,disabled:!t,onChange:()=>{let s=h.find(e=>e.id===u)?.provider,t=e.provider;p(e.id),s&&s!==t&&m("")},className:"accent-primary size-3.5"}),(0,s.jsx)(d.ProviderLogo,{provider:e.provider,className:"h-4 w-4 shrink-0"}),(0,s.jsx)("span",{className:"text-sm",children:e.provider}),r&&(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:r}),!t&&(0,s.jsx)("span",{className:"text-xs text-muted-foreground ml-auto",children:"offline"})]},e.id)})}):(0,s.jsx)(o,{value:u,onValueChange:e=>{let s=h.find(e=>e.id===u)?.provider,t=h.find(s=>s.id===e)?.provider;p(e),s&&s!==t&&m("")},runtimes:h,triggerProps:{"aria-invalid":!!f?.runtimeId,"aria-describedby":f?.runtimeId?"agent-runtime-error":void 0}}),f?.runtimeId&&(0,s.jsx)("p",{id:"agent-runtime-error",className:"text-xs text-destructive",children:f.runtimeId})]}),(n||N)&&(0,s.jsxs)(C,{children:[n&&(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)(i.Label,{className:"text-xs text-muted-foreground",children:"Instructions"}),(0,s.jsx)(S.AutoResizeTextarea,{id:"agent-instructions",value:l??"",onChange:e=>n(e.target.value),placeholder:"System prompt or instructions...",rows:3,className:"w-full border-0 bg-transparent px-0 py-1 text-sm text-foreground shadow-none outline-none placeholder:text-muted-foreground/40 focus-visible:ring-0"})]}),(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)(i.Label,{className:"text-xs text-muted-foreground",children:"Model"}),(0,s.jsx)("input",{id:"agent-model",value:c,onChange:e=>m(e.target.value),placeholder:"Default (runtime model)",list:"agent-model-options",className:"w-full border-0 bg-transparent px-0 py-0.5 text-sm text-foreground shadow-none outline-none placeholder:text-muted-foreground/40 focus-visible:ring-0"}),g.length>0&&(0,s.jsx)("datalist",{id:"agent-model-options",children:g.map(e=>(0,s.jsx)("option",{value:e},e))})]}),N]})]})},"getHandleError",0,function(e){return e&&!u(e)?"Must be 3+ characters, letters/numbers/hyphens only":""},"nameToHandle",0,function(e){return e.toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-{2,}/g,"-").replace(/^-|-$/g,"")}],617108)},656955,987604,e=>{"use strict";var s=e.i(368075),t=e.i(298699),a=e.i(186339),r=e.i(903477),i=e.i(473131),l=e.i(332680),n=e.i(329686),d=e.i(613349),o=e.i(222862),c=e.i(371522),m=e.i(6131),u=e.i(4581),x=e.i(108281),p=e.i(596519),h=e.i(64873),g=e.i(49695);let v=(0,e.i(406963).default)("circle-question-mark",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["CircleHelp",0,v],987604);var f=e.i(880932),j=e.i(500324),y=e.i(553617);let b={Gmail:{imapHost:"imap.gmail.com",imapPort:993,smtpHost:"smtp.gmail.com",smtpPort:587},Outlook:{imapHost:"outlook.office365.com",imapPort:993,smtpHost:"smtp.office365.com",smtpPort:587},Yahoo:{imapHost:"imap.mail.yahoo.com",imapPort:993,smtpHost:"smtp.mail.yahoo.com",smtpPort:587}};function N({fields:e,applyPreset:t,errors:l,onClearError:n}){return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:"flex gap-1.5",children:Object.keys(b).map(e=>(0,s.jsx)(a.Button,{type:"button",variant:"outline",size:"sm",className:"h-6 text-[10px] px-2",onClick:()=>t(e),children:e},e))}),(0,s.jsxs)("div",{className:"grid gap-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)(i.Label,{className:"text-xs",children:"Email Address *"}),(0,s.jsx)(r.Input,{placeholder:"you@gmail.com",value:e.emailAddress,onChange:s=>{e.setEmailAddress(s.target.value),s.target.value.trim()&&n("emailAddress")},"aria-invalid":!!l.emailAddress,"aria-describedby":l.emailAddress?"custom-email-address-error":void 0,className:"h-8 text-sm"}),l.emailAddress&&(0,s.jsx)("p",{id:"custom-email-address-error",className:"mt-1 text-xs text-destructive",children:l.emailAddress})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)(i.Label,{className:"text-xs",children:"Display Name"}),(0,s.jsx)(r.Input,{placeholder:"My Agent",value:e.displayName,onChange:s=>e.setDisplayName(s.target.value),className:"h-8 text-sm"})]})]}),(0,s.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(i.Label,{className:"text-xs font-medium",children:"IMAP (Receive)"}),(0,s.jsx)(r.Input,{placeholder:"imap.gmail.com",value:e.imapHost,onChange:s=>{e.setImapHost(s.target.value),s.target.value.trim()&&n("imapHost")},"aria-invalid":!!l.imapHost,"aria-describedby":l.imapHost?"custom-email-imap-host-error":void 0,className:"h-8 text-sm"}),l.imapHost&&(0,s.jsx)("p",{id:"custom-email-imap-host-error",className:"text-xs text-destructive",children:l.imapHost}),(0,s.jsx)(r.Input,{type:"number",placeholder:"993",value:e.imapPort,onChange:s=>e.setImapPort(Number(s.target.value)),className:"h-8 text-sm"}),(0,s.jsx)(r.Input,{placeholder:e.emailAddress||"Username (defaults to email)",value:e.imapUsername,onChange:s=>e.setImapUsername(s.target.value),className:"h-8 text-sm"}),(0,s.jsx)(r.Input,{type:"password",placeholder:"App Password",value:e.imapPassword,onChange:s=>{e.setImapPassword(s.target.value),s.target.value.trim()&&n("imapPassword")},"aria-invalid":!!l.imapPassword,"aria-describedby":l.imapPassword?"custom-email-imap-password-error":void 0,className:"h-8 text-sm"}),l.imapPassword&&(0,s.jsx)("p",{id:"custom-email-imap-password-error",className:"text-xs text-destructive",children:l.imapPassword})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(i.Label,{className:"text-xs font-medium",children:"SMTP (Send)"}),(0,s.jsx)(r.Input,{placeholder:"smtp.gmail.com",value:e.smtpHost,onChange:s=>{e.setSmtpHost(s.target.value),s.target.value.trim()&&n("smtpHost")},"aria-invalid":!!l.smtpHost,"aria-describedby":l.smtpHost?"custom-email-smtp-host-error":void 0,className:"h-8 text-sm"}),l.smtpHost&&(0,s.jsx)("p",{id:"custom-email-smtp-host-error",className:"text-xs text-destructive",children:l.smtpHost}),(0,s.jsx)(r.Input,{type:"number",placeholder:"587",value:e.smtpPort,onChange:s=>e.setSmtpPort(Number(s.target.value)),className:"h-8 text-sm"}),(0,s.jsx)(r.Input,{placeholder:e.emailAddress||"Username (defaults to email)",value:e.smtpUsername,onChange:s=>e.setSmtpUsername(s.target.value),className:"h-8 text-sm"}),(0,s.jsx)(r.Input,{type:"password",placeholder:"App Password",value:e.smtpPassword,onChange:s=>{e.setSmtpPassword(s.target.value),s.target.value.trim()&&n("smtpPassword")},"aria-invalid":!!l.smtpPassword,"aria-describedby":l.smtpPassword?"custom-email-smtp-password-error":void 0,className:"h-8 text-sm"}),l.smtpPassword&&(0,s.jsx)("p",{id:"custom-email-smtp-password-error",className:"text-xs text-destructive",children:l.smtpPassword})]})]})]})}e.s(["CustomEmailForm",0,function({agentId:e,workspaceId:r,onDataChange:i,getDataRef:w}){let{slug:S}=(0,j.useWorkspace)(),C=!e,[A,k]=(0,t.useState)(!1),[P,_]=(0,t.useState)([]),[H,I]=(0,t.useState)(!C),[T,E]=(0,t.useState)(!1),[z,M]=(0,t.useState)(!1),[L,D]=(0,t.useState)(!1),[F,U]=(0,t.useState)({}),{fields:R,applyPreset:O,buildData:B}=function(){let[e,s]=(0,t.useState)(""),[a,r]=(0,t.useState)(""),[i,l]=(0,t.useState)(""),[n,d]=(0,t.useState)(993),[o,c]=(0,t.useState)(""),[m,u]=(0,t.useState)(""),[x,p]=(0,t.useState)(""),[h,g]=(0,t.useState)(587),[v,f]=(0,t.useState)(""),[j,y]=(0,t.useState)(""),N=o||e,w=v||e;return{fields:{emailAddress:e,setEmailAddress:s,displayName:a,setDisplayName:r,imapHost:i,setImapHost:l,imapPort:n,setImapPort:d,imapUsername:o,setImapUsername:c,imapPassword:m,setImapPassword:u,smtpHost:x,setSmtpHost:p,smtpPort:h,setSmtpPort:g,smtpUsername:v,setSmtpUsername:f,smtpPassword:j,setSmtpPassword:y},applyPreset:function(e){let s=b[e];s&&(l(s.imapHost),d(s.imapPort),p(s.smtpHost),g(s.smtpPort))},buildData:function(){return e&&i&&N&&m&&x&&w&&j?{emailAddress:e,displayName:a,imapHost:i,imapPort:n,imapUsername:N,imapPassword:m,imapTls:!0,smtpHost:x,smtpPort:h,smtpUsername:w,smtpPassword:j,smtpTls:1,pollIntervalSeconds:60}:null}}}(),W=R.imapUsername||R.emailAddress,V=R.smtpUsername||R.emailAddress,$=(0,t.useCallback)(e=>{U(s=>({...s,[e]:void 0}))},[]);(0,t.useEffect)(()=>{w&&(w.current=B)}),(0,t.useEffect)(()=>{C&&i?.(B())},[C,B,i,R.emailAddress,R.displayName,R.imapHost,R.imapPort,R.imapUsername,R.imapPassword,R.smtpHost,R.smtpPort,R.smtpUsername,R.smtpPassword]);let K=(0,t.useCallback)(async()=>{if(!C)try{let s=await (0,o.listEmailAccounts)(e,r);_(s)}catch{}finally{I(!1)}},[e,r,C]);(0,t.useEffect)(()=>{K()},[K]);let G=P[0]??null;async function X(){let s=(0,y.validateCustomEmailFields)({emailAddress:R.emailAddress,imapHost:R.imapHost,imapUsername:W,imapPassword:R.imapPassword,smtpHost:R.smtpHost,smtpUsername:V,smtpPassword:R.smtpPassword});if(U(s),(0,y.hasCustomEmailErrors)(s))return;let t=B();if(t&&e){E(!0);try{await (0,o.createEmailAccount)(e,t,r),f.toast.success("Custom email configured"),k(!1),await K()}catch(e){f.toast.error(e instanceof Error?e.message:"Failed to save")}finally{E(!1)}}}async function q(){if(G&&e){D(!0);try{await (0,o.deleteEmailAccount)(e,G.id,r),f.toast.success("Custom email removed"),_([])}catch(e){f.toast.error(e instanceof Error?e.message:"Failed to remove")}finally{D(!1)}}}async function Y(){if(G&&e){M(!0);try{await (0,o.syncEmailAccount)(e,G.id,r),f.toast.success("Sync triggered"),setTimeout(()=>K(),2e3)}catch(e){f.toast.error(e instanceof Error?e.message:"Sync failed")}finally{M(!1)}}}let Z=C?R.emailAddress?R.emailAddress:"Connect your own mailbox via IMAP/SMTP":H?"Loading...":G?G.email_address:"Connect your own mailbox via IMAP/SMTP";return(0,s.jsxs)(l.Sheet,{open:A,onOpenChange:k,children:[(0,s.jsxs)(l.SheetTrigger,{render:(0,s.jsx)("button",{type:"button",className:"flex w-full items-center justify-between rounded-lg border border-border/50 bg-muted/30 px-4 py-3 text-left transition-colors hover:bg-muted/50"}),children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:"Custom Email"}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:Z})]}),!C&&G?(0,s.jsxs)("span",{className:(0,d.cn)("inline-flex items-center gap-1 text-[10px] px-1.5 py-0.5 rounded-full font-medium shrink-0","active"===G.status?"bg-green-500/10 text-green-600":"error"===G.status?"bg-red-500/10 text-red-600":"bg-yellow-500/10 text-yellow-600"),children:["active"===G.status?(0,s.jsx)(p.CheckCircle2,{className:"size-2.5"}):"error"===G.status?(0,s.jsx)(x.AlertCircle,{className:"size-2.5"}):null,G.status]}):(0,s.jsx)(h.ChevronRight,{className:"size-4 text-muted-foreground shrink-0"})]}),(0,s.jsxs)(l.SheetContent,{side:"right",className:"data-[side=right]:sm:inset-y-2 data-[side=right]:sm:right-2 data-[side=right]:sm:h-auto data-[side=right]:sm:rounded-xl data-[side=right]:sm:border",children:[(0,s.jsx)(l.SheetTitle,{className:"sr-only",children:"Custom Email"}),(0,s.jsx)(l.SheetBody,{className:"px-8 pt-10 pb-6",children:(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("h2",{className:"font-heading text-lg font-semibold",children:"Custom Email"}),(0,s.jsxs)(n.Tooltip,{children:[(0,s.jsx)(n.TooltipTrigger,{render:(0,s.jsx)("a",{href:`/w/${S}/help/email-setup`,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:text-foreground transition-colors"}),children:(0,s.jsx)(v,{className:"size-4"})}),(0,s.jsx)(n.TooltipContent,{children:"How to get IMAP/SMTP credentials"})]})]}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"Connect your own mailbox to send and receive email as your identity."})]}),!C&&G?(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between rounded-md border border-border/50 px-3 py-2.5",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,s.jsx)(m.Mail,{className:"size-3.5 text-muted-foreground shrink-0"}),(0,s.jsx)("span",{className:"text-sm truncate",children:G.email_address})]}),(0,s.jsxs)("div",{className:"flex items-center gap-1 shrink-0",children:[(0,s.jsxs)(n.Tooltip,{children:[(0,s.jsx)(n.TooltipTrigger,{render:(0,s.jsx)(a.Button,{variant:"ghost",size:"icon-xs",onClick:Y,disabled:z,className:"rounded-full text-muted-foreground"}),children:(0,s.jsx)(u.RefreshCw,{className:(0,d.cn)("size-3.5",z&&"animate-spin")})}),(0,s.jsx)(n.TooltipContent,{children:"Sync now"})]}),(0,s.jsxs)(n.Tooltip,{children:[(0,s.jsx)(n.TooltipTrigger,{render:(0,s.jsx)(a.Button,{variant:"ghost",size:"icon-xs",onClick:q,disabled:L,className:"rounded-full text-muted-foreground hover:bg-destructive/10 hover:text-destructive"}),children:L?(0,s.jsx)(c.Loader2,{className:"size-3.5 animate-spin"}):(0,s.jsx)(g.XIcon,{className:"size-3.5"})}),(0,s.jsx)(n.TooltipContent,{children:"Remove"})]})]})]}),G.error_message&&(0,s.jsx)("p",{className:"text-xs text-destructive",children:G.error_message}),G.last_synced_at&&(0,s.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Last synced: ",new Date(G.last_synced_at).toLocaleString()]}),(0,s.jsxs)("div",{className:"rounded-md border border-border/50 px-3 py-2 text-xs text-muted-foreground space-y-1",children:[(0,s.jsxs)("div",{className:"flex justify-between",children:[(0,s.jsx)("span",{children:"IMAP"}),(0,s.jsxs)("span",{children:[G.imap_host,":",G.imap_port]})]}),(0,s.jsxs)("div",{className:"flex justify-between",children:[(0,s.jsx)("span",{children:"SMTP"}),(0,s.jsxs)("span",{children:[G.smtp_host,":",G.smtp_port]})]}),(0,s.jsxs)("div",{className:"flex justify-between",children:[(0,s.jsx)("span",{children:"Poll interval"}),(0,s.jsxs)("span",{children:[G.poll_interval_seconds,"s"]})]})]})]}):(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsx)(N,{fields:R,applyPreset:O,errors:F,onClearError:$}),!C&&(0,s.jsxs)(a.Button,{type:"button",size:"sm",className:"w-full",onClick:X,disabled:T,children:[T&&(0,s.jsx)(c.Loader2,{className:"size-3 animate-spin mr-1"}),"Save & Connect"]}),C&&(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:"Will be connected after creating the agent."})]})]})})]})]})}],656955)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,656955,987604,e=>{"use strict";var s=e.i(368075),t=e.i(298699),a=e.i(186339),r=e.i(903477),i=e.i(473131),l=e.i(332680),n=e.i(329686),d=e.i(613349),o=e.i(222862),c=e.i(371522),m=e.i(6131),u=e.i(4581),x=e.i(108281),p=e.i(596519),h=e.i(64873),g=e.i(49695);let v=(0,e.i(406963).default)("circle-question-mark",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["CircleHelp",0,v],987604);var f=e.i(880932),j=e.i(500324),y=e.i(553617);let b={Gmail:{imapHost:"imap.gmail.com",imapPort:993,smtpHost:"smtp.gmail.com",smtpPort:587},Outlook:{imapHost:"outlook.office365.com",imapPort:993,smtpHost:"smtp.office365.com",smtpPort:587},Yahoo:{imapHost:"imap.mail.yahoo.com",imapPort:993,smtpHost:"smtp.mail.yahoo.com",smtpPort:587}};function N({fields:e,applyPreset:t,errors:l,onClearError:n}){return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:"flex gap-1.5",children:Object.keys(b).map(e=>(0,s.jsx)(a.Button,{type:"button",variant:"outline",size:"sm",className:"h-6 text-[10px] px-2",onClick:()=>t(e),children:e},e))}),(0,s.jsxs)("div",{className:"grid gap-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)(i.Label,{className:"text-xs",children:"Email Address *"}),(0,s.jsx)(r.Input,{placeholder:"you@gmail.com",value:e.emailAddress,onChange:s=>{e.setEmailAddress(s.target.value),s.target.value.trim()&&n("emailAddress")},"aria-invalid":!!l.emailAddress,"aria-describedby":l.emailAddress?"custom-email-address-error":void 0,className:"h-8 text-sm"}),l.emailAddress&&(0,s.jsx)("p",{id:"custom-email-address-error",className:"mt-1 text-xs text-destructive",children:l.emailAddress})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)(i.Label,{className:"text-xs",children:"Display Name"}),(0,s.jsx)(r.Input,{placeholder:"My Agent",value:e.displayName,onChange:s=>e.setDisplayName(s.target.value),className:"h-8 text-sm"})]})]}),(0,s.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(i.Label,{className:"text-xs font-medium",children:"IMAP (Receive)"}),(0,s.jsx)(r.Input,{placeholder:"imap.gmail.com",value:e.imapHost,onChange:s=>{e.setImapHost(s.target.value),s.target.value.trim()&&n("imapHost")},"aria-invalid":!!l.imapHost,"aria-describedby":l.imapHost?"custom-email-imap-host-error":void 0,className:"h-8 text-sm"}),l.imapHost&&(0,s.jsx)("p",{id:"custom-email-imap-host-error",className:"text-xs text-destructive",children:l.imapHost}),(0,s.jsx)(r.Input,{type:"number",placeholder:"993",value:e.imapPort,onChange:s=>e.setImapPort(Number(s.target.value)),className:"h-8 text-sm"}),(0,s.jsx)(r.Input,{placeholder:e.emailAddress||"Username (defaults to email)",value:e.imapUsername,onChange:s=>e.setImapUsername(s.target.value),className:"h-8 text-sm"}),(0,s.jsx)(r.Input,{type:"password",placeholder:"App Password",value:e.imapPassword,onChange:s=>{e.setImapPassword(s.target.value),s.target.value.trim()&&n("imapPassword")},"aria-invalid":!!l.imapPassword,"aria-describedby":l.imapPassword?"custom-email-imap-password-error":void 0,className:"h-8 text-sm"}),l.imapPassword&&(0,s.jsx)("p",{id:"custom-email-imap-password-error",className:"text-xs text-destructive",children:l.imapPassword})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(i.Label,{className:"text-xs font-medium",children:"SMTP (Send)"}),(0,s.jsx)(r.Input,{placeholder:"smtp.gmail.com",value:e.smtpHost,onChange:s=>{e.setSmtpHost(s.target.value),s.target.value.trim()&&n("smtpHost")},"aria-invalid":!!l.smtpHost,"aria-describedby":l.smtpHost?"custom-email-smtp-host-error":void 0,className:"h-8 text-sm"}),l.smtpHost&&(0,s.jsx)("p",{id:"custom-email-smtp-host-error",className:"text-xs text-destructive",children:l.smtpHost}),(0,s.jsx)(r.Input,{type:"number",placeholder:"587",value:e.smtpPort,onChange:s=>e.setSmtpPort(Number(s.target.value)),className:"h-8 text-sm"}),(0,s.jsx)(r.Input,{placeholder:e.emailAddress||"Username (defaults to email)",value:e.smtpUsername,onChange:s=>e.setSmtpUsername(s.target.value),className:"h-8 text-sm"}),(0,s.jsx)(r.Input,{type:"password",placeholder:"App Password",value:e.smtpPassword,onChange:s=>{e.setSmtpPassword(s.target.value),s.target.value.trim()&&n("smtpPassword")},"aria-invalid":!!l.smtpPassword,"aria-describedby":l.smtpPassword?"custom-email-smtp-password-error":void 0,className:"h-8 text-sm"}),l.smtpPassword&&(0,s.jsx)("p",{id:"custom-email-smtp-password-error",className:"text-xs text-destructive",children:l.smtpPassword})]})]})]})}e.s(["CustomEmailForm",0,function({agentId:e,workspaceId:r,onDataChange:i,getDataRef:w}){let{slug:S}=(0,j.useWorkspace)(),C=!e,[A,k]=(0,t.useState)(!1),[P,_]=(0,t.useState)([]),[H,I]=(0,t.useState)(!C),[T,E]=(0,t.useState)(!1),[z,M]=(0,t.useState)(!1),[L,D]=(0,t.useState)(!1),[F,U]=(0,t.useState)({}),{fields:R,applyPreset:O,buildData:B}=function(){let[e,s]=(0,t.useState)(""),[a,r]=(0,t.useState)(""),[i,l]=(0,t.useState)(""),[n,d]=(0,t.useState)(993),[o,c]=(0,t.useState)(""),[m,u]=(0,t.useState)(""),[x,p]=(0,t.useState)(""),[h,g]=(0,t.useState)(587),[v,f]=(0,t.useState)(""),[j,y]=(0,t.useState)(""),N=o||e,w=v||e;return{fields:{emailAddress:e,setEmailAddress:s,displayName:a,setDisplayName:r,imapHost:i,setImapHost:l,imapPort:n,setImapPort:d,imapUsername:o,setImapUsername:c,imapPassword:m,setImapPassword:u,smtpHost:x,setSmtpHost:p,smtpPort:h,setSmtpPort:g,smtpUsername:v,setSmtpUsername:f,smtpPassword:j,setSmtpPassword:y},applyPreset:function(e){let s=b[e];s&&(l(s.imapHost),d(s.imapPort),p(s.smtpHost),g(s.smtpPort))},buildData:function(){return e&&i&&N&&m&&x&&w&&j?{emailAddress:e,displayName:a,imapHost:i,imapPort:n,imapUsername:N,imapPassword:m,imapTls:!0,smtpHost:x,smtpPort:h,smtpUsername:w,smtpPassword:j,smtpTls:1,pollIntervalSeconds:60}:null}}}(),W=R.imapUsername||R.emailAddress,V=R.smtpUsername||R.emailAddress,$=(0,t.useCallback)(e=>{U(s=>({...s,[e]:void 0}))},[]);(0,t.useEffect)(()=>{w&&(w.current=B)}),(0,t.useEffect)(()=>{C&&i?.(B())},[C,B,i,R.emailAddress,R.displayName,R.imapHost,R.imapPort,R.imapUsername,R.imapPassword,R.smtpHost,R.smtpPort,R.smtpUsername,R.smtpPassword]);let K=(0,t.useCallback)(async()=>{if(!C)try{let s=await (0,o.listEmailAccounts)(e,r);_(s)}catch{}finally{I(!1)}},[e,r,C]);(0,t.useEffect)(()=>{K()},[K]);let G=P[0]??null;async function X(){let s=(0,y.validateCustomEmailFields)({emailAddress:R.emailAddress,imapHost:R.imapHost,imapUsername:W,imapPassword:R.imapPassword,smtpHost:R.smtpHost,smtpUsername:V,smtpPassword:R.smtpPassword});if(U(s),(0,y.hasCustomEmailErrors)(s))return;let t=B();if(t&&e){E(!0);try{await (0,o.createEmailAccount)(e,t,r),f.toast.success("Custom email configured"),k(!1),await K()}catch(e){f.toast.error(e instanceof Error?e.message:"Failed to save")}finally{E(!1)}}}async function q(){if(G&&e){D(!0);try{await (0,o.deleteEmailAccount)(e,G.id,r),f.toast.success("Custom email removed"),_([])}catch(e){f.toast.error(e instanceof Error?e.message:"Failed to remove")}finally{D(!1)}}}async function Y(){if(G&&e){M(!0);try{await (0,o.syncEmailAccount)(e,G.id,r),f.toast.success("Sync triggered"),setTimeout(()=>K(),2e3)}catch(e){f.toast.error(e instanceof Error?e.message:"Sync failed")}finally{M(!1)}}}let Z=C?R.emailAddress?R.emailAddress:"Connect your own mailbox via IMAP/SMTP":H?"Loading...":G?G.email_address:"Connect your own mailbox via IMAP/SMTP";return(0,s.jsxs)(l.Sheet,{open:A,onOpenChange:k,children:[(0,s.jsxs)(l.SheetTrigger,{render:(0,s.jsx)("button",{type:"button",className:"flex w-full items-center justify-between rounded-lg border border-border/50 bg-muted/30 px-4 py-3 text-left transition-colors hover:bg-muted/50"}),children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:"Custom Email"}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:Z})]}),!C&&G?(0,s.jsxs)("span",{className:(0,d.cn)("inline-flex items-center gap-1 text-[10px] px-1.5 py-0.5 rounded-full font-medium shrink-0","active"===G.status?"bg-green-500/10 text-green-600":"error"===G.status?"bg-red-500/10 text-red-600":"bg-yellow-500/10 text-yellow-600"),children:["active"===G.status?(0,s.jsx)(p.CheckCircle2,{className:"size-2.5"}):"error"===G.status?(0,s.jsx)(x.AlertCircle,{className:"size-2.5"}):null,G.status]}):(0,s.jsx)(h.ChevronRight,{className:"size-4 text-muted-foreground shrink-0"})]}),(0,s.jsxs)(l.SheetContent,{side:"right",className:"data-[side=right]:sm:inset-y-2 data-[side=right]:sm:right-2 data-[side=right]:sm:h-auto data-[side=right]:sm:rounded-xl data-[side=right]:sm:border",children:[(0,s.jsx)(l.SheetTitle,{className:"sr-only",children:"Custom Email"}),(0,s.jsx)(l.SheetBody,{className:"px-8 pt-10 pb-6",children:(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("h2",{className:"font-heading text-lg font-semibold",children:"Custom Email"}),(0,s.jsxs)(n.Tooltip,{children:[(0,s.jsx)(n.TooltipTrigger,{render:(0,s.jsx)("a",{href:`/w/${S}/help/email-setup`,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground hover:text-foreground transition-colors"}),children:(0,s.jsx)(v,{className:"size-4"})}),(0,s.jsx)(n.TooltipContent,{children:"How to get IMAP/SMTP credentials"})]})]}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"Connect your own mailbox to send and receive email as your identity."})]}),!C&&G?(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between rounded-md border border-border/50 px-3 py-2.5",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,s.jsx)(m.Mail,{className:"size-3.5 text-muted-foreground shrink-0"}),(0,s.jsx)("span",{className:"text-sm truncate",children:G.email_address})]}),(0,s.jsxs)("div",{className:"flex items-center gap-1 shrink-0",children:[(0,s.jsxs)(n.Tooltip,{children:[(0,s.jsx)(n.TooltipTrigger,{render:(0,s.jsx)(a.Button,{variant:"ghost",size:"icon-xs",onClick:Y,disabled:z,className:"rounded-full text-muted-foreground"}),children:(0,s.jsx)(u.RefreshCw,{className:(0,d.cn)("size-3.5",z&&"animate-spin")})}),(0,s.jsx)(n.TooltipContent,{children:"Sync now"})]}),(0,s.jsxs)(n.Tooltip,{children:[(0,s.jsx)(n.TooltipTrigger,{render:(0,s.jsx)(a.Button,{variant:"ghost",size:"icon-xs",onClick:q,disabled:L,className:"rounded-full text-muted-foreground hover:bg-destructive/10 hover:text-destructive"}),children:L?(0,s.jsx)(c.Loader2,{className:"size-3.5 animate-spin"}):(0,s.jsx)(g.XIcon,{className:"size-3.5"})}),(0,s.jsx)(n.TooltipContent,{children:"Remove"})]})]})]}),G.error_message&&(0,s.jsx)("p",{className:"text-xs text-destructive",children:G.error_message}),G.last_synced_at&&(0,s.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Last synced: ",new Date(G.last_synced_at).toLocaleString()]}),(0,s.jsxs)("div",{className:"rounded-md border border-border/50 px-3 py-2 text-xs text-muted-foreground space-y-1",children:[(0,s.jsxs)("div",{className:"flex justify-between",children:[(0,s.jsx)("span",{children:"IMAP"}),(0,s.jsxs)("span",{children:[G.imap_host,":",G.imap_port]})]}),(0,s.jsxs)("div",{className:"flex justify-between",children:[(0,s.jsx)("span",{children:"SMTP"}),(0,s.jsxs)("span",{children:[G.smtp_host,":",G.smtp_port]})]}),(0,s.jsxs)("div",{className:"flex justify-between",children:[(0,s.jsx)("span",{children:"Poll interval"}),(0,s.jsxs)("span",{children:[G.poll_interval_seconds,"s"]})]})]})]}):(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsx)(N,{fields:R,applyPreset:O,errors:F,onClearError:$}),!C&&(0,s.jsxs)(a.Button,{type:"button",size:"sm",className:"w-full",onClick:X,disabled:T,children:[T&&(0,s.jsx)(c.Loader2,{className:"size-3 animate-spin mr-1"}),"Save & Connect"]}),C&&(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:"Will be connected after creating the agent."})]})]})})]})]})}],656955)},617108,611232,e=>{"use strict";var s=e.i(368075),t=e.i(298699),a=e.i(186339),r=e.i(903477),i=e.i(473131),l=e.i(89110),n=e.i(779646),d=e.i(855372);function o({value:e,onValueChange:t,runtimes:a,disabled:r,triggerProps:i}){let n=function(e){let s=new Map;for(let t of e){let e=t.daemon_id||t.id;s.has(e)||s.set(e,{label:("string"==typeof t.device_info?t.device_info:"")||e,runtimes:[]}),s.get(e).runtimes.push(t)}return s}(a),c=r||0===a.length||a.every(e=>"online"!==e.status);return(0,s.jsxs)(l.Select,{value:e,onValueChange:e=>{e&&t(e)},disabled:c,items:a.map(e=>{let s=("string"==typeof e.device_info?e.device_info:"")||"",t=s?`${e.provider} (${s})`:e.provider;return{value:e.id,label:t}}),children:[(0,s.jsx)(l.SelectTrigger,{...i,children:(0,s.jsx)(l.SelectValue,{placeholder:0===a.length?"No runtimes — start a daemon first":a.every(e=>"online"!==e.status)?"All runtimes offline":"Select a runtime"})}),(0,s.jsx)(l.SelectContent,{children:Array.from(n.entries()).map(([e,t])=>(0,s.jsxs)(l.SelectGroup,{children:[(0,s.jsx)(l.SelectLabel,{className:"truncate",children:t.label}),t.runtimes.map(e=>(0,s.jsx)(l.SelectItem,{value:e.id,disabled:"online"!==e.status,children:(0,s.jsxs)("span",{className:"flex items-center gap-2",children:[(0,s.jsx)(d.ProviderLogo,{provider:e.provider,className:"h-4 w-4"}),(0,s.jsx)("span",{children:e.provider}),(0,s.jsxs)("span",{className:"text-muted-foreground text-xs",children:["(",e.status,")"]})]})},e.id))]},e))})]})}e.s(["RuntimeSelect",0,o],611232),e.i(954194),e.i(459119).default.env.ALOOK_DOMAIN;let c=/^[a-zA-Z0-9-]{3,}$/,m=new Set(["no-reply","noreply","admin","support","help","info","postmaster","abuse","security","mailer-daemon","root","webmaster","hostmaster","system","alook"]);function u(e){return c.test(e)&&!m.has(e.toLowerCase())}var x=e.i(613349),p=e.i(406963);let h=(0,p.default)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);var g=e.i(49695);let v=(0,p.default)("dices",[["rect",{width:"12",height:"12",x:"2",y:"10",rx:"2",ry:"2",key:"6agr2n"}],["path",{d:"m17.92 14 3.5-3.5a2.24 2.24 0 0 0 0-3l-5-4.92a2.24 2.24 0 0 0-3 0L10 6",key:"1o487t"}],["path",{d:"M6 18h.01",key:"uhywen"}],["path",{d:"M10 14h.01",key:"ssrbsk"}],["path",{d:"M15 6h.01",key:"cblpky"}],["path",{d:"M18 9h.01",key:"2061c0"}]]);var f=e.i(848533),j=e.i(500324),y=e.i(222862);e.i(355578);var b=e.i(636557),N=e.i(880932),w=e.i(254618),S=e.i(520582);function C({children:e}){let[a,r]=(0,t.useState)(!1);return(0,s.jsxs)("div",{className:"pt-1",children:[(0,s.jsxs)("button",{type:"button",onClick:()=>r(!a),className:"flex items-center gap-1.5 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[(0,s.jsx)(f.ChevronDown,{className:(0,x.cn)("size-3.5 transition-transform",a&&"rotate-180")}),"Advanced"]}),a&&(0,s.jsx)("div",{className:"mt-3 space-y-4",children:e})]})}e.s(["AgentAccessTab",0,function({agentId:r,ownerId:i}){let{workspaceId:d}=(0,j.useWorkspace)(),[o,c]=(0,t.useState)("private"),[m,u]=(0,t.useState)(!1),[x,p]=(0,t.useState)([]),[h,v]=(0,t.useState)([]),[f,S]=(0,t.useState)(!0),[C,A]=(0,t.useState)(null),[k,P]=(0,t.useState)(""),[_,H]=(0,t.useState)(!1),[I,T]=(0,t.useState)(null),[E,z]=(0,t.useState)(!0);(0,t.useEffect)(()=>{let e=!1;return S(!0),Promise.all([(0,y.listAgentAccess)(d,r),(0,y.listMembers)(d)]).then(([s,t])=>{e||(p(s),v(t))}).catch(s=>{e||(s instanceof b.ApiError&&403===s.status?A(s.message):A("Failed to load access list"))}).finally(()=>{e||S(!1)}),()=>{e=!0}},[d,r]),(0,t.useEffect)(()=>{e.A(302482).then(({listAgents:e})=>{e(d).then(e=>{let s=e.find(e=>e.id===r);s&&c(s.visibility??"private")}).catch(()=>{})})},[d,r]);let M=async e=>{c(e),u(!0);try{await (0,y.updateAgent)(r,{visibility:e},d),N.toast.success("public"===e?"Agent is now public":"Agent is now private")}catch{c(o),N.toast.error("Failed to update visibility")}finally{u(!1)}},L=h.find(e=>e.user_id===i),D=new Set(x.map(e=>e.user_id)),F=h.filter(e=>!D.has(e.user_id)&&e.user_id!==i),U=async e=>{if(e&&!_){H(!0),A(null);try{await (0,y.grantAgentAccess)(d,r,e);let s=h.find(s=>s.user_id===e);s&&p(t=>[...t,{id:e,user_id:s.user_id,name:s.name,email:s.email,created_at:new Date().toISOString()}]),P(""),N.toast.success("Access granted")}catch(e){A(e instanceof Error?e.message:"Failed to grant access")}finally{H(!1)}}},R=async()=>{if(I){p(e=>e.filter(e=>e.user_id!==I.user_id)),T(null),A(null);try{await (0,y.revokeAgentAccess)(d,r,I.user_id,E),N.toast.success(E?"Access revoked and removed from whitelist":"Access revoked")}catch{p(x),A("Failed to revoke access")}}};return(0,s.jsxs)("div",{className:"mx-auto max-w-md space-y-6",children:[(0,s.jsx)("div",{className:"space-y-4 rounded-lg border border-border/50 p-4",children:(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-medium",children:"Visibility"}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5",children:"public"===o?"All workspace members can use this agent":"Only authorized members can use this agent"})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:m?"Saving…":"public"===o?"Public":"Private"}),(0,s.jsx)(w.Switch,{checked:"public"===o,onCheckedChange:e=>M(e?"public":"private"),disabled:m})]})]})}),"private"===o&&(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsx)("h3",{className:"text-sm font-medium",children:"Authorized Members"}),C&&(0,s.jsx)("p",{className:"text-xs text-destructive",children:C}),f?(0,s.jsx)("div",{className:"space-y-2",children:[1,2].map(e=>(0,s.jsx)("span",{className:"block h-10 animate-pulse rounded-md bg-muted"},e))}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"space-y-1.5",children:[L&&(0,s.jsxs)("div",{className:"flex items-center justify-between rounded-md border border-border/50 px-3 py-2",children:[(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsx)("p",{className:"text-xs font-medium truncate",children:L.name||L.email}),L.name&&(0,s.jsx)("p",{className:"text-xs text-muted-foreground truncate",children:L.email})]}),(0,s.jsx)("span",{className:"ml-2 shrink-0 text-xs text-muted-foreground",children:"Owner"})]}),x.map(e=>(0,s.jsxs)("div",{className:"flex items-center justify-between rounded-md border border-border/50 px-3 py-2",children:[(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsx)("p",{className:"text-xs font-medium truncate",children:e.name||e.email}),e.name&&(0,s.jsx)("p",{className:"text-xs text-muted-foreground truncate",children:e.email})]}),(0,s.jsx)("button",{type:"button",onClick:()=>{var s;let t;return s=e.user_id,void((t=x.find(e=>e.user_id===s))&&(T(t),z(!0)))},className:"ml-2 shrink-0 rounded-full p-1 text-muted-foreground hover:bg-destructive/10 hover:text-destructive transition-colors",children:(0,s.jsx)(g.XIcon,{className:"size-3.5"})})]},e.user_id))]}),F.length>0?(0,s.jsx)("div",{className:"flex items-center gap-2",children:(0,s.jsxs)(l.Select,{value:k,onValueChange:e=>{e&&(P(e),U(e))},children:[(0,s.jsx)(l.SelectTrigger,{className:"flex-1 text-xs",children:(0,s.jsx)(l.SelectValue,{placeholder:"Add a member..."})}),(0,s.jsx)(l.SelectContent,{children:F.map(e=>(0,s.jsx)(l.SelectItem,{value:e.user_id,children:e.name||e.email},e.user_id))})]})}):(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:"All workspace members have been added. Invite new members from workspace settings."})]})]}),(0,s.jsx)(n.Dialog,{open:!!I,onOpenChange:e=>{e||T(null)},children:(0,s.jsxs)(n.DialogContent,{children:[(0,s.jsxs)(n.DialogHeader,{children:[(0,s.jsx)(n.DialogTitle,{children:"Remove Member Access"}),(0,s.jsxs)(n.DialogDescription,{children:["Remove"," ",(0,s.jsx)("span",{className:"font-medium text-foreground",children:I?.name||I?.email})," ","from this agent?"]})]}),(0,s.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer px-1",children:[(0,s.jsx)("input",{type:"checkbox",checked:E,onChange:e=>z(e.target.checked),className:"size-4 rounded border-border accent-primary"}),(0,s.jsx)("span",{className:"text-sm",children:"Also remove from email whitelist"})]}),(0,s.jsxs)(n.DialogFooter,{children:[(0,s.jsx)(n.DialogClose,{render:(0,s.jsx)(a.Button,{variant:"outline",size:"sm"}),children:"Cancel"}),(0,s.jsx)(a.Button,{size:"sm",variant:"destructive",onClick:R,children:"Remove"})]})]})})]})},"AllowedSendersTab",0,function({agentId:e}){let{workspaceId:i}=(0,j.useWorkspace)(),[l,n]=(0,t.useState)([]),[d,o]=(0,t.useState)(""),[c,m]=(0,t.useState)(!0),[u,x]=(0,t.useState)(!1),[p,v]=(0,t.useState)(null),[f,b]=(0,t.useState)(!1);(0,t.useEffect)(()=>{let s=!1;return m(!0),(0,y.listWhitelist)(e,i).then(e=>{s||n(e)}).catch(()=>{s||v("Failed to load whitelist")}).finally(()=>{s||m(!1)}),()=>{s=!0}},[e,i]),(0,t.useEffect)(()=>{let s=!1;return(0,y.listAgents)(i).then(t=>{s||b(t.filter(s=>s.id!==e&&s.email_handle).length>0)}).catch(()=>{}),()=>{s=!0}},[e,i]);let N=d.includes("@")&&d.trim().length>0,w=async()=>{if(N&&!u){x(!0),v(null);try{let s=await (0,y.addWhitelistEmail)(e,d.toLowerCase(),i);n(e=>[...e,s]),o("")}catch(e){v(e instanceof Error?e.message:"Failed to add email")}finally{x(!1)}}},S=async s=>{n(e=>e.filter(e=>e.id!==s)),v(null);try{await (0,y.removeWhitelistEmail)(e,s,i)}catch{n(l),v("Failed to remove email")}};return(0,s.jsxs)("div",{className:"mx-auto max-w-md space-y-4",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-medium",children:"Allowed Senders"}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Only emails from these addresses will trigger this agent. Applies to all configured email addresses (alook.ai handle and custom email)."}),f&&(0,s.jsxs)("p",{className:"text-xs text-muted-foreground/70 mt-1.5 flex items-center gap-1",children:[(0,s.jsx)(h,{className:"size-3 shrink-0"}),"Agents in this workspace can already email each other — no whitelist entry needed."]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(r.Input,{value:d,onChange:e=>o(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),w())},placeholder:"user@example.com",type:"email",className:"flex-1"}),(0,s.jsx)(a.Button,{type:"button",size:"sm",variant:"secondary",disabled:!N||u,onClick:w,children:u?"Adding...":"Add"})]}),p&&(0,s.jsx)("p",{className:"text-xs text-destructive",children:p}),c?(0,s.jsx)("div",{className:"space-y-2",children:[1,2,3].map(e=>(0,s.jsx)("span",{className:"block h-8 animate-pulse rounded-md bg-muted"},e))}):0===l.length?(0,s.jsx)("p",{className:"text-sm text-muted-foreground py-4 text-center",children:"No allowed senders — all inbound emails will be rejected."}):(0,s.jsx)("div",{className:"space-y-1.5",children:l.map(e=>(0,s.jsxs)("div",{className:"flex items-center justify-between rounded-md border border-border/50 px-3 py-2",children:[(0,s.jsx)("span",{className:"text-sm",children:e.email}),(0,s.jsx)("button",{type:"button",onClick:()=>S(e.id),className:"rounded-full p-1 text-muted-foreground hover:bg-destructive/10 hover:text-destructive transition-colors",children:(0,s.jsx)(g.XIcon,{className:"size-3.5"})})]},e.id))})]})},"EmailHandleField",0,function({emailHandle:e,setEmailHandle:t,derivedHandle:a}){let r=e||a,l=r&&!u(r)?"Must be 3+ characters, letters/numbers/hyphens only":"";return(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)(i.Label,{className:"text-xs text-muted-foreground",children:"Email"}),(0,s.jsxs)("div",{className:"flex items-center",children:[(0,s.jsx)("input",{id:"agent-handle",value:e,onChange:e=>t(e.target.value.toLowerCase()),placeholder:a||"my-agent",className:"w-full border-0 bg-transparent px-0 py-0.5 text-sm text-foreground shadow-none outline-none placeholder:text-muted-foreground/40 focus-visible:ring-0"}),(0,s.jsx)("span",{className:"shrink-0 text-sm text-muted-foreground/70",children:"@alook.ai"})]}),l&&(0,s.jsx)("p",{className:"text-xs text-destructive",children:l})]})},"GeneralFields",0,function({name:e,setName:t,description:a,setDescription:r,instructions:l,setInstructions:n,model:c,setModel:m,runtimeId:u,setRuntimeId:p,runtimes:h,providerModels:g,errors:f,runtimeAsRadio:j=!1,onShuffle:y,emailHandleSlot:b,advancedSection:N}){return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)("input",{id:"agent-name",value:e,onChange:e=>t(e.target.value),placeholder:"Agent name",required:!0,autoFocus:!0,"aria-invalid":!!f?.name,"aria-describedby":f?.name?"agent-name-error":void 0,className:"w-full border-0 bg-transparent px-0 py-1 text-2xl font-medium leading-[1.2] tracking-tight shadow-none outline-none placeholder:text-muted-foreground/40 placeholder:font-normal focus-visible:ring-0"}),y&&(0,s.jsx)("button",{type:"button",onClick:y,"aria-label":"Randomize name",className:"absolute right-0 top-1/2 -translate-y-1/2 rounded p-1.5 text-muted-foreground/50 hover:text-foreground hover:bg-accent transition-colors",children:(0,s.jsx)(v,{className:"size-4"})})]}),f?.name&&(0,s.jsx)("p",{id:"agent-name-error",className:"text-xs text-destructive mt-1",children:f.name})]}),(0,s.jsx)(S.AutoResizeTextarea,{id:"agent-description",value:a,onChange:e=>r(e.target.value),placeholder:"Add a description…",rows:1,className:"w-full border-0 bg-transparent px-0 py-0.5 text-sm text-foreground shadow-none outline-none placeholder:text-muted-foreground/40 focus-visible:ring-0"}),b,(j||h.length>0)&&(0,s.jsxs)("div",{id:"agent-runtime-select",className:"space-y-1.5",children:[(0,s.jsx)(i.Label,{className:"text-xs text-muted-foreground",children:"Runtime"}),j?(0,s.jsx)("div",{className:"space-y-1.5",role:"radiogroup","aria-label":"Runtime",children:0===h.length?(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:"No runtimes — start a daemon first"}):h.map(e=>{let t="online"===e.status,a=u===e.id,r="string"==typeof e.device_info?e.device_info:"";return(0,s.jsxs)("label",{className:(0,x.cn)("flex items-center gap-2.5 rounded-lg border p-2.5 cursor-pointer transition-colors",a?"border-primary bg-primary/5":"border-border/50 hover:border-foreground/20",!t&&"opacity-40 pointer-events-none"),children:[(0,s.jsx)("input",{type:"radio",name:"runtime",value:e.id,checked:a,disabled:!t,onChange:()=>{let s=h.find(e=>e.id===u)?.provider,t=e.provider;p(e.id),s&&s!==t&&m("")},className:"accent-primary size-3.5"}),(0,s.jsx)(d.ProviderLogo,{provider:e.provider,className:"h-4 w-4 shrink-0"}),(0,s.jsx)("span",{className:"text-sm",children:e.provider}),r&&(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:r}),!t&&(0,s.jsx)("span",{className:"text-xs text-muted-foreground ml-auto",children:"offline"})]},e.id)})}):(0,s.jsx)(o,{value:u,onValueChange:e=>{let s=h.find(e=>e.id===u)?.provider,t=h.find(s=>s.id===e)?.provider;p(e),s&&s!==t&&m("")},runtimes:h,triggerProps:{"aria-invalid":!!f?.runtimeId,"aria-describedby":f?.runtimeId?"agent-runtime-error":void 0}}),f?.runtimeId&&(0,s.jsx)("p",{id:"agent-runtime-error",className:"text-xs text-destructive",children:f.runtimeId})]}),(n||N)&&(0,s.jsxs)(C,{children:[n&&(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)(i.Label,{className:"text-xs text-muted-foreground",children:"Instructions"}),(0,s.jsx)(S.AutoResizeTextarea,{id:"agent-instructions",value:l??"",onChange:e=>n(e.target.value),placeholder:"System prompt or instructions...",rows:3,className:"w-full border-0 bg-transparent px-0 py-1 text-sm text-foreground shadow-none outline-none placeholder:text-muted-foreground/40 focus-visible:ring-0"})]}),(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)(i.Label,{className:"text-xs text-muted-foreground",children:"Model"}),(0,s.jsx)("input",{id:"agent-model",value:c,onChange:e=>m(e.target.value),placeholder:"Default (runtime model)",list:"agent-model-options",className:"w-full border-0 bg-transparent px-0 py-0.5 text-sm text-foreground shadow-none outline-none placeholder:text-muted-foreground/40 focus-visible:ring-0"}),g.length>0&&(0,s.jsx)("datalist",{id:"agent-model-options",children:g.map(e=>(0,s.jsx)("option",{value:e},e))})]}),N]})]})},"getHandleError",0,function(e){return e&&!u(e)?"Must be 3+ characters, letters/numbers/hyphens only":""},"nameToHandle",0,function(e){return e.toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-{2,}/g,"-").replace(/^-|-$/g,"")}],617108)}]);
|