orcasynth 1.4.3 → 1.4.5
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/dist/advisor/mcpConfig.js +28 -0
- package/dist/advisor/service.js +74 -0
- package/dist/api/server.js +73 -1
- package/dist/cli/commands.js +26 -0
- package/dist/cli/index.js +9 -2
- package/dist/daemon/bootstrap.js +14 -1
- package/dist/mcp/server.js +34 -0
- package/dist/mcp/tools.js +17 -0
- package/dist/overseer/sessionInfo.js +7 -1
- package/dist/prompts/advisor.md +13 -0
- package/dist/shared/apiClient.js +23 -0
- package/dist/store/db.js +4 -0
- package/dist/store/schema.sql +3 -1
- package/dist/store/userStore.js +26 -1
- package/dist/tmux/driver.js +8 -0
- package/dist/tmux/fakeDriver.js +9 -0
- package/package.json +4 -2
- package/prompts/advisor.md +13 -0
- package/web-dist/.next/BUILD_ID +1 -1
- package/web-dist/.next/build-manifest.json +3 -3
- package/web-dist/.next/server/app/_global-error.html +1 -1
- package/web-dist/.next/server/app/_global-error.rsc +1 -1
- package/web-dist/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web-dist/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web-dist/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web-dist/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web-dist/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web-dist/.next/server/app/_not-found/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/_not-found.html +1 -1
- package/web-dist/.next/server/app/_not-found.rsc +11 -11
- package/web-dist/.next/server/app/_not-found.segments/_full.segment.rsc +11 -11
- package/web-dist/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/_not-found.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/web-dist/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/web-dist/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/account/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/account/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/account/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/account.html +1 -1
- package/web-dist/.next/server/app/account.rsc +13 -13
- package/web-dist/.next/server/app/account.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/account.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/account.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/account.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/account.segments/account/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/account.segments/account.segment.rsc +3 -3
- package/web-dist/.next/server/app/dash/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/dash/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/dash/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/dash.html +1 -1
- package/web-dist/.next/server/app/dash.rsc +13 -13
- package/web-dist/.next/server/app/dash.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/dash.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/dash.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/dash.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/dash.segments/dash/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/dash.segments/dash.segment.rsc +3 -3
- package/web-dist/.next/server/app/escalations/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/escalations/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/escalations/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/escalations.html +1 -1
- package/web-dist/.next/server/app/escalations.rsc +13 -13
- package/web-dist/.next/server/app/escalations.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/escalations.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/escalations.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/escalations.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/escalations.segments/escalations/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/escalations.segments/escalations.segment.rsc +3 -3
- package/web-dist/.next/server/app/index.html +1 -1
- package/web-dist/.next/server/app/index.rsc +13 -13
- package/web-dist/.next/server/app/index.segments/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/index.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/index.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/index.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/kanban/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/kanban/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/kanban/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/kanban.html +1 -1
- package/web-dist/.next/server/app/kanban.rsc +13 -13
- package/web-dist/.next/server/app/kanban.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/kanban.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/kanban.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/kanban.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/kanban.segments/kanban/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/kanban.segments/kanban.segment.rsc +3 -3
- package/web-dist/.next/server/app/onboarding/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/onboarding/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/onboarding.html +1 -1
- package/web-dist/.next/server/app/onboarding.rsc +13 -13
- package/web-dist/.next/server/app/onboarding.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/onboarding.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/onboarding.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/onboarding.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/onboarding.segments/onboarding.segment.rsc +3 -3
- package/web-dist/.next/server/app/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/projects/page/react-loadable-manifest.json +8 -0
- package/web-dist/.next/server/app/projects/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/projects.html +1 -1
- package/web-dist/.next/server/app/projects.rsc +13 -13
- package/web-dist/.next/server/app/projects.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/projects.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/projects.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/projects.segments/projects.segment.rsc +3 -3
- package/web-dist/.next/server/app/sessions/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/sessions/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/sessions.html +1 -1
- package/web-dist/.next/server/app/sessions.rsc +13 -13
- package/web-dist/.next/server/app/sessions.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/sessions.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/sessions.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/sessions.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/sessions.segments/sessions/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/sessions.segments/sessions.segment.rsc +3 -3
- package/web-dist/.next/server/app/settings/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/settings/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/settings.html +1 -1
- package/web-dist/.next/server/app/settings.rsc +13 -13
- package/web-dist/.next/server/app/settings.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/settings.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/settings.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/settings.segments/settings.segment.rsc +3 -3
- package/web-dist/.next/server/app/tasks/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/tasks/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/tasks/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/tasks.html +1 -1
- package/web-dist/.next/server/app/tasks.rsc +13 -13
- package/web-dist/.next/server/app/tasks.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/tasks.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/tasks.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/tasks.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/tasks.segments/tasks/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/tasks.segments/tasks.segment.rsc +3 -3
- package/web-dist/.next/server/app/timeline/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/timeline/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/timeline/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/timeline.html +1 -1
- package/web-dist/.next/server/app/timeline.rsc +13 -13
- package/web-dist/.next/server/app/timeline.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/timeline.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/timeline.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/timeline.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/timeline.segments/timeline/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/timeline.segments/timeline.segment.rsc +3 -3
- package/web-dist/.next/server/app/users/page/react-loadable-manifest.json +10 -1
- package/web-dist/.next/server/app/users/page.js.nft.json +1 -1
- package/web-dist/.next/server/app/users/page_client-reference-manifest.js +1 -1
- package/web-dist/.next/server/app/users.html +1 -1
- package/web-dist/.next/server/app/users.rsc +13 -13
- package/web-dist/.next/server/app/users.segments/_full.segment.rsc +13 -13
- package/web-dist/.next/server/app/users.segments/_head.segment.rsc +4 -4
- package/web-dist/.next/server/app/users.segments/_index.segment.rsc +6 -6
- package/web-dist/.next/server/app/users.segments/_tree.segment.rsc +2 -2
- package/web-dist/.next/server/app/users.segments/users/__PAGE__.segment.rsc +4 -4
- package/web-dist/.next/server/app/users.segments/users.segment.rsc +3 -3
- package/web-dist/.next/server/chunks/ssr/[root-of-the-server]__0yfatub._.js +3 -0
- package/web-dist/.next/server/chunks/ssr/_01rh28z._.js +3 -0
- package/web-dist/.next/server/chunks/ssr/_057a06r._.js +1 -1
- package/web-dist/.next/server/chunks/ssr/_081ml1k._.js +3 -0
- package/web-dist/.next/server/chunks/ssr/_0afhsmf._.js +3 -0
- package/web-dist/.next/server/chunks/ssr/{_1zscr7t._.js → _0m2j9hu._.js} +2 -2
- package/web-dist/.next/server/chunks/ssr/_0tzourm._.js +1 -1
- package/web-dist/.next/server/chunks/ssr/_0ysqykx._.js +3 -0
- package/web-dist/.next/server/chunks/ssr/_10ak-sh._.js +3 -0
- package/web-dist/.next/server/chunks/ssr/_13rgpyg._.js +3 -0
- package/web-dist/.next/server/chunks/ssr/_1fp8enw._.js +3 -0
- package/web-dist/.next/server/chunks/ssr/_1std18n._.js +3 -0
- package/web-dist/.next/server/chunks/ssr/_1zd7t3t._.js +3 -0
- package/web-dist/.next/server/chunks/ssr/app_tasks_page_tsx_1p6mxbw._.js +1 -1
- package/web-dist/.next/server/chunks/ssr/components_shell_Shell_tsx_1e5c27h._.js +1 -1
- package/web-dist/.next/server/chunks/ssr/{node_modules_0h91jdk._.js → node_modules_next_dist_client_components_0bew68i._.js} +2 -2
- package/web-dist/.next/server/middleware-build-manifest.js +3 -3
- package/web-dist/.next/server/pages/404.html +1 -1
- package/web-dist/.next/server/pages/500.html +1 -1
- package/web-dist/.next/static/chunks/09gkeu3bc4xo0.js +1 -0
- package/web-dist/.next/static/chunks/0c6iuw5yay1w0.js +1 -0
- package/web-dist/.next/static/chunks/0ccjus_sicyov.js +1 -0
- package/web-dist/.next/static/chunks/0gor0_p3jg67f.js +1 -0
- package/web-dist/.next/static/chunks/0kd16q0244sp5.js +1 -0
- package/web-dist/.next/static/chunks/0x0pwu4mealh1.js +1 -0
- package/web-dist/.next/static/chunks/0yg3wh0jczxoa.js +1 -0
- package/web-dist/.next/static/chunks/0zms_--zk-t3b.js +1 -0
- package/web-dist/.next/static/chunks/{18zkogw4aykzc.js → 14mmxdnhdicgy.js} +1 -1
- package/web-dist/.next/static/chunks/1bgv4d9v71ij7.js +1 -0
- package/web-dist/.next/static/chunks/1j2hh1hlkxrip.js +1 -0
- package/web-dist/.next/static/chunks/2c16uuyhfnhr9.js +1 -0
- package/web-dist/.next/static/chunks/2g_lldfaqo8bq.js +1 -0
- package/web-dist/.next/static/chunks/{3saus_snl5ri7.js → 2gak7jay2im1l.js} +1 -1
- package/web-dist/.next/static/chunks/2z02etl-1qi3g.js +1 -0
- package/web-dist/.next/static/chunks/2zutw3iy49kee.js +1 -0
- package/web-dist/.next/static/chunks/33tqcj2ra3wol.js +1 -0
- package/web-dist/.next/static/chunks/34b41uiwytome.css +2 -0
- package/web-dist/.next/static/chunks/3uf01y_a4cq8y.js +1 -0
- package/web-dist/.next/server/chunks/ssr/[root-of-the-server]__0i_7o4p._.js +0 -3
- package/web-dist/.next/server/chunks/ssr/_085pshu._.js +0 -3
- package/web-dist/.next/server/chunks/ssr/_0j9ppt0._.js +0 -3
- package/web-dist/.next/server/chunks/ssr/_0tc9z5_._.js +0 -3
- package/web-dist/.next/server/chunks/ssr/_12jhzvy._.js +0 -3
- package/web-dist/.next/server/chunks/ssr/_136wthy._.js +0 -3
- package/web-dist/.next/server/chunks/ssr/_193-v_i._.js +0 -3
- package/web-dist/.next/server/chunks/ssr/_1heytlk._.js +0 -3
- package/web-dist/.next/server/chunks/ssr/_1kom56q._.js +0 -3
- package/web-dist/.next/server/chunks/ssr/_1mjzb9s._.js +0 -3
- package/web-dist/.next/static/chunks/0l1t1fcd-_jj9.js +0 -1
- package/web-dist/.next/static/chunks/186xbnkxm5iu3.js +0 -1
- package/web-dist/.next/static/chunks/1c_1_ca4-vgc7.js +0 -1
- package/web-dist/.next/static/chunks/1f5f3qgbcjv4u.js +0 -1
- package/web-dist/.next/static/chunks/1t-dast4rat3s.css +0 -2
- package/web-dist/.next/static/chunks/1wsag7zex3h4_.js +0 -1
- package/web-dist/.next/static/chunks/24unfsl4do--1.js +0 -1
- package/web-dist/.next/static/chunks/2bfjq22q8xyfs.js +0 -1
- package/web-dist/.next/static/chunks/2kuzf7llj_291.js +0 -1
- package/web-dist/.next/static/chunks/34bew8owm40fg.js +0 -1
- package/web-dist/.next/static/chunks/3a7pgnw_6io2v.js +0 -1
- package/web-dist/.next/static/chunks/3fqd824e6lt4z.js +0 -1
- package/web-dist/.next/static/chunks/3k-swqzkcvlzm.js +0 -1
- package/web-dist/.next/static/chunks/3vmuunta80huz.js +0 -1
- /package/web-dist/.next/static/{-qI9ABgqZPR_Ri56jzVI5 → Vc91G_QEn5enhyqIYkLiV}/_buildManifest.js +0 -0
- /package/web-dist/.next/static/{-qI9ABgqZPR_Ri56jzVI5 → Vc91G_QEn5enhyqIYkLiV}/_clientMiddlewareManifest.js +0 -0
- /package/web-dist/.next/static/{-qI9ABgqZPR_Ri56jzVI5 → Vc91G_QEn5enhyqIYkLiV}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[97222,a=>{"use strict";var b=a.i(87924);a.s(["ModuleHeader",0,function({title:a,count:c,icon:d,children:e}){return(0,b.jsxs)("div",{className:"z-20 -mx-4 -mt-4 mb-5 flex flex-col gap-2 border-b border-border bg-bg px-4 py-3 md:sticky md:top-0 md:flex-row md:flex-wrap md:items-center md:gap-x-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[d?(0,b.jsx)(d,{size:16,className:"shrink-0 text-text-muted","aria-hidden":!0}):null,(0,b.jsx)("h1",{className:"text-base font-semibold tracking-tight text-text",children:a}),void 0!==c?(0,b.jsx)("span",{className:"rounded-full bg-elevated px-2 py-0.5 font-mono text-[11px] text-text-muted",children:c}):null]}),e?(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-2 md:ml-auto",children:e}):null]})}])},70777,a=>{"use strict";var b=a.i(87924);a.s(["ModuleShell",0,function({moduleId:a,children:c}){return(0,b.jsx)("section",{"data-module":a,className:"module-root flex flex-col gap-4",children:c})}])},9173,a=>{"use strict";var b=a.i(87924),c=a.i(12466);a.i(28130);var d=a.i(29457);a.s(["EmptyState",0,function({title:a,description:c,icon:d,action:e}){return(0,b.jsxs)("div",{className:"flex animate-fade-up flex-col items-center justify-center gap-3 py-14 text-center",children:[d?(0,b.jsx)(d,{size:28,strokeWidth:1.25,className:"text-text-muted/40","aria-hidden":!0}):null,(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)("p",{className:"text-sm uppercase tracking-wide text-text",children:a}),c&&(0,b.jsx)("p",{className:"text-xs text-text-muted",children:c})]}),e]})},"ErrorState",0,function({message:a,onRetry:e}){let{t:f}=(0,d.useTranslation)();return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center gap-2 py-12 text-center",children:[(0,b.jsx)("p",{className:"text-sm text-accent",children:a}),e&&(0,b.jsx)(c.Button,{onClick:e,children:f.common.retry})]})},"LoadingState",0,function({label:a,variant:c="list"}){let{t:e}=(0,d.useTranslation)();return a?(0,b.jsx)("div",{className:"flex items-center justify-center py-12 font-mono text-xs text-text-muted animate-pulse",children:a}):"cards"===c?(0,b.jsx)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4,5].map(a=>(0,b.jsxs)("div",{className:"flex flex-col gap-2.5 rounded-lg border border-border bg-surface p-3",style:{boxShadow:"var(--shadow-card)"},children:[(0,b.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,b.jsx)("div",{className:"skeleton h-9 w-9 rounded-lg"}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col gap-1.5",children:[(0,b.jsx)("div",{className:"skeleton h-3.5 w-2/3 rounded"}),(0,b.jsx)("div",{className:"skeleton h-3 w-1/3 rounded"})]})]}),(0,b.jsx)("div",{className:"skeleton h-6 w-full rounded-md"})]},a))}):"kanban"===c?(0,b.jsx)("div",{className:"flex gap-3 overflow-hidden","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4].map(a=>(0,b.jsxs)("div",{className:"flex min-w-[14rem] flex-1 flex-col gap-2 rounded-lg border border-border bg-surface p-2",children:[(0,b.jsx)("div",{className:"skeleton h-3 w-20 rounded"}),[0,1,2].map(a=>(0,b.jsx)("div",{className:"skeleton h-12 w-full rounded-md"},a))]},a))}):(0,b.jsx)("div",{className:"flex flex-col gap-2.5 py-2","aria-busy":"true","aria-label":e.common.loading,children:[88,72,80,64].map((a,c)=>(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("div",{className:"skeleton h-4 w-4 rounded-md"}),(0,b.jsx)("div",{className:"skeleton h-3.5 rounded",style:{width:`${a}%`}})]},c))})}])},34048,a=>{"use strict";var b=a.i(87924);let c={default:"border-border bg-elevated text-text-muted",accent:"border-accent/40 bg-accent/10 text-accent",muted:"border-border bg-elevated text-text-muted",danger:"border-danger/40 bg-danger/10 text-danger",success:"border-success/40 bg-success/10 text-success",warning:"border-warning/40 bg-warning/10 text-warning"};a.s(["Badge",0,function({children:a,tone:d="default"}){return(0,b.jsx)("span",{className:`inline-flex items-center rounded-md border px-2 py-0.5 font-mono text-[11px] font-medium ${c[d]}`,children:a})}])},4416,a=>{"use strict";let b=(0,a.i(70106).default)("ShieldCheck",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);a.s(["ShieldCheck",0,b],4416)},14548,a=>{"use strict";let b=(0,a.i(70106).default)("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);a.s(["Save",0,b],14548)},33441,a=>{"use strict";let b=(0,a.i(70106).default)("Check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);a.s(["Check",0,b],33441)},37047,74803,a=>{"use strict";let b=(0,a.i(70106).default)("KeyRound",[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]);a.s(["KeyRound",0,b],37047);var c=a.i(87924);a.s(["SettingCard",0,function({title:a,description:b,icon:d,children:e}){return(0,c.jsxs)("div",{className:"card-interactive flex flex-col gap-3.5 rounded-lg border border-border bg-surface p-5",children:[(0,c.jsxs)("div",{className:"flex items-start gap-3",children:[d?(0,c.jsx)(d,{size:16,className:"mt-0.5 text-text-muted","aria-hidden":!0}):null,(0,c.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,c.jsx)("span",{className:"text-sm font-medium text-text",children:a}),b?(0,c.jsx)("span",{className:"font-mono text-xs text-text-muted",children:b}):null]})]}),(0,c.jsx)("div",{children:e})]})}],74803)},45412,a=>{"use strict";var b=a.i(87924),c=a.i(70777),d=a.i(72131),e=a.i(70106);let f=(0,e.default)("UserCog",[["circle",{cx:"18",cy:"15",r:"3",key:"gjjjvw"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M10 15H6a4 4 0 0 0-4 4v2",key:"1nfge6"}],["path",{d:"m21.7 16.4-.9-.3",key:"12j9ji"}],["path",{d:"m15.2 13.9-.9-.3",key:"1fdjdi"}],["path",{d:"m16.6 18.7.3-.9",key:"heedtr"}],["path",{d:"m19.1 12.2.3-.9",key:"1af3ki"}],["path",{d:"m19.6 18.7-.4-1",key:"1x9vze"}],["path",{d:"m16.8 12.3-.4-1",key:"vqeiwj"}],["path",{d:"m14.3 16.6 1-.4",key:"1qlj63"}],["path",{d:"m20.7 13.8 1-.4",key:"1v5t8k"}]]),g=(0,e.default)("Mail",[["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}],["path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7",key:"1ocrg3"}]]);var h=a.i(94392);let i=(0,e.default)("Upload",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"17 8 12 3 7 8",key:"t8dd8p"}],["line",{x1:"12",x2:"12",y1:"3",y2:"15",key:"widbto"}]]);var j=a.i(4416),k=a.i(14548),l=a.i(33441),m=a.i(46842),n=a.i(37047),o=a.i(76645),p=a.i(18517),q=a.i(68522),r=a.i(14800),s=a.i(7947),t=a.i(34048),u=a.i(12466),v=a.i(18180),w=a.i(74803),x=a.i(97222),y=a.i(9173),z=a.i(89697);a.i(28130);var A=a.i(29457);function B(){let a=(0,o.useMe)(),{data:c}=(0,o.useConfig)(),e=(0,p.useUpdateMe)(),B=(0,p.useUploadAvatar)(),C=(0,p.useChangePassword)(),{toast:D}=(0,z.useToast)(),{t:E}=(0,A.useTranslation)(),F=(0,d.useRef)(null),[G,H]=(0,d.useState)(""),[I,J]=(0,d.useState)(""),[K,L]=(0,d.useState)(""),[M,N]=(0,d.useState)(""),[O,P]=(0,d.useState)(""),[Q,R]=(0,d.useState)("");if((0,d.useEffect)(()=>{a.data?.user&&(H(a.data.user.name),J(a.data.user.email),L(a.data.user.default_exec))},[a.data]),a.isLoading||!a.data?.user)return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(x.ModuleHeader,{title:E.account.title,icon:f}),(0,b.jsx)(y.LoadingState,{})]});let S=a.data.user,T=c?.customModels??[],U=S.allowed_execs.length>0,V=U?S.allowed_execs:c?.allowedExecs??[],W=a=>(0,q.allModels)(T).find(b=>b.exec===a)?.label??a,X=M.length>0&&O.length>=8&&O===Q;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(x.ModuleHeader,{title:E.account.title,icon:f,children:(0,b.jsx)(u.Button,{variant:"accent",icon:k.Save,onClick:()=>e.mutate({name:G.trim(),email:I.trim(),default_exec:K},{onSuccess:()=>D(E.account.saved),onError:a=>D(String(a)||E.account.saveError,"error")}),disabled:e.isPending,children:E.account.save})}),(0,b.jsxs)("div",{className:"flex flex-col gap-6 lg:flex-row lg:items-start",children:[(0,b.jsxs)("div",{className:"flex shrink-0 flex-col gap-2 lg:w-72",children:[(0,b.jsxs)("span",{className:"flex items-center gap-2 text-sm font-medium text-text",children:[(0,b.jsx)(h.Cpu,{size:16,className:"text-text-muted","aria-hidden":!0}),E.account.defaultModel]}),(0,b.jsx)("p",{className:"text-xs text-text-muted",children:U?E.account.restrictedHint:E.account.defaultModelHint}),0===V.length?(0,b.jsx)("p",{className:"mt-1 text-xs italic text-text-muted",children:E.account.noModelLimit}):(0,b.jsx)("div",{role:"radiogroup",className:"mt-1 flex flex-col gap-2",children:V.map(a=>{let c=K===a;return(0,b.jsxs)("button",{type:"button",role:"radio","aria-checked":c,"aria-label":W(a),onClick:()=>L(c?"":a),className:`group flex items-center gap-3 rounded-lg border p-3 text-left transition-colors ${c?"border-accent bg-accent/10":"border-border bg-surface hover:bg-elevated"}`,style:{transitionDuration:"var(--motion-fast)"},children:[(0,b.jsx)("span",{className:"flex h-11 w-11 shrink-0 items-center justify-center rounded-lg border border-border bg-elevated",children:(0,b.jsx)(s.ModelIcon,{name:a,size:28})}),(0,b.jsxs)("span",{className:"flex min-w-0 flex-col",children:[(0,b.jsx)("span",{className:"truncate text-sm font-medium text-text",children:W(a)}),(0,b.jsx)("span",{className:"truncate font-mono text-tiny text-text-muted",children:a})]}),c?(0,b.jsx)(l.Check,{size:16,className:"ml-auto shrink-0 text-accent","aria-hidden":!0}):null]},a)})})]}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-4",children:[(0,b.jsxs)("div",{className:"flex items-center gap-4 rounded-lg border border-border bg-surface p-5",children:[(0,b.jsx)(r.Avatar,{user:S,size:72}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1",children:[(0,b.jsxs)("span",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"truncate text-lg font-semibold text-text",children:S.name||S.username}),S.is_admin?(0,b.jsxs)(t.Badge,{tone:"accent",children:[(0,b.jsx)(j.ShieldCheck,{size:11,className:"mr-1","aria-hidden":!0}),E.users.admin]}):null]}),(0,b.jsxs)("span",{className:"truncate font-mono text-xs text-text-muted",children:["@",S.username]})]}),(0,b.jsx)("input",{ref:F,type:"file",accept:"image/png,image/jpeg,image/webp,image/gif",className:"hidden",onChange:a=>{let b=a.target.files?.[0];b&&B.mutate(b,{onSuccess:()=>D(E.account.avatarSaved),onError:a=>D(String(a)||E.account.saveError,"error")}),a.target.value=""}}),(0,b.jsx)(u.Button,{variant:"ghost",icon:i,onClick:()=>F.current?.click(),disabled:B.isPending,children:E.account.uploadAvatar})]}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-4 sm:grid-cols-2",children:[(0,b.jsx)(w.SettingCard,{title:E.account.name,icon:m.User,children:(0,b.jsx)(v.Input,{value:G,onChange:a=>H(a.target.value)})}),(0,b.jsx)(w.SettingCard,{title:E.account.email,icon:g,children:(0,b.jsx)(v.Input,{type:"email",value:I,onChange:a=>J(a.target.value)})})]}),(0,b.jsxs)(w.SettingCard,{title:E.account.password,icon:n.KeyRound,children:[(0,b.jsx)("p",{className:"mb-3 text-xs text-text-muted",children:E.account.passwordHint}),(0,b.jsxs)("form",{className:"flex flex-col gap-3",onSubmit:a=>{a.preventDefault(),O.length<8?D(E.account.passwordTooShort,"error"):O!==Q?D(E.account.passwordMismatch,"error"):C.mutate({currentPassword:M,newPassword:O},{onSuccess:()=>{N(""),P(""),R(""),D(E.account.passwordChanged)},onError:a=>D(String(a)||E.account.passwordError,"error")})},children:[(0,b.jsx)("input",{type:"text",name:"username",autoComplete:"username",value:S.username,readOnly:!0,hidden:!0}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-3",children:[(0,b.jsx)(v.Input,{type:"password",autoComplete:"current-password",placeholder:E.account.currentPassword,"aria-label":E.account.currentPassword,value:M,onChange:a=>N(a.target.value)}),(0,b.jsx)(v.Input,{type:"password",autoComplete:"new-password",placeholder:E.account.newPassword,"aria-label":E.account.newPassword,value:O,onChange:a=>P(a.target.value)}),(0,b.jsx)(v.Input,{type:"password",autoComplete:"new-password",placeholder:E.account.confirmPassword,"aria-label":E.account.confirmPassword,value:Q,onChange:a=>R(a.target.value)})]}),(0,b.jsx)("div",{className:"flex justify-end",children:(0,b.jsx)(u.Button,{type:"submit",variant:"accent",icon:n.KeyRound,disabled:!X||C.isPending,children:E.account.changePassword})})]})]})]})]})]})}a.s(["default",0,function(){return(0,b.jsx)(c.ModuleShell,{moduleId:"account",children:(0,b.jsx)(B,{})})},"dynamic",0,"force-dynamic"],45412)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=_0ysqykx._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[4416,a=>{"use strict";let b=(0,a.i(70106).default)("ShieldCheck",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);a.s(["ShieldCheck",0,b],4416)},41710,a=>{"use strict";let b=(0,a.i(70106).default)("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);a.s(["Clock",0,b],41710)},33441,a=>{"use strict";let b=(0,a.i(70106).default)("Check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);a.s(["Check",0,b],33441)},56993,a=>{"use strict";var b=a.i(87924);a.s(["Select",0,function({className:a="",children:c,...d}){let e=a.trim();return(0,b.jsx)("select",{className:`h-9 w-full rounded-md border border-border bg-surface px-3 text-sm text-text transition-colors focus:border-accent focus:outline-none disabled:opacity-40 disabled:cursor-not-allowed${e?` ${e}`:""}`,...d,children:c})}])},69922,a=>{"use strict";let b=(0,a.i(70106).default)("Link2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]);a.s(["Link2",0,b],69922)},57581,a=>{"use strict";var b=a.i(87924),c=a.i(73570),d=a.i(88736),e=a.i(12466);a.i(28130);var f=a.i(29457);a.s(["ConfirmDialog",0,function({open:a,title:g,description:h,confirmLabel:i,onConfirm:j,onClose:k}){let{t:l}=(0,f.useTranslation)();return a?(0,b.jsxs)(d.Modal,{title:g,onClose:k,size:"sm",icon:c.AlertTriangle,children:[(0,b.jsx)(d.ModalBody,{children:h?(0,b.jsx)("p",{className:"text-sm leading-relaxed text-text-muted",children:h}):null}),(0,b.jsxs)(d.ModalFooter,{children:[(0,b.jsx)(e.Button,{variant:"ghost",onClick:k,children:l.common.cancel}),(0,b.jsx)(e.Button,{variant:"danger",onClick:j,children:i??l.common.delete})]})]}):null}])},47084,a=>{"use strict";var b=a.i(87924);a.s(["Toggle",0,function({checked:a,onChange:c,label:d,disabled:e=!1}){return(0,b.jsx)("button",{type:"button",role:"switch","aria-checked":a,"aria-label":d,disabled:e,onClick:()=>!e&&c(!a),className:`inline-flex h-5 w-9 items-center border border-border px-0.5 transition-colors ${a?"bg-accent":"bg-elevated"} ${e?"opacity-40":"cursor-pointer"}`,style:{transitionDuration:"var(--motion-fast)"},children:(0,b.jsx)("span",{className:`block h-3.5 w-3.5 transition-transform ${a?"translate-x-4 bg-bg":"translate-x-0 bg-text-muted"}`,style:{transitionDuration:"var(--motion-base)",transitionTimingFunction:"var(--ease-spring)"}})})}])},5641,a=>{"use strict";let b=(0,a.i(70106).default)("Play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]]);a.s(["Play",0,b],5641)},31423,a=>{"use strict";var b=a.i(81415);function c(a){let c=new Set(a.filter(a=>"epic"===a.type).map(a=>a.id)),d=new Map;for(let b of a)if(b.parent_id&&c.has(b.parent_id)){let a=d.get(b.parent_id)??[];a.push(b),d.set(b.parent_id,a)}for(let a of d.values())a.sort((a,c)=>((0,b.parseTs)(a.created_at)??0)-((0,b.parseTs)(c.created_at)??0));return d}a.s(["epicCapacity",0,function(a,c,d){let e=0;for(let d of a){let a=(0,b.taskSessionName)(d);"in_progress"===d.status&&a&&c.includes(a)&&e++}let f=Math.max(0,Number.isFinite(d)?Math.floor(d):0),g=Math.min(e,f);return{running:g,max:f,free:Math.max(0,f-g)}},"epicChildren",0,c,"epicEffectiveStatus",0,function(a,b,c=[]){return"epic"!==a.type?a.status:b.some(b=>b.epic_id===a.id&&"disengaged"!==b.state)?"in_progress":0===c.length?a.status:c.some(a=>"in_progress"===a.status)?"in_progress":c.some(a=>"blocked"===a.status)?"blocked":c.some(a=>"open"===a.status)?"open":"closed"},"epicLive",0,function(a,c,d){let e=0,f=0;for(let g of a){let a=(0,b.taskSessionName)(g);"in_progress"===g.status&&a&&c.includes(a)&&e++,a&&c.includes(a)&&d[a]?.type==="needs_input"&&f++}return{running:e,needsInput:f}},"epicProgress",0,function(a){return{done:a.filter(a=>"closed"===a.status||"cancelled"===a.status).length,total:a.length}},"phaseIds",0,function(a){let b=new Set;for(let d of c(a).values())for(let a of d)b.add(a.id);return b}])},47034,a=>{"use strict";var b=a.i(87924),c=a.i(81415);a.i(28130);var d=a.i(29457);let e={working:{color:"var(--color-success)",ring:"color-mix(in srgb, var(--color-success) 50%, transparent)",pulse:!0},needs_input:{color:"var(--color-warning)",ring:"color-mix(in srgb, var(--color-warning) 50%, transparent)",pulse:!0},stalled:{color:"var(--color-warning)",ring:"color-mix(in srgb, var(--color-warning) 50%, transparent)",pulse:!1},stuck:{color:"var(--color-danger)",ring:"color-mix(in srgb, var(--color-danger) 50%, transparent)",pulse:!0},complete:{color:"var(--color-text-muted)",ring:"transparent",pulse:!1},idle:{color:"var(--color-border-strong)",ring:"transparent",pulse:!1}};a.s(["AgentStatusDot",0,function({signal:a,live:f=!1,size:g="md",stall:h,silenceSec:i=0}){let j,{t:k}=(0,d.useTranslation)(),l="stuck"===h?"stuck":"stalled"===h?"stalled":(0,c.liveState)(a,f),m=e[l],n="sm"===g?6:8;return j="stalled"===l?k.agent.stalled.replace("{min}",String(Math.max(1,Math.floor(i/60)))):"stuck"===l?k.agent.stuck.replace("{min}",String(Math.max(1,Math.floor(i/60)))):k.agent["idle"===l?"idle":"needs_input"===l?"needsInput":l],(0,b.jsx)("span",{className:`inline-block shrink-0 rounded-full ${m.pulse?"live-dot":""}`,style:{width:n,height:n,backgroundColor:m.color,"--live-ring":m.ring},role:"status","aria-label":j,title:j})}])},30322,58530,a=>{"use strict";let b={open:"success",in_progress:"warning",blocked:"danger",closed:"danger",cancelled:"muted"};a.s(["statusTone",0,function(a){return b[a]}],30322);var c=a.i(87924);a.s(["ProgressRibbon",0,function({phases:a,className:b=""}){return(0,c.jsx)("div",{className:`flex h-1.5 gap-0.5 overflow-hidden rounded-full ${b}`,children:0===a.length?(0,c.jsx)("div",{className:"h-full flex-1 rounded-full bg-elevated"}):a.map(a=>{let b;return(0,c.jsx)("div",{className:`h-full flex-1 rounded-full transition-colors ${"closed"===(b=a.status)?"bg-accent":"in_progress"===b?"bg-accent/60":"blocked"===b?"bg-danger":"cancelled"===b?"bg-elevated":"bg-border-strong"}`,style:{transitionDuration:"var(--motion-base)"},title:`${a.title} — ${a.status}`},a.id)})})}],58530)},4650,a=>{"use strict";let b=(0,a.i(70106).default)("LoaderCircle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);a.s(["default",0,b])},8549,1027,a=>{"use strict";var b=a.i(70106);let c=(0,b.default)("Pause",[["rect",{x:"14",y:"4",width:"4",height:"16",rx:"1",key:"zuxfzm"}],["rect",{x:"6",y:"4",width:"4",height:"16",rx:"1",key:"1okwgv"}]]);a.s(["Pause",0,c],8549);let d=(0,b.default)("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);a.s(["Zap",0,d],1027)},53876,a=>{"use strict";var b=a.i(87924);a.s(["Field",0,function({label:a,htmlFor:c,children:d,hint:e}){return(0,b.jsxs)("label",{htmlFor:c,className:"flex flex-col gap-1.5",children:[(0,b.jsx)("span",{className:"text-xs font-medium uppercase tracking-wide text-text-muted",children:a}),d,e?(0,b.jsx)("span",{className:"text-xs text-text-muted",children:e}):null]})}])},97222,a=>{"use strict";var b=a.i(87924);a.s(["ModuleHeader",0,function({title:a,count:c,icon:d,children:e}){return(0,b.jsxs)("div",{className:"z-20 -mx-4 -mt-4 mb-5 flex flex-col gap-2 border-b border-border bg-bg px-4 py-3 md:sticky md:top-0 md:flex-row md:flex-wrap md:items-center md:gap-x-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[d?(0,b.jsx)(d,{size:16,className:"shrink-0 text-text-muted","aria-hidden":!0}):null,(0,b.jsx)("h1",{className:"text-base font-semibold tracking-tight text-text",children:a}),void 0!==c?(0,b.jsx)("span",{className:"rounded-full bg-elevated px-2 py-0.5 font-mono text-[11px] text-text-muted",children:c}):null]}),e?(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-2 md:ml-auto",children:e}):null]})}])},70777,a=>{"use strict";var b=a.i(87924);a.s(["ModuleShell",0,function({moduleId:a,children:c}){return(0,b.jsx)("section",{"data-module":a,className:"module-root flex flex-col gap-4",children:c})}])},9173,a=>{"use strict";var b=a.i(87924),c=a.i(12466);a.i(28130);var d=a.i(29457);a.s(["EmptyState",0,function({title:a,description:c,icon:d,action:e}){return(0,b.jsxs)("div",{className:"flex animate-fade-up flex-col items-center justify-center gap-3 py-14 text-center",children:[d?(0,b.jsx)(d,{size:28,strokeWidth:1.25,className:"text-text-muted/40","aria-hidden":!0}):null,(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)("p",{className:"text-sm uppercase tracking-wide text-text",children:a}),c&&(0,b.jsx)("p",{className:"text-xs text-text-muted",children:c})]}),e]})},"ErrorState",0,function({message:a,onRetry:e}){let{t:f}=(0,d.useTranslation)();return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center gap-2 py-12 text-center",children:[(0,b.jsx)("p",{className:"text-sm text-accent",children:a}),e&&(0,b.jsx)(c.Button,{onClick:e,children:f.common.retry})]})},"LoadingState",0,function({label:a,variant:c="list"}){let{t:e}=(0,d.useTranslation)();return a?(0,b.jsx)("div",{className:"flex items-center justify-center py-12 font-mono text-xs text-text-muted animate-pulse",children:a}):"cards"===c?(0,b.jsx)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4,5].map(a=>(0,b.jsxs)("div",{className:"flex flex-col gap-2.5 rounded-lg border border-border bg-surface p-3",style:{boxShadow:"var(--shadow-card)"},children:[(0,b.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,b.jsx)("div",{className:"skeleton h-9 w-9 rounded-lg"}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col gap-1.5",children:[(0,b.jsx)("div",{className:"skeleton h-3.5 w-2/3 rounded"}),(0,b.jsx)("div",{className:"skeleton h-3 w-1/3 rounded"})]})]}),(0,b.jsx)("div",{className:"skeleton h-6 w-full rounded-md"})]},a))}):"kanban"===c?(0,b.jsx)("div",{className:"flex gap-3 overflow-hidden","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4].map(a=>(0,b.jsxs)("div",{className:"flex min-w-[14rem] flex-1 flex-col gap-2 rounded-lg border border-border bg-surface p-2",children:[(0,b.jsx)("div",{className:"skeleton h-3 w-20 rounded"}),[0,1,2].map(a=>(0,b.jsx)("div",{className:"skeleton h-12 w-full rounded-md"},a))]},a))}):(0,b.jsx)("div",{className:"flex flex-col gap-2.5 py-2","aria-busy":"true","aria-label":e.common.loading,children:[88,72,80,64].map((a,c)=>(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("div",{className:"skeleton h-4 w-4 rounded-md"}),(0,b.jsx)("div",{className:"skeleton h-3.5 rounded",style:{width:`${a}%`}})]},c))})}])},34048,a=>{"use strict";var b=a.i(87924);let c={default:"border-border bg-elevated text-text-muted",accent:"border-accent/40 bg-accent/10 text-accent",muted:"border-border bg-elevated text-text-muted",danger:"border-danger/40 bg-danger/10 text-danger",success:"border-success/40 bg-success/10 text-success",warning:"border-warning/40 bg-warning/10 text-warning"};a.s(["Badge",0,function({children:a,tone:d="default"}){return(0,b.jsx)("span",{className:`inline-flex items-center rounded-md border px-2 py-0.5 font-mono text-[11px] font-medium ${c[d]}`,children:a})}])},88736,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(35112);a.i(28130);var e=a.i(29457);let f={lg:"h-[88vh] w-[92vw]",xl:"max-h-[90vh] w-full max-w-2xl",md:"max-h-[88vh] w-full max-w-lg",sm:"max-h-[80vh] w-full max-w-md"};a.s(["Modal",0,function({title:a,onClose:g,children:h,size:i="lg",icon:j,description:k}){let{t:l}=(0,e.useTranslation)(),[m,n]=(0,c.useState)(!1);return((0,c.useEffect)(()=>n(!0),[]),(0,c.useEffect)(()=>{let a=a=>{"Escape"===a.key&&g()};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[g]),m)?(0,d.createPortal)((0,b.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/70 p-4",onClick:g,children:(0,b.jsxs)("div",{className:`animate-pop-in flex flex-col rounded-lg bg-surface border border-border ${f[i]}`,style:{boxShadow:"var(--shadow-raised)"},onClick:a=>a.stopPropagation(),children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 border-b border-border px-5 py-3",children:[j?(0,b.jsx)("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border border-border bg-elevated",children:(0,b.jsx)(j,{size:18,className:"text-accent","aria-hidden":!0})}):null,(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("h2",{className:"truncate text-sm font-semibold text-text",children:a}),k?(0,b.jsx)("p",{className:"truncate text-xs text-text-muted",children:k}):null]}),(0,b.jsx)("button",{type:"button","aria-label":l.common.close,onClick:g,className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-text-muted transition-colors hover:bg-elevated hover:text-text",children:"×"})]}),(0,b.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:h})]})}),document.body):null},"ModalBody",0,function({children:a,gap:c=5}){return(0,b.jsx)("div",{className:`flex min-h-0 flex-1 flex-col overflow-y-auto p-5 ${4===c?"gap-4":6===c?"gap-6":"gap-5"}`,children:a})},"ModalFooter",0,function({children:a}){return(0,b.jsx)("div",{className:"flex shrink-0 items-center justify-end gap-2 border-t border-border px-5 py-3",children:a})}])},81560,a=>{"use strict";let b=(0,a.i(70106).default)("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);a.s(["Trash2",0,b],81560)},99464,a=>{"use strict";let b=(0,a.i(70106).default)("Pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);a.s(["Pencil",0,b],99464)},73570,a=>{"use strict";var b=a.i(83604);a.s(["AlertTriangle",()=>b.default])},6555,a=>{"use strict";var b=a.i(87924),c=a.i(33217),d=a.i(34531),e=a.i(82717);a.s(["ProjectIcon",0,function({project:a,size:f=16,className:g=""}){let h=a.icon??"",{data:i}=(0,c.useQuery)({queryKey:["project-icon",a.id,h],enabled:!!h,staleTime:1/0,queryFn:async()=>{let b=await e.orcaClient.projectRawBlob(a.id,h);return await new Promise((a,c)=>{let d=new FileReader;d.onload=()=>a(d.result),d.onerror=()=>c(d.error),d.readAsDataURL(b)})}});return h&&i?(0,b.jsx)("img",{src:i,alt:"","aria-hidden":!0,className:`shrink-0 rounded-sm object-cover ${g}`,style:{width:f,height:f}}):(0,b.jsx)(d.FolderGit2,{size:f,className:`shrink-0 ${g}`,"aria-hidden":!0})}])},34044,a=>{"use strict";let b=(0,a.i(70106).default)("Maximize2",[["polyline",{points:"15 3 21 3 21 9",key:"mznyad"}],["polyline",{points:"9 21 3 21 3 15",key:"1avn1i"}],["line",{x1:"21",x2:"14",y1:"3",y2:"10",key:"ota7mn"}],["line",{x1:"3",x2:"10",y1:"21",y2:"14",key:"1atl0r"}]]);a.s(["Maximize2",0,b],34044)},50522,a=>{"use strict";let b=(0,a.i(70106).default)("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);a.s(["ChevronRight",0,b],50522)},5151,a=>{"use strict";let b=(0,a.i(70106).default)("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",0,b],5151)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=_10ak-sh._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[71727,a=>{"use strict";let b=(0,a.i(70106).default)("Radio",[["path",{d:"M4.9 19.1C1 15.2 1 8.8 4.9 4.9",key:"1vaf9d"}],["path",{d:"M7.8 16.2c-2.3-2.3-2.3-6.1 0-8.5",key:"u1ii0m"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}],["path",{d:"M16.2 7.8c2.3 2.3 2.3 6.1 0 8.5",key:"1j5fej"}],["path",{d:"M19.1 4.9C23 8.8 23 15.1 19.1 19",key:"10b0cb"}]]);a.s(["Radio",0,b],71727)},17545,a=>{"use strict";let b=(0,a.i(70106).default)("Layers",[["path",{d:"m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z",key:"8b97xw"}],["path",{d:"m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65",key:"dd6zsq"}],["path",{d:"m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65",key:"ep9fru"}]]);a.s(["Layers",0,b],17545)},83549,a=>{"use strict";var b=a.i(87924);a.s(["Segmented",0,function({options:a,value:c,onChange:d}){return(0,b.jsx)("div",{role:"radiogroup",className:"flex flex-wrap gap-1.5",children:a.map(a=>{let e=a.value===c,f=a.icon;return(0,b.jsxs)("button",{type:"button",role:"radio","aria-checked":e,"aria-label":a.label,onClick:()=>d(a.value),className:`inline-flex h-9 items-center gap-1.5 rounded-md border px-3 text-xs font-medium transition-colors ${e?"border-accent/50 bg-accent/15 text-accent":"border-border bg-elevated text-text-muted hover:border-border-strong hover:text-text"}`,style:{transitionDuration:"var(--motion-fast)"},children:[f?(0,b.jsx)(f,{size:13,"aria-hidden":!0}):null,a.label]},a.value)})})}])},92058,a=>{"use strict";var b=a.i(72131);a.s(["usePersistentState",0,function(a,c,d){let[e,f]=(0,b.useState)(c);return(0,b.useEffect)(()=>{try{let b=localStorage.getItem(a);if(null===b)return;("function"==typeof d?d(b):d.includes(b))&&f(b)}catch{}},[a]),[e,(0,b.useCallback)(b=>{f(b);try{localStorage.setItem(a,b)}catch{}},[a])]}])},66429,a=>{"use strict";let b=[["codex:","codex"],["opencode:","opencode"],["claude:","claude-code"]];a.s(["buildExec",0,function(a,b){let c=b.trim();return"codex"===a?`codex:${c}`:"opencode"===a?c.includes("/")?c:`opencode:${c}`:c.includes("/")?`claude:${c}`:c},"execModel",0,function(a){for(let[c]of b)if(a.startsWith(c))return a.slice(c.length);return a},"execProvider",0,function(a){for(let[c,d]of b)if(a.startsWith(c))return d;return a.includes("/")?"opencode":"claude-code"}])},53876,a=>{"use strict";var b=a.i(87924);a.s(["Field",0,function({label:a,htmlFor:c,children:d,hint:e}){return(0,b.jsxs)("label",{htmlFor:c,className:"flex flex-col gap-1.5",children:[(0,b.jsx)("span",{className:"text-xs font-medium uppercase tracking-wide text-text-muted",children:a}),d,e?(0,b.jsx)("span",{className:"text-xs text-text-muted",children:e}):null]})}])},97222,a=>{"use strict";var b=a.i(87924);a.s(["ModuleHeader",0,function({title:a,count:c,icon:d,children:e}){return(0,b.jsxs)("div",{className:"z-20 -mx-4 -mt-4 mb-5 flex flex-col gap-2 border-b border-border bg-bg px-4 py-3 md:sticky md:top-0 md:flex-row md:flex-wrap md:items-center md:gap-x-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[d?(0,b.jsx)(d,{size:16,className:"shrink-0 text-text-muted","aria-hidden":!0}):null,(0,b.jsx)("h1",{className:"text-base font-semibold tracking-tight text-text",children:a}),void 0!==c?(0,b.jsx)("span",{className:"rounded-full bg-elevated px-2 py-0.5 font-mono text-[11px] text-text-muted",children:c}):null]}),e?(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-2 md:ml-auto",children:e}):null]})}])},9173,a=>{"use strict";var b=a.i(87924),c=a.i(12466);a.i(28130);var d=a.i(29457);a.s(["EmptyState",0,function({title:a,description:c,icon:d,action:e}){return(0,b.jsxs)("div",{className:"flex animate-fade-up flex-col items-center justify-center gap-3 py-14 text-center",children:[d?(0,b.jsx)(d,{size:28,strokeWidth:1.25,className:"text-text-muted/40","aria-hidden":!0}):null,(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)("p",{className:"text-sm uppercase tracking-wide text-text",children:a}),c&&(0,b.jsx)("p",{className:"text-xs text-text-muted",children:c})]}),e]})},"ErrorState",0,function({message:a,onRetry:e}){let{t:f}=(0,d.useTranslation)();return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center gap-2 py-12 text-center",children:[(0,b.jsx)("p",{className:"text-sm text-accent",children:a}),e&&(0,b.jsx)(c.Button,{onClick:e,children:f.common.retry})]})},"LoadingState",0,function({label:a,variant:c="list"}){let{t:e}=(0,d.useTranslation)();return a?(0,b.jsx)("div",{className:"flex items-center justify-center py-12 font-mono text-xs text-text-muted animate-pulse",children:a}):"cards"===c?(0,b.jsx)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4,5].map(a=>(0,b.jsxs)("div",{className:"flex flex-col gap-2.5 rounded-lg border border-border bg-surface p-3",style:{boxShadow:"var(--shadow-card)"},children:[(0,b.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,b.jsx)("div",{className:"skeleton h-9 w-9 rounded-lg"}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col gap-1.5",children:[(0,b.jsx)("div",{className:"skeleton h-3.5 w-2/3 rounded"}),(0,b.jsx)("div",{className:"skeleton h-3 w-1/3 rounded"})]})]}),(0,b.jsx)("div",{className:"skeleton h-6 w-full rounded-md"})]},a))}):"kanban"===c?(0,b.jsx)("div",{className:"flex gap-3 overflow-hidden","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4].map(a=>(0,b.jsxs)("div",{className:"flex min-w-[14rem] flex-1 flex-col gap-2 rounded-lg border border-border bg-surface p-2",children:[(0,b.jsx)("div",{className:"skeleton h-3 w-20 rounded"}),[0,1,2].map(a=>(0,b.jsx)("div",{className:"skeleton h-12 w-full rounded-md"},a))]},a))}):(0,b.jsx)("div",{className:"flex flex-col gap-2.5 py-2","aria-busy":"true","aria-label":e.common.loading,children:[88,72,80,64].map((a,c)=>(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("div",{className:"skeleton h-4 w-4 rounded-md"}),(0,b.jsx)("div",{className:"skeleton h-3.5 rounded",style:{width:`${a}%`}})]},c))})}])},70777,a=>{"use strict";var b=a.i(87924);a.s(["ModuleShell",0,function({moduleId:a,children:c}){return(0,b.jsx)("section",{"data-module":a,className:"module-root flex flex-col gap-4",children:c})}])},34048,a=>{"use strict";var b=a.i(87924);let c={default:"border-border bg-elevated text-text-muted",accent:"border-accent/40 bg-accent/10 text-accent",muted:"border-border bg-elevated text-text-muted",danger:"border-danger/40 bg-danger/10 text-danger",success:"border-success/40 bg-success/10 text-success",warning:"border-warning/40 bg-warning/10 text-warning"};a.s(["Badge",0,function({children:a,tone:d="default"}){return(0,b.jsx)("span",{className:`inline-flex items-center rounded-md border px-2 py-0.5 font-mono text-[11px] font-medium ${c[d]}`,children:a})}])},88736,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(35112);a.i(28130);var e=a.i(29457);let f={lg:"h-[88vh] w-[92vw]",xl:"max-h-[90vh] w-full max-w-2xl",md:"max-h-[88vh] w-full max-w-lg",sm:"max-h-[80vh] w-full max-w-md"};a.s(["Modal",0,function({title:a,onClose:g,children:h,size:i="lg",icon:j,description:k}){let{t:l}=(0,e.useTranslation)(),[m,n]=(0,c.useState)(!1);return((0,c.useEffect)(()=>n(!0),[]),(0,c.useEffect)(()=>{let a=a=>{"Escape"===a.key&&g()};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[g]),m)?(0,d.createPortal)((0,b.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/70 p-4",onClick:g,children:(0,b.jsxs)("div",{className:`animate-pop-in flex flex-col rounded-lg bg-surface border border-border ${f[i]}`,style:{boxShadow:"var(--shadow-raised)"},onClick:a=>a.stopPropagation(),children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 border-b border-border px-5 py-3",children:[j?(0,b.jsx)("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border border-border bg-elevated",children:(0,b.jsx)(j,{size:18,className:"text-accent","aria-hidden":!0})}):null,(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("h2",{className:"truncate text-sm font-semibold text-text",children:a}),k?(0,b.jsx)("p",{className:"truncate text-xs text-text-muted",children:k}):null]}),(0,b.jsx)("button",{type:"button","aria-label":l.common.close,onClick:g,className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-text-muted transition-colors hover:bg-elevated hover:text-text",children:"×"})]}),(0,b.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:h})]})}),document.body):null},"ModalBody",0,function({children:a,gap:c=5}){return(0,b.jsx)("div",{className:`flex min-h-0 flex-1 flex-col overflow-y-auto p-5 ${4===c?"gap-4":6===c?"gap-6":"gap-5"}`,children:a})},"ModalFooter",0,function({children:a}){return(0,b.jsx)("div",{className:"flex shrink-0 items-center justify-end gap-2 border-t border-border px-5 py-3",children:a})}])},81560,a=>{"use strict";let b=(0,a.i(70106).default)("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);a.s(["Trash2",0,b],81560)},99464,a=>{"use strict";let b=(0,a.i(70106).default)("Pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);a.s(["Pencil",0,b],99464)},73570,a=>{"use strict";var b=a.i(83604);a.s(["AlertTriangle",()=>b.default])},56993,a=>{"use strict";var b=a.i(87924);a.s(["Select",0,function({className:a="",children:c,...d}){let e=a.trim();return(0,b.jsx)("select",{className:`h-9 w-full rounded-md border border-border bg-surface px-3 text-sm text-text transition-colors focus:border-accent focus:outline-none disabled:opacity-40 disabled:cursor-not-allowed${e?` ${e}`:""}`,...d,children:c})}])},69922,a=>{"use strict";let b=(0,a.i(70106).default)("Link2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]);a.s(["Link2",0,b],69922)},47084,a=>{"use strict";var b=a.i(87924);a.s(["Toggle",0,function({checked:a,onChange:c,label:d,disabled:e=!1}){return(0,b.jsx)("button",{type:"button",role:"switch","aria-checked":a,"aria-label":d,disabled:e,onClick:()=>!e&&c(!a),className:`inline-flex h-5 w-9 items-center border border-border px-0.5 transition-colors ${a?"bg-accent":"bg-elevated"} ${e?"opacity-40":"cursor-pointer"}`,style:{transitionDuration:"var(--motion-fast)"},children:(0,b.jsx)("span",{className:`block h-3.5 w-3.5 transition-transform ${a?"translate-x-4 bg-bg":"translate-x-0 bg-text-muted"}`,style:{transitionDuration:"var(--motion-base)",transitionTimingFunction:"var(--ease-spring)"}})})}])},57581,a=>{"use strict";var b=a.i(87924),c=a.i(73570),d=a.i(88736),e=a.i(12466);a.i(28130);var f=a.i(29457);a.s(["ConfirmDialog",0,function({open:a,title:g,description:h,confirmLabel:i,onConfirm:j,onClose:k}){let{t:l}=(0,f.useTranslation)();return a?(0,b.jsxs)(d.Modal,{title:g,onClose:k,size:"sm",icon:c.AlertTriangle,children:[(0,b.jsx)(d.ModalBody,{children:h?(0,b.jsx)("p",{className:"text-sm leading-relaxed text-text-muted",children:h}):null}),(0,b.jsxs)(d.ModalFooter,{children:[(0,b.jsx)(e.Button,{variant:"ghost",onClick:k,children:l.common.cancel}),(0,b.jsx)(e.Button,{variant:"danger",onClick:j,children:i??l.common.delete})]})]}):null}])},4720,a=>{"use strict";let b=(0,a.i(70106).default)("FileText",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);a.s(["FileText",0,b],4720)},37047,74803,a=>{"use strict";let b=(0,a.i(70106).default)("KeyRound",[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]);a.s(["KeyRound",0,b],37047);var c=a.i(87924);a.s(["SettingCard",0,function({title:a,description:b,icon:d,children:e}){return(0,c.jsxs)("div",{className:"card-interactive flex flex-col gap-3.5 rounded-lg border border-border bg-surface p-5",children:[(0,c.jsxs)("div",{className:"flex items-start gap-3",children:[d?(0,c.jsx)(d,{size:16,className:"mt-0.5 text-text-muted","aria-hidden":!0}):null,(0,c.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,c.jsx)("span",{className:"text-sm font-medium text-text",children:a}),b?(0,c.jsx)("span",{className:"font-mono text-xs text-text-muted",children:b}):null]})]}),(0,c.jsx)("div",{children:e})]})}],74803)},14548,a=>{"use strict";let b=(0,a.i(70106).default)("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);a.s(["Save",0,b],14548)},77156,a=>{"use strict";let b=(0,a.i(70106).default)("Eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],77156)},96883,62232,a=>{"use strict";var b=a.i(87924);let c=[{id:"claude-code",label:"Claude Code",color:"#d97757",binHint:"claude",argsHint:"--permission-mode acceptEdits",icon:"/providers/anthropic.png"},{id:"opencode",label:"OpenCode",color:"#7c8cff",binHint:"opencode",argsHint:"--pure",icon:"/providers/opencode.png"},{id:"codex",label:"Codex",color:"#ededed",binHint:"codex",argsHint:"--full-auto",icon:"/providers/openai.svg"}],d=a=>c.find(b=>b.id===a);a.s(["PROVIDERS",0,c,"ProviderLogo",0,function({meta:a,alt:c,size:d=36}){return(0,b.jsx)("span",{className:"inline-flex shrink-0 items-center justify-center overflow-hidden rounded-lg border border-border bg-elevated",style:{width:d,height:d},children:(0,b.jsx)("img",{src:a.icon,alt:c??a.label,width:.62*d,height:.62*d,style:{objectFit:"contain"}})})},"ProviderTag",0,function({id:a}){let c=d(a);return c?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-md border border-border bg-elevated/60 px-2 py-1 text-[11px] text-text-muted",children:[(0,b.jsx)("img",{src:c.icon,alt:"",width:13,height:13,style:{objectFit:"contain"},"aria-hidden":!0}),c.label]}):null},"providerMeta",0,d],96883);var e=a.i(72131),f=a.i(76645),g=a.i(18517);a.s(["useHermesForm",0,function(){let[a,b]=(0,e.useState)(""),[c,d]=(0,e.useState)(""),[h,i]=(0,e.useState)(""),j=(0,f.useHermesStatus)(a),k=(0,g.useHermesInstall)();return(0,e.useEffect)(()=>{d(window.location.origin)},[]),{home:a,setHome:b,url:c,setUrl:d,token:h,setToken:i,status:j,install:k}}],62232)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=_13rgpyg._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[77156,a=>{"use strict";let b=(0,a.i(70106).default)("Eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],77156)},32860,a=>{"use strict";let b=(0,a.i(70106).default)("ArrowRight",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);a.s(["ArrowRight",0,b],32860)},69883,a=>{"use strict";let b=(0,a.i(70106).default)("GitCommitHorizontal",[["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12",key:"1dyftd"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12",key:"oup4p8"}]]);a.s(["default",0,b])},76270,a=>{"use strict";let b=(0,a.i(70106).default)("Minimize2",[["polyline",{points:"4 14 10 14 10 20",key:"11kfnr"}],["polyline",{points:"20 10 14 10 14 4",key:"rlmsce"}],["line",{x1:"14",x2:"21",y1:"10",y2:"3",key:"o5lafz"}],["line",{x1:"3",x2:"10",y1:"21",y2:"14",key:"1atl0r"}]]);a.s(["Minimize2",0,b],76270)},76960,a=>{"use strict";var b=a.i(69883);a.s(["GitCommitHorizontal",()=>b.default])},17545,a=>{"use strict";let b=(0,a.i(70106).default)("Layers",[["path",{d:"m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z",key:"8b97xw"}],["path",{d:"m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65",key:"dd6zsq"}],["path",{d:"m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65",key:"ep9fru"}]]);a.s(["Layers",0,b],17545)},99806,a=>{"use strict";let b=(0,a.i(70106).default)("Bug",[["path",{d:"m8 2 1.88 1.88",key:"fmnt4t"}],["path",{d:"M14.12 3.88 16 2",key:"qol33r"}],["path",{d:"M9 7.13v-1a3.003 3.003 0 1 1 6 0v1",key:"d7y7pr"}],["path",{d:"M12 20c-3.3 0-6-2.7-6-6v-3a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v3c0 3.3-2.7 6-6 6",key:"xs1cw7"}],["path",{d:"M12 20v-9",key:"1qisl0"}],["path",{d:"M6.53 9C4.6 8.8 3 7.1 3 5",key:"32zzws"}],["path",{d:"M6 13H2",key:"82j7cp"}],["path",{d:"M3 21c0-2.1 1.7-3.9 3.8-4",key:"4p0ekp"}],["path",{d:"M20.97 5c0 2.1-1.6 3.8-3.5 4",key:"18gb23"}],["path",{d:"M22 13h-4",key:"1jl80f"}],["path",{d:"M17.2 17c2.1.1 3.8 1.9 3.8 4",key:"k3fwyw"}]]);a.s(["Bug",0,b],99806)},8406,a=>{"use strict";let b=(0,a.i(70106).default)("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]]);a.s(["Sparkles",0,b],8406)},35360,a=>{"use strict";var b=a.i(55023),c=a.i(99806),d=a.i(8406),e=a.i(17545);let f=(0,a.i(70106).default)("Wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",key:"cbrjhi"}]]);var g=a.i(65151);let h={task:{icon:b.ListChecks,label:"Task",tone:"default"},bug:{icon:c.Bug,label:"Bug",tone:"danger"},feature:{icon:d.Sparkles,label:"Feature",tone:"accent"},epic:{icon:e.Layers,label:"Epic",tone:"accent"},chore:{icon:f,label:"Chore",tone:"muted"}};function i(a){return h[a??"task"]??{icon:g.Circle,label:a??"Task",tone:"default"}}a.s(["PRIORITIES",0,["P0","P1","P2","P3"],"TASK_TYPES",0,["task","feature","bug","chore","epic"],"statusLabel",0,function(a,b){return({open:a.tasks.statusOpen,in_progress:a.tasks.statusInProgress,blocked:a.tasks.statusBlocked,closed:a.tasks.statusClosed,cancelled:a.tasks.statusCancelled})[b]??b},"taskTypeLabel",0,function(a,b){return({task:a.tasks.typeTask,bug:a.tasks.typeBug,feature:a.tasks.typeFeature,epic:a.tasks.typeEpic,chore:a.tasks.typeChore})[b]??i(b).label},"taskTypeMeta",0,i],35360)},29930,a=>{"use strict";var b=a.i(87924),c=a.i(67453),d=a.i(62722),e=a.i(34048);a.i(28130);var f=a.i(29457);a.s(["OutcomeBadge",0,function({outcome:a}){let{t:g}=(0,f.useTranslation)();if(!a)return null;let h="fail"===a;return(0,b.jsxs)(e.Badge,{tone:h?"danger":"success",children:[h?(0,b.jsx)(d.XCircle,{size:11,className:"mr-1 inline","aria-hidden":!0}):(0,b.jsx)(c.CheckCircle2,{size:11,className:"mr-1 inline","aria-hidden":!0}),h?g.tasks.outcomeFail:g.tasks.outcomeOk]})}])},80789,a=>{"use strict";var b=a.i(87924);a.s(["IconButton",0,function({icon:a,label:c,onClick:d,variant:e="default",disabled:f=!1}){return(0,b.jsx)("button",{type:"button","aria-label":c,title:c,onClick:d,disabled:f,className:`inline-flex h-7 w-7 items-center justify-center border transition-colors ${"danger"===e?"text-danger hover:bg-danger hover:text-bg border-danger":"text-text-muted hover:bg-elevated hover:text-text border-border"} ${f?"opacity-40":""}`,style:{transitionDuration:"var(--motion-fast)"},children:(0,b.jsx)(a,{size:14,"aria-hidden":!0})})}])},30206,a=>{"use strict";let b=(0,a.i(70106).default)("Power",[["path",{d:"M12 2v10",key:"mnfbl"}],["path",{d:"M18.4 6.6a9 9 0 1 1-12.77.04",key:"obofu9"}]]);a.s(["Power",0,b],30206)},66429,a=>{"use strict";let b=[["codex:","codex"],["opencode:","opencode"],["claude:","claude-code"]];a.s(["buildExec",0,function(a,b){let c=b.trim();return"codex"===a?`codex:${c}`:"opencode"===a?c.includes("/")?c:`opencode:${c}`:c.includes("/")?`claude:${c}`:c},"execModel",0,function(a){for(let[c]of b)if(a.startsWith(c))return a.slice(c.length);return a},"execProvider",0,function(a){for(let[c,d]of b)if(a.startsWith(c))return d;return a.includes("/")?"opencode":"claude-code"}])},5292,76773,a=>{"use strict";var b=a.i(48677);a.s(["TerminalSquare",()=>b.default],5292);var c=a.i(87924),d=a.i(19721),b=b,e=a.i(88736),f=a.i(76645),g=a.i(81415),h=a.i(72131);a.i(28130);var i=a.i(29457);let j=(0,d.default)(async()=>{},{loadableGenerated:{modules:[38765]},ssr:!1});a.s(["TerminalModal",0,function({session:a,onClose:d}){let k,l,m,n=(0,f.useTasks)(),{t:o}=(0,i.useTranslation)(),p=(0,f.useSessionInfos)().data?.find(b=>b.name===a),q=(0,g.taskForSession)(n.data??[],a);k=(0,f.useSessions)().data,l=!!q&&("closed"===q.status||"cancelled"===q.status),m=Array.isArray(k)&&!k.includes(a),(0,h.useEffect)(()=>{(l||m)&&d()},[l,m,d]);let r=p?.role==="overseer"?o.sessions.roleOverseer:p?.role==="pilot"?o.sessions.rolePilot:(0,g.agentDisplayName)(a);return(0,c.jsx)(e.Modal,{title:r,description:q?.title,onClose:d,icon:b.default,children:(0,c.jsx)(j,{name:a,onKilled:d})})}],76773)},97593,a=>{"use strict";let b=(0,a.i(70106).default)("SquareSlash",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["line",{x1:"9",x2:"15",y1:"15",y2:"9",key:"1dfufj"}]]);a.s(["SquareSlash",0,b],97593)},73012,a=>{"use strict";var b=a.i(87924),c=a.i(70777),d=a.i(72131),e=a.i(50944),f=a.i(5292),g=a.i(32860),h=a.i(67329),i=a.i(23312),j=a.i(34044),k=a.i(76270),l=a.i(76645),m=a.i(81415),n=a.i(92058),o=a.i(97222),p=a.i(83549),q=a.i(12466),r=a.i(76773),s=a.i(9173);a.i(28130);var t=a.i(29457),u=a.i(38246),v=a.i(97593),w=a.i(30206),x=a.i(15115),y=a.i(77156),z=a.i(82434),A=a.i(18517),B=a.i(35360),C=a.i(66429),D=a.i(7947),E=a.i(29930),F=a.i(32824),G=a.i(80789),H=a.i(49134),I=a.i(76960);function J(){let{t:a}=(0,t.useTranslation)(),c=(0,l.useProjects)(),d=c.data?.[0]?.id??null,e=(0,l.useProjectGit)(d);if(!e.data)return null;let{status:f,commits:g}=e.data;if(!f)return null;let h=f.dirty,i=g[0];if(0===h&&!i)return null;let j=0===h?null:1===h?a.changes.dirtyOne:a.changes.dirtyN.replace("{count}",String(h));return(0,b.jsxs)("span",{className:"inline-flex min-w-0 items-center gap-1.5 font-mono text-[11px] text-text-muted",title:i?a.changes.lastCommit.replace("{relative}",i.relative).replace("{subject}",i.subject):j??"",children:[(0,b.jsx)(I.GitCommitHorizontal,{size:12,className:"shrink-0 text-text-muted","aria-hidden":!0}),j?(0,b.jsx)("span",{className:"shrink-0 text-warning",children:j}):null,i?(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate",children:a.changes.lastCommit.replace("{relative}",i.relative).replace("{subject}",i.subject)}):null]})}var K=a.i(90854),L=a.i(91589),M=a.i(18180);function N({onSend:a}){let[c,e]=(0,d.useState)(""),{t:f}=(0,t.useTranslation)();return(0,b.jsxs)("form",{className:"flex items-center gap-2",onSubmit:b=>{b.preventDefault(),c.trim()&&(a([c.trim(),"Enter"]),e(""))},children:[(0,b.jsx)(M.Input,{value:c,onChange:a=>e(a.target.value),placeholder:f.common.sendKeys,className:"w-40"}),(0,b.jsx)(q.Button,{type:"submit",children:f.common.send})]})}var O=a.i(89697);function P({info:a,onOpenTerminal:c,compact:d=!1}){let e=(0,A.useKillSession)(),g=(0,A.useSendInput)(),{toast:h}=(0,O.useToast)(),{t:i}=(0,t.useTranslation)(),j=(0,l.useTasks)(),k=(0,l.useConfig)(),n=a.name,o=(0,l.useSessionSignal)(n),p=(0,m.taskForSession)(j.data??[],n),q=(0,m.taskExec)(p?.labels),r="overseer"===a.role?k.data?.autopilot.overseerExec:"pilot"===a.role?k.data?.autopilot.pilotExec:void 0,s=q||r||void 0,I="overseer"===a.role&&a.missionId?(j.data??[]).find(b=>b.id===(0,m.missionEpicId)(a.missionId)):void 0,M=p?(0,B.taskTypeMeta)(p.type).icon:x.SquareTerminal,Q=o?.type==="needs_input",R=!!p&&("closed"===p.status||"cancelled"===p.status);return(0,b.jsxs)("div",{className:`card-interactive flex flex-col gap-3 rounded-lg border bg-surface ${d?"p-3":"p-4"} ${Q?"border-warning/60":"border-border"}`,children:[(0,b.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,b.jsx)("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border border-border bg-elevated",children:"overseer"===a.role?(0,b.jsx)(y.Eye,{size:18,className:"text-text-muted","aria-hidden":!0}):"pilot"===a.role?(0,b.jsx)(z.Bot,{size:18,className:"text-text-muted","aria-hidden":!0}):q?(0,b.jsx)(D.ModelIcon,{name:q,size:20}):(0,b.jsx)(M,{size:18,className:"text-text-muted","aria-hidden":!0})}),(0,b.jsx)("div",{className:"flex min-w-0 flex-1 flex-col",children:"overseer"===a.role?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("span",{className:"truncate text-xs font-semibold text-text",title:I?.title,children:[i.sessions.roleOverseer,I?` \xb7 ${I.title}`:""]}),(0,b.jsx)("span",{className:"truncate font-mono text-[11px] text-text-muted",children:a.missionId})]}):"pilot"===a.role?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"truncate text-xs font-semibold text-text",children:i.sessions.rolePilot}),(0,b.jsx)("span",{className:"truncate text-[11px] text-text-muted",children:a.agent})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"truncate text-xs font-semibold text-text",title:p?.title,children:a.agent}),p?(0,b.jsx)(u.default,{href:`/tasks?select=${encodeURIComponent(p.id)}`,className:"truncate text-[11px] text-text-muted transition-colors hover:text-accent",title:p.title,children:p.title}):null]})}),Q?(0,b.jsx)("span",{className:"shrink-0 rounded-full border border-warning/40 bg-warning/10 px-1.5 py-0.5 text-tiny font-medium text-warning",title:o?.type==="needs_input"?o.question:"",children:i.sessions.needsInput}):null,(0,b.jsx)("span",{className:"live-dot h-2 w-2 shrink-0 rounded-full",style:{backgroundColor:Q?"var(--color-warning)":"var(--color-approve)","--live-ring":Q?"color-mix(in srgb, var(--color-warning) 50%, transparent)":"color-mix(in srgb, var(--color-approve) 50%, transparent)"},"aria-label":Q?i.sessions.needsInput:i.sessions.online,title:Q?i.sessions.needsInput:i.sessions.online})]}),p?(0,b.jsx)(K.TaskUsageBadge,{taskId:p.id,live:!R}):null,R&&p?(0,b.jsxs)("div",{className:`flex flex-col gap-1.5 rounded-md border border-border bg-bg p-2.5 ${d?"":"min-h-32"}`,children:[(0,b.jsx)(E.OutcomeBadge,{outcome:p.outcome}),(0,b.jsx)("p",{className:"text-[11px] leading-snug text-text-muted",children:p.result_summary?.trim()||i.tasks.noSummary})]}):(0,b.jsx)(L.LiveTail,{name:n,lines:d?14:22,heightClass:d?"h-32":"h-52",onExpand:c}),!R&&(0,b.jsx)(J,{}),Q&&o?.type==="needs_input"&&(0,b.jsxs)("div",{className:"flex flex-col gap-2 rounded-md border border-warning/40 bg-warning/10 p-2.5",children:[(0,b.jsx)("p",{className:"text-xs text-text",children:o.question}),(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-1.5",children:o.options&&o.options.length>0?(0,b.jsxs)(b.Fragment,{children:[o.options.map(a=>(0,b.jsxs)("button",{type:"button",title:a.label,onClick:()=>g.mutate({name:n,keys:(0,m.keysForOption)(a.id)},{onSuccess:()=>h(i.sessions.answered.replace("{name}",n).replace("{option}",a.label)),onError:a=>h(String(a),"error")}),className:"max-w-full truncate rounded-md border border-accent/50 bg-accent/10 px-2.5 py-1 text-xs font-medium text-accent transition-colors hover:bg-accent hover:text-white active:scale-95",children:[(0,b.jsxs)("span",{className:"opacity-60",children:[a.id,"."]})," ",a.label]},a.id)),(0,b.jsx)("button",{type:"button",onClick:()=>g.mutate({name:n,keys:["Escape"]},{onSuccess:()=>h(i.sessions.rejected.replace("{name}",n)),onError:a=>h(String(a),"error")}),className:"rounded-md border border-danger/50 bg-danger/10 px-2.5 py-1 text-xs font-medium text-danger transition-colors hover:bg-danger hover:text-white active:scale-95",children:i.sessions.reject})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("button",{type:"button",onClick:()=>g.mutate({name:n,keys:["Enter"]},{onSuccess:()=>h(i.sessions.approved.replace("{name}",n)),onError:a=>h(String(a),"error")}),className:"rounded-md border border-approve/50 bg-approve/10 px-2.5 py-1 text-xs font-medium text-approve transition-colors hover:bg-approve hover:text-white active:scale-95",children:i.sessions.allow}),(0,b.jsx)("button",{type:"button",onClick:()=>g.mutate({name:n,keys:["Escape"]},{onSuccess:()=>h(i.sessions.rejected.replace("{name}",n)),onError:a=>h(String(a),"error")}),className:"rounded-md border border-danger/50 bg-danger/10 px-2.5 py-1 text-xs font-medium text-danger transition-colors hover:bg-danger hover:text-white active:scale-95",children:i.sessions.reject})]})})]}),(0,b.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,b.jsx)(N,{onSend:a=>g.mutate({name:n,keys:a},{onSuccess:()=>h(i.sessions.sentTo.replace("{name}",n)),onError:a=>h(String(a),"error")})}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)(F.ProjectPill,{projectId:a.projectId??p?.project_id,always:!0}),s?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full border border-border bg-elevated px-2 py-0.5 text-[11px] text-text-muted",title:s,children:[(0,b.jsx)(D.ModelIcon,{name:s,size:13}),(0,b.jsx)("span",{className:"max-w-28 truncate",children:(0,C.execModel)(s)})]}):null,(0,b.jsx)(G.IconButton,{icon:f.TerminalSquare,label:i.sessions.terminal,onClick:c}),(0,b.jsx)(G.IconButton,{icon:v.SquareSlash,label:i.sessions.interrupt,onClick:()=>g.mutate({name:n,keys:["C-c"]},{onSuccess:()=>h(i.sessions.interrupted.replace("{name}",n))})}),(0,b.jsx)(H.ActionMenu,{label:i.sessions.kill,items:[{label:i.sessions.kill,icon:w.Power,tone:"danger",onSelect:()=>e.mutate(n,{onSuccess:()=>h(i.sessions.killed.replace("{name}",n)),onError:a=>h(String(a),"error")})}]})]})]})]})}function Q(){let a=(0,l.useSessionInfos)(),c=(0,l.useSessionSignals)(),u=(0,e.useRouter)(),v=(0,e.useSearchParams)(),{t:w}=(0,t.useTranslation)(),[x,y]=(0,d.useState)(null),[z,A]=(0,n.usePersistentState)("orca.sessions.density","comfortable",["comfortable","compact"]),B="compact"===z,C="needs_input"===v.get("filter")?"needs_input":"all",D=a.data??[],E=new Map(D.map(a=>[a.name,a])),F=D.map(a=>a.name),G=a=>{let b=c[a]?.type;return"needs_input"===b?0:"working"===b?1:2},H=[...F].sort((a,b)=>{let c=G(a),d=G(b);return c!==d?c-d:a.localeCompare(b)}),I="needs_input"===C?(0,m.needsInputSessions)(H,c):H;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(o.ModuleHeader,{title:w.page.sessions,count:I.length,icon:f.TerminalSquare,children:F.length>0?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(p.Segmented,{value:C,onChange:a=>u.replace("needs_input"===a?"/sessions?filter=needs_input":"/sessions"),options:[{value:"all",label:w.sessions.filterAll,icon:h.List},{value:"needs_input",label:w.sessions.filterNeedsInput,icon:i.Bell}]}),(0,b.jsx)(p.Segmented,{value:z,onChange:a=>A(a),options:[{value:"comfortable",label:w.sessions.comfortable,icon:j.Maximize2},{value:"compact",label:w.sessions.compact,icon:k.Minimize2}]})]}):null}),a.isLoading?(0,b.jsx)(s.LoadingState,{variant:"cards"}):a.isError?(0,b.jsx)(s.ErrorState,{message:w.common.daemonUnreachable,onRetry:()=>a.refetch()}):I.length>0?(0,b.jsx)("div",{className:"grid grid-cols-1 gap-4 sm:grid-cols-2 xl:grid-cols-3",children:I.map(a=>{let c=E.get(a);return c?(0,b.jsx)(P,{info:c,compact:B,onOpenTerminal:()=>y(a)},a):null})}):"needs_input"===C&&F.length>0?(0,b.jsx)(s.EmptyState,{title:w.sessions.filterNeedsInput,description:w.sessions.noNeedsInput,icon:f.TerminalSquare}):(0,b.jsx)(s.EmptyState,{title:w.sessions.empty,description:w.sessions.emptyDescription,icon:f.TerminalSquare,action:(0,b.jsx)(q.Button,{variant:"accent",icon:g.ArrowRight,onClick:()=>u.push("/tasks"),children:w.sessions.emptyAction})}),x&&(0,b.jsx)(r.TerminalModal,{session:x,onClose:()=>y(null)})]})}a.s(["default",0,function(){return(0,b.jsx)(c.ModuleShell,{moduleId:"sessions",children:(0,b.jsx)(Q,{})})},"dynamic",0,"force-dynamic"],73012)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=_1fp8enw._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[70777,a=>{"use strict";var b=a.i(87924);a.s(["ModuleShell",0,function({moduleId:a,children:c}){return(0,b.jsx)("section",{"data-module":a,className:"module-root flex flex-col gap-4",children:c})}])},9173,a=>{"use strict";var b=a.i(87924),c=a.i(12466);a.i(28130);var d=a.i(29457);a.s(["EmptyState",0,function({title:a,description:c,icon:d,action:e}){return(0,b.jsxs)("div",{className:"flex animate-fade-up flex-col items-center justify-center gap-3 py-14 text-center",children:[d?(0,b.jsx)(d,{size:28,strokeWidth:1.25,className:"text-text-muted/40","aria-hidden":!0}):null,(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)("p",{className:"text-sm uppercase tracking-wide text-text",children:a}),c&&(0,b.jsx)("p",{className:"text-xs text-text-muted",children:c})]}),e]})},"ErrorState",0,function({message:a,onRetry:e}){let{t:f}=(0,d.useTranslation)();return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center gap-2 py-12 text-center",children:[(0,b.jsx)("p",{className:"text-sm text-accent",children:a}),e&&(0,b.jsx)(c.Button,{onClick:e,children:f.common.retry})]})},"LoadingState",0,function({label:a,variant:c="list"}){let{t:e}=(0,d.useTranslation)();return a?(0,b.jsx)("div",{className:"flex items-center justify-center py-12 font-mono text-xs text-text-muted animate-pulse",children:a}):"cards"===c?(0,b.jsx)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4,5].map(a=>(0,b.jsxs)("div",{className:"flex flex-col gap-2.5 rounded-lg border border-border bg-surface p-3",style:{boxShadow:"var(--shadow-card)"},children:[(0,b.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,b.jsx)("div",{className:"skeleton h-9 w-9 rounded-lg"}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col gap-1.5",children:[(0,b.jsx)("div",{className:"skeleton h-3.5 w-2/3 rounded"}),(0,b.jsx)("div",{className:"skeleton h-3 w-1/3 rounded"})]})]}),(0,b.jsx)("div",{className:"skeleton h-6 w-full rounded-md"})]},a))}):"kanban"===c?(0,b.jsx)("div",{className:"flex gap-3 overflow-hidden","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4].map(a=>(0,b.jsxs)("div",{className:"flex min-w-[14rem] flex-1 flex-col gap-2 rounded-lg border border-border bg-surface p-2",children:[(0,b.jsx)("div",{className:"skeleton h-3 w-20 rounded"}),[0,1,2].map(a=>(0,b.jsx)("div",{className:"skeleton h-12 w-full rounded-md"},a))]},a))}):(0,b.jsx)("div",{className:"flex flex-col gap-2.5 py-2","aria-busy":"true","aria-label":e.common.loading,children:[88,72,80,64].map((a,c)=>(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("div",{className:"skeleton h-4 w-4 rounded-md"}),(0,b.jsx)("div",{className:"skeleton h-3.5 rounded",style:{width:`${a}%`}})]},c))})}])},97222,a=>{"use strict";var b=a.i(87924);a.s(["ModuleHeader",0,function({title:a,count:c,icon:d,children:e}){return(0,b.jsxs)("div",{className:"z-20 -mx-4 -mt-4 mb-5 flex flex-col gap-2 border-b border-border bg-bg px-4 py-3 md:sticky md:top-0 md:flex-row md:flex-wrap md:items-center md:gap-x-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[d?(0,b.jsx)(d,{size:16,className:"shrink-0 text-text-muted","aria-hidden":!0}):null,(0,b.jsx)("h1",{className:"text-base font-semibold tracking-tight text-text",children:a}),void 0!==c?(0,b.jsx)("span",{className:"rounded-full bg-elevated px-2 py-0.5 font-mono text-[11px] text-text-muted",children:c}):null]}),e?(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-2 md:ml-auto",children:e}):null]})}])},4416,a=>{"use strict";let b=(0,a.i(70106).default)("ShieldCheck",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);a.s(["ShieldCheck",0,b],4416)},41710,a=>{"use strict";let b=(0,a.i(70106).default)("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);a.s(["Clock",0,b],41710)},5641,a=>{"use strict";let b=(0,a.i(70106).default)("Play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]]);a.s(["Play",0,b],5641)},69922,a=>{"use strict";let b=(0,a.i(70106).default)("Link2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]);a.s(["Link2",0,b],69922)},40897,a=>{"use strict";var b=a.i(87924),c=a.i(70777),d=a.i(66384),e=a.i(4416),f=a.i(82478),g=a.i(5641),h=a.i(87654),i=a.i(69922),j=a.i(41710),k=a.i(76645),l=a.i(18517),m=a.i(82717),n=a.i(81926),o=a.i(97222),p=a.i(12466),q=a.i(9173),r=a.i(89697);a.i(28130);var s=a.i(29457);function t(){let{t:a,locale:c}=(0,s.useTranslation)(),t=(0,k.useEscalations)(),u=(0,l.useSetTaskStatus)(),v=(0,l.useApproveGate)(),w=(0,l.useResumeMission)(),{toast:x}=(0,r.useToast)();return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(o.ModuleHeader,{title:a.escalations.title,count:t.length,icon:d.ShieldAlert}),0===t.length?(0,b.jsx)(q.EmptyState,{title:a.escalations.empty,description:a.escalations.emptyDesc,icon:e.ShieldCheck}):(0,b.jsx)("div",{className:"flex flex-col gap-3",children:t.map(e=>{let k=(0,n.formatTaskTime)(e.ts,Date.now(),c);return(0,b.jsxs)("article",{className:"flex flex-col gap-3 rounded-lg border border-warning/40 bg-warning/[0.05] p-4",style:{boxShadow:"var(--shadow-card)"},children:[(0,b.jsxs)("div",{className:"flex items-start gap-3",children:[(0,b.jsx)("span",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-lg border border-warning/40 bg-warning/10",children:(0,b.jsx)(d.ShieldAlert,{size:20,className:"text-warning","aria-hidden":!0})}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("h2",{className:"truncate text-sm font-semibold text-text",children:e.title}),(0,b.jsxs)("div",{className:"mt-0.5 flex flex-wrap items-center gap-x-2 gap-y-0.5 font-mono text-[11px] text-text-muted",children:[e.epicId?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(f.Rocket,{size:11,className:"shrink-0","aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate",children:e.epicId})]}):null,k.label?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{"aria-hidden":!0,className:"opacity-50",children:"·"}),(0,b.jsx)(j.Clock,{size:11,className:"shrink-0","aria-hidden":!0}),(0,b.jsx)("span",{title:k.title,children:k.label})]}):null]})]})]}),(0,b.jsxs)("div",{className:"rounded-md border border-border bg-elevated p-3",children:[(0,b.jsx)("div",{className:"mb-1 text-[11px] font-semibold uppercase tracking-wide text-text-muted",children:a.escalations.rationale}),(0,b.jsx)("p",{className:"whitespace-pre-wrap text-sm leading-relaxed text-text",children:e.rationale||a.escalations.noReason})]}),e.blocked.length>0?(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-text-muted",children:a.escalations.blockedBy}),(0,b.jsx)("ul",{className:"flex flex-col gap-1",children:e.blocked.map(a=>(0,b.jsxs)("li",{className:"flex items-center gap-2 text-xs text-text",children:[(0,b.jsx)(i.Link2,{size:12,className:"shrink-0 text-text-muted","aria-hidden":!0}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate",children:a.title})]},a.id))})]}):null,(0,b.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2",children:[(0,b.jsx)(p.Button,{variant:"ghost",icon:h.RotateCcw,onClick:()=>{u.mutate({id:e.taskId,status:"open"},{onSuccess:()=>{e.epicId&&w.mutate(`m-${e.epicId}`,{onError:()=>{}}),x(a.escalations.rerunning)},onError:b=>x((0,m.apiErrorMessage)(b)||a.escalations.actionError,"error")})},disabled:u.isPending,children:a.escalations.rerun}),(0,b.jsx)(p.Button,{variant:"accent",icon:g.Play,onClick:()=>{0!==e.blocked.length&&v.mutate(e.taskId,{onSuccess:()=>{e.epicId&&w.mutate(`m-${e.epicId}`,{onError:()=>{}}),x(a.escalations.approved)},onError:b=>x((0,m.apiErrorMessage)(b)||a.escalations.actionError,"error")})},disabled:0===e.blocked.length||v.isPending,children:a.escalations.approve})]})]},`${e.taskId}-${e.ts}`)})})]})}a.s(["default",0,function(){return(0,b.jsx)(c.ModuleShell,{moduleId:"escalations",children:(0,b.jsx)(t,{})})},"dynamic",0,"force-dynamic"],40897)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=_1std18n._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[4416,a=>{"use strict";let b=(0,a.i(70106).default)("ShieldCheck",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);a.s(["ShieldCheck",0,b],4416)},53876,a=>{"use strict";var b=a.i(87924);a.s(["Field",0,function({label:a,htmlFor:c,children:d,hint:e}){return(0,b.jsxs)("label",{htmlFor:c,className:"flex flex-col gap-1.5",children:[(0,b.jsx)("span",{className:"text-xs font-medium uppercase tracking-wide text-text-muted",children:a}),d,e?(0,b.jsx)("span",{className:"text-xs text-text-muted",children:e}):null]})}])},97222,a=>{"use strict";var b=a.i(87924);a.s(["ModuleHeader",0,function({title:a,count:c,icon:d,children:e}){return(0,b.jsxs)("div",{className:"z-20 -mx-4 -mt-4 mb-5 flex flex-col gap-2 border-b border-border bg-bg px-4 py-3 md:sticky md:top-0 md:flex-row md:flex-wrap md:items-center md:gap-x-3",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[d?(0,b.jsx)(d,{size:16,className:"shrink-0 text-text-muted","aria-hidden":!0}):null,(0,b.jsx)("h1",{className:"text-base font-semibold tracking-tight text-text",children:a}),void 0!==c?(0,b.jsx)("span",{className:"rounded-full bg-elevated px-2 py-0.5 font-mono text-[11px] text-text-muted",children:c}):null]}),e?(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-2 md:ml-auto",children:e}):null]})}])},70777,a=>{"use strict";var b=a.i(87924);a.s(["ModuleShell",0,function({moduleId:a,children:c}){return(0,b.jsx)("section",{"data-module":a,className:"module-root flex flex-col gap-4",children:c})}])},9173,a=>{"use strict";var b=a.i(87924),c=a.i(12466);a.i(28130);var d=a.i(29457);a.s(["EmptyState",0,function({title:a,description:c,icon:d,action:e}){return(0,b.jsxs)("div",{className:"flex animate-fade-up flex-col items-center justify-center gap-3 py-14 text-center",children:[d?(0,b.jsx)(d,{size:28,strokeWidth:1.25,className:"text-text-muted/40","aria-hidden":!0}):null,(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)("p",{className:"text-sm uppercase tracking-wide text-text",children:a}),c&&(0,b.jsx)("p",{className:"text-xs text-text-muted",children:c})]}),e]})},"ErrorState",0,function({message:a,onRetry:e}){let{t:f}=(0,d.useTranslation)();return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center gap-2 py-12 text-center",children:[(0,b.jsx)("p",{className:"text-sm text-accent",children:a}),e&&(0,b.jsx)(c.Button,{onClick:e,children:f.common.retry})]})},"LoadingState",0,function({label:a,variant:c="list"}){let{t:e}=(0,d.useTranslation)();return a?(0,b.jsx)("div",{className:"flex items-center justify-center py-12 font-mono text-xs text-text-muted animate-pulse",children:a}):"cards"===c?(0,b.jsx)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4,5].map(a=>(0,b.jsxs)("div",{className:"flex flex-col gap-2.5 rounded-lg border border-border bg-surface p-3",style:{boxShadow:"var(--shadow-card)"},children:[(0,b.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,b.jsx)("div",{className:"skeleton h-9 w-9 rounded-lg"}),(0,b.jsxs)("div",{className:"flex flex-1 flex-col gap-1.5",children:[(0,b.jsx)("div",{className:"skeleton h-3.5 w-2/3 rounded"}),(0,b.jsx)("div",{className:"skeleton h-3 w-1/3 rounded"})]})]}),(0,b.jsx)("div",{className:"skeleton h-6 w-full rounded-md"})]},a))}):"kanban"===c?(0,b.jsx)("div",{className:"flex gap-3 overflow-hidden","aria-busy":"true","aria-label":e.common.loading,children:[0,1,2,3,4].map(a=>(0,b.jsxs)("div",{className:"flex min-w-[14rem] flex-1 flex-col gap-2 rounded-lg border border-border bg-surface p-2",children:[(0,b.jsx)("div",{className:"skeleton h-3 w-20 rounded"}),[0,1,2].map(a=>(0,b.jsx)("div",{className:"skeleton h-12 w-full rounded-md"},a))]},a))}):(0,b.jsx)("div",{className:"flex flex-col gap-2.5 py-2","aria-busy":"true","aria-label":e.common.loading,children:[88,72,80,64].map((a,c)=>(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("div",{className:"skeleton h-4 w-4 rounded-md"}),(0,b.jsx)("div",{className:"skeleton h-3.5 rounded",style:{width:`${a}%`}})]},c))})}])},34048,a=>{"use strict";var b=a.i(87924);let c={default:"border-border bg-elevated text-text-muted",accent:"border-accent/40 bg-accent/10 text-accent",muted:"border-border bg-elevated text-text-muted",danger:"border-danger/40 bg-danger/10 text-danger",success:"border-success/40 bg-success/10 text-success",warning:"border-warning/40 bg-warning/10 text-warning"};a.s(["Badge",0,function({children:a,tone:d="default"}){return(0,b.jsx)("span",{className:`inline-flex items-center rounded-md border px-2 py-0.5 font-mono text-[11px] font-medium ${c[d]}`,children:a})}])},88736,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(35112);a.i(28130);var e=a.i(29457);let f={lg:"h-[88vh] w-[92vw]",xl:"max-h-[90vh] w-full max-w-2xl",md:"max-h-[88vh] w-full max-w-lg",sm:"max-h-[80vh] w-full max-w-md"};a.s(["Modal",0,function({title:a,onClose:g,children:h,size:i="lg",icon:j,description:k}){let{t:l}=(0,e.useTranslation)(),[m,n]=(0,c.useState)(!1);return((0,c.useEffect)(()=>n(!0),[]),(0,c.useEffect)(()=>{let a=a=>{"Escape"===a.key&&g()};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[g]),m)?(0,d.createPortal)((0,b.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/70 p-4",onClick:g,children:(0,b.jsxs)("div",{className:`animate-pop-in flex flex-col rounded-lg bg-surface border border-border ${f[i]}`,style:{boxShadow:"var(--shadow-raised)"},onClick:a=>a.stopPropagation(),children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 border-b border-border px-5 py-3",children:[j?(0,b.jsx)("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-lg border border-border bg-elevated",children:(0,b.jsx)(j,{size:18,className:"text-accent","aria-hidden":!0})}):null,(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("h2",{className:"truncate text-sm font-semibold text-text",children:a}),k?(0,b.jsx)("p",{className:"truncate text-xs text-text-muted",children:k}):null]}),(0,b.jsx)("button",{type:"button","aria-label":l.common.close,onClick:g,className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-text-muted transition-colors hover:bg-elevated hover:text-text",children:"×"})]}),(0,b.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:h})]})}),document.body):null},"ModalBody",0,function({children:a,gap:c=5}){return(0,b.jsx)("div",{className:`flex min-h-0 flex-1 flex-col overflow-y-auto p-5 ${4===c?"gap-4":6===c?"gap-6":"gap-5"}`,children:a})},"ModalFooter",0,function({children:a}){return(0,b.jsx)("div",{className:"flex shrink-0 items-center justify-end gap-2 border-t border-border px-5 py-3",children:a})}])},81560,a=>{"use strict";let b=(0,a.i(70106).default)("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);a.s(["Trash2",0,b],81560)},49134,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(35112),e=a.i(81560);a.i(28130);var f=a.i(29457);a.s(["ActionMenu",0,function({items:a,label:g,trigger:h,align:i="right"}){let[j,k]=(0,c.useState)(!1),l=(0,c.useRef)(null),m=(0,c.useRef)(null),n=(0,c.useRef)(null),o=(0,c.useRef)(null),{t:p}=(0,f.useTranslation)(),q=g??p.common.actions,[r,s]=(0,c.useState)(null),[t,u]=(0,c.useState)(!1);(0,c.useEffect)(()=>u(!0),[]);let v=()=>{let a=m.current;if(!a)return;let b=a.getBoundingClientRect();s("right"===i?{top:b.bottom,right:window.innerWidth-b.right}:{top:b.bottom,left:b.left})},w=()=>{o.current&&(clearTimeout(o.current),o.current=null)},x=()=>{w(),o.current=setTimeout(()=>k(!1),160)},y=()=>{w(),v(),k(!0)};return(0,c.useEffect)(()=>{if(!j)return;let a=a=>{l.current?.contains(a.target)||n.current?.contains(a.target)||k(!1)},b=a=>{"Escape"===a.key&&k(!1)},c=()=>v();return document.addEventListener("mousedown",a),document.addEventListener("keydown",b),window.addEventListener("resize",c),window.addEventListener("scroll",c,!0),()=>{document.removeEventListener("mousedown",a),document.removeEventListener("keydown",b),window.removeEventListener("resize",c),window.removeEventListener("scroll",c,!0)}},[j]),(0,c.useEffect)(()=>()=>w(),[]),(0,b.jsxs)("div",{ref:l,className:"relative",onMouseEnter:y,onMouseLeave:x,children:[(0,b.jsx)("button",{ref:m,type:"button","aria-label":q,"aria-haspopup":"menu","aria-expanded":j,title:q,onClick:()=>j?k(!1):y(),className:"inline-flex h-8 w-8 items-center justify-center rounded-md border border-danger/60 text-danger transition-colors hover:bg-danger hover:text-white",style:{transitionDuration:"var(--motion-fast)"},children:h??(0,b.jsx)(e.Trash2,{size:15,"aria-hidden":!0})}),t&&j&&r&&(0,d.createPortal)((0,b.jsx)("div",{ref:n,role:"menu",onMouseEnter:w,onMouseLeave:x,className:"fixed z-[61] min-w-[12rem] overflow-hidden rounded-lg border border-border bg-surface py-1.5",style:{top:r.top,left:r.left,right:r.right,boxShadow:"var(--shadow-raised)"},children:a.map(a=>{let c=a.icon,d="danger"===a.tone;return(0,b.jsxs)("button",{type:"button",role:"menuitem",onClick:()=>{k(!1),a.onSelect()},className:`flex w-full items-center gap-2.5 px-3.5 py-2.5 text-left text-sm transition-colors ${d?"text-danger hover:bg-danger hover:text-white":"text-text hover:bg-elevated"}`,style:{transitionDuration:"var(--motion-fast)"},children:[c?(0,b.jsx)(c,{size:15,"aria-hidden":!0}):null,a.label]},a.label)})}),document.body)]})}])},17371,a=>{"use strict";let b=(0,a.i(70106).default)("UserPlus",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"19",x2:"19",y1:"8",y2:"14",key:"1bvyxn"}],["line",{x1:"22",x2:"16",y1:"11",y2:"11",key:"1shjgl"}]]);a.s(["UserPlus",0,b],17371)},70604,a=>{"use strict";var b=a.i(87924),c=a.i(70777),d=a.i(72131),e=a.i(60246),f=a.i(17371),g=a.i(81560),h=a.i(70106);let i=(0,h.default)("LogOut",[["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}],["polyline",{points:"16 17 21 12 16 7",key:"1gabdz"}],["line",{x1:"21",x2:"9",y1:"12",y2:"12",key:"1uyos4"}]]),j=(0,h.default)("Shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]);var k=a.i(4416),l=a.i(34531),m=a.i(94392),n=a.i(76645),o=a.i(18517),p=a.i(68522),q=a.i(30067),r=a.i(89697),s=a.i(14800),t=a.i(34048),u=a.i(12466),v=a.i(18180),w=a.i(53876),x=a.i(88736),y=a.i(49134),z=a.i(7947),A=a.i(97222),B=a.i(9173);a.i(28130);var C=a.i(29457),D=a.i(81926);function E({userId:a,projects:c}){let{t:d}=(0,C.useTranslation)(),e=(0,n.useUserProjects)(a),f=(0,o.useAssignProject)(),g=new Set(e.data??[]);return 0===c.length?null:(0,b.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-1.5",children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[11px] uppercase tracking-wide text-text-muted",children:[(0,b.jsx)(l.FolderGit2,{size:12,"aria-hidden":!0}),d.users.projects]}),c.map(c=>{let d=g.has(c.id);return(0,b.jsx)("button",{type:"button",onClick:()=>f.mutate({userId:a,projectId:c.id,currentlyAssigned:d}),disabled:f.isPending,className:`rounded-full border px-2.5 py-1 text-xs transition-colors ${d?"border-accent bg-accent/15 text-accent":"border-border text-text-muted hover:bg-elevated"}`,children:c.slug},c.id)})]})}function F({user:a,globalExecs:c,custom:d}){let{t:e}=(0,C.useTranslation)(),f=(0,o.useUpdateUser)(),{toast:g}=(0,r.useToast)(),h=new Set(a.allowed_execs);return 0===c.length?null:(0,b.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-1.5",children:[(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-[11px] uppercase tracking-wide text-text-muted",children:[(0,b.jsx)(m.Cpu,{size:12,"aria-hidden":!0}),e.users.allowedModels]}),c.map(c=>{let i=h.has(c);return(0,b.jsxs)("button",{type:"button",onClick:()=>{let b;(b=new Set(h)).has(c)?b.delete(c):b.add(c),f.mutate({id:a.id,patch:{allowed_execs:[...b]}},{onSuccess:()=>g(e.users.modelsUpdated),onError:a=>g(String(a)||e.users.updateError,"error")})},disabled:f.isPending,className:`inline-flex items-center gap-1.5 rounded-full border px-2.5 py-1 text-xs transition-colors ${i?"border-accent bg-accent/15 text-accent":"border-border text-text-muted hover:bg-elevated"}`,children:[(0,b.jsx)(z.ModelIcon,{name:c,size:14}),(0,p.allModels)(d).find(a=>a.exec===c)?.label??c]},c)}),0===h.size?(0,b.jsx)("span",{className:"text-[11px] italic text-text-muted",children:e.users.allModelsHint}):null]})}function G(){let a=(0,n.useUsers)(),c=(0,n.useMe)(),h=(0,n.useProjects)(),l=(0,o.useDeleteUser)(),m=(0,o.useCreateUser)(),p=(0,o.useUpdateUser)(),z=(0,o.useLogout)(),G=(0,n.useConfig)(),{toast:H}=(0,r.useToast)(),{t:I,locale:J}=(0,C.useTranslation)(),[K,L]=(0,d.useState)(!1),[M,N]=(0,d.useState)(""),[O,P]=(0,d.useState)(""),Q=a.data??[],R=c.data?.user?.is_admin??!1,S=G.data?.allowedExecs??[],T=G.data?.customModels??[];return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(A.ModuleHeader,{title:I.page.users,count:a.data?.length,icon:e.Users,children:[(0,b.jsx)(u.Button,{variant:"ghost",icon:i,onClick:function(){z.mutate(void 0,{onSuccess:()=>{(0,q.clearToken)(),window.location.reload()},onError:()=>{(0,q.clearToken)(),window.location.reload()}})},disabled:z.isPending,children:I.users.logout}),(0,b.jsx)(u.Button,{variant:"accent",icon:f.UserPlus,onClick:()=>L(!0),children:I.users.newUser})]}),a.isLoading?(0,b.jsx)(B.LoadingState,{}):a.isError?(0,b.jsx)(B.ErrorState,{message:I.users.loadError,onRetry:()=>a.refetch()}):0===Q.length?(0,b.jsx)(B.EmptyState,{title:I.users.empty,description:I.users.emptyDescription,icon:e.Users,action:(0,b.jsx)(u.Button,{variant:"accent",icon:f.UserPlus,onClick:()=>L(!0),children:I.users.newUser})}):(0,b.jsx)("ul",{className:"flex flex-col gap-2.5",children:Q.map(a=>(0,b.jsxs)("li",{className:"card-interactive group flex items-center gap-3.5 rounded-lg border border-border bg-surface p-3.5",children:[(0,b.jsx)(s.Avatar,{user:a,size:48}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-0.5",children:[(0,b.jsxs)("span",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"truncate font-semibold text-text",children:a.name||a.username}),a.is_admin?(0,b.jsxs)(t.Badge,{tone:"accent",children:[(0,b.jsx)(k.ShieldCheck,{size:11,className:"mr-1","aria-hidden":!0}),I.users.admin]}):null]}),(0,b.jsxs)("span",{className:"truncate font-mono text-xs text-text-muted",children:["@",a.username," · ",(0,D.localDateTime)(a.created_at,J,!1)]}),R?(0,b.jsx)(E,{userId:a.id,projects:h.data??[]}):null,R?(0,b.jsx)(F,{user:a,globalExecs:S,custom:T}):null]}),(0,b.jsx)("div",{className:"shrink-0 opacity-0 transition-opacity group-hover:opacity-100 focus-within:opacity-100",children:(0,b.jsx)(y.ActionMenu,{label:I.users.deleteLabel.replace("{username}",a.username),items:[...R?[{label:a.is_admin?I.users.removeAdmin:I.users.makeAdmin,icon:a.is_admin?j:k.ShieldCheck,onSelect:()=>{p.isPending||p.mutate({id:a.id,patch:{is_admin:!a.is_admin}},{onSuccess:()=>H(I.users.roleUpdated),onError:a=>H(String(a)||I.users.updateError,"error")})}}]:[],{label:Q.length<=1?I.users.lastUserHint:I.users.delete,icon:g.Trash2,tone:"danger",onSelect:()=>{var b;Q.length>1&&!l.isPending&&(b=a.id,l.mutate(b,{onSuccess:()=>H(I.users.userDeleted),onError:a=>H(String(a),"error")}))}}]})})]},a.id))}),K&&(0,b.jsx)(x.Modal,{title:I.users.addUser,onClose:()=>L(!1),size:"md",icon:f.UserPlus,children:(0,b.jsxs)("form",{onSubmit:a=>{a.preventDefault(),m.mutate({username:M,password:O},{onSuccess:()=>{H(I.users.userCreated),L(!1),N(""),P("")},onError:a=>H(String(a),"error")})},className:"flex min-h-0 flex-1 flex-col",children:[(0,b.jsxs)(x.ModalBody,{gap:4,children:[(0,b.jsx)(w.Field,{label:I.users.fieldUsername,children:(0,b.jsx)(v.Input,{type:"text",value:M,onChange:a=>N(a.target.value),placeholder:I.auth.usernamePlaceholder,autoFocus:!0})}),(0,b.jsx)(w.Field,{label:I.auth.passwordPlaceholder,children:(0,b.jsx)(v.Input,{type:"password",value:O,onChange:a=>P(a.target.value),placeholder:I.auth.passwordPlaceholder})})]}),(0,b.jsxs)(x.ModalFooter,{children:[(0,b.jsx)(u.Button,{type:"button",variant:"ghost",onClick:()=>L(!1),children:I.common.cancel}),(0,b.jsx)(u.Button,{type:"submit",variant:"accent",icon:f.UserPlus,disabled:m.isPending||!M.trim()||!O,children:I.users.create})]})]})})]})}a.s(["default",0,function(){return(0,b.jsx)(c.ModuleShell,{moduleId:"users",children:(0,b.jsx)(G,{})})},"dynamic",0,"force-dynamic"],70604)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=_1zd7t3t._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[69474,a=>{"use strict";var b=a.i(87924),c=a.i(70777),d=a.i(72131),e=a.i(50944),f=a.i(15618),g=a.i(55023),h=a.i(87532),i=a.i(42900),j=a.i(81560),k=a.i(33508),l=a.i(13749),m=a.i(50522),n=a.i(60702),o=a.i(67329),p=a.i(76645),q=a.i(81415),r=a.i(31423),s=a.i(18517),t=a.i(99464),u=a.i(5641),v=a.i(70106);let w=(0,v.default)("Square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);var x=a.i(97593),y=a.i(5292),z=a.i(69922),A=a.i(5151),B=a.i(4416),C=a.i(87654);let D=(0,v.default)("ScrollText",[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]]);var E=a.i(82717),F=a.i(89697);a.i(28130);var G=a.i(29457);function H(a){let b=(0,s.useSpawn)(),c=(0,s.useKillSession)(),d=(0,s.useSetTaskStatus)(),e=(0,s.useSendInput)(),f=(0,p.useSessions)(),{toast:g}=(0,F.useToast)(),{t:h}=(0,G.useTranslation)(),i=(0,q.taskExec)(a.labels),j=(0,q.taskSessionName)(a),k="in_progress"===a.status&&!!j&&(f.data??[]).includes(j);return{session:j,running:k,start:()=>b.mutate({taskId:a.id,exec:i||void 0},{onSuccess:a=>g(h.tasks.launched.replace("{session}",a.session)),onError:a=>g((0,E.apiErrorMessage)(a),"error")}),stop:()=>{j&&c.mutate(j),d.mutate({id:a.id,status:"open"},{onSuccess:()=>g(h.tasks.stopped.replace("{id}",a.id)),onError:a=>g((0,E.apiErrorMessage)(a),"error")})},pause:()=>{j&&e.mutate({name:j,keys:["C-c"]},{onSuccess:()=>g(h.sessions.interrupted.replace("{name}",j)),onError:a=>g((0,E.apiErrorMessage)(a),"error")})}}}var I=a.i(81926),J=a.i(34048),K=a.i(7947),L=a.i(80789),M=a.i(47034),N=a.i(29930),O=a.i(90854),P=a.i(91589),Q=a.i(76773),R=a.i(9173),S=a.i(30322),T=a.i(35360);function U({taskId:a,onEdit:c,onBack:e}){let{t:f,locale:g}=(0,G.useTranslation)(),h=(0,p.useTasks)(),j=(0,p.useAllDeps)(),k=(0,p.useActivity)("signal"),{data:m}=(0,p.useConfig)(),n=(0,s.useCloseTask)(),o=(0,s.useSetTaskStatus)(),r=(0,s.useResumeMission)(),{toast:v}=(0,F.useToast)(),[W,X]=(0,d.useState)(!1),Y=h.data?.find(b=>b.id===a),{session:Z,running:$,start:_,stop:aa,pause:ab}=H(Y??{id:a,title:"",status:"open"}),ac=(0,p.useSessionSignal)(Z??"");if(!Y)return(0,b.jsx)(R.EmptyState,{title:f.tasks.selectHint,icon:y.TerminalSquare});let ad=(0,T.taskTypeMeta)(Y.type).icon,ae=(0,q.taskExec)(Y.labels),af=ae||m?.defaults?.exec||"",ag=(0,q.taskAgentName)(Y),ah="closed"===Y.status||"cancelled"===Y.status,ai=Y.closed_at||Y.created_at,aj=(0,I.formatTaskTime)(ai,Date.now(),g),ak=new Map((h.data??[]).map(a=>[a.id,a])),al=(j.data??[]).filter(b=>b.task_id===a).map(a=>ak.get(a.depends_on_id)).filter(a=>!!a),am=(k.data??[]).filter(b=>b.target===a||Z&&b.target===Z).slice(0,6),an=async()=>{try{await navigator.clipboard.writeText(Y.id),v(f.tasks.idCopied.replace("{id}",Y.id))}catch{v(f.tasks.idCopyFailed,"error")}},ao=!!Y.parent_id,ap="epic"===Y.type,aq=a=>{o.mutate({id:Y.id,status:"open"},{onSuccess:()=>{ao&&r.mutate(`m-${Y.parent_id}`,{onError:()=>{}}),v(a.replace("{id}",Y.id))},onError:a=>v((0,E.apiErrorMessage)(a),"error")})};return(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"sticky top-0 z-10 -mx-4 flex flex-col gap-2 border-b border-border bg-surface px-4 pb-3 pt-1",children:[e?(0,b.jsxs)("button",{type:"button",onClick:e,className:"-ml-1 inline-flex w-fit items-center gap-1 rounded-md px-1.5 py-1 text-xs text-text-muted transition-colors hover:bg-elevated hover:text-text",children:[(0,b.jsx)(l.ChevronLeft,{size:14,"aria-hidden":!0}),f.tasks.backToFlow]}):null,(0,b.jsxs)("div",{className:"flex items-start gap-3",children:[(0,b.jsx)("span",{className:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl border border-border bg-elevated",children:af?(0,b.jsx)(K.ModelIcon,{name:af,size:26}):(0,b.jsx)(ad,{size:22,className:"text-text-muted","aria-hidden":!0})}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("h2",{className:"min-w-0 flex-1 text-base font-semibold text-text",children:Y.title}),(0,b.jsx)(M.AgentStatusDot,{signal:ac,live:$})]}),(0,b.jsxs)("div",{className:"mt-1 flex flex-wrap items-center gap-x-2 gap-y-1 font-mono text-[11px] text-text-muted",children:[(0,b.jsx)("span",{children:Y.id}),(0,b.jsx)(L.IconButton,{icon:A.Copy,label:f.tasks.copyId,onClick:an}),ag?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{"aria-hidden":!0,className:"opacity-50",children:"·"}),(0,b.jsx)("span",{children:(0,q.taskSessionName)(Y)})]}):null,aj.label?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{"aria-hidden":!0,className:"opacity-50",children:"·"}),(0,b.jsx)("span",{title:aj.title,children:aj.label})]}):null]})]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,b.jsx)(J.Badge,{tone:(0,S.statusTone)(Y.status),children:(0,T.statusLabel)(f,Y.status)}),ah?(0,b.jsx)(N.OutcomeBadge,{outcome:Y.outcome}):null,ae?(0,b.jsx)(J.Badge,{children:ae}):null,ag?(0,b.jsx)(O.TaskUsageBadge,{taskId:Y.id,live:$}):null]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-1",children:[$?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(L.IconButton,{icon:w,label:f.tasks.stop,variant:"danger",onClick:aa}),(0,b.jsx)(L.IconButton,{icon:x.SquareSlash,label:f.sessions.interrupt,onClick:ab})]}):"blocked"===Y.status&&ao?(0,b.jsx)(L.IconButton,{icon:B.ShieldCheck,label:f.tasks.approveContinue,onClick:()=>aq(f.tasks.approved)}):ah&&ao?(0,b.jsx)(L.IconButton,{icon:C.RotateCcw,label:f.tasks.rerun,onClick:()=>aq(f.tasks.rerunning)}):(0,b.jsx)(L.IconButton,{icon:u.Play,label:f.tasks.start,onClick:_}),Z?(0,b.jsx)(L.IconButton,{icon:y.TerminalSquare,label:f.tasks.openTerminal,onClick:()=>X(!0)}):null,c?(0,b.jsx)(L.IconButton,{icon:t.Pencil,label:f.common.edit,onClick:()=>c(Y)}):null,ah?null:(0,b.jsx)(L.IconButton,{icon:i.Archive,label:f.tasks.closeArchive,onClick:()=>n.mutate(Y.id,{onSuccess:()=>v(f.tasks.closed.replace("{id}",Y.id)),onError:a=>v(String(a),"error")})})]})]}),Y.description?.trim()?(0,b.jsx)(V,{label:f.tasks.fieldDetails,children:(0,b.jsx)("p",{className:"whitespace-pre-wrap text-sm leading-relaxed text-text-muted",children:Y.description})}):null,al.length>0?(0,b.jsx)(V,{label:f.tasks.dependencies,children:(0,b.jsx)("ul",{className:"flex flex-col gap-1",children:al.map(a=>(0,b.jsxs)("li",{className:"flex items-center gap-2 text-xs",children:[(0,b.jsx)(z.Link2,{size:12,className:"shrink-0 text-text-muted","aria-hidden":!0}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-text",children:a.title}),(0,b.jsx)(J.Badge,{tone:(0,S.statusTone)(a.status),children:(0,T.statusLabel)(f,a.status)})]},a.id))})}):null,$&&Z?(0,b.jsx)(V,{label:f.tasks.liveOutput,children:(0,b.jsx)(P.LiveTail,{name:Z,lines:28,heightClass:"max-h-96",onExpand:()=>X(!0)})}):null,ah&&(Y.result_summary||Y.outcome)?(0,b.jsx)(V,{label:ap?f.tasks.missionSummaryTitle:f.tasks.resultTitle,children:(0,b.jsxs)("div",{className:"flex items-start gap-2.5 rounded-lg border border-border bg-elevated p-3",children:[(0,b.jsx)(D,{size:15,className:"mt-0.5 shrink-0 text-text-muted","aria-hidden":!0}),(0,b.jsx)("p",{className:"whitespace-pre-wrap text-sm leading-relaxed text-text",children:Y.result_summary?.trim()||f.tasks.noSummary})]})}):null,am.length>0?(0,b.jsx)(V,{label:f.tasks.recentActivity,children:(0,b.jsx)("ul",{className:"flex flex-col divide-y divide-border",children:am.map(a=>(0,b.jsxs)("li",{className:"flex items-center gap-2 py-1.5 text-xs",children:[(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-text-muted",children:a.detail}),(0,b.jsx)("span",{className:"shrink-0 font-mono text-text-muted opacity-70",children:a.ts.slice(11,16)})]},a.id))})}):null,W&&Z&&(0,b.jsx)(Q.TerminalModal,{session:Z,onClose:()=>X(!1)})]})}function V({label:a,children:c}){return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-text-muted",children:a}),c]})}var W=a.i(82478);function X({epic:a,phases:c,activeId:e,onSelectPhase:f}){let{t:g}=(0,G.useTranslation)(),h=(0,p.useSessions)(),i=(0,p.useSessionSignals)(),{data:j}=(0,p.useConfig)(),k=new Set(h.data??[]),{done:l,total:m}=(0,r.epicProgress)(c);return(0,b.jsxs)("div",{className:"flex flex-col",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 rounded-xl border border-accent/40 bg-accent/[0.06] p-3",style:{boxShadow:"var(--shadow-card)"},children:[(0,b.jsx)("span",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-lg border border-border bg-elevated",children:(0,b.jsx)(W.Rocket,{size:20,className:"text-accent","aria-hidden":!0})}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("h2",{className:"truncate text-sm font-semibold text-text",children:a.title}),(0,b.jsxs)("span",{className:"font-mono text-[11px] text-text-muted",children:[l,"/",m," ",g.tasks.phasesLabel]})]}),(0,b.jsx)(J.Badge,{tone:(0,S.statusTone)(a.status),children:(0,T.statusLabel)(g,a.status)})]}),c.map((a,c)=>{let h=(0,q.taskExec)(a.labels)||j?.defaults?.exec||"",l=(0,q.taskAgentName)(a),m=(0,q.taskSessionName)(a),n="in_progress"===a.status&&!!m&&k.has(m),o=m?i[m]:void 0,p=n||o?.type==="needs_input";return(0,b.jsxs)(d.Fragment,{children:[(0,b.jsx)("div",{className:"ml-5 flex h-6 w-px justify-center",children:(0,b.jsx)("span",{className:`h-full w-px ${p?"flow-edge flow-edge-active":"flow-edge"}`,"aria-hidden":!0})}),(0,b.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center",children:[(0,b.jsxs)("button",{type:"button",onClick:()=>f(a.id),className:`group flex min-w-0 flex-1 items-center gap-3 rounded-xl border bg-surface p-3 text-left transition-all hover:-translate-y-0.5 ${e===a.id?"border-accent":"border-border hover:border-border-strong"} ${p?"flow-active":""}`,style:{boxShadow:"var(--shadow-card)",transitionDuration:"var(--motion-fast)"},children:[(0,b.jsx)("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full border border-border bg-elevated font-mono text-[11px] text-text-muted",children:c+1}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-sm font-medium text-text",children:a.title}),(0,b.jsx)(J.Badge,{tone:(0,S.statusTone)(a.status),children:(0,T.statusLabel)(g,a.status)})]}),h||l?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"hidden h-px w-6 shrink-0 sm:block flow-edge-h","aria-hidden":!0}),(0,b.jsxs)("div",{className:"flex shrink-0 flex-col gap-1.5 pl-8 sm:pl-0",children:[h?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-lg border border-border bg-elevated px-2 py-1 text-[11px] text-text-muted",title:h,children:[(0,b.jsx)(K.ModelIcon,{name:h,size:14}),(0,b.jsx)("span",{className:"font-mono",children:h})]}):null,l?(0,b.jsxs)("button",{type:"button",onClick:()=>f(a.id),className:"inline-flex items-center gap-1.5 rounded-lg border border-border bg-elevated px-2 py-1 text-[11px] text-text transition-colors hover:border-border-strong",title:l,children:[(0,b.jsx)(M.AgentStatusDot,{signal:o,live:n,size:"sm"}),(0,b.jsx)("span",{className:"font-mono",children:l})]}):null]})]}):null]})]},a.id)})]})}var Y=a.i(49651),Z=a.i(8549),$=a.i(30206),_=a.i(72089),aa=a.i(58530),ab=a.i(32824),ac=a.i(49134),ad=a.i(57581),ae=a.i(41710),af=a.i(1027),ag=a.i(66429),ah=a.i(36421),ai=a.i(3470);function aj({task:a,onEdit:c,onSelect:e,active:f=!1,blockers:g,selected:h=!1,onToggleSelect:k,selecting:l=!1}){let m=(0,s.useCloseTask)(),n=(0,s.useDeleteTask)(),{toast:o}=(0,F.useToast)(),{t:r,locale:v}=(0,G.useTranslation)(),[x,y]=(0,d.useState)(!1),{data:z}=(0,p.useConfig)(),A=(0,T.taskTypeMeta)(a.type).icon,B=(0,q.taskExec)(a.labels)||z?.defaults?.exec||"",C="closed"===a.status,{session:D,running:E,start:O,stop:P,pause:Q}=H(a),R=(0,p.useSessionSignal)(D??""),U=(0,ai.useSessionStall)(D??"",E&&!!D),V=D?{stall:U.state,silenceSec:U.silenceSec}:{},W=(g?.length??0)>0,X=()=>(e??c)(a),Y=a.scheduled_at||a.closed_at||a.created_at,$=Y?(0,I.formatTaskTime)(Y,Date.now(),v):null;return(0,b.jsxs)("div",{role:"button",tabIndex:0,onClick:X,onKeyDown:a=>{"Enter"===a.key&&X()},className:`card-interactive group relative flex flex-wrap cursor-pointer items-center gap-x-3 gap-y-2 rounded-lg border p-2.5 ${h||f?"border-accent bg-accent/[0.06]":"border-border bg-surface"}`,children:[(0,b.jsx)("span",{className:`flex h-11 w-11 shrink-0 items-center justify-center rounded-xl border-2 bg-elevated ${E?"border-accent":"border-border"}`,children:B?(0,b.jsx)(K.ModelIcon,{name:B,size:26}):(0,b.jsx)(A,{size:22,className:"text-text-muted","aria-hidden":!0})}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-0.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("span",{className:"truncate text-sm font-medium text-text",children:a.title}),(0,b.jsx)(M.AgentStatusDot,{signal:R,live:E,size:"sm",...V})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[B?(0,b.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-1 rounded-md border border-border bg-elevated px-1.5 py-0.5 font-mono text-[11px] text-text-muted",title:B,children:[(0,b.jsx)(K.ModelIcon,{name:B,size:11}),(0,ag.execModel)(B)]}):(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,b.jsx)(A,{size:11,className:"shrink-0 text-text-muted","aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate font-mono text-[11px] text-text-muted",children:a.id})]}),W?(0,b.jsxs)("span",{className:"shrink-0 text-[11px] text-warning",title:g.map(a=>a.title).join(", "),children:["· ",r.tasks.dependencies," ",g.length]}):null]})]}),(0,b.jsxs)("div",{className:"flex w-full items-center justify-between gap-2 sm:w-auto sm:justify-end",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[$?(0,b.jsx)("span",{title:$.title,children:(0,b.jsxs)(J.Badge,{tone:"muted",children:[a.scheduled_at&&a.autostart?(0,b.jsx)(af.Zap,{size:11,className:"mr-1 inline","aria-hidden":!0}):(0,b.jsx)(ae.Clock,{size:11,className:"mr-1 inline","aria-hidden":!0}),$.label]})}):null,(0,b.jsx)(ab.ProjectPill,{projectId:a.project_id}),C?(0,b.jsx)(N.OutcomeBadge,{outcome:a.outcome}):null,(0,b.jsx)(J.Badge,{tone:(0,S.statusTone)(a.status),children:(0,T.statusLabel)(r,a.status)})]}),(0,b.jsxs)("div",{className:"flex shrink-0 items-center gap-1",onClick:a=>a.stopPropagation(),children:[E?(0,b.jsx)(L.IconButton,{icon:w,label:r.tasks.stop,variant:"danger",onClick:P}):(0,b.jsx)(L.IconButton,{icon:u.Play,label:r.tasks.start,onClick:O}),E?(0,b.jsx)(L.IconButton,{icon:Z.Pause,label:r.tasks.pause,onClick:Q}):null,(0,b.jsx)(L.IconButton,{icon:t.Pencil,label:r.common.edit,onClick:()=>c(a)}),(0,b.jsx)(ac.ActionMenu,{label:r.tasks.deleteOrClose,items:[{label:r.tasks.closeArchive,icon:i.Archive,onSelect:()=>m.mutate(a.id,{onSuccess:()=>o(r.tasks.closed.replace("{id}",a.id)),onError:a=>o(String(a),"error")})},{label:r.tasks.deletePermanently,icon:j.Trash2,tone:"danger",onSelect:()=>y(!0)}]})]})]}),k?(0,b.jsx)("button",{type:"button",role:"checkbox","aria-checked":h,"aria-label":r.sessions.selectLabel.replace("{id}",a.id),onClick:b=>{b.stopPropagation(),k(a.id)},className:`shrink-0 transition-opacity ${l||h?"opacity-100":"opacity-0 group-hover:opacity-100"}`,children:(0,b.jsx)(ah.Checkbox,{checked:h})}):null,x&&(0,b.jsx)("div",{onClick:a=>a.stopPropagation(),children:(0,b.jsx)(ad.ConfirmDialog,{open:x,title:r.tasks.confirmDeleteTitle.replace("{id}",a.id),description:r.tasks.confirmDeleteDescription,onClose:()=>y(!1),onConfirm:()=>{y(!1),n.mutate(a.id,{onSuccess:()=>o(r.tasks.deleted.replace("{id}",a.id)),onError:a=>o(String(a),"error")})}})})]})}var ak=a.i(8406),al=a.i(17545),am=a.i(68522),an=a.i(88736),ao=a.i(12466),ap=a.i(18180),aq=a.i(56993),ar=a.i(53876),as=a.i(83549);function at({epicId:a,onClose:c}){let{data:e}=(0,p.useConfig)(),h=(0,s.useInsertPhases)(),{toast:i}=(0,F.useToast)(),{t:j}=(0,G.useTranslation)(),l=(0,am.allModels)(e?.customModels,e?.hiddenPresets).filter(a=>!e?.allowedExecs||e.allowedExecs.includes(a.exec)),[m,n]=(0,d.useState)("manual"),[o,q]=(0,d.useState)(""),[r,t]=(0,d.useState)(""),[u,v]=(0,d.useState)([{title:"",type:"task"}]),w=h.isPending;async function x(){let b="manual"===m?{phases:u.map(a=>({title:a.title.trim(),type:a.type})).filter(a=>a.title)}:{goal:r.trim()};if("manual"===m&&(!b.phases||0===b.phases.length))return void i(j.missions.addPhaseAtLeastOne,"error");if("replan"===m&&!b.goal)return void i(j.missions.addPhaseGoalRequired,"error");let d={...b,exec:o||void 0};try{let b=await h.mutateAsync({epicId:a,body:d});i(j.missions.addPhaseInserted.replace("{count}",String(b.phases.length)).replace("{s}",1===b.phases.length?"":"s").replace("{epicId}",a)),c()}catch(a){a instanceof E.OrcaApiError&&"autopilot_key_missing"===a.code?i(j.tasks.autopilotKeyMissing,"error"):i(String(a),"error")}}return(0,b.jsxs)(an.Modal,{title:j.missions.addPhaseModalTitle.replace("{epic}",a),description:a,onClose:c,size:"md",icon:al.Layers,children:[(0,b.jsxs)(an.ModalBody,{children:[(0,b.jsx)("p",{className:"text-xs text-text-muted",children:j.missions.addPhaseModalDesc}),(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsx)(as.Segmented,{value:m,onChange:a=>n(a),options:[{value:"manual",label:j.missions.addPhaseModeManual,icon:g.ListChecks},{value:"replan",label:j.missions.addPhaseModeReplan,icon:ak.Sparkles}]}),(0,b.jsx)("p",{className:"text-xs text-text-muted",children:"manual"===m?j.missions.addPhaseManualDesc:j.missions.addPhaseReplanDesc})]}),"manual"===m?(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[u.map((a,c)=>(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(ap.Input,{value:a.title,placeholder:j.tasks.phasePlaceholder.replace("{n}",String(c+1)),onChange:a=>v(b=>b.map((b,d)=>d===c?{...b,title:a.target.value}:b))}),(0,b.jsx)(aq.Select,{value:a.type,onChange:a=>v(b=>b.map((b,d)=>d===c?{...b,type:a.target.value}:b)),className:"w-32",children:T.TASK_TYPES.filter(a=>"epic"!==a).map(a=>(0,b.jsx)("option",{value:a,children:(0,T.taskTypeLabel)(j,a)},a))}),(0,b.jsx)(L.IconButton,{icon:k.X,label:j.tasks.removePhase,onClick:()=>v(a=>a.length>1?a.filter((a,b)=>b!==c):a)})]},c)),(0,b.jsxs)("button",{type:"button",onClick:()=>v(a=>[...a,{title:"",type:"task"}]),className:"inline-flex items-center gap-1 self-start text-xs text-accent hover:underline",children:[(0,b.jsx)(f.Plus,{size:13,"aria-hidden":!0})," ",j.tasks.addPhase]})]}):(0,b.jsx)(ar.Field,{label:j.missions.addPhaseFieldGoal,hint:j.missions.addPhaseGoalHint,children:(0,b.jsx)("textarea",{value:r,onChange:a=>t(a.target.value),placeholder:j.missions.addPhaseGoalPlaceholder,rows:4,className:"w-full rounded-md border border-border bg-surface px-3 py-2 text-sm text-text placeholder:text-text-muted focus:border-accent focus:outline-none"})}),(0,b.jsx)(ar.Field,{label:j.missions.addPhaseFieldExecutor,children:(0,b.jsxs)(aq.Select,{value:o,onChange:a=>q(a.target.value),children:[(0,b.jsx)("option",{value:"",children:j.tasks.defaultExecutor}),l.map(a=>(0,b.jsx)("option",{value:a.exec,children:a.label},a.exec))]})})]}),(0,b.jsxs)(an.ModalFooter,{children:[(0,b.jsx)(ao.Button,{variant:"ghost",onClick:c,children:j.common.cancel}),(0,b.jsx)(ao.Button,{variant:"accent",disabled:w,onClick:x,children:j.missions.addPhaseInsert})]})]})}function au({epic:a,phases:c,effectiveStatus:e,expanded:g,onToggle:h,onEdit:i,onSelect:k,activeId:l,blockedBy:n}){let{t:o}=(0,G.useTranslation)(),q=(0,p.useSessions)(),t=(0,p.useSessionSignals)(),v=(0,p.useMissions)(),{data:w}=(0,p.useConfig)(),{toast:x}=(0,F.useToast)(),y=(0,s.useDeleteMission)(),z=(0,s.useEngage)(),A=(0,s.usePauseMission)(),B=(0,s.useResumeMission)(),C=(0,s.useDisengage)(),[D,H]=(0,d.useState)(!1),[K,L]=(0,d.useState)(!1),{done:M,total:N}=(0,r.epicProgress)(c),{running:O,needsInput:P}=(0,r.epicLive)(c,q.data??[],t),Q=(0,T.taskTypeMeta)("epic").icon,R=(0,Y.useQueries)({queries:c.map(a=>({queryKey:["task-usage",a.id],queryFn:()=>E.orcaClient.taskUsage(a.id),staleTime:3e5}))}).reduce((a,b)=>a+(b.data?.costUsd??0),0),U=v.data?.find(b=>b.epic_id===a.id)??null,V=(e??a.status)==="closed"||(e??a.status)==="cancelled",X=null!=U&&"disengaged"!==U.state,ae=U?.state==="paused";return(0,b.jsxs)("div",{className:"group/epic rounded-lg border border-accent/30 bg-accent/[0.04]",children:[(0,b.jsxs)("div",{className:"relative flex items-stretch",children:[(0,b.jsxs)("button",{type:"button",onClick:()=>{h(),k(a)},"aria-expanded":g,className:`flex min-w-0 flex-1 items-center gap-3 p-3 text-left transition-colors hover:bg-accent/[0.06] ${l===a.id?"bg-accent/[0.06]":""}`,children:[(0,b.jsx)(m.ChevronRight,{size:16,className:`shrink-0 text-text-muted transition-transform ${g?"rotate-90":""}`,"aria-hidden":!0}),(0,b.jsx)("span",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-lg border border-border bg-elevated",children:(0,b.jsx)(Q,{size:20,className:"text-accent","aria-hidden":!0})}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-sm font-semibold text-text",children:a.title}),P>0||O>0?(0,b.jsx)("span",{className:"live-dot h-2 w-2 shrink-0 rounded-full",style:{backgroundColor:P>0?"var(--color-warning)":"var(--color-success)","--live-ring":P>0?"color-mix(in srgb, var(--color-warning) 50%, transparent)":"color-mix(in srgb, var(--color-success) 50%, transparent)"},"aria-hidden":!0}):null]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(aa.ProgressRibbon,{phases:c,className:"max-w-[12rem] flex-1"}),(0,b.jsxs)("span",{className:"shrink-0 font-mono text-[11px] text-text-muted",children:[M,"/",N," ",o.tasks.phasesLabel]}),R>0?(0,b.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-0.5 rounded border border-approve/30 px-1.5 py-0.5 font-mono text-[11px] text-approve",title:`${o.usage.cost}: ${(0,I.formatCost)(R)}`,children:[(0,b.jsx)(_.Coins,{size:10,className:"shrink-0","aria-hidden":!0}),(0,I.formatCost)(R)]}):null,(0,b.jsx)(ab.ProjectPill,{projectId:a.project_id})]})]}),(0,b.jsx)(J.Badge,{tone:(0,S.statusTone)(e??a.status),children:(0,T.statusLabel)(o,e??a.status)})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1 pr-3",children:[X||V||U?null:(0,b.jsx)(av,{icon:W.Rocket,label:o.missions.engage,tone:"accent",onClick:()=>z.mutate({epicId:a.id,autonomy:w?.defaults?.autonomy??"L3",maxSessions:w?.defaults?.maxSessions??1},{onSuccess:()=>x(o.missions.engaged.replace("{epicId}",a.id)),onError:a=>x(String(a),"error")}),disabled:z.isPending}),X?(0,b.jsxs)(b.Fragment,{children:[ae?(0,b.jsx)(av,{icon:u.Play,label:o.missions.resume,tone:"accent",onClick:()=>B.mutate(U.id,{onSuccess:()=>x(o.missions.resumed),onError:a=>x(String(a),"error")}),disabled:B.isPending}):(0,b.jsx)(av,{icon:Z.Pause,label:o.missions.pause,onClick:()=>A.mutate(U.id,{onSuccess:()=>x(o.missions.pausedMsg),onError:a=>x(String(a),"error")}),disabled:A.isPending}),(0,b.jsx)(av,{icon:$.Power,label:o.missions.disengage,tone:"danger",onClick:()=>C.mutate(U.id,{onSuccess:()=>x(o.missions.disengaged),onError:a=>x(String(a),"error")}),disabled:C.isPending})]}):null,(0,b.jsx)("div",{className:"opacity-0 transition-opacity group-hover/epic:opacity-100",children:(0,b.jsx)(ac.ActionMenu,{label:o.tasks.epicActions,items:[{label:o.missions.addPhase,icon:f.Plus,onSelect:()=>L(!0)},{label:o.tasks.deleteMission,icon:j.Trash2,tone:"danger",onSelect:()=>H(!0)}]})})]})]}),g?(0,b.jsx)("div",{className:"flex flex-col gap-2.5 rounded-b-lg border-t border-accent/20 bg-bg/30 p-2.5 pl-5",children:c.map(a=>(0,b.jsx)(aj,{task:a,onEdit:i,onSelect:k,active:l===a.id,blockers:n.get(a.id)},a.id))}):null,K&&(0,b.jsx)(at,{epicId:a.id,onClose:()=>L(!1)}),(0,b.jsx)(ad.ConfirmDialog,{open:D,title:o.tasks.confirmDeleteMissionTitle.replace("{id}",a.id),description:o.tasks.confirmDeleteMissionDescription,confirmLabel:o.tasks.deleteMission,onClose:()=>H(!1),onConfirm:()=>{H(!1),y.mutate(a.id,{onSuccess:()=>x(o.tasks.missionDeleted.replace("{id}",a.id)),onError:a=>x(String(a),"error")})}})]})}function av({icon:a,label:c,onClick:d,tone:e="default",disabled:f}){return(0,b.jsxs)("button",{type:"button",onClick:d,disabled:f,title:c,className:`inline-flex items-center gap-1 rounded-full border bg-elevated px-2.5 py-1 text-[11px] font-medium transition-colors disabled:opacity-50 ${"accent"===e?"border-accent/40 text-accent hover:bg-accent/10":"danger"===e?"border-danger/40 text-danger hover:bg-danger/10":"border-border text-text-muted hover:border-border-strong hover:text-text"}`,style:{transitionDuration:"var(--motion-fast)"},children:[(0,b.jsx)(a,{size:12,className:"shrink-0","aria-hidden":!0}),(0,b.jsx)("span",{className:"hidden sm:inline",children:c})]})}var aw=a.i(97222),ax=a.i(92058),ay=a.i(86837),az=a.i(92576),aA=a.i(33139),aB=a.i(23818);let aC=["all","open","in_progress","blocked","closed","cancelled","autopilot"];function aD(a){let b=a.scheduled_at||a.closed_at||a.created_at,c=b?new Date(b).getTime():NaN;return Number.isNaN(c)?0:c}let aE=a=>(0,aB.dayKey)(new Date(a));function aF(){let a=(0,p.useAllDeps)(),c=(0,p.useSessions)(),t=(0,p.useSessionSignals)(),u=(0,p.useMissions)(),v=(0,s.useCloseTask)(),w=(0,s.useDeleteTask)(),{toast:x}=(0,F.useToast)(),{t:y,locale:z}=(0,G.useTranslation)(),[A,B]=(0,d.useState)(!1),[C,D]=(0,d.useState)(null),[E,H]=(0,d.useState)(""),[I,J]=(0,ax.usePersistentState)("orca.tasks.filter","in_progress",aC),{selectedProject:K,setProject:L}=(0,ay.useProjectFilter)("orca.tasks.project"),M=(0,p.useTasks)("all"===K?void 0:K),[N,O]=(0,d.useState)(0),[P,Q]=(0,d.useState)(new Set),[S,T]=(0,d.useState)(!1),[V,W]=(0,d.useState)(null),Y=(0,d.useMemo)(()=>(0,r.epicChildren)(M.data??[]),[M.data]),Z=(0,d.useMemo)(()=>(0,r.phaseIds)(M.data??[]),[M.data]),[$,_]=(0,d.useState)(new Set),aa=[{value:"in_progress",label:y.tasks.filterActive},{value:"open",label:y.tasks.filterOpen},{value:"blocked",label:y.tasks.filterBlocked},{value:"closed",label:y.tasks.filterClosed},{value:"autopilot",label:y.tasks.filterAutopilot},{value:"all",label:y.tasks.filterAll}],ab=(0,e.useRouter)(),ac=(0,e.useSearchParams)();(0,d.useEffect)(()=>{"1"===ac.get("new")&&(B(!0),ab.replace("/tasks"))},[ac,ab]),(0,d.useEffect)(()=>{let a=ac.get("select");a&&W(a)},[ac]),(0,d.useEffect)(()=>{if(!V)return;let a=M.data?.find(a=>a.id===V);a?.parent_id&&Z.has(V)&&_(b=>new Set(b).add(a.parent_id))},[V,M.data,Z]),(0,d.useEffect)(()=>{if("autopilot"!==I)return;let a=new Set;for(let b of M.data??[]){if("epic"!==b.type)continue;let d=Y.get(b.id)??[];if(0===d.length)continue;let{running:e}=(0,r.epicLive)(d,c.data??[],t),f=d.some(a=>{let b=(0,q.taskSessionName)(a);return!!b&&t[b]?.type==="needs_input"});(e>0||f)&&a.add(b.id)}a.size&&_(b=>{let c=new Set(b);for(let b of a)c.add(b);return c})},[I,M.data,Y,c.data,t]);let ae=(0,d.useMemo)(()=>{let b=new Map((M.data??[]).map(a=>[a.id,a])),c=new Map;for(let d of M.data??[]){let e=(0,q.taskBlockers)(d.id,a.data??[],b);e.length>0&&c.set(d.id,e)}return c},[M.data,a.data]),af=a=>Q(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c}),ag=()=>Q(new Set),ah=(0,d.useMemo)(()=>{let a=E.trim().toLowerCase(),b=b=>`${b.title} ${b.id} ${b.description??""}`.toLowerCase().includes(a),d=a=>{let b=Y.get(a.id)??[];return(0,r.epicLive)(b,c.data??[],t).running>0||b.some(a=>{let b=(0,q.taskSessionName)(a);return!!b&&t[b]?.type==="needs_input"})};return(M.data??[]).filter(a=>!Z.has(a.id)).filter(c=>{if("autopilot"===I)return"epic"===c.type&&0!==(Y.get(c.id)??[]).length;let d="epic"===c.type?Y.get(c.id)??[]:[],e="epic"===c.type?(0,r.epicEffectiveStatus)(c,u.data??[],d):c.status;return("all"===I||e===I)&&(!a||b(c)||d.some(b))}).sort((a,b)=>{if("autopilot"===I){let c=d(a);if(c!==d(b))return c?-1:1}return aD(b)-aD(a)})},[M.data,E,I,Y,Z,c.data,t,u.data]);(0,d.useEffect)(()=>{O(0)},[E,I,K]);let ai=Math.max(1,Math.ceil(ah.length/12)),ak=Math.min(N,ai-1),al=ah.slice(12*ak,12*ak+12),am=a=>{let b=new Date,c=aE(b.getTime()),d=aE(b.getTime()-864e5),e=aE(a);return e===c?y.tasks.dayToday:e===d?y.tasks.dayYesterday:new Date(a).toLocaleDateString(z,{weekday:"short",month:"short",day:"numeric"})},an=(0,d.useMemo)(()=>{let a=[];for(let b of al){let c=aD(b),d=aE(c),e=a[a.length-1];e&&e.key===d?e.items.push(b):a.push({key:d,label:am(c),items:[b]})}return a},[al,z,y]);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(aw.ModuleHeader,{title:y.page.tasks,count:ah.length,icon:g.ListChecks,children:[(0,b.jsxs)("div",{className:"relative w-40 sm:w-52",children:[(0,b.jsx)(h.Search,{size:14,"aria-hidden":!0,className:"pointer-events-none absolute left-3 top-1/2 -translate-y-1/2 text-text-muted"}),(0,b.jsx)(ap.Input,{value:E,onChange:a=>H(a.target.value),placeholder:y.tasks.searchPlaceholder,className:"pl-9"})]}),(0,b.jsx)(as.Segmented,{value:I,onChange:a=>J(a),options:aa}),(0,b.jsx)(ao.Button,{variant:"accent",icon:f.Plus,onClick:()=>B(!0),children:y.tasks.newTask})]}),(0,b.jsx)(az.ProjectFilterPills,{value:K,onChange:L}),M.isLoading?(0,b.jsx)(R.LoadingState,{variant:"cards"}):M.isError?(0,b.jsx)(R.ErrorState,{message:y.common.daemonUnreachable,onRetry:()=>M.refetch()}):M.data&&0!==M.data.length?0===ah.length?(0,b.jsx)(R.EmptyState,{title:y.tasks.noMatches,description:y.tasks.noMatchesDescription,icon:h.Search}):(0,b.jsxs)("div",{className:"lg:flex lg:items-start lg:gap-5",children:[(0,b.jsxs)("div",{className:"flex flex-col gap-5 lg:w-[42%] lg:shrink-0",children:[an.map(a=>(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)(n.CalendarDays,{size:12,className:"shrink-0 text-text-muted","aria-hidden":!0}),(0,b.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wider text-text-muted",children:a.label}),(0,b.jsx)("span",{className:"h-px flex-1 bg-border"}),(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 font-mono text-tiny text-text-muted",children:[(0,b.jsx)(o.List,{size:11,className:"shrink-0 text-text-muted","aria-hidden":!0}),a.items.length]})]}),(0,b.jsx)("div",{className:"flex flex-col gap-3",children:a.items.map(a=>{let c=Y.get(a.id);return"epic"===a.type&&c&&c.length>0?(0,b.jsx)(au,{epic:a,phases:c,effectiveStatus:(0,r.epicEffectiveStatus)(a,u.data??[],c),expanded:$.has(a.id),onToggle:()=>{let b;return b=a.id,_(a=>{let c=new Set(a);return c.has(b)?c.delete(b):c.add(b),c})},onEdit:D,onSelect:a=>W(a.id),activeId:V,blockedBy:ae},a.id):(0,b.jsx)(aj,{task:a,onEdit:D,onSelect:a=>W(a.id),active:V===a.id,blockers:ae.get(a.id),selected:P.has(a.id),onToggleSelect:af,selecting:P.size>0},a.id)})})]},a.key)),ah.length>12&&(0,b.jsxs)("div",{className:"flex items-center justify-between border-t border-border pt-3",children:[(0,b.jsx)("span",{className:"font-mono text-xs text-text-muted",children:y.tasks.pageRange.replace("{from}",String(12*ak+1)).replace("{to}",String(12*ak+al.length)).replace("{total}",String(ah.length))}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(ao.Button,{variant:"ghost",icon:l.ChevronLeft,disabled:0===ak,onClick:()=>O(ak-1),children:y.tasks.prevPage}),(0,b.jsxs)(ao.Button,{variant:"ghost",disabled:ak>=ai-1,onClick:()=>O(ak+1),children:[y.tasks.nextPage,(0,b.jsx)(m.ChevronRight,{size:15,className:"ml-1"})]})]})]})]}),(0,b.jsx)("aside",{className:"mt-5 min-w-0 lg:mt-0 lg:flex-1 lg:sticky lg:top-16 lg:max-h-[calc(100vh-80px)] lg:overflow-y-auto",children:(()=>{if(!V)return(0,b.jsxs)("div",{className:"hidden items-center justify-center gap-2 rounded-lg border border-dashed border-border py-20 text-sm text-text-muted lg:flex",children:[(0,b.jsx)(g.ListChecks,{size:14,className:"shrink-0 text-text-muted/50","aria-hidden":!0}),y.tasks.selectHint]});let a=M.data?.find(a=>a.id===V),c=a?.type==="epic"?Y.get(a.id)??[]:[];if(a?.type==="epic"&&c.length>0)return(0,b.jsx)("div",{className:"rounded-lg border border-border bg-surface p-4",style:{boxShadow:"var(--shadow-card)"},children:(0,b.jsx)(X,{epic:a,phases:c,activeId:V,onSelectPhase:W})});let d=a?.parent_id&&M.data?.some(b=>b.id===a.parent_id&&"epic"===b.type)?a.parent_id:null;return(0,b.jsx)("div",{className:"rounded-lg border border-border bg-surface p-4",style:{boxShadow:"var(--shadow-card)"},children:(0,b.jsx)(U,{taskId:V,onEdit:D,onBack:d?()=>W(d):void 0})})})()})]}):(0,b.jsx)(R.EmptyState,{title:y.tasks.empty,description:y.tasks.emptyDescription,icon:g.ListChecks,action:(0,b.jsx)(ao.Button,{variant:"accent",icon:f.Plus,onClick:()=>B(!0),children:y.tasks.newTask})}),P.size>0&&(0,b.jsxs)("div",{className:"fixed bottom-6 left-1/2 z-40 flex -translate-x-1/2 items-center gap-2 rounded-xl border border-border bg-elevated px-3 py-2 shadow-[var(--shadow-raised)] animate-fade-up",children:[(0,b.jsx)("span",{className:"px-1 text-sm text-text",children:y.tasks.nSelected.replace("{count}",String(P.size))}),(0,b.jsx)(ao.Button,{variant:"default",icon:i.Archive,onClick:()=>{P.forEach(a=>v.mutate(a)),x(y.tasks.nClosed.replace("{count}",String(P.size))),ag()},children:y.common.close}),(0,b.jsx)(ao.Button,{variant:"danger",icon:j.Trash2,onClick:()=>T(!0),children:y.common.delete}),(0,b.jsx)("button",{type:"button","aria-label":y.tasks.clearSelection,onClick:ag,className:"flex h-8 w-8 items-center justify-center rounded-md text-text-muted hover:bg-surface hover:text-text",children:(0,b.jsx)(k.X,{size:15})})]}),A&&(0,b.jsx)(aA.TaskModal,{onClose:()=>B(!1)}),C&&(0,b.jsx)(aA.TaskModal,{task:C,onClose:()=>D(null)}),(0,b.jsx)(ad.ConfirmDialog,{open:S,title:y.tasks.confirmBulkDeleteTitle.replace("{count}",String(P.size)),description:y.tasks.confirmBulkDeleteDescription,onClose:()=>T(!1),onConfirm:()=>{P.forEach(a=>w.mutate(a)),x(y.tasks.nDeleted.replace("{count}",String(P.size))),ag(),T(!1)}})]})}a.s(["default",0,function(){return(0,b.jsx)(c.ModuleShell,{moduleId:"tasks",children:(0,b.jsx)(aF,{})})},"dynamic",0,"force-dynamic"],69474)}];
|
|
1
|
+
module.exports=[69474,a=>{"use strict";var b=a.i(87924),c=a.i(70777),d=a.i(72131),e=a.i(50944),f=a.i(15618),g=a.i(55023),h=a.i(87532),i=a.i(42900),j=a.i(81560),k=a.i(33508),l=a.i(13749),m=a.i(50522),n=a.i(60702),o=a.i(67329),p=a.i(76645),q=a.i(81415),r=a.i(31423),s=a.i(18517),t=a.i(99464),u=a.i(5641),v=a.i(48124),w=a.i(97593),x=a.i(5292),y=a.i(69922),z=a.i(5151),A=a.i(4416),B=a.i(87654);let C=(0,a.i(70106).default)("ScrollText",[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]]);var D=a.i(82717),E=a.i(89697);a.i(28130);var F=a.i(29457);function G(a){let b=(0,s.useSpawn)(),c=(0,s.useKillSession)(),d=(0,s.useSetTaskStatus)(),e=(0,s.useSendInput)(),f=(0,p.useSessions)(),{toast:g}=(0,E.useToast)(),{t:h}=(0,F.useTranslation)(),i=(0,q.taskExec)(a.labels),j=(0,q.taskSessionName)(a),k="in_progress"===a.status&&!!j&&(f.data??[]).includes(j);return{session:j,running:k,start:()=>b.mutate({taskId:a.id,exec:i||void 0},{onSuccess:a=>g(h.tasks.launched.replace("{session}",a.session)),onError:a=>g((0,D.apiErrorMessage)(a),"error")}),stop:()=>{j&&c.mutate(j),d.mutate({id:a.id,status:"open"},{onSuccess:()=>g(h.tasks.stopped.replace("{id}",a.id)),onError:a=>g((0,D.apiErrorMessage)(a),"error")})},pause:()=>{j&&e.mutate({name:j,keys:["C-c"]},{onSuccess:()=>g(h.sessions.interrupted.replace("{name}",j)),onError:a=>g((0,D.apiErrorMessage)(a),"error")})}}}var H=a.i(81926),I=a.i(34048),J=a.i(7947),K=a.i(80789),L=a.i(47034),M=a.i(29930),N=a.i(90854),O=a.i(91589),P=a.i(76773),Q=a.i(9173),R=a.i(30322),S=a.i(35360);function T({taskId:a,onEdit:c,onBack:e}){let{t:f,locale:g}=(0,F.useTranslation)(),h=(0,p.useTasks)(),j=(0,p.useAllDeps)(),k=(0,p.useActivity)("signal"),{data:m}=(0,p.useConfig)(),n=(0,s.useCloseTask)(),o=(0,s.useSetTaskStatus)(),r=(0,s.useResumeMission)(),{toast:V}=(0,E.useToast)(),[W,X]=(0,d.useState)(!1),Y=h.data?.find(b=>b.id===a),{session:Z,running:$,start:_,stop:aa,pause:ab}=G(Y??{id:a,title:"",status:"open"}),ac=(0,p.useSessionSignal)(Z??"");if(!Y)return(0,b.jsx)(Q.EmptyState,{title:f.tasks.selectHint,icon:x.TerminalSquare});let ad=(0,S.taskTypeMeta)(Y.type).icon,ae=(0,q.taskExec)(Y.labels),af=ae||m?.defaults?.exec||"",ag=(0,q.taskAgentName)(Y),ah="closed"===Y.status||"cancelled"===Y.status,ai=Y.closed_at||Y.created_at,aj=(0,H.formatTaskTime)(ai,Date.now(),g),ak=new Map((h.data??[]).map(a=>[a.id,a])),al=(j.data??[]).filter(b=>b.task_id===a).map(a=>ak.get(a.depends_on_id)).filter(a=>!!a),am=(k.data??[]).filter(b=>b.target===a||Z&&b.target===Z).slice(0,6),an=async()=>{try{await navigator.clipboard.writeText(Y.id),V(f.tasks.idCopied.replace("{id}",Y.id))}catch{V(f.tasks.idCopyFailed,"error")}},ao=!!Y.parent_id,ap="epic"===Y.type,aq=a=>{o.mutate({id:Y.id,status:"open"},{onSuccess:()=>{ao&&r.mutate(`m-${Y.parent_id}`,{onError:()=>{}}),V(a.replace("{id}",Y.id))},onError:a=>V((0,D.apiErrorMessage)(a),"error")})};return(0,b.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,b.jsxs)("div",{className:"sticky top-0 z-10 -mx-4 flex flex-col gap-2 border-b border-border bg-surface px-4 pb-3 pt-1",children:[e?(0,b.jsxs)("button",{type:"button",onClick:e,className:"-ml-1 inline-flex w-fit items-center gap-1 rounded-md px-1.5 py-1 text-xs text-text-muted transition-colors hover:bg-elevated hover:text-text",children:[(0,b.jsx)(l.ChevronLeft,{size:14,"aria-hidden":!0}),f.tasks.backToFlow]}):null,(0,b.jsxs)("div",{className:"flex items-start gap-3",children:[(0,b.jsx)("span",{className:"flex h-12 w-12 shrink-0 items-center justify-center rounded-xl border border-border bg-elevated",children:af?(0,b.jsx)(J.ModelIcon,{name:af,size:26}):(0,b.jsx)(ad,{size:22,className:"text-text-muted","aria-hidden":!0})}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("h2",{className:"min-w-0 flex-1 text-base font-semibold text-text",children:Y.title}),(0,b.jsx)(L.AgentStatusDot,{signal:ac,live:$})]}),(0,b.jsxs)("div",{className:"mt-1 flex flex-wrap items-center gap-x-2 gap-y-1 font-mono text-[11px] text-text-muted",children:[(0,b.jsx)("span",{children:Y.id}),(0,b.jsx)(K.IconButton,{icon:z.Copy,label:f.tasks.copyId,onClick:an}),ag?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{"aria-hidden":!0,className:"opacity-50",children:"·"}),(0,b.jsx)("span",{children:(0,q.taskSessionName)(Y)})]}):null,aj.label?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{"aria-hidden":!0,className:"opacity-50",children:"·"}),(0,b.jsx)("span",{title:aj.title,children:aj.label})]}):null]})]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,b.jsx)(I.Badge,{tone:(0,R.statusTone)(Y.status),children:(0,S.statusLabel)(f,Y.status)}),ah?(0,b.jsx)(M.OutcomeBadge,{outcome:Y.outcome}):null,ae?(0,b.jsx)(I.Badge,{children:ae}):null,ag?(0,b.jsx)(N.TaskUsageBadge,{taskId:Y.id,live:$}):null]}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-1",children:[$?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(K.IconButton,{icon:v.Square,label:f.tasks.stop,variant:"danger",onClick:aa}),(0,b.jsx)(K.IconButton,{icon:w.SquareSlash,label:f.sessions.interrupt,onClick:ab})]}):"blocked"===Y.status&&ao?(0,b.jsx)(K.IconButton,{icon:A.ShieldCheck,label:f.tasks.approveContinue,onClick:()=>aq(f.tasks.approved)}):ah&&ao?(0,b.jsx)(K.IconButton,{icon:B.RotateCcw,label:f.tasks.rerun,onClick:()=>aq(f.tasks.rerunning)}):(0,b.jsx)(K.IconButton,{icon:u.Play,label:f.tasks.start,onClick:_}),Z?(0,b.jsx)(K.IconButton,{icon:x.TerminalSquare,label:f.tasks.openTerminal,onClick:()=>X(!0)}):null,c?(0,b.jsx)(K.IconButton,{icon:t.Pencil,label:f.common.edit,onClick:()=>c(Y)}):null,ah?null:(0,b.jsx)(K.IconButton,{icon:i.Archive,label:f.tasks.closeArchive,onClick:()=>n.mutate(Y.id,{onSuccess:()=>V(f.tasks.closed.replace("{id}",Y.id)),onError:a=>V(String(a),"error")})})]})]}),Y.description?.trim()?(0,b.jsx)(U,{label:f.tasks.fieldDetails,children:(0,b.jsx)("p",{className:"whitespace-pre-wrap text-sm leading-relaxed text-text-muted",children:Y.description})}):null,al.length>0?(0,b.jsx)(U,{label:f.tasks.dependencies,children:(0,b.jsx)("ul",{className:"flex flex-col gap-1",children:al.map(a=>(0,b.jsxs)("li",{className:"flex items-center gap-2 text-xs",children:[(0,b.jsx)(y.Link2,{size:12,className:"shrink-0 text-text-muted","aria-hidden":!0}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-text",children:a.title}),(0,b.jsx)(I.Badge,{tone:(0,R.statusTone)(a.status),children:(0,S.statusLabel)(f,a.status)})]},a.id))})}):null,$&&Z?(0,b.jsx)(U,{label:f.tasks.liveOutput,children:(0,b.jsx)(O.LiveTail,{name:Z,lines:28,heightClass:"max-h-96",onExpand:()=>X(!0)})}):null,ah&&(Y.result_summary||Y.outcome)?(0,b.jsx)(U,{label:ap?f.tasks.missionSummaryTitle:f.tasks.resultTitle,children:(0,b.jsxs)("div",{className:"flex items-start gap-2.5 rounded-lg border border-border bg-elevated p-3",children:[(0,b.jsx)(C,{size:15,className:"mt-0.5 shrink-0 text-text-muted","aria-hidden":!0}),(0,b.jsx)("p",{className:"whitespace-pre-wrap text-sm leading-relaxed text-text",children:Y.result_summary?.trim()||f.tasks.noSummary})]})}):null,am.length>0?(0,b.jsx)(U,{label:f.tasks.recentActivity,children:(0,b.jsx)("ul",{className:"flex flex-col divide-y divide-border",children:am.map(a=>(0,b.jsxs)("li",{className:"flex items-center gap-2 py-1.5 text-xs",children:[(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-text-muted",children:a.detail}),(0,b.jsx)("span",{className:"shrink-0 font-mono text-text-muted opacity-70",children:a.ts.slice(11,16)})]},a.id))})}):null,W&&Z&&(0,b.jsx)(P.TerminalModal,{session:Z,onClose:()=>X(!1)})]})}function U({label:a,children:c}){return(0,b.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,b.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-text-muted",children:a}),c]})}var V=a.i(82478);function W({epic:a,phases:c,activeId:e,onSelectPhase:f}){let{t:g}=(0,F.useTranslation)(),h=(0,p.useSessions)(),i=(0,p.useSessionSignals)(),{data:j}=(0,p.useConfig)(),k=new Set(h.data??[]),{done:l,total:m}=(0,r.epicProgress)(c);return(0,b.jsxs)("div",{className:"flex flex-col",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 rounded-xl border border-accent/40 bg-accent/[0.06] p-3",style:{boxShadow:"var(--shadow-card)"},children:[(0,b.jsx)("span",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-lg border border-border bg-elevated",children:(0,b.jsx)(V.Rocket,{size:20,className:"text-accent","aria-hidden":!0})}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("h2",{className:"truncate text-sm font-semibold text-text",children:a.title}),(0,b.jsxs)("span",{className:"font-mono text-[11px] text-text-muted",children:[l,"/",m," ",g.tasks.phasesLabel]})]}),(0,b.jsx)(I.Badge,{tone:(0,R.statusTone)(a.status),children:(0,S.statusLabel)(g,a.status)})]}),c.map((a,c)=>{let h=(0,q.taskExec)(a.labels)||j?.defaults?.exec||"",l=(0,q.taskAgentName)(a),m=(0,q.taskSessionName)(a),n="in_progress"===a.status&&!!m&&k.has(m),o=m?i[m]:void 0,p=n||o?.type==="needs_input";return(0,b.jsxs)(d.Fragment,{children:[(0,b.jsx)("div",{className:"ml-5 flex h-6 w-px justify-center",children:(0,b.jsx)("span",{className:`h-full w-px ${p?"flow-edge flow-edge-active":"flow-edge"}`,"aria-hidden":!0})}),(0,b.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center",children:[(0,b.jsxs)("button",{type:"button",onClick:()=>f(a.id),className:`group flex min-w-0 flex-1 items-center gap-3 rounded-xl border bg-surface p-3 text-left transition-all hover:-translate-y-0.5 ${e===a.id?"border-accent":"border-border hover:border-border-strong"} ${p?"flow-active":""}`,style:{boxShadow:"var(--shadow-card)",transitionDuration:"var(--motion-fast)"},children:[(0,b.jsx)("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full border border-border bg-elevated font-mono text-[11px] text-text-muted",children:c+1}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-sm font-medium text-text",children:a.title}),(0,b.jsx)(I.Badge,{tone:(0,R.statusTone)(a.status),children:(0,S.statusLabel)(g,a.status)})]}),h||l?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"hidden h-px w-6 shrink-0 sm:block flow-edge-h","aria-hidden":!0}),(0,b.jsxs)("div",{className:"flex shrink-0 flex-col gap-1.5 pl-8 sm:pl-0",children:[h?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-lg border border-border bg-elevated px-2 py-1 text-[11px] text-text-muted",title:h,children:[(0,b.jsx)(J.ModelIcon,{name:h,size:14}),(0,b.jsx)("span",{className:"font-mono",children:h})]}):null,l?(0,b.jsxs)("button",{type:"button",onClick:()=>f(a.id),className:"inline-flex items-center gap-1.5 rounded-lg border border-border bg-elevated px-2 py-1 text-[11px] text-text transition-colors hover:border-border-strong",title:l,children:[(0,b.jsx)(L.AgentStatusDot,{signal:o,live:n,size:"sm"}),(0,b.jsx)("span",{className:"font-mono",children:l})]}):null]})]}):null]})]},a.id)})]})}var X=a.i(49651),Y=a.i(8549),Z=a.i(30206),$=a.i(72089),_=a.i(58530),aa=a.i(32824),ab=a.i(49134),ac=a.i(57581),ad=a.i(41710),ae=a.i(1027),af=a.i(66429),ag=a.i(36421),ah=a.i(3470);function ai({task:a,onEdit:c,onSelect:e,active:f=!1,blockers:g,selected:h=!1,onToggleSelect:k,selecting:l=!1}){let m=(0,s.useCloseTask)(),n=(0,s.useDeleteTask)(),{toast:o}=(0,E.useToast)(),{t:r,locale:w}=(0,F.useTranslation)(),[x,y]=(0,d.useState)(!1),{data:z}=(0,p.useConfig)(),A=(0,S.taskTypeMeta)(a.type).icon,B=(0,q.taskExec)(a.labels)||z?.defaults?.exec||"",C="closed"===a.status,{session:D,running:N,start:O,stop:P,pause:Q}=G(a),T=(0,p.useSessionSignal)(D??""),U=(0,ah.useSessionStall)(D??"",N&&!!D),V=D?{stall:U.state,silenceSec:U.silenceSec}:{},W=(g?.length??0)>0,X=()=>(e??c)(a),Z=a.scheduled_at||a.closed_at||a.created_at,$=Z?(0,H.formatTaskTime)(Z,Date.now(),w):null;return(0,b.jsxs)("div",{role:"button",tabIndex:0,onClick:X,onKeyDown:a=>{"Enter"===a.key&&X()},className:`card-interactive group relative flex flex-wrap cursor-pointer items-center gap-x-3 gap-y-2 rounded-lg border p-2.5 ${h||f?"border-accent bg-accent/[0.06]":"border-border bg-surface"}`,children:[(0,b.jsx)("span",{className:`flex h-11 w-11 shrink-0 items-center justify-center rounded-xl border-2 bg-elevated ${N?"border-accent":"border-border"}`,children:B?(0,b.jsx)(J.ModelIcon,{name:B,size:26}):(0,b.jsx)(A,{size:22,className:"text-text-muted","aria-hidden":!0})}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-0.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("span",{className:"truncate text-sm font-medium text-text",children:a.title}),(0,b.jsx)(L.AgentStatusDot,{signal:T,live:N,size:"sm",...V})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[B?(0,b.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-1 rounded-md border border-border bg-elevated px-1.5 py-0.5 font-mono text-[11px] text-text-muted",title:B,children:[(0,b.jsx)(J.ModelIcon,{name:B,size:11}),(0,af.execModel)(B)]}):(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,b.jsx)(A,{size:11,className:"shrink-0 text-text-muted","aria-hidden":!0}),(0,b.jsx)("span",{className:"truncate font-mono text-[11px] text-text-muted",children:a.id})]}),W?(0,b.jsxs)("span",{className:"shrink-0 text-[11px] text-warning",title:g.map(a=>a.title).join(", "),children:["· ",r.tasks.dependencies," ",g.length]}):null]})]}),(0,b.jsxs)("div",{className:"flex w-full items-center justify-between gap-2 sm:w-auto sm:justify-end",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[$?(0,b.jsx)("span",{title:$.title,children:(0,b.jsxs)(I.Badge,{tone:"muted",children:[a.scheduled_at&&a.autostart?(0,b.jsx)(ae.Zap,{size:11,className:"mr-1 inline","aria-hidden":!0}):(0,b.jsx)(ad.Clock,{size:11,className:"mr-1 inline","aria-hidden":!0}),$.label]})}):null,(0,b.jsx)(aa.ProjectPill,{projectId:a.project_id}),C?(0,b.jsx)(M.OutcomeBadge,{outcome:a.outcome}):null,(0,b.jsx)(I.Badge,{tone:(0,R.statusTone)(a.status),children:(0,S.statusLabel)(r,a.status)})]}),(0,b.jsxs)("div",{className:"flex shrink-0 items-center gap-1",onClick:a=>a.stopPropagation(),children:[N?(0,b.jsx)(K.IconButton,{icon:v.Square,label:r.tasks.stop,variant:"danger",onClick:P}):(0,b.jsx)(K.IconButton,{icon:u.Play,label:r.tasks.start,onClick:O}),N?(0,b.jsx)(K.IconButton,{icon:Y.Pause,label:r.tasks.pause,onClick:Q}):null,(0,b.jsx)(K.IconButton,{icon:t.Pencil,label:r.common.edit,onClick:()=>c(a)}),(0,b.jsx)(ab.ActionMenu,{label:r.tasks.deleteOrClose,items:[{label:r.tasks.closeArchive,icon:i.Archive,onSelect:()=>m.mutate(a.id,{onSuccess:()=>o(r.tasks.closed.replace("{id}",a.id)),onError:a=>o(String(a),"error")})},{label:r.tasks.deletePermanently,icon:j.Trash2,tone:"danger",onSelect:()=>y(!0)}]})]})]}),k?(0,b.jsx)("button",{type:"button",role:"checkbox","aria-checked":h,"aria-label":r.sessions.selectLabel.replace("{id}",a.id),onClick:b=>{b.stopPropagation(),k(a.id)},className:`shrink-0 transition-opacity ${l||h?"opacity-100":"opacity-0 group-hover:opacity-100"}`,children:(0,b.jsx)(ag.Checkbox,{checked:h})}):null,x&&(0,b.jsx)("div",{onClick:a=>a.stopPropagation(),children:(0,b.jsx)(ac.ConfirmDialog,{open:x,title:r.tasks.confirmDeleteTitle.replace("{id}",a.id),description:r.tasks.confirmDeleteDescription,onClose:()=>y(!1),onConfirm:()=>{y(!1),n.mutate(a.id,{onSuccess:()=>o(r.tasks.deleted.replace("{id}",a.id)),onError:a=>o(String(a),"error")})}})})]})}var aj=a.i(8406),ak=a.i(17545),al=a.i(68522),am=a.i(88736),an=a.i(12466),ao=a.i(18180),ap=a.i(56993),aq=a.i(53876),ar=a.i(83549);function as({epicId:a,onClose:c}){let{data:e}=(0,p.useConfig)(),h=(0,s.useInsertPhases)(),{toast:i}=(0,E.useToast)(),{t:j}=(0,F.useTranslation)(),l=(0,al.allModels)(e?.customModels,e?.hiddenPresets).filter(a=>!e?.allowedExecs||e.allowedExecs.includes(a.exec)),[m,n]=(0,d.useState)("manual"),[o,q]=(0,d.useState)(""),[r,t]=(0,d.useState)(""),[u,v]=(0,d.useState)([{title:"",type:"task"}]),w=h.isPending;async function x(){let b="manual"===m?{phases:u.map(a=>({title:a.title.trim(),type:a.type})).filter(a=>a.title)}:{goal:r.trim()};if("manual"===m&&(!b.phases||0===b.phases.length))return void i(j.missions.addPhaseAtLeastOne,"error");if("replan"===m&&!b.goal)return void i(j.missions.addPhaseGoalRequired,"error");let d={...b,exec:o||void 0};try{let b=await h.mutateAsync({epicId:a,body:d});i(j.missions.addPhaseInserted.replace("{count}",String(b.phases.length)).replace("{s}",1===b.phases.length?"":"s").replace("{epicId}",a)),c()}catch(a){a instanceof D.OrcaApiError&&"autopilot_key_missing"===a.code?i(j.tasks.autopilotKeyMissing,"error"):i(String(a),"error")}}return(0,b.jsxs)(am.Modal,{title:j.missions.addPhaseModalTitle.replace("{epic}",a),description:a,onClose:c,size:"md",icon:ak.Layers,children:[(0,b.jsxs)(am.ModalBody,{children:[(0,b.jsx)("p",{className:"text-xs text-text-muted",children:j.missions.addPhaseModalDesc}),(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsx)(ar.Segmented,{value:m,onChange:a=>n(a),options:[{value:"manual",label:j.missions.addPhaseModeManual,icon:g.ListChecks},{value:"replan",label:j.missions.addPhaseModeReplan,icon:aj.Sparkles}]}),(0,b.jsx)("p",{className:"text-xs text-text-muted",children:"manual"===m?j.missions.addPhaseManualDesc:j.missions.addPhaseReplanDesc})]}),"manual"===m?(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[u.map((a,c)=>(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(ao.Input,{value:a.title,placeholder:j.tasks.phasePlaceholder.replace("{n}",String(c+1)),onChange:a=>v(b=>b.map((b,d)=>d===c?{...b,title:a.target.value}:b))}),(0,b.jsx)(ap.Select,{value:a.type,onChange:a=>v(b=>b.map((b,d)=>d===c?{...b,type:a.target.value}:b)),className:"w-32",children:S.TASK_TYPES.filter(a=>"epic"!==a).map(a=>(0,b.jsx)("option",{value:a,children:(0,S.taskTypeLabel)(j,a)},a))}),(0,b.jsx)(K.IconButton,{icon:k.X,label:j.tasks.removePhase,onClick:()=>v(a=>a.length>1?a.filter((a,b)=>b!==c):a)})]},c)),(0,b.jsxs)("button",{type:"button",onClick:()=>v(a=>[...a,{title:"",type:"task"}]),className:"inline-flex items-center gap-1 self-start text-xs text-accent hover:underline",children:[(0,b.jsx)(f.Plus,{size:13,"aria-hidden":!0})," ",j.tasks.addPhase]})]}):(0,b.jsx)(aq.Field,{label:j.missions.addPhaseFieldGoal,hint:j.missions.addPhaseGoalHint,children:(0,b.jsx)("textarea",{value:r,onChange:a=>t(a.target.value),placeholder:j.missions.addPhaseGoalPlaceholder,rows:4,className:"w-full rounded-md border border-border bg-surface px-3 py-2 text-sm text-text placeholder:text-text-muted focus:border-accent focus:outline-none"})}),(0,b.jsx)(aq.Field,{label:j.missions.addPhaseFieldExecutor,children:(0,b.jsxs)(ap.Select,{value:o,onChange:a=>q(a.target.value),children:[(0,b.jsx)("option",{value:"",children:j.tasks.defaultExecutor}),l.map(a=>(0,b.jsx)("option",{value:a.exec,children:a.label},a.exec))]})})]}),(0,b.jsxs)(am.ModalFooter,{children:[(0,b.jsx)(an.Button,{variant:"ghost",onClick:c,children:j.common.cancel}),(0,b.jsx)(an.Button,{variant:"accent",disabled:w,onClick:x,children:j.missions.addPhaseInsert})]})]})}function at({epic:a,phases:c,effectiveStatus:e,expanded:g,onToggle:h,onEdit:i,onSelect:k,activeId:l,blockedBy:n}){let{t:o}=(0,F.useTranslation)(),q=(0,p.useSessions)(),t=(0,p.useSessionSignals)(),v=(0,p.useMissions)(),{data:w}=(0,p.useConfig)(),{toast:x}=(0,E.useToast)(),y=(0,s.useDeleteMission)(),z=(0,s.useEngage)(),A=(0,s.usePauseMission)(),B=(0,s.useResumeMission)(),C=(0,s.useDisengage)(),[G,J]=(0,d.useState)(!1),[K,L]=(0,d.useState)(!1),{done:M,total:N}=(0,r.epicProgress)(c),{running:O,needsInput:P}=(0,r.epicLive)(c,q.data??[],t),Q=(0,S.taskTypeMeta)("epic").icon,T=(0,X.useQueries)({queries:c.map(a=>({queryKey:["task-usage",a.id],queryFn:()=>D.orcaClient.taskUsage(a.id),staleTime:3e5}))}).reduce((a,b)=>a+(b.data?.costUsd??0),0),U=v.data?.find(b=>b.epic_id===a.id)??null,W=(e??a.status)==="closed"||(e??a.status)==="cancelled",ad=null!=U&&"disengaged"!==U.state,ae=U?.state==="paused";return(0,b.jsxs)("div",{className:"group/epic rounded-lg border border-accent/30 bg-accent/[0.04]",children:[(0,b.jsxs)("div",{className:"relative flex items-stretch",children:[(0,b.jsxs)("button",{type:"button",onClick:()=>{h(),k(a)},"aria-expanded":g,className:`flex min-w-0 flex-1 items-center gap-3 p-3 text-left transition-colors hover:bg-accent/[0.06] ${l===a.id?"bg-accent/[0.06]":""}`,children:[(0,b.jsx)(m.ChevronRight,{size:16,className:`shrink-0 text-text-muted transition-transform ${g?"rotate-90":""}`,"aria-hidden":!0}),(0,b.jsx)("span",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-lg border border-border bg-elevated",children:(0,b.jsx)(Q,{size:20,className:"text-accent","aria-hidden":!0})}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-sm font-semibold text-text",children:a.title}),P>0||O>0?(0,b.jsx)("span",{className:"live-dot h-2 w-2 shrink-0 rounded-full",style:{backgroundColor:P>0?"var(--color-warning)":"var(--color-success)","--live-ring":P>0?"color-mix(in srgb, var(--color-warning) 50%, transparent)":"color-mix(in srgb, var(--color-success) 50%, transparent)"},"aria-hidden":!0}):null]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(_.ProgressRibbon,{phases:c,className:"max-w-[12rem] flex-1"}),(0,b.jsxs)("span",{className:"shrink-0 font-mono text-[11px] text-text-muted",children:[M,"/",N," ",o.tasks.phasesLabel]}),T>0?(0,b.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-0.5 rounded border border-approve/30 px-1.5 py-0.5 font-mono text-[11px] text-approve",title:`${o.usage.cost}: ${(0,H.formatCost)(T)}`,children:[(0,b.jsx)($.Coins,{size:10,className:"shrink-0","aria-hidden":!0}),(0,H.formatCost)(T)]}):null,(0,b.jsx)(aa.ProjectPill,{projectId:a.project_id})]})]}),(0,b.jsx)(I.Badge,{tone:(0,R.statusTone)(e??a.status),children:(0,S.statusLabel)(o,e??a.status)})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1 pr-3",children:[ad||W||U?null:(0,b.jsx)(au,{icon:V.Rocket,label:o.missions.engage,tone:"accent",onClick:()=>z.mutate({epicId:a.id,autonomy:w?.defaults?.autonomy??"L3",maxSessions:w?.defaults?.maxSessions??1},{onSuccess:()=>x(o.missions.engaged.replace("{epicId}",a.id)),onError:a=>x(String(a),"error")}),disabled:z.isPending}),ad?(0,b.jsxs)(b.Fragment,{children:[ae?(0,b.jsx)(au,{icon:u.Play,label:o.missions.resume,tone:"accent",onClick:()=>B.mutate(U.id,{onSuccess:()=>x(o.missions.resumed),onError:a=>x(String(a),"error")}),disabled:B.isPending}):(0,b.jsx)(au,{icon:Y.Pause,label:o.missions.pause,onClick:()=>A.mutate(U.id,{onSuccess:()=>x(o.missions.pausedMsg),onError:a=>x(String(a),"error")}),disabled:A.isPending}),(0,b.jsx)(au,{icon:Z.Power,label:o.missions.disengage,tone:"danger",onClick:()=>C.mutate(U.id,{onSuccess:()=>x(o.missions.disengaged),onError:a=>x(String(a),"error")}),disabled:C.isPending})]}):null,(0,b.jsx)("div",{className:"opacity-0 transition-opacity group-hover/epic:opacity-100",children:(0,b.jsx)(ab.ActionMenu,{label:o.tasks.epicActions,items:[{label:o.missions.addPhase,icon:f.Plus,onSelect:()=>L(!0)},{label:o.tasks.deleteMission,icon:j.Trash2,tone:"danger",onSelect:()=>J(!0)}]})})]})]}),g?(0,b.jsx)("div",{className:"flex flex-col gap-2.5 rounded-b-lg border-t border-accent/20 bg-bg/30 p-2.5 pl-5",children:c.map(a=>(0,b.jsx)(ai,{task:a,onEdit:i,onSelect:k,active:l===a.id,blockers:n.get(a.id)},a.id))}):null,K&&(0,b.jsx)(as,{epicId:a.id,onClose:()=>L(!1)}),(0,b.jsx)(ac.ConfirmDialog,{open:G,title:o.tasks.confirmDeleteMissionTitle.replace("{id}",a.id),description:o.tasks.confirmDeleteMissionDescription,confirmLabel:o.tasks.deleteMission,onClose:()=>J(!1),onConfirm:()=>{J(!1),y.mutate(a.id,{onSuccess:()=>x(o.tasks.missionDeleted.replace("{id}",a.id)),onError:a=>x(String(a),"error")})}})]})}function au({icon:a,label:c,onClick:d,tone:e="default",disabled:f}){return(0,b.jsxs)("button",{type:"button",onClick:d,disabled:f,title:c,className:`inline-flex items-center gap-1 rounded-full border bg-elevated px-2.5 py-1 text-[11px] font-medium transition-colors disabled:opacity-50 ${"accent"===e?"border-accent/40 text-accent hover:bg-accent/10":"danger"===e?"border-danger/40 text-danger hover:bg-danger/10":"border-border text-text-muted hover:border-border-strong hover:text-text"}`,style:{transitionDuration:"var(--motion-fast)"},children:[(0,b.jsx)(a,{size:12,className:"shrink-0","aria-hidden":!0}),(0,b.jsx)("span",{className:"hidden sm:inline",children:c})]})}var av=a.i(97222),aw=a.i(92058),ax=a.i(86837),ay=a.i(92576),az=a.i(33139),aA=a.i(23818);let aB=["all","open","in_progress","blocked","closed","cancelled","autopilot"];function aC(a){let b=a.scheduled_at||a.closed_at||a.created_at,c=b?new Date(b).getTime():NaN;return Number.isNaN(c)?0:c}let aD=a=>(0,aA.dayKey)(new Date(a));function aE(){let a=(0,p.useAllDeps)(),c=(0,p.useSessions)(),t=(0,p.useSessionSignals)(),u=(0,p.useMissions)(),v=(0,s.useCloseTask)(),w=(0,s.useDeleteTask)(),{toast:x}=(0,E.useToast)(),{t:y,locale:z}=(0,F.useTranslation)(),[A,B]=(0,d.useState)(!1),[C,D]=(0,d.useState)(null),[G,H]=(0,d.useState)(""),[I,J]=(0,aw.usePersistentState)("orca.tasks.filter","in_progress",aB),{selectedProject:K,setProject:L}=(0,ax.useProjectFilter)("orca.tasks.project"),M=(0,p.useTasks)("all"===K?void 0:K),[N,O]=(0,d.useState)(0),[P,R]=(0,d.useState)(new Set),[S,U]=(0,d.useState)(!1),[V,X]=(0,d.useState)(null),Y=(0,d.useMemo)(()=>(0,r.epicChildren)(M.data??[]),[M.data]),Z=(0,d.useMemo)(()=>(0,r.phaseIds)(M.data??[]),[M.data]),[$,_]=(0,d.useState)(new Set),aa=[{value:"in_progress",label:y.tasks.filterActive},{value:"open",label:y.tasks.filterOpen},{value:"blocked",label:y.tasks.filterBlocked},{value:"closed",label:y.tasks.filterClosed},{value:"autopilot",label:y.tasks.filterAutopilot},{value:"all",label:y.tasks.filterAll}],ab=(0,e.useRouter)(),ad=(0,e.useSearchParams)();(0,d.useEffect)(()=>{"1"===ad.get("new")&&(B(!0),ab.replace("/tasks"))},[ad,ab]),(0,d.useEffect)(()=>{let a=ad.get("select");a&&X(a)},[ad]),(0,d.useEffect)(()=>{if(!V)return;let a=M.data?.find(a=>a.id===V);a?.parent_id&&Z.has(V)&&_(b=>new Set(b).add(a.parent_id))},[V,M.data,Z]),(0,d.useEffect)(()=>{if("autopilot"!==I)return;let a=new Set;for(let b of M.data??[]){if("epic"!==b.type)continue;let d=Y.get(b.id)??[];if(0===d.length)continue;let{running:e}=(0,r.epicLive)(d,c.data??[],t),f=d.some(a=>{let b=(0,q.taskSessionName)(a);return!!b&&t[b]?.type==="needs_input"});(e>0||f)&&a.add(b.id)}a.size&&_(b=>{let c=new Set(b);for(let b of a)c.add(b);return c})},[I,M.data,Y,c.data,t]);let ae=(0,d.useMemo)(()=>{let b=new Map((M.data??[]).map(a=>[a.id,a])),c=new Map;for(let d of M.data??[]){let e=(0,q.taskBlockers)(d.id,a.data??[],b);e.length>0&&c.set(d.id,e)}return c},[M.data,a.data]),af=a=>R(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c}),ag=()=>R(new Set),ah=(0,d.useMemo)(()=>{let a=G.trim().toLowerCase(),b=b=>`${b.title} ${b.id} ${b.description??""}`.toLowerCase().includes(a),d=a=>{let b=Y.get(a.id)??[];return(0,r.epicLive)(b,c.data??[],t).running>0||b.some(a=>{let b=(0,q.taskSessionName)(a);return!!b&&t[b]?.type==="needs_input"})};return(M.data??[]).filter(a=>!Z.has(a.id)).filter(c=>{if("autopilot"===I)return"epic"===c.type&&0!==(Y.get(c.id)??[]).length;let d="epic"===c.type?Y.get(c.id)??[]:[],e="epic"===c.type?(0,r.epicEffectiveStatus)(c,u.data??[],d):c.status;return("all"===I||e===I)&&(!a||b(c)||d.some(b))}).sort((a,b)=>{if("autopilot"===I){let c=d(a);if(c!==d(b))return c?-1:1}return aC(b)-aC(a)})},[M.data,G,I,Y,Z,c.data,t,u.data]);(0,d.useEffect)(()=>{O(0)},[G,I,K]);let aj=Math.max(1,Math.ceil(ah.length/12)),ak=Math.min(N,aj-1),al=ah.slice(12*ak,12*ak+12),am=a=>{let b=new Date,c=aD(b.getTime()),d=aD(b.getTime()-864e5),e=aD(a);return e===c?y.tasks.dayToday:e===d?y.tasks.dayYesterday:new Date(a).toLocaleDateString(z,{weekday:"short",month:"short",day:"numeric"})},ap=(0,d.useMemo)(()=>{let a=[];for(let b of al){let c=aC(b),d=aD(c),e=a[a.length-1];e&&e.key===d?e.items.push(b):a.push({key:d,label:am(c),items:[b]})}return a},[al,z,y]);return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(av.ModuleHeader,{title:y.page.tasks,count:ah.length,icon:g.ListChecks,children:[(0,b.jsxs)("div",{className:"relative w-40 sm:w-52",children:[(0,b.jsx)(h.Search,{size:14,"aria-hidden":!0,className:"pointer-events-none absolute left-3 top-1/2 -translate-y-1/2 text-text-muted"}),(0,b.jsx)(ao.Input,{value:G,onChange:a=>H(a.target.value),placeholder:y.tasks.searchPlaceholder,className:"pl-9"})]}),(0,b.jsx)(ar.Segmented,{value:I,onChange:a=>J(a),options:aa}),(0,b.jsx)(an.Button,{variant:"accent",icon:f.Plus,onClick:()=>B(!0),children:y.tasks.newTask})]}),(0,b.jsx)(ay.ProjectFilterPills,{value:K,onChange:L}),M.isLoading?(0,b.jsx)(Q.LoadingState,{variant:"cards"}):M.isError?(0,b.jsx)(Q.ErrorState,{message:y.common.daemonUnreachable,onRetry:()=>M.refetch()}):M.data&&0!==M.data.length?0===ah.length?(0,b.jsx)(Q.EmptyState,{title:y.tasks.noMatches,description:y.tasks.noMatchesDescription,icon:h.Search}):(0,b.jsxs)("div",{className:"lg:flex lg:items-start lg:gap-5",children:[(0,b.jsxs)("div",{className:"flex flex-col gap-5 lg:w-[42%] lg:shrink-0",children:[ap.map(a=>(0,b.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)(n.CalendarDays,{size:12,className:"shrink-0 text-text-muted","aria-hidden":!0}),(0,b.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wider text-text-muted",children:a.label}),(0,b.jsx)("span",{className:"h-px flex-1 bg-border"}),(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 font-mono text-tiny text-text-muted",children:[(0,b.jsx)(o.List,{size:11,className:"shrink-0 text-text-muted","aria-hidden":!0}),a.items.length]})]}),(0,b.jsx)("div",{className:"flex flex-col gap-3",children:a.items.map(a=>{let c=Y.get(a.id);return"epic"===a.type&&c&&c.length>0?(0,b.jsx)(at,{epic:a,phases:c,effectiveStatus:(0,r.epicEffectiveStatus)(a,u.data??[],c),expanded:$.has(a.id),onToggle:()=>{let b;return b=a.id,_(a=>{let c=new Set(a);return c.has(b)?c.delete(b):c.add(b),c})},onEdit:D,onSelect:a=>X(a.id),activeId:V,blockedBy:ae},a.id):(0,b.jsx)(ai,{task:a,onEdit:D,onSelect:a=>X(a.id),active:V===a.id,blockers:ae.get(a.id),selected:P.has(a.id),onToggleSelect:af,selecting:P.size>0},a.id)})})]},a.key)),ah.length>12&&(0,b.jsxs)("div",{className:"flex items-center justify-between border-t border-border pt-3",children:[(0,b.jsx)("span",{className:"font-mono text-xs text-text-muted",children:y.tasks.pageRange.replace("{from}",String(12*ak+1)).replace("{to}",String(12*ak+al.length)).replace("{total}",String(ah.length))}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(an.Button,{variant:"ghost",icon:l.ChevronLeft,disabled:0===ak,onClick:()=>O(ak-1),children:y.tasks.prevPage}),(0,b.jsxs)(an.Button,{variant:"ghost",disabled:ak>=aj-1,onClick:()=>O(ak+1),children:[y.tasks.nextPage,(0,b.jsx)(m.ChevronRight,{size:15,className:"ml-1"})]})]})]})]}),(0,b.jsx)("aside",{className:"mt-5 min-w-0 lg:mt-0 lg:flex-1 lg:sticky lg:top-16 lg:max-h-[calc(100vh-80px)] lg:overflow-y-auto",children:(()=>{if(!V)return(0,b.jsxs)("div",{className:"hidden items-center justify-center gap-2 rounded-lg border border-dashed border-border py-20 text-sm text-text-muted lg:flex",children:[(0,b.jsx)(g.ListChecks,{size:14,className:"shrink-0 text-text-muted/50","aria-hidden":!0}),y.tasks.selectHint]});let a=M.data?.find(a=>a.id===V),c=a?.type==="epic"?Y.get(a.id)??[]:[];if(a?.type==="epic"&&c.length>0)return(0,b.jsx)("div",{className:"rounded-lg border border-border bg-surface p-4",style:{boxShadow:"var(--shadow-card)"},children:(0,b.jsx)(W,{epic:a,phases:c,activeId:V,onSelectPhase:X})});let d=a?.parent_id&&M.data?.some(b=>b.id===a.parent_id&&"epic"===b.type)?a.parent_id:null;return(0,b.jsx)("div",{className:"rounded-lg border border-border bg-surface p-4",style:{boxShadow:"var(--shadow-card)"},children:(0,b.jsx)(T,{taskId:V,onEdit:D,onBack:d?()=>X(d):void 0})})})()})]}):(0,b.jsx)(Q.EmptyState,{title:y.tasks.empty,description:y.tasks.emptyDescription,icon:g.ListChecks,action:(0,b.jsx)(an.Button,{variant:"accent",icon:f.Plus,onClick:()=>B(!0),children:y.tasks.newTask})}),P.size>0&&(0,b.jsxs)("div",{className:"fixed bottom-6 left-1/2 z-40 flex -translate-x-1/2 items-center gap-2 rounded-xl border border-border bg-elevated px-3 py-2 shadow-[var(--shadow-raised)] animate-fade-up",children:[(0,b.jsx)("span",{className:"px-1 text-sm text-text",children:y.tasks.nSelected.replace("{count}",String(P.size))}),(0,b.jsx)(an.Button,{variant:"default",icon:i.Archive,onClick:()=>{P.forEach(a=>v.mutate(a)),x(y.tasks.nClosed.replace("{count}",String(P.size))),ag()},children:y.common.close}),(0,b.jsx)(an.Button,{variant:"danger",icon:j.Trash2,onClick:()=>U(!0),children:y.common.delete}),(0,b.jsx)("button",{type:"button","aria-label":y.tasks.clearSelection,onClick:ag,className:"flex h-8 w-8 items-center justify-center rounded-md text-text-muted hover:bg-surface hover:text-text",children:(0,b.jsx)(k.X,{size:15})})]}),A&&(0,b.jsx)(az.TaskModal,{onClose:()=>B(!1)}),C&&(0,b.jsx)(az.TaskModal,{task:C,onClose:()=>D(null)}),(0,b.jsx)(ac.ConfirmDialog,{open:S,title:y.tasks.confirmBulkDeleteTitle.replace("{count}",String(P.size)),description:y.tasks.confirmBulkDeleteDescription,onClose:()=>U(!1),onConfirm:()=>{P.forEach(a=>w.mutate(a)),x(y.tasks.nDeleted.replace("{count}",String(P.size))),ag(),U(!1)}})]})}a.s(["default",0,function(){return(0,b.jsx)(c.ModuleShell,{moduleId:"tasks",children:(0,b.jsx)(aE,{})})},"dynamic",0,"force-dynamic"],69474)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=app_tasks_page_tsx_1p6mxbw._.js.map
|