@alook/app 0.0.77 → 0.0.79
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 +2 -1
- package/bundled/web/.open-next/.build/durable-objects/queue.js +5 -5
- package/bundled/web/.open-next/.build/open-next.config.edge.mjs +146 -5
- package/bundled/web/.open-next/.build/open-next.config.mjs +140 -5
- package/bundled/web/.open-next/assets/BUILD_ID +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/031m-eb429hj4.js +2 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/{0d2ptea7.h139.js → 05~4tl0zgrol5.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/07-fakltbt2a2.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/07zixwn.53xcm.js +3 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/0_i1v2~_w-_jk.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/0bwptiqeu8.61.js +325 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/0e32q02m3ewux.js +3 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/0h_a9~1fp7ago.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/{00vv.te1qu_1m.js → 0ie.u1iu3pwrm.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/{0alt4g70q0kns.js → 0ivn_32mz4lhv.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0jahw0dpk9vgc.js +3 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/{0zeouhtn0hbkx.js → 0kcuw_83491vk.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0mntmjgjntb7y.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/{0t2w-7.88r2xw.js → 0oh4spqzj65-a.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/{0.ow13_gacl1n.js → 0p-5xcfjcbn~s.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0v3.4j_hftqix.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/0x8emvplqk0j_.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/0y.7dv.ck31vl.css +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/0~xam~jpkm~vn.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/106i157mnp0ro.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/11r7n17iffcwi.js +1 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/17gxqoer2p0mw.js +22 -0
- package/bundled/web/.open-next/assets/_next/static/chunks/1816-z_y9qndk.js +1 -0
- package/bundled/web/.open-next/assets/gallery/calendar.png +0 -0
- package/bundled/web/.open-next/assets/gallery/collaboration.png +0 -0
- package/bundled/web/.open-next/assets/gallery/email.png +0 -0
- package/bundled/web/.open-next/assets/gallery/issues.png +0 -0
- package/bundled/web/.open-next/assets/gallery/local-agent.png +0 -0
- package/bundled/web/.open-next/assets/gallery/org.png +0 -0
- package/bundled/web/.open-next/cache/{eq06ANXMuNGifrnr5Hg7O → 3zHg2EwefkGKUXp1h2jId}/_global-error.cache +1 -1
- package/bundled/web/.open-next/cache/{eq06ANXMuNGifrnr5Hg7O → 3zHg2EwefkGKUXp1h2jId}/_not-found.cache +1 -1
- package/bundled/web/.open-next/cache/{eq06ANXMuNGifrnr5Hg7O → 3zHg2EwefkGKUXp1h2jId}/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/dynamodb-provider/open-next.config.mjs +140 -5
- package/bundled/web/.open-next/middleware/handler.mjs +4 -4
- package/bundled/web/.open-next/middleware/open-next.config.mjs +146 -5
- 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/calendar/route.js +6 -5
- 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/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/0b5f_next_dist_esm_build_templates_app-route_08rz-qa.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[turbopack]_runtime.js +13 -11
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0266t8u._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_03t_17c._.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_09j_99x._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0drn_ol._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0exm5_w._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0h3guve._.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0w6dw.t._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_12wxdg1._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/0b-r_unique-names-generator_dist_index_m_10n7h-y.js +4 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[root-of-the-server]__03fsn3f._.js +13 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[root-of-the-server]__091lwu-._.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{[root-of-the-server]__099etsu._.js → [root-of-the-server]__0esiqa8._.js} +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{[root-of-the-server]__0r2s1aj._.js → [root-of-the-server]__0rdn-xi._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[turbopack]_runtime.js +13 -11
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{_0vv9cr4._.js → _02qoj2p._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_063q-hj._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0ilz5db._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0n4z71y._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/{_05wa4wr._.js → _0rgicks._.js} +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0tu039y._.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_11h_8jo._.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_12e18r-._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_13__3im._.js +21 -22
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/node_modules__pnpm_0ioufd8._.js +3 -0
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/node_modules__pnpm_10wwsme._.js +3 -0
- 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_app_(app)_w_[slug]_agents_[id]_email_page_tsx_09mq1-g._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_app_(app)_w_[slug]_agents_[id]_layout_tsx_0juu2um._.js +1 -1
- 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_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_lib_api_ts_0uf2r1p._.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 +83 -83
- package/bundled/web/.open-next/server-functions/default/src/web/handler.mjs.meta.json +261 -214
- package/bundled/web/.open-next/server-functions/default/src/web/index.mjs +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/open-next.config.mjs +146 -5
- package/bundled/ws-do/index.js +2 -1
- package/dist/cli/index.js +4 -1
- package/dist/cli/session-runner.js +2 -1
- package/dist/index.js +3 -2
- package/package.json +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0.vi-1cgnne0e.css +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/01je4kbh.8akj.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/05rjq4guhci-w.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0fmcohc0raah~.js +0 -326
- package/bundled/web/.open-next/assets/_next/static/chunks/0ipcqq75rslc3.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0khqgglj_9zdp.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0lf4c2v9ftogx.js +0 -3
- package/bundled/web/.open-next/assets/_next/static/chunks/0m~et1blru7_u.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0npw723ph39ai.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0pig4vcvoqn0w.js +0 -20
- package/bundled/web/.open-next/assets/_next/static/chunks/0pijx0.ayvlyr.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0sp16c8-thn5e.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0uht5kak3uat9.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0ypg5.fp9-.a2.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/0zoi2a2-ucmjh.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/112_xk40~~_sr.js +0 -3
- package/bundled/web/.open-next/assets/_next/static/chunks/173os6ji32qc1.js +0 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/182fqror32n8n.js +0 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0x7m_vj._.js +0 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[root-of-the-server]__0.a2670._.js +0 -13
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[root-of-the-server]__0nava3-._.js +0 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_091qk6t._.js +0 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0xcw94t._.js +0 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/node_modules__pnpm_0d6x0l6._.js +0 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/node_modules__pnpm_0o~nukr._.js +0 -3
- /package/bundled/web/.open-next/assets/_next/static/{eq06ANXMuNGifrnr5Hg7O → 3zHg2EwefkGKUXp1h2jId}/_buildManifest.js +0 -0
- /package/bundled/web/.open-next/assets/_next/static/{eq06ANXMuNGifrnr5Hg7O → 3zHg2EwefkGKUXp1h2jId}/_clientMiddlewareManifest.js +0 -0
- /package/bundled/web/.open-next/assets/_next/static/{eq06ANXMuNGifrnr5Hg7O → 3zHg2EwefkGKUXp1h2jId}/_ssgManifest.js +0 -0
- /package/bundled/web/.open-next/cache/{eq06ANXMuNGifrnr5Hg7O → 3zHg2EwefkGKUXp1h2jId}/robots.txt.cache +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[403988,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},685748,a=>{"use strict";var b=a.i(95133);a.s(["activeElement",0,function(a){let b=a.activeElement;for(;b?.shadowRoot?.activeElement!=null;)b=b.shadowRoot.activeElement;return b},"contains",0,function(a,c){if(!a||!c)return!1;let d=c.getRootNode?.();if(a.contains(c))return!0;if(d&&(0,b.isShadowRoot)(d)){let b=c;for(;b;){if(a===b)return!0;b=b.parentNode||b.host}}return!1},"getTarget",0,function(a){return"composedPath"in a?a.composedPath()[0]:a.target}])},28966,a=>{"use strict";var b=a.i(437199);let c=[];a.s(["useOnMount",0,function(a){b.useEffect(a,c)}])},55059,a=>{"use strict";a.s(["ownerDocument",0,function(a){return a?.ownerDocument||document}])},503684,a=>{"use strict";var b=a.i(437199);let c={...b},d=0,e=c.useId;a.s(["useId",0,function(a,c){if(void 0!==e){let b=e();return a??(c?`${c}-${b}`:b)}return function(a,c="mui"){let[e,f]=b.useState(a),g=a||e;return b.useEffect(()=>{null==e&&(d+=1,f(`${c}-${d}`))},[e,c]),g}(a,c)}],503684)},331700,874514,a=>{"use strict";var b=a.i(181749);a.s(["createChangeEventDetails",0,function(a,c,d,e){let f=!1,g=!1,h=e??b.EMPTY_OBJECT;return{reason:a,event:c??new Event("base-ui"),cancel(){f=!0},allowPropagation(){g=!0},get isCanceled(){return f},get isPropagationAllowed(){return g},trigger:d,...h}}],331700),a.s(["cancelOpen",0,"cancel-open","chipRemovePress",0,"chip-remove-press","clearPress",0,"clear-press","closePress",0,"close-press","closeWatcher",0,"close-watcher","decrementPress",0,"decrement-press","disabled",0,"disabled","drag",0,"drag","escapeKey",0,"escape-key","focusOut",0,"focus-out","imperativeAction",0,"imperative-action","incrementPress",0,"increment-press","inputBlur",0,"input-blur","inputChange",0,"input-change","inputClear",0,"input-clear","inputPaste",0,"input-paste","inputPress",0,"input-press","itemPress",0,"item-press","keyboard",0,"keyboard","linkPress",0,"link-press","listNavigation",0,"list-navigation","none",0,"none","outsidePress",0,"outside-press","pointer",0,"pointer","scrub",0,"scrub","siblingOpen",0,"sibling-open","swipe",0,"swipe","trackPress",0,"track-press","triggerFocus",0,"trigger-focus","triggerHover",0,"trigger-hover","triggerPress",0,"trigger-press","wheel",0,"wheel","windowResize",0,"window-resize"],89473);var c=a.i(89473);a.s(["REASONS",0,c],874514)},97248,a=>{"use strict";var b=a.i(980403),c=a.i(28966);let d=new class{callbacks=[];callbacksCount=0;nextId=1;startId=1;isScheduled=!1;tick=a=>{this.isScheduled=!1;let b=this.callbacks,c=this.callbacksCount;if(this.callbacks=[],this.callbacksCount=0,this.startId=this.nextId,c>0)for(let c=0;c<b.length;c+=1)b[c]?.(a)};request(a){let b=this.nextId;return this.nextId+=1,this.callbacks.push(a),this.callbacksCount+=1,this.isScheduled||(requestAnimationFrame(this.tick),this.isScheduled=!0),b}cancel(a){let b=a-this.startId;b<0||b>=this.callbacks.length||(this.callbacks[b]=null,this.callbacksCount-=1)}};class e{static create(){return new e}static request(a){return d.request(a)}static cancel(a){return d.cancel(a)}currentId=null;request(a){this.cancel(),this.currentId=d.request(()=>{this.currentId=null,a()})}cancel=()=>{null!==this.currentId&&(d.cancel(this.currentId),this.currentId=null)};disposeEffect=()=>this.cancel}a.s(["AnimationFrame",0,e,"useAnimationFrame",0,function(){let a=(0,b.useRefWithInit)(e.create).current;return(0,c.useOnMount)(a.disposeEffect),a}])},541481,a=>{"use strict";var b=a.i(437199),c=a.i(901496),d=a.i(97248);a.s(["useTransitionStatus",0,function(a,e=!1,f=!1){let[g,h]=b.useState(a&&e?"idle":void 0),[i,j]=b.useState(a);return a&&!i&&(j(!0),h("starting")),a||!i||"ending"===g||f||h("ending"),a||i||"ending"!==g||h(void 0),(0,c.useIsoLayoutEffect)(()=>{if(!a&&i&&"ending"!==g&&f){let a=d.AnimationFrame.request(()=>{h("ending")});return()=>{d.AnimationFrame.cancel(a)}}},[a,i,g,f]),(0,c.useIsoLayoutEffect)(()=>{if(!a||e)return;let b=d.AnimationFrame.request(()=>{h(void 0)});return()=>{d.AnimationFrame.cancel(b)}},[e,a]),(0,c.useIsoLayoutEffect)(()=>{if(!a||!e)return;a&&i&&"idle"!==g&&h("starting");let b=d.AnimationFrame.request(()=>{h("idle")});return()=>{d.AnimationFrame.cancel(b)}},[e,a,i,g]),{mounted:i,setMounted:j,transitionStatus:g}}])},604096,a=>{"use strict";a.s(["resolveRef",0,function(a){return null==a?a:"current"in a?a.current:a}])},254464,a=>{"use strict";var b;let c=((b={}).startingStyle="data-starting-style",b.endingStyle="data-ending-style",b),d={[c.startingStyle]:""},e={[c.endingStyle]:""};a.s(["TransitionStatusDataAttributes",0,c,"transitionStatusMapping",0,{transitionStatus:a=>"starting"===a?d:"ending"===a?e:null}])},121102,680047,a=>{"use strict";var b=a.i(437199),c=a.i(935469),d=a.i(131675),e=a.i(97248),f=a.i(604096),g=a.i(254464);function h(a,b=!1,i=!0){let j=(0,e.useAnimationFrame)();return(0,c.useStableCallback)((c,e=null)=>{j.cancel();let h=(0,f.resolveRef)(a);if(null==h)return;let k=()=>{d.flushSync(c)};if("function"!=typeof h.getAnimations||globalThis.BASE_UI_ANIMATIONS_DISABLED)return void c();function l(){Promise.all(h.getAnimations().map(a=>a.finished)).then(()=>{e?.aborted||k()}).catch(()=>{if(i){e?.aborted||k();return}let a=h.getAnimations();!e?.aborted&&a.length>0&&a.some(a=>a.pending||"finished"!==a.playState)&&l()})}if(b){let a=g.TransitionStatusDataAttributes.startingStyle;if(!h.hasAttribute(a))return void j.request(l);let b=new MutationObserver(()=>{h.hasAttribute(a)||(b.disconnect(),l())});return b.observe(h,{attributes:!0,attributeFilter:[a]}),void e?.addEventListener("abort",()=>b.disconnect(),{once:!0})}j.request(l)})}a.s(["useAnimationsFinished",0,h],680047),a.s(["useOpenChangeComplete",0,function(a){let{enabled:d=!0,open:e,ref:f,onComplete:g}=a,i=(0,c.useStableCallback)(g),j=h(f,e,!1);b.useEffect(()=>{if(!d)return;let a=new AbortController;return j(i,a.signal),()=>{a.abort()}},[d,e,i,j])}],121102)},423994,a=>{"use strict";var b=a.i(503684);a.s(["useBaseUiId",0,function(a){return(0,b.useId)(a,"base-ui")}])},622079,a=>{"use strict";var b=a.i(980403),c=a.i(28966);class d{static create(){return new d}currentId=0;start(a,b){this.clear(),this.currentId=setTimeout(()=>{this.currentId=0,b()},a)}isStarted(){return 0!==this.currentId}clear=()=>{0!==this.currentId&&(clearTimeout(this.currentId),this.currentId=0)};disposeEffect=()=>this.clear}a.s(["Timeout",0,d,"useTimeout",0,function(){let a=(0,b.useRefWithInit)(d.create).current;return(0,c.useOnMount)(a.disposeEffect),a}])},883281,a=>{"use strict";let b="u">typeof navigator,c=function(){if(!b)return{platform:"",maxTouchPoints:-1};let a=navigator.userAgentData;return a?.platform?{platform:a.platform,maxTouchPoints:navigator.maxTouchPoints}:{platform:navigator.platform??"",maxTouchPoints:navigator.maxTouchPoints??-1}}(),d=function(){if(!b)return"";let a=navigator.userAgentData;return a?.platform?a.platform:navigator.platform??""}(),e=function(){if(!b)return"";let a=navigator.userAgentData;return a&&Array.isArray(a.brands)?a.brands.map(({brand:a,version:b})=>`${a}/${b}`).join(" "):navigator.userAgent}(),f="u">typeof CSS&&!!CSS.supports&&CSS.supports("-webkit-backdrop-filter:none"),g="MacIntel"===c.platform&&c.maxTouchPoints>1||/iP(hone|ad|od)|iOS/.test(c.platform);b&&/firefox/i.test(e);let h=b&&/apple/i.test(navigator.vendor);b&&/Edg/i.test(e);let i=b&&/android/i.test(d)||/android/i.test(e),j=b&&d.toLowerCase().startsWith("mac")&&!navigator.maxTouchPoints,k=e.includes("jsdom/");a.s(["isAndroid",0,i,"isIOS",0,g,"isJSDOM",0,k,"isMac",0,j,"isSafari",0,h,"isWebKit",0,f])},643667,a=>{"use strict";var b=a.i(883281);a.s(["isClickLikeEvent",0,function(a){let b=a.type;return"click"===b||"mousedown"===b||"keydown"===b||"keyup"===b},"isMouseLikePointerType",0,function(a,b){let c=["mouse","pen"];return b||c.push("",void 0),c.includes(a)},"isReactEvent",0,function(a){return"nativeEvent"in a},"isVirtualClick",0,function(a){return""===a.pointerType&&!!a.isTrusted||(b.isAndroid&&a.pointerType?"click"===a.type&&1===a.buttons:0===a.detail&&!a.pointerType)},"isVirtualPointerEvent",0,function(a){return!b.isJSDOM&&(!b.isAndroid&&0===a.width&&0===a.height||b.isAndroid&&1===a.width&&1===a.height&&0===a.pressure&&0===a.detail&&"mouse"===a.pointerType||a.width<1&&a.height<1&&0===a.pressure&&0===a.detail&&"touch"===a.pointerType)},"stopEvent",0,function(a){a.preventDefault(),a.stopPropagation()}])},606500,a=>{"use strict";a.s(["ACTIVE_KEY",0,"active","ARROW_DOWN",0,"ArrowDown","ARROW_LEFT",0,"ArrowLeft","ARROW_RIGHT",0,"ArrowRight","ARROW_UP",0,"ArrowUp","FOCUSABLE_ATTRIBUTE",0,"data-base-ui-focusable","SELECTED_KEY",0,"selected","TYPEABLE_SELECTOR",0,"input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])"])},238399,(a,b,c)=>{"use strict";var d=a.r(437199);d.useState,d.useEffect,d.useLayoutEffect,d.useDebugValue,c.useSyncExternalStore=void 0!==d.useSyncExternalStore?d.useSyncExternalStore:function(a,b){return b()}},885597,(a,b,c)=>{"use strict";b.exports=a.r(238399)},926170,a=>{"use strict";let b=["top","right","bottom","left"],c=b.reduce((a,b)=>a.concat(b,b+"-start",b+"-end"),[]),d=Math.min,e=Math.max,f=Math.round,g=Math.floor,h={left:"right",right:"left",bottom:"top",top:"bottom"};function i(a){return a.split("-")[0]}function j(a){return a.split("-")[1]}function k(a){return"x"===a?"y":"x"}function l(a){return"y"===a?"height":"width"}function m(a){let b=a[0];return"t"===b||"b"===b?"y":"x"}function n(a){return k(m(a))}function o(a){return a.includes("start")?a.replace("start","end"):a.replace("end","start")}let p=["left","right"],q=["right","left"],r=["top","bottom"],s=["bottom","top"];function t(a){let b=i(a);return h[b]+a.slice(b.length)}a.s(["clamp",0,function(a,b,c){return e(a,d(b,c))},"createCoords",0,a=>({x:a,y:a}),"evaluate",0,function(a,b){return"function"==typeof a?a(b):a},"floor",0,g,"getAlignment",0,j,"getAlignmentAxis",0,n,"getAlignmentSides",0,function(a,b,c){void 0===c&&(c=!1);let d=j(a),e=n(a),f=l(e),g="x"===e?d===(c?"end":"start")?"right":"left":"start"===d?"bottom":"top";return b.reference[f]>b.floating[f]&&(g=t(g)),[g,t(g)]},"getAxisLength",0,l,"getExpandedPlacements",0,function(a){let b=t(a);return[o(a),b,o(b)]},"getOppositeAlignmentPlacement",0,o,"getOppositeAxis",0,k,"getOppositeAxisPlacements",0,function(a,b,c,d){let e=j(a),f=function(a,b,c){switch(a){case"top":case"bottom":if(c)return b?q:p;return b?p:q;case"left":case"right":return b?r:s;default:return[]}}(i(a),"start"===c,d);return e&&(f=f.map(a=>a+"-"+e),b&&(f=f.concat(f.map(o)))),f},"getOppositePlacement",0,t,"getPaddingObject",0,function(a){return"number"!=typeof a?{top:0,right:0,bottom:0,left:0,...a}:{top:a,right:a,bottom:a,left:a}},"getSide",0,i,"getSideAxis",0,m,"max",0,e,"min",0,d,"placements",0,c,"rectToClientRect",0,function(a){let{x:b,y:c,width:d,height:e}=a;return{width:d,height:e,top:c,left:b,right:b+d,bottom:c+e,x:b,y:c}},"round",0,f,"sides",0,b])},575012,a=>{"use strict";var b=a.i(926170),c=a.i(95133),d=a.i(643667),e=a.i(606500);function f(a,b,c){return Math.floor(a/b)!==c}function g(a,b){return b<0||b>=a.length}function h(a,{startingIndex:b=-1,decrement:c=!1,disabledIndices:d,amount:e=1}={}){let f=b;do f+=c?-e:e;while(f>=0&&f<=a.length-1&&i(a,f,d))return f}function i(a,b,c){if("function"==typeof c?c(b):c?.includes(b)??!1)return!0;let d=a[b];return!!d&&(!j(d)||!c&&(d.hasAttribute("disabled")||"true"===d.getAttribute("aria-disabled")))}function j(a,b=a?(0,c.getComputedStyle)(a):null){var d;return!!a&&!!a.isConnected&&!!b&&"hidden"!==(d=b).visibility&&"collapse"!==d.visibility&&("function"==typeof a.checkVisibility?a.checkVisibility():"none"!==b.display&&"contents"!==b.display)}a.s(["createGridCellMap",0,function(a,b,c){let d=[],e=0;return a.forEach(({width:a,height:f},g)=>{let h=!1;for(c&&(e=0);!h;){let c=[];for(let d=0;d<a;d+=1)for(let a=0;a<f;a+=1)c.push(e+d+a*b);e%b+a<=b&&c.every(a=>null==d[a])?(c.forEach(a=>{d[a]=g}),h=!0):e+=1}}),[...d]},"findNonDisabledListIndex",0,h,"getGridCellIndexOfCorner",0,function(a,b,c,d,e){if(-1===a)return -1;let f=c.indexOf(a),g=b[a];switch(e){case"tl":return f;case"tr":if(!g)return f;return f+g.width-1;case"bl":if(!g)return f;return f+(g.height-1)*d;case"br":return c.lastIndexOf(a);default:return -1}},"getGridCellIndices",0,function(a,b){return b.flatMap((b,c)=>a.includes(b)?[c]:[])},"getGridNavigatedIndex",0,function(a,{event:c,orientation:j,loopFocus:k,onLoop:l,rtl:m,cols:n,disabledIndices:o,minIndex:p,maxIndex:q,prevIndex:r,stopEvent:s=!1}){let t,u=r;if(c.key===e.ARROW_UP?t="up":c.key===e.ARROW_DOWN&&(t="down"),t){let e=[],f=[],j=!1,m=0;{let b=null,c=-1;a.forEach((a,d)=>{if(null==a)return;m+=1;let g=a.closest('[role="row"]');g&&(j=!0),(g!==b||-1===c)&&(b=g,e[c+=1]=[]),e[c].push(d),f[d]=c})}let v=!1,w=0;if(j)for(let a of e){let b=a.length;b>w&&(w=b),b!==n&&(v=!0)}let x=v&&m<a.length,y=w||n;s&&(0,d.stopEvent)(c);let z=(b=>{if(!v||-1===r)return;let d=f[r];if(null==d)return;let g=e[d].indexOf(r),h="up"===b?-1:1;for(let b=d+h,j=0;j<e.length;j+=1,b+=h){if(b<0||b>=e.length){if(!k||x)return;if(b=b<0?e.length-1:0,l){let a=Math.min(g,e[b].length-1);b=f[l(c,r,e[b][a]??e[b][0])]??b}}let d=e[b];for(let b=Math.min(g,d.length-1);b>=0;b-=1){let c=d[b];if(!i(a,c,o))return c}}})(t)??(c=>{if(!x||-1===r)return;let d=r%y,e="up"===c?-y:y,f=q-q%y,g=(0,b.floor)(q/y)+1;for(let b=r-d+e,c=0;c<g;c+=1,b+=e){if(b<0||b>q){if(!k)return;b=b<0?f:0}let c=Math.min(b+y-1,q);for(let e=Math.min(b+d,c);e>=b;e-=1)if(!i(a,e,o))return e}})(t);if(void 0!==z)u=z;else if(-1===r)u="up"===t?q:p;else if(u=h(a,{startingIndex:r,amount:y,decrement:"up"===t,disabledIndices:o}),k){if("up"===t&&(r-y<p||u<0)){let a=r%y,b=q%y,d=q-(b-a);u=b===a?q:b>a?d:d-y,l&&(u=l(c,r,u))}"down"===t&&r+y>q&&(u=h(a,{startingIndex:r%y-y,amount:y,disabledIndices:o}),l&&(u=l(c,r,u)))}g(a,u)&&(u=r)}if("both"===j){let i=(0,b.floor)(r/n);c.key===(m?e.ARROW_LEFT:e.ARROW_RIGHT)&&(s&&(0,d.stopEvent)(c),r%n!=n-1?(u=h(a,{startingIndex:r,disabledIndices:o}),k&&f(u,n,i)&&(u=h(a,{startingIndex:r-r%n-1,disabledIndices:o}),l&&(u=l(c,r,u)))):k&&(u=h(a,{startingIndex:r-r%n-1,disabledIndices:o}),l&&(u=l(c,r,u))),f(u,n,i)&&(u=r)),c.key===(m?e.ARROW_RIGHT:e.ARROW_LEFT)&&(s&&(0,d.stopEvent)(c),r%n!=0?(u=h(a,{startingIndex:r,decrement:!0,disabledIndices:o}),k&&f(u,n,i)&&(u=h(a,{startingIndex:r+(n-r%n),decrement:!0,disabledIndices:o}),l&&(u=l(c,r,u)))):k&&(u=h(a,{startingIndex:r+(n-r%n),decrement:!0,disabledIndices:o}),l&&(u=l(c,r,u))),f(u,n,i)&&(u=r));let j=(0,b.floor)(q/n)===i;g(a,u)&&(k&&j?(u=c.key===(m?e.ARROW_RIGHT:e.ARROW_LEFT)?q:h(a,{startingIndex:r-r%n-1,disabledIndices:o}),l&&(u=l(c,r,u))):u=r)}return u},"getMaxListIndex",0,function(a,b){return h(a.current,{decrement:!0,startingIndex:a.current.length,disabledIndices:b})},"getMinListIndex",0,function(a,b){return h(a.current,{disabledIndices:b})},"isElementVisible",0,j,"isIndexOutOfListBounds",0,g,"isListIndexDisabled",0,i])},763629,a=>{"use strict";var b=a.i(822750);a.s(["inertValue",0,function(a){return(0,b.isReactVersionAtLeast)(19)?a:a?"true":void 0}])},581074,a=>{"use strict";var b=a.i(437199);let c=b.createContext(void 0);a.s(["useDirection",0,function(){let a=b.useContext(c);return a?.direction??"ltr"}])},157902,a=>{"use strict";var b=a.i(926170),c=a.i(95133);a.s(["getCssDimensions",0,function(a){let d=(0,c.getComputedStyle)(a),e=parseFloat(d.width)||0,f=parseFloat(d.height)||0,g=(0,c.isHTMLElement)(a),h=g?a.offsetWidth:e,i=g?a.offsetHeight:f;return((0,b.round)(e)!==h||(0,b.round)(f)!==i)&&(e=h,f=i),{width:e,height:f}}])}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=node_modules__pnpm_10wwsme._.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
module.exports=[831893,896393,a=>{"use strict";var b=a.i(749314),c=a.i(437199),d=a.i(588339),e=a.i(752792),f=a.i(506180),g=a.i(626806);let h=["user_dm_message"],i=["user_dm_message"];function j(){return h}a.s(["INBOX_FILTER_LABELS",0,{user_dm_message:"DM",calendar_event:"Calendar",email_notification:"Email"},"INBOX_FILTER_TYPES",0,["user_dm_message","calendar_event","email_notification"],"MANDATORY_INBOX_TYPES",0,i,"getInboxFilterTypes",0,j,"setInboxFilterTypes",0,function(a){let b=[...a];for(let a of i)b.includes(a)||b.unshift(a);localStorage.setItem("inbox-filter-types",JSON.stringify(b))}],896393);let k=(0,c.createContext)(null);a.s(["InboxCountProvider",0,function({children:a}){let{workspaceId:h}=(0,f.useWorkspace)(),{subscribeWs:i,agents:l}=(0,e.useAgentContext)(),[m,n]=(0,c.useState)(0),o=(0,c.useRef)(null),p=(0,c.useRef)(null),q=(0,c.useRef)(l);(0,c.useEffect)(()=>{q.current=l});let r=(0,c.useCallback)(()=>{let a=j();(0,d.getInboxCount)(h,{types:a}).then(a=>{let b=o.current;if(o.current=a.count,n(a.count),null!==b&&a.count>b){let a=p.current?q.current.find(a=>a.id===p.current):void 0;(0,g.sendTaskNotification)("completed",a?.name)}p.current=null}).catch(()=>{})},[h]),s=(0,c.useCallback)(()=>{n(a=>{let b=Math.max(0,a-1);return o.current=b,b})},[]);return(0,c.useEffect)(()=>{r()},[r]),(0,c.useEffect)(()=>i(a=>{"task.updated"===a.type&&("completed"===a.status||"failed"===a.status)&&(p.current=a.agentId,r())}),[i,r]),(0,c.useEffect)(()=>{let a=setInterval(r,6e4);return()=>clearInterval(a)},[r]),(0,b.jsx)(k.Provider,{value:{count:m,refresh:r,decrement:s},children:a})},"useInboxCount",0,function(){let a=(0,c.useContext)(k);if(!a)throw Error("useInboxCount must be used within InboxCountProvider");return a}],831893)},70813,a=>{"use strict";var b=a.i(749314),c=a.i(437199),d=a.i(588339),e=a.i(506180);let f=(0,c.createContext)(null);a.s(["FlagCountProvider",0,function({children:a}){let{workspaceId:g}=(0,e.useWorkspace)(),[h,i]=(0,c.useState)(0),j=(0,c.useCallback)(()=>{(0,d.getFlaggedCount)(g).then(a=>i(a.count)).catch(()=>{})},[g]),k=(0,c.useCallback)(()=>{i(a=>a+1)},[]),l=(0,c.useCallback)(()=>{i(a=>Math.max(0,a-1))},[]);return(0,c.useEffect)(()=>{j()},[j]),(0,b.jsx)(f.Provider,{value:{count:h,refresh:j,increment:k,decrement:l},children:a})},"useFlagCount",0,function(){let a=(0,c.useContext)(f);if(!a)throw Error("useFlagCount must be used within FlagCountProvider");return a}])},781418,a=>{"use strict";var b=a.i(749314),c=a.i(437199),d=a.i(549931),e=a.i(584126),f=a.i(921584);a.i(735132);var g=a.i(253260),h=a.i(325848),i=a.i(191525),j=a.i(75118);a.s(["AgentPreviewCard",0,function({agent:a,isOnline:k,activeTaskCount:l,variant:m="default",isHovered:n}){let[o,p]=(0,c.useState)(!1),q=a.email_handle?`${a.email_handle}@alook.ai`:null,r=(0,c.useCallback)(async()=>{if(q)try{await navigator.clipboard.writeText(q),p(!0),f.toast.success("Email copied to clipboard"),setTimeout(()=>p(!1),2e3)}catch{f.toast.error("Failed to copy email")}},[q]);if("compact"===m){let c;return(0,b.jsxs)("div",{className:"flex items-center gap-2 p-0",children:[(c=(0,h.parseAvatarUrl)(a.avatar_url))?(0,b.jsx)(g.AnimatedAvatar,{config:c,size:32,className:"shrink-0 rounded-xl",isHovered:n??!1,isWorking:!!k&&(l??0)>0}):(0,b.jsx)("div",{className:"flex items-center justify-center size-8 rounded-xl bg-secondary text-secondary-foreground text-xs font-medium shrink-0",children:a.name.charAt(0).toUpperCase()}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("p",{className:"text-sm font-medium truncate max-w-35",children:a.name}),q&&(0,b.jsx)("span",{className:"text-xs text-muted-foreground truncate",children:q})]}),void 0!==k&&(0,b.jsx)("div",{className:"pointer-events-none mt-0.5",children:(0,b.jsx)(i.AgentStatusBadge,{isOnline:k,taskCount:l??0,agentId:a.id})})]})]})}return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5 p-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("p",{className:"text-sm font-medium truncate",children:a.name}),(0,b.jsx)("span",{className:"flex-1"}),void 0!==k&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[11px] text-muted-foreground",children:[(0,b.jsx)("span",{className:(0,j.cn)("size-1.5 rounded-full",k?"bg-status-online":"bg-status-offline")}),k?(l??0)>0?"Working":null:"Offline"]})]}),q&&(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("span",{className:"text-xs text-muted-foreground truncate",children:q}),(0,b.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),r()},className:"shrink-0 p-0.5 rounded-sm text-muted-foreground/60 hover:text-foreground transition-colors cursor-pointer",children:o?(0,b.jsx)(d.Check,{className:"size-3 text-green-500"}):(0,b.jsx)(e.Copy,{className:"size-3"})})]}),a.description&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-2",children:a.description})]})}])},127026,40924,a=>{"use strict";a.s(["AgentChatView",()=>av,"getEventIconType",()=>ap],127026);var b=a.i(749314),c=a.i(437199),d=a.i(131675),e=a.i(207058),f=a.i(506180),g=a.i(732254),h=a.i(464830),i=a.i(75118),j=a.i(549931),k=a.i(143984),l=a.i(647651);let m=(0,l.default)("brain",[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]]);var n=a.i(123047),o=a.i(723127),p=a.i(16831);a.i(343563);var q=a.i(347788);function r(a){return a.replace(/_/g," ").replace(/\b\w/g,a=>a.toUpperCase())}let s=new Set(["status","log"]);function t({item:a,isRunning:d,isLast:e}){let f=(0,c.useMemo)(()=>{if(!a.input)return null;try{return JSON.stringify(a.input,null,2)}catch{return String(a.input)}},[a.input]);return f?(0,b.jsxs)("details",{className:"group/tool",children:[(0,b.jsxs)("summary",{className:(0,i.cn)("flex items-center gap-2 py-1 px-2 -mx-2 rounded-md cursor-pointer select-none","text-sm text-muted-foreground transition-colors duration-150","hover:bg-muted/60 hover:text-foreground","[&::-webkit-details-marker]:hidden [&::marker]:hidden"),children:[(0,b.jsx)(k.ChevronRight,{className:"size-3 shrink-0 text-muted-foreground/60 transition-transform duration-150 group-open/tool:rotate-90"}),(0,b.jsx)("span",{className:"font-medium text-foreground/80",children:r(a.tool)}),d&&e&&(0,b.jsx)("span",{className:"ml-auto size-1.5 rounded-full bg-primary/60 animate-pulse"}),d&&!e&&(0,b.jsx)(j.Check,{className:"ml-auto size-3 text-emerald-500"})]}),(0,b.jsx)("div",{className:"mt-1 mb-2 ml-5",children:(0,b.jsx)("pre",{className:"task-stream-pre overflow-x-auto rounded-md bg-muted/40 p-2.5 font-mono text-xs leading-relaxed text-muted-foreground max-h-48 max-w-full min-w-0 overflow-y-auto",children:f})})]}):(0,b.jsxs)("div",{className:(0,i.cn)("flex items-center gap-2 py-1 px-2 -mx-2 rounded-md","text-sm text-muted-foreground"),children:[(0,b.jsx)("span",{className:"font-medium text-foreground/80",children:r(a.tool)}),d&&e&&(0,b.jsx)("span",{className:"ml-auto size-1.5 rounded-full bg-primary/60 animate-pulse"}),d&&!e&&(0,b.jsx)(j.Check,{className:"ml-auto size-3 text-emerald-500"})]})}function u({item:a}){return a.content?(0,b.jsxs)("details",{className:"group/think",children:[(0,b.jsxs)("summary",{className:(0,i.cn)("flex items-center gap-2 py-1 px-2 -mx-2 rounded-md cursor-pointer select-none","text-sm text-muted-foreground/60 italic transition-colors duration-150","hover:bg-muted/60 hover:text-muted-foreground","[&::-webkit-details-marker]:hidden [&::marker]:hidden"),children:[(0,b.jsx)(k.ChevronRight,{className:"size-3 shrink-0 text-muted-foreground/40 transition-transform duration-150 group-open/think:rotate-90"}),(0,b.jsx)(m,{className:"size-3 shrink-0"}),(0,b.jsx)("span",{children:"Thinking..."})]}),(0,b.jsx)("div",{className:"mt-1 mb-2 ml-5",children:(0,b.jsx)("p",{className:"text-sm italic text-muted-foreground/60 whitespace-pre-wrap",children:a.content})})]}):(0,b.jsxs)("div",{className:(0,i.cn)("flex items-center gap-2 py-1 px-2 -mx-2 rounded-md","text-sm text-muted-foreground/60 italic"),children:[(0,b.jsx)(m,{className:"size-3 shrink-0"}),(0,b.jsx)("span",{children:"Thinking..."})]})}function v({value:a}){let d=(0,c.useRef)(a),[e,f]=(0,c.useState)({current:a,previous:null}),[g,h]=(0,c.useState)("idle");return(0,c.useEffect)(()=>{if(a===d.current)return;let b=d.current;d.current=a,f({current:a,previous:b}),requestAnimationFrame(()=>{requestAnimationFrame(()=>{h("animating")})});let c=setTimeout(()=>{h("idle"),f(a=>({...a,previous:null}))},300);return()=>clearTimeout(c)},[a]),(0,b.jsxs)("span",{style:{display:"inline-block",position:"relative",overflow:"hidden",height:"1.2em",lineHeight:"1.2em",verticalAlign:"bottom"},children:[null!==e.previous&&(0,b.jsx)("span",{style:{display:"block",position:"absolute",inset:"0",transition:"animating"===g?"transform 250ms ease-out, opacity 250ms ease-out":"none",transform:"animating"===g?"translateY(-100%)":"translateY(0)",opacity:+("animating"!==g)},children:e.previous}),(0,b.jsx)("span",{style:{display:"block",transition:"animating"===g?"transform 250ms ease-out, opacity 250ms ease-out":"none",transform:null!==e.previous&&"animating"!==g?"translateY(100%)":"translateY(0)",opacity:+(null===e.previous||"animating"===g)},children:e.current})]})}function w({task:a,messages:d,connectionLost:e,onRetry:f,stepCountHint:g,onExpandSteps:j,stepsLoading:l}){let[m,r]=(0,c.useState)(!1),x=(0,c.useMemo)(()=>(function(a){let b=[],c=new Map;for(let d of a){if(s.has(d.type))continue;let a=d.id||`seq-${d.seq}`;switch(d.type){case"tool-use":{let e=d.call_id,f={kind:"tool-call",id:a,tool:d.tool,input:d.input};e&&c.set(e,f),b.push(f);break}case"tool-result":break;case"text":b.push({kind:"text",id:a,content:d.content});break;case"thinking":b.push({kind:"thinking",id:a,content:d.content});break;case"error":b.push({kind:"status",id:a,content:d.content||d.output,type:"error"})}}return b})(d),[d]),y="completed"!==a.status&&"failed"!==a.status&&"cancelled"!==a.status&&"superseded"!==a.status,z=x.filter(a=>"text"!==a.kind),A=x.filter(a=>"text"===a.kind),B=A.length>0?A[A.length-1]:null,C=(0,c.useRef)(null),D=(0,c.useRef)(null),E=(0,c.useRef)(!1);(0,c.useEffect)(()=>{y&&C.current&&(C.current.scrollTop=C.current.scrollHeight)},[z.length,y]),(0,c.useEffect)(()=>{y&&D.current&&(D.current.scrollTop=D.current.scrollHeight)},[A.length,y]);let F=y?A:A.slice(0,-1),G=!y&&null!==B,H=z.length>0?z.length:g??0,I=z.length>0||g&&g>0;return(0,b.jsxs)("div",{className:"space-y-3 min-w-0 max-w-full",children:[(0,b.jsx)("div",{className:"flex items-center gap-2",children:"running"===a.status?(0,b.jsxs)(h.Badge,{variant:"secondary",className:"gap-1.5 relative overflow-hidden",children:[(0,b.jsx)("span",{className:"size-1.5 rounded-full bg-primary animate-pulse"}),"Working",(0,b.jsx)("div",{className:"pointer-events-none absolute inset-0 -translate-x-full animate-[shimmer_2s_ease-in-out_infinite]",style:{background:"linear-gradient(90deg, transparent 0%, var(--shimmer) 40%, var(--shimmer-peak) 50%, var(--shimmer) 60%, transparent 100%)"}})]}):y?(0,b.jsxs)(h.Badge,{variant:"secondary",className:"relative overflow-hidden",children:[a.status,(0,b.jsx)("div",{className:"pointer-events-none absolute inset-0 -translate-x-full animate-[shimmer_2s_ease-in-out_infinite]",style:{background:"linear-gradient(90deg, transparent 0%, var(--shimmer) 40%, var(--shimmer-peak) 50%, var(--shimmer) 60%, transparent 100%)"}})]}):(0,b.jsx)(h.Badge,{variant:"secondary",children:a.status})}),I&&(0,b.jsxs)("details",{className:"group/stream pl-1",onToggle:a=>{a.currentTarget.open&&!E.current&&j&&(E.current=!0,j())},children:[(0,b.jsxs)("summary",{className:(0,i.cn)("flex items-center gap-1.5 py-1 cursor-pointer select-none","text-xs text-muted-foreground transition-colors duration-150","hover:text-foreground","[&::-webkit-details-marker]:hidden [&::marker]:hidden"),children:[(0,b.jsx)(k.ChevronRight,{className:(0,i.cn)("size-3 shrink-0 text-muted-foreground/60 transition-transform duration-150 group-open/stream:rotate-90",y&&"animate-pulse text-primary")}),(0,b.jsxs)("span",{children:[(0,b.jsx)(v,{value:H})," ",1===H?"step":"steps"]})]}),(0,b.jsxs)("div",{ref:C,className:"mt-1 max-h-80 overflow-y-auto overflow-x-hidden thin-scrollbar space-y-0.5 pl-1",children:[l&&0===z.length&&(0,b.jsxs)("div",{className:"flex items-center gap-2 py-2 text-xs text-muted-foreground",children:[(0,b.jsx)(p.Loader2,{className:"size-3 animate-spin"}),(0,b.jsx)("span",{children:"Loading steps..."})]}),z.map((a,c)=>{switch(a.kind){case"tool-call":return(0,b.jsx)(t,{item:a,isRunning:y,isLast:c===z.length-1},a.id);case"thinking":return(0,b.jsx)(u,{item:a},a.id);case"status":return(0,b.jsxs)("p",{className:"text-xs text-muted-foreground px-1 wrap-anywhere",children:["error"===a.type&&(0,b.jsx)(n.AlertCircle,{className:"inline size-3 mr-1 -mt-0.5 text-destructive"}),a.content]},a.id);default:return null}})]})]}),F.length>0&&(0,b.jsxs)("details",{className:"group/midtext pl-1",open:!G||void 0,children:[(0,b.jsxs)("summary",{className:(0,i.cn)("flex items-center gap-1.5 py-1 cursor-pointer select-none","text-xs text-muted-foreground transition-colors duration-150","hover:text-foreground","[&::-webkit-details-marker]:hidden [&::marker]:hidden"),children:[(0,b.jsx)(k.ChevronRight,{className:"size-3 shrink-0 text-muted-foreground/60 transition-transform duration-150 group-open/midtext:rotate-90"}),(0,b.jsxs)("span",{children:[(0,b.jsx)(v,{value:F.length})," thinking"]})]}),(0,b.jsx)("div",{ref:D,className:"mt-1 space-y-2 pl-1",children:F.map(a=>(0,b.jsx)("div",{className:"markdown max-w-full min-w-0 px-1 py-0.5 text-sm text-muted-foreground",children:(0,b.jsx)(q.Streamdown,{controls:{code:{copy:!0,download:!1},table:{copy:!0,download:!1,fullscreen:!0}},linkSafety:{enabled:!1},children:a.content})},a.id))})]}),G&&!j&&(0,b.jsx)("div",{className:"markdown max-w-full min-w-0 px-1 py-1 text-base text-foreground",children:(0,b.jsx)(q.Streamdown,{controls:{code:{copy:!0,download:!1},table:{copy:!0,download:!1,fullscreen:!0}},linkSafety:{enabled:!1},children:B.content})}),"failed"===a.status&&a.error&&(0,b.jsxs)("div",{className:"flex items-start gap-2 mt-2 max-w-full overflow-hidden",children:[(0,b.jsxs)("p",{className:"text-sm text-destructive flex items-start gap-1.5 min-w-0",children:[(0,b.jsx)(n.AlertCircle,{className:"size-3.5 shrink-0 mt-0.5"}),(0,b.jsx)("span",{className:"wrap-anywhere",children:a.error})]}),f&&(0,b.jsxs)("button",{type:"button",onClick:async()=>{r(!0);try{await f()}finally{r(!1)}},disabled:m,className:"shrink-0 text-xs text-muted-foreground hover:text-foreground transition-colors cursor-pointer disabled:opacity-50 flex items-center gap-1",children:[m?(0,b.jsx)(p.Loader2,{className:"size-3 animate-spin"}):(0,b.jsx)(o.RotateCw,{className:"size-3"}),"Retry"]})]}),e&&(0,b.jsx)("p",{className:"text-sm text-muted-foreground animate-pulse mt-1",children:"Connection lost — retrying..."})]})}var x=a.i(588339),y=a.i(562706),z=a.i(752792),A=a.i(831893),B=a.i(70813),C=a.i(452906),D=a.i(921584),E=a.i(25668),F=a.i(525132),G=a.i(540858);let H=(0,l.default)("bed-double",[["path",{d:"M2 20v-8a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v8",key:"1k78r4"}],["path",{d:"M4 10V6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v4",key:"fb3tl2"}],["path",{d:"M12 4v6",key:"1dcgq2"}],["path",{d:"M2 18h20",key:"ajqnye"}]]),I=(0,l.default)("box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);var J=a.i(510698),K=a.i(606896);let L=(0,l.default)("message-square-quote",[["path",{d:"M14 14a2 2 0 0 0 2-2V8h-2",key:"1r06pg"}],["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}],["path",{d:"M8 14a2 2 0 0 0 2-2V8H8",key:"1jzu5j"}]]),M=(0,l.default)("mic",[["path",{d:"M12 19v3",key:"npa21l"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2",key:"1vc78b"}],["rect",{x:"9",y:"2",width:"6",height:"13",rx:"3",key:"s6n7sd"}]]);var N=a.i(546257),O=a.i(484573),P=a.i(518828);function Q({agent:a,isSelected:c,onSelect:d}){return(0,b.jsxs)("button",{type:"button","data-mention-item":!0,className:(0,i.cn)("flex w-full items-center gap-2 px-3 py-1.5 text-left text-sm transition-colors",c?"bg-accent text-accent-foreground":"hover:bg-accent/50"),onMouseDown:b=>{b.preventDefault(),d(a)},children:[(0,b.jsx)("span",{className:"truncate font-medium",children:a.name}),a.email_handle&&(0,b.jsxs)("span",{className:"truncate text-xs text-muted-foreground",children:[a.email_handle,"@alook.ai"]})]})}function R({isOpen:a,relatedAgents:d,otherAgents:e,selectedIndex:f,onSelect:g,anchorPos:h}){let i=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(!i.current)return;let a=i.current.querySelectorAll("[data-mention-item]")[f];a?.scrollIntoView({block:"nearest"})},[f]);let j=d.length+e.length;if(!a||0===j)return null;let k=d.length>0&&e.length>0;return(0,b.jsx)("div",{className:"absolute z-50 w-64 rounded-lg border border-border bg-popover text-popover-foreground shadow-md transition-opacity duration-150",style:{top:h.top-4,left:h.left,transform:"translateY(-100%)"},children:(0,b.jsxs)("div",{ref:i,className:"max-h-50 overflow-y-auto py-1 thin-scrollbar",children:[d.map((a,c)=>(0,b.jsx)(Q,{agent:a,isSelected:c===f,onSelect:g},a.id)),k&&(0,b.jsx)("div",{className:"mx-3 my-1 border-t border-border"}),e.map((a,c)=>(0,b.jsx)(Q,{agent:a,isSelected:d.length+c===f,onSelect:g},a.id))]})})}function S(a,b){if(b>=a.length)return!0;let c=a.charCodeAt(b);return(!(c>=48)||!(c<=57))&&(!(c>=65)||!(c<=90))&&(!(c>=97)||!(c<=122))&&95!==c}function T(a,b){if(!a||0===b.length||!a.includes("@"))return a;let c=b.slice().sort((a,b)=>b.name.length-a.name.length),d=[];for(let b=0;b<a.length;b++){if("@"!==a[b]||!function(a,b){if(0===b)return!0;let c=a.charCodeAt(b-1);return(!(c>=48)||!(c<=57))&&(!(c>=65)||!(c<=90))&&(!(c>=97)||!(c<=122))&&95!==c}(a,b))continue;let e=b+1;for(let f of c){let c=e+f.name.length;if(c>a.length||a.slice(e,c).toLowerCase()!==f.name.toLowerCase())continue;let g=c,h=a.slice(c).match(/^ \([a-zA-Z0-9-]+@alook\.ai\)/);if(h&&(g=c+h[0].length),(h||S(a,c))&&(!h||S(a,g))){if(d.some(a=>b>=a.start&&b<a.end))break;d.push({start:b,end:c,name:f.name,agentId:f.id});break}}}let e=a;for(let a=d.length-1;a>=0;a--){let b=d[a],c=e.slice(b.start,b.end);e=e.slice(0,b.start)+`<mention data-agent-id="${b.agentId}">${c}</mention>`+e.slice(b.end)}return e}var U=a.i(207461),V=a.i(7455),W=a.i(135510);function X({open:a,onOpenChange:d,emailId:e,workspaceId:f}){let[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(null),[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(500),q=(0,c.useRef)(!1),r=(0,c.useRef)(d);(0,c.useEffect)(()=>{r.current=d}),(0,c.useEffect)(()=>{a&&e&&(m(!0),i(null),k(null),Promise.all([(0,x.getEmail)(e,f),(0,x.getEmailBody)(e,f)]).then(([a,b])=>{i(a),k(b)}).catch(()=>{D.toast.error("Email not found"),r.current(!1)}).finally(()=>m(!1)))},[a,e,f]);let s=a=>{d(a),a||setTimeout(()=>{i(null),k(null)},300)},t=(0,c.useCallback)(a=>{a.preventDefault(),q.current=!0,a.target.setPointerCapture(a.pointerId)},[]),u=(0,c.useCallback)(a=>{q.current&&o(Math.min(.8*window.innerWidth,Math.max(320,window.innerWidth-a.clientX)))},[]),v=(0,c.useCallback)(()=>{q.current=!1},[]);return(0,b.jsx)(V.Sheet,{open:a,onOpenChange:s,children:(0,b.jsxs)(V.SheetContent,{side:"right",showCloseButton:!1,style:{width:`min(${n}px, 100vw)`,maxWidth:"none"},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,b.jsx)("div",{onPointerDown:t,onPointerMove:u,onPointerUp:v,className:"hidden sm:block absolute left-0 top-0 bottom-0 w-1.5 cursor-col-resize z-10 hover:bg-primary/20 active:bg-primary/30 transition-colors rounded-l-xl"}),(0,b.jsx)(V.SheetHeader,{children:(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(K.Mail,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),(0,b.jsx)(V.SheetTitle,{className:"truncate flex-1",children:l?"Loading...":h?.subject||"Email"}),(0,b.jsx)(g.Button,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>s(!1),children:(0,b.jsx)(P.X,{className:"h-4 w-4"})})]})}),(0,b.jsx)(V.SheetBody,{className:"flex-1 overflow-y-auto thin-scrollbar",children:l?(0,b.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,b.jsx)(p.Loader2,{className:"h-6 w-6 animate-spin text-muted-foreground"})}):h?(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"text-sm space-y-1 border-b pb-3",children:[(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)("span",{className:"text-muted-foreground shrink-0",children:"From:"}),(0,b.jsx)("span",{className:"truncate",children:h.from_email})]}),(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)("span",{className:"text-muted-foreground shrink-0",children:"To:"}),(0,b.jsx)("span",{className:"truncate",children:h.to_email})]}),(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)("span",{className:"text-muted-foreground shrink-0",children:"Date:"}),(0,b.jsx)("span",{children:new Date(h.created_at).toLocaleString()})]})]}),j?.isHtml?(0,b.jsx)(W.EmailBodyFrame,{html:j.content,className:"max-w-full"}):(0,b.jsx)("pre",{className:"whitespace-pre-wrap text-sm font-mono",children:j?.content}),h.attachments&&h.attachments.length>0&&(0,b.jsxs)("div",{className:"border-t pt-3",children:[(0,b.jsxs)("p",{className:"text-xs text-muted-foreground mb-2",children:[h.attachments.length," attachment",h.attachments.length>1?"s":""]}),(0,b.jsx)("div",{className:"flex flex-wrap gap-2",children:h.attachments.map(a=>(0,b.jsx)("span",{className:"inline-flex items-center gap-1 text-xs bg-muted rounded px-2 py-1",children:a.filename},a.key))})]})]}):null})]})})}var Y=a.i(963744),Z=a.i(698824);function $({bufferedMessages:a,onDelete:d}){let[e,f]=(0,c.useState)(!1),g=a.length;if(0===g)return null;let h=Math.min(g,3);return(0,b.jsx)("div",{className:"relative px-5 pb-1",children:(0,b.jsx)("div",{className:"mx-auto max-w-2xl flex justify-center",children:(0,b.jsxs)("div",{className:"relative w-full max-w-lg transition-[height] duration-200 ease-out",style:{height:e?32*g+(g-1)*4:32+(h-1)*6},onMouseEnter:()=>f(!0),onMouseLeave:()=>f(!1),children:[a.map((a,c)=>{var f;let j=g-1-c,k=c>=g-h;return(0,b.jsx)("div",{className:"absolute right-0 left-0 transition-all duration-200 ease-out",style:{height:32,zIndex:c+1,bottom:e?36*j:k?6*j:0,transform:e?"scale(1)":`scale(${k?1-.03*j:.91})`,opacity:e?1:k?1-.2*j:0,pointerEvents:e||k?"auto":"none"},children:(0,b.jsxs)("div",{className:"h-full rounded-lg border bg-background/95 backdrop-blur-sm shadow-sm flex items-center gap-2 px-3",children:[(0,b.jsx)("span",{className:"shrink-0 text-[11px] text-primary/60 tabular-nums w-4 text-center",children:c+1}),(0,b.jsxs)("div",{className:"min-w-0 flex-1 flex items-center gap-1.5",children:[(0,b.jsx)("p",{className:"text-[13px] text-muted-foreground leading-snug truncate",children:(f=a.content).length<=80?f:f.slice(0,80).trimEnd()+"…"}),a.attachment_ids&&a.attachment_ids.length>0&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-0.5 shrink-0 text-[11px] text-muted-foreground/50",children:[(0,b.jsx)(N.Paperclip,{className:"size-2.5"}),a.attachment_ids.length]})]}),(0,b.jsx)("button",{type:"button",onClick:b=>{b.stopPropagation(),d(a.id)},className:(0,i.cn)("shrink-0 rounded-sm p-0.5 transition-all duration-150","text-muted-foreground/30 hover:text-foreground hover:bg-muted",e?"opacity-100":"opacity-0"),tabIndex:e?0:-1,children:(0,b.jsx)(P.X,{className:"size-3"})})]})},a.id)}),!e&&g>h&&(0,b.jsxs)("span",{className:"absolute -top-4 right-1 text-[10px] text-muted-foreground/40 tabular-nums",children:["+",g-h," more"]})]})})})}var _=a.i(389660);let aa={id:"",agent_id:"",runtime_id:"",conversation_id:"",workspace_id:"",prompt:"",status:"completed",priority:0,dispatched_at:null,started_at:null,completed_at:null,result:null,error:null,created_at:"",type:""};function ab({taskId:a,stepCount:d,workspaceId:e}){let[f,g]=(0,c.useState)([]),[h,i]=(0,c.useState)(!1),[j,k]=(0,c.useState)(!1),l=(0,c.useCallback)(async()=>{if(!j&&!h){i(!0);try{let b=await (0,x.getTaskMessages)(a,e);g(b)}catch{g([])}finally{i(!1),k(!0)}}},[j,h,a,e]);return(0,b.jsx)(w,{task:aa,messages:f,stepCountHint:d,onExpandSteps:l,stepsLoading:h})}let ac=(0,l.default)("calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);var ad=a.i(307992);let ae=(0,l.default)("flag",[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]]);a.s(["Flag",0,ae],40924);var af=a.i(584126);let ag={mention:["data-agent-id"]},ah=["mention"];function ai({content:a,conversationType:c}){let d=ap(a,c),e="h-4 w-4 mt-0.5 shrink-0";return"issue"===d?(0,b.jsx)(ad.CircleDot,{className:e}):"email"===d?(0,b.jsx)(K.Mail,{className:e}):(0,b.jsx)(ac,{className:e})}function aj({attachmentIds:a,artifacts:c,onArtifactClick:d}){let e=a.map(a=>c.find(b=>b.id===a)).filter(a=>!!a);return 0===e.length?null:(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5 mt-1.5",children:e.map(a=>(0,b.jsxs)("button",{type:"button",onClick:b=>{b.stopPropagation(),d(a)},className:"inline-flex items-center gap-1 rounded-md bg-primary-foreground/10 border border-primary-foreground/20 px-2 py-0.5 text-xs text-primary-foreground/80 hover:bg-primary-foreground/20 transition-colors cursor-pointer",children:[(0,b.jsx)(J.FileText,{className:"size-3 shrink-0"}),(0,b.jsx)("span",{className:"truncate max-w-37.5",children:a.filename})]},a.id))})}function ak({pendingFiles:a,messageId:c}){let d=a.get(c);return d&&0!==d.length?(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5 mt-1.5",children:d.map((a,c)=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-md bg-primary-foreground/10 border border-primary-foreground/20 px-2 py-0.5 text-xs text-primary-foreground/80",children:[(0,b.jsx)(J.FileText,{className:"size-3 shrink-0"}),(0,b.jsx)("span",{className:"truncate max-w-37.5",children:a.name})]},c))}):null}let al=(0,c.memo)(function({msg:a,agents:d,artifacts:e,activeTask:f,taskMessages:h,connectionLost:k,isLastMessage:l,stepCount:m,targetConvId:n,workspaceId:o,conversationType:p,pendingFilesByMessage:r,onArtifactClick:s,onEmailClick:t,onIssueClick:u,onRetry:v,mentionComponents:x,isFlagged:y,onToggleFlag:z}){let A,B,C,[E,G]=(0,c.useState)(!1),H=f&&"assistant"===a.role&&a.task_id===f.id&&a.conversation_id===f.conversation_id&&h.length>0,I=!H&&n&&"assistant"===a.role&&a.task_id&&m>0?m:0,J=H&&f&&["completed","failed","cancelled","superseded"].includes(f.status),K="assistant"===a.role?(0,b.jsxs)("div",{className:"flex flex-row items-center gap-1",children:[(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-xs","aria-label":E?"Copied":"Copy message",onClick:async b=>{b.stopPropagation();try{await navigator.clipboard.writeText(a.content),G(!0),D.toast.success("Copied to clipboard"),setTimeout(()=>G(!1),2e3)}catch{D.toast.error("Failed to copy")}},className:(0,i.cn)("self-start mb-1",E?"text-green-500 opacity-100":"text-muted-foreground opacity-0 group-hover/msg:opacity-100")}),children:E?(0,b.jsx)(j.Check,{className:"size-3.5"}):(0,b.jsx)(af.Copy,{className:"size-3.5"})}),(0,b.jsx)(F.TooltipContent,{children:E?"Copied":"Copy"})]}),z&&(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-xs",onClick:()=>z(a.id),className:(0,i.cn)("self-start mb-1",y?"text-primary opacity-100":"text-muted-foreground opacity-0 group-hover/msg:opacity-100")}),children:(0,b.jsx)(ae,{className:(0,i.cn)("size-3.5",y&&"fill-current")})}),(0,b.jsx)(F.TooltipContent,{children:y?"Unflag":"Flag"})]})]}):null;return(0,b.jsxs)(c.default.Fragment,{children:[H&&(0,b.jsxs)("div",{className:(0,i.cn)("group/msg",y&&"bg-muted/30 rounded-lg px-2 -mx-2"),children:[(0,b.jsx)(w,{task:f,messages:h,connectionLost:k,onRetry:v}),J&&K]}),I>0&&a.task_id&&(0,b.jsx)(ab,{taskId:a.task_id,stepCount:I,workspaceId:o}),"user"===a.role?(A=l&&!!f&&"running"!==f.status&&!["completed","failed","cancelled","superseded"].includes(f.status),(0,b.jsx)("div",{className:"flex justify-end","data-message-id":a.id,...a.task_id?{"data-task-id":a.task_id}:{},children:(0,b.jsxs)("div",{className:(0,i.cn)("max-w-[80%] rounded-lg px-4 py-2 bg-primary text-primary-foreground text-base relative"),children:[A&&(0,b.jsx)("div",{className:"absolute inset-0 rounded-lg animate-pulse pointer-events-none",style:{boxShadow:"0 0 0 2px var(--bubble-glow)"}}),(0,b.jsx)("div",{className:"markdown markdown-user",children:(0,b.jsx)(q.Streamdown,{controls:{code:{copy:!0,download:!1},table:{copy:!1,download:!1,fullscreen:!1}},linkSafety:{enabled:!1},allowedTags:ag,literalTagContent:ah,components:x,children:T(a.content,d)})}),a.attachment_ids&&a.attachment_ids.length>0&&(0,b.jsx)(aj,{attachmentIds:a.attachment_ids,artifacts:e,onArtifactClick:s}),!a.attachment_ids&&(0,b.jsx)(ak,{pendingFiles:r,messageId:a.id})]})})):"event"===a.role?(B=a.metadata?.emailId,C=a.metadata?.issueId,(0,b.jsx)("div",{className:"flex justify-start","data-message-id":a.id,...a.task_id?{"data-task-id":a.task_id}:{},children:(0,b.jsxs)("div",{className:(0,i.cn)("w-full rounded-md border bg-muted/50 text-muted-foreground text-sm px-3 py-2 flex items-start gap-2",(!!B||!!C)&&"cursor-pointer hover:bg-muted transition-colors"),onClick:B?()=>t(B):C?()=>u(C):void 0,children:[(0,b.jsx)(ai,{content:a.content,conversationType:p}),(0,b.jsx)("span",{className:"min-w-0 wrap-anywhere",children:a.content})]})})):H?null:(0,b.jsxs)("div",{className:(0,i.cn)("group/msg flex flex-col justify-start min-w-0 overflow-hidden",y&&"bg-muted/30 rounded-lg px-2 -mx-2"),"data-message-id":a.id,"data-quote-source":!0,...a.task_id?{"data-task-id":a.task_id}:{},children:[(0,b.jsx)("div",{className:"markdown max-w-full min-w-0 px-1 py-1 text-base text-foreground",children:(0,b.jsx)(q.Streamdown,{controls:{code:{copy:!0,download:!1},table:{copy:!0,download:!1,fullscreen:!0}},linkSafety:{enabled:!1},allowedTags:ag,literalTagContent:ah,components:x,children:T(a.content,d)})}),K]})]})});var am=a.i(781418),an=a.i(722393);let ao={mention:function(a){let{children:c,...d}=a,{agents:e}=(0,z.useAgentContext)(),f=d["data-agent-id"]??d.dataAgentId,g=f?e.find(a=>a.id===f):void 0;if(!g&&"string"==typeof c){let a=c.startsWith("@")?c.slice(1):c;g=e.find(b=>b.name.toLowerCase()===a.toLowerCase())}return g?(0,b.jsxs)(an.Popover,{children:[(0,b.jsx)(an.PopoverTrigger,{openOnHover:!0,delay:300,nativeButton:!1,render:(0,b.jsx)("span",{className:"mention-highlight cursor-pointer"}),children:c}),(0,b.jsx)(an.PopoverContent,{side:"top",className:"w-fit max-w-80",children:(0,b.jsx)(am.AgentPreviewCard,{agent:g})})]}):(0,b.jsx)("span",{className:"mention-highlight",children:c})},p:({children:a,node:c,...d})=>(0,b.jsx)("div",{"data-md-p":"",...d,children:a})};function ap(a,b){if("issue_event"===b)return"issue";if("email_notification"===b)return"email";if("calendar_event"===b)return"calendar";let c=a.toLowerCase();return c.startsWith("issue ")||c.startsWith("issue:")?"issue":c.includes("email")?"email":"calendar"}function aq(a,b){let c=new Map;for(let b of a)c.set(b.id,b);for(let a of b)c.set(a.id,a);return[...c.values()].slice().sort((a,b)=>{let c=a.created_at.localeCompare(b.created_at);return 0!==c?c:a.id.localeCompare(b.id)})}function ar(a){let b=[],c=[],d=!1;for(let e of a)"message"===e.kind&&"user"===e.data.role?(d=!0,b.push(e)):"message"===e.kind&&"assistant"===e.data.role?(b.push(e),b.push(...c),c=[],d=!1):d&&"artifact"===e.kind?c.push(e):b.push(e);return b.push(...c),b}function as(a){let b=(0,c.useRef)(a);return(0,c.useEffect)(()=>{b.current=a},[a]),b}function at({agentName:a}){return(0,b.jsxs)("div",{className:"flex items-center gap-3 py-4 select-none","aria-hidden":!0,children:[(0,b.jsx)("div",{className:"flex-1 border-t border-border/40"}),(0,b.jsxs)("span",{className:"text-xs text-muted-foreground/60 whitespace-nowrap",children:[a," took a nap 💤"]}),(0,b.jsx)("div",{className:"flex-1 border-t border-border/40"})]})}function au({artifact:a,version:c,hasDuplicates:d,onClick:e}){return(0,b.jsxs)("button",{onClick:()=>e(a),className:(0,i.cn)("flex items-center gap-3 w-full max-w-sm rounded-lg border border-border/60 bg-muted/30","px-3.5 py-2.5 text-left transition-colors duration-150","hover:bg-muted/60 hover:border-border"),children:[(0,b.jsx)(J.FileText,{className:"size-4 shrink-0 text-muted-foreground"}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("p",{className:"text-sm font-medium truncate",children:[a.filename,d&&(0,b.jsxs)("span",{className:"ml-1.5 text-xs text-muted-foreground bg-muted rounded-full px-1.5 py-0.5 font-normal",children:["v",c]})]}),(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:(0,U.formatSize)(a.size)})]})]})}function av({agentId:a,targetConvId:h,scrollToTaskId:j,scrollToMessageId:k}){let l,m,n,o=(0,e.useParams)(),q=(0,e.useSearchParams)(),{workspaceId:r,slug:s}=(0,f.useWorkspace)(),{agents:t,agentLinks:u,activeTaskCounts:v,subscribeWs:Q}=(0,z.useAgentContext)(),{refresh:S}=(0,A.useInboxCount)(),{activeChannel:V,loading:W,setAgentId:aa}=(0,C.useChannel)(),ab=a??o.id,ac=void 0!==j?j:q.get("task"),ad=void 0!==k?k:q.get("msg"),ae=void 0!==h?h:q.get("conv"),[af,ag]=(0,c.useState)(null),[ah,ai]=(0,c.useState)([]),[aj,ak]=(0,c.useState)(()=>""),[am,an]=(0,c.useState)(!1),[ap,aw]=(0,c.useState)(!1),[ax,ay]=(0,c.useState)(null),[az,aA]=(0,c.useState)([]),[aB,aC]=(0,c.useState)(!0),[aD,aE]=(0,c.useState)(!1),[aF,aG]=(0,c.useState)(!1),[aH,aI]=(0,c.useState)(!1),[aJ,aK]=(0,c.useState)([]),[aL,aM]=(0,c.useState)(!1),[aN,aO]=(0,c.useState)(null),[aP,aQ]=(0,c.useState)(null),[aR,aS]=(0,c.useState)(!1),[aT,aU]=(0,c.useState)(null),[aV,aW]=(0,c.useState)(!1),[aX,aY]=(0,c.useState)(null),[aZ,a$]=(0,c.useState)(null),[a_,a0]=(0,c.useState)(!1),[a1,a2]=(0,c.useState)(null),[a3,a4]=(0,c.useState)(null),[a5,a6]=(0,c.useState)(448),[a7,a8]=(0,c.useState)([]),[a9,ba]=(0,c.useState)([]),[bb,bc]=(0,c.useState)(null),[bd,be]=(0,c.useState)([]),[bf,bg]=(0,c.useState)(!1),[bh,bi]=(0,c.useState)([]),[bj,bk]=(0,c.useState)({}),[bl]=(0,c.useState)(()=>Date.now()),[bm,bn]=(0,c.useState)(()=>new Map),[bo,bp]=(0,c.useState)(null),[bq,br]=(0,c.useState)(null),[bs,bt]=(0,c.useState)(new Set),bu=(0,c.useRef)(bs);(0,c.useEffect)(()=>{bu.current=bs});let{increment:bv,decrement:bw,refresh:bx}=(0,B.useFlagCount)(),{writeToCache:by}=function(a,b){let[d,e]=(0,c.useState)(null),[f,g]=(0,c.useState)(!1),h=(0,c.useRef)(a);return(0,c.useEffect)(()=>{if(h.current=a,!a||!b){e(null),g(!1);return}(0,y.openCacheDB)(b);let c=!1;return(0,y.getCachedMessages)(a,b).then(b=>{c||h.current!==a||(b&&b.length>0?(e(b),g(!0)):(e(null),g(!1)))}),()=>{c=!0}},[a,b]),{cachedMessages:d,isFromCache:f,writeToCache:(0,c.useCallback)(async(a,c)=>{h.current&&b&&await (0,y.mergeCachedMessages)(h.current,a,c,b)},[b])}}(ae??null,r),bz=(0,c.useRef)(by);(0,c.useEffect)(()=>{bz.current=by},[by]),(0,c.useEffect)(()=>{aa(ab)},[ab,aa]);let{listening:bA,supported:bB,toggle:bC}=function(a){let[b,d]=(0,c.useState)(!1),[e,f]=(0,c.useState)(!1),g=(0,c.useRef)(null);(0,c.useEffect)(()=>{f(!1)},[]);let h=(0,c.useCallback)(()=>{},[a]),i=(0,c.useCallback)(()=>{g.current?.stop()},[]),j=(0,c.useCallback)(()=>{b?i():h()},[b,h,i]);return(0,c.useEffect)(()=>()=>{g.current?.abort()},[]),{listening:b,supported:e,toggle:j}}((0,c.useCallback)(a=>{ak(b=>b?b+" "+a:a)},[])),bD=(0,c.useMemo)(()=>aJ.filter(a=>"agent"===a.source),[aJ]),{versionMap:bE,duplicateFilenames:bF}=(0,c.useMemo)(()=>(0,Z.computeArtifactVersions)(bD),[bD]),bG=(0,c.useMemo)(()=>"agent"===aP?bD:"issue"===aP?aZ?.artifacts??[]:[],[aP,bD,aZ?.artifacts]),{versionMap:bH,duplicateFilenames:bI}=(0,c.useMemo)(()=>(0,Z.computeArtifactVersions)(bG),[bG]),bJ=(0,c.useMemo)(()=>(function(a,b,c,d){if(!d||0===c.length){let d=[...a.map(a=>({kind:"message",data:a})),...b.map(a=>({kind:"artifact",data:a})),...c.map(a=>({kind:"nap",data:a}))];return d.sort((a,b)=>{let c=a.data.created_at.localeCompare(b.data.created_at);if(0!==c)return c;if("nap"===a.kind||"nap"===b.kind){if("nap"===a.kind&&"nap"!==b.kind)return 1;if("nap"!==a.kind&&"nap"===b.kind)return -1}return a.kind!==b.kind?"message"===a.kind?-1:1:a.data.id.localeCompare(b.data.id)}),ar(d)}let e=new Set(c.map(a=>a.id.replace(/^nap-/,""))),f=[...c].sort((a,b)=>a.created_at.localeCompare(b.created_at)),g=c=>ar([...a.filter(a=>a.conversation_id===c).map(a=>({kind:"message",data:a})),...b.filter(a=>a.conversation_id===c).map(a=>({kind:"artifact",data:a}))].sort((a,b)=>{let c=a.data.created_at.localeCompare(b.data.created_at);return 0!==c?c:a.kind!==b.kind?"message"===a.kind?-1:1:a.data.id.localeCompare(b.data.id)})),h=[];for(let a of f){let b=a.id.replace(/^nap-/,"");h.push(...g(b)),h.push({kind:"nap",data:a})}h.push(...g(d));let i=new Set([...e,d]),j=a.filter(a=>!i.has(a.conversation_id)),k=b.filter(a=>!i.has(a.conversation_id));if(j.length>0||k.length>0){let a=[...j.map(a=>({kind:"message",data:a})),...k.map(a=>({kind:"artifact",data:a}))];a.sort((a,b)=>{let c=a.data.created_at.localeCompare(b.data.created_at);return 0!==c?c:a.kind!==b.kind?"message"===a.kind?-1:1:a.data.id.localeCompare(b.data.id)});let b=ar(a),c=h.findIndex(a=>"nap"===a.kind);c>=0?h.splice(c,0,...b):h.push(...b)}return h})(ah,bD,bh,af?.id),[ah,bD,bh,af?.id]),bK=(0,c.useCallback)(a=>{(0,Z.isPreviewable)(a)?(aO(a),aQ("agent"),aM(!0)):window.open((0,Z.getArtifactUrl)(a.id,r,!0),"_blank")},[r]),bL=(0,c.useCallback)(a=>{(0,Z.isPreviewable)(a)?(aO(a),aQ("issue"),aM(!0)):window.open((0,Z.getArtifactUrl)(a.id,r,!0),"_blank")},[r]),bM=(0,c.useRef)(null),bN=(0,c.useRef)(null),bO=(0,c.useRef)(null),bP=(0,c.useRef)(null),bQ=(0,c.useRef)(0),bR=(0,c.useRef)(0),bS=(0,c.useRef)(!1),bT=(0,c.useRef)(!1),bU=(0,c.useRef)(!0),bV=(0,c.useRef)(!1),bW=(0,c.useRef)(null),bX=(0,c.useRef)(null),bY=(0,c.useRef)(0),bZ=(0,c.useRef)(void 0),b$=(0,c.useRef)(null),b_=(0,c.useRef)(null),b0=function({input:a,caretIndex:b,textareaRef:d,agents:e,agentLinks:f,currentAgentId:g,onInputChange:h}){let[i,j]=(0,c.useState)(!1),[k,l]=(0,c.useState)(""),[m,n]=(0,c.useState)(0),[o,p]=(0,c.useState)({top:0,left:0}),q=(0,c.useRef)(null),r=(0,c.useMemo)(()=>{let a=new Set;for(let b of f)b.source_agent_id===g&&a.add(b.target_agent_id),b.target_agent_id===g&&a.add(b.source_agent_id);return a},[f,g]),{relatedAgents:s,otherAgents:t,allAgents:u}=(0,c.useMemo)(()=>{if(!i)return{relatedAgents:[],otherAgents:[],allAgents:[]};let a=a=>{if(!k)return a.slice(0,20);let b=k.toLowerCase(),c=[],d=[];for(let e of a){let a=e.name.toLowerCase();a.startsWith(b)?c.push(e):a.includes(b)&&d.push(e)}return[...c,...d]},b=[],c=[];for(let a of e)r.has(a.id)?b.push(a):c.push(a);let d=a(b),f=a(c);return{relatedAgents:d,otherAgents:f,allAgents:[...d,...f]}},[i,k,e,r]);(0,c.useEffect)(()=>{n(0)},[u.length,k]),(0,c.useEffect)(()=>{if(null===b)return void j(!1);let c=function(a,b){let c=b-1;for(;c>=0&&b-c<=30;){let d=a.charCodeAt(c);if(64===d)return{start:c,query:a.slice(c+1,b)};if(10===d||13===d)break;c--}return null}(a,b);c?(q.current=c.start,l(c.query),j(!0),d.current&&p(function(a,b){let c=document.createElement("div"),d=window.getComputedStyle(a);for(let b of(c.style.position="absolute",c.style.top="-9999px",c.style.left="-9999px",c.style.visibility="hidden",c.style.overflow="hidden",c.style.width=`${a.offsetWidth}px`,["fontFamily","fontSize","fontWeight","fontStyle","letterSpacing","textTransform","wordSpacing","textIndent","lineHeight","paddingTop","paddingRight","paddingBottom","paddingLeft","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","boxSizing","whiteSpace","wordWrap","overflowWrap"]))c.style[b]=d.getPropertyValue(b.replace(/([A-Z])/g,"-$1").toLowerCase());c.textContent=a.value.slice(0,b);let e=document.createElement("span");e.textContent="",c.appendChild(e),document.body.appendChild(c);let f=e.offsetTop-a.scrollTop,g=Math.max(0,Math.min(e.offsetLeft,a.offsetWidth-256));return document.body.removeChild(c),{top:f,left:g}}(d.current,c.start))):(j(!1),q.current=null)},[a,b,d]);let v=(0,c.useCallback)(c=>{if(null===b||null===q.current)return;let e=a.slice(0,q.current),f=a.slice(b);h(`${e}@${c.name} ${f}`),j(!1);let g=e.length+1+c.name.length+1;requestAnimationFrame(()=>{let a=d.current;a&&(a.focus(),a.setSelectionRange(g,g))})},[a,b,d,h]),w=(0,c.useCallback)(a=>!!i&&0!==u.length&&!a.nativeEvent.isComposing&&("ArrowDown"===a.key?(a.preventDefault(),n(a=>(a+1)%u.length),!0):"ArrowUp"===a.key?(a.preventDefault(),n(a=>(a-1+u.length)%u.length),!0):"Enter"===a.key?(a.preventDefault(),v(u[m]),!0):"Escape"===a.key&&(a.preventDefault(),j(!1),!0)),[i,u,m,v]);return{isOpen:i,query:k,selectedIndex:m,anchorPos:o,relatedAgents:s,otherAgents:t,allAgents:u,handleMentionKeyDown:w,selectAgent:v}}({input:aj,caretIndex:bb,textareaRef:b_,agents:(0,c.useMemo)(()=>t.filter(a=>a.id!==ab),[t,ab]),agentLinks:u,currentAgentId:ab,onInputChange:ak});(0,c.useEffect)(()=>{let a=`chat-draft:${ab}:${ae??"default"}`;aj?localStorage.setItem(a,aj):localStorage.removeItem(a)},[aj,ab,ae]),(0,c.useEffect)(()=>{am||b_.current?.focus()},[am]);let b1=(0,c.useCallback)(()=>{bU.current=!0,setTimeout(()=>{bM.current?.scrollTo({top:bM.current.scrollHeight,behavior:"smooth"})},50)},[]);(0,c.useEffect)(()=>{if(W)return;bN.current&&clearInterval(bN.current),bN.current=null,bP.current=null;let a=!1;return aC(!0),bS.current=!1,ay(null),aA([]),ba([]),bn(new Map),bi([]),bk({}),be([]),bg(!1),bX.current=null,ak(localStorage.getItem(`chat-draft:${ab}:${ae??"default"}`)??""),ai([]),async function(){let b=!1;try{let c=null,d=null;if(ae){if(c=ae,d=await (0,y.getCacheMeta)(c,r),d?.newestMessageId){let e=await (0,y.getCachedMessages)(c,r);if(a)return;e&&e.length>0&&(b=!0,ai(e),aG(d.hasMore),aC(!1))}}else try{let e=await (0,x.checkFreshness)({agentId:ab,channel:V},r);if(a)return;if(c=e.conversation_id,d=await (0,y.getCacheMeta)(c,r),d?.newestMessageId&&d.newestMessageId===e.newest_message_id){let e=await (0,y.getCachedMessages)(c,r);if(a)return;e&&e.length>0&&(b=!0,ai(e),aG(d.hasMore),aC(!1))}}catch{}if(c){let b=await (0,x.conversationInit)(c,r,{newestMessageId:d?.newestMessageId??void 0});if(a)return;if(ag(b.conversation),bg(b.has_more_conversations),!b.cache_valid&&b.messages?(ai(a=>aq(a,b.messages)),bz.current(b.messages,b.has_more_messages).catch(()=>{}),aG(b.has_more_messages)):d&&aG(d.hasMore),bk(b.step_counts),aK(b.artifacts),ba(b.buffered_messages),bt(new Set(b.flagged_message_ids)),b.active_task&&(ay(b.active_task),aA(b.task_messages),b.task_messages.length>0&&(bQ.current=Math.max(...b.task_messages.map(a=>a.seq))),bW.current?.(b.active_task.id,c,bQ.current)),ac){let b=await (0,x.getTask)(ac,r).catch(()=>null);if(a)return;if(b&&!["completed","failed","cancelled","superseded"].includes(b.status)){ay(b);let d=await (0,x.getTaskMessages)(ac,r).catch(()=>[]);if(a)return;aA(d),d.length>0&&(bQ.current=Math.max(...d.map(a=>a.seq))),bW.current?.(b.id,c,bQ.current)}}}else{let b=await (0,x.chatInit)(ab,r,V);if(a)return;ag(b.conversation),ai(a=>a.length>0?aq(a,b.messages):b.messages),aG(b.has_more_messages),aK(b.artifacts),ba(b.buffered_messages),bg(b.has_more_conversations),bz.current(b.messages,b.has_more_messages).catch(()=>{}),(0,x.listFlaggedMessageIds)(r,b.conversation.id).then(b=>{a||bt(new Set(b.message_ids))}).catch(()=>{}),b.active_task&&(ay(b.active_task),b.task_messages.length>0&&(aA(b.task_messages),bQ.current=Math.max(...b.task_messages.map(a=>a.seq))),["completed","failed","cancelled","superseded"].includes(b.active_task.status)||bW.current?.(b.active_task.id,b.conversation.id,bQ.current))}}catch{b?D.toast.error("Couldn't refresh conversation"):D.toast.error("Failed to load conversation")}finally{a||aC(!1)}}(),()=>{a=!0}},[ab,r,ae,ac,V,W]);let b2=(0,c.useRef)(S);(0,c.useEffect)(()=>{b2.current=S},[S]);let b3=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(!af?.id||!r||b3.current===af.id)return;b3.current=af.id;let a=setTimeout(()=>{(0,x.markInboxRead)(af.id,r).then(()=>b2.current()).catch(()=>{})},1e3);return()=>{b3.current=null,clearTimeout(a)}},[af?.id,r]),(0,c.useEffect)(()=>{aB||!(ah.length>0)||bS.current||(bS.current=!0,ac||ad?bU.current=!1:h?setTimeout(()=>{let a=bM.current?.querySelectorAll("[data-quote-source]");a&&a.length>0?a[a.length-1].scrollIntoView({behavior:"instant",block:"start"}):bM.current?.scrollTo({top:bM.current.scrollHeight})},50):setTimeout(()=>{bM.current?.scrollTo({top:bM.current.scrollHeight})},50))},[aB,ah.length,ac,ad,h]),(0,c.useEffect)(()=>{let a;if(!ac||aB||!af)return;bU.current=!1,bV.current=!0;let b=!1,c=()=>{if(b)return!1;let c=document.querySelector(`[data-task-id="${CSS.escape(ac)}"]`);return!!c&&(c.scrollIntoView({behavior:"smooth",block:"start"}),c.classList.add("task-highlight"),a=setTimeout(()=>{c.classList.remove("task-highlight"),b||(bV.current=!1)},1500),!0)},d=setTimeout(async()=>{if(!b&&!c())try{let a=await (0,x.listMessagesAroundTask)(af.id,r,ac);if(b)return;a.length>0?(ai(b=>aq(b,a)),requestAnimationFrame(()=>{setTimeout(()=>{c()||(bV.current=!1)},100)})):bV.current=!1}catch{b||(bV.current=!1)}},100);return()=>{b=!0,clearTimeout(d),a&&clearTimeout(a)}},[ac,aB,af,r]),(0,c.useEffect)(()=>{let a;if(!ad||ac||aB||!af)return;bU.current=!1,bV.current=!0;let b=!1,c=setTimeout(()=>{!b&&((()=>{if(b)return!1;let c=document.querySelector(`[data-message-id="${CSS.escape(ad)}"]`);return!!c&&(c.scrollIntoView({behavior:"smooth",block:"start"}),c.classList.add("task-highlight"),a=setTimeout(()=>{c.classList.remove("task-highlight"),b||(bV.current=!1)},1500),!0)})()||(bM.current?.scrollTo({top:bM.current.scrollHeight}),bV.current=!1))},100);return()=>{b=!0,clearTimeout(c),a&&clearTimeout(a)}},[ad,ac,aB,af]);let b4=ax?.status;(0,c.useEffect)(()=>{bV.current||("running"===b4||"queued"===b4)&&bU.current&&b1()},[az.length,b4,b1]);let b5=(0,c.useMemo)(()=>t.find(a=>a.id===ab)?.name??"Agent",[t,ab]),b6=as(ah),b7=as(aF),b8=as(bd),b9=as(bf),ca=as(b5),cb=as(V),cc=(0,c.useCallback)(async(a=!1)=>{if(!af||bT.current)return;bT.current=!0;let b=b6.current,c=b7.current,e=b9.current,f=ca.current,g=cb.current,h=b[0],i=bX.current?.id??af.id,j=c&&h,k=b8.current;if(!j&&0===k.length&&e){let a=bX.current??{id:af.id,created_at:af.created_at};try{let b=await (0,x.listPreviousConversations)(ab,r,{exclude:af.id,before:a.created_at,channel:g});k=b.conversations,be(b.conversations),bg(b.has_more)}catch{bg(!1)}}let l=k.length>0;if(!j&&!l){bT.current=!1;return}aI(!0);let m=bM.current;m&&(m.style.overflowAnchor="none");let n=m?.scrollHeight??0;try{let b=[],c=[],l=20,o=!1,p=[];if(j){let a=i===af.id?await (0,y.getCachedMessagesBefore)(i,h.created_at,h.id,20,r):null;if(a)b=a.messages,l-=a.messages.length,o=a.hasMore;else{let a=await (0,x.listMessages)(i,r,{limit:20,before:h.created_at,beforeId:h.id});b=a.messages,l-=a.messages.length,o=a.has_more}}if(!o&&l>0){if(0===k.length&&e){let a=bX.current??{id:af.id,created_at:af.created_at};try{let b=await (0,x.listPreviousConversations)(ab,r,{exclude:af.id,before:a.created_at,channel:g});k=b.conversations,be(b.conversations),bg(b.has_more)}catch{bg(!1)}}let a=0,b=0;for(;a<k.length&&l>0&&b<5;){let d=k[a];a++,b++;let e=await (0,x.listMessages)(d.id,r,{limit:l});if(0===e.messages.length){bX.current=d;continue}let g=bX.current?.created_at??af.created_at;p.push({agentName:f,created_at:g,id:`nap-${d.id}`}),c=[...e.messages,...c],l-=e.messages.length,o=e.has_more,bX.current=d}a>0&&be(b=>b.slice(a))}let q=[...c,...b];if((0,d.flushSync)(()=>{q.length>0?(p.length>0&&bi(a=>{let b=new Set(a.map(a=>a.id)),c=p.filter(a=>!b.has(a.id));return[...a,...c]}),aG(o),ai(a=>{let b=new Set(a.map(a=>a.id));return[...q.filter(a=>!b.has(a.id)),...a]})):aG(!1)}),q.length>0&&af){let a=q.filter(a=>a.conversation_id===af.id);a.length>0&&(0,y.mergeCachedMessages)(af.id,a,o,r).catch(()=>{})}if(bT.current=!1,(0,d.flushSync)(()=>aI(!1)),m)if(a)m.scrollTop=m.scrollHeight;else{let a=m.scrollHeight;m.scrollTop=a-n}}catch{D.toast.error("Failed to load older messages")}finally{bT.current=!1,aI(!1),bM.current&&(bM.current.style.overflowAnchor="")}},[af,r,ab,b6,b7,b9,ca,cb,b8]),cd=aF||bd.length>0||bf;(0,c.useEffect)(()=>{af?.id!==bZ.current&&(bZ.current=af?.id,bY.current=0)},[af?.id]),(0,c.useEffect)(()=>{aB||!af||ah.length>=10||!cd||aH||bY.current>=3||(bY.current+=1,cc(!0))},[aB,ah.length,cd,aH,af,cc]);let ce=(0,c.useCallback)(()=>{let a=bM.current;a&&(bU.current=a.scrollHeight-a.scrollTop-a.clientHeight<100)},[]),cf=(0,c.useCallback)((a,b,c)=>{bN.current&&clearInterval(bN.current),bQ.current=c??0,bR.current=0,aE(!1),bP.current=a,bN.current=setInterval(async()=>{if(bP.current===a)try{let[c,d]=await Promise.all([(0,x.getTask)(a,r),(0,x.getTaskMessages)(a,r,bQ.current||void 0)]),e=bP.current!==a;if(bR.current=0,aE(!1),d.length>0&&!e&&(aA(a=>{let b=new Set(a.map(a=>a.seq)),c=d.filter(a=>!b.has(a.seq));return c.length>0?[...a,...c]:a}),bQ.current=Math.max(...d.map(a=>a.seq),bQ.current)),"completed"===c.status||"failed"===c.status||"cancelled"===c.status||"superseded"===c.status){if(e)return void(0,x.listMessages)(b,r).then(({messages:a})=>{ai(b=>aq(b,a)),(0,y.mergeCachedMessages)(b,a,null,r).catch(()=>{})}).catch(()=>{});bN.current&&clearInterval(bN.current),bN.current=null,bO.current&&clearTimeout(bO.current),bO.current=setTimeout(()=>{(0,x.markInboxRead)(b,r).then(()=>b2.current()).catch(()=>{})},1e3);let d=!bV.current&&bU.current;try{let[a,d]=await Promise.all([(0,x.listMessages)(b,r),(0,x.listArtifacts)(b,r).catch(()=>null)]);ai(b=>aq(b,a.messages)),(0,y.mergeCachedMessages)(b,a.messages,null,r).catch(()=>{}),d&&aK(d),ay(c)}catch{ay(c),D.toast.error("Failed to refresh messages")}d&&requestAnimationFrame(()=>{bM.current?.scrollTo({top:bM.current.scrollHeight,behavior:"smooth"})}),setTimeout(async()=>{if(!bN.current)try{let[c,d]=await Promise.all([(0,x.getActiveTask)(b,r),(0,x.listBufferedMessages)(b,r)]);if(ba(d),c&&c.id!==a){let{messages:a}=await (0,x.listMessages)(b,r);ai(b=>aq(b,a)),(0,y.mergeCachedMessages)(b,a,null,r).catch(()=>{}),ay(c),aA([]),bW.current?.(c.id,b)}}catch{}},1e3)}else e||ay(c)}catch{if(bP.current!==a)return;bR.current+=1,bR.current>=3&&aE(!0),bR.current>=10&&(bN.current&&clearInterval(bN.current),bN.current=null,D.toast.error("Lost connection to agent"))}},3e3)},[r]);(0,c.useEffect)(()=>{bW.current=cf},[cf]),(0,c.useEffect)(()=>()=>{bN.current&&clearInterval(bN.current),bO.current&&clearTimeout(bO.current)},[]);let cg=(0,c.useRef)(null);(0,c.useEffect)(()=>{cg.current=ax?.id??null},[ax]),(0,c.useEffect)(()=>Q(a=>{if("task.messages"===a.type&&a.taskId===cg.current){let b=a.messages.filter(a=>a.seq>bQ.current);b.length>0&&(aA(a=>{let c=new Set(a.map(a=>a.seq)),d=b.filter(a=>!c.has(a.seq));return d.length>0?[...a,...d]:a}),bQ.current=Math.max(...b.map(a=>a.seq),bQ.current))}if("task.created"===a.type&&a.conversationId===af?.id){(0,x.listMessages)(a.conversationId,r).then(({messages:b})=>{ai(a=>aq(a,b)),(0,y.mergeCachedMessages)(a.conversationId,b,null,r).catch(()=>{})}).catch(()=>{});let b=a.task;cg.current=b.id,ay(b),aA([]),bQ.current=0,bW.current?.(b.id,a.conversationId)}if("conversation.message"===a.type&&a.conversationId===af?.id&&(ai(b=>aq(b,[a.message])),(0,y.appendCachedMessage)(a.conversationId,a.message,r).catch(()=>{})),"task.updated"===a.type&&a.taskId===cg.current&&ay(b=>b?{...b,status:a.status}:b),"artifact.uploaded"===a.type&&a.conversationId===af?.id&&aK(b=>b.some(b=>b.id===a.artifact.id)?b:[...b,a.artifact]),"followup.dispatched"===a.type&&a.conversationId===af?.id){ba(b=>b.filter(b=>b.id!==a.message.id)),(0,x.listBufferedMessages)(a.conversationId,r).then(ba).catch(()=>{}),(0,x.listMessages)(a.conversationId,r).then(({messages:b})=>{ai(a=>aq(a,b)),(0,y.mergeCachedMessages)(a.conversationId,b,null,r).catch(()=>{})}).catch(()=>{});let b=a.task;cg.current=b.id,ay(b),aA([]),bW.current?.(b.id,a.conversationId)}"followup.created"===a.type&&a.conversationId===af?.id&&ba(b=>(function(a,b){if(a.some(a=>a.id===b.id))return a;let c=new Date(b.created_at).getTime();return a.some(a=>a.id.startsWith("temp-")&&2e3>Math.abs(new Date(a.created_at).getTime()-c))?a:[...a,b]})(b,a.message)),"followup.deleted"===a.type&&a.conversationId===af?.id&&ba(b=>b.filter(b=>b.id!==a.messageId)),"followup.dispatch_failed"===a.type&&a.conversationId===af?.id&&D.toast.error(a.error||"Failed to dispatch follow-up")}),[Q,af?.id,r]);let ch=(0,c.useCallback)(a=>{let b=a.target.files;if(!b)return;let c=[];for(let a of Array.from(b))a.size>0xa00000?D.toast.error(`"${a.name}" exceeds 10 MB limit`):c.push(a);c.length>0&&a8(a=>[...a,...c]),a.target.value=""},[]),ci=(0,c.useCallback)(a=>{a8(b=>b.filter((b,c)=>c!==a))},[]),cj=(0,c.useCallback)(()=>{let a=window.getSelection();if(!a||a.isCollapsed||!a.rangeCount)return void br(null);let b=a.toString().trim();if(!b)return void br(null);let c=a.getRangeAt(0),d=c.commonAncestorContainer instanceof HTMLElement?c.commonAncestorContainer:c.commonAncestorContainer.parentElement;if(!d?.closest("[data-quote-source]"))return void br(null);let e=c.getClientRects(),f=e[e.length-1]||c.getBoundingClientRect();br({text:b,x:f.right,y:f.top-4})},[]);(0,c.useEffect)(()=>(document.addEventListener("selectionchange",cj),()=>document.removeEventListener("selectionchange",cj)),[cj]);let ck=(0,c.useCallback)(()=>{bq&&(bp(bq.text),br(null),window.getSelection()?.removeAllRanges(),b_.current?.focus())},[bq]),[cl,cm]=(0,c.useState)(!1),cn=(0,c.useRef)(0),co=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),cn.current++,a.dataTransfer.types.includes("Files")&&cm(!0)},[]),cp=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),cn.current--,0===cn.current&&cm(!1)},[]),cq=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation()},[]),cr=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),cm(!1),cn.current=0;let b=Array.from(a.dataTransfer.files),c=[];for(let a of b)a.size>0xa00000?D.toast.error(`"${a.name}" exceeds 10 MB limit`):c.push(a);c.length>0&&a8(a=>[...a,...c])},[]),cs=(0,c.useCallback)(a=>{let b=a.clipboardData?.items;if(!b)return;let c=[];for(let a=0;a<b.length;a++){let d=b[a];if("file"===d.kind){let a=d.getAsFile();a&&c.push(a)}}if(0===c.length)return;a.preventDefault();let d=[];for(let a of c)a.size>0xa00000?D.toast.error(`"${a.name}" exceeds 10 MB limit`):d.push(a);d.length>0&&a8(a=>[...a,...d])},[]),ct=async()=>{if(af&&!ap){aw(!0);try{let a=await (0,x.cancelActiveTask)(af.id,r);if(a){if(cg.current&&cg.current!==a.id)return;bN.current&&clearInterval(bN.current),bN.current=null;let[b,c]=await Promise.all([(0,x.listMessages)(af.id,r),(0,x.listBufferedMessages)(af.id,r)]);ai(a=>aq(a,b.messages)),(0,y.mergeCachedMessages)(af.id,b.messages,null,r).catch(()=>{}),ba(c),ay(a),aA([])}}catch{D.toast.error("Failed to cancel task")}finally{aw(!1)}}},cu=async()=>{let a=aj.trim();if(!a&&0===a7.length||am||!af)return;if(!a)return void D.toast.error("Please type a message");let b=bo?`> ${bo.split("\n").join("\n> ")}
|
|
1
|
+
module.exports=[831893,896393,a=>{"use strict";var b=a.i(749314),c=a.i(437199),d=a.i(588339),e=a.i(752792),f=a.i(506180),g=a.i(626806);let h=["user_dm_message"],i=["user_dm_message"];function j(){return h}a.s(["INBOX_FILTER_LABELS",0,{user_dm_message:"DM",calendar_event:"Calendar",email_notification:"Email"},"INBOX_FILTER_TYPES",0,["user_dm_message","calendar_event","email_notification"],"MANDATORY_INBOX_TYPES",0,i,"getInboxFilterTypes",0,j,"setInboxFilterTypes",0,function(a){let b=[...a];for(let a of i)b.includes(a)||b.unshift(a);localStorage.setItem("inbox-filter-types",JSON.stringify(b))}],896393);let k=(0,c.createContext)(null);a.s(["InboxCountProvider",0,function({children:a}){let{workspaceId:h}=(0,f.useWorkspace)(),{subscribeWs:i,agents:l}=(0,e.useAgentContext)(),[m,n]=(0,c.useState)(0),o=(0,c.useRef)(null),p=(0,c.useRef)(null),q=(0,c.useRef)(l);(0,c.useEffect)(()=>{q.current=l});let r=(0,c.useCallback)(()=>{let a=j();(0,d.getInboxCount)(h,{types:a}).then(a=>{let b=o.current;if(o.current=a.count,n(a.count),null!==b&&a.count>b){let a=p.current?q.current.find(a=>a.id===p.current):void 0;(0,g.sendTaskNotification)("completed",a?.name)}p.current=null}).catch(()=>{})},[h]),s=(0,c.useCallback)(()=>{n(a=>{let b=Math.max(0,a-1);return o.current=b,b})},[]);return(0,c.useEffect)(()=>{r()},[r]),(0,c.useEffect)(()=>i(a=>{"task.updated"===a.type&&("completed"===a.status||"failed"===a.status)&&(p.current=a.agentId,r())}),[i,r]),(0,c.useEffect)(()=>{let a=setInterval(r,6e4);return()=>clearInterval(a)},[r]),(0,b.jsx)(k.Provider,{value:{count:m,refresh:r,decrement:s},children:a})},"useInboxCount",0,function(){let a=(0,c.useContext)(k);if(!a)throw Error("useInboxCount must be used within InboxCountProvider");return a}],831893)},70813,a=>{"use strict";var b=a.i(749314),c=a.i(437199),d=a.i(588339),e=a.i(506180);let f=(0,c.createContext)(null);a.s(["FlagCountProvider",0,function({children:a}){let{workspaceId:g}=(0,e.useWorkspace)(),[h,i]=(0,c.useState)(0),j=(0,c.useCallback)(()=>{(0,d.getFlaggedCount)(g).then(a=>i(a.count)).catch(()=>{})},[g]),k=(0,c.useCallback)(()=>{i(a=>a+1)},[]),l=(0,c.useCallback)(()=>{i(a=>Math.max(0,a-1))},[]);return(0,c.useEffect)(()=>{j()},[j]),(0,b.jsx)(f.Provider,{value:{count:h,refresh:j,increment:k,decrement:l},children:a})},"useFlagCount",0,function(){let a=(0,c.useContext)(f);if(!a)throw Error("useFlagCount must be used within FlagCountProvider");return a}])},781418,a=>{"use strict";var b=a.i(749314),c=a.i(437199),d=a.i(549931),e=a.i(584126),f=a.i(921584);a.i(735132);var g=a.i(253260),h=a.i(325848),i=a.i(191525),j=a.i(75118);a.s(["AgentPreviewCard",0,function({agent:a,isOnline:k,activeTaskCount:l,variant:m="default",isHovered:n}){let[o,p]=(0,c.useState)(!1),q=a.email_handle?`${a.email_handle}@alook.ai`:null,r=(0,c.useCallback)(async()=>{if(q)try{await navigator.clipboard.writeText(q),p(!0),f.toast.success("Email copied to clipboard"),setTimeout(()=>p(!1),2e3)}catch{f.toast.error("Failed to copy email")}},[q]);if("compact"===m){let c;return(0,b.jsxs)("div",{className:"flex items-center gap-2 p-0",children:[(c=(0,h.parseAvatarUrl)(a.avatar_url))?(0,b.jsx)(g.AnimatedAvatar,{config:c,size:32,className:"shrink-0 rounded-xl",isHovered:n??!1,isWorking:!!k&&(l??0)>0}):(0,b.jsx)("div",{className:"flex items-center justify-center size-8 rounded-xl bg-secondary text-secondary-foreground text-xs font-medium shrink-0",children:a.name.charAt(0).toUpperCase()}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("p",{className:"text-sm font-medium truncate max-w-35",children:a.name}),q&&(0,b.jsx)("span",{className:"text-xs text-muted-foreground truncate",children:q})]}),void 0!==k&&(0,b.jsx)("div",{className:"pointer-events-none mt-0.5",children:(0,b.jsx)(i.AgentStatusBadge,{isOnline:k,taskCount:l??0,agentId:a.id})})]})]})}return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5 p-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("p",{className:"text-sm font-medium truncate",children:a.name}),(0,b.jsx)("span",{className:"flex-1"}),void 0!==k&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[11px] text-muted-foreground",children:[(0,b.jsx)("span",{className:(0,j.cn)("size-1.5 rounded-full",k?"bg-status-online":"bg-status-offline")}),k?(l??0)>0?"Working":null:"Offline"]})]}),q&&(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("span",{className:"text-xs text-muted-foreground truncate",children:q}),(0,b.jsx)("button",{type:"button",onClick:a=>{a.stopPropagation(),r()},className:"shrink-0 p-0.5 rounded-sm text-muted-foreground/60 hover:text-foreground transition-colors cursor-pointer",children:o?(0,b.jsx)(d.Check,{className:"size-3 text-green-500"}):(0,b.jsx)(e.Copy,{className:"size-3"})})]}),a.description&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-2",children:a.description})]})}])},127026,40924,a=>{"use strict";a.s(["AgentChatView",()=>aw,"getEventIconType",()=>aq],127026);var b=a.i(749314),c=a.i(437199),d=a.i(131675),e=a.i(207058),f=a.i(506180),g=a.i(732254),h=a.i(464830),i=a.i(75118),j=a.i(549931),k=a.i(143984),l=a.i(647651);let m=(0,l.default)("brain",[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]]);var n=a.i(123047),o=a.i(723127),p=a.i(16831);a.i(343563);var q=a.i(347788);function r(a){return a.replace(/_/g," ").replace(/\b\w/g,a=>a.toUpperCase())}let s=new Set(["status","log"]);function t({item:a,isRunning:d,isLast:e}){let f=(0,c.useMemo)(()=>{if(!a.input)return null;try{return JSON.stringify(a.input,null,2)}catch{return String(a.input)}},[a.input]);return f?(0,b.jsxs)("details",{className:"group/tool",children:[(0,b.jsxs)("summary",{className:(0,i.cn)("flex items-center gap-2 py-1 px-2 -mx-2 rounded-md cursor-pointer select-none","text-sm text-muted-foreground transition-colors duration-150","hover:bg-muted/60 hover:text-foreground","[&::-webkit-details-marker]:hidden [&::marker]:hidden"),children:[(0,b.jsx)(k.ChevronRight,{className:"size-3 shrink-0 text-muted-foreground/60 transition-transform duration-150 group-open/tool:rotate-90"}),(0,b.jsx)("span",{className:"font-medium text-foreground/80",children:r(a.tool)}),d&&e&&(0,b.jsx)("span",{className:"ml-auto size-1.5 rounded-full bg-primary/60 animate-pulse"}),d&&!e&&(0,b.jsx)(j.Check,{className:"ml-auto size-3 text-emerald-500"})]}),(0,b.jsx)("div",{className:"mt-1 mb-2 ml-5",children:(0,b.jsx)("pre",{className:"task-stream-pre overflow-x-auto rounded-md bg-muted/40 p-2.5 font-mono text-xs leading-relaxed text-muted-foreground max-h-48 max-w-full min-w-0 overflow-y-auto",children:f})})]}):(0,b.jsxs)("div",{className:(0,i.cn)("flex items-center gap-2 py-1 px-2 -mx-2 rounded-md","text-sm text-muted-foreground"),children:[(0,b.jsx)("span",{className:"font-medium text-foreground/80",children:r(a.tool)}),d&&e&&(0,b.jsx)("span",{className:"ml-auto size-1.5 rounded-full bg-primary/60 animate-pulse"}),d&&!e&&(0,b.jsx)(j.Check,{className:"ml-auto size-3 text-emerald-500"})]})}function u({item:a}){return a.content?(0,b.jsxs)("details",{className:"group/think",children:[(0,b.jsxs)("summary",{className:(0,i.cn)("flex items-center gap-2 py-1 px-2 -mx-2 rounded-md cursor-pointer select-none","text-sm text-muted-foreground/60 italic transition-colors duration-150","hover:bg-muted/60 hover:text-muted-foreground","[&::-webkit-details-marker]:hidden [&::marker]:hidden"),children:[(0,b.jsx)(k.ChevronRight,{className:"size-3 shrink-0 text-muted-foreground/40 transition-transform duration-150 group-open/think:rotate-90"}),(0,b.jsx)(m,{className:"size-3 shrink-0"}),(0,b.jsx)("span",{children:"Thinking..."})]}),(0,b.jsx)("div",{className:"mt-1 mb-2 ml-5",children:(0,b.jsx)("p",{className:"text-sm italic text-muted-foreground/60 whitespace-pre-wrap",children:a.content})})]}):(0,b.jsxs)("div",{className:(0,i.cn)("flex items-center gap-2 py-1 px-2 -mx-2 rounded-md","text-sm text-muted-foreground/60 italic"),children:[(0,b.jsx)(m,{className:"size-3 shrink-0"}),(0,b.jsx)("span",{children:"Thinking..."})]})}function v({value:a}){let d=(0,c.useRef)(a),[e,f]=(0,c.useState)({current:a,previous:null}),[g,h]=(0,c.useState)("idle");return(0,c.useEffect)(()=>{if(a===d.current)return;let b=d.current;d.current=a,f({current:a,previous:b}),requestAnimationFrame(()=>{requestAnimationFrame(()=>{h("animating")})});let c=setTimeout(()=>{h("idle"),f(a=>({...a,previous:null}))},300);return()=>clearTimeout(c)},[a]),(0,b.jsxs)("span",{style:{display:"inline-block",position:"relative",overflow:"hidden",height:"1.2em",lineHeight:"1.2em",verticalAlign:"bottom"},children:[null!==e.previous&&(0,b.jsx)("span",{style:{display:"block",position:"absolute",inset:"0",transition:"animating"===g?"transform 250ms ease-out, opacity 250ms ease-out":"none",transform:"animating"===g?"translateY(-100%)":"translateY(0)",opacity:+("animating"!==g)},children:e.previous}),(0,b.jsx)("span",{style:{display:"block",transition:"animating"===g?"transform 250ms ease-out, opacity 250ms ease-out":"none",transform:null!==e.previous&&"animating"!==g?"translateY(100%)":"translateY(0)",opacity:+(null===e.previous||"animating"===g)},children:e.current})]})}function w({task:a,messages:d,connectionLost:e,onRetry:f,stepCountHint:g,onExpandSteps:j,stepsLoading:l}){let[m,r]=(0,c.useState)(!1),x=(0,c.useMemo)(()=>(function(a){let b=[],c=new Map;for(let d of a){if(s.has(d.type))continue;let a=d.id||`seq-${d.seq}`;switch(d.type){case"tool-use":{let e=d.call_id,f={kind:"tool-call",id:a,tool:d.tool,input:d.input};e&&c.set(e,f),b.push(f);break}case"tool-result":break;case"text":b.push({kind:"text",id:a,content:d.content});break;case"thinking":b.push({kind:"thinking",id:a,content:d.content});break;case"error":b.push({kind:"status",id:a,content:d.content||d.output,type:"error"})}}return b})(d),[d]),y="completed"!==a.status&&"failed"!==a.status&&"cancelled"!==a.status&&"superseded"!==a.status,z=x.filter(a=>"text"!==a.kind),A=x.filter(a=>"text"===a.kind),B=A.length>0?A[A.length-1]:null,C=(0,c.useRef)(null),D=(0,c.useRef)(null),E=(0,c.useRef)(!1);(0,c.useEffect)(()=>{y&&C.current&&(C.current.scrollTop=C.current.scrollHeight)},[z.length,y]),(0,c.useEffect)(()=>{y&&D.current&&(D.current.scrollTop=D.current.scrollHeight)},[A.length,y]);let F=y?A:A.slice(0,-1),G=!y&&null!==B,H=z.length>0?z.length:g??0,I=z.length>0||g&&g>0;return(0,b.jsxs)("div",{className:"space-y-3 min-w-0 max-w-full",children:[(0,b.jsx)("div",{className:"flex items-center gap-2",children:"running"===a.status?(0,b.jsxs)(h.Badge,{variant:"secondary",className:"gap-1.5 relative overflow-hidden",children:[(0,b.jsx)("span",{className:"size-1.5 rounded-full bg-primary animate-pulse"}),"Working",(0,b.jsx)("div",{className:"pointer-events-none absolute inset-0 -translate-x-full animate-[shimmer_2s_ease-in-out_infinite]",style:{background:"linear-gradient(90deg, transparent 0%, var(--shimmer) 40%, var(--shimmer-peak) 50%, var(--shimmer) 60%, transparent 100%)"}})]}):y?(0,b.jsxs)(h.Badge,{variant:"secondary",className:"relative overflow-hidden",children:[a.status,(0,b.jsx)("div",{className:"pointer-events-none absolute inset-0 -translate-x-full animate-[shimmer_2s_ease-in-out_infinite]",style:{background:"linear-gradient(90deg, transparent 0%, var(--shimmer) 40%, var(--shimmer-peak) 50%, var(--shimmer) 60%, transparent 100%)"}})]}):(0,b.jsx)(h.Badge,{variant:"secondary",children:a.status})}),I&&(0,b.jsxs)("details",{className:"group/stream pl-1",onToggle:a=>{a.currentTarget.open&&!E.current&&j&&(E.current=!0,j())},children:[(0,b.jsxs)("summary",{className:(0,i.cn)("flex items-center gap-1.5 py-1 cursor-pointer select-none","text-xs text-muted-foreground transition-colors duration-150","hover:text-foreground","[&::-webkit-details-marker]:hidden [&::marker]:hidden"),children:[(0,b.jsx)(k.ChevronRight,{className:(0,i.cn)("size-3 shrink-0 text-muted-foreground/60 transition-transform duration-150 group-open/stream:rotate-90",y&&"animate-pulse text-primary")}),(0,b.jsxs)("span",{children:[(0,b.jsx)(v,{value:H})," ",1===H?"step":"steps"]})]}),(0,b.jsxs)("div",{ref:C,className:"mt-1 max-h-80 overflow-y-auto overflow-x-hidden thin-scrollbar space-y-0.5 pl-1",children:[l&&0===z.length&&(0,b.jsxs)("div",{className:"flex items-center gap-2 py-2 text-xs text-muted-foreground",children:[(0,b.jsx)(p.Loader2,{className:"size-3 animate-spin"}),(0,b.jsx)("span",{children:"Loading steps..."})]}),z.map((a,c)=>{switch(a.kind){case"tool-call":return(0,b.jsx)(t,{item:a,isRunning:y,isLast:c===z.length-1},a.id);case"thinking":return(0,b.jsx)(u,{item:a},a.id);case"status":return(0,b.jsxs)("p",{className:"text-xs text-muted-foreground px-1 wrap-anywhere",children:["error"===a.type&&(0,b.jsx)(n.AlertCircle,{className:"inline size-3 mr-1 -mt-0.5 text-destructive"}),a.content]},a.id);default:return null}})]})]}),F.length>0&&(0,b.jsxs)("details",{className:"group/midtext pl-1",open:!G||void 0,children:[(0,b.jsxs)("summary",{className:(0,i.cn)("flex items-center gap-1.5 py-1 cursor-pointer select-none","text-xs text-muted-foreground transition-colors duration-150","hover:text-foreground","[&::-webkit-details-marker]:hidden [&::marker]:hidden"),children:[(0,b.jsx)(k.ChevronRight,{className:"size-3 shrink-0 text-muted-foreground/60 transition-transform duration-150 group-open/midtext:rotate-90"}),(0,b.jsxs)("span",{children:[(0,b.jsx)(v,{value:F.length})," thinking"]})]}),(0,b.jsx)("div",{ref:D,className:"mt-1 space-y-2 pl-1",children:F.map(a=>(0,b.jsx)("div",{className:"markdown max-w-full min-w-0 px-1 py-0.5 text-sm text-muted-foreground",children:(0,b.jsx)(q.Streamdown,{controls:{code:{copy:!0,download:!1},table:{copy:!0,download:!1,fullscreen:!0}},linkSafety:{enabled:!1},children:a.content})},a.id))})]}),G&&!j&&(0,b.jsx)("div",{className:"markdown max-w-full min-w-0 px-1 py-1 text-base text-foreground",children:(0,b.jsx)(q.Streamdown,{controls:{code:{copy:!0,download:!1},table:{copy:!0,download:!1,fullscreen:!0}},linkSafety:{enabled:!1},children:B.content})}),"failed"===a.status&&a.error&&(0,b.jsxs)("div",{className:"flex items-start gap-2 mt-2 max-w-full overflow-hidden",children:[(0,b.jsxs)("p",{className:"text-sm text-destructive flex items-start gap-1.5 min-w-0",children:[(0,b.jsx)(n.AlertCircle,{className:"size-3.5 shrink-0 mt-0.5"}),(0,b.jsx)("span",{className:"wrap-anywhere",children:a.error})]}),f&&(0,b.jsxs)("button",{type:"button",onClick:async()=>{r(!0);try{await f()}finally{r(!1)}},disabled:m,className:"shrink-0 text-xs text-muted-foreground hover:text-foreground transition-colors cursor-pointer disabled:opacity-50 flex items-center gap-1",children:[m?(0,b.jsx)(p.Loader2,{className:"size-3 animate-spin"}):(0,b.jsx)(o.RotateCw,{className:"size-3"}),"Retry"]})]}),e&&(0,b.jsx)("p",{className:"text-sm text-muted-foreground animate-pulse mt-1",children:"Connection lost — retrying..."})]})}var x=a.i(588339),y=a.i(562706),z=a.i(752792),A=a.i(831893),B=a.i(70813),C=a.i(452906),D=a.i(921584),E=a.i(25668),F=a.i(525132),G=a.i(540858);let H=(0,l.default)("bed-double",[["path",{d:"M2 20v-8a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v8",key:"1k78r4"}],["path",{d:"M4 10V6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v4",key:"fb3tl2"}],["path",{d:"M12 4v6",key:"1dcgq2"}],["path",{d:"M2 18h20",key:"ajqnye"}]]),I=(0,l.default)("box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);var J=a.i(510698),K=a.i(606896);let L=(0,l.default)("message-square-quote",[["path",{d:"M14 14a2 2 0 0 0 2-2V8h-2",key:"1r06pg"}],["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}],["path",{d:"M8 14a2 2 0 0 0 2-2V8H8",key:"1jzu5j"}]]),M=(0,l.default)("mic",[["path",{d:"M12 19v3",key:"npa21l"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2",key:"1vc78b"}],["rect",{x:"9",y:"2",width:"6",height:"13",rx:"3",key:"s6n7sd"}]]);var N=a.i(546257),O=a.i(484573),P=a.i(518828);function Q({agent:a,isSelected:c,onSelect:d}){return(0,b.jsxs)("button",{type:"button","data-mention-item":!0,className:(0,i.cn)("flex w-full items-center gap-2 px-3 py-1.5 text-left text-sm transition-colors",c?"bg-accent text-accent-foreground":"hover:bg-accent/50"),onMouseDown:b=>{b.preventDefault(),d(a)},children:[(0,b.jsx)("span",{className:"truncate font-medium",children:a.name}),a.email_handle&&(0,b.jsxs)("span",{className:"truncate text-xs text-muted-foreground",children:[a.email_handle,"@alook.ai"]})]})}function R({isOpen:a,relatedAgents:d,otherAgents:e,selectedIndex:f,onSelect:g,anchorPos:h}){let i=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(!i.current)return;let a=i.current.querySelectorAll("[data-mention-item]")[f];a?.scrollIntoView({block:"nearest"})},[f]);let j=d.length+e.length;if(!a||0===j)return null;let k=d.length>0&&e.length>0;return(0,b.jsx)("div",{className:"absolute z-50 w-64 rounded-lg border border-border bg-popover text-popover-foreground shadow-md transition-opacity duration-150",style:{top:h.top-4,left:h.left,transform:"translateY(-100%)"},children:(0,b.jsxs)("div",{ref:i,className:"max-h-50 overflow-y-auto py-1 thin-scrollbar",children:[d.map((a,c)=>(0,b.jsx)(Q,{agent:a,isSelected:c===f,onSelect:g},a.id)),k&&(0,b.jsx)("div",{className:"mx-3 my-1 border-t border-border"}),e.map((a,c)=>(0,b.jsx)(Q,{agent:a,isSelected:d.length+c===f,onSelect:g},a.id))]})})}function S(a,b){if(b>=a.length)return!0;let c=a.charCodeAt(b);return(!(c>=48)||!(c<=57))&&(!(c>=65)||!(c<=90))&&(!(c>=97)||!(c<=122))&&95!==c}function T(a,b){if(!a||0===b.length||!a.includes("@"))return a;let c=b.slice().sort((a,b)=>b.name.length-a.name.length),d=[];for(let b=0;b<a.length;b++){if("@"!==a[b]||!function(a,b){if(0===b)return!0;let c=a.charCodeAt(b-1);return(!(c>=48)||!(c<=57))&&(!(c>=65)||!(c<=90))&&(!(c>=97)||!(c<=122))&&95!==c}(a,b))continue;let e=b+1;for(let f of c){let c=e+f.name.length;if(c>a.length||a.slice(e,c).toLowerCase()!==f.name.toLowerCase())continue;let g=c,h=a.slice(c).match(/^ \([a-zA-Z0-9-]+@alook\.ai\)/);if(h&&(g=c+h[0].length),(h||S(a,c))&&(!h||S(a,g))){if(d.some(a=>b>=a.start&&b<a.end))break;d.push({start:b,end:c,name:f.name,agentId:f.id});break}}}let e=a;for(let a=d.length-1;a>=0;a--){let b=d[a],c=e.slice(b.start,b.end);e=e.slice(0,b.start)+`<mention data-agent-id="${b.agentId}">${c}</mention>`+e.slice(b.end)}return e}var U=a.i(207461),V=a.i(7455),W=a.i(135510);function X({open:a,onOpenChange:d,emailId:e,workspaceId:f}){let[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(null),[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(500),q=(0,c.useRef)(!1),r=(0,c.useRef)(d);(0,c.useEffect)(()=>{r.current=d}),(0,c.useEffect)(()=>{a&&e&&(m(!0),i(null),k(null),Promise.all([(0,x.getEmail)(e,f),(0,x.getEmailBody)(e,f)]).then(([a,b])=>{i(a),k(b)}).catch(()=>{D.toast.error("Email not found"),r.current(!1)}).finally(()=>m(!1)))},[a,e,f]);let s=a=>{d(a),a||setTimeout(()=>{i(null),k(null)},300)},t=(0,c.useCallback)(a=>{a.preventDefault(),q.current=!0,a.target.setPointerCapture(a.pointerId)},[]),u=(0,c.useCallback)(a=>{q.current&&o(Math.min(.8*window.innerWidth,Math.max(320,window.innerWidth-a.clientX)))},[]),v=(0,c.useCallback)(()=>{q.current=!1},[]);return(0,b.jsx)(V.Sheet,{open:a,onOpenChange:s,children:(0,b.jsxs)(V.SheetContent,{side:"right",showCloseButton:!1,style:{width:`min(${n}px, 100vw)`,maxWidth:"none"},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,b.jsx)("div",{onPointerDown:t,onPointerMove:u,onPointerUp:v,className:"hidden sm:block absolute left-0 top-0 bottom-0 w-1.5 cursor-col-resize z-10 hover:bg-primary/20 active:bg-primary/30 transition-colors rounded-l-xl"}),(0,b.jsx)(V.SheetHeader,{children:(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(K.Mail,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),(0,b.jsx)(V.SheetTitle,{className:"truncate flex-1",children:l?"Loading...":h?.subject||"Email"}),(0,b.jsx)(g.Button,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>s(!1),children:(0,b.jsx)(P.X,{className:"h-4 w-4"})})]})}),(0,b.jsx)(V.SheetBody,{className:"flex-1 overflow-y-auto thin-scrollbar",children:l?(0,b.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,b.jsx)(p.Loader2,{className:"h-6 w-6 animate-spin text-muted-foreground"})}):h?(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"text-sm space-y-1 border-b pb-3",children:[(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)("span",{className:"text-muted-foreground shrink-0",children:"From:"}),(0,b.jsx)("span",{className:"truncate",children:h.from_email})]}),(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)("span",{className:"text-muted-foreground shrink-0",children:"To:"}),(0,b.jsx)("span",{className:"truncate",children:h.to_email})]}),(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)("span",{className:"text-muted-foreground shrink-0",children:"Date:"}),(0,b.jsx)("span",{children:new Date(h.created_at).toLocaleString()})]})]}),j?.isHtml?(0,b.jsx)(W.EmailBodyFrame,{html:j.content,className:"max-w-full"}):(0,b.jsx)("pre",{className:"whitespace-pre-wrap text-sm font-mono",children:j?.content}),h.attachments&&h.attachments.length>0&&(0,b.jsxs)("div",{className:"border-t pt-3",children:[(0,b.jsxs)("p",{className:"text-xs text-muted-foreground mb-2",children:[h.attachments.length," attachment",h.attachments.length>1?"s":""]}),(0,b.jsx)("div",{className:"flex flex-wrap gap-2",children:h.attachments.map(a=>(0,b.jsx)("span",{className:"inline-flex items-center gap-1 text-xs bg-muted rounded px-2 py-1",children:a.filename},a.key))})]})]}):null})]})})}let Y=(0,l.default)("calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);function Z({open:a,onOpenChange:d,calendarEventId:e,workspaceId:f}){let[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(!1),[l,m]=(0,c.useState)(500),n=(0,c.useRef)(!1),o=(0,c.useRef)(d);(0,c.useEffect)(()=>{o.current=d}),(0,c.useEffect)(()=>{a&&e&&(k(!0),i(null),(0,x.getCalendarEvent)(e,f).then(i).catch(()=>{D.toast.error("Calendar event not found"),o.current(!1)}).finally(()=>k(!1)))},[a,e,f]);let q=a=>{d(a),a||setTimeout(()=>i(null),300)},r=(0,c.useCallback)(a=>{a.preventDefault(),n.current=!0,a.target.setPointerCapture(a.pointerId)},[]),s=(0,c.useCallback)(a=>{n.current&&m(Math.min(.8*window.innerWidth,Math.max(320,window.innerWidth-a.clientX)))},[]),t=(0,c.useCallback)(()=>{n.current=!1},[]);return(0,b.jsx)(V.Sheet,{open:a,onOpenChange:q,children:(0,b.jsxs)(V.SheetContent,{side:"right",showCloseButton:!1,style:{width:`min(${l}px, 100vw)`,maxWidth:"none"},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,b.jsx)("div",{onPointerDown:r,onPointerMove:s,onPointerUp:t,className:"hidden sm:block absolute left-0 top-0 bottom-0 w-1.5 cursor-col-resize z-10 hover:bg-primary/20 active:bg-primary/30 transition-colors rounded-l-xl"}),(0,b.jsx)(V.SheetHeader,{children:(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(Y,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),(0,b.jsx)(V.SheetTitle,{className:"truncate flex-1",children:j?"Loading...":h?.title||"Calendar Event"}),(0,b.jsx)(g.Button,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>q(!1),children:(0,b.jsx)(P.X,{className:"h-4 w-4"})})]})}),(0,b.jsx)(V.SheetBody,{className:"flex-1 overflow-y-auto thin-scrollbar",children:j?(0,b.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,b.jsx)(p.Loader2,{className:"h-6 w-6 animate-spin text-muted-foreground"})}):h?(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"text-sm space-y-2 border-b pb-3",children:[(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)("span",{className:"text-muted-foreground shrink-0",children:"Scheduled:"}),(0,b.jsx)("span",{children:new Date(h.scheduled_at).toLocaleString()})]}),h.repeat_interval&&(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)("span",{className:"text-muted-foreground shrink-0",children:"Repeats:"}),(0,b.jsxs)("span",{children:["Every ",h.repeat_interval]})]}),h.repeat_stop_at&&(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)("span",{className:"text-muted-foreground shrink-0",children:"Until:"}),(0,b.jsx)("span",{children:new Date(h.repeat_stop_at).toLocaleDateString()})]})]}),h.description&&(0,b.jsxs)("div",{className:"text-sm",children:[(0,b.jsx)("p",{className:"text-muted-foreground mb-1",children:"Description"}),(0,b.jsx)("pre",{className:"whitespace-pre-wrap font-sans",children:h.description})]})]}):null})]})})}var $=a.i(963744),_=a.i(698824);function aa({bufferedMessages:a,onDelete:d}){let[e,f]=(0,c.useState)(!1),g=a.length;if(0===g)return null;let h=Math.min(g,3);return(0,b.jsx)("div",{className:"relative px-5 pb-1",children:(0,b.jsx)("div",{className:"mx-auto max-w-2xl flex justify-center",children:(0,b.jsxs)("div",{className:"relative w-full max-w-lg transition-[height] duration-200 ease-out",style:{height:e?32*g+(g-1)*4:32+(h-1)*6},onMouseEnter:()=>f(!0),onMouseLeave:()=>f(!1),children:[a.map((a,c)=>{var f;let j=g-1-c,k=c>=g-h;return(0,b.jsx)("div",{className:"absolute right-0 left-0 transition-all duration-200 ease-out",style:{height:32,zIndex:c+1,bottom:e?36*j:k?6*j:0,transform:e?"scale(1)":`scale(${k?1-.03*j:.91})`,opacity:e?1:k?1-.2*j:0,pointerEvents:e||k?"auto":"none"},children:(0,b.jsxs)("div",{className:"h-full rounded-lg border bg-background/95 backdrop-blur-sm shadow-sm flex items-center gap-2 px-3",children:[(0,b.jsx)("span",{className:"shrink-0 text-[11px] text-primary/60 tabular-nums w-4 text-center",children:c+1}),(0,b.jsxs)("div",{className:"min-w-0 flex-1 flex items-center gap-1.5",children:[(0,b.jsx)("p",{className:"text-[13px] text-muted-foreground leading-snug truncate",children:(f=a.content).length<=80?f:f.slice(0,80).trimEnd()+"…"}),a.attachment_ids&&a.attachment_ids.length>0&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-0.5 shrink-0 text-[11px] text-muted-foreground/50",children:[(0,b.jsx)(N.Paperclip,{className:"size-2.5"}),a.attachment_ids.length]})]}),(0,b.jsx)("button",{type:"button",onClick:b=>{b.stopPropagation(),d(a.id)},className:(0,i.cn)("shrink-0 rounded-sm p-0.5 transition-all duration-150","text-muted-foreground/30 hover:text-foreground hover:bg-muted",e?"opacity-100":"opacity-0"),tabIndex:e?0:-1,children:(0,b.jsx)(P.X,{className:"size-3"})})]})},a.id)}),!e&&g>h&&(0,b.jsxs)("span",{className:"absolute -top-4 right-1 text-[10px] text-muted-foreground/40 tabular-nums",children:["+",g-h," more"]})]})})})}var ab=a.i(389660);let ac={id:"",agent_id:"",runtime_id:"",conversation_id:"",workspace_id:"",prompt:"",status:"completed",priority:0,dispatched_at:null,started_at:null,completed_at:null,result:null,error:null,created_at:"",type:""};function ad({taskId:a,stepCount:d,workspaceId:e}){let[f,g]=(0,c.useState)([]),[h,i]=(0,c.useState)(!1),[j,k]=(0,c.useState)(!1),l=(0,c.useCallback)(async()=>{if(!j&&!h){i(!0);try{let b=await (0,x.getTaskMessages)(a,e);g(b)}catch{g([])}finally{i(!1),k(!0)}}},[j,h,a,e]);return(0,b.jsx)(w,{task:ac,messages:f,stepCountHint:d,onExpandSteps:l,stepsLoading:h})}var ae=a.i(307992);let af=(0,l.default)("flag",[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]]);a.s(["Flag",0,af],40924);var ag=a.i(584126);let ah={mention:["data-agent-id"]},ai=["mention"];function aj({content:a,conversationType:c}){let d=aq(a,c),e="h-4 w-4 mt-0.5 shrink-0";return"issue"===d?(0,b.jsx)(ae.CircleDot,{className:e}):"email"===d?(0,b.jsx)(K.Mail,{className:e}):(0,b.jsx)(Y,{className:e})}function ak({attachmentIds:a,artifacts:c,onArtifactClick:d}){let e=a.map(a=>c.find(b=>b.id===a)).filter(a=>!!a);return 0===e.length?null:(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5 mt-1.5",children:e.map(a=>(0,b.jsxs)("button",{type:"button",onClick:b=>{b.stopPropagation(),d(a)},className:"inline-flex items-center gap-1 rounded-md bg-primary-foreground/10 border border-primary-foreground/20 px-2 py-0.5 text-xs text-primary-foreground/80 hover:bg-primary-foreground/20 transition-colors cursor-pointer",children:[(0,b.jsx)(J.FileText,{className:"size-3 shrink-0"}),(0,b.jsx)("span",{className:"truncate max-w-37.5",children:a.filename})]},a.id))})}function al({pendingFiles:a,messageId:c}){let d=a.get(c);return d&&0!==d.length?(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5 mt-1.5",children:d.map((a,c)=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-md bg-primary-foreground/10 border border-primary-foreground/20 px-2 py-0.5 text-xs text-primary-foreground/80",children:[(0,b.jsx)(J.FileText,{className:"size-3 shrink-0"}),(0,b.jsx)("span",{className:"truncate max-w-37.5",children:a.name})]},c))}):null}let am=(0,c.memo)(function({msg:a,agents:d,artifacts:e,activeTask:f,taskMessages:h,connectionLost:k,isLastMessage:l,stepCount:m,targetConvId:n,workspaceId:o,conversationType:p,pendingFilesByMessage:r,onArtifactClick:s,onEmailClick:t,onIssueClick:u,onCalendarEventClick:v,onRetry:x,mentionComponents:y,isFlagged:z,onToggleFlag:A}){let B,C,E,G,[H,I]=(0,c.useState)(!1),J=f&&"assistant"===a.role&&a.task_id===f.id&&a.conversation_id===f.conversation_id&&h.length>0,K=!J&&n&&"assistant"===a.role&&a.task_id&&m>0?m:0,L=J&&f&&["completed","failed","cancelled","superseded"].includes(f.status),M="assistant"===a.role?(0,b.jsxs)("div",{className:"flex flex-row items-center gap-1",children:[(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-xs","aria-label":H?"Copied":"Copy message",onClick:async b=>{b.stopPropagation();try{await navigator.clipboard.writeText(a.content),I(!0),D.toast.success("Copied to clipboard"),setTimeout(()=>I(!1),2e3)}catch{D.toast.error("Failed to copy")}},className:(0,i.cn)("self-start mb-1",H?"text-green-500 opacity-100":"text-muted-foreground opacity-0 group-hover/msg:opacity-100")}),children:H?(0,b.jsx)(j.Check,{className:"size-3.5"}):(0,b.jsx)(ag.Copy,{className:"size-3.5"})}),(0,b.jsx)(F.TooltipContent,{children:H?"Copied":"Copy"})]}),A&&(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-xs",onClick:()=>A(a.id),className:(0,i.cn)("self-start mb-1",z?"text-primary opacity-100":"text-muted-foreground opacity-0 group-hover/msg:opacity-100")}),children:(0,b.jsx)(af,{className:(0,i.cn)("size-3.5",z&&"fill-current")})}),(0,b.jsx)(F.TooltipContent,{children:z?"Unflag":"Flag"})]})]}):null;return(0,b.jsxs)(c.default.Fragment,{children:[J&&(0,b.jsxs)("div",{className:(0,i.cn)("group/msg",z&&"bg-muted/30 rounded-lg px-2 -mx-2"),children:[(0,b.jsx)(w,{task:f,messages:h,connectionLost:k,onRetry:x}),L&&M]}),K>0&&a.task_id&&(0,b.jsx)(ad,{taskId:a.task_id,stepCount:K,workspaceId:o}),"user"===a.role?(B=l&&!!f&&"running"!==f.status&&!["completed","failed","cancelled","superseded"].includes(f.status),(0,b.jsx)("div",{className:"flex justify-end","data-message-id":a.id,...a.task_id?{"data-task-id":a.task_id}:{},children:(0,b.jsxs)("div",{className:(0,i.cn)("max-w-[80%] rounded-lg px-4 py-2 bg-primary text-primary-foreground text-base relative"),children:[B&&(0,b.jsx)("div",{className:"absolute inset-0 rounded-lg animate-pulse pointer-events-none",style:{boxShadow:"0 0 0 2px var(--bubble-glow)"}}),(0,b.jsx)("div",{className:"markdown markdown-user",children:(0,b.jsx)(q.Streamdown,{controls:{code:{copy:!0,download:!1},table:{copy:!1,download:!1,fullscreen:!1}},linkSafety:{enabled:!1},allowedTags:ah,literalTagContent:ai,components:y,children:T(a.content,d)})}),a.attachment_ids&&a.attachment_ids.length>0&&(0,b.jsx)(ak,{attachmentIds:a.attachment_ids,artifacts:e,onArtifactClick:s}),!a.attachment_ids&&(0,b.jsx)(al,{pendingFiles:r,messageId:a.id})]})})):"event"===a.role?(C=a.metadata?.emailId,E=a.metadata?.issueId,G=a.metadata?.calendarEventId,(0,b.jsx)("div",{className:"flex justify-start","data-message-id":a.id,...a.task_id?{"data-task-id":a.task_id}:{},children:(0,b.jsxs)("div",{className:(0,i.cn)("w-full rounded-md border bg-muted/50 text-muted-foreground text-sm px-3 py-2 flex items-start gap-2",(!!C||!!E||!!G)&&"cursor-pointer hover:bg-muted transition-colors"),onClick:C?()=>t(C):E?()=>u(E):G?()=>v(G):void 0,children:[(0,b.jsx)(aj,{content:a.content,conversationType:p}),(0,b.jsx)("span",{className:"min-w-0 wrap-anywhere",children:a.content})]})})):J?null:(0,b.jsxs)("div",{className:(0,i.cn)("group/msg flex flex-col justify-start min-w-0 overflow-hidden",z&&"bg-muted/30 rounded-lg px-2 -mx-2"),"data-message-id":a.id,"data-quote-source":!0,...a.task_id?{"data-task-id":a.task_id}:{},children:[(0,b.jsx)("div",{className:"markdown max-w-full min-w-0 px-1 py-1 text-base text-foreground",children:(0,b.jsx)(q.Streamdown,{controls:{code:{copy:!0,download:!1},table:{copy:!0,download:!1,fullscreen:!0}},linkSafety:{enabled:!1},allowedTags:ah,literalTagContent:ai,components:y,children:T(a.content,d)})}),M]})]})});var an=a.i(781418),ao=a.i(722393);let ap={mention:function(a){let{children:c,...d}=a,{agents:e}=(0,z.useAgentContext)(),f=d["data-agent-id"]??d.dataAgentId,g=f?e.find(a=>a.id===f):void 0;if(!g&&"string"==typeof c){let a=c.startsWith("@")?c.slice(1):c;g=e.find(b=>b.name.toLowerCase()===a.toLowerCase())}return g?(0,b.jsxs)(ao.Popover,{children:[(0,b.jsx)(ao.PopoverTrigger,{openOnHover:!0,delay:300,nativeButton:!1,render:(0,b.jsx)("span",{className:"mention-highlight cursor-pointer"}),children:c}),(0,b.jsx)(ao.PopoverContent,{side:"top",className:"w-fit max-w-80",children:(0,b.jsx)(an.AgentPreviewCard,{agent:g})})]}):(0,b.jsx)("span",{className:"mention-highlight",children:c})},p:({children:a,node:c,...d})=>(0,b.jsx)("div",{"data-md-p":"",...d,children:a})};function aq(a,b){if("issue_event"===b)return"issue";if("email_notification"===b)return"email";if("calendar_event"===b)return"calendar";let c=a.toLowerCase();return c.startsWith("issue ")||c.startsWith("issue:")?"issue":c.includes("email")?"email":"calendar"}function ar(a,b){let c=new Map;for(let b of a)c.set(b.id,b);for(let a of b)c.set(a.id,a);return[...c.values()].slice().sort((a,b)=>{let c=a.created_at.localeCompare(b.created_at);return 0!==c?c:a.id.localeCompare(b.id)})}function as(a){let b=[],c=[],d=!1;for(let e of a)"message"===e.kind&&"user"===e.data.role?(d=!0,b.push(e)):"message"===e.kind&&"assistant"===e.data.role?(b.push(e),b.push(...c),c=[],d=!1):d&&"artifact"===e.kind?c.push(e):b.push(e);return b.push(...c),b}function at(a){let b=(0,c.useRef)(a);return(0,c.useEffect)(()=>{b.current=a},[a]),b}function au({agentName:a}){return(0,b.jsxs)("div",{className:"flex items-center gap-3 py-4 select-none","aria-hidden":!0,children:[(0,b.jsx)("div",{className:"flex-1 border-t border-border/40"}),(0,b.jsxs)("span",{className:"text-xs text-muted-foreground/60 whitespace-nowrap",children:[a," took a nap 💤"]}),(0,b.jsx)("div",{className:"flex-1 border-t border-border/40"})]})}function av({artifact:a,version:c,hasDuplicates:d,onClick:e}){return(0,b.jsxs)("button",{onClick:()=>e(a),className:(0,i.cn)("flex items-center gap-3 w-full max-w-sm rounded-lg border border-border/60 bg-muted/30","px-3.5 py-2.5 text-left transition-colors duration-150","hover:bg-muted/60 hover:border-border"),children:[(0,b.jsx)(J.FileText,{className:"size-4 shrink-0 text-muted-foreground"}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("p",{className:"text-sm font-medium truncate",children:[a.filename,d&&(0,b.jsxs)("span",{className:"ml-1.5 text-xs text-muted-foreground bg-muted rounded-full px-1.5 py-0.5 font-normal",children:["v",c]})]}),(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:(0,U.formatSize)(a.size)})]})]})}function aw({agentId:a,targetConvId:h,scrollToTaskId:j,scrollToMessageId:k}){let l,m,n,o=(0,e.useParams)(),q=(0,e.useSearchParams)(),{workspaceId:r,slug:s}=(0,f.useWorkspace)(),{agents:t,agentLinks:u,activeTaskCounts:v,subscribeWs:Q}=(0,z.useAgentContext)(),{refresh:S}=(0,A.useInboxCount)(),{activeChannel:V,loading:W,setAgentId:Y}=(0,C.useChannel)(),ac=a??o.id,ad=void 0!==j?j:q.get("task"),ae=void 0!==k?k:q.get("msg"),af=void 0!==h?h:q.get("conv"),[ag,ah]=(0,c.useState)(null),[ai,aj]=(0,c.useState)([]),[ak,al]=(0,c.useState)(()=>""),[an,ao]=(0,c.useState)(!1),[aq,ax]=(0,c.useState)(!1),[ay,az]=(0,c.useState)(null),[aA,aB]=(0,c.useState)([]),[aC,aD]=(0,c.useState)(!0),[aE,aF]=(0,c.useState)(!1),[aG,aH]=(0,c.useState)(!1),[aI,aJ]=(0,c.useState)(!1),[aK,aL]=(0,c.useState)([]),[aM,aN]=(0,c.useState)(!1),[aO,aP]=(0,c.useState)(null),[aQ,aR]=(0,c.useState)(null),[aS,aT]=(0,c.useState)(!1),[aU,aV]=(0,c.useState)(null),[aW,aX]=(0,c.useState)(!1),[aY,aZ]=(0,c.useState)(null),[a$,a_]=(0,c.useState)(!1),[a0,a1]=(0,c.useState)(null),[a2,a3]=(0,c.useState)(null),[a4,a5]=(0,c.useState)(!1),[a6,a7]=(0,c.useState)(null),[a8,a9]=(0,c.useState)(null),[ba,bb]=(0,c.useState)(448),[bc,bd]=(0,c.useState)([]),[be,bf]=(0,c.useState)([]),[bg,bh]=(0,c.useState)(null),[bi,bj]=(0,c.useState)([]),[bk,bl]=(0,c.useState)(!1),[bm,bn]=(0,c.useState)([]),[bo,bp]=(0,c.useState)({}),[bq]=(0,c.useState)(()=>Date.now()),[br,bs]=(0,c.useState)(()=>new Map),[bt,bu]=(0,c.useState)(null),[bv,bw]=(0,c.useState)(null),[bx,by]=(0,c.useState)(new Set),bz=(0,c.useRef)(bx);(0,c.useEffect)(()=>{bz.current=bx});let{increment:bA,decrement:bB,refresh:bC}=(0,B.useFlagCount)(),{writeToCache:bD}=function(a,b){let[d,e]=(0,c.useState)(null),[f,g]=(0,c.useState)(!1),h=(0,c.useRef)(a);return(0,c.useEffect)(()=>{if(h.current=a,!a||!b){e(null),g(!1);return}(0,y.openCacheDB)(b);let c=!1;return(0,y.getCachedMessages)(a,b).then(b=>{c||h.current!==a||(b&&b.length>0?(e(b),g(!0)):(e(null),g(!1)))}),()=>{c=!0}},[a,b]),{cachedMessages:d,isFromCache:f,writeToCache:(0,c.useCallback)(async(a,c)=>{h.current&&b&&await (0,y.mergeCachedMessages)(h.current,a,c,b)},[b])}}(af??null,r),bE=(0,c.useRef)(bD);(0,c.useEffect)(()=>{bE.current=bD},[bD]),(0,c.useEffect)(()=>{Y(ac)},[ac,Y]);let{listening:bF,supported:bG,toggle:bH}=function(a){let[b,d]=(0,c.useState)(!1),[e,f]=(0,c.useState)(!1),g=(0,c.useRef)(null);(0,c.useEffect)(()=>{f(!1)},[]);let h=(0,c.useCallback)(()=>{},[a]),i=(0,c.useCallback)(()=>{g.current?.stop()},[]),j=(0,c.useCallback)(()=>{b?i():h()},[b,h,i]);return(0,c.useEffect)(()=>()=>{g.current?.abort()},[]),{listening:b,supported:e,toggle:j}}((0,c.useCallback)(a=>{al(b=>b?b+" "+a:a)},[])),bI=(0,c.useMemo)(()=>aK.filter(a=>"agent"===a.source),[aK]),{versionMap:bJ,duplicateFilenames:bK}=(0,c.useMemo)(()=>(0,_.computeArtifactVersions)(bI),[bI]),bL=(0,c.useMemo)(()=>"agent"===aQ?bI:"issue"===aQ?a2?.artifacts??[]:[],[aQ,bI,a2?.artifacts]),{versionMap:bM,duplicateFilenames:bN}=(0,c.useMemo)(()=>(0,_.computeArtifactVersions)(bL),[bL]),bO=(0,c.useMemo)(()=>(function(a,b,c,d){if(!d||0===c.length){let d=[...a.map(a=>({kind:"message",data:a})),...b.map(a=>({kind:"artifact",data:a})),...c.map(a=>({kind:"nap",data:a}))];return d.sort((a,b)=>{let c=a.data.created_at.localeCompare(b.data.created_at);if(0!==c)return c;if("nap"===a.kind||"nap"===b.kind){if("nap"===a.kind&&"nap"!==b.kind)return 1;if("nap"!==a.kind&&"nap"===b.kind)return -1}return a.kind!==b.kind?"message"===a.kind?-1:1:a.data.id.localeCompare(b.data.id)}),as(d)}let e=new Set(c.map(a=>a.id.replace(/^nap-/,""))),f=[...c].sort((a,b)=>a.created_at.localeCompare(b.created_at)),g=c=>as([...a.filter(a=>a.conversation_id===c).map(a=>({kind:"message",data:a})),...b.filter(a=>a.conversation_id===c).map(a=>({kind:"artifact",data:a}))].sort((a,b)=>{let c=a.data.created_at.localeCompare(b.data.created_at);return 0!==c?c:a.kind!==b.kind?"message"===a.kind?-1:1:a.data.id.localeCompare(b.data.id)})),h=[];for(let a of f){let b=a.id.replace(/^nap-/,"");h.push(...g(b)),h.push({kind:"nap",data:a})}h.push(...g(d));let i=new Set([...e,d]),j=a.filter(a=>!i.has(a.conversation_id)),k=b.filter(a=>!i.has(a.conversation_id));if(j.length>0||k.length>0){let a=[...j.map(a=>({kind:"message",data:a})),...k.map(a=>({kind:"artifact",data:a}))];a.sort((a,b)=>{let c=a.data.created_at.localeCompare(b.data.created_at);return 0!==c?c:a.kind!==b.kind?"message"===a.kind?-1:1:a.data.id.localeCompare(b.data.id)});let b=as(a),c=h.findIndex(a=>"nap"===a.kind);c>=0?h.splice(c,0,...b):h.push(...b)}return h})(ai,bI,bm,ag?.id),[ai,bI,bm,ag?.id]),bP=(0,c.useCallback)(a=>{(0,_.isPreviewable)(a)?(aP(a),aR("agent"),aN(!0)):window.open((0,_.getArtifactUrl)(a.id,r,!0),"_blank")},[r]),bQ=(0,c.useCallback)(a=>{(0,_.isPreviewable)(a)?(aP(a),aR("issue"),aN(!0)):window.open((0,_.getArtifactUrl)(a.id,r,!0),"_blank")},[r]),bR=(0,c.useRef)(null),bS=(0,c.useRef)(null),bT=(0,c.useRef)(null),bU=(0,c.useRef)(null),bV=(0,c.useRef)(0),bW=(0,c.useRef)(0),bX=(0,c.useRef)(!1),bY=(0,c.useRef)(!1),bZ=(0,c.useRef)(!0),b$=(0,c.useRef)(!1),b_=(0,c.useRef)(null),b0=(0,c.useRef)(null),b1=(0,c.useRef)(0),b2=(0,c.useRef)(void 0),b3=(0,c.useRef)(null),b4=(0,c.useRef)(null),b5=function({input:a,caretIndex:b,textareaRef:d,agents:e,agentLinks:f,currentAgentId:g,onInputChange:h}){let[i,j]=(0,c.useState)(!1),[k,l]=(0,c.useState)(""),[m,n]=(0,c.useState)(0),[o,p]=(0,c.useState)({top:0,left:0}),q=(0,c.useRef)(null),r=(0,c.useMemo)(()=>{let a=new Set;for(let b of f)b.source_agent_id===g&&a.add(b.target_agent_id),b.target_agent_id===g&&a.add(b.source_agent_id);return a},[f,g]),{relatedAgents:s,otherAgents:t,allAgents:u}=(0,c.useMemo)(()=>{if(!i)return{relatedAgents:[],otherAgents:[],allAgents:[]};let a=a=>{if(!k)return a.slice(0,20);let b=k.toLowerCase(),c=[],d=[];for(let e of a){let a=e.name.toLowerCase();a.startsWith(b)?c.push(e):a.includes(b)&&d.push(e)}return[...c,...d]},b=[],c=[];for(let a of e)r.has(a.id)?b.push(a):c.push(a);let d=a(b),f=a(c);return{relatedAgents:d,otherAgents:f,allAgents:[...d,...f]}},[i,k,e,r]);(0,c.useEffect)(()=>{n(0)},[u.length,k]),(0,c.useEffect)(()=>{if(null===b)return void j(!1);let c=function(a,b){let c=b-1;for(;c>=0&&b-c<=30;){let d=a.charCodeAt(c);if(64===d)return{start:c,query:a.slice(c+1,b)};if(10===d||13===d)break;c--}return null}(a,b);c?(q.current=c.start,l(c.query),j(!0),d.current&&p(function(a,b){let c=document.createElement("div"),d=window.getComputedStyle(a);for(let b of(c.style.position="absolute",c.style.top="-9999px",c.style.left="-9999px",c.style.visibility="hidden",c.style.overflow="hidden",c.style.width=`${a.offsetWidth}px`,["fontFamily","fontSize","fontWeight","fontStyle","letterSpacing","textTransform","wordSpacing","textIndent","lineHeight","paddingTop","paddingRight","paddingBottom","paddingLeft","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","boxSizing","whiteSpace","wordWrap","overflowWrap"]))c.style[b]=d.getPropertyValue(b.replace(/([A-Z])/g,"-$1").toLowerCase());c.textContent=a.value.slice(0,b);let e=document.createElement("span");e.textContent="",c.appendChild(e),document.body.appendChild(c);let f=e.offsetTop-a.scrollTop,g=Math.max(0,Math.min(e.offsetLeft,a.offsetWidth-256));return document.body.removeChild(c),{top:f,left:g}}(d.current,c.start))):(j(!1),q.current=null)},[a,b,d]);let v=(0,c.useCallback)(c=>{if(null===b||null===q.current)return;let e=a.slice(0,q.current),f=a.slice(b);h(`${e}@${c.name} ${f}`),j(!1);let g=e.length+1+c.name.length+1;requestAnimationFrame(()=>{let a=d.current;a&&(a.focus(),a.setSelectionRange(g,g))})},[a,b,d,h]),w=(0,c.useCallback)(a=>!!i&&0!==u.length&&!a.nativeEvent.isComposing&&("ArrowDown"===a.key?(a.preventDefault(),n(a=>(a+1)%u.length),!0):"ArrowUp"===a.key?(a.preventDefault(),n(a=>(a-1+u.length)%u.length),!0):"Enter"===a.key?(a.preventDefault(),v(u[m]),!0):"Escape"===a.key&&(a.preventDefault(),j(!1),!0)),[i,u,m,v]);return{isOpen:i,query:k,selectedIndex:m,anchorPos:o,relatedAgents:s,otherAgents:t,allAgents:u,handleMentionKeyDown:w,selectAgent:v}}({input:ak,caretIndex:bg,textareaRef:b4,agents:(0,c.useMemo)(()=>t.filter(a=>a.id!==ac),[t,ac]),agentLinks:u,currentAgentId:ac,onInputChange:al});(0,c.useEffect)(()=>{let a=`chat-draft:${ac}:${af??"default"}`;ak?localStorage.setItem(a,ak):localStorage.removeItem(a)},[ak,ac,af]),(0,c.useEffect)(()=>{an||b4.current?.focus()},[an]);let b6=(0,c.useCallback)(()=>{bZ.current=!0,setTimeout(()=>{bR.current?.scrollTo({top:bR.current.scrollHeight,behavior:"smooth"})},50)},[]);(0,c.useEffect)(()=>{if(W)return;bS.current&&clearInterval(bS.current),bS.current=null,bU.current=null;let a=!1;return aD(!0),bX.current=!1,az(null),aB([]),bf([]),bs(new Map),bn([]),bp({}),bj([]),bl(!1),b0.current=null,al(localStorage.getItem(`chat-draft:${ac}:${af??"default"}`)??""),aj([]),async function(){let b=!1;try{let c=null,d=null;if(af){if(c=af,d=await (0,y.getCacheMeta)(c,r),d?.newestMessageId){let e=await (0,y.getCachedMessages)(c,r);if(a)return;e&&e.length>0&&(b=!0,aj(e),aH(d.hasMore),aD(!1))}}else try{let e=await (0,x.checkFreshness)({agentId:ac,channel:V},r);if(a)return;if(c=e.conversation_id,d=await (0,y.getCacheMeta)(c,r),d?.newestMessageId&&d.newestMessageId===e.newest_message_id){let e=await (0,y.getCachedMessages)(c,r);if(a)return;e&&e.length>0&&(b=!0,aj(e),aH(d.hasMore),aD(!1))}}catch{}if(c){let b=await (0,x.conversationInit)(c,r,{newestMessageId:d?.newestMessageId??void 0});if(a)return;if(ah(b.conversation),bl(b.has_more_conversations),!b.cache_valid&&b.messages?(aj(a=>ar(a,b.messages)),bE.current(b.messages,b.has_more_messages).catch(()=>{}),aH(b.has_more_messages)):d&&aH(d.hasMore),bp(b.step_counts),aL(b.artifacts),bf(b.buffered_messages),by(new Set(b.flagged_message_ids)),b.active_task&&(az(b.active_task),aB(b.task_messages),b.task_messages.length>0&&(bV.current=Math.max(...b.task_messages.map(a=>a.seq))),b_.current?.(b.active_task.id,c,bV.current)),ad){let b=await (0,x.getTask)(ad,r).catch(()=>null);if(a)return;if(b&&!["completed","failed","cancelled","superseded"].includes(b.status)){az(b);let d=await (0,x.getTaskMessages)(ad,r).catch(()=>[]);if(a)return;aB(d),d.length>0&&(bV.current=Math.max(...d.map(a=>a.seq))),b_.current?.(b.id,c,bV.current)}}}else{let b=await (0,x.chatInit)(ac,r,V);if(a)return;ah(b.conversation),aj(a=>a.length>0?ar(a,b.messages):b.messages),aH(b.has_more_messages),aL(b.artifacts),bf(b.buffered_messages),bl(b.has_more_conversations),bE.current(b.messages,b.has_more_messages).catch(()=>{}),(0,x.listFlaggedMessageIds)(r,b.conversation.id).then(b=>{a||by(new Set(b.message_ids))}).catch(()=>{}),b.active_task&&(az(b.active_task),b.task_messages.length>0&&(aB(b.task_messages),bV.current=Math.max(...b.task_messages.map(a=>a.seq))),["completed","failed","cancelled","superseded"].includes(b.active_task.status)||b_.current?.(b.active_task.id,b.conversation.id,bV.current))}}catch{b?D.toast.error("Couldn't refresh conversation"):D.toast.error("Failed to load conversation")}finally{a||aD(!1)}}(),()=>{a=!0}},[ac,r,af,ad,V,W]);let b7=(0,c.useRef)(S);(0,c.useEffect)(()=>{b7.current=S},[S]);let b8=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(!ag?.id||!r||b8.current===ag.id)return;b8.current=ag.id;let a=setTimeout(()=>{(0,x.markInboxRead)(ag.id,r).then(()=>b7.current()).catch(()=>{})},1e3);return()=>{b8.current=null,clearTimeout(a)}},[ag?.id,r]),(0,c.useEffect)(()=>{aC||!(ai.length>0)||bX.current||(bX.current=!0,ad||ae?bZ.current=!1:h?setTimeout(()=>{let a=bR.current?.querySelectorAll("[data-quote-source]");a&&a.length>0?a[a.length-1].scrollIntoView({behavior:"instant",block:"start"}):bR.current?.scrollTo({top:bR.current.scrollHeight})},50):setTimeout(()=>{bR.current?.scrollTo({top:bR.current.scrollHeight})},50))},[aC,ai.length,ad,ae,h]),(0,c.useEffect)(()=>{let a;if(!ad||aC||!ag)return;bZ.current=!1,b$.current=!0;let b=!1,c=()=>{if(b)return!1;let c=document.querySelector(`[data-task-id="${CSS.escape(ad)}"]`);return!!c&&(c.scrollIntoView({behavior:"smooth",block:"start"}),c.classList.add("task-highlight"),a=setTimeout(()=>{c.classList.remove("task-highlight"),b||(b$.current=!1)},1500),!0)},d=setTimeout(async()=>{if(!b&&!c())try{let a=await (0,x.listMessagesAroundTask)(ag.id,r,ad);if(b)return;a.length>0?(aj(b=>ar(b,a)),requestAnimationFrame(()=>{setTimeout(()=>{c()||(b$.current=!1)},100)})):b$.current=!1}catch{b||(b$.current=!1)}},100);return()=>{b=!0,clearTimeout(d),a&&clearTimeout(a)}},[ad,aC,ag,r]),(0,c.useEffect)(()=>{let a;if(!ae||ad||aC||!ag)return;bZ.current=!1,b$.current=!0;let b=!1,c=setTimeout(()=>{!b&&((()=>{if(b)return!1;let c=document.querySelector(`[data-message-id="${CSS.escape(ae)}"]`);return!!c&&(c.scrollIntoView({behavior:"smooth",block:"start"}),c.classList.add("task-highlight"),a=setTimeout(()=>{c.classList.remove("task-highlight"),b||(b$.current=!1)},1500),!0)})()||(bR.current?.scrollTo({top:bR.current.scrollHeight}),b$.current=!1))},100);return()=>{b=!0,clearTimeout(c),a&&clearTimeout(a)}},[ae,ad,aC,ag]);let b9=ay?.status;(0,c.useEffect)(()=>{b$.current||("running"===b9||"queued"===b9)&&bZ.current&&b6()},[aA.length,b9,b6]);let ca=(0,c.useMemo)(()=>t.find(a=>a.id===ac)?.name??"Agent",[t,ac]),cb=at(ai),cc=at(aG),cd=at(bi),ce=at(bk),cf=at(ca),cg=at(V),ch=(0,c.useCallback)(async(a=!1)=>{if(!ag||bY.current)return;bY.current=!0;let b=cb.current,c=cc.current,e=ce.current,f=cf.current,g=cg.current,h=!!af,i=b[0],j=b0.current?.id??ag.id,k=c&&i,l=cd.current;if(!h&&!k&&0===l.length&&e){let a=b0.current??{id:ag.id,created_at:ag.created_at};try{let b=await (0,x.listPreviousConversations)(ac,r,{exclude:ag.id,before:a.created_at,channel:g});l=b.conversations,bj(b.conversations),bl(b.has_more)}catch{bl(!1)}}let m=!h&&l.length>0;if(!k&&!m){bY.current=!1;return}aJ(!0);let n=bR.current;n&&(n.style.overflowAnchor="none");let o=n?.scrollHeight??0;try{let b=[],c=[],m=20,p=!1,q=[],s=!1;if(k){let a=j===ag.id?await (0,y.getCachedMessagesBefore)(j,i.created_at,i.id,20,r):null;if(a)b=a.messages,m-=a.messages.length,p=a.hasMore;else{let a=await (0,x.listMessages)(j,r,{limit:20,before:i.created_at,beforeId:i.id});b=a.messages,m-=a.messages.length,p=a.has_more}s=p}if(!h&&!p&&m>0){if(0===l.length&&e){let a=b0.current??{id:ag.id,created_at:ag.created_at};try{let b=await (0,x.listPreviousConversations)(ac,r,{exclude:ag.id,before:a.created_at,channel:g});l=b.conversations,bj(b.conversations),bl(b.has_more)}catch{bl(!1)}}let a=0,b=0;for(;a<l.length&&m>0&&b<5;){let d=l[a];a++,b++;let e=await (0,x.listMessages)(d.id,r,{limit:m});if(0===e.messages.length){b0.current=d;continue}let g=b0.current?.created_at??ag.created_at;q.push({agentName:f,created_at:g,id:`nap-${d.id}`}),c=[...e.messages,...c],m-=e.messages.length,p=e.has_more,b0.current=d}a>0&&bj(b=>b.slice(a))}let t=[...c,...b];if((0,d.flushSync)(()=>{t.length>0?(q.length>0&&bn(a=>{let b=new Set(a.map(a=>a.id)),c=q.filter(a=>!b.has(a.id));return[...a,...c]}),aH(p),aj(a=>{let b=new Set(a.map(a=>a.id));return[...t.filter(a=>!b.has(a.id)),...a]})):aH(!1)}),t.length>0&&ag){let a=t.filter(a=>a.conversation_id===ag.id);a.length>0&&(0,y.mergeCachedMessages)(ag.id,a,s,r).catch(()=>{})}if(bY.current=!1,(0,d.flushSync)(()=>aJ(!1)),n)if(a)n.scrollTop=n.scrollHeight;else{let a=n.scrollHeight;n.scrollTop=a-o}}catch{D.toast.error("Failed to load older messages")}finally{bY.current=!1,aJ(!1),bR.current&&(bR.current.style.overflowAnchor="")}},[ag,r,ac,af,cb,cc,ce,cf,cg,cd]),ci=af?aG:aG||bi.length>0||bk;(0,c.useEffect)(()=>{ag?.id!==b2.current&&(b2.current=ag?.id,b1.current=0)},[ag?.id]),(0,c.useEffect)(()=>{aC||!ag||ad||af||ai.length>=10||!ci||aI||b1.current>=3||(b1.current+=1,ch(!0))},[aC,ai.length,ci,aI,ag,ch,ad,af]);let cj=(0,c.useCallback)(()=>{let a=bR.current;a&&(bZ.current=a.scrollHeight-a.scrollTop-a.clientHeight<100)},[]),ck=(0,c.useCallback)((a,b,c)=>{bS.current&&clearInterval(bS.current),bV.current=c??0,bW.current=0,aF(!1),bU.current=a,bS.current=setInterval(async()=>{if(bU.current===a)try{let[c,d]=await Promise.all([(0,x.getTask)(a,r),(0,x.getTaskMessages)(a,r,bV.current||void 0)]),e=bU.current!==a;if(bW.current=0,aF(!1),d.length>0&&!e&&(aB(a=>{let b=new Set(a.map(a=>a.seq)),c=d.filter(a=>!b.has(a.seq));return c.length>0?[...a,...c]:a}),bV.current=Math.max(...d.map(a=>a.seq),bV.current)),"completed"===c.status||"failed"===c.status||"cancelled"===c.status||"superseded"===c.status){if(e)return void(0,x.listMessages)(b,r).then(({messages:a})=>{aj(b=>ar(b,a)),(0,y.mergeCachedMessages)(b,a,null,r).catch(()=>{})}).catch(()=>{});bS.current&&clearInterval(bS.current),bS.current=null,bT.current&&clearTimeout(bT.current),bT.current=setTimeout(()=>{(0,x.markInboxRead)(b,r).then(()=>b7.current()).catch(()=>{})},1e3);let d=!b$.current&&bZ.current;try{let[a,d]=await Promise.all([(0,x.listMessages)(b,r),(0,x.listArtifacts)(b,r).catch(()=>null)]);aj(b=>ar(b,a.messages)),(0,y.mergeCachedMessages)(b,a.messages,null,r).catch(()=>{}),d&&aL(d),az(c)}catch{az(c),D.toast.error("Failed to refresh messages")}d&&requestAnimationFrame(()=>{bR.current?.scrollTo({top:bR.current.scrollHeight,behavior:"smooth"})}),setTimeout(async()=>{if(!bS.current)try{let[c,d]=await Promise.all([(0,x.getActiveTask)(b,r),(0,x.listBufferedMessages)(b,r)]);if(bf(d),c&&c.id!==a){let{messages:a}=await (0,x.listMessages)(b,r);aj(b=>ar(b,a)),(0,y.mergeCachedMessages)(b,a,null,r).catch(()=>{}),az(c),aB([]),b_.current?.(c.id,b)}}catch{}},1e3)}else e||az(c)}catch{if(bU.current!==a)return;bW.current+=1,bW.current>=3&&aF(!0),bW.current>=10&&(bS.current&&clearInterval(bS.current),bS.current=null,D.toast.error("Lost connection to agent"))}},3e3)},[r]);(0,c.useEffect)(()=>{b_.current=ck},[ck]),(0,c.useEffect)(()=>()=>{bS.current&&clearInterval(bS.current),bT.current&&clearTimeout(bT.current)},[]);let cl=(0,c.useRef)(null);(0,c.useEffect)(()=>{cl.current=ay?.id??null},[ay]),(0,c.useEffect)(()=>Q(a=>{if("task.messages"===a.type&&a.taskId===cl.current){let b=a.messages.filter(a=>a.seq>bV.current);b.length>0&&(aB(a=>{let c=new Set(a.map(a=>a.seq)),d=b.filter(a=>!c.has(a.seq));return d.length>0?[...a,...d]:a}),bV.current=Math.max(...b.map(a=>a.seq),bV.current))}if("task.created"===a.type&&a.conversationId===ag?.id){(0,x.listMessages)(a.conversationId,r).then(({messages:b})=>{aj(a=>ar(a,b)),(0,y.mergeCachedMessages)(a.conversationId,b,null,r).catch(()=>{})}).catch(()=>{});let b=a.task;cl.current=b.id,az(b),aB([]),bV.current=0,b_.current?.(b.id,a.conversationId)}if("conversation.message"===a.type&&a.conversationId===ag?.id&&(aj(b=>ar(b,[a.message])),(0,y.appendCachedMessage)(a.conversationId,a.message,r).catch(()=>{})),"task.updated"===a.type&&a.taskId===cl.current&&az(b=>b?{...b,status:a.status}:b),"artifact.uploaded"===a.type&&a.conversationId===ag?.id&&aL(b=>b.some(b=>b.id===a.artifact.id)?b:[...b,a.artifact]),"followup.dispatched"===a.type&&a.conversationId===ag?.id){bf(b=>b.filter(b=>b.id!==a.message.id)),(0,x.listBufferedMessages)(a.conversationId,r).then(bf).catch(()=>{}),(0,x.listMessages)(a.conversationId,r).then(({messages:b})=>{aj(a=>ar(a,b)),(0,y.mergeCachedMessages)(a.conversationId,b,null,r).catch(()=>{})}).catch(()=>{});let b=a.task;cl.current=b.id,az(b),aB([]),b_.current?.(b.id,a.conversationId)}"followup.created"===a.type&&a.conversationId===ag?.id&&bf(b=>(function(a,b){if(a.some(a=>a.id===b.id))return a;let c=new Date(b.created_at).getTime();return a.some(a=>a.id.startsWith("temp-")&&2e3>Math.abs(new Date(a.created_at).getTime()-c))?a:[...a,b]})(b,a.message)),"followup.deleted"===a.type&&a.conversationId===ag?.id&&bf(b=>b.filter(b=>b.id!==a.messageId)),"followup.dispatch_failed"===a.type&&a.conversationId===ag?.id&&D.toast.error(a.error||"Failed to dispatch follow-up")}),[Q,ag?.id,r]);let cm=(0,c.useCallback)(a=>{let b=a.target.files;if(!b)return;let c=[];for(let a of Array.from(b))a.size>0xa00000?D.toast.error(`"${a.name}" exceeds 10 MB limit`):c.push(a);c.length>0&&bd(a=>[...a,...c]),a.target.value=""},[]),cn=(0,c.useCallback)(a=>{bd(b=>b.filter((b,c)=>c!==a))},[]),co=(0,c.useCallback)(()=>{let a=window.getSelection();if(!a||a.isCollapsed||!a.rangeCount)return void bw(null);let b=a.toString().trim();if(!b)return void bw(null);let c=a.getRangeAt(0),d=c.commonAncestorContainer instanceof HTMLElement?c.commonAncestorContainer:c.commonAncestorContainer.parentElement;if(!d?.closest("[data-quote-source]"))return void bw(null);let e=c.getClientRects(),f=e[e.length-1]||c.getBoundingClientRect();bw({text:b,x:f.right,y:f.top-4})},[]);(0,c.useEffect)(()=>(document.addEventListener("selectionchange",co),()=>document.removeEventListener("selectionchange",co)),[co]);let cp=(0,c.useCallback)(()=>{bv&&(bu(bv.text),bw(null),window.getSelection()?.removeAllRanges(),b4.current?.focus())},[bv]),[cq,cr]=(0,c.useState)(!1),cs=(0,c.useRef)(0),ct=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),cs.current++,a.dataTransfer.types.includes("Files")&&cr(!0)},[]),cu=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),cs.current--,0===cs.current&&cr(!1)},[]),cv=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation()},[]),cw=(0,c.useCallback)(a=>{a.preventDefault(),a.stopPropagation(),cr(!1),cs.current=0;let b=Array.from(a.dataTransfer.files),c=[];for(let a of b)a.size>0xa00000?D.toast.error(`"${a.name}" exceeds 10 MB limit`):c.push(a);c.length>0&&bd(a=>[...a,...c])},[]),cx=(0,c.useCallback)(a=>{let b=a.clipboardData?.items;if(!b)return;let c=[];for(let a=0;a<b.length;a++){let d=b[a];if("file"===d.kind){let a=d.getAsFile();a&&c.push(a)}}if(0===c.length)return;a.preventDefault();let d=[];for(let a of c)a.size>0xa00000?D.toast.error(`"${a.name}" exceeds 10 MB limit`):d.push(a);d.length>0&&bd(a=>[...a,...d])},[]),cy=async()=>{if(ag&&!aq){ax(!0);try{let a=await (0,x.cancelActiveTask)(ag.id,r);if(a){if(cl.current&&cl.current!==a.id)return;bS.current&&clearInterval(bS.current),bS.current=null;let[b,c]=await Promise.all([(0,x.listMessages)(ag.id,r),(0,x.listBufferedMessages)(ag.id,r)]);aj(a=>ar(a,b.messages)),(0,y.mergeCachedMessages)(ag.id,b.messages,null,r).catch(()=>{}),bf(c),az(a),aB([])}}catch{D.toast.error("Failed to cancel task")}finally{ax(!1)}}},cz=async()=>{let a=ak.trim();if(!a&&0===bc.length||an||!ag)return;if(!a)return void D.toast.error("Please type a message");let b=bt?`> ${bt.split("\n").join("\n> ")}
|
|
2
2
|
|
|
3
|
-
${a}`:a,c=[...a7];if(ak(""),a8([]),bp(null),an(!0),ax&&!["completed","failed","cancelled","superseded"].includes(ax.status)){let a=`temp-${Date.now()}`,d={id:a,conversation_id:af.id,role:"user",content:b,task_id:null,attachment_ids:null,status:"buffered",created_at:new Date().toISOString()};ba(a=>[...a,d]);try{let{message:d}=await (0,x.createBufferedMessage)(af.id,b,r,c.length>0?c:void 0);ba(b=>b.some(a=>a.id===d.id)?b.filter(b=>b.id!==a):b.map(b=>b.id===a?d:b))}catch(d){ba(b=>b.filter(b=>b.id!==a)),ak(b),a8(c),D.toast.error(d instanceof Error?d.message:"Failed to queue follow-up")}finally{an(!1)}return}let d=`temp-${Date.now()}`,e={id:d,conversation_id:af.id,role:"user",content:b,task_id:null,attachment_ids:null,created_at:new Date().toISOString()};c.length>0&&bn(a=>{let b=new Map(a);return b.set(d,c),b}),ai(a=>[...a,e]),b1();try{let{message:a,task:f}=await (0,x.sendMessage)(af.id,b,r,c.length>0?c:void 0);bn(a=>{if(!a.has(d))return a;let b=new Map(a);return b.delete(d),b}),ai(b=>b.map(b=>b.id===e.id?a:b)),a.attachment_ids&&a.attachment_ids.length>0&&(0,x.listArtifacts)(af.id,r).then(a=>aK(a)).catch(()=>{}),ay(f),aA([]),cf(f.id,af.id)}catch(a){bn(a=>{if(!a.has(d))return a;let b=new Map(a);return b.delete(d),b}),ai(a=>a.filter(a=>a.id!==e.id)),ak(b),a8(c),D.toast.error(a instanceof Error?a.message:"Failed to send message")}finally{an(!1),b_.current?.focus()}},cv=(0,c.useCallback)(async()=>{if(!ax||!af)return;let a=await (0,x.retryTask)(ax.id,r);ay(a),aA([]),cf(a.id,af.id)},[ax,af,r,cf]),cw=(0,c.useCallback)(async a=>{let b=bu.current.has(a);bt(c=>{let d=new Set(c);return b?d.delete(a):d.add(a),d}),b?(bw(),(0,x.unflagMessage)(r,a).then(()=>{bx()}).catch(()=>{bt(b=>new Set(b).add(a)),bv()})):(bv(),(0,x.flagMessage)(r,a).then(()=>{bx()}).catch(()=>{bt(b=>{let c=new Set(b);return c.delete(a),c}),bw()}))},[r,bv,bw,bx]),cx=(0,c.useCallback)(async a=>{aY(a),aW(!0),a0(!0),a2(null),a4(null);try{let b=await (0,x.getIssue)(r,a);a$(b),b.issue.latest_task_id&&(0,x.getTask)(b.issue.latest_task_id,r).then(a=>a4(a)).catch(()=>a4(null)),b.issue.trace_id&&(0,x.getTrace)(b.issue.trace_id,r).then(a=>a2(a.tasks)).catch(()=>a2(null))}catch(a){D.toast.error(a instanceof Error?a.message:"Failed to load issue"),aW(!1)}finally{a0(!1)}},[r]),cy=aZ?.issue?.conversation_id??null,cz=aZ?.issue?.latest_task_id??null;(0,c.useEffect)(()=>{if(aV&&aX)return Q(a=>{if("task.updated"===a.type&&cz&&a.taskId===cz&&(0,x.getTask)(cz,r).then(a=>a4(a)).catch(()=>{}),"conversation.message"===a.type&&cy&&a.conversationId===cy&&(a$(b=>!b||b.messages.some(b=>b.id===a.message.id)?b:{...b,messages:[...b.messages,a.message]}),"event"===a.message.role&&a.message.content.startsWith("Issue status changed:"))){let b=a.message.content.match(/-> (\w+)/);b&&a$(a=>a?{...a,issue:{...a.issue,status:b[1]}}:a)}"issue.comment"===a.type&&a.issueId===aX&&a$(b=>!b||b.comments.some(b=>b.id===a.comment.id)?b:{...b,comments:[...b.comments,a.comment]})})},[aV,aX,cy,cz,r,Q]);let[cA,cB]=(0,c.useState)(!1),cC=(0,c.useMemo)(()=>!!af&&ah.some(a=>a.conversation_id===af.id),[af,ah]),cD=async()=>{if(af&&cC&&!cA){cB(!0);try{bN.current&&(clearInterval(bN.current),bN.current=null);let a=await (0,x.createConversation)(ab,r,V);bi(b=>[...b,{agentName:b5,created_at:a.created_at,id:`nap-${af.id}`}]),be(a=>[{id:af.id,created_at:af.created_at},...a]),ag(a),ay(null),aA([]),aK([]),ba([]),a8([]),bn(new Map),bQ.current=0,aE(!1),aG(!1),bX.current=null,b1()}catch{D.toast.error("Failed to start new conversation")}finally{cB(!1)}}},cE=!!ax&&!["completed","failed","cancelled","superseded"].includes(ax.status);return aB?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"flex-1 overflow-y-auto px-3 md:px-5",children:(0,b.jsxs)("div",{className:"mx-auto max-w-2xl py-6 space-y-4",children:[(0,b.jsx)("div",{className:"flex justify-end",children:(0,b.jsx)(E.Skeleton,{className:"h-10 w-48 rounded-lg"})}),(0,b.jsx)("div",{className:"flex justify-start",children:(0,b.jsxs)("div",{className:"space-y-2 px-1 py-1",children:[(0,b.jsx)(E.Skeleton,{className:"h-4 w-72"}),(0,b.jsx)(E.Skeleton,{className:"h-4 w-56"}),(0,b.jsx)(E.Skeleton,{className:"h-4 w-64"})]})}),(0,b.jsx)("div",{className:"flex justify-end",children:(0,b.jsx)(E.Skeleton,{className:"h-10 w-36 rounded-lg"})}),(0,b.jsx)("div",{className:"flex justify-start",children:(0,b.jsxs)("div",{className:"space-y-2 px-1 py-1",children:[(0,b.jsx)(E.Skeleton,{className:"h-4 w-64"}),(0,b.jsx)(E.Skeleton,{className:"h-4 w-48"})]})})]})}),(0,b.jsx)("div",{className:"px-3 md:px-5 py-3",children:(0,b.jsx)("div",{className:"mx-auto max-w-2xl",children:(0,b.jsx)(E.Skeleton,{className:"h-18 w-full rounded-xl"})})})]}):aB||af||0!==ah.length?(0,b.jsxs)(b.Fragment,{children:[bq&&(0,b.jsxs)("button",{type:"button",className:"fixed z-50 flex items-center gap-1 px-2 py-1 rounded-md bg-popover border shadow-md text-xs text-popover-foreground hover:bg-accent transition-colors",style:{left:bq.x,top:bq.y,transform:"translate(-100%, -100%)"},onMouseDown:a=>a.preventDefault(),onClick:ck,children:[(0,b.jsx)(L,{className:"size-3"}),"Quote"]}),(0,b.jsxs)("div",{className:"relative flex-1 min-h-0",children:[(0,b.jsx)("div",{className:"h-full overflow-y-auto overflow-x-hidden px-3 md:px-5 thin-scrollbar",ref:bM,onScroll:ce,onClick:a=>{a.target.closest('[data-streamdown="code-block-actions"] button')&&D.toast.success("Copied to clipboard")},children:(0,b.jsxs)("div",{className:"mx-auto max-w-2xl py-6 space-y-4 min-w-0",children:[af&&cd&&!aH&&(0,b.jsx)("div",{className:"flex justify-center py-2",children:(0,b.jsx)("button",{onClick:()=>cc(),className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:"Load earlier messages"})}),aH&&(0,b.jsx)("div",{className:"flex justify-center py-2",children:(0,b.jsx)(p.Loader2,{className:"size-4 animate-spin text-muted-foreground"})}),0===ah.length&&!ax&&(l=t.find(a=>a.id===ab),m=l?.created_at&&bl-new Date(l.created_at).getTime()<3e5,n=(v[ab]??0)>0,m&&n&&"default"===V?(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center py-20 gap-3 animate-[fade-up_400ms_ease-out_both]",children:[(0,b.jsxs)("div",{className:"relative animate-bounce",children:[(0,b.jsx)(K.Mail,{className:"size-8 text-primary"}),(0,b.jsxs)("span",{className:"absolute -top-1 -right-1 flex size-3",children:[(0,b.jsx)("span",{className:"animate-ping absolute inline-flex size-full rounded-full bg-primary/60"}),(0,b.jsx)("span",{className:"relative inline-flex size-3 rounded-full bg-primary"})]})]}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground text-center max-w-xs",children:"Your agent is sending you a welcome email."}),(0,b.jsx)("p",{className:"text-xs text-muted-foreground/60 text-center max-w-xs",children:"Wait for the email task in the top-left to complete, then check your inbox. Or send a message below to start chatting."})]}):(0,b.jsx)("p",{className:"text-center text-muted-foreground py-20 text-sm",children:"Send a message to start chatting with the agent."})),bJ.map(a=>{if("nap"===a.kind)return(0,b.jsx)(at,{agentName:b5},a.data.id);if("artifact"===a.kind)return(0,b.jsx)(au,{artifact:a.data,version:bE.get(a.data.id)??1,hasDuplicates:bF.has(a.data.filename),onClick:bK},`artifact-${a.data.id}`);let c=a.data;return(0,b.jsx)(al,{msg:c,agents:t,artifacts:aJ,activeTask:ax,taskMessages:az,connectionLost:aD,isLastMessage:ah.length>0&&ah[ah.length-1].id===c.id,stepCount:c.task_id?bj[c.task_id]??0:0,targetConvId:ae,workspaceId:r,conversationType:af?.type,pendingFilesByMessage:bm,onArtifactClick:bK,onEmailClick:a=>{aU(a),aS(!0)},onIssueClick:a=>cx(a),onRetry:cv,mentionComponents:ao,isFlagged:bs.has(c.id),onToggleFlag:"assistant"===c.role?cw:void 0},c.id)}),ax&&ax.conversation_id===af?.id&&!["completed","failed","cancelled","superseded"].includes(ax.status)&&(0,b.jsx)(w,{task:ax,messages:az,connectionLost:aD})]})}),(0,b.jsx)(_.ScrollToBottomButton,{scrollRef:bM})]}),af&&(0,b.jsx)($,{bufferedMessages:a9,onDelete:a=>{ba(b=>b.filter(b=>b.id!==a)),(0,x.deleteBufferedMessage)(af.id,a,r).catch(()=>{ba(a9),D.toast.error("Failed to delete follow-up")})}}),(0,b.jsx)("div",{className:"px-3 md:px-5 py-3",children:(0,b.jsx)("div",{className:"mx-auto max-w-2xl relative",children:(0,b.jsxs)("div",{className:(0,i.cn)("relative flex flex-col rounded-xl border bg-background/60 transition-colors duration-200","focus-within:border-ring focus-within:ring-3 focus-within:ring-ring/50",am&&"opacity-50",cl&&"border-ring ring-3 ring-ring/50"),onDragEnter:co,onDragLeave:cp,onDragOver:cq,onDrop:cr,children:[cl&&(0,b.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center rounded-xl bg-background/80 border-2 border-dashed border-ring pointer-events-none",children:(0,b.jsx)("p",{className:"text-sm text-muted-foreground font-medium",children:"Drop files here"})}),bo&&(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3.5 pt-2.5 pb-1 border-b border-border/50",children:[(0,b.jsxs)("div",{className:"flex-1 min-w-0 flex items-start gap-2",children:[(0,b.jsx)(L,{className:"size-3.5 shrink-0 mt-0.5 text-muted-foreground"}),(0,b.jsxs)("p",{className:"text-xs text-muted-foreground truncate",children:[bo.slice(0,120),bo.length>120?"...":""]})]}),(0,b.jsx)("button",{type:"button",onClick:()=>bp(null),className:"shrink-0 p-0.5 rounded-sm hover:bg-muted-foreground/20 transition-colors text-muted-foreground",children:(0,b.jsx)(P.X,{className:"size-3.5"})})]}),(0,b.jsx)(R,{isOpen:b0.isOpen,relatedAgents:b0.relatedAgents,otherAgents:b0.otherAgents,selectedIndex:b0.selectedIndex,onSelect:b0.selectAgent,anchorPos:b0.anchorPos}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsx)("div",{"aria-hidden":!0,className:"mention-backdrop absolute inset-0 px-3.5 py-2.5 text-base chat-input-line-height whitespace-pre-wrap wrap-break-word pointer-events-none overflow-y-auto thin-scrollbar",dangerouslySetInnerHTML:{__html:aj?T(aj.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">"),t).replace(/<mention[^>]*>/g,'<span class="mention-highlight">').replace(/<\/mention>/g,"</span>")+(aj.endsWith("\n")?"\n":""):""}}),(0,b.jsx)("textarea",{ref:b_,value:aj,onChange:a=>{ak(a.target.value),bc(a.target.selectionStart),requestAnimationFrame(()=>{let b=a.target.previousElementSibling;b&&(b.scrollTop=a.target.scrollTop)})},onKeyDown:a=>{!b0.handleMentionKeyDown(a)&&("Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),cu()))},onPaste:cs,onKeyUp:a=>bc(a.target.selectionStart),onClick:a=>bc(a.target.selectionStart),onSelect:a=>bc(a.target.selectionStart),onScroll:a=>{let b=a.target.previousElementSibling;b&&(b.scrollTop=a.target.scrollTop)},placeholder:cE?"Type a follow-up...":"Type a message...",rows:1,disabled:am,className:(0,i.cn)("relative field-sizing-content w-full resize-none bg-transparent px-3.5 py-2.5 text-base chat-input-line-height outline-none","placeholder:text-muted-foreground disabled:cursor-not-allowed","min-h-9.5 max-h-50 thin-scrollbar","caret-foreground textarea-text-hidden")})]}),a7.length>0&&(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5 px-3.5 pb-1",children:a7.map((a,c)=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-md bg-muted px-2 py-1 text-xs text-muted-foreground",children:[(0,b.jsx)(J.FileText,{className:"size-3 shrink-0"}),(0,b.jsx)("span",{className:"truncate max-w-30",children:a.name}),(0,b.jsx)("span",{className:"text-muted-foreground/60",children:(0,U.formatSize)(a.size)}),(0,b.jsx)("button",{type:"button",onClick:()=>ci(c),className:"ml-0.5 rounded-sm p-0.5 hover:bg-muted-foreground/20 transition-colors",children:(0,b.jsx)(P.X,{className:"size-3"})})]},`${a.name}-${c}`))}),(0,b.jsxs)("div",{className:"flex items-center justify-between px-2 pb-2 pt-0.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[!ae&&(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:a=>(0,b.jsx)("span",{...a,className:(0,i.cn)("inline-flex",a.className),children:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-sm",onClick:cD,disabled:cA||!af||!cC||cE,className:"rounded-lg text-muted-foreground/60 hover:text-foreground transition-colors duration-200",children:cA?(0,b.jsx)(p.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(H,{className:"size-3.5"})})})}),(0,b.jsx)(F.TooltipContent,{side:"top",children:cE?"Wait for the task to finish":cC?"Take a nap":`${b5} is well-rested and ready to go`})]}),(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsxs)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-sm",onClick:()=>{aQ("agent"),aM(!0)},className:"relative rounded-lg text-muted-foreground/60 hover:text-foreground transition-colors duration-200"}),children:[(0,b.jsx)(I,{className:"size-3.5"}),bD.length>0&&(0,b.jsx)("span",{className:"absolute -top-0.5 -right-0.5 flex size-3.5 items-center justify-center rounded-full bg-primary text-[9px] font-medium text-primary-foreground",children:bD.length})]}),(0,b.jsx)(F.TooltipContent,{side:"top",children:"Artifacts"})]})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("input",{ref:b$,type:"file",multiple:!0,className:"hidden",onChange:ch}),(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-sm",onPointerDown:a=>a.preventDefault(),onClick:()=>b$.current?.click(),disabled:am,className:"rounded-lg text-muted-foreground/60 hover:text-foreground transition-colors duration-200"}),children:(0,b.jsx)(N.Paperclip,{className:"size-3.5"})}),(0,b.jsx)(F.TooltipContent,{side:"top",children:"Attach files"})]}),bB&&(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-sm",onPointerDown:a=>a.preventDefault(),onClick:bC,disabled:am,className:(0,i.cn)("rounded-lg transition-colors duration-200",bA?"text-red-500 hover:text-red-600 bg-red-500/10":"text-muted-foreground/60 hover:text-foreground")}),children:(0,b.jsx)(M,{className:(0,i.cn)("size-3.5",bA&&"animate-pulse")})}),(0,b.jsx)(F.TooltipContent,{side:"top",children:bA?"Stop recording":"Voice input"})]}),!cE||aj.trim()||am?(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{size:"icon-sm",onClick:cu,disabled:!aj.trim()||am,className:(0,i.cn)("rounded-lg transition-opacity duration-200",!aj.trim()&&"opacity-40")}),children:am?(0,b.jsx)(p.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(G.ArrowUp,{className:"size-3.5"})}),(0,b.jsx)(F.TooltipContent,{side:"top",children:"Send"})]}):(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{size:"icon-sm",onClick:ct,disabled:ap,className:"rounded-lg bg-red-500/10 text-red-500 hover:bg-red-500/20 transition-colors duration-200"}),children:ap?(0,b.jsx)(p.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(O.Square,{className:"size-3.5 fill-current"})}),(0,b.jsx)(F.TooltipContent,{side:"top",children:"Stop task"})]})]})]})]})})}),(0,b.jsx)(U.ArtifactSheet,{open:aL,onOpenChange:a=>{aM(a),a||setTimeout(()=>{aO(null),aQ(null)},300)},artifacts:bG,workspaceId:r,initialArtifact:aN,versionMap:bH,duplicateFilenames:bI}),(0,b.jsx)(X,{open:aR,onOpenChange:a=>{aS(a),a||setTimeout(()=>aU(null),300)},emailId:aT,workspaceId:r}),(0,b.jsx)(Y.IssueSheet,{open:aV,onOpenChange:a=>{aW(a),a||setTimeout(()=>{aY(null),a$(null),a4(null)},300)},agents:t,issue:aZ?.issue??null,detail:aZ?{messages:aZ.messages,comments:aZ.comments,artifacts:aZ.artifacts,traceId:aZ.issue.trace_id}:null,detailLoading:a_,activeTask:a3,traceTasks:a1,slug:s,workspaceId:r,width:a5,onWidthChange:a6,onUpdate:async(a,b)=>{try{let c=await (0,x.updateIssue)(r,a,b);a$(d=>d&&d.issue.id===a?{...d,issue:{...d.issue,...b,updated_at:c.updated_at}}:d)}catch(a){D.toast.error(a instanceof Error?a.message:"Failed to update issue")}},onStatusChange:async(a,b)=>{try{await (0,x.updateIssue)(r,a,{status:b}),a$(c=>c&&c.issue.id===a?{...c,issue:{...c.issue,status:b}}:c)}catch(a){D.toast.error(a instanceof Error?a.message:"Failed to update status")}},onCommented:()=>{aX&&cx(aX)},onArtifactClick:bL})]}):(0,b.jsx)("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:"Failed to load conversation"})}}];
|
|
3
|
+
${a}`:a,c=[...bc];if(al(""),bd([]),bu(null),ao(!0),ay&&!["completed","failed","cancelled","superseded"].includes(ay.status)){let a=`temp-${Date.now()}`,d={id:a,conversation_id:ag.id,role:"user",content:b,task_id:null,attachment_ids:null,status:"buffered",created_at:new Date().toISOString()};bf(a=>[...a,d]);try{let{message:d}=await (0,x.createBufferedMessage)(ag.id,b,r,c.length>0?c:void 0);bf(b=>b.some(a=>a.id===d.id)?b.filter(b=>b.id!==a):b.map(b=>b.id===a?d:b))}catch(d){bf(b=>b.filter(b=>b.id!==a)),al(b),bd(c),D.toast.error(d instanceof Error?d.message:"Failed to queue follow-up")}finally{ao(!1)}return}let d=`temp-${Date.now()}`,e={id:d,conversation_id:ag.id,role:"user",content:b,task_id:null,attachment_ids:null,created_at:new Date().toISOString()};c.length>0&&bs(a=>{let b=new Map(a);return b.set(d,c),b}),aj(a=>[...a,e]),b6();try{let{message:a,task:f}=await (0,x.sendMessage)(ag.id,b,r,c.length>0?c:void 0);bs(a=>{if(!a.has(d))return a;let b=new Map(a);return b.delete(d),b}),aj(b=>b.map(b=>b.id===e.id?a:b)),a.attachment_ids&&a.attachment_ids.length>0&&(0,x.listArtifacts)(ag.id,r).then(a=>aL(a)).catch(()=>{}),az(f),aB([]),ck(f.id,ag.id)}catch(a){bs(a=>{if(!a.has(d))return a;let b=new Map(a);return b.delete(d),b}),aj(a=>a.filter(a=>a.id!==e.id)),al(b),bd(c),D.toast.error(a instanceof Error?a.message:"Failed to send message")}finally{ao(!1),b4.current?.focus()}},cA=(0,c.useCallback)(async()=>{if(!ay||!ag)return;let a=await (0,x.retryTask)(ay.id,r);az(a),aB([]),ck(a.id,ag.id)},[ay,ag,r,ck]),cB=(0,c.useCallback)(async a=>{let b=bz.current.has(a);by(c=>{let d=new Set(c);return b?d.delete(a):d.add(a),d}),b?(bB(),(0,x.unflagMessage)(r,a).then(()=>{bC()}).catch(()=>{by(b=>new Set(b).add(a)),bA()})):(bA(),(0,x.flagMessage)(r,a).then(()=>{bC()}).catch(()=>{by(b=>{let c=new Set(b);return c.delete(a),c}),bB()}))},[r,bA,bB,bC]),cC=(0,c.useCallback)(async a=>{a1(a),a_(!0),a5(!0),a7(null),a9(null);try{let b=await (0,x.getIssue)(r,a);a3(b),b.issue.latest_task_id&&(0,x.getTask)(b.issue.latest_task_id,r).then(a=>a9(a)).catch(()=>a9(null)),b.issue.trace_id&&(0,x.getTrace)(b.issue.trace_id,r).then(a=>a7(a.tasks)).catch(()=>a7(null))}catch(a){D.toast.error(a instanceof Error?a.message:"Failed to load issue"),a_(!1)}finally{a5(!1)}},[r]),cD=a2?.issue?.conversation_id??null,cE=a2?.issue?.latest_task_id??null;(0,c.useEffect)(()=>{if(a$&&a0)return Q(a=>{if("task.updated"===a.type&&cE&&a.taskId===cE&&(0,x.getTask)(cE,r).then(a=>a9(a)).catch(()=>{}),"conversation.message"===a.type&&cD&&a.conversationId===cD&&(a3(b=>!b||b.messages.some(b=>b.id===a.message.id)?b:{...b,messages:[...b.messages,a.message]}),"event"===a.message.role&&a.message.content.startsWith("Issue status changed:"))){let b=a.message.content.match(/-> (\w+)/);b&&a3(a=>a?{...a,issue:{...a.issue,status:b[1]}}:a)}"issue.comment"===a.type&&a.issueId===a0&&a3(b=>!b||b.comments.some(b=>b.id===a.comment.id)?b:{...b,comments:[...b.comments,a.comment]})})},[a$,a0,cD,cE,r,Q]);let[cF,cG]=(0,c.useState)(!1),cH=(0,c.useMemo)(()=>!!ag&&ai.some(a=>a.conversation_id===ag.id),[ag,ai]),cI=async()=>{if(ag&&cH&&!cF){cG(!0);try{bS.current&&(clearInterval(bS.current),bS.current=null);let a=await (0,x.createConversation)(ac,r,V);bn(b=>[...b,{agentName:ca,created_at:a.created_at,id:`nap-${ag.id}`}]),bj(a=>[{id:ag.id,created_at:ag.created_at},...a]),ah(a),az(null),aB([]),aL([]),bf([]),bd([]),bs(new Map),bV.current=0,aF(!1),aH(!1),b0.current=null,b6()}catch{D.toast.error("Failed to start new conversation")}finally{cG(!1)}}},cJ=!!ay&&!["completed","failed","cancelled","superseded"].includes(ay.status);return aC?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"flex-1 overflow-y-auto px-3 md:px-5",children:(0,b.jsxs)("div",{className:"mx-auto max-w-2xl py-6 space-y-4",children:[(0,b.jsx)("div",{className:"flex justify-end",children:(0,b.jsx)(E.Skeleton,{className:"h-10 w-48 rounded-lg"})}),(0,b.jsx)("div",{className:"flex justify-start",children:(0,b.jsxs)("div",{className:"space-y-2 px-1 py-1",children:[(0,b.jsx)(E.Skeleton,{className:"h-4 w-72"}),(0,b.jsx)(E.Skeleton,{className:"h-4 w-56"}),(0,b.jsx)(E.Skeleton,{className:"h-4 w-64"})]})}),(0,b.jsx)("div",{className:"flex justify-end",children:(0,b.jsx)(E.Skeleton,{className:"h-10 w-36 rounded-lg"})}),(0,b.jsx)("div",{className:"flex justify-start",children:(0,b.jsxs)("div",{className:"space-y-2 px-1 py-1",children:[(0,b.jsx)(E.Skeleton,{className:"h-4 w-64"}),(0,b.jsx)(E.Skeleton,{className:"h-4 w-48"})]})})]})}),(0,b.jsx)("div",{className:"px-3 md:px-5 py-3",children:(0,b.jsx)("div",{className:"mx-auto max-w-2xl",children:(0,b.jsx)(E.Skeleton,{className:"h-18 w-full rounded-xl"})})})]}):aC||ag||0!==ai.length?(0,b.jsxs)(b.Fragment,{children:[bv&&(0,b.jsxs)("button",{type:"button",className:"fixed z-50 flex items-center gap-1 px-2 py-1 rounded-md bg-popover border shadow-md text-xs text-popover-foreground hover:bg-accent transition-colors",style:{left:bv.x,top:bv.y,transform:"translate(-100%, -100%)"},onMouseDown:a=>a.preventDefault(),onClick:cp,children:[(0,b.jsx)(L,{className:"size-3"}),"Quote"]}),(0,b.jsxs)("div",{className:"relative flex-1 min-h-0",children:[(0,b.jsx)("div",{className:"h-full overflow-y-auto overflow-x-hidden px-3 md:px-5 thin-scrollbar",ref:bR,onScroll:cj,onClick:a=>{a.target.closest('[data-streamdown="code-block-actions"] button')&&D.toast.success("Copied to clipboard")},children:(0,b.jsxs)("div",{className:"mx-auto max-w-2xl py-6 space-y-4 min-w-0",children:[ag&&ci&&!aI&&(0,b.jsx)("div",{className:"flex justify-center py-2",children:(0,b.jsx)("button",{onClick:()=>ch(),className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:"Load earlier messages"})}),aI&&(0,b.jsx)("div",{className:"flex justify-center py-2",children:(0,b.jsx)(p.Loader2,{className:"size-4 animate-spin text-muted-foreground"})}),0===ai.length&&!ay&&(l=t.find(a=>a.id===ac),m=l?.created_at&&bq-new Date(l.created_at).getTime()<3e5,n=(v[ac]??0)>0,m&&n&&"default"===V?(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center py-20 gap-3 animate-[fade-up_400ms_ease-out_both]",children:[(0,b.jsxs)("div",{className:"relative animate-bounce",children:[(0,b.jsx)(K.Mail,{className:"size-8 text-primary"}),(0,b.jsxs)("span",{className:"absolute -top-1 -right-1 flex size-3",children:[(0,b.jsx)("span",{className:"animate-ping absolute inline-flex size-full rounded-full bg-primary/60"}),(0,b.jsx)("span",{className:"relative inline-flex size-3 rounded-full bg-primary"})]})]}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground text-center max-w-xs",children:"Your agent is sending you a welcome email."}),(0,b.jsx)("p",{className:"text-xs text-muted-foreground/60 text-center max-w-xs",children:"Wait for the email task in the top-left to complete, then check your inbox. Or send a message below to start chatting."})]}):(0,b.jsx)("p",{className:"text-center text-muted-foreground py-20 text-sm",children:"Send a message to start chatting with the agent."})),bO.map(a=>{if("nap"===a.kind)return(0,b.jsx)(au,{agentName:ca},a.data.id);if("artifact"===a.kind)return(0,b.jsx)(av,{artifact:a.data,version:bJ.get(a.data.id)??1,hasDuplicates:bK.has(a.data.filename),onClick:bP},`artifact-${a.data.id}`);let c=a.data;return(0,b.jsx)(am,{msg:c,agents:t,artifacts:aK,activeTask:ay,taskMessages:aA,connectionLost:aE,isLastMessage:ai.length>0&&ai[ai.length-1].id===c.id,stepCount:c.task_id?bo[c.task_id]??0:0,targetConvId:af,workspaceId:r,conversationType:ag?.type,pendingFilesByMessage:br,onArtifactClick:bP,onEmailClick:a=>{aV(a),aT(!0)},onCalendarEventClick:a=>{aZ(a),aX(!0)},onIssueClick:a=>cC(a),onRetry:cA,mentionComponents:ap,isFlagged:bx.has(c.id),onToggleFlag:"assistant"===c.role?cB:void 0},c.id)}),ay&&ay.conversation_id===ag?.id&&!["completed","failed","cancelled","superseded"].includes(ay.status)&&(0,b.jsx)(w,{task:ay,messages:aA,connectionLost:aE})]})}),(0,b.jsx)(ab.ScrollToBottomButton,{scrollRef:bR})]}),ag&&(0,b.jsx)(aa,{bufferedMessages:be,onDelete:a=>{bf(b=>b.filter(b=>b.id!==a)),(0,x.deleteBufferedMessage)(ag.id,a,r).catch(()=>{bf(be),D.toast.error("Failed to delete follow-up")})}}),(0,b.jsx)("div",{className:"px-3 md:px-5 py-3",children:(0,b.jsx)("div",{className:"mx-auto max-w-2xl relative",children:(0,b.jsxs)("div",{className:(0,i.cn)("relative flex flex-col rounded-xl border bg-background/60 transition-colors duration-200","focus-within:border-ring focus-within:ring-3 focus-within:ring-ring/50",an&&"opacity-50",cq&&"border-ring ring-3 ring-ring/50"),onDragEnter:ct,onDragLeave:cu,onDragOver:cv,onDrop:cw,children:[cq&&(0,b.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center rounded-xl bg-background/80 border-2 border-dashed border-ring pointer-events-none",children:(0,b.jsx)("p",{className:"text-sm text-muted-foreground font-medium",children:"Drop files here"})}),bt&&(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3.5 pt-2.5 pb-1 border-b border-border/50",children:[(0,b.jsxs)("div",{className:"flex-1 min-w-0 flex items-start gap-2",children:[(0,b.jsx)(L,{className:"size-3.5 shrink-0 mt-0.5 text-muted-foreground"}),(0,b.jsxs)("p",{className:"text-xs text-muted-foreground truncate",children:[bt.slice(0,120),bt.length>120?"...":""]})]}),(0,b.jsx)("button",{type:"button",onClick:()=>bu(null),className:"shrink-0 p-0.5 rounded-sm hover:bg-muted-foreground/20 transition-colors text-muted-foreground",children:(0,b.jsx)(P.X,{className:"size-3.5"})})]}),(0,b.jsx)(R,{isOpen:b5.isOpen,relatedAgents:b5.relatedAgents,otherAgents:b5.otherAgents,selectedIndex:b5.selectedIndex,onSelect:b5.selectAgent,anchorPos:b5.anchorPos}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsx)("div",{"aria-hidden":!0,className:"mention-backdrop absolute inset-0 px-3.5 py-2.5 text-base chat-input-line-height whitespace-pre-wrap wrap-break-word pointer-events-none overflow-y-auto thin-scrollbar",dangerouslySetInnerHTML:{__html:ak?T(ak.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">"),t).replace(/<mention[^>]*>/g,'<span class="mention-highlight">').replace(/<\/mention>/g,"</span>")+(ak.endsWith("\n")?"\n":""):""}}),(0,b.jsx)("textarea",{ref:b4,value:ak,onChange:a=>{al(a.target.value),bh(a.target.selectionStart),requestAnimationFrame(()=>{let b=a.target.previousElementSibling;b&&(b.scrollTop=a.target.scrollTop)})},onKeyDown:a=>{!b5.handleMentionKeyDown(a)&&("Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),cz()))},onPaste:cx,onKeyUp:a=>bh(a.target.selectionStart),onClick:a=>bh(a.target.selectionStart),onSelect:a=>bh(a.target.selectionStart),onScroll:a=>{let b=a.target.previousElementSibling;b&&(b.scrollTop=a.target.scrollTop)},placeholder:cJ?"Type a follow-up...":"Type a message...",rows:1,disabled:an,className:(0,i.cn)("relative field-sizing-content w-full resize-none bg-transparent px-3.5 py-2.5 text-base chat-input-line-height outline-none","placeholder:text-muted-foreground disabled:cursor-not-allowed","min-h-9.5 max-h-50 thin-scrollbar","caret-foreground textarea-text-hidden")})]}),bc.length>0&&(0,b.jsx)("div",{className:"flex flex-wrap gap-1.5 px-3.5 pb-1",children:bc.map((a,c)=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-md bg-muted px-2 py-1 text-xs text-muted-foreground",children:[(0,b.jsx)(J.FileText,{className:"size-3 shrink-0"}),(0,b.jsx)("span",{className:"truncate max-w-30",children:a.name}),(0,b.jsx)("span",{className:"text-muted-foreground/60",children:(0,U.formatSize)(a.size)}),(0,b.jsx)("button",{type:"button",onClick:()=>cn(c),className:"ml-0.5 rounded-sm p-0.5 hover:bg-muted-foreground/20 transition-colors",children:(0,b.jsx)(P.X,{className:"size-3"})})]},`${a.name}-${c}`))}),(0,b.jsxs)("div",{className:"flex items-center justify-between px-2 pb-2 pt-0.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[!af&&(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:a=>(0,b.jsx)("span",{...a,className:(0,i.cn)("inline-flex",a.className),children:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-sm",onClick:cI,disabled:cF||!ag||!cH||cJ,className:"rounded-lg text-muted-foreground/60 hover:text-foreground transition-colors duration-200",children:cF?(0,b.jsx)(p.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(H,{className:"size-3.5"})})})}),(0,b.jsx)(F.TooltipContent,{side:"top",children:cJ?"Wait for the task to finish":cH?"Take a nap":`${ca} is well-rested and ready to go`})]}),(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsxs)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-sm",onClick:()=>{aR("agent"),aN(!0)},className:"relative rounded-lg text-muted-foreground/60 hover:text-foreground transition-colors duration-200"}),children:[(0,b.jsx)(I,{className:"size-3.5"}),bI.length>0&&(0,b.jsx)("span",{className:"absolute -top-0.5 -right-0.5 flex size-3.5 items-center justify-center rounded-full bg-primary text-[9px] font-medium text-primary-foreground",children:bI.length})]}),(0,b.jsx)(F.TooltipContent,{side:"top",children:"Artifacts"})]})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("input",{ref:b3,type:"file",multiple:!0,className:"hidden",onChange:cm}),(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-sm",onPointerDown:a=>a.preventDefault(),onClick:()=>b3.current?.click(),disabled:an,className:"rounded-lg text-muted-foreground/60 hover:text-foreground transition-colors duration-200"}),children:(0,b.jsx)(N.Paperclip,{className:"size-3.5"})}),(0,b.jsx)(F.TooltipContent,{side:"top",children:"Attach files"})]}),bG&&(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{variant:"ghost",size:"icon-sm",onPointerDown:a=>a.preventDefault(),onClick:bH,disabled:an,className:(0,i.cn)("rounded-lg transition-colors duration-200",bF?"text-red-500 hover:text-red-600 bg-red-500/10":"text-muted-foreground/60 hover:text-foreground")}),children:(0,b.jsx)(M,{className:(0,i.cn)("size-3.5",bF&&"animate-pulse")})}),(0,b.jsx)(F.TooltipContent,{side:"top",children:bF?"Stop recording":"Voice input"})]}),!cJ||ak.trim()||an?(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{size:"icon-sm",onClick:cz,disabled:!ak.trim()||an,className:(0,i.cn)("rounded-lg transition-opacity duration-200",!ak.trim()&&"opacity-40")}),children:an?(0,b.jsx)(p.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(G.ArrowUp,{className:"size-3.5"})}),(0,b.jsx)(F.TooltipContent,{side:"top",children:"Send"})]}):(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{render:(0,b.jsx)(g.Button,{size:"icon-sm",onClick:cy,disabled:aq,className:"rounded-lg bg-red-500/10 text-red-500 hover:bg-red-500/20 transition-colors duration-200"}),children:aq?(0,b.jsx)(p.Loader2,{className:"size-3.5 animate-spin"}):(0,b.jsx)(O.Square,{className:"size-3.5 fill-current"})}),(0,b.jsx)(F.TooltipContent,{side:"top",children:"Stop task"})]})]})]})]})})}),(0,b.jsx)(U.ArtifactSheet,{open:aM,onOpenChange:a=>{aN(a),a||setTimeout(()=>{aP(null),aR(null)},300)},artifacts:bL,workspaceId:r,initialArtifact:aO,versionMap:bM,duplicateFilenames:bN}),(0,b.jsx)(X,{open:aS,onOpenChange:a=>{aT(a),a||setTimeout(()=>aV(null),300)},emailId:aU,workspaceId:r}),(0,b.jsx)(Z,{open:aW,onOpenChange:a=>{aX(a),a||setTimeout(()=>aZ(null),300)},calendarEventId:aY,workspaceId:r}),(0,b.jsx)($.IssueSheet,{open:a$,onOpenChange:a=>{a_(a),a||setTimeout(()=>{a1(null),a3(null),a9(null)},300)},agents:t,issue:a2?.issue??null,detail:a2?{messages:a2.messages,comments:a2.comments,artifacts:a2.artifacts,traceId:a2.issue.trace_id}:null,detailLoading:a4,activeTask:a8,traceTasks:a6,slug:s,workspaceId:r,width:ba,onWidthChange:bb,onUpdate:async(a,b)=>{try{let c=await (0,x.updateIssue)(r,a,b);a3(d=>d&&d.issue.id===a?{...d,issue:{...d.issue,...b,updated_at:c.updated_at}}:d)}catch(a){D.toast.error(a instanceof Error?a.message:"Failed to update issue")}},onStatusChange:async(a,b)=>{try{await (0,x.updateIssue)(r,a,{status:b}),a3(c=>c&&c.issue.id===a?{...c,issue:{...c.issue,status:b}}:c)}catch(a){D.toast.error(a instanceof Error?a.message:"Failed to update status")}},onCommented:()=>{a0&&cC(a0)},onArtifactClick:bQ})]}):(0,b.jsx)("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:"Failed to load conversation"})}}];
|
|
4
4
|
|
|
5
5
|
//# sourceMappingURL=src_web_src_0~23g-y._.js.map
|