@open-mercato/cezar 0.13.0 → 0.14.0
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/README.md +3 -2
- package/dist/agent-config/catalog.d.ts +4 -0
- package/dist/agent-config/catalog.js +85 -3
- package/dist/agent-config/catalog.js.map +1 -1
- package/dist/agent-config/model-settings/copilot.d.ts +15 -0
- package/dist/agent-config/model-settings/copilot.js +25 -0
- package/dist/agent-config/model-settings/copilot.js.map +1 -0
- package/dist/agent-config/model-settings/junie.d.ts +12 -0
- package/dist/agent-config/model-settings/junie.js +18 -0
- package/dist/agent-config/model-settings/junie.js.map +1 -0
- package/dist/agent-config/models.js +4 -0
- package/dist/agent-config/models.js.map +1 -1
- package/dist/automations/prompts.d.ts +2 -2
- package/dist/automations/prompts.js +1 -1
- package/dist/automations/types.d.ts +12 -0
- package/dist/config.d.ts +4 -0
- package/dist/config.js +2 -0
- package/dist/config.js.map +1 -1
- package/dist/contract/agent-config.d.ts +4 -0
- package/dist/contract/agent-profiles.d.ts +30 -0
- package/dist/contract/automations.d.ts +32 -0
- package/dist/contract/dashboard-insights.d.ts +186 -0
- package/dist/contract/dashboard.d.ts +88 -0
- package/dist/contract/dispatch.d.ts +6 -0
- package/dist/contract/health.d.ts +8 -0
- package/dist/contract/index.d.ts +2 -0
- package/dist/contract/index.js +249 -72
- package/dist/contract/runs.d.ts +144 -0
- package/dist/contract/self-update.d.ts +111 -2
- package/dist/contract/skills.d.ts +19 -0
- package/dist/contract/star-count.d.ts +18 -0
- package/dist/contract/workflows.d.ts +12 -0
- package/dist/contract/workspace.d.ts +42 -2
- package/dist/core/acp-client.d.ts +99 -0
- package/dist/core/acp-client.js +198 -0
- package/dist/core/acp-client.js.map +1 -0
- package/dist/core/acp-ui-mapper.d.ts +95 -0
- package/dist/core/acp-ui-mapper.js +444 -0
- package/dist/core/acp-ui-mapper.js.map +1 -0
- package/dist/core/agent-env.js +10 -0
- package/dist/core/agent-env.js.map +1 -1
- package/dist/core/agent-profiles.d.ts +10 -0
- package/dist/core/agent-profiles.js +16 -0
- package/dist/core/agent-profiles.js.map +1 -1
- package/dist/core/agent-runner.d.ts +5 -3
- package/dist/core/agent-runner.js +5 -3
- package/dist/core/agent-runner.js.map +1 -1
- package/dist/core/backend-detect.d.ts +3 -3
- package/dist/core/backend-detect.js +61 -2
- package/dist/core/backend-detect.js.map +1 -1
- package/dist/core/claude-cli-runner.d.ts +5 -2
- package/dist/core/claude-cli-runner.js +11 -6
- package/dist/core/claude-cli-runner.js.map +1 -1
- package/dist/core/claude-ui-mapper.d.ts +14 -0
- package/dist/core/claude-ui-mapper.js +102 -11
- package/dist/core/claude-ui-mapper.js.map +1 -1
- package/dist/core/codex-app-server-transport.js +8 -4
- package/dist/core/codex-app-server-transport.js.map +1 -1
- package/dist/core/copilot-acp-runner.d.ts +60 -0
- package/dist/core/copilot-acp-runner.js +528 -0
- package/dist/core/copilot-acp-runner.js.map +1 -0
- package/dist/core/copilot-ui-mapper.d.ts +47 -0
- package/dist/core/copilot-ui-mapper.js +111 -0
- package/dist/core/copilot-ui-mapper.js.map +1 -0
- package/dist/core/cursor-agent-runner.js +4 -4
- package/dist/core/cursor-agent-runner.js.map +1 -1
- package/dist/core/disclaim-spawn.d.ts +9 -0
- package/dist/core/disclaim-spawn.js +53 -0
- package/dist/core/disclaim-spawn.js.map +1 -0
- package/dist/core/junie-acp-transport.d.ts +58 -0
- package/dist/core/junie-acp-transport.js +179 -0
- package/dist/core/junie-acp-transport.js.map +1 -0
- package/dist/core/junie-auth-probe.d.ts +12 -0
- package/dist/core/junie-auth-probe.js +30 -0
- package/dist/core/junie-auth-probe.js.map +1 -0
- package/dist/core/junie-model-catalog.d.ts +10 -0
- package/dist/core/junie-model-catalog.js +104 -0
- package/dist/core/junie-model-catalog.js.map +1 -0
- package/dist/core/junie-runner.d.ts +45 -0
- package/dist/core/junie-runner.js +533 -0
- package/dist/core/junie-runner.js.map +1 -0
- package/dist/core/junie-ui-mapper.d.ts +132 -0
- package/dist/core/junie-ui-mapper.js +459 -0
- package/dist/core/junie-ui-mapper.js.map +1 -0
- package/dist/core/model-identity.js +17 -0
- package/dist/core/model-identity.js.map +1 -1
- package/dist/core/model-presets.js +10 -0
- package/dist/core/model-presets.js.map +1 -1
- package/dist/core/opencode-server-runner.js +4 -4
- package/dist/core/opencode-server-runner.js.map +1 -1
- package/dist/core/pi-runner.js +4 -4
- package/dist/core/pi-runner.js.map +1 -1
- package/dist/core/provider-auth.d.ts +16 -2
- package/dist/core/provider-auth.js +113 -7
- package/dist/core/provider-auth.js.map +1 -1
- package/dist/core/runner-factory.js +6 -0
- package/dist/core/runner-factory.js.map +1 -1
- package/dist/core/runner-model-catalog.js +12 -8
- package/dist/core/runner-model-catalog.js.map +1 -1
- package/dist/core/tool-display.js +6 -1
- package/dist/core/tool-display.js.map +1 -1
- package/dist/core/ui-events.d.ts +6 -2
- package/dist/git-diff-base.js +23 -2
- package/dist/git-diff-base.js.map +1 -1
- package/dist/git-worktree.d.ts +21 -2
- package/dist/git-worktree.js +68 -5
- package/dist/git-worktree.js.map +1 -1
- package/dist/index.js +14 -4
- package/dist/index.js.map +1 -1
- package/dist/paths.js +2 -0
- package/dist/paths.js.map +1 -1
- package/dist/runs/event-history.js +3 -0
- package/dist/runs/event-history.js.map +1 -1
- package/dist/runs/store.d.ts +42 -3
- package/dist/runs/store.js +112 -6
- package/dist/runs/store.js.map +1 -1
- package/dist/self-update/checkouts.d.ts +53 -0
- package/dist/self-update/checkouts.js +268 -0
- package/dist/self-update/checkouts.js.map +1 -0
- package/dist/self-update/cli.d.ts +5 -3
- package/dist/self-update/cli.js +75 -8
- package/dist/self-update/cli.js.map +1 -1
- package/dist/self-update/layout.d.ts +33 -1
- package/dist/self-update/layout.js +102 -3
- package/dist/self-update/layout.js.map +1 -1
- package/dist/self-update/pulls.d.ts +40 -0
- package/dist/self-update/pulls.js +127 -0
- package/dist/self-update/pulls.js.map +1 -0
- package/dist/self-update/service.d.ts +26 -3
- package/dist/self-update/service.js +85 -9
- package/dist/self-update/service.js.map +1 -1
- package/dist/server/dashboard.d.ts +107 -0
- package/dist/server/dashboard.js +2 -1
- package/dist/server/dashboard.js.map +1 -1
- package/dist/server/forge/github.js +4 -1
- package/dist/server/forge/github.js.map +1 -1
- package/dist/server/fs-browse.d.ts +3 -1
- package/dist/server/fs-browse.js +27 -5
- package/dist/server/fs-browse.js.map +1 -1
- package/dist/server/open-in-app.js +2 -0
- package/dist/server/open-in-app.js.map +1 -1
- package/dist/server/provider-action-gate.js +5 -1
- package/dist/server/provider-action-gate.js.map +1 -1
- package/dist/server/server.d.ts +880 -511
- package/dist/server/server.js +40 -5
- package/dist/server/server.js.map +1 -1
- package/dist/server/star-count.d.ts +67 -0
- package/dist/server/star-count.js +186 -0
- package/dist/server/star-count.js.map +1 -0
- package/dist/skills-banner.d.ts +19 -0
- package/dist/skills-banner.js +24 -0
- package/dist/skills-banner.js.map +1 -1
- package/dist/workflows/run.d.ts +0 -2
- package/dist/workflows/run.js +45 -29
- package/dist/workflows/run.js.map +1 -1
- package/dist/workflows/types.d.ts +6 -0
- package/dist/workspace/agent-accounts.d.ts +9 -1
- package/dist/workspace/agent-accounts.js +2 -0
- package/dist/workspace/agent-accounts.js.map +1 -1
- package/dist/workspace/agent-profiles.d.ts +2 -2
- package/dist/workspace/agent-profiles.js +25 -6
- package/dist/workspace/agent-profiles.js.map +1 -1
- package/dist/workspace/config.d.ts +9 -1
- package/dist/workspace/config.js +10 -3
- package/dist/workspace/config.js.map +1 -1
- package/dist/workspace/dashboard-insights.d.ts +42 -0
- package/dist/workspace/dashboard-insights.js +220 -0
- package/dist/workspace/dashboard-insights.js.map +1 -0
- package/dist/workspace/dashboard.d.ts +71 -1
- package/dist/workspace/dashboard.js +14 -1
- package/dist/workspace/dashboard.js.map +1 -1
- package/dist/workspace/semaphore.d.ts +3 -0
- package/dist/workspace/semaphore.js +8 -1
- package/dist/workspace/semaphore.js.map +1 -1
- package/package.json +3 -3
- package/scripts/mock-claude.mjs +34 -1
- package/scripts/mock-copilot-acp.mjs +190 -0
- package/scripts/mock-junie-acp.mjs +208 -0
- package/web/dist/assets/agent-task-pickers-BeQi-UTm.js +1 -0
- package/web/dist/assets/alert-dialog-CnRAuqwb.js +1 -0
- package/web/dist/assets/arrow-down-Da0kNRNH.js +1 -0
- package/web/dist/assets/arrow-left-BIZHhBIP.js +1 -0
- package/web/dist/assets/automation-format-CfPmkcsg.js +1 -0
- package/web/dist/assets/automations-route-AMJbFP53.js +1 -0
- package/web/dist/assets/centered-state-3r2Kaar_.js +1 -0
- package/web/dist/assets/chevron-left-DLAUPC66.js +1 -0
- package/web/dist/assets/chevron-right-KVZcXiPL.js +1 -0
- package/web/dist/assets/{circle-x-C9UoMP1V.js → circle-x-C0Jm5Ppb.js} +1 -1
- package/web/dist/assets/collapsible-DG_SIWqU.js +1 -0
- package/web/dist/assets/command-Dfln3D4A.js +1 -0
- package/web/dist/assets/{commit-list-BSfPsVsu.js → commit-list-_RA72yB_.js} +1 -1
- package/web/dist/assets/compare-variants-D6Ji6od4.js +1 -0
- package/web/dist/assets/dashboard-B3-tPimG.js +44 -0
- package/web/dist/assets/dialog-CiDREdUK.js +1 -0
- package/web/dist/assets/{diff-I0xowULh.js → diff-CxdyRumG.js} +2 -2
- package/web/dist/assets/diff-controls-DqJMMV4z.js +1 -0
- package/web/dist/assets/{diff-stat-yKn7joEr.js → diff-stat-Hupj4hxh.js} +1 -1
- package/web/dist/assets/{diff-view-DjvMeW1M.js → diff-view-BBYT5k6c.js} +1 -1
- package/web/dist/assets/dist-BqMwqJFX.js +1 -0
- package/web/dist/assets/dist-DpiX6WjA.js +1 -0
- package/web/dist/assets/{download-BcgZ2yk4.js → download-BR7EN9gW.js} +1 -1
- package/web/dist/assets/dropdown-menu-Ci4HFML0.js +1 -0
- package/web/dist/assets/editable-title-DDtUgRKZ.js +1 -0
- package/web/dist/assets/{ellipsis-vertical-g4O4NlLV.js → ellipsis-vertical-DBklom4U.js} +1 -1
- package/web/dist/assets/facet-filter-CfI4QvOd.js +1 -0
- package/web/dist/assets/{file-wXNeZwi7.js → file-CZb7cKNH.js} +1 -1
- package/web/dist/assets/{file-text-DV1gE2L6.js → file-text-Dm6CrEGW.js} +1 -1
- package/web/dist/assets/{folder-wjVId5un.js → folder-zQj-FYOo.js} +1 -1
- package/web/dist/assets/{git-pull-request-BBEDdTLK.js → git-pull-request-AhwzJc7s.js} +1 -1
- package/web/dist/assets/git-toolbar-j7gKkhGL.js +1 -0
- package/web/dist/assets/github-De-DFy8s.js +1 -0
- package/web/dist/assets/{image-preview-u1f-wzxC.js → image-preview-Dd3NVB7N.js} +1 -1
- package/web/dist/assets/index-HS1hr5Sz.js +12 -0
- package/web/dist/assets/index-YwgrLyBj.css +2 -0
- package/web/dist/assets/loader-circle-sk4vKJKp.js +1 -0
- package/web/dist/assets/{markdown-Bnm47qUl.js → markdown-DjNR-1p8.js} +2 -2
- package/web/dist/assets/new-task-form-vLs2G1_z.js +1 -0
- package/web/dist/assets/picker-pill-VW-M1ZiV.js +1 -0
- package/web/dist/assets/{pill-7dm3vWF7.js → pill-CPl6sysj.js} +1 -1
- package/web/dist/assets/popover-CNGONAql.js +1 -0
- package/web/dist/assets/project-router-dCZQu1wQ.js +1 -0
- package/web/dist/assets/{prompt-templates-BMZ5q5H_.js → prompt-templates-jNjVTAws.js} +1 -1
- package/web/dist/assets/{refresh-cw-C69euZ2H.js → refresh-cw-BfkEydKA.js} +1 -1
- package/web/dist/assets/repo-git-BZWZ6_pR.js +1 -0
- package/web/dist/assets/{run-diff-CoNVGn23.js → run-diff-u_roDsAJ.js} +2 -2
- package/web/dist/assets/run-header-Br1yJR0m.js +1 -0
- package/web/dist/assets/{search-x-BNLFOxI6.js → search-x-CT0NTqK1.js} +1 -1
- package/web/dist/assets/segmented-IDD4ucht.js +1 -0
- package/web/dist/assets/skills-Dsi5YdLG.js +1 -0
- package/web/dist/assets/{sparkles-ChorK-gZ.js → sparkles-CvOeAoyJ.js} +1 -1
- package/web/dist/assets/{square-terminal-C7KCPznz.js → square-terminal-eSs8YYZe.js} +1 -1
- package/web/dist/assets/{tab-link-E5O2Cesc.js → tab-link-CPF6ORha.js} +1 -1
- package/web/dist/assets/task-changes-DIT9Y1rh.js +1 -0
- package/web/dist/assets/task-commits-B4VvdiHH.js +1 -0
- package/web/dist/assets/task-files-BMm9C0DW.js +2 -0
- package/web/dist/assets/task-thread-RXabJAt0.js +9 -0
- package/web/dist/assets/{textarea-DLAfWPb0.js → textarea-DtBqPhIs.js} +1 -1
- package/web/dist/assets/thread-loading-Dnxb6Ar-.js +1 -0
- package/web/dist/assets/toaster-CfRVb8vH.js +43 -0
- package/web/dist/assets/token-metrics-DldVlr6m.js +1 -0
- package/web/dist/assets/tooltip-_O50N3pt.js +1 -0
- package/web/dist/assets/tracker-J0fdcH1G.js +4 -0
- package/web/dist/assets/{trash-2-_vwSMdPG.js → trash-2-CUH7GOVh.js} +1 -1
- package/web/dist/assets/{triangle-alert-fBRUkB46.js → triangle-alert-D5K_zyD3.js} +1 -1
- package/web/dist/assets/{upload-B4OIpdyq.js → upload-D7_n-9cl.js} +1 -1
- package/web/dist/assets/{use-now-sqAvRMna.js → use-now-3lElDuTi.js} +1 -1
- package/web/dist/assets/utils-BXvEm7Ve.js +64 -0
- package/web/dist/assets/workflows-D-dx9c_0.js +7 -0
- package/web/dist/assets/x-kLybIvX4.js +1 -0
- package/web/dist/assets/{zoomable-image-X81SApIg.js → zoomable-image-CnyQ9wyw.js} +1 -1
- package/web/dist/index.html +38 -36
- package/web/dist/assets/agent-task-pickers-DQ1qvgrD.js +0 -1
- package/web/dist/assets/alert-dialog-B_2uU4Bg.js +0 -1
- package/web/dist/assets/arrow-down-DieVZxSE.js +0 -1
- package/web/dist/assets/arrow-left-C8M0efjn.js +0 -1
- package/web/dist/assets/automation-format-CzinzpHK.js +0 -1
- package/web/dist/assets/automations-route-DYHUjV9R.js +0 -1
- package/web/dist/assets/centered-state-DJLgwvA4.js +0 -43
- package/web/dist/assets/chevron-left-BhXrOEE3.js +0 -1
- package/web/dist/assets/chevron-right-B3Ta8VKK.js +0 -1
- package/web/dist/assets/collapsible-BcKvItwg.js +0 -1
- package/web/dist/assets/command-BvGGv2_u.js +0 -1
- package/web/dist/assets/compare-variants-DBvMYMs3.js +0 -1
- package/web/dist/assets/dashboard-CGaFh4RV.js +0 -44
- package/web/dist/assets/dialog-B6NgKh0-.js +0 -1
- package/web/dist/assets/diff-controls-DskkZqmD.js +0 -1
- package/web/dist/assets/dist-BvXEdcbG.js +0 -1
- package/web/dist/assets/dist-CTksUkKh.js +0 -1
- package/web/dist/assets/dropdown-menu-B7HeKCfN.js +0 -1
- package/web/dist/assets/editable-title-BHbHmSIK.js +0 -1
- package/web/dist/assets/facet-filter-DZ3wfvN9.js +0 -1
- package/web/dist/assets/git-toolbar-EZuX4Cuz.js +0 -1
- package/web/dist/assets/github-zcLRxv77.js +0 -1
- package/web/dist/assets/index-BrZhA4_u.css +0 -2
- package/web/dist/assets/index-CSNFuBvj.js +0 -12
- package/web/dist/assets/loader-circle-Cwgo6onL.js +0 -1
- package/web/dist/assets/new-task-form-CQODCzBP.js +0 -1
- package/web/dist/assets/picker-pill-DNB9ETjS.js +0 -1
- package/web/dist/assets/popover-BRq6QnwI.js +0 -1
- package/web/dist/assets/project-router-I8Pbsrxy.js +0 -1
- package/web/dist/assets/repo-git-G436Abni.js +0 -1
- package/web/dist/assets/run-header-CxdaA86t.js +0 -1
- package/web/dist/assets/skills-C_kBDesq.js +0 -1
- package/web/dist/assets/task-changes-Bhw4Ysvg.js +0 -1
- package/web/dist/assets/task-commits-DBuGXuGm.js +0 -1
- package/web/dist/assets/task-files-CYDbeffM.js +0 -2
- package/web/dist/assets/task-thread-RuxHMJgN.js +0 -9
- package/web/dist/assets/thread-loading-BAuVAbcA.js +0 -1
- package/web/dist/assets/token-metrics-rVl4kXe_.js +0 -1
- package/web/dist/assets/tooltip-Bdl8mQG8.js +0 -1
- package/web/dist/assets/tracker-DJ8JW59-.js +0 -4
- package/web/dist/assets/utils-DoBmOlX3.js +0 -64
- package/web/dist/assets/workflows-C54D7mlm.js +0 -7
- package/web/dist/assets/x-HXr9KZBr.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{i as t,t as n}from"./react-runtime-CCIEwYL0.js";import{$ as r,A as i,Bi as a,D as o,_i as s,bi as c,cn as l,fi as u,gi as d,hi as f,mi as p,pi as m,yi as h}from"./toaster-CfRVb8vH.js";import{I as ee,a as g,b as _,c as v,r as y,s as b,t as x}from"./utils-BXvEm7Ve.js";import"./use-now-3lElDuTi.js";import{i as S,r as C,s as w,t as T}from"./popover-CNGONAql.js";import{a as E,i as D,o as O,r as k,s as A,t as j}from"./command-Dfln3D4A.js";import{t as M}from"./segmented-IDD4ucht.js";var N=e(t(),1),P=new Map,F=new Map,I=new Set,L=0;function R(e,t){t?F.set(e,L+1):F.delete(e),L++,I.forEach(e=>e())}function z(e,t){let n=`${e}:${typeof t==`string`?t:t.id}`;P.delete(n),P.set(n,{value:typeof t==`string`?null:{status:t.status,archived:t.archived},revision:L+1}),P.size>2e3&&P.delete(P.keys().next().value),L++,I.forEach(e=>e())}function te(e){return(0,N.useSyncExternalStore)(e=>(I.add(e),()=>{I.delete(e)}),()=>L),re(e.projectId,e.id)}var ne=()=>L,re=(e,t)=>F.has(e)?null:P.get(`${e}:${t}`)?.value;function ie(e,t=[]){let n=new Map(t.map(e=>[`${e.projectId}:${e.id}`,e])),r=!1;for(let n of t){let t=F.get(n.projectId);t!==void 0&&t<=e&&(F.delete(n.projectId),r=!0)}for(let[t,i]of P){let a=n.get(t);i.revision>e||!a||(a.status!==void 0&&a.archived!==void 0?(P.set(t,{value:{status:a.status,archived:a.archived},revision:L+1}),r=!0):i.value===null&&(P.delete(t),r=!0))}r&&(L++,I.forEach(e=>e()))}function ae(e=()=>performance.now()){let t=new Map,n=new Set,r,i={connected:!1,samples:[]},a=()=>{i={...i,samples:[...t.values()].map(e=>e.sample)},n.forEach(e=>e())},o=()=>{let n=!1;for(let[r,i]of t)i.deadline<=e()&&(t.delete(r),n=!0);n&&a()};return{getSnapshot:()=>i,subscribe(e){return n.add(e),r||=setInterval(o,1e3),o(),()=>{n.delete(e),n.size||(clearInterval(r),r=void 0)}},expire:o,connected(e){i.connected!==e&&(i={...i,connected:e},a())},replace(n,r,i){for(let[e,r]of t)r.sample.projectId===n&&t.delete(e);let o=i?Date.parse(i):NaN;for(let i of r){let r=Math.max(0,o-Date.parse(i.sampledAt));Number.isFinite(r)&&r<1e4&&i.projectId===n&&t.set(`${n}:${i.runId}`,{sample:i,deadline:e()+1e4-r})}a()},seed(n,r){for(let[e,n]of t)Date.parse(n.sample.sampledAt)<=Date.parse(r)&&t.delete(e);for(let i of n){let n=Math.max(0,Date.parse(r)-Date.parse(i.sampledAt));Number.isFinite(n)&&n<1e4&&!t.has(`${i.projectId}:${i.runId}`)&&t.set(`${i.projectId}:${i.runId}`,{sample:i,deadline:e()+1e4-n})}a()},remove(e,n){for(let[r,i]of t)i.sample.projectId===e&&(!n||i.sample.runId===n)&&t.delete(r);a()}}}var B=ae(),oe=()=>(0,N.useSyncExternalStore)(B.subscribe,B.getSnapshot),V=n(),H=g(`/workspace/events`),U=2,W=3e3,G=[`run`,`run-deleted`,`todos`,`usage`,`ping`],K=[`project-added`,`project-removed`,`checkout-progress`,`automation-change`,`tracker-changed`],q=new Set;function se(e){return q.add(e),()=>{q.delete(e)}}var J=400,ce=15e3;function le(e){let t;return{onEvent(n){n.type!==`run`&&n.type!==`run-deleted`||t===void 0&&(t=setTimeout(()=>{t=void 0,e.invalidateQueries({queryKey:l.runsIndex})},J))},cancel(){clearTimeout(t),t=void 0}}}function ue(e,t){let n;for(let t of e.getQueryCache().getAll()){if(t.queryKey[1]!==`health`)continue;let e=t.state.data?.bootProject;if(typeof e==`string`){n=e;break}}let r=new Set([t]);return n===t&&r.add(`default`),[...r]}function de(e){return[[`run-history`,e],[`run-history-context`,e],[`run-history-tail`,e]]}function Y(e){return[[e,`runs`],[e,`todos`],[e,`worktrees`],...de(e)]}function fe(e){if(e[0]!==`workspace`)return e[0]===`run-history`||e[0]===`run-history-context`||e[0]===`run-history-tail`?typeof e[1]==`string`?e[1]:void 0:typeof e[0]==`string`?e[0]:void 0}function pe(e){return[...new Set(e.getQueryCache().getAll().map(({queryKey:e})=>fe(e)).filter(e=>e!==void 0))]}function me(e){let t,n=new Set;return{onEvent(r){if(!(t!==void 0&&n.has(r))){for(let t of ue(e,r))n.add(t);t===void 0&&(t=setTimeout(()=>{t=void 0;let r=n;n=new Set;let i=v();for(let t of r)for(let n of Y(t))e.invalidateQueries({queryKey:n,refetchType:t===i?`active`:`none`})},J))}},cancel(){clearTimeout(t),t=void 0,n.clear()}}}function he(e,t,n){let r=new Map,i,a=0,o=()=>{if(clearTimeout(i),i=void 0,a>0)return;let o=X(e),s=r;r=new Map;for(let r of s.values())r.project===o?Z(e,t,r.event):n(r.project)},s=()=>{i===void 0&&(i=setTimeout(o,50))};return{onEvent(e,t){let n=e.type===`run`?e.run.id:e.id;r.set(`${t}:${n}`,{event:e,project:t}),s()},beginReconcile(){o(),a+=1},endReconcile(){a!==0&&(--a,a===0&&o())},cancel(){clearTimeout(i),i=void 0,r.clear(),a=0}}}async function ge(e){let t=v(),n=[i.runs.all,l.runsIndex,l.dashboard,i.todos,i.health,i.worktrees,l.providerStatus,l.hostUsage,[`run-history`,t],[`run-history-context`,t]],r=Promise.allSettled([Promise.all([e.cancelQueries({queryKey:[`tracker`],predicate:e=>e.queryKey[2]!==`items`||e.getObserversCount()===0}),e.cancelQueries({queryKey:l.projects})]).then(()=>Promise.all([e.invalidateQueries({queryKey:[`tracker`],predicate:e=>e.queryKey[2]!==`items`||e.getObserversCount()===0}),e.invalidateQueries({queryKey:l.projects})])),...pe(e).filter(e=>e!==t).flatMap(t=>Y(t).map(t=>e.invalidateQueries({queryKey:t,refetchType:`none`}))),...n.map(t=>e.invalidateQueries({queryKey:t}))]),a=!1,o;try{await Promise.race([r.then(()=>{a=!0}),new Promise(e=>{o=setTimeout(e,ce)})])}finally{clearTimeout(o)}a||await Promise.allSettled(n.map(t=>e.cancelQueries({queryKey:t})))}function X(e){return b()??e.getQueryData(i.health)?.bootProject}function Z(e,t,n){switch(n.type){case`run`:{e.setQueryData(i.runs.list(),e=>p(e,n.run));let t=i.runs.detail(n.run.id);e.getQueryData(t)!==void 0&&e.setQueryData(t,e=>d(e,n.run));let r=i.runs.changes(n.run.id);e.getQueryData(r)!==void 0&&e.invalidateQueries({queryKey:r}),e.invalidateQueries({queryKey:i.worktrees});return}case`run-deleted`:e.setQueryData(i.runs.list(),e=>m(e,n.id)),e.removeQueries({queryKey:i.runs.detail(n.id)}),e.removeQueries({queryKey:i.runs.diff(n.id)}),e.invalidateQueries({queryKey:i.worktrees});return;case`todos`:e.setQueryData(i.todos,n.items);return;case`usage`:t.set(n.usage);return;case`ping`:return}}function _e(e,t=H){let n=a();(0,N.useEffect)(()=>{let r=globalThis.EventSource;if(typeof r!=`function`)return;let a=null,o,u,d=()=>{clearTimeout(o),clearTimeout(u),o=void 0,u=void 0,n.invalidateQueries({queryKey:l.dashboard,refetchType:document.visibilityState===`hidden`?`none`:`active`,predicate:e=>e.queryKey[2]!==`telemetry`&&e.queryKey[2]!==`automations`&&!(e.queryKey[2]===`feed`&&e.queryKey[3]===`github`)})},f=()=>{clearTimeout(o),o=setTimeout(d,250),u??=setTimeout(d,1e3)},p=le(n),m=me(n),g=he(n,e,m.onEvent),v,y=!1,b=!1,x=Date.now(),S,C=!1,w=!1,T=0,E=new Set,D=[],O=()=>{C=!0,w=!1;let e=l.providerStatus;n.cancelQueries({queryKey:e,exact:!0}).then(()=>n.invalidateQueries({queryKey:e,exact:!0,refetchType:`active`})).finally(()=>{if(b||!w){C=!1;return}O()})},k=e=>{let t=l.providerStatus,r=h(n.getQueryData(t),e);if(r!==void 0){n.setQueryData(t,r);return}if(C){w=!0;return}O()},A=()=>{T+=1,g.beginReconcile(),ge(n).finally(()=>{--T,T===0&&(b?(E.clear(),D=[]):j()),g.endReconcile()})},j=()=>{let e=E,t=D;E=new Set,D=[];let r=X(n);for(let t of e)t===r?n.invalidateQueries({queryKey:i.todos}):m.onEvent(t);for(let e of t)k(e)},M=()=>{b||v!==void 0||(v=setTimeout(()=>{v=void 0,b||N()},W))},N=()=>{B.connected(!1),a?.close(),x=Date.now();let i=new r(t,{withCredentials:!0});a=i,i.addEventListener(`open`,()=>{b||a!==i||(x=Date.now(),y&&A(),B.connected(!0),y=!0)});for(let t of G)i.addEventListener(t,r=>{if(b||a!==i)return;x=Date.now();let o=s(t,r.data);if(o){if(p.onEvent(o.event),(o.event.type===`run`||o.event.type===`run-deleted`)&&(f(),o.project&&z(o.project,o.event.type===`run-deleted`?o.event.id:o.event.run),o.project&&(o.event.type===`run-deleted`||o.event.run.status!==`running`)&&B.remove(o.project,o.event.type===`run-deleted`?o.event.id:o.event.run.id)),t===`usage`)try{let e=_.safeParse(JSON.parse(r.data));e.success&&B.replace(e.data.project,e.data.samples??[],e.data.sentAt)}catch{}if(o.project!==null&&o.project!==X(n)){m.onEvent(o.project);return}o.event.type===`run`||o.event.type===`run-deleted`?o.project!==null&&g.onEvent(o.event,o.project):o.event.type===`todos`&&T>0?o.project!==null&&E.add(o.project):Z(n,e,o.event)}});for(let e of K)i.addEventListener(e,t=>{if(b||a!==i)return;x=Date.now();let r;try{r=JSON.parse(t.data)}catch{return}if(e===`tracker-changed`){if(!ee.safeParse(r).success)return;Promise.all([n.cancelQueries({queryKey:[`tracker`]}),n.cancelQueries({queryKey:l.projects})]).then(()=>Promise.all([n.invalidateQueries({queryKey:[`tracker`]}),n.invalidateQueries({queryKey:l.projects})]))}e!==`checkout-progress`&&e!==`automation-change`&&e!==`tracker-changed`&&(r&&typeof r==`object`&&(e===`project-removed`&&`id`in r&&typeof r.id==`string`?(R(r.id,!0),B.remove(r.id)):e===`project-added`&&`project`in r&&r.project&&typeof r.project==`object`&&`id`in r.project&&typeof r.project.id==`string`&&R(r.project.id,!1)),n.invalidateQueries({queryKey:l.projects}),n.invalidateQueries({queryKey:l.dashboard,refetchType:document.visibilityState===`hidden`?`none`:`active`}));for(let t of[...q])t(e,r)});i.addEventListener(`provider-status`,e=>{if(b||a!==i)return;x=Date.now();let t;try{t=JSON.parse(e.data)}catch{return}let n=c(t);if(n){if(T>0){D.push(n);return}k(n)}}),i.addEventListener(`error`,()=>{b||a!==i||(B.connected(!1),i.readyState===U&&M())})},P=()=>{document.visibilityState===`visible`&&(A(),(!a||a.readyState===U)&&(clearTimeout(v),v=void 0,N()))},F=()=>{clearTimeout(v),v=void 0;let e=a;a=null,B.connected(!1),e?.close()},I=e=>{e.persisted&&(A(),N())};return S=setInterval(()=>{b||document.visibilityState!==`visible`||Date.now()-x<=4e4||(clearTimeout(v),v=void 0,N())},1e4),document.addEventListener(`visibilitychange`,P),window.addEventListener(`pagehide`,F),window.addEventListener(`pageshow`,I),N(),()=>{b=!0,clearTimeout(v),clearInterval(S),B.connected(!1),clearTimeout(o),clearTimeout(u),p.cancel(),m.cancel(),g.cancel(),E.clear(),D=[],document.removeEventListener(`visibilitychange`,P),window.removeEventListener(`pagehide`,F),window.removeEventListener(`pageshow`,I);let e=a;a=null,B.connected(!1),e?.close()}},[n,e,t])}var Q=(0,N.createContext)(null);function ve({children:e}){let[t]=(0,N.useState)(f);return _e(t),r(),(0,V.jsx)(Q.Provider,{value:t,children:e})}function ye(e){let t=(0,N.useContext)(Q),n=t?t.get:xe;return(0,N.useSyncExternalStore)(t?t.subscribe:be,()=>e?n()[e]:void 0,()=>void 0)}var be=()=>()=>void 0,xe=()=>u,Se=y(`check-check`,[[`path`,{d:`M18 6 7 17l-5-5`,key:`116fxf`}],[`path`,{d:`m22 10-7.5 7.5L13 16`,key:`ke71qq`}]]),Ce=y(`dollar-sign`,[[`line`,{x1:`12`,x2:`12`,y1:`2`,y2:`22`,key:`7eqyqh`}],[`path`,{d:`M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6`,key:`1b0p4s`}]]),$=y(`layout-dashboard`,[[`rect`,{width:`7`,height:`9`,x:`3`,y:`3`,rx:`1`,key:`10lvy0`}],[`rect`,{width:`7`,height:`5`,x:`14`,y:`3`,rx:`1`,key:`16une8`}],[`rect`,{width:`7`,height:`9`,x:`14`,y:`12`,rx:`1`,key:`1hutg5`}],[`rect`,{width:`7`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`ldoo1y`}]]),we=y(`sliders-horizontal`,[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]);function Te({slot:e,label:t,options:n,selected:r,onToggle:i,onClear:a,searchPlaceholder:s,emptyLabel:c=`Nothing to filter by`}){let[l,u]=N.useState(!1),d=r.length>0,f=r.length===1?n.find(e=>e.value===r[0])?.label??r[0]:`${r.length} selected`;return(0,V.jsxs)(T,{open:l,onOpenChange:u,children:[(0,V.jsx)(S,{asChild:!0,children:(0,V.jsxs)(`button`,{type:`button`,"data-slot":`facet-${e}`,"data-active":d?`true`:void 0,"aria-label":`Filter by ${t.toLowerCase()}`,className:x(`inline-flex h-7 items-center gap-1.5 rounded-full border border-border bg-card px-2.5 text-xs font-medium text-muted-foreground transition-colors hover:bg-muted hover:text-foreground`,d&&`border-violet/40 bg-violet/10 text-foreground`),children:[(0,V.jsx)(`span`,{className:x(d&&`text-soft-foreground`),children:t}),d?(0,V.jsx)(`span`,{className:`max-w-[140px] truncate font-semibold`,children:f}):null,(0,V.jsx)(w,{"aria-hidden":`true`,className:`size-2.5 shrink-0 text-soft-foreground`})]})}),(0,V.jsxs)(C,{align:`start`,className:`w-64 p-0`,"data-testid":`facet-${e}-menu`,children:[(0,V.jsxs)(j,{children:[(0,V.jsx)(E,{placeholder:s??`Search ${t.toLowerCase()}…`}),(0,V.jsxs)(A,{children:[(0,V.jsx)(k,{children:c}),(0,V.jsx)(D,{children:n.map(e=>{let t=r.includes(e.value);return(0,V.jsxs)(O,{value:e.label,onSelect:()=>i(e.value),"data-slot":`facet-option`,"data-value":e.value,"aria-checked":t,role:`option`,children:[(0,V.jsx)(`span`,{"aria-hidden":`true`,className:x(`flex size-4 shrink-0 items-center justify-center rounded-[4px] border`,t?`border-violet bg-violet text-violet-foreground`:`border-input`),children:t?(0,V.jsx)(o,{className:`size-3`}):null}),(0,V.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.label}),e.count===void 0?null:(0,V.jsx)(`span`,{className:`shrink-0 font-mono text-[11px] text-soft-foreground tabular-nums`,children:e.count})]},e.value)})})]})]}),d?(0,V.jsx)(`div`,{className:`border-t border-border p-1`,children:(0,V.jsxs)(`button`,{type:`button`,"data-action":`facet-${e}-clear`,onClick:()=>a(),className:`w-full rounded-sm px-2 py-1.5 text-left text-xs font-medium text-muted-foreground hover:bg-muted hover:text-foreground`,children:[`Clear `,t.toLowerCase()]})}):null]})]})}function Ee({label:e,count:t,selected:n,onToggle:r,slot:i,tone:a=`neutral`}){return(0,V.jsxs)(`button`,{type:`button`,"data-slot":i,"data-selected":n?`true`:void 0,"aria-pressed":n,onClick:r,className:x(`inline-flex h-7 items-center gap-1.5 rounded-full border px-2.5 text-xs font-medium transition-colors`,a===`tag`?`border-violet/25 bg-violet/10 text-violet hover:bg-violet/20`:`border-border bg-card text-muted-foreground hover:bg-muted hover:text-foreground`,n&&`border-violet bg-violet text-violet-foreground hover:bg-violet`),children:[e,t===void 0?null:(0,V.jsx)(`span`,{className:x(`font-mono text-[11px] tabular-nums`,!n&&`text-soft-foreground`),children:t})]})}function De({slot:e,label:t,value:n,options:r,onChange:i}){return(0,V.jsx)(M,{slot:e,label:t,value:n,options:r,onChange:i,allowRelease:!0})}export{$ as a,ve as c,B as d,oe as f,te as h,we as i,se as l,ie as m,De as n,Ce as o,ne as p,Ee as r,Se as s,Te as t,ye as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e}from"./utils-
|
|
1
|
+
import{r as e}from"./utils-BXvEm7Ve.js";var t=e(`file`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e}from"./utils-
|
|
1
|
+
import{r as e}from"./utils-BXvEm7Ve.js";var t=e(`file-text`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e}from"./utils-
|
|
1
|
+
import{r as e}from"./utils-BXvEm7Ve.js";var t=e(`folder`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]);export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e}from"./utils-
|
|
1
|
+
import{r as e}from"./utils-BXvEm7Ve.js";var t=e(`git-pull-request`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`line`,{x1:`6`,x2:`6`,y1:`9`,y2:`21`,key:`rroup`}]]);export{t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{i as t,t as n}from"./react-runtime-CCIEwYL0.js";import{r}from"./toaster-CfRVb8vH.js";import{n as i,t as a}from"./utils-BXvEm7Ve.js";import{t as o}from"./chevron-right-KVZcXiPL.js";import{c as s,m as c,n as l,r as u,t as d}from"./dropdown-menu-Ci4HFML0.js";import{t as f}from"./ellipsis-vertical-DBklom4U.js";import{t as p}from"./file-CZb7cKNH.js";import{t as m}from"./folder-zQj-FYOo.js";import{n as h,r as g,t as _}from"./diff-controls-DqJMMV4z.js";import{t as v}from"./git-pull-request-AhwzJc7s.js";import{t as y}from"./square-terminal-eSs8YYZe.js";import{t as b}from"./upload-D7_n-9cl.js";import{t as x}from"./diff-stat-Hupj4hxh.js";var S=e(t(),1),C=n();function w({root:e,selected:t,onSelect:n}){return(0,C.jsx)(`nav`,{"data-slot":`changes-tree`,"aria-label":`Changed files`,className:`min-w-0 text-[13px]`,children:(0,C.jsxs)(`ul`,{className:`flex flex-col gap-px`,children:[e.dirs.map(e=>(0,C.jsx)(E,{dir:e,depth:0,selected:t,onSelect:n},e.path)),e.files.map(e=>(0,C.jsx)(O,{file:e,depth:0,selected:t,onSelect:n},e.path))]})})}function T({adds:e,dels:t}){return(0,C.jsxs)(`span`,{className:`ml-auto shrink-0 pl-2 font-mono text-[11px] font-medium tabular-nums`,children:[e>0?(0,C.jsxs)(`span`,{className:`text-success`,children:[`+`,e]}):null,e>0&&t>0?` `:null,t>0?(0,C.jsxs)(`span`,{className:`text-danger`,children:[`−`,t]}):null]})}function E({dir:e,depth:t,selected:n,onSelect:r}){let[i,s]=(0,S.useState)(!0);return(0,C.jsxs)(`li`,{children:[(0,C.jsxs)(`button`,{type:`button`,"data-slot":`tree-dir`,"data-path":e.path,"data-state":i?`open`:`closed`,"aria-expanded":i,onClick:()=>s(e=>!e),className:`flex w-full min-w-0 items-center gap-1.5 rounded-sm px-1.5 py-1 text-left text-muted-foreground hover:bg-muted hover:text-foreground`,style:{paddingLeft:`${6+t*14}px`},children:[(0,C.jsx)(o,{"aria-hidden":`true`,className:a(`size-3.5 shrink-0 transition-transform`,i&&`rotate-90`)}),(0,C.jsx)(m,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}),(0,C.jsx)(`span`,{className:`min-w-0 truncate font-medium`,children:e.name}),(0,C.jsx)(T,{adds:e.adds,dels:e.dels})]}),i?(0,C.jsxs)(`ul`,{className:`flex flex-col gap-px`,children:[e.dirs.map(e=>(0,C.jsx)(E,{dir:e,depth:t+1,selected:n,onSelect:r},e.path)),e.files.map(e=>(0,C.jsx)(O,{file:e,depth:t+1,selected:n,onSelect:r},e.path))]}):null]})}var D={added:`text-success`,deleted:`text-danger`};function O({file:e,depth:t,selected:n,onSelect:r}){let i=n===e.path;return(0,C.jsx)(`li`,{children:(0,C.jsxs)(`button`,{type:`button`,"data-slot":`tree-file`,"data-path":e.path,"aria-current":i?`true`:void 0,onClick:()=>r(e.path),className:a(`flex w-full min-w-0 items-center gap-1.5 rounded-sm px-1.5 py-1 text-left hover:bg-muted`,i?`bg-muted font-medium text-foreground`:`text-muted-foreground hover:text-foreground`),style:{paddingLeft:`${24+t*14}px`},children:[(0,C.jsx)(p,{"aria-hidden":`true`,className:a(`size-3.5 shrink-0`,D[e.status])}),(0,C.jsx)(`span`,{className:`min-w-0 truncate`,children:e.name}),(0,C.jsx)(T,{adds:e.adds,dels:e.dels})]})})}function k(e,t){return{kind:`dir`,name:e,path:t,dirs:[],files:[],adds:0,dels:0,fileCount:0}}function A(e){let t=e;for(;t.files.length===0&&t.dirs.length===1;){let e=t.dirs[0];t={...e,name:`${t.name}/${e.name}`}}return{...t,dirs:t.dirs.map(A)}}var j=(e,t)=>e.name.localeCompare(t.name);function M(e){let t=k(``,``),n=new Map([[``,t]]),r=e=>{let t=n.get(e);if(t)return t;let i=e.lastIndexOf(`/`),a=r(i===-1?``:e.slice(0,i)),o=k(i===-1?e:e.slice(i+1),e);return a.dirs.push(o),n.set(e,o),o};for(let t of e){let e=t.path.lastIndexOf(`/`);r(e===-1?``:t.path.slice(0,e)).files.push({kind:`file`,name:e===-1?t.path:t.path.slice(e+1),path:t.path,status:t.status,adds:t.adds,dels:t.dels,binary:t.binary})}let i=e=>{e.dirs.forEach(i),e.adds=e.files.reduce((e,t)=>e+t.adds,0)+e.dirs.reduce((e,t)=>e+t.adds,0),e.dels=e.files.reduce((e,t)=>e+t.dels,0)+e.dirs.reduce((e,t)=>e+t.dels,0),e.fileCount=e.files.length+e.dirs.reduce((e,t)=>e+t.fileCount,0),e.dirs.sort(j),e.files.sort(j)};return i(t),{...t,dirs:t.dirs.map(A)}}function N({bar:e,branch:t,stat:n,mode:i,wrap:a,onModeChange:o,onWrapChange:c,onAction:p}){return(0,C.jsxs)(`div`,{"data-slot":`git-toolbar`,className:`flex flex-wrap items-center gap-x-2.5 gap-y-1.5 border-b border-border px-4 py-2 md:px-6`,children:[t?(0,C.jsx)(_,{branch:t}):null,n?(0,C.jsx)(I,{stat:n}):null,(0,C.jsxs)(`span`,{className:`ml-auto flex items-center gap-1`,children:[(0,C.jsx)(`span`,{className:`hidden items-center gap-1 md:flex`,children:(0,C.jsx)(h,{mode:i,wrap:a,onModeChange:o,onWrapChange:c})}),e.secondary.map(e=>(0,C.jsx)(F,{action:e,variant:`outline`,onAction:p},e.id)),(0,C.jsx)(F,{action:e.primary,variant:`primary`,onAction:p}),e.menu.length>0?(0,C.jsxs)(d,{children:[(0,C.jsx)(s,{asChild:!0,children:(0,C.jsx)(r,{variant:`ghost`,size:`icon-sm`,"aria-label":`More git actions`,children:(0,C.jsx)(f,{"aria-hidden":`true`})})}),(0,C.jsx)(l,{align:`end`,"data-slot":`git-toolbar-menu`,children:e.menu.map(e=>(0,C.jsxs)(u,{disabled:!e.enabled,title:e.reason,onSelect:()=>p(e.id),children:[P[e.id],e.label]},e.id))})]}):null]})]})}var P={commit:(0,C.jsx)(g,{"aria-hidden":`true`}),push:(0,C.jsx)(b,{"aria-hidden":`true`}),"create-pr":(0,C.jsx)(v,{"aria-hidden":`true`}),"view-pr":(0,C.jsx)(c,{"aria-hidden":`true`}),"open-terminal":(0,C.jsx)(y,{"aria-hidden":`true`})};function F({action:e,variant:t,onAction:n}){return e.id===`view-pr`?i(e.href)?(0,C.jsx)(r,{asChild:!0,variant:t,size:`sm`,"data-action":e.id,children:(0,C.jsxs)(`a`,{href:e.href,target:`_blank`,rel:`noopener noreferrer`,children:[P[e.id],e.label]})}):(0,C.jsxs)(r,{variant:t,size:`sm`,"data-action":e.id,disabled:!0,title:`View PR unavailable — the recorded PR link is not an http(s) URL`,children:[P[e.id],e.label]}):(0,C.jsxs)(r,{variant:t,size:`sm`,"data-action":e.id,disabled:!e.enabled,title:e.enabled?void 0:e.reason,onClick:()=>n(e.id),children:[P[e.id],e.label]})}function I({stat:e}){return(0,C.jsx)(`span`,{"data-slot":`changes-stat`,children:(0,C.jsx)(x,{stat:{adds:L(e.adds),dels:L(e.dels),files:e.files}})})}function L(e){let[t,n]=(0,S.useState)(e),r=(0,S.useRef)(e);return(0,S.useEffect)(()=>{let t=r.current;if(t===e)return;if(typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches||typeof requestAnimationFrame!=`function`){r.current=e,n(e);return}let i=performance.now(),a=0,o=s=>{let c=Math.min(1,(s-i)/350),l=1-(1-c)**3;n(Math.round(t+(e-t)*l)),c<1?a=requestAnimationFrame(o):r.current=e};return a=requestAnimationFrame(o),()=>{cancelAnimationFrame(a),r.current=e,n(e)}},[e]),t}export{w as i,N as n,M as r,I as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{i as t,t as n}from"./react-runtime-CCIEwYL0.js";import{A as r,Bi as i,D as a,Gr as o,J as s,K as c,Ki as l,Kt as u,Li as d,Pi as f,Q as p,Ri as m,X as h,Y as g,_r as _,gr as v,hr as y,in as b,jr as x,mr as S,n as C,q as w,r as T,rr as E,tn as ee}from"./toaster-CfRVb8vH.js";import{n as D,r as O,t as k}from"./utils-BXvEm7Ve.js";import{t as A}from"./arrow-left-BIZHhBIP.js";import{t as j}from"./chevron-left-DLAUPC66.js";import{i as M,o as N,r as P,t as F}from"./popover-CNGONAql.js";import{t as I}from"./chevron-right-KVZcXiPL.js";import{n as L,t as te}from"./circle-x-C0Jm5Ppb.js";import{h as R,m as z}from"./dropdown-menu-Ci4HFML0.js";import{t as ne}from"./git-pull-request-AhwzJc7s.js";import{t as re}from"./loader-circle-sk4vKJKp.js";import{m as ie,p as ae}from"./new-task-form-vLs2G1_z.js";import{t as oe}from"./refresh-cw-BfkEydKA.js";import{a as se,o as ce,r as le,s as ue,t as de,u as fe}from"./command-Dfln3D4A.js";import{a as pe,c as me,i as he,l as ge,n as B,o as _e,r as V,t as ve}from"./agent-task-pickers-BeQi-UTm.js";import{t as ye}from"./triangle-alert-D5K_zyD3.js";import{t as H}from"./x-kLybIvX4.js";import{a as be,i as U,o as W,r as xe,s as G,t as Se}from"./dialog-CiDREdUK.js";import{r as Ce,t as we}from"./project-router-dCZQu1wQ.js";import{n as K}from"./format-DHK74MwW.js";import{s as Te,t as q}from"./skills-9oR_oHse.js";import{t as Ee}from"./centered-state-3r2Kaar_.js";import{t as De}from"./textarea-DtBqPhIs.js";import{i as J,n as Oe,o as Y,r as ke,s as X}from"./prompt-templates-jNjVTAws.js";import{n as Z,t as Ae}from"./use-submit-shortcut-BJ10ZshV.js";import{t as je}from"./markdown-DjNR-1p8.js";import{t as Me}from"./segmented-IDD4ucht.js";import{B as Ne,_ as Pe,g as Fe,h as Ie,m as Le,p as Re}from"./index-HS1hr5Sz.js";import{t as ze}from"./diff-CxdyRumG.js";import{t as Be}from"./tab-link-CPF6ORha.js";var Ve=O(`message-square`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]),Q=e(t(),1),$=n();function He({className:e,...t}){return(0,$.jsx)(`div`,{"data-slot":`skeleton`,className:k(`animate-pulse rounded-md bg-accent`,e),...t})}function Ue(e){let t=new Set;for(let n of e)for(let e of n.labels)t.add(e);return[...t].sort((e,t)=>e.toLowerCase().localeCompare(t.toLowerCase()))}function We(e,t={}){let n=(t.query??``).trim().toLowerCase(),r=t.labels??[],i=n.replace(/^#/,``),a=i!==``&&/^\d+$/.test(i);return e.filter(e=>r.length>0&&!r.every(t=>e.labels.includes(t))?!1:n===``?!0:a?String(e.number).includes(i):`#${e.number} ${e.title} ${e.author} ${e.body}`.toLowerCase().includes(n))}function Ge(e,t){let n=t===`oldest`?1:-1;return[...e].sort((e,t)=>e.createdAt===t.createdAt?(e.number-t.number)*n:e.createdAt<t.createdAt?-n:n)}function Ke(e,t){return e.trim()!==``&&t===0}function qe(e){if(!e||!/^[0-9a-fA-F]{6}$/.test(e))return{borderColor:`var(--border)`,color:`var(--muted-foreground)`};let t=`#${e}`;return{backgroundColor:`${t}22`,borderColor:`${t}66`,color:`color-mix(in srgb, ${t} 50%, var(--foreground))`}}var Je={workflow:null,skills:[]},Ye=`cez-followup-selection`;function Xe(e){let t=e&&typeof e==`object`?e:{};return{workflow:typeof t.workflow==`string`?t.workflow:null,skills:Array.isArray(t.skills)?t.skills.filter(e=>typeof e==`string`):[]}}function Ze(){try{let e=localStorage.getItem(Ye);return e?Xe(JSON.parse(e)):{...Je}}catch{return{...Je}}}function Qe(e){try{localStorage.setItem(Ye,JSON.stringify(e))}catch{}}var $e=`cez-followup-prompt:`;function et(e){try{return localStorage.getItem($e+e)??``}catch{return``}}function tt(e,t){try{t===``?localStorage.removeItem($e+e):localStorage.setItem($e+e,t)}catch{}}function nt({item:e,workflows:t,skills:n,workflow:s,onWorkflowChange:c,selectedSkills:l,onSkillsChange:u,engine:f,onEngineChange:m,queuedRunId:h,onQueued:g}){let _=i(),v=ee(),y=e.kind===`pr`?`PR`:`issue`,b=l.filter(e=>n.some(t=>t.name===e)),[x]=(0,Q.useState)(()=>_e(e)),[S,w]=(0,Q.useState)(()=>et(e.url)||x),D=Fe(f),O=(0,Q.useRef)(null);(0,Q.useEffect)(()=>{tt(e.url,S===x?``:S)},[e.url,S,x]);let k=p(),A=(0,Q.useMemo)(()=>ke(Y(v.data?.promptTemplates),k.data?.capabilities),[v.data?.promptTemplates,k.data?.capabilities]),j=e=>{let t=O.current,n=S===x?S.length:t?.selectionStart??S.length,r=J(S,n,e);w(r.text),requestAnimationFrame(()=>{O.current?.focus(),O.current?.setSelectionRange(r.caret,r.caret)})},M=Oe(A,b),N=(0,Q.useRef)(S);N.current=S;let P=(0,Q.useRef)(``);(0,Q.useEffect)(()=>{let e=X(N.current,P.current,M,x);P.current=e.applied,e.text!==N.current&&w(e.text)},[M,x]);let F=d({mutationFn:async()=>D.canRun?E(he(e,s,b,S,Ie(D))):null,onSuccess:t=>{if(t===null)return;let n=`runs`in t?t.runs[0]:t;n&&g(e.url,n.id),C(`Added to the queue — ${y} #${e.number}`),b.length>0&&v.data!==void 0&&o({skillUsage:b.reduce((e,t)=>q(e,t),v.data.skillUsage)}).then(()=>_.invalidateQueries({queryKey:r.uiState})).catch(()=>{}),tt(e.url,``),w(x),P.current=``,_.invalidateQueries({queryKey:r.runs.all})},onError:e=>C(e.message,{tone:`danger`})}),I=e=>{Ae({key:e.key,shiftKey:e.shiftKey,metaKey:e.metaKey,ctrlKey:e.ctrlKey,altKey:e.altKey,repeat:e.repeat,isComposing:e.nativeEvent.isComposing})&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),!F.isPending&&D.canRun&&F.mutate())},L=e=>u(l.includes(e)?l.filter(t=>t!==e):[...l,e]);return(0,$.jsxs)(`section`,{"data-slot":`gh-hand`,className:`mt-7 rounded-lg border border-border bg-card p-4`,children:[(0,$.jsxs)(`h3`,{className:`flex items-center gap-1.5 text-[11px] font-semibold tracking-[.04em] text-soft-foreground uppercase`,children:[(0,$.jsx)(ae,{"aria-hidden":`true`,className:`size-3.5 text-violet`}),`Hand this to the agent`]}),(0,$.jsxs)(`div`,{className:`mt-3 flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(B,{workflows:t,value:s,onChange:c}),(0,$.jsx)(ve,{skills:n,skillUsage:v.data?.skillUsage,selected:b,onToggle:L}),(0,$.jsx)(Le,{pick:f,onChange:m,disabled:F.isPending||!D.canRun,accounts:!0}),(0,$.jsx)(V,{resolved:D,dataSlot:`gh-provider-gate`}),(0,$.jsx)(Re,{templates:A,onInsert:j})]}),b.length>0?(0,$.jsx)(`div`,{"data-slot":`gh-skill-chips`,className:`mt-2.5 flex flex-wrap gap-1.5`,children:b.map(e=>(0,$.jsxs)(`button`,{type:`button`,"data-slot":`gh-skill-chip`,"data-skill":e,onClick:()=>L(e),title:`Remove this skill`,className:`inline-flex items-center gap-1 rounded-full border border-border bg-muted px-2 py-px font-mono text-[11px] font-medium text-foreground transition-colors hover:bg-danger/10 hover:text-danger`,children:[e,(0,$.jsx)(H,{"aria-hidden":`true`,className:`size-3`})]},e))}):null,(0,$.jsx)(De,{ref:O,"data-slot":`gh-custom-prompt`,"aria-label":`Custom prompt`,"aria-keyshortcuts":`Control+Enter Meta+Enter`,value:S,onChange:e=>w(e.target.value),onKeyDown:I,placeholder:`Instructions for the agent… (#${e.number} and its link are always sent)`,className:`mt-3 min-h-20 text-[13px]`}),(0,$.jsxs)(`div`,{className:`mt-4 flex flex-wrap items-center gap-2.5`,children:[(0,$.jsxs)(T,{variant:`contrast`,"data-action":`gh-run`,disabled:F.isPending||!D.canRun,onClick:()=>F.mutate(),children:[(0,$.jsx)(ie,{"aria-hidden":`true`,className:`size-3.5`}),`Run agent on this `,y]}),(0,$.jsx)(`kbd`,{"aria-hidden":`true`,className:`rounded-[5px] border border-b-2 border-border bg-card px-[5px] py-px font-mono text-[10.5px] font-medium text-muted-foreground`,children:Z()}),h?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{"data-slot":`gh-queued`,className:`flex items-center gap-1 text-xs font-medium text-success`,children:[(0,$.jsx)(a,{"aria-hidden":`true`,className:`size-3.5`}),`queued`]}),(0,$.jsx)(we,{to:`/tasks/${h}`,"data-slot":`gh-view-run`,className:`text-xs font-semibold text-violet hover:underline`,children:`View task →`})]}):null]})]})}var rt=1e3,it=100,at=350;function ot(e,t){let[n,r]=(0,Q.useState)(e);return(0,Q.useEffect)(()=>{let n=setTimeout(()=>r(e),t);return()=>clearTimeout(n)},[e,t]),n}function st({view:e,changes:t=!1,index:n=!1}){let{n:a}=f(),s=c({limit:rt}),m=p().data?.capabilities?.automations===!0,g=s.data,_=ee(),v=_.data?.githubSort===`oldest`?`oldest`:`newest`,x=(0,Q.useMemo)(()=>g?.available?Ge(g.prs,v):[],[g,v]),E=a===void 0?null:Number.parseInt(a,10),D=(0,Q.useMemo)(()=>{if(!g?.available)return[];let t=new Set;e===`prs`&&E!==null&&Number.isInteger(E)&&t.add(E);for(let e of x){if(t.size>=it)break;t.add(e.number)}return[...t]},[g,x,e,E]),O=w(D,e===`prs`),A=O.data?.available?O.data.checks:void 0,j=i(),M=e=>{j.setQueryData(r.uiState,t=>({...t,githubView:e})),o({githubView:e}).then(e=>j.setQueryData(r.uiState,e)).catch(e=>{C(e instanceof Error?e.message:String(e),{tone:`danger`}),j.invalidateQueries({queryKey:r.uiState})})},P=e=>{j.setQueryData(r.uiState,t=>({...t,githubSort:e})),o({githubSort:e}).then(e=>j.setQueryData(r.uiState,e)).catch(e=>{C(e instanceof Error?e.message:String(e),{tone:`danger`}),j.invalidateQueries({queryKey:r.uiState})})},F=(0,Q.useRef)(null),I=d({mutationFn:()=>S({refresh:!0,limit:rt}),onSuccess:e=>{j.setQueryData(r.github({limit:rt}),e),j.invalidateQueries({queryKey:r.githubChecks(D)});let t=F.current;if(!t){j.removeQueries({queryKey:[`github`,`comments`]});return}let n=r.githubComments(t.kind,t.number);y(t.kind,t.number,{refresh:!0}).then(e=>j.setQueryData(n,e)).catch(()=>{}),j.removeQueries({queryKey:[`github`,`comments`],predicate:e=>e.queryHash!==l(n)})},onError:e=>C(e.message,{tone:`danger`})}),L=b(),te=u(),[R,z]=(0,Q.useState)(()=>Ze().workflow),[ie,ae]=(0,Q.useState)(()=>Ze().skills),[se,ce]=(0,Q.useState)({runner:null,model:null,account:null});(0,Q.useEffect)(()=>{Qe({workflow:R,skills:[...ie]})},[R,ie]);let le=L.data?.workflows;(0,Q.useEffect)(()=>{le&&R!==null&&!le.some(e=>e.name===R)&&z(null)},[le,R]);let ue=te.data,de=_.data?.skillUsage,pe=(0,Q.useMemo)(()=>Te(ue??[],de),[ue,de]),[he,ge]=(0,Q.useState)(new Map),[B,_e]=(0,Q.useState)(``),[V,ve]=(0,Q.useState)([]),H=ot(B,at),be=(0,Q.useMemo)(()=>g?.available?e===`issues`?Ge(g.issues,v):x:[],[g,e,v,x]),U=Ke(H,(0,Q.useMemo)(()=>We(be,{query:H,labels:V}).length,[be,H,V])),W=h(e===`issues`?`issue`:`pr`,H,U);if(n&&_.data?.githubView===`prs`)return(0,$.jsx)(Ce,{to:`/github/prs`,replace:!0});if(!g)return s.isError?(0,$.jsx)(`div`,{"data-route":`github`,className:`flex min-h-full flex-col`,children:(0,$.jsx)(Ee,{icon:(0,$.jsx)(ye,{}),tone:`danger`,title:`Could not load GitHub`,subtitle:s.error.message})}):(0,$.jsx)(Pe,{});if(F.current=null,!g.available)return(0,$.jsx)(`div`,{"data-route":`github`,className:`flex min-h-full flex-col`,children:(0,$.jsx)(Ee,{icon:(0,$.jsx)(Ne,{}),tone:`neutral`,title:`GitHub is unavailable here`,subtitle:g.reason??`unknown reason`,actions:(0,$.jsx)(T,{variant:`outline`,"data-action":`gh-retry`,disabled:I.isPending,onClick:()=>I.mutate(),children:`Try again`}),children:(0,$.jsxs)(`p`,{className:`text-xs leading-relaxed text-soft-foreground`,children:[`The tab needs the `,(0,$.jsx)(`span`,{className:`font-mono`,children:`gh`}),` CLI, logged in (`,(0,$.jsx)(`span`,{className:`font-mono`,children:`gh auth login`}),`), and a repo with a GitHub remote. Everything else in cezar works without it.`]})})});let xe=be,G=We(xe,{query:B,labels:V}),Se=B.trim()!==``||V.length>0,q=U&&W.data?.available?W.data:null,De=new Set(G.map(e=>e.number)),J=q?Ge(We(q.items,{labels:V}).filter(e=>!De.has(e.number)),v):[],Oe=B.trim()!==``&&B.trim()!==H.trim()||U&&W.isPending,Y={...q?.labelColors??{},...g.labelColors??{}},ke=Ue(xe),X=a===void 0?null:Number.parseInt(a,10),Z=X===null?G[0]??J[0]??null:xe.find(e=>e.number===X)??J.find(e=>e.number===X)??null;F.current=Z?{kind:Z.kind,number:Z.number}:null;let Ae=e===`issues`?`/github`:`/github/prs`,je=U&&(W.data?.available===!1||W.isError),Fe=W.data?.available===!1?W.data.reason??`unknown reason`:W.error instanceof Error?W.error.message:`the search request failed`,Ie=Se?Oe?(0,$.jsxs)(`p`,{className:`flex items-center gap-1.5`,children:[(0,$.jsx)(re,{"aria-hidden":`true`,className:`size-3.5 motion-safe:animate-spin`}),`Searching GitHub for “`,B.trim(),`”…`]}):J.length>0?null:je?(0,$.jsxs)(`p`,{children:[`No open `,e===`issues`?`issues`:`pull requests`,` match your filter, and GitHub could not be searched: `,Fe,`.`]}):q?(0,$.jsxs)(`p`,{children:[`No `,e===`issues`?`issues`:`pull requests`,` match your filter — open, closed or merged.`]}):(0,$.jsxs)(`p`,{children:[`No open `,e===`issues`?`issues`:`pull requests`,` match your filter.`]}):(0,$.jsxs)(`p`,{children:[`No open `,e===`issues`?`issues`:`pull requests`,`.`]});return(0,$.jsx)(me,{name:`gh`,route:`github`,selected:a!==void 0,list:(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`header`,{"data-slot":`gh-header`,className:`sticky top-0 z-10 border-b border-border bg-background/95 px-4 pt-3 backdrop-blur`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2.5`,children:[(0,$.jsx)(`h1`,{className:`text-lg font-semibold`,children:`GitHub`}),g.repo?(0,$.jsx)(`span`,{"data-slot":`gh-repo`,className:`min-w-0 truncate font-mono text-[11px] text-soft-foreground`,children:g.repo}):null,m?(0,$.jsx)(we,{to:`/automations/new`,className:`ml-auto shrink-0 text-[10px] font-medium text-primary hover:underline`,children:`Set up automations`}):null,(0,$.jsxs)(`button`,{type:`button`,"data-slot":`gh-refresh`,title:`Refresh from GitHub`,disabled:I.isPending,onClick:()=>I.mutate(),className:k(`flex shrink-0 items-center gap-1 rounded-full border border-border px-1.5 py-px text-[10px] font-medium text-soft-foreground transition-colors hover:bg-muted hover:text-foreground disabled:opacity-55`,!m&&`ml-auto`),children:[(0,$.jsx)(oe,{"aria-hidden":`true`,className:k(`size-[9px]`,I.isPending&&`motion-safe:animate-spin`)}),g.syncedAt?`synced ${K(g.syncedAt)} ago`:`refresh`]})]}),(0,$.jsxs)(`div`,{"data-slot":`gh-tabs`,className:`mt-2.5 flex items-end gap-1`,children:[(0,$.jsxs)(Be,{to:`/github`,active:e===`issues`,onClick:()=>M(`issues`),children:[`Issues · `,ct(g.issues.length)]}),(0,$.jsxs)(Be,{to:`/github/prs`,active:e===`prs`,onClick:()=>M(`prs`),children:[`Pull requests · `,ct(g.prs.length)]})]}),(0,$.jsxs)(`div`,{className:`mt-2.5 flex flex-wrap items-center gap-2 pb-3`,children:[(0,$.jsxs)(`div`,{className:`relative min-w-[11rem] flex-1`,children:[(0,$.jsx)(fe,{"aria-hidden":`true`,className:`pointer-events-none absolute top-1/2 left-2 size-3.5 -translate-y-1/2 text-soft-foreground`}),(0,$.jsx)(`input`,{type:`search`,"data-slot":`gh-search`,"aria-label":`Search ${e}`,placeholder:`Search #id, title, author…`,value:B,onChange:e=>_e(e.target.value),className:`w-full rounded-md border border-input bg-card py-1 pr-2 pl-7 text-[13px] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50`})]}),(0,$.jsx)(ut,{options:ke,colors:Y,selected:V,onChange:ve}),(0,$.jsx)(Me,{slot:`gh-sort`,label:`Sort order`,value:v,options:[{value:`newest`,label:`Newest`},{value:`oldest`,label:`Oldest`}],onChange:P,className:`shrink-0`})]})]}),G.length===0?Ie&&(0,$.jsx)(`div`,{"data-slot":`gh-empty`,className:`px-4 py-4 text-sm text-soft-foreground`,children:Ie}):(0,$.jsx)(`ul`,{"data-slot":`gh-rows`,className:`flex flex-col gap-0.5 px-2 py-2`,children:G.map(t=>(0,$.jsx)(lt,{item:t,view:e,colors:Y,active:Z?.url===t.url,queued:he.has(t.url),checks:t.kind===`pr`?A?.[t.number]??t.checks:t.checks},t.url))}),J.length>0?(0,$.jsxs)(`div`,{"data-slot":`gh-search-hits`,children:[(0,$.jsxs)(`p`,{className:`px-4 pt-2 pb-1 text-[11px] font-medium tracking-wide text-soft-foreground uppercase`,children:[`Found on GitHub`,q?.truncated?` (first matches)`:``]}),(0,$.jsx)(`ul`,{className:`flex flex-col gap-0.5 px-2 pb-2`,children:J.map(t=>(0,$.jsx)(lt,{item:t,view:e,colors:Y,active:Z?.url===t.url,queued:he.has(t.url),checks:t.kind===`pr`?A?.[t.number]??t.checks:t.checks},t.url))})]}):null]}),detail:(0,$.jsx)($.Fragment,{children:Z?(0,$.jsx)(ft,{item:Z,listPath:Ae,colors:Y,changes:t,checks:Z.kind===`pr`?A?.[Z.number]??Z.checks:Z.checks,children:(0,$.jsx)(nt,{item:Z,workflows:L.data?.workflows??[],skills:pe,workflow:R,onWorkflowChange:z,selectedSkills:ie,onSkillsChange:ae,engine:se,onEngineChange:ce,queuedRunId:he.get(Z.url)??null,onQueued:(e,t)=>ge(n=>new Map(n).set(e,t))},Z.url)}):(0,$.jsx)(Ee,{icon:e===`issues`?(0,$.jsx)(N,{}):(0,$.jsx)(ne,{}),tone:`neutral`,heading:`h2`,title:X===null?`Nothing selected`:`Not found`,subtitle:X===null?`No open ${e===`issues`?`issues`:`pull requests`} to show.`:`#${X} is not among the open ${e===`issues`?`issues`:`pull requests`}. Search for ${X} above to look it up on GitHub, closed and merged included.`})})})}function ct(e){return`${e}${e>=rt?`+`:``}`}function lt({item:e,view:t,colors:n,active:a,queued:o,checks:s}){let c=e.kind===`issue`?N:ne,l=i(),u=()=>{l.prefetchQuery({queryKey:r.githubComments(e.kind,e.number),queryFn:({signal:t})=>y(e.kind,e.number,{},{signal:t}),staleTime:6e4})};return(0,$.jsx)(`li`,{children:(0,$.jsxs)(we,{to:`${t===`issues`?`/github/issues`:`/github/prs`}/${e.number}`,draggable:!0,onDragStart:t=>{try{t.dataTransfer.setData(`text/plain`,pe(e)),t.dataTransfer.effectAllowed=`copy`}catch{}},onMouseEnter:u,onFocus:u,"data-slot":`gh-row`,"data-number":e.number,"aria-current":a?`page`:void 0,title:`Drag into the composer to prefill a task`,className:k(`flex flex-col gap-1 rounded-md px-2.5 py-2 transition-colors hover:bg-muted`,a&&`bg-muted`),children:[(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsx)(c,{"aria-hidden":`true`,className:k(`size-3.5 shrink-0`,e.kind===`issue`?`text-success`:`text-violet`)}),(0,$.jsx)(`span`,{className:k(`min-w-0 truncate text-[13px] font-medium`,a&&`font-semibold`),children:e.title})]}),(0,$.jsxs)(`span`,{className:`flex items-center gap-2 pl-[22px] font-mono text-[10.5px] text-muted-foreground`,children:[(0,$.jsxs)(`span`,{children:[`#`,e.number]}),(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:e.author}),(0,$.jsx)(`span`,{children:K(e.createdAt)}),(0,$.jsx)(At,{count:e.comments}),s?(0,$.jsx)(Mt,{checks:s}):null,o?(0,$.jsx)(`span`,{"data-slot":`gh-queued-flag`,className:`font-sans font-medium text-violet`,children:`↗ run queued`}):null]}),e.labels.length>0?(0,$.jsx)(`span`,{className:`flex flex-wrap gap-1 pl-[22px]`,children:e.labels.map(e=>(0,$.jsx)(dt,{label:e,color:n[e]},e))}):null]})})}function ut({options:e,colors:t,selected:n,onChange:r}){let[i,o]=(0,Q.useState)(!1),s=e=>r(n.includes(e)?n.filter(t=>t!==e):[...n,e]);return(0,$.jsxs)(F,{open:i,onOpenChange:o,children:[(0,$.jsx)(M,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,"data-slot":`gh-label-filter`,disabled:e.length===0,className:k(`flex shrink-0 items-center gap-1 rounded-md border border-input bg-card px-2 py-1 text-[12px] font-medium text-muted-foreground transition-colors hover:text-foreground disabled:opacity-50`,n.length>0&&`border-primary/60 text-foreground`),children:[(0,$.jsx)(ge,{"aria-hidden":`true`,className:`size-3.5`}),n.length>0?`Labels · ${n.length}`:`Labels`]})}),(0,$.jsx)(P,{align:`end`,sideOffset:6,className:`w-60 p-0`,children:(0,$.jsxs)(de,{children:[(0,$.jsx)(se,{placeholder:`Filter labels…`}),(0,$.jsxs)(ue,{className:`max-h-[min(16rem,calc(var(--radix-popover-content-available-height)-3rem))]`,children:[(0,$.jsx)(le,{children:`No labels.`}),n.length>0?(0,$.jsxs)(ce,{value:`__clear__`,onSelect:()=>r([]),className:`text-soft-foreground`,children:[`Clear `,n.length,` filter`,n.length>1?`s`:``]}):null,e.map(e=>{let r=n.includes(e);return(0,$.jsxs)(ce,{value:e,onSelect:()=>s(e),children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`size-2.5 shrink-0 rounded-full border`,style:qe(t[e])}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e}),r?(0,$.jsx)(a,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-primary`}):null]},e)})]})]})})]})}function dt({label:e,color:t}){return(0,$.jsx)(`span`,{"data-slot":`gh-label`,"data-label":e,style:qe(t),className:`rounded-full border px-1.5 py-px text-[10px] font-medium`,children:e})}function ft({item:e,listPath:t,colors:n,children:r,changes:i,checks:a}){let o=e.kind===`pr`?`pull request`:`issue`,s=e.kind===`pr`&&!!(e.additions||e.deletions);return(0,$.jsxs)(`article`,{"data-slot":`gh-detail-inner`,className:`min-w-0 px-4 py-4 md:px-7 md:py-5`,children:[(0,$.jsxs)(we,{to:t,"data-slot":`gh-back`,className:`mb-3 inline-flex items-center gap-1.5 text-xs font-medium text-muted-foreground hover:text-foreground md:hidden`,children:[(0,$.jsx)(A,{"aria-hidden":`true`,className:`size-3.5`}),`Back to the list`]}),(0,$.jsxs)(`p`,{"data-slot":`gh-meta`,className:`flex flex-wrap items-center gap-x-1.5 font-mono text-[10.5px] text-soft-foreground`,children:[(0,$.jsxs)(`span`,{children:[`#`,e.number]}),`·`,(0,$.jsx)(`span`,{children:o}),`·`,(0,$.jsxs)(`span`,{children:[`opened by `,e.author]}),`·`,(0,$.jsxs)(`span`,{children:[K(e.createdAt),` ago`]}),e.comments?(0,$.jsxs)($.Fragment,{children:[`·`,(0,$.jsx)(At,{count:e.comments})]}):null,s?(0,$.jsxs)($.Fragment,{children:[`·`,(0,$.jsxs)(`span`,{"data-slot":`gh-diffstat`,children:[(0,$.jsxs)(`span`,{className:`text-success`,children:[`+`,e.additions??0]}),` `,(0,$.jsxs)(`span`,{className:`text-danger`,children:[`−`,e.deletions??0]})]})]}):null,`·`,D(e.url)?(0,$.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"data-slot":`gh-open-link`,className:`inline-flex items-center gap-0.5 text-muted-foreground hover:text-foreground hover:underline`,children:[`open on GitHub`,(0,$.jsx)(z,{"aria-hidden":`true`,className:`size-2.5`})]}):(0,$.jsx)(`span`,{"data-slot":`gh-open-link`,className:`text-muted-foreground`,children:`open on GitHub`})]}),(0,$.jsx)(`h2`,{className:`mt-2 text-xl leading-snug font-semibold`,children:e.title}),e.kind===`pr`?(0,$.jsxs)(`nav`,{"aria-label":`Pull request detail`,className:`mt-4 flex border-b border-border`,children:[(0,$.jsx)(Be,{to:`/github/prs/${e.number}`,active:!i,children:`Conversation`}),(0,$.jsx)(Be,{to:`/github/prs/${e.number}/changes`,active:i,children:`Changes`})]}):null,e.labels.length>0||a?(0,$.jsxs)(`div`,{className:`mt-3 flex flex-wrap items-center gap-1.5`,children:[e.labels.map(e=>(0,$.jsx)(dt,{label:e,color:n[e]},e)),a?(0,$.jsx)(jt,{checks:a,url:e.url}):null]}):null,i&&e.kind===`pr`?(0,$.jsx)(gt,{item:e}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{"data-slot":`gh-body`,className:`mt-5 text-sm`,children:e.body?(0,$.jsx)(je,{children:e.body}):(0,$.jsx)(`p`,{className:`text-soft-foreground`,children:`(no description)`})}),(0,$.jsx)(_t,{item:e,colors:n}),e.kind===`pr`?(0,$.jsx)(ht,{number:e.number}):null,r]})]})}var pt={squash:`Squash and merge`,merge:`Create a merge commit`,rebase:`Rebase and merge`};function mt({state:e}){let t=`size-4 shrink-0`;return e===`passing`?(0,$.jsx)(L,{"aria-hidden":`true`,"data-slot":`gh-merge-status-passing`,className:k(t,`text-success`)}):e===`failing`?(0,$.jsx)(te,{"aria-hidden":`true`,"data-slot":`gh-merge-status-failing`,className:k(t,`text-danger`)}):e===`pending`?(0,$.jsx)(re,{"aria-hidden":`true`,"data-slot":`gh-merge-status-pending`,className:k(t,`animate-spin text-warning`)}):(0,$.jsx)(R,{"aria-hidden":`true`,"data-slot":`gh-merge-status-unknown`,className:k(t,`text-soft-foreground`)})}function ht({number:e}){let t=i(),n=m({queryKey:r.githubMergeState(e),queryFn:({signal:t})=>_(e,{},{signal:t}),retry:!1}),o=n.data?.available?n.data.mergeState:null,[s,c]=(0,Q.useState)(null),[l,u]=(0,Q.useState)(!1),[f,p]=(0,Q.useState)(!1),h=d({mutationFn:()=>_(e,{refresh:!0}),onSuccess:n=>t.setQueryData(r.githubMergeState(e),n),onError:e=>C(e instanceof Error?e.message:String(e),{tone:`danger`})}),g=s&&o?.methods.includes(s)?s:o?.defaultMethod??o?.methods[0]??null,v=d({mutationFn:()=>{if(!o||!g)throw Error(`No merge method is available.`);return x(e,{method:g,expectedHeadSha:o.headSha,...f&&o.canOverride?{overrideRules:!0}:{}})},onSuccess:()=>{u(!1),C(`Pull request #${e} merged`),t.invalidateQueries({queryKey:r.githubMergeState(e)}),t.invalidateQueries({queryKey:r.github({limit:rt})}),t.invalidateQueries({queryKey:r.githubComments(`pr`,e)})},onError:n=>{C(n instanceof Error?n.message:String(n),{tone:`danger`}),t.invalidateQueries({queryKey:r.githubMergeState(e)})}});if(n.isPending)return(0,$.jsx)(He,{"data-slot":`gh-merge-loading`,className:`mt-6 h-32 w-full`});if(!o)return(0,$.jsxs)(`section`,{"data-slot":`gh-merge-unavailable`,className:`mt-6 rounded-lg border border-border bg-card p-4 text-sm`,children:[(0,$.jsx)(`p`,{className:`font-medium`,children:`Merge status unavailable`}),(0,$.jsx)(`p`,{className:`mt-1 text-xs text-soft-foreground`,children:n.data?.available===!1?n.data.reason:`GitHub could not load merge requirements.`})]});let y=o.state===`merged`?`Merged`:o.state===`closed`?`Closed`:o.isDraft?`Draft`:o.mergeable===`conflicting`?`Conflicts must be resolved`:o.canMerge?`Ready to merge`:`Merge blocked`,b=o.reviewDecision===`approved`?`passing`:o.reviewDecision===`unknown`?`unknown`:`failing`,S=o.mergeable===`mergeable`?`passing`:o.mergeable===`conflicting`?`failing`:`unknown`,w=!!(g&&(o.canMerge||o.canOverride&&f));return(0,$.jsxs)(`section`,{"data-slot":`gh-merge-box`,"aria-live":`polite`,className:`mt-6 rounded-lg border border-border bg-card p-4`,children:[(0,$.jsxs)(`div`,{className:`flex items-start gap-3`,children:[o.canMerge?(0,$.jsx)(a,{"aria-hidden":`true`,className:`mt-0.5 size-5 shrink-0 text-success`}):(0,$.jsx)(ye,{"aria-hidden":`true`,className:`mt-0.5 size-5 shrink-0 text-warning`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,$.jsx)(`h3`,{className:`font-semibold`,children:y}),(0,$.jsxs)(T,{type:`button`,variant:`ghost`,size:`sm`,disabled:h.isPending,onClick:()=>h.mutate(),children:[(0,$.jsx)(oe,{"aria-hidden":`true`,className:k(`size-3.5`,h.isPending&&`animate-spin`)}),`Refresh`]})]}),(0,$.jsxs)(`p`,{className:`mt-1 font-mono text-[11px] text-soft-foreground`,children:[o.headRef,` (`,o.headSha.slice(0,7),`) → `,o.baseRef]}),(0,$.jsxs)(`ul`,{className:`mt-3 space-y-2 text-xs`,children:[(0,$.jsxs)(`li`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(mt,{state:b}),(0,$.jsxs)(`span`,{children:[`Reviews: `,o.reviewDecision.replaceAll(`-`,` `)]})]}),(0,$.jsxs)(`li`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(mt,{state:S}),(0,$.jsxs)(`span`,{children:[`Conflicts: `,o.mergeable===`conflicting`?`present`:o.mergeable===`mergeable`?`none`:`unknown`]})]}),o.checks.length===0&&o.checksTier!==`none`?(0,$.jsx)(`li`,{children:`No checks configured`}):o.checks.map(e=>(0,$.jsxs)(`li`,{className:`flex items-center justify-between gap-3`,children:[(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsx)(mt,{state:e.state}),(0,$.jsxs)(`span`,{children:[e.name,` · `,e.state,e.required===!0?` · required`:e.required===null?` · requiredness unknown`:``]})]}),e.url&&D(e.url)?(0,$.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`text-muted-foreground underline`,children:`details`}):null]},e.name)),o.checksTier===`aggregate`||o.checksTier===`none`?(0,$.jsxs)(`li`,{"data-slot":`gh-merge-checks-degraded`,className:`flex items-start gap-2`,children:[(0,$.jsx)(mt,{state:`unknown`}),(0,$.jsxs)(`span`,{className:`min-w-0`,children:[o.checksTier===`aggregate`?`Only the rolled-up check state is readable here — per-check detail is not.`:`This token cannot read the checks on this pull request.`,o.checksReason?(0,$.jsx)(`span`,{className:`mt-0.5 block break-words text-soft-foreground`,children:o.checksReason}):null]})]}):null,o.blockers.filter(e=>!(e.code===`checks-unknown`&&o.checksTier===`none`)).map(e=>(0,$.jsx)(`li`,{className:`text-soft-foreground`,children:e.message},e.code))]}),o.canOverride?(0,$.jsxs)(`label`,{className:`mt-4 flex cursor-pointer items-start gap-2 rounded-md border border-warning/40 bg-warning/5 p-3 text-xs`,children:[(0,$.jsx)(`input`,{type:`checkbox`,checked:f,onChange:e=>p(e.target.checked),className:`mt-0.5 size-4 accent-primary`}),(0,$.jsxs)(`span`,{children:[(0,$.jsx)(`span`,{className:`block font-medium`,children:`Merge without waiting for requirements`}),(0,$.jsx)(`span`,{className:`mt-0.5 block text-soft-foreground`,children:`GitHub will allow this only if your permissions can bypass the repository rules.`})]})]}):null,o.state===`open`&&o.methods.length>0?(0,$.jsxs)(`div`,{className:`mt-4 flex flex-col gap-2 sm:flex-row`,children:[(0,$.jsx)(`select`,{"aria-label":`Merge method`,value:g??``,onChange:e=>c(e.target.value),className:`h-9 min-w-0 flex-1 rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50`,children:o.methods.map(e=>(0,$.jsx)(`option`,{value:e,children:pt[e]},e))}),(0,$.jsx)(T,{disabled:!w,onClick:()=>u(!0),children:g?pt[g]:`Merge`})]}):null]})]}),(0,$.jsx)(Se,{open:l,onOpenChange:u,children:(0,$.jsxs)(xe,{"data-slot":`gh-merge-confirm`,showCloseButton:!1,children:[(0,$.jsxs)(W,{children:[(0,$.jsxs)(G,{children:[g?pt[g]:`Merge`,` pull request #`,e,`?`]}),(0,$.jsxs)(U,{children:[`This will merge “`,o.title,`” into `,o.baseRef,`. GitHub will re-check the exact reviewed head before changing the repository.`,f&&o.canOverride?` You are asking GitHub to bypass unmet repository requirements; GitHub may refuse if your permissions do not allow it.`:``]})]}),v.error?(0,$.jsx)(`p`,{className:`text-sm text-danger`,children:v.error.message}):null,(0,$.jsxs)(be,{children:[(0,$.jsx)(T,{variant:`outline`,disabled:v.isPending,onClick:()=>u(!1),children:`Cancel`}),(0,$.jsx)(T,{disabled:v.isPending,onClick:()=>v.mutate(),children:v.isPending?`Merging…`:g?pt[g]:`Merge`})]})]})})]})}function gt({item:e}){let t=i(),n=g(e.number),[r,a]=(0,Q.useState)(``),[o,s]=(0,Q.useState)(null),c=n.data,l=c?.available?c.files.filter(e=>e.path.toLowerCase().includes(r.toLowerCase())):[],u=l.findIndex(e=>e.path===o);(0,Q.useEffect)(()=>{l.length>0&&!l.some(e=>e.path===o)&&s(l[0].path)},[c?.available?c.headSha:``,r]);let d=async()=>{let n=c?.available?c.headSha:null,r=await v(e.number,{refresh:!0});t.setQueryData([`github`,`pr-changes`,e.number],r),r.available&&n&&n!==r.headSha&&(s(r.files[0]?.path??null),C(`The reviewed revision changed.`))};if(n.isPending)return(0,$.jsx)(`p`,{"aria-live":`polite`,className:`mt-6 text-sm text-muted-foreground`,children:`Loading changed files…`});if(n.isError||!c)return(0,$.jsx)(`p`,{className:`mt-6 text-sm text-danger`,children:`Changed files could not be loaded.`});if(!c.available)return(0,$.jsx)(`p`,{className:`mt-6 text-sm text-muted-foreground`,children:c.reason});let f=l.map(e=>({path:e.path,...e.previousPath?{oldPath:e.previousPath}:{},status:e.status===`removed`?`deleted`:e.status===`changed`?`modified`:e.status,adds:e.additions,dels:e.deletions,binary:e.patchUnavailableReason===`binary`,patch:e.patch??``})),p=D(e.url)?`${e.url}/files`:null,m=l.find(e=>e.path===o);return(0,$.jsxs)(`section`,{"data-slot":`gh-pr-changes`,className:`mt-5 min-w-0`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-xs`,children:[(0,$.jsxs)(`strong`,{children:[c.files.length,` changed files`]}),(0,$.jsxs)(`span`,{className:`text-success`,children:[`+`,c.additions]}),(0,$.jsxs)(`span`,{className:`text-danger`,children:[`−`,c.deletions]}),(0,$.jsxs)(`span`,{className:`font-mono text-muted-foreground`,title:c.headSha,children:[`head `,c.headSha.slice(0,8)]}),(0,$.jsx)(T,{type:`button`,variant:`outline`,size:`sm`,className:`ml-auto min-h-11`,onClick:()=>void d(),children:`Refresh`})]}),c.truncated?(0,$.jsxs)(`p`,{role:`status`,className:`mt-3 rounded-md border border-warning/40 bg-warning/10 p-3 text-xs`,children:[c.reason??`This response is incomplete.`,` `,p?(0,$.jsx)(`a`,{href:p,target:`_blank`,rel:`noopener noreferrer`,className:`underline`,children:`Open all files on GitHub`}):null]}):null,(0,$.jsxs)(`div`,{className:`mt-4 grid min-w-0 gap-4 lg:grid-cols-[240px_minmax(0,1fr)]`,children:[(0,$.jsxs)(`aside`,{className:`min-w-0`,children:[(0,$.jsx)(`input`,{"aria-label":`Filter changed files`,value:r,onChange:e=>a(e.target.value),placeholder:`Filter files…`,className:`min-h-11 w-full rounded-md border border-input bg-background px-3 text-sm`}),(0,$.jsx)(`select`,{"aria-label":`Select changed file`,value:o??``,onChange:e=>s(e.target.value),className:`mt-2 min-h-11 w-full rounded-md border border-input bg-background px-2 text-sm outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 lg:hidden`,children:l.map(e=>(0,$.jsx)(`option`,{children:e.path},e.path))}),(0,$.jsx)(`ul`,{className:`mt-2 hidden max-h-[60vh] overflow-auto lg:block`,children:l.map(e=>(0,$.jsx)(`li`,{children:(0,$.jsxs)(`button`,{type:`button`,onClick:()=>s(e.path),className:k(`min-h-11 w-full truncate rounded px-2 text-left text-xs`,o===e.path&&`bg-muted font-medium`),title:e.path,children:[e.status,` · `,e.path,` `,(0,$.jsxs)(`span`,{className:`text-success`,children:[`+`,e.additions]}),` `,(0,$.jsxs)(`span`,{className:`text-danger`,children:[`−`,e.deletions]})]})},e.path))})]}),(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsxs)(`div`,{className:`mb-2 flex justify-end gap-1`,children:[(0,$.jsx)(T,{"aria-label":`Previous file`,variant:`outline`,size:`icon`,className:`min-h-11 min-w-11`,disabled:u<=0,onClick:()=>s(l[u-1]?.path??null),children:(0,$.jsx)(j,{})}),(0,$.jsx)(T,{"aria-label":`Next file`,variant:`outline`,size:`icon`,className:`min-h-11 min-w-11`,disabled:u<0||u>=l.length-1,onClick:()=>s(l[u+1]?.path??null),children:(0,$.jsx)(I,{})})]}),l.length===0?(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No changed files match this filter.`}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ze,{files:f.filter(e=>e.path===o),wrap:!0,className:`min-w-0`}),m&&!m.patch?(0,$.jsxs)(`p`,{className:`rounded-b border border-border p-3 text-xs text-muted-foreground`,children:[`Patch unavailable: `,m.patchUnavailableReason??`not-provided`,`.`]}):null]})]})]})]})}function _t({item:e,colors:t}){let n=s(e.kind,e.number),r=n.data,i=(0,Q.useMemo)(()=>{let e=[...(r?.comments??[]).map(e=>({row:`comment`,comment:e})),...(r?.events??[]).map(e=>({row:`event`,event:e}))],t=e=>{let t=Date.parse(vt(e));return Number.isNaN(t)?-1/0:t};return e.sort((e,n)=>t(e)-t(n))},[r?.comments,r?.events]);return n.isPending?(0,$.jsxs)(`section`,{"data-slot":`gh-thread-loading`,className:`mt-6 border-t border-border pt-5`,children:[(0,$.jsx)(He,{className:`mb-3 h-3 w-24`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsx)(He,{className:`h-14 w-full`}),(0,$.jsx)(He,{className:`h-14 w-full`})]})]}):!r||!r.available?(0,$.jsxs)(`section`,{"data-slot":`gh-thread-error`,className:`mt-6 border-t border-border pt-5 text-xs text-soft-foreground`,children:[(0,$.jsxs)(`span`,{children:[`Couldn’t load comments — `,r?.reason??(n.error instanceof Error?n.error.message:`could not load comments`),`. `]}),(0,$.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-0.5 text-muted-foreground hover:text-foreground hover:underline`,children:[`open on GitHub`,(0,$.jsx)(z,{"aria-hidden":`true`,className:`size-2.5`})]})]}):i.length===0?null:(0,$.jsxs)(`section`,{"data-slot":`gh-thread`,className:`mt-6 border-t border-border pt-5`,children:[(0,$.jsxs)(`h3`,{"data-slot":`gh-thread-header`,className:`mb-4 text-[11px] font-semibold tracking-wide text-soft-foreground uppercase`,children:[`Activity · `,r.comments.length,` comment`,r.comments.length===1?``:`s`]}),(0,$.jsx)(`ul`,{className:`flex flex-col gap-5`,children:yt(i).map(e=>e.group===`commits`?(0,$.jsx)(bt,{commits:e.commits,colors:t},e.commits[0].id):e.entry.row===`comment`?(0,$.jsx)(Et,{comment:e.entry.comment},`${e.entry.comment.kind}-${e.entry.comment.id}`):(0,$.jsx)(St,{event:e.entry.event,colors:t},e.entry.event.id))}),r.truncated?(0,$.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"data-slot":`gh-thread-truncated`,className:`mt-4 inline-flex items-center gap-0.5 text-xs text-soft-foreground hover:text-foreground hover:underline`,children:[`thread truncated — open on GitHub`,(0,$.jsx)(z,{"aria-hidden":`true`,className:`size-2.5`})]}):null]})}var vt=e=>e.row===`comment`?e.comment.createdAt:e.event.createdAt;function yt(e){let t=[],n=[],r=()=>{n.length!==0&&(n.length===1?t.push({group:`single`,entry:{row:`event`,event:n[0]}}):t.push({group:`commits`,commits:n}),n=[])};for(let i of e){if(i.row===`event`&&i.event.kind===`committed`&&i.row===`event`){let e=n[n.length-1];e&&e.actor!==i.event.actor&&r(),n.push(i.event);continue}r(),t.push({group:`single`,entry:i})}return r(),t}function bt({commits:e,colors:t}){let[n,r]=(0,Q.useState)(!1),i=e[0]?.actor??`?`;return n?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`li`,{"data-slot":`gh-commit-group`,"data-open":`true`,className:`min-w-0`,children:(0,$.jsxs)(`button`,{type:`button`,"aria-expanded":!0,onClick:()=>r(!1),className:`flex items-center gap-1.5 font-mono text-[11px] text-soft-foreground hover:text-foreground`,children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,children:xt.committed}),(0,$.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:i}),(0,$.jsxs)(`span`,{children:[`added `,e.length,` commits`]})]})}),e.map(e=>(0,$.jsx)(St,{event:e,colors:t},e.id))]}):(0,$.jsx)(`li`,{"data-slot":`gh-commit-group`,"data-open":`false`,className:`min-w-0`,children:(0,$.jsxs)(`button`,{type:`button`,"aria-expanded":!1,onClick:()=>r(!0),className:`flex items-center gap-1.5 font-mono text-[11px] text-soft-foreground hover:text-foreground`,children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,children:xt.committed}),(0,$.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:i}),(0,$.jsxs)(`span`,{children:[`added `,e.length,` commits`]}),(0,$.jsx)(`span`,{className:`shrink-0`,children:K(e[e.length-1].createdAt)})]})})}var xt={committed:`⚙`,labeled:`◆`,unlabeled:`◇`,assigned:`◍`,unassigned:`◌`,merged:`⑃`,closed:`⊘`,reopened:`⊙`,head_ref_force_pushed:`↻`,"cross-referenced":`↗`,renamed:`✎`};function St({event:e,colors:t}){return(0,$.jsxs)(`li`,{"data-slot":`gh-event-row`,"data-kind":e.kind,className:k(`flex min-w-0 items-center gap-1.5 font-mono text-[11px] text-soft-foreground`,e.kind===`merged`&&`text-accent-foreground`),children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`shrink-0`,children:xt[e.kind]}),(0,$.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:e.actor}),(0,$.jsx)(Ct,{event:e,colors:t}),(0,$.jsx)(`span`,{className:`shrink-0`,children:K(e.createdAt)}),e.url?(0,$.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`open ${e.kind} on GitHub`,className:`ml-auto shrink-0 text-muted-foreground hover:text-foreground`,children:(0,$.jsx)(z,{"aria-hidden":`true`,className:`size-2.5`})}):null]})}function Ct({event:e,colors:t}){switch(e.kind){case`committed`:return(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,$.jsx)(`span`,{className:`shrink-0`,children:`committed`}),e.sha?(0,$.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.sha.slice(0,7)}):null,e.message?(0,$.jsx)(`span`,{className:`truncate font-sans text-foreground`,children:e.message}):null,(0,$.jsx)(wt,{checks:e.checks})]});case`labeled`:case`unlabeled`:return(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,$.jsx)(`span`,{className:`shrink-0`,children:e.kind===`labeled`?`added the`:`removed the`}),e.label?(0,$.jsx)(`span`,{"data-slot":`gh-event-label`,style:qe(e.label.color??t[e.label.name]),className:`max-w-[12rem] truncate rounded-full border px-1.5 py-px font-sans text-[10px]`,children:e.label.name}):null,(0,$.jsx)(`span`,{className:`shrink-0`,children:`label`})]});case`assigned`:case`unassigned`:return(0,$.jsxs)(`span`,{className:`truncate`,children:[e.kind===`assigned`?`assigned`:`unassigned`,` `,e.subject??`someone`]});case`merged`:return(0,$.jsx)(`span`,{children:`merged this`});case`closed`:return(0,$.jsx)(`span`,{children:`closed this`});case`reopened`:return(0,$.jsx)(`span`,{children:`reopened this`});case`head_ref_force_pushed`:return(0,$.jsx)(`span`,{children:`force-pushed`});case`renamed`:return(0,$.jsxs)(`span`,{className:`truncate`,children:[`renamed this to `,e.subject??`—`]});case`cross-referenced`:return(0,$.jsxs)(`span`,{className:`truncate`,children:[`referenced this in `,e.refNumber?`#${e.refNumber}`:`another thread`,e.refTitle?` ${e.refTitle}`:``]})}}function wt({checks:e}){return e?(0,$.jsx)(`span`,{"data-slot":`gh-commit-checks`,"data-checks":e,"aria-label":`checks ${e}`,className:k(`shrink-0`,kt[e]),children:Ot[e]}):null}var Tt={approved:{label:`approved`,tone:`border-success/40 text-success`},changes_requested:{label:`changes requested`,tone:`border-danger/40 text-danger`},commented:{label:`commented`,tone:`border-border text-muted-foreground`},dismissed:{label:`dismissed`,tone:`border-border text-muted-foreground`}};function Et({comment:e}){let t=e.reviewState?Tt[e.reviewState]:null;return(0,$.jsxs)(`li`,{"data-slot":`gh-thread-entry`,"data-kind":e.kind,className:`min-w-0`,children:[(0,$.jsxs)(`div`,{className:`mb-1.5 flex items-center gap-1.5 font-mono text-[11px] text-soft-foreground`,children:[(0,$.jsx)(Dt,{url:e.avatarUrl,login:e.author}),(0,$.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:e.author}),(0,$.jsx)(`span`,{children:K(e.createdAt)}),t?(0,$.jsx)(`span`,{"data-slot":`gh-review-chip`,"data-review-state":e.reviewState,className:k(`rounded-full border px-1.5 py-px font-sans text-[10px] font-medium`,t.tone),children:t.label}):null,(0,$.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`open comment on GitHub`,className:`ml-auto shrink-0 text-muted-foreground hover:text-foreground`,children:(0,$.jsx)(z,{"aria-hidden":`true`,className:`size-2.5`})})]}),(0,$.jsx)(`div`,{"data-slot":`gh-thread-body`,className:`text-sm`,children:e.body?(0,$.jsx)(je,{children:e.body}):(0,$.jsx)(`p`,{className:`text-soft-foreground`,children:`(no body)`})})]})}function Dt({url:e,login:t}){let[n,r]=(0,Q.useState)(!1);return e&&!n?(0,$.jsx)(`img`,{src:e,alt:``,width:16,height:16,loading:`lazy`,onError:()=>r(!0),"data-slot":`gh-avatar`,className:`size-4 shrink-0 rounded-full`}):(0,$.jsx)(`span`,{"data-slot":`gh-avatar-fallback`,"aria-hidden":`true`,className:`flex size-4 shrink-0 items-center justify-center rounded-full bg-muted text-[8px] font-semibold text-muted-foreground uppercase`,children:t.slice(0,1)||`?`})}var Ot={passing:`✓`,failing:`✗`,pending:`○`},kt={passing:`text-success`,failing:`text-danger`,pending:`text-muted-foreground`};function At({count:e}){return e?(0,$.jsxs)(`span`,{"data-slot":`gh-comment-count`,"data-count":e,"aria-label":`${e} comment${e===1?``:`s`}`,className:`inline-flex shrink-0 items-center gap-0.5`,children:[(0,$.jsx)(Ve,{"aria-hidden":`true`,className:`size-3`}),e]}):null}function jt({checks:e,url:t}){let n=k(`text-[11px] font-medium`,kt[e],t&&`hover:underline`),r=`${Ot[e]} checks ${e}`;return t?(0,$.jsx)(`a`,{href:`${t}/checks`,target:`_blank`,rel:`noopener noreferrer`,"data-slot":`gh-checks`,"data-checks":e,className:n,children:r}):(0,$.jsx)(`span`,{"data-slot":`gh-checks`,"data-checks":e,className:n,children:r})}function Mt({checks:e}){return(0,$.jsx)(`span`,{"data-slot":`gh-row-checks`,"data-checks":e,title:`checks ${e}`,"aria-label":`checks ${e}`,className:k(`shrink-0 font-sans text-[11px] font-semibold`,kt[e]),children:Ot[e]})}export{st as GithubRoute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./react-runtime-CCIEwYL0.js";import{t}from"./zoomable-image-
|
|
1
|
+
import{t as e}from"./react-runtime-CCIEwYL0.js";import{t}from"./zoomable-image-CnyQ9wyw.js";var n=e();function r(e){return e.image===!0&&(e.binary===!0||e.patch===``)}function i({file:e,imageSrc:r,onOpenInApp:i}){return e.status===`deleted`?(0,n.jsx)(a,{children:`Image deleted — only the new side can be previewed.`}):r?(0,n.jsxs)(`div`,{"data-slot":`diff-image-preview`,className:`flex flex-col items-center gap-2 p-4`,children:[(0,n.jsx)(t,{src:r(e.path),alt:e.path,className:`max-h-[60vh] max-w-full rounded-sm`}),i?(0,n.jsx)(`button`,{type:`button`,"data-slot":`diff-image-open`,onClick:()=>i(e.path),className:`text-[11px] font-medium text-soft-foreground hover:text-foreground hover:underline`,children:`Open in default app`}):null]}):(0,n.jsx)(a,{children:`Binary file — no text diff.`})}function a({children:e}){return(0,n.jsx)(`p`,{className:`px-4 py-2.5 text-xs text-soft-foreground`,children:e})}export{r as n,i as t};
|