@ai-development-environment/server 0.0.28 → 0.0.30
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/package.json +1 -1
- package/prisma-runtime/prisma/migrations/20260718220000_add_build_freshness/migration.sql +1 -0
- package/prisma-runtime/prisma/migrations/20260719010000_add_build_reports/migration.sql +29 -0
- package/prisma-runtime/prisma/schema.prisma +24 -0
- package/standalone/.next/BUILD_ID +1 -1
- package/standalone/.next/app-path-routes-manifest.json +2 -0
- package/standalone/.next/build-manifest.json +6 -6
- package/standalone/.next/prerender-manifest.json +3 -3
- package/standalone/.next/routes-manifest.json +17 -0
- package/standalone/.next/server/app/[locale]/actions/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/actions/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/actions/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/agents/[id]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/agents/[id]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/agents/[id]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/agents/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/agents/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/agents/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/build-data/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/build-data/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/build-data/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/build-manifest.json +16 -0
- package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/next-font-manifest.json +11 -0
- package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/react-loadable-manifest.json +1 -0
- package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js +16 -0
- package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js.map +5 -0
- package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js.nft.json +1 -0
- package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page_client-reference-manifest.js +3 -0
- package/standalone/.next/server/app/[locale]/builds/[buildId]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/builds/[buildId]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/builds/[buildId]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/builds/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/builds/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/builds/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/codebases/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/codebases/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/codebases/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/comments/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/comments/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/comments/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/jira/cache/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/jira/cache/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/jira/cache/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/jira/tickets/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/jira/tickets/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/jira/tickets/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/jobs/[jobId]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/jobs/[jobId]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/jobs/[jobId]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/pull-requests/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/pull-requests/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/pull-requests/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/settings/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/settings/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/settings/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/skills/[skillId]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/skills/[skillId]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/skills/[skillId]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/skills/groups/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/skills/groups/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/skills/groups/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/skills/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/skills/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/skills/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/tools/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/tools/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/tools/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/usage/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/usage/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/usage/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/[locale]/worktrees/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/[locale]/worktrees/page.js.nft.json +1 -1
- package/standalone/.next/server/app/[locale]/worktrees/page_client-reference-manifest.js +1 -1
- package/standalone/.next/server/app/_global-error/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/_global-error.html +1 -1
- package/standalone/.next/server/app/_global-error.rsc +1 -1
- package/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found/page/build-manifest.json +3 -3
- package/standalone/.next/server/app/_not-found.html +1 -1
- package/standalone/.next/server/app/_not-found.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/standalone/.next/server/app/api/build-artifact-uploads/[uploadId]/route.js +2 -2
- package/standalone/.next/server/app/api/build-artifact-uploads/[uploadId]/route.js.nft.json +1 -1
- package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/route.js +2 -2
- package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/route.js.nft.json +1 -1
- package/standalone/.next/server/app/api/codebases/by-path/route.js +2 -2
- package/standalone/.next/server/app/api/codebases/by-path/route.js.nft.json +1 -1
- package/standalone/.next/server/app/api/codebases/route.js +2 -2
- package/standalone/.next/server/app/api/codebases/route.js.nft.json +1 -1
- package/standalone/.next/server/app/api/graphql/route.js +2 -2
- package/standalone/.next/server/app/api/graphql/route.js.nft.json +1 -1
- package/standalone/.next/server/app/api/mcp/route.js +2 -2
- package/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/standalone/.next/server/app/api/tools/call/route.js +2 -2
- package/standalone/.next/server/app/api/tools/call/route.js.nft.json +1 -1
- package/standalone/.next/server/app/api/tools/catalog/route.js +2 -2
- package/standalone/.next/server/app/api/tools/catalog/route.js.nft.json +1 -1
- package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/build-manifest.json +9 -0
- package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js +10 -0
- package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js.map +5 -0
- package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route_client-reference-manifest.js +3 -0
- package/standalone/.next/server/app-paths-manifest.json +2 -0
- package/standalone/.next/server/chunks/1oeh_server_app_api_worktrees_[worktreeId]_diff-image_route_actions_0nie5n3.js +3 -0
- package/standalone/.next/server/chunks/{[root-of-the-server]__1iv83x0._.js → [root-of-the-server]__0-ypkf7._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__08w_8a-._.js → [root-of-the-server]__00ku6-v._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__0yfvw4a._.js → [root-of-the-server]__0138gz-._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__0r5s0h6._.js → [root-of-the-server]__02vqwey._.js} +2 -2
- package/standalone/.next/server/chunks/{[root-of-the-server]__098f8w4._.js → [root-of-the-server]__056cnsc._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__1l6ed2g._.js → [root-of-the-server]__08mfybr._.js} +2 -2
- package/standalone/.next/server/chunks/{[root-of-the-server]__0cs2bfc._.js → [root-of-the-server]__08u874i._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__01h2pl1._.js → [root-of-the-server]__09skp6r._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__1mgcft0._.js → [root-of-the-server]__09v6swg._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__0h0mvv8._.js → [root-of-the-server]__0aiyd05._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__14-aq4c._.js → [root-of-the-server]__0cyubup._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__0_l5rqe._.js → [root-of-the-server]__0da1wsf._.js} +1 -1
- package/standalone/.next/server/chunks/[root-of-the-server]__0e1fqyr._.js +3 -0
- package/standalone/.next/server/chunks/{[root-of-the-server]__1frrx8s._.js → [root-of-the-server]__0f3ptor._.js} +2 -2
- package/standalone/.next/server/chunks/{[root-of-the-server]__0k01mi-._.js → [root-of-the-server]__0fih0li._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__02qjyhj._.js → [root-of-the-server]__0g0tnct._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__1ehdq4c._.js → [root-of-the-server]__0gbor-2._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__09lyzw2._.js → [root-of-the-server]__0mj6qcr._.js} +2 -2
- package/standalone/.next/server/chunks/{[root-of-the-server]__14uwobw._.js → [root-of-the-server]__0p_h088._.js} +1 -1
- package/standalone/.next/server/chunks/[root-of-the-server]__0rwpsai._.js +3 -0
- package/standalone/.next/server/chunks/{[root-of-the-server]__0i4bd9d._.js → [root-of-the-server]__0vvjqp5._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__04rx7b9._.js → [root-of-the-server]__0w20bq-._.js} +2 -2
- package/standalone/.next/server/chunks/{[root-of-the-server]__0hmrx3m._.js → [root-of-the-server]__0wf0pka._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__0nxj1ky._.js → [root-of-the-server]__0wg2umj._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__17bgip6._.js → [root-of-the-server]__0xa_els._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__0wx4-1l._.js → [root-of-the-server]__0xukz2x._.js} +2 -2
- package/standalone/.next/server/chunks/[root-of-the-server]__0zyqmd4._.js +122 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__1-z6lg_._.js +3 -0
- package/standalone/.next/server/chunks/{[root-of-the-server]__0kxltc8._.js → [root-of-the-server]__15_clsj._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__020ggc3._.js → [root-of-the-server]__15aat79._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__00_-x1w._.js → [root-of-the-server]__15bbm2q._.js} +2 -2
- package/standalone/.next/server/chunks/{[root-of-the-server]__09c7zmy._.js → [root-of-the-server]__16l4wed._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__04hrhu3._.js → [root-of-the-server]__19zwwdv._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__0d4_f1e._.js → [root-of-the-server]__1a5_am-._.js} +1 -1
- package/standalone/.next/server/chunks/[root-of-the-server]__1ajaiy1._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__1dtlzq1._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__1kpqohm._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__1l7234r._.js +3 -0
- package/standalone/.next/server/chunks/{[root-of-the-server]__0c02fce._.js → [root-of-the-server]__1oa-sy6._.js} +2 -2
- package/standalone/.next/server/chunks/[root-of-the-server]__1vip3sa._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__1vxtcsq._.js +3 -0
- package/standalone/.next/server/chunks/{[root-of-the-server]__0cryh-d._.js → [root-of-the-server]__1wtng3p._.js} +1 -1
- package/standalone/.next/server/chunks/[root-of-the-server]__1wu654b._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__1x2nph5._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__1xk-0be._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__210dhdj._.js +3 -0
- package/standalone/.next/server/chunks/_0exkna-._.js +164 -8
- package/standalone/.next/server/chunks/{_0bru086._.js → _0jurkow._.js} +26 -26
- package/standalone/.next/server/chunks/{_00mzn-u._.js → _0rx5rfm._.js} +27 -27
- package/standalone/.next/server/chunks/_0tufgj0._.js +234 -78
- package/standalone/.next/server/chunks/_0w2eghf._.js +164 -8
- package/standalone/.next/server/chunks/_152rnkf._.js +17 -17
- package/standalone/.next/server/chunks/{_1_g2i-t._.js → _16x77b_._.js} +27 -27
- package/standalone/.next/server/chunks/_1dbqy8c._.js +17 -17
- package/standalone/.next/server/chunks/_1vrixpc._.js +17 -17
- package/standalone/.next/server/chunks/_1yfz-9u._.js +17 -17
- package/standalone/.next/server/chunks/src_0o4-snj._.js +1 -1
- package/standalone/.next/server/chunks/ssr/1oeh_server_app_[locale]_builds_[buildId]_coverage_page_actions_20i_0zd.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__08bbv6z._.js +9 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ckj6wg._.js +13 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0eit075._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0tsac-e._.js +15 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0uo4dhz._.js +11 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__10-ftkj._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__15v1geo._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1qm_j4s._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1s6_fta._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_0-o77zz._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_00m30gw._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_03961l6._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_08q5hnx._.js +35 -0
- package/standalone/.next/server/chunks/ssr/_093--4s._.js +3 -0
- package/standalone/.next/server/chunks/ssr/{_1kaz2gq._.js → _09lh67h._.js} +2 -2
- package/standalone/.next/server/chunks/ssr/_0a1ligo._.js +3 -0
- package/standalone/.next/server/chunks/ssr/{_1h3p6oi._.js → _0cw_tqx._.js} +2 -2
- package/standalone/.next/server/chunks/ssr/{_0hoc_fd._.js → _0ddgabq._.js} +2 -2
- package/standalone/.next/server/chunks/ssr/_0dq-84j._.js +22 -0
- package/standalone/.next/server/chunks/ssr/_0dy1ovj._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_0ezo890._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_0id1774._.js +13 -0
- package/standalone/.next/server/chunks/ssr/_0j48up8._.js +1 -1
- package/standalone/.next/server/chunks/ssr/_0nhtqty._.js +1 -1
- package/standalone/.next/server/chunks/ssr/_0oh246z._.js +3 -0
- package/standalone/.next/server/chunks/ssr/{_1r9ohdr._.js → _0q8sy0w._.js} +2 -2
- package/standalone/.next/server/chunks/ssr/_0qra30j._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_0t2jwg3._.js +109 -0
- package/standalone/.next/server/chunks/ssr/{_13jl9nw._.js → _0ufkrvm._.js} +2 -2
- package/standalone/.next/server/chunks/ssr/{_0sp1ojg._.js → _0vjihfb._.js} +26 -2
- package/standalone/.next/server/chunks/ssr/_0xh-lyy._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_1-2qcpf._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_15erjna._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_17a3xuq._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_17p59oz._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_1bzibio._.js +109 -0
- package/standalone/.next/server/chunks/ssr/_1c2fde9._.js +11 -0
- package/standalone/.next/server/chunks/ssr/_1ekznx8._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_1k1tyz4._.js +3 -0
- package/standalone/.next/server/chunks/ssr/{_1dsdn7w._.js → _1n9rteq._.js} +8 -2
- package/standalone/.next/server/chunks/ssr/_1och_zk._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_1tpguta._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_1v1lo7c._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_1vv-dg-._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_1zgu74l._.js +1 -1
- package/standalone/.next/server/chunks/ssr/messages_de_json_[json]_cjs_1uig1ud._.js +1 -1
- package/standalone/.next/server/chunks/ssr/messages_en_json_[json]_cjs_206072-._.js +1 -1
- package/standalone/.next/server/chunks/ssr/messages_es_json_[json]_cjs_082yukd._.js +1 -1
- package/standalone/.next/server/chunks/ssr/messages_fr_json_[json]_cjs_0j6-w0i._.js +1 -1
- package/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1uzalot.js +4 -0
- package/standalone/.next/server/chunks/ssr/src_components_agents_agent-detail_tsx_0lfa4ui._.js +2 -2
- package/standalone/.next/server/chunks/ssr/src_components_builds_build-detail-page_tsx_0q1lvps._.js +15 -13
- package/standalone/.next/server/chunks/ssr/src_components_builds_builds-page_tsx_17qzmsl._.js +8 -12
- package/standalone/.next/server/chunks/ssr/src_components_builds_coverage-report-page_tsx_1nhwba1._.js +11 -0
- package/standalone/.next/server/chunks/ssr/src_components_codebases_repository-detail-page_tsx_20_7wk_._.js +5 -5
- package/standalone/.next/server/chunks/ssr/src_components_github_actions-page_tsx_18434xt._.js +5 -5
- package/standalone/.next/server/chunks/ssr/src_components_github_pull-requests-page_tsx_1il3ga-._.js +12 -12
- package/standalone/.next/server/chunks/ssr/src_components_jira_cache-page_tsx_1znt1yl._.js +1 -1
- package/standalone/.next/server/chunks/ssr/src_components_skills_skill-sync-page_tsx_15sidhb._.js +1 -1
- package/standalone/.next/server/chunks/ssr/src_components_skills_skills-page_tsx_0o1nlbg._.js +3 -3
- package/standalone/.next/server/chunks/ssr/src_components_tools_tools-page_tsx_0k1jqcz._.js +2 -2
- package/standalone/.next/server/chunks/ssr/src_components_worktrees_worktree-detail-page_tsx_1oexgu_._.js +21 -4
- package/standalone/.next/server/functions-config-manifest.json +3 -0
- package/standalone/.next/server/middleware-build-manifest.js +6 -6
- package/standalone/.next/server/next-font-manifest.js +1 -1
- package/standalone/.next/server/next-font-manifest.json +4 -0
- package/standalone/.next/server/pages/404.html +1 -1
- package/standalone/.next/server/pages/500.html +1 -1
- package/standalone/.next/server/server-reference-manifest.js +1 -1
- package/standalone/.next/server/server-reference-manifest.json +1 -1
- package/standalone/.next/static/chunks/041g9raf1naqv.js +48 -0
- package/standalone/.next/static/chunks/08ujwkhzkokhf.js +1 -0
- package/standalone/.next/static/chunks/0a82bgw37ev__.js +33 -0
- package/standalone/.next/static/chunks/0cw4z7_m01m5f.js +31 -0
- package/standalone/.next/static/chunks/0emxr8tr7kji0.js +33 -0
- package/standalone/.next/static/chunks/0h8zu6aywqh1-.js +27 -0
- package/standalone/.next/static/chunks/0ng892ycfzv2q.js +1 -0
- package/standalone/.next/static/chunks/0tgtji0dbbefa.js +107 -0
- package/standalone/.next/static/chunks/15_8kla24ff9f.js +1 -0
- package/standalone/.next/static/chunks/16-l4kp9o217d.js +1 -0
- package/standalone/.next/static/chunks/1c7ci5ai5qyfo.js +1 -0
- package/standalone/.next/static/chunks/1egccqmgk3kbi.js +1 -0
- package/standalone/.next/static/chunks/1gwvywh0e6i17.js +3 -0
- package/standalone/.next/static/chunks/1hehq94hslvbl.js +7 -0
- package/standalone/.next/static/chunks/1k5cw41bd4e5r.js +51 -0
- package/standalone/.next/static/chunks/{1rivge68m21sm.js → 1mprxk0uebv70.js} +10 -10
- package/standalone/.next/static/chunks/1rus13s58mkxy.js +1 -0
- package/standalone/.next/static/chunks/{2fzxwi39odugq.js → 1rwqeg_l_plzt.js} +1 -1
- package/standalone/.next/static/chunks/1u_jwc-bo10k3.js +1 -0
- package/standalone/.next/static/chunks/1ut0xkaqsykm4.js +7 -0
- package/standalone/.next/static/chunks/1w_zvfx_jdyv_.js +29 -0
- package/standalone/.next/static/chunks/2-wrd12dmwbo-.js +1 -0
- package/standalone/.next/static/chunks/23kut2_l2y2-w.js +9 -0
- package/standalone/.next/static/chunks/23xyv764-kx8z.js +38 -0
- package/standalone/.next/static/chunks/{1wihkuyju-wa-.js → 25haryfoj4x3h.js} +1 -1
- package/standalone/.next/static/chunks/{0fr0zp4cwlyrr.js → 28ljy-uz6n_g9.js} +2 -2
- package/standalone/.next/static/chunks/29zl8lgsa28tb.js +1 -0
- package/standalone/.next/static/chunks/{0w8rd_g6hnvmz.js → 2__bi79el56lb.js} +5 -5
- package/standalone/.next/static/chunks/2aq80hyo4l8a2.js +7 -0
- package/standalone/.next/static/chunks/{24a_ux27e8jj4.js → 2l_wayk-ioguc.js} +1 -1
- package/standalone/.next/static/chunks/2swvzbwm_dr9y.js +1 -0
- package/standalone/.next/static/chunks/{0m26h4h36cb_0.js → 3120xcqaqci82.js} +1 -1
- package/standalone/.next/static/chunks/315cis1es_5t3.js +41 -0
- package/standalone/.next/static/chunks/321feys_9vp2v.js +33 -0
- package/standalone/.next/static/chunks/{0d-e51sawr2y8.js → 34oyci46fsc5w.js} +1 -1
- package/standalone/.next/static/chunks/{1nqkxeuycfmrt.js → 36_1bjzx79v18.js} +5 -5
- package/standalone/.next/static/chunks/37mczlawlcx5l.js +1 -0
- package/standalone/.next/static/chunks/3ajj69p_sj615.js +1 -0
- package/standalone/.next/static/chunks/{1tcqtaedz7922.js → 3d4ijy7zglgv5.js} +1 -1
- package/standalone/.next/static/chunks/3ir4b8po439x7.js +40 -0
- package/standalone/.next/static/chunks/3p7wbgo7qd6_m.css +1 -0
- package/standalone/.next/static/chunks/3q0q6_ntq8aa5.js +51 -0
- package/standalone/.next/static/chunks/3r-6igcofcwxj.js +107 -0
- package/standalone/.next/static/chunks/{0m--47yk9j-ec.js → 3tycetq7o8g3h.js} +1 -1
- package/standalone/.next/static/chunks/3vg6y29m047x9.js +31 -0
- package/standalone/.next/static/chunks/{0biu8z1f8c42u.js → 40ovzayigkz_-.js} +1 -1
- package/standalone/.next/static/chunks/41wq-96yyl0uw.js +1 -0
- package/standalone/.next/static/chunks/44xu63hsh11xp.js +1 -0
- package/standalone/.next/static/chunks/{turbopack-1rw7om86c18dg.js → turbopack-1v9ogj_5hv56l.js} +1 -1
- package/standalone/src/services/builds/build-freshness.test.ts +107 -0
- package/standalone/src/services/builds/build-freshness.ts +73 -0
- package/standalone/src/services/builds/builds.service.test.ts +222 -8
- package/standalone/src/services/builds/builds.service.ts +514 -3
- package/standalone/.next/server/chunks/[root-of-the-server]__0qjhcow._.js +0 -122
- package/standalone/.next/server/chunks/[root-of-the-server]__1878s0b._.js +0 -3
- package/standalone/.next/server/chunks/[root-of-the-server]__18zrtty._.js +0 -3
- package/standalone/.next/server/chunks/[root-of-the-server]__1_xz_m2._.js +0 -3
- package/standalone/.next/server/chunks/[root-of-the-server]__1mx1hqe._.js +0 -3
- package/standalone/.next/server/chunks/[root-of-the-server]__1sjjkyp._.js +0 -3
- package/standalone/.next/server/chunks/[root-of-the-server]__1vk9266._.js +0 -3
- package/standalone/.next/server/chunks/[root-of-the-server]__1yn6pds._.js +0 -3
- package/standalone/.next/server/chunks/[root-of-the-server]__1zwpjfo._.js +0 -3
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__03m5q8h._.js +0 -27
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__06bk7ik._.js +0 -3
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__06f05jg._.js +0 -3
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0oj1os4._.js +0 -3
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1349-us._.js +0 -3
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1osx7qy._.js +0 -27
- package/standalone/.next/server/chunks/ssr/_09l5w5d._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0_726fj._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0a1zku5._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0bvpmhm._.js +0 -97
- package/standalone/.next/server/chunks/ssr/_0ndnmkz._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0pe56xv._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0pu14lm._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1-1mnp6._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1-7r8vu._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_10evhql._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_142x9wn._.js +0 -22
- package/standalone/.next/server/chunks/ssr/_1_ta7g1._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1eol9we._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1ey5mmy._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1fdyu2w._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1h3t5g1._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1kemhyd._.js +0 -39
- package/standalone/.next/server/chunks/ssr/_1kmkrz5._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1lseili._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1oh35yj._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1vhf014._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1x13g5y._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1yzb5-u._.js +0 -11
- package/standalone/.next/server/chunks/ssr/_1za3z6k._.js +0 -97
- package/standalone/.next/server/chunks/ssr/src_components_0wvh73y._.js +0 -11
- package/standalone/.next/server/chunks/ssr/src_components_github_167_ydi._.js +0 -35
- package/standalone/.next/static/chunks/00dx8gu-2oyqe.js +0 -45
- package/standalone/.next/static/chunks/091l-ij_cv0b6.js +0 -41
- package/standalone/.next/static/chunks/0a3s519wuzjet.js +0 -1
- package/standalone/.next/static/chunks/0j5n6p9i-vyzo.js +0 -9
- package/standalone/.next/static/chunks/0sp_r-c6262te.js +0 -3
- package/standalone/.next/static/chunks/0weklluydd2mf.js +0 -23
- package/standalone/.next/static/chunks/1eehbcjby4go8.js +0 -95
- package/standalone/.next/static/chunks/1joeb4m-mmn69.js +0 -7
- package/standalone/.next/static/chunks/1xjd6ye7mxyf5.js +0 -7
- package/standalone/.next/static/chunks/23_75iur2dq8p.js +0 -1
- package/standalone/.next/static/chunks/24sd_kmnetibb.js +0 -1
- package/standalone/.next/static/chunks/278dxvyf095b_.js +0 -55
- package/standalone/.next/static/chunks/27k7_zc-iuppd.js +0 -1
- package/standalone/.next/static/chunks/2baaj4mpr6i-i.js +0 -1
- package/standalone/.next/static/chunks/2cj2ndz_e0hbz.js +0 -1
- package/standalone/.next/static/chunks/2dwchs_6y_o5f.js +0 -1
- package/standalone/.next/static/chunks/2hv6pkoloju0g.js +0 -33
- package/standalone/.next/static/chunks/2lgsgstcvc7uk.css +0 -1
- package/standalone/.next/static/chunks/2sqprazdqp7f7.js +0 -1
- package/standalone/.next/static/chunks/32agjzrkphjrl.js +0 -9
- package/standalone/.next/static/chunks/33y_b6dqfx3tk.js +0 -1
- package/standalone/.next/static/chunks/399uxexoo8x7f.js +0 -33
- package/standalone/.next/static/chunks/39ecics7n8z5m.js +0 -1
- package/standalone/.next/static/chunks/3_kaby2qep1pd.js +0 -34
- package/standalone/.next/static/chunks/3h1pxh5fd97ym.js +0 -27
- package/standalone/.next/static/chunks/3jbfibit05k5o.js +0 -29
- package/standalone/.next/static/chunks/3oyhf7rk2xr_g.js +0 -1
- package/standalone/.next/static/chunks/3q7vh58-5dkv2.js +0 -25
- package/standalone/.next/static/chunks/3td_-1s61zkpa.js +0 -38
- package/standalone/.next/static/chunks/3xkoiasuwi3ms.js +0 -95
- package/standalone/.next/static/chunks/41s57pssydrel.js +0 -43
- package/standalone/.next/static/chunks/42flok13o-l0b.js +0 -1
- package/standalone/.next/static/chunks/43gw6_6hbw18w.js +0 -51
- /package/standalone/.next/static/{_pMjurqsAcC478HIzIe-d → ePu377E66yy0icQx3ykQJ}/_buildManifest.js +0 -0
- /package/standalone/.next/static/{_pMjurqsAcC478HIzIe-d → ePu377E66yy0icQx3ykQJ}/_clientMiddlewareManifest.js +0 -0
- /package/standalone/.next/static/{_pMjurqsAcC478HIzIe-d → ePu377E66yy0icQx3ykQJ}/_ssgManifest.js +0 -0
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,573474,e=>{"use strict";let t=(0,e.i(456420).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",0,t],573474)},340953,e=>{"use strict";var t=e.i(843476),a=e.i(271645),r=e.i(30030);function i(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function s(...e){return a.useCallback(function(...e){return t=>{let a=!1,r=e.map(e=>{let r=i(e,t);return a||"function"!=typeof r||(a=!0),r});if(a)return()=>{for(let t=0;t<r.length;t++){let a=r[t];"function"==typeof a?a():i(e[t],null)}}}}(...e),e)}var l=e.i(326999);"u">typeof window&&window.document&&window.document.createElement;var n="AlertDialog",[o,d]=(0,r.createContextScope)(n,[l.createDialogScope]),u=(0,l.createDialogScope)(),c=e=>{let{__scopeAlertDialog:a,...r}=e,i=u(a);return(0,t.jsx)(l.Root,{...i,...r,modal:!0})};c.displayName=n;var m=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,s=u(r);return(0,t.jsx)(l.Trigger,{...s,...i,ref:a})});m.displayName="AlertDialogTrigger";var x=e=>{let{__scopeAlertDialog:a,...r}=e,i=u(a);return(0,t.jsx)(l.Portal,{...i,...r})};x.displayName="AlertDialogPortal";var p=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,s=u(r);return(0,t.jsx)(l.Overlay,{...s,...i,ref:a})});p.displayName="AlertDialogOverlay";var h="AlertDialogContent",[g,f]=o(h),j=a.forwardRef((e,r)=>{let{__scopeAlertDialog:i,children:n,...o}=e,d=u(i),c=s(r,a.useRef(null)),m=a.useRef(null);return(0,t.jsx)(g,{scope:i,cancelRef:m,children:(0,t.jsx)(l.Content,{role:"alertdialog",...d,...o,ref:c,onOpenAutoFocus:function(e,t,{checkForDefaultPrevented:a=!0}={}){return function(r){if(e?.(r),!1===a||!r||!r.defaultPrevented)return t?.(r)}}(o.onOpenAutoFocus,e=>{e.preventDefault(),m.current?.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:n})})});j.displayName=h;var b=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,s=u(r);return(0,t.jsx)(l.Title,{...s,...i,ref:a})});b.displayName="AlertDialogTitle";var v=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,s=u(r);return(0,t.jsx)(l.Description,{...s,...i,ref:a})});v.displayName="AlertDialogDescription";var y=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,s=u(r);return(0,t.jsx)(l.Close,{...s,...i,ref:a})});y.displayName="AlertDialogAction";var R="AlertDialogCancel",w=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,{cancelRef:n}=f(R,r),o=u(r),d=s(a,n);return(0,t.jsx)(l.Close,{...o,...i,ref:d})});w.displayName=R,e.s(["Action",0,y,"AlertDialog",0,c,"AlertDialogAction",0,y,"AlertDialogCancel",0,w,"AlertDialogContent",0,j,"AlertDialogDescription",0,v,"AlertDialogOverlay",0,p,"AlertDialogPortal",0,x,"AlertDialogTitle",0,b,"AlertDialogTrigger",0,m,"Cancel",0,w,"Content",0,j,"Description",0,v,"Overlay",0,p,"Portal",0,x,"Root",0,c,"Title",0,b,"Trigger",0,m,"createAlertDialogScope",0,d],691162);var N=e.i(691162),N=N,C=e.i(975157),D=e.i(519455);function S({...e}){return(0,t.jsx)(N.Root,{"data-slot":"alert-dialog",...e})}function k({...e}){return(0,t.jsx)(N.Trigger,{"data-slot":"alert-dialog-trigger",...e})}function T({...e}){return(0,t.jsx)(N.Portal,{"data-slot":"alert-dialog-portal",...e})}function A({className:e,...a}){return(0,t.jsx)(N.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,C.cn)("fixed inset-0 z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...a})}function P({className:e,size:a="default",...r}){return(0,t.jsxs)(T,{children:[(0,t.jsx)(A,{}),(0,t.jsx)(N.Content,{"data-slot":"alert-dialog-content","data-size":a,className:(0,C.cn)("group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),...r})]})}function H({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,C.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",e),...a})}function E({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,C.cn)("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",e),...a})}function M({className:e,...a}){return(0,t.jsx)(N.Title,{"data-slot":"alert-dialog-title",className:(0,C.cn)("font-heading text-base font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",e),...a})}function $({className:e,...a}){return(0,t.jsx)(N.Description,{"data-slot":"alert-dialog-description",className:(0,C.cn)("text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),...a})}function I({className:e,variant:a="default",size:r="default",...i}){return(0,t.jsx)(D.Button,{variant:a,size:r,asChild:!0,children:(0,t.jsx)(N.Action,{"data-slot":"alert-dialog-action",className:(0,C.cn)(e),...i})})}function q({className:e,variant:a="outline",size:r="default",...i}){return(0,t.jsx)(D.Button,{variant:a,size:r,asChild:!0,children:(0,t.jsx)(N.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,C.cn)(e),...i})})}e.s(["ConfirmationDialog",0,function({actionLabel:e,cancelLabel:a,description:r,onConfirm:i,onOpenChange:s,open:l,title:n,trigger:o}){return(0,t.jsxs)(S,{onOpenChange:s,open:l,children:[o&&(0,t.jsx)(k,{asChild:!0,children:o}),(0,t.jsxs)(P,{children:[(0,t.jsxs)(H,{children:[(0,t.jsx)(M,{children:n}),(0,t.jsx)($,{children:r})]}),(0,t.jsxs)(E,{children:[(0,t.jsx)(q,{children:a}),(0,t.jsx)(I,{onClick:()=>void i(),variant:"destructive",children:e})]})]})]})}],340953)},776639,e=>{"use strict";var t=e.i(843476),a=e.i(560964),r=e.i(964053),i=e.i(519455),s=e.i(975157);function l({...e}){return(0,t.jsx)(r.Dialog.Portal,{"data-slot":"dialog-portal",...e})}function n({className:e,...a}){return(0,t.jsx)(r.Dialog.Overlay,{className:(0,s.cn)("fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),"data-slot":"dialog-overlay",...a})}e.s(["Dialog",0,function({...e}){return(0,t.jsx)(r.Dialog.Root,{"data-slot":"dialog",...e})},"DialogContent",0,function({className:e,children:o,showCloseButton:d=!0,...u}){return(0,t.jsxs)(l,{children:[(0,t.jsx)(n,{}),(0,t.jsxs)(r.Dialog.Content,{className:(0,s.cn)("fixed top-1/2 left-1/2 z-50 grid max-h-[85dvh] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 overflow-y-auto rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),"data-slot":"dialog-content",...u,children:[o,d&&(0,t.jsx)(r.Dialog.Close,{asChild:!0,"data-slot":"dialog-close",children:(0,t.jsxs)(i.Button,{className:"absolute top-2 right-2",size:"icon-sm",variant:"ghost",children:[(0,t.jsx)(a.XIcon,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})})]})]})},"DialogDescription",0,function({className:e,...a}){return(0,t.jsx)(r.Dialog.Description,{className:(0,s.cn)("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),"data-slot":"dialog-description",...a})},"DialogFooter",0,function({className:e,showCloseButton:a=!1,children:l,...n}){return(0,t.jsxs)("div",{className:(0,s.cn)("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end",e),"data-slot":"dialog-footer",...n,children:[l,a&&(0,t.jsx)(r.Dialog.Close,{asChild:!0,children:(0,t.jsx)(i.Button,{variant:"outline",children:"Close"})})]})},"DialogHeader",0,function({className:e,...a}){return(0,t.jsx)("div",{className:(0,s.cn)("flex flex-col gap-2",e),"data-slot":"dialog-header",...a})},"DialogTitle",0,function({className:e,...a}){return(0,t.jsx)(r.Dialog.Title,{className:(0,s.cn)("font-heading text-base leading-none font-medium",e),"data-slot":"dialog-title",...a})}])},77071,e=>{"use strict";let t=(0,e.i(456420).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",0,t],77071)},856522,e=>{"use strict";let t=(0,e.i(456420).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"}]]);e.s(["Save",0,t],856522)},566595,e=>{"use strict";var t=e.i(630299);e.s(["Search",()=>t.default])},648119,e=>{"use strict";var t=e.i(560972);e.s(["MoreHorizontal",()=>t.default])},250832,e=>{"use strict";let t=(0,e.i(456420).default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);e.s(["Settings2",0,t],250832)},689257,e=>{"use strict";var t=e.i(843476),a=e.i(482022),r=e.i(456420);let i=(0,r.default)("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"}]]);var s=e.i(113030),l=e.i(634398);let n=(0,r.default)("lock-keyhole",[["circle",{cx:"12",cy:"16",r:"1",key:"1au0dj"}],["rect",{x:"3",y:"10",width:"18",height:"12",rx:"2",key:"6s8ecr"}],["path",{d:"M7 10V7a5 5 0 0 1 10 0v3",key:"1pqi11"}]]);var o=e.i(648119),d=e.i(77071),u=e.i(741120),c=e.i(856522),m=e.i(566595),x=e.i(250832),p=e.i(573474),h=e.i(861745),g=e.i(948148),f=e.i(618566),j=e.i(271645),b=e.i(340953),v=e.i(346194),y=e.i(647776),R=e.i(948812),w=e.i(356505),N=e.i(929592),C=e.i(487486),D=e.i(519455),S=e.i(776639),k=e.i(755146),T=e.i(82612),A=e.i(793479),P=e.i(906197),H=e.i(110204),E=e.i(987968),M=e.i(337355),$=e.i(967489),I=e.i(784774),q=e.i(677572),O=e.i(520133),z=e.i(637611);let B="id githubId owner name nameWithOwner url jiraKeyRegex";function G(e,t,a){return"repositories"===e?`${a}:repository:${t}`:`${a}:${e}`}function L(e){let t=new URLSearchParams(window.location.search);e?t.set("issue",e):t.delete("issue");let a=t.toString();window.history.pushState(null,"",`${window.location.pathname}${a?`?${a}`:""}`)}function K(e){if(!e.trim())return null;try{return RegExp(e,"i"),null}catch{return"invalid"}}function F({items:e,locale:a,onMerged:r,onPipelineRetried:i}){let s=(0,g.useTranslations)("pullRequests"),l=(0,O.useRouter)(),n=e=>e.stopPropagation(),o=(0,j.useMemo)(()=>{let t=[],r=new Intl.DateTimeFormat(a,{dateStyle:"full"});for(let a of e){let e=new Date(a.createdAt),i=`${e.getFullYear()}-${e.getMonth()}-${e.getDate()}`,s=t.at(-1);s?.dateKey===i?s.items.push(a):t.push({key:`${i}-${a.id}`,dateKey:i,label:r.format(e),items:[a]})}return t},[e,a]);return(0,t.jsx)("div",{className:"overflow-x-auto rounded-lg border",children:(0,t.jsxs)(I.Table,{children:[(0,t.jsx)(I.TableHeader,{children:(0,t.jsxs)(I.TableRow,{className:"hover:bg-transparent",children:[(0,t.jsx)(I.TableHead,{children:s("number")}),(0,t.jsx)(I.TableHead,{children:s("pullRequestAndRepository")}),(0,t.jsx)(I.TableHead,{children:s("labels")}),(0,t.jsx)(I.TableHead,{children:s("ticket")}),(0,t.jsx)(I.TableHead,{children:s("pipeline")}),(0,t.jsx)(I.TableHead,{children:s("approval")}),(0,t.jsx)(I.TableHead,{children:s("openComments")}),(0,t.jsx)(I.TableHead,{children:s("age")}),(0,t.jsx)(I.TableHead,{className:"text-right",children:s("actions")})]})}),(0,t.jsx)(I.TableBody,{children:o.map(e=>(0,t.jsxs)(j.Fragment,{children:[(0,t.jsx)(I.TableRow,{className:"bg-muted/20 hover:bg-muted/20",children:(0,t.jsx)(I.TableCell,{className:"py-1.5 text-xs font-normal text-muted-foreground",colSpan:9,children:e.label})}),e.items.map(e=>{var o;return(0,t.jsxs)(I.TableRow,{className:"cursor-pointer",onClick:()=>l.push((0,R.pullRequestDetailHref)(e)),children:[(0,t.jsx)(I.TableCell,{children:(0,t.jsx)(C.Badge,{asChild:!0,className:"cursor-pointer hover:bg-muted/80",variant:"outline",children:(0,t.jsxs)(O.Link,{href:(0,R.pullRequestDetailHref)(e),onClick:n,children:["#",e.number]})})}),(0,t.jsx)(I.TableCell,{className:"min-w-72 whitespace-normal",children:(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)(O.Link,{className:"font-medium hover:underline",href:(0,R.pullRequestDetailHref)(e),onClick:n,children:e.title}),(0,t.jsx)("div",{className:"flex flex-wrap items-center gap-1.5 text-xs",children:(0,t.jsx)("a",{className:"text-muted-foreground hover:text-foreground",href:e.repositoryUrl,onClick:n,rel:"noreferrer",target:"_blank",children:e.repositoryNameWithOwner})}),(0,t.jsx)("p",{className:"font-mono text-xs break-all text-muted-foreground",children:e.headRefName})]})}),(0,t.jsx)(I.TableCell,{className:"min-w-40 whitespace-normal",children:(0,t.jsx)("div",{className:"flex flex-wrap gap-1",children:e.labels.length>0?e.labels.map(e=>(0,t.jsx)(C.Badge,{children:e},e)):"—"})}),(0,t.jsx)(I.TableCell,{children:e.jiraKey?(0,t.jsx)(C.Badge,{asChild:!0,className:"cursor-pointer hover:bg-primary/80",children:(0,t.jsx)("button",{onClick:t=>{t.stopPropagation(),L(e.jiraKey)},type:"button",children:e.jiraKey})}):"—"}),(0,t.jsx)(I.TableCell,{children:(0,t.jsx)(y.PipelineMenu,{onPipelineRetried:t=>i(e.id,t),pipelineStatus:e.pipelineStatus,pipelines:e.pipelines,repositoryId:e.repositoryGithubId})}),(0,t.jsx)(I.TableCell,{children:(0,t.jsx)(C.Badge,{className:"APPROVED"===(o=e.reviewDecision)?"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":"CHANGES_REQUESTED"===o?"border-red-500/30 bg-red-500/10 text-red-700 dark:text-red-300":"REVIEW_REQUIRED"===o?"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300":"border-slate-500/30 bg-slate-500/10 text-slate-700 dark:text-slate-300",children:s(`reviewStates.${e.reviewDecision}`)})}),(0,t.jsx)(I.TableCell,{children:(0,t.jsx)(C.Badge,{asChild:!0,className:0===e.unresolvedReviewThreadCount?"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300",children:(0,t.jsx)(O.Link,{"aria-label":s("viewOpenComments",{count:e.unresolvedReviewThreadCount}),href:(0,R.pullRequestCommentsHref)(e),onClick:n,children:e.unresolvedReviewThreadCount})})}),(0,t.jsx)(I.TableCell,{className:"whitespace-nowrap text-muted-foreground",children:(0,t.jsxs)("div",{className:"flex flex-col items-start gap-1.5",children:[(0,t.jsx)(C.Badge,{variant:"outline",children:s(`pullRequestStates.${e.state}`)}),(0,t.jsx)("time",{dateTime:e.createdAt,children:function(e,t){let a=Math.round((Date.parse(e)-Date.now())/1e3),r=new Intl.RelativeTimeFormat(t,{numeric:"auto"});for(let[e,t]of[["year",31536e3],["month",2592e3],["week",604800],["day",86400],["hour",3600],["minute",60]])if(Math.abs(a)>=t)return r.format(Math.round(a/t),e);return r.format(a,"second")}(e.createdAt,a)})]})}),(0,t.jsx)(I.TableCell,{className:"text-right",children:(0,t.jsx)(V,{onMerged:r,pullRequest:e})})]},e.id)})]},e.key))})]})})}function V({pullRequest:e,onMerged:r}){let l=(0,g.useTranslations)("pullRequests"),[n,d]=(0,j.useState)(!1);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(k.DropdownMenu,{children:[(0,t.jsx)(k.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsx)(D.Button,{"aria-label":`${l("actions")}: #${e.number}`,onClick:e=>e.stopPropagation(),size:"icon-sm",variant:"outline",children:(0,t.jsx)(o.MoreHorizontal,{})})}),(0,t.jsxs)(k.DropdownMenuContent,{align:"end",className:"w-44",children:[(0,t.jsx)(k.DropdownMenuItem,{asChild:!0,children:(0,t.jsxs)(O.Link,{href:(0,R.pullRequestDetailHref)(e),children:[(0,t.jsx)(i,{}),l("details")]})}),(0,t.jsx)(k.DropdownMenuItem,{asChild:!0,children:(0,t.jsxs)("a",{href:e.url,rel:"noreferrer",target:"_blank",children:[(0,t.jsx)(a.ExternalLink,{}),l("openInGitHub")]})}),"OPEN"===e.state&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(k.DropdownMenuSeparator,{}),(0,t.jsxs)(k.DropdownMenuItem,{onSelect:()=>d(!0),children:[(0,t.jsx)(s.GitMerge,{}),l("merge")]})]})]})]}),"OPEN"===e.state&&(0,t.jsx)(v.MergePullRequestButton,{onMerged:r,onOpenChange:d,open:n,pullRequest:e,showTrigger:!1})]})}function W({open:e,setOpen:a,repositories:r,settings:i,onRepositoriesChanged:s,onSettingsChanged:l,tokenConfigured:o}){let u=(0,g.useTranslations)("pullRequests"),[x,p]=(0,j.useState)([]),[h,f]=(0,j.useState)(null),[b,v]=(0,j.useState)(!1),[y,R]=(0,j.useState)(""),[w,C]=(0,j.useState)(""),[k,T]=(0,j.useState)(""),[M,$]=(0,j.useState)(i?.defaultJiraKeyRegex??""),[I,G]=(0,j.useState)(!1),[L,F]=(0,j.useState)(!1),[V,_]=(0,j.useState)(null),J=(0,j.useCallback)(async e=>{F(!0);try{let t=await (0,z.controlPlaneRequest)(`query GitHubAvailableRepositories($after: String) {
|
|
2
|
-
githubAvailableRepositories(after: $after) {
|
|
3
|
-
items { githubId nameWithOwner url isPrivate managed }
|
|
4
|
-
hasNextPage
|
|
5
|
-
endCursor
|
|
6
|
-
}
|
|
7
|
-
}`,{after:e});p(a=>e?[...a,...t.githubAvailableRepositories.items]:t.githubAvailableRepositories.items),v(t.githubAvailableRepositories.hasNextPage),f(t.githubAvailableRepositories.endCursor),_(null)}catch(e){_(e instanceof Error?e.message:String(e))}finally{F(!1)}},[]);(0,j.useEffect)(()=>{if(!e||!o||x.length>0)return;let t=window.setTimeout(()=>void J(null),0);return()=>window.clearTimeout(t)},[x.length,J,e,o]);let Q=async(e,t)=>{if(K(t))return void _(u("invalidRegex"));G(!0);try{let a=await (0,z.controlPlaneRequest)(`mutation AddGitHubRepository($input: AddGitHubRepositoryInput!) {
|
|
8
|
-
addGitHubRepository(input: $input) { ${B} }
|
|
9
|
-
}`,{input:{nameWithOwner:e,jiraKeyRegex:t||null}});s(a.addGitHubRepository),C(""),T(""),_(null)}catch(e){_(e instanceof Error?e.message:String(e))}finally{G(!1)}},Y=async()=>{if(!M.trim()||K(M))return void _(u("invalidRegex"));G(!0);try{let e=await (0,z.controlPlaneRequest)(`mutation SaveDefaultGitHubJiraKeyRegex(
|
|
10
|
-
$input: SaveGitHubSettingsInput!
|
|
11
|
-
) {
|
|
12
|
-
saveGitHubSettings(input: $input) {
|
|
13
|
-
tokenConfigured defaultJiraKeyRegex updatedAt
|
|
14
|
-
}
|
|
15
|
-
}`,{input:{defaultJiraKeyRegex:M}});l(e.saveGitHubSettings),_(null)}catch(e){_(e instanceof Error?e.message:String(e))}finally{G(!1)}},X=x.filter(e=>e.nameWithOwner.toLowerCase().includes(y.trim().toLowerCase()));return(0,t.jsx)(S.Dialog,{onOpenChange:a,open:e,children:(0,t.jsxs)(S.DialogContent,{className:"max-h-[90vh] overflow-y-auto sm:max-w-5xl",children:[(0,t.jsxs)(S.DialogHeader,{children:[(0,t.jsx)(S.DialogTitle,{children:u("manageTitle")}),(0,t.jsx)(S.DialogDescription,{children:u("manageDescription")})]}),V&&(0,t.jsx)(N.Alert,{variant:"destructive",children:(0,t.jsx)(N.AlertDescription,{children:V})}),o?(0,t.jsxs)("div",{className:"grid min-w-0 gap-6 md:grid-cols-2",children:[(0,t.jsxs)("section",{className:"min-w-0 space-y-3",children:[(0,t.jsx)("h3",{className:"font-medium",children:u("managedRepositories")}),(0,t.jsxs)(P.Item,{className:"block space-y-2 p-3",variant:"outline",children:[(0,t.jsx)(H.Label,{htmlFor:"default-github-jira-regex",children:u("defaultJiraKeyRegex")}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsx)(A.Input,{id:"default-github-jira-regex",onChange:e=>$(e.target.value),value:M}),(0,t.jsx)(D.Button,{"aria-label":u("saveDefaultRegex"),disabled:I,onClick:()=>void Y(),size:"icon",type:"button",children:I?(0,t.jsx)(E.Spinner,{}):(0,t.jsx)(c.Save,{})})]}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:u("defaultJiraKeyRegexHelp")})]}),0===r.length?(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:u("noManagedRepositories")}):(0,t.jsx)("div",{className:"space-y-3",children:r.map(e=>(0,t.jsx)(U,{busy:I,onBusyChange:G,onError:_,onRepositoriesChanged:s,repository:e},e.id))})]}),(0,t.jsxs)("section",{className:"min-w-0 space-y-3",children:[(0,t.jsx)("h3",{className:"font-medium",children:u("addRepository")}),(0,t.jsxs)(q.Tabs,{defaultValue:"browse",children:[(0,t.jsxs)(q.TabsList,{children:[(0,t.jsx)(q.TabsTrigger,{value:"browse",children:u("browse")}),(0,t.jsx)(q.TabsTrigger,{value:"manual",children:u("enterManually")})]}),(0,t.jsxs)(q.TabsContent,{className:"mt-3 space-y-2",value:"browse",children:[(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)(m.Search,{className:"pointer-events-none absolute top-1/2 left-2.5 size-4 -translate-y-1/2 text-muted-foreground"}),(0,t.jsx)(A.Input,{"aria-label":u("searchAvailableRepositories"),className:"pl-8",onChange:e=>R(e.target.value),placeholder:u("searchAvailableRepositories"),value:y})]}),X.map(e=>{let a=r.some(t=>t.githubId===e.githubId);return(0,t.jsxs)(P.Item,{className:"flex-nowrap p-2",variant:"outline",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("p",{className:"truncate text-sm font-medium",children:e.nameWithOwner}),e.isPrivate&&(0,t.jsxs)("span",{className:"mt-1 flex items-center gap-1 text-xs text-muted-foreground",children:[(0,t.jsx)(n,{className:"size-3"}),u("privateRepository")]})]}),(0,t.jsxs)(D.Button,{disabled:I||a,onClick:()=>void Q(e.nameWithOwner,""),size:"sm",children:[(0,t.jsx)(d.Plus,{}),a?u("managed"):u("add")]})]},e.githubId)}),!L&&0===X.length&&(0,t.jsx)("p",{className:"py-4 text-center text-sm text-muted-foreground",children:u("noRepositoryMatches")}),L&&(0,t.jsxs)("div",{className:"flex items-center gap-2 py-3 text-sm text-muted-foreground",children:[(0,t.jsx)(E.Spinner,{}),u("loadingRepositories")]}),b&&(0,t.jsx)(D.Button,{className:"w-full",disabled:L,onClick:()=>void J(h),variant:"outline",children:u("loadMore")})]}),(0,t.jsx)(q.TabsContent,{className:"mt-3",value:"manual",children:(0,t.jsxs)("form",{className:"space-y-4",onSubmit:e=>{e.preventDefault(),Q(w,k)},children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(H.Label,{className:"mb-1.5 block",htmlFor:"github-repository-name",children:u("repositoryName")}),(0,t.jsx)(A.Input,{id:"github-repository-name",onChange:e=>C(e.target.value),placeholder:"owner/repository",required:!0,value:w})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(H.Label,{className:"mb-1.5 block",htmlFor:"github-repository-regex",children:u("jiraKeyRegex")}),(0,t.jsx)(A.Input,{id:"github-repository-regex",onChange:e=>T(e.target.value),value:k}),(0,t.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:u("jiraKeyRegexOverrideHelp")})]}),(0,t.jsxs)(D.Button,{disabled:I,type:"submit",children:[I?(0,t.jsx)(E.Spinner,{}):(0,t.jsx)(d.Plus,{}),u("addRepository")]})]})})]})]})]}):(0,t.jsx)(N.Alert,{children:(0,t.jsxs)(N.AlertDescription,{children:[u("manageCredentialsRequired")," ",(0,t.jsx)(O.Link,{className:"text-primary underline",href:"/settings",children:u("openSettings")})]})}),(0,t.jsx)(S.DialogFooter,{children:(0,t.jsx)(D.Button,{onClick:()=>a(!1),variant:"outline",children:u("done")})})]})})}function U({repository:e,busy:a,onBusyChange:r,onError:i,onRepositoriesChanged:s}){let l=(0,g.useTranslations)("pullRequests"),n=(0,g.useTranslations)("common"),[o,d]=(0,j.useState)(e.jiraKeyRegex??""),u=async()=>{if(K(o))return void i(l("invalidRegex"));r(!0);try{let t=await (0,z.controlPlaneRequest)(`mutation UpdateGitHubRepository($input: UpdateGitHubRepositoryInput!) {
|
|
16
|
-
updateGitHubRepository(input: $input) { ${B} }
|
|
17
|
-
}`,{input:{id:e.id,jiraKeyRegex:o||null}});s(t.updateGitHubRepository),i(null)}catch(e){i(e instanceof Error?e.message:String(e))}finally{r(!1)}},m=async()=>{r(!0);try{let t=await (0,z.controlPlaneRequest)(`mutation RemoveGitHubRepository($id: ID!) {
|
|
18
|
-
removeGitHubRepository(id: $id) { ${B} }
|
|
19
|
-
}`,{id:e.id});s(t.removeGitHubRepository),i(null)}catch(e){i(e instanceof Error?e.message:String(e))}finally{r(!1)}};return(0,t.jsxs)(P.Item,{className:"block space-y-3 p-3",variant:"outline",children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,t.jsx)("a",{className:"min-w-0 truncate font-medium text-primary hover:underline",href:e.url,rel:"noreferrer",target:"_blank",children:e.nameWithOwner}),(0,t.jsx)(b.ConfirmationDialog,{actionLabel:l("removeRepository"),cancelLabel:n("cancel"),description:l("confirmRemoveRepositoryDescription"),onConfirm:m,title:l("confirmRemoveRepository"),trigger:(0,t.jsxs)(D.Button,{disabled:a,size:"icon-sm",variant:"ghost",children:[(0,t.jsx)(p.Trash2,{}),(0,t.jsx)("span",{className:"sr-only",children:l("removeRepository")})]})})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(H.Label,{className:"mb-1.5 block text-xs",htmlFor:`github-regex-${e.id}`,children:l("jiraKeyRegex")}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsx)(A.Input,{id:`github-regex-${e.id}`,onChange:e=>d(e.target.value),value:o}),(0,t.jsxs)(D.Button,{disabled:a,onClick:()=>void u(),size:"icon",children:[a?(0,t.jsx)(E.Spinner,{}):(0,t.jsx)(c.Save,{}),(0,t.jsx)("span",{className:"sr-only",children:l("saveRegex")})]})]}),(0,t.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:l("jiraKeyRegexOverrideHelp")})]})]})}e.s(["PullRequestsPage",0,function(){let e=(0,g.useTranslations)("pullRequests"),a=(0,f.useSearchParams)(),r=(0,h.useLocale)(),i=a.get("issue"),[s,n]=(0,j.useState)(null),[o,c]=(0,j.useState)([]),[m,p]=(0,j.useState)("mine"),[b,v]=(0,j.useState)("OPEN"),[y,R]=(0,j.useState)(""),[C,S]=(0,j.useState)({}),[k,A]=(0,j.useState)({}),[P,H]=(0,j.useState)({}),[I,K]=(0,j.useState)({}),[V,U]=(0,j.useState)(!0),[_,J]=(0,j.useState)(null),[Q,Y]=(0,j.useState)(!1),X=(0,j.useRef)(null),Z=(0,j.useRef)({}),ee=(0,j.useRef)({}),et=(0,j.useCallback)(async()=>{try{let e=await (0,z.controlPlaneRequest)(`query GitHubPullRequestConfiguration {
|
|
20
|
-
githubSettings { tokenConfigured defaultJiraKeyRegex updatedAt }
|
|
21
|
-
githubRepositories { ${B} }
|
|
22
|
-
}`);n(e.githubSettings),c(e.githubRepositories),R(t=>e.githubRepositories.some(e=>e.id===t)?t:e.githubRepositories[0]?.id??""),J(null)}catch(e){J(e instanceof Error?e.message:String(e))}finally{U(!1)}},[]);(0,j.useEffect)(()=>{let e=window.setTimeout(()=>void et(),0);return()=>window.clearTimeout(e)},[et]);let ea=(0,j.useCallback)(async(e,t,a,r={append:!1})=>{let i=G(e,t,a);if("repositories"===e&&!t)return;let s=Z.current[i]??0,l=r.append?s:s+1;if(r.append){if(!r.cursor||ee.current[i]===l)return;ee.current[i]=l,H(e=>({...e,[i]:!0}))}else Z.current[i]=l,delete ee.current[i],A(e=>({...e,[i]:!0})),H(e=>({...e,[i]:!1}));K(e=>({...e,[i]:null}));try{let s="repositories"===e?t:null,n=await (0,z.controlPlaneRequest)(`query GitHubPullRequests(
|
|
23
|
-
$scope: GitHubPullRequestScope!
|
|
24
|
-
$repositoryId: ID
|
|
25
|
-
$state: GitHubPullRequestStateFilter!
|
|
26
|
-
$first: Int!
|
|
27
|
-
$after: String
|
|
28
|
-
) {
|
|
29
|
-
githubPullRequests(
|
|
30
|
-
scope: $scope
|
|
31
|
-
repositoryId: $repositoryId
|
|
32
|
-
state: $state
|
|
33
|
-
first: $first
|
|
34
|
-
after: $after
|
|
35
|
-
) {
|
|
36
|
-
items { id number title url repositoryGithubId repositoryNameWithOwner repositoryUrl labels jiraKey pipelineStatus pipelines { id name status url checkSuiteId canRetry retryUnavailableReason } reviewDecision unresolvedReviewThreadCount state headRefName createdAt }
|
|
37
|
-
truncated
|
|
38
|
-
hasNextPage
|
|
39
|
-
endCursor
|
|
40
|
-
}
|
|
41
|
-
}`,{scope:s?"REPOSITORY":"review"===e?"REVIEW_REQUESTED":"MINE",repositoryId:s,state:a,first:25,after:r.cursor??null});if(Z.current[i]!==l)return;S(e=>({...e,[i]:r.append&&e[i]?{...n.githubPullRequests,items:[...e[i].items,...n.githubPullRequests.items.filter(t=>!e[i].items.some(e=>e.id===t.id))]}:n.githubPullRequests})),J(null)}catch(t){if(Z.current[i]!==l)return;let e=t instanceof Error?t.message:String(t);r.append?K(t=>({...t,[i]:e})):J(e)}finally{r.append?ee.current[i]===l&&(delete ee.current[i],H(e=>({...e,[i]:!1}))):Z.current[i]===l&&A(e=>({...e,[i]:!1}))}},[]),er=G(m,y,b);(0,j.useEffect)(()=>{if(s?.tokenConfigured&&("repositories"!==m||y)&&!C[er]&&!k[er]){let e=window.setTimeout(()=>void ea(m,y,b),0);return()=>window.clearTimeout(e)}},[m,ea,k,er,C,b,y,s?.tokenConfigured]),(0,j.useEffect)(()=>{if(!o.some(e=>e.id===y)){let e=window.setTimeout(()=>R(o[0]?.id??""),0);return()=>window.clearTimeout(e)}},[o,y]);let ei=C[er],es=!!k[er],el=!!P[er],en=I[er]??null;return(0,j.useEffect)(()=>{if(!s?.tokenConfigured||!ei?.hasNextPage||!ei.endCursor||es||el||en)return;let e=X.current;if(!e)return;let t=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&ea(m,y,b,{append:!0,cursor:ei.endCursor})},{rootMargin:"400px 0px"});return t.observe(e),()=>t.disconnect()},[m,ea,es,el,ei?.endCursor,ei?.hasNextPage,en,b,y,s?.tokenConfigured]),(0,t.jsxs)("section",{className:"mx-auto flex w-full max-w-[1800px] flex-col gap-5",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:e("title")}),(0,t.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:e("description")})]}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)(D.Button,{disabled:!s?.tokenConfigured||es,onClick:()=>void ea(m,y,b),variant:"outline",children:[(0,t.jsx)(u.RefreshCw,{className:es?"animate-spin":void 0}),e("refresh")]}),(0,t.jsxs)(D.Button,{onClick:()=>Y(!0),children:[(0,t.jsx)(x.Settings2,{}),e("manage")]})]})]}),_&&(0,t.jsx)(N.Alert,{variant:"destructive",children:(0,t.jsx)(N.AlertDescription,{children:_})}),V?(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(E.Spinner,{}),e("loading")]}):s?.tokenConfigured?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"overflow-x-auto pb-1",children:(0,t.jsx)(q.Tabs,{onValueChange:e=>p(e),value:m,children:(0,t.jsxs)(q.TabsList,{"aria-label":e("tabsLabel"),children:[(0,t.jsx)(q.TabsTrigger,{value:"mine",children:e("mine")}),(0,t.jsx)(q.TabsTrigger,{value:"review",children:e("reviewRequests")}),(0,t.jsx)(q.TabsTrigger,{value:"repositories",children:e("repositories")})]})})}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-3",children:[(0,t.jsxs)($.Select,{onValueChange:e=>v(e),value:b,children:[(0,t.jsx)($.SelectTrigger,{"aria-label":e("stateFilter"),className:"min-w-36",children:(0,t.jsx)($.SelectValue,{})}),(0,t.jsx)($.SelectContent,{align:"start",children:["ALL","OPEN","CLOSED","MERGED"].map(a=>(0,t.jsx)($.SelectItem,{value:a,children:e(`pullRequestStates.${a}`)},a))})]}),"repositories"===m&&o.length>0&&(0,t.jsx)("div",{className:"min-w-64 max-w-lg flex-1",children:(0,t.jsx)(M.SearchableSelect,{ariaLabel:e("repositoryFilter"),emptyMessage:e("noRepositoryMatches"),onValueChange:R,options:o.map(e=>({value:e.id,label:e.nameWithOwner,keywords:`${e.owner} ${e.name}`})),placeholder:e("selectRepository"),searchPlaceholder:e("searchRepositories"),value:y})})]}),ei?.truncated&&(0,t.jsx)(N.Alert,{className:"border-amber-500/30 bg-amber-500/10 text-amber-800 dark:text-amber-300",children:(0,t.jsx)(N.AlertDescription,{className:"text-current",children:e("truncated")})}),"repositories"===m&&0===o.length?(0,t.jsxs)(T.Empty,{className:"border py-12",children:[(0,t.jsxs)(T.EmptyHeader,{children:[(0,t.jsx)(T.EmptyTitle,{children:e("noManagedRepositories")}),(0,t.jsx)(T.EmptyDescription,{children:e("manageDescription")})]}),(0,t.jsxs)(D.Button,{className:"mt-4",onClick:()=>Y(!0),children:[(0,t.jsx)(d.Plus,{})," ",e("addRepository")]})]}):es&&!ei?(0,t.jsxs)("div",{className:"flex items-center gap-2 py-10 text-sm text-muted-foreground",children:[(0,t.jsx)(E.Spinner,{}),e("loadingPullRequests")]}):ei?.items.length===0?(0,t.jsx)(T.Empty,{className:"border py-12",children:(0,t.jsxs)(T.EmptyHeader,{children:[(0,t.jsx)(T.EmptyTitle,{children:e("empty")}),(0,t.jsx)(T.EmptyDescription,{children:e("emptyDescription")})]})}):ei?(0,t.jsx)(F,{items:ei.items,locale:r,onMerged:()=>ea(m,y,b),onPipelineRetried:(e,t)=>{S(a=>{let r=a[er];return r?{...a,[er]:{...r,items:r.items.map(a=>a.id===e?{...a,pipelineStatus:"PENDING",pipelines:a.pipelines.map(e=>e.id===t.id?t:e)}:a)}}:a})}}):null,ei&&ei.items.length>0&&en?(0,t.jsx)(N.Alert,{variant:"destructive",children:(0,t.jsxs)(N.AlertDescription,{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("span",{children:en}),(0,t.jsxs)(D.Button,{disabled:el||!ei.endCursor,onClick:()=>void ea(m,y,b,{append:!0,cursor:ei.endCursor}),size:"sm",variant:"outline",children:[(0,t.jsx)(u.RefreshCw,{})," ",e("retryLoad")]})]})}):ei?.hasNextPage&&ei.items.length>0?(0,t.jsx)("div",{className:"flex min-h-10 items-center justify-center gap-2 text-sm text-muted-foreground",ref:X,role:"status",children:el&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(E.Spinner,{})," ",e("loadingMore")]})}):null]}):(0,t.jsxs)(T.Empty,{className:"border py-12",children:[(0,t.jsxs)(T.EmptyHeader,{children:[(0,t.jsx)(T.EmptyMedia,{variant:"icon",children:(0,t.jsx)(l.GitPullRequest,{})}),(0,t.jsx)(T.EmptyTitle,{children:e("credentialsRequired")}),(0,t.jsx)(T.EmptyDescription,{children:e("credentialsRequiredDescription")})]}),(0,t.jsx)(D.Button,{asChild:!0,className:"mt-4",children:(0,t.jsx)(O.Link,{href:"/settings",children:e("openSettings")})})]}),(0,t.jsx)(W,{onRepositoriesChanged:e=>{c(e),S({}),R(t=>e.some(e=>e.id===t)?t:e[0]?.id??"")},onSettingsChanged:e=>{n(e),S({})},open:Q,repositories:o,settings:s,setOpen:Y,tokenConfigured:!!s?.tokenConfigured},s?.updatedAt??"loading"),(0,t.jsx)(w.JiraTicketDrawer,{issueKey:i,onClose:()=>L(null)})]})}],689257)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,776639,e=>{"use strict";var t=e.i(843476),r=e.i(560964),o=e.i(964053),n=e.i(519455),i=e.i(975157);function a({...e}){return(0,t.jsx)(o.Dialog.Portal,{"data-slot":"dialog-portal",...e})}function s({className:e,...r}){return(0,t.jsx)(o.Dialog.Overlay,{className:(0,i.cn)("fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),"data-slot":"dialog-overlay",...r})}e.s(["Dialog",0,function({...e}){return(0,t.jsx)(o.Dialog.Root,{"data-slot":"dialog",...e})},"DialogContent",0,function({className:e,children:l,showCloseButton:c=!0,...d}){return(0,t.jsxs)(a,{children:[(0,t.jsx)(s,{}),(0,t.jsxs)(o.Dialog.Content,{className:(0,i.cn)("fixed top-1/2 left-1/2 z-50 grid max-h-[85dvh] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 overflow-y-auto rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),"data-slot":"dialog-content",...d,children:[l,c&&(0,t.jsx)(o.Dialog.Close,{asChild:!0,"data-slot":"dialog-close",children:(0,t.jsxs)(n.Button,{className:"absolute top-2 right-2",size:"icon-sm",variant:"ghost",children:[(0,t.jsx)(r.XIcon,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})})]})]})},"DialogDescription",0,function({className:e,...r}){return(0,t.jsx)(o.Dialog.Description,{className:(0,i.cn)("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),"data-slot":"dialog-description",...r})},"DialogFooter",0,function({className:e,showCloseButton:r=!1,children:a,...s}){return(0,t.jsxs)("div",{className:(0,i.cn)("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end",e),"data-slot":"dialog-footer",...s,children:[a,r&&(0,t.jsx)(o.Dialog.Close,{asChild:!0,children:(0,t.jsx)(n.Button,{variant:"outline",children:"Close"})})]})},"DialogHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col gap-2",e),"data-slot":"dialog-header",...r})},"DialogTitle",0,function({className:e,...r}){return(0,t.jsx)(o.Dialog.Title,{className:(0,i.cn)("font-heading text-base leading-none font-medium",e),"data-slot":"dialog-title",...r})}])},929592,e=>{"use strict";var t=e.i(843476),r=e.i(225913),o=e.i(975157);let n=(0,r.cva)("group/alert relative grid w-full gap-0.5 rounded-lg border px-2.5 py-2 text-left text-sm has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-card text-card-foreground",destructive:"bg-card text-destructive *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current"}},defaultVariants:{variant:"default"}});e.s(["Alert",0,function({className:e,variant:r,...i}){return(0,t.jsx)("div",{"data-slot":"alert",role:"alert",className:(0,o.cn)(n({variant:r}),e),...i})},"AlertDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-description",className:(0,o.cn)("text-sm text-balance text-muted-foreground md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4",e),...r})}])},515288,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Card",0,function({className:e,size:o="default",...n}){return(0,t.jsx)("div",{"data-slot":"card","data-size":o,className:(0,r.cn)("group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-xl bg-card py-(--card-spacing) text-sm text-card-foreground ring-1 ring-foreground/10 [--card-spacing:--spacing(4)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:[--card-spacing:--spacing(3)] data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",e),...n})},"CardAction",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-action",className:(0,r.cn)("col-start-2 row-span-2 row-start-1 self-start justify-self-end",e),...o})},"CardContent",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-(--card-spacing)",e),...o})},"CardDescription",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-sm text-muted-foreground",e),...o})},"CardFooter",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-footer",className:(0,r.cn)("flex items-center rounded-b-xl border-t bg-muted/50 p-(--card-spacing)",e),...o})},"CardHeader",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)",e),...o})},"CardTitle",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",e),...o})}])},758379,e=>{"use strict";let t=(0,e.i(456420).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["default",0,t])},987968,e=>{"use strict";var t=e.i(843476),r=e.i(975157),o=e.i(758379),o=o;e.s(["Spinner",0,function({className:e,...n}){return(0,t.jsx)(o.default,{"data-slot":"spinner",role:"status","aria-label":"Loading",className:(0,r.cn)("size-4 animate-spin",e),...n})}],987968)},637611,e=>{"use strict";var t,r,o=e.i(247167);function n(e){return null===e?"null":Array.isArray(e)?"array":typeof e}function i(e){return"object"===n(e)}function a(e,t){return e.length<124?e:t}var s=((t=s||{})[t.InternalServerError=4500]="InternalServerError",t[t.InternalClientError=4005]="InternalClientError",t[t.BadRequest=4400]="BadRequest",t[t.BadResponse=4004]="BadResponse",t[t.Unauthorized=4401]="Unauthorized",t[t.Forbidden=4403]="Forbidden",t[t.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",t[t.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",t[t.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",t[t.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",t[t.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",t),l=((r=l||{}).ConnectionInit="connection_init",r.ConnectionAck="connection_ack",r.Ping="ping",r.Pong="pong",r.Subscribe="subscribe",r.Next="next",r.Error="error",r.Complete="complete",r);function c(e){if(!i(e))throw Error(`Message is expected to be an object, but got ${n(e)}`);if(!e.type)throw Error("Message is missing the 'type' property");if("string"!=typeof e.type)throw Error(`Message is expects the 'type' property to be a string, but got ${n(e.type)}`);switch(e.type){case"connection_init":case"connection_ack":case"ping":case"pong":if(null!=e.payload&&!i(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${e.payload}"`);break;case"subscribe":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${n(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!i(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object, but got ${n(e.payload)}`);if("string"!=typeof e.payload.query)throw Error(`"${e.type}" message payload expects the 'query' property to be a string, but got ${n(e.payload.query)}`);if(null!=e.payload.variables&&!i(e.payload.variables))throw Error(`"${e.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${n(e.payload.variables)}`);if(null!=e.payload.operationName&&"string"!==n(e.payload.operationName))throw Error(`"${e.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${n(e.payload.operationName)}`);if(null!=e.payload.extensions&&!i(e.payload.extensions))throw Error(`"${e.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${n(e.payload.extensions)}`);break;case"next":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${n(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!i(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object, but got ${n(e.payload)}`);break;case"error":var t;if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${n(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!(Array.isArray(t=e.payload)&&t.length>0&&t.every(e=>"message"in e)))throw Error(`"${e.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(e.payload)}`);break;case"complete":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${n(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);break;default:throw Error(`Invalid message 'type' property "${e.type}"`)}return e}function d(e,t){return c(e),JSON.stringify(e,t)}class u extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function p(e){return i(e)&&"code"in e&&"reason"in e}async function f(e,t){let r=await fetch("/api/graphql",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({query:e,variables:t})}),o=await r.json();if(!r.ok||o.errors?.length||!o.data)throw Error(o.errors?.map(e=>e.message).join("; ")||`HTTP ${r.status}`);return o.data}let g=null;function y(){let e=o.default.env.NEXT_PUBLIC_AGENT_WS_URL;return e||("https:"===window.location.protocol?`wss://${window.location.host}/graphql`:`ws://${window.location.hostname}:3091/graphql`)}e.s(["controlPlaneRequest",0,f,"controlPlaneSubscriptions",0,function(){return g??=function(t){let r,o,n,i,{url:f,connectionParams:g,lazy:y=!0,onNonLazyError:h=console.error,lazyCloseTimeout:m=0,keepAlive:x=0,disablePong:b,connectionAckWaitTimeout:v=0,retryAttempts:w=5,retryWait:E=async function(e){let t=Math.pow(2,e);await new Promise(e=>setTimeout(e,1e3*t+Math.floor(2700*Math.random()+300)))},shouldRetry:C=p,on:k,webSocketImpl:S,generateID:j=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)})},jsonMessageReplacer:N,jsonMessageReviver:R}=t;if(S){var $;if(!("function"==typeof($=S)&&"constructor"in $&&"CLOSED"in $&&"CLOSING"in $&&"CONNECTING"in $&&"OPEN"in $))throw Error("Invalid WebSocket implementation provided");r=S}else r="u">typeof WebSocket?WebSocket:e.g.WebSocket||e.g.MozWebSocket;if(!r)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let A=r,O=(o={},n={on:(e,t)=>(o[e]=t,()=>{delete o[e]}),emit(e){"id"in e&&o[e.id]?.(e)}},i={connecting:k?.connecting?[k.connecting]:[],opened:k?.opened?[k.opened]:[],connected:k?.connected?[k.connected]:[],ping:k?.ping?[k.ping]:[],pong:k?.pong?[k.pong]:[],message:k?.message?[n.emit,k.message]:[n.emit],closed:k?.closed?[k.closed]:[],error:k?.error?[k.error]:[]},{onMessage:n.on,on(e,t){let r=i[e];return r.push(t),()=>{r.splice(r.indexOf(t),1)}},emit(e,...t){for(let r of[...i[e]])r(...t)}});function T(e){let t=[O.on("error",r=>{t.forEach(e=>e()),e(r)}),O.on("closed",r=>{t.forEach(e=>e()),e(r)})]}let z,P=0,I,_=!1,M=0,D=!1;async function q(){clearTimeout(I);let[e,t]=await (z??(z=new Promise((e,t)=>(async()=>{let r,o;if(_){if(await E(M),!P)return z=void 0,t({code:1e3,reason:"All Subscriptions Gone"});M++}O.emit("connecting",_);let n=new A("function"==typeof f?await f():f,"graphql-transport-ws");function i(){isFinite(x)&&x>0&&(clearTimeout(o),o=setTimeout(()=>{n.readyState===A.OPEN&&(n.send(d({type:l.Ping})),O.emit("ping",!1,void 0))},x))}T(e=>{z=void 0,clearTimeout(r),clearTimeout(o),t(e),e instanceof u&&(n.close(4499,"Terminated"),n.onerror=null,n.onclose=null)}),n.onerror=e=>O.emit("error",e),n.onclose=e=>O.emit("closed",e),n.onopen=async()=>{try{O.emit("opened",n);let e="function"==typeof g?await g():g;if(n.readyState!==A.OPEN)return;n.send(d(e?{type:l.ConnectionInit,payload:e}:{type:l.ConnectionInit},N)),isFinite(v)&&v>0&&(r=setTimeout(()=>{n.close(s.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},v)),i()}catch(e){O.emit("error",e),n.close(s.InternalClientError,a(e instanceof Error?e.message:String(e),"Internal client error"))}};let p=!1;n.onmessage=({data:t})=>{try{let o=c("string"==typeof t?JSON.parse(t,R):t);if(O.emit("message",o),"ping"===o.type||"pong"===o.type){O.emit(o.type,!0,o.payload),"pong"===o.type?i():b||(n.send(d(o.payload?{type:l.Pong,payload:o.payload}:{type:l.Pong})),O.emit("pong",!1,o.payload));return}if(p)return;if(o.type!==l.ConnectionAck)throw Error(`First message cannot be of type ${o.type}`);clearTimeout(r),p=!0,O.emit("connected",n,o.payload,_),_=!1,M=0,e([n,new Promise((e,t)=>T(t))])}catch(e){n.onmessage=null,O.emit("error",e),n.close(s.BadResponse,a(e instanceof Error?e.message:String(e),"Bad response"))}}})())));e.readyState===A.CLOSING&&await t;let r=()=>{},o=new Promise(e=>r=e);return[e,r,Promise.race([o.then(()=>{P||(isFinite(m)&&m>0?I=setTimeout(()=>{e.readyState===A.OPEN&&e.close(1e3,"Normal Closure")},m):e.close(1e3,"Normal Closure"))}),t])]}function W(e){var t;if(p(e)&&(![1e3,1001,1006,1005,1012,1013,1014].includes(t=e.code)&&t>=1e3&&t<=1999||[s.InternalServerError,s.InternalClientError,s.BadRequest,s.BadResponse,s.Unauthorized,s.SubprotocolNotAcceptable,s.SubscriberAlreadyExists,s.TooManyInitialisationRequests].includes(e.code)))throw e;if(D)return!1;if(p(e)&&1e3===e.code)return P>0;if(!w||M>=w||!C(e))throw e;return _=!0}function B(e,t){let r=j(e),o=!1,n=!1,i=()=>{P--,o=!0};return(async()=>{for(P++;;)try{let[a,s,c]=await q();if(o)return s();let u=O.onMessage(r,e=>{switch(e.type){case l.Next:return void t.next(e.payload);case l.Error:n=!0,o=!0,t.error(e.payload),i();return;case l.Complete:o=!0,i();return}});a.send(d({id:r,type:l.Subscribe,payload:e},N)),i=()=>{o||a.readyState!==A.OPEN||a.send(d({id:r,type:l.Complete},N)),P--,o=!0,s()},await c.finally(u);return}catch(e){if(!W(e))return}})().then(()=>{n||t.complete()}).catch(e=>{t.error(e)}),()=>{o||i()}}return y||(async()=>{for(P++;;)try{let[,,e]=await q();await e}catch(e){try{if(!W(e))return}catch(e){return h?.(e)}}})(),{on:O.on,subscribe:B,iterate(e){let t=[],r={done:!1,error:null,resolve:()=>{}},o=B(e,{next(e){t.push(e),r.resolve()},error(e){r.done=!0,r.error=e,r.resolve()},complete(){r.done=!0,r.resolve()}}),n=async function*(){for(;;){for(t.length||await new Promise(e=>r.resolve=e);t.length;)yield t.shift();if(r.error)throw r.error;if(r.done)return}}();return n.throw=async e=>(r.done||(r.done=!0,r.error=e,r.resolve()),{done:!0,value:void 0}),n.return=async()=>(o(),{done:!0,value:void 0}),n},async dispose(){if(D=!0,z){let[e]=await z;e.close(1e3,"Normal Closure")}},terminate(){z&&O.emit("closed",new u)}}}({url:y,lazy:!0,retryAttempts:1/0,shouldRetry:()=>!0})}],637611)},487486,e=>{"use strict";var t=e.i(843476),r=e.i(225913),o=e.i(709840),n=e.i(975157);let i=(0,r.cva)("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline"}},defaultVariants:{variant:"default"}});e.s(["Badge",0,function({className:e,variant:r="default",asChild:a=!1,...s}){let l=a?o.Slot.Root:"span";return(0,t.jsx)(l,{className:(0,n.cn)(i({variant:r}),e),"data-slot":"badge","data-variant":r,...s})}])},75830,586318,e=>{"use strict";var t=e.i(271645),r=e.i(30030);function o(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function n(...e){return t.useCallback(function(...e){return t=>{let r=!1,n=e.map(e=>{let n=o(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():o(e[t],null)}}}}(...e),e)}function i(e){let r=t.forwardRef((r,o)=>{var i;let l,f,{children:g,...y}=r,h=null,m=!1,x=[];c(g)&&"function"==typeof p&&(g=p(g._payload)),t.Children.forEach(g,e=>{var r;if(r=e,t.isValidElement(r)&&"function"==typeof r.type&&"__radixId"in r.type&&r.type.__radixId===a){m=!0;let t="child"in e.props?e.props.child:e.props.children;c(t)&&"function"==typeof p&&(t=p(t._payload)),h=s(e,t),x.push(h?.props?.children)}else x.push(e)}),h?h=t.cloneElement(h,void 0,x):!m&&1===t.Children.count(g)&&t.isValidElement(g)&&(h=g);let b=h?(i=h,(f=(l=Object.getOwnPropertyDescriptor(i.props,"ref")?.get)&&"isReactWarning"in l&&l.isReactWarning)?i.ref:(f=(l=Object.getOwnPropertyDescriptor(i,"ref")?.get)&&"isReactWarning"in l&&l.isReactWarning)?i.props.ref:i.props.ref||i.ref):void 0,v=n(o,b);if(!h){if(g||0===g)throw Error(m?u(e):d(e));return g}let w=function(e,t){let r={...t};for(let o in t){let n=e[o],i=t[o];/^on[A-Z]/.test(o)?n&&i?r[o]=(...e)=>{let t=i(...e);return n(...e),t}:n&&(r[o]=n):"style"===o?r[o]={...n,...i}:"className"===o&&(r[o]=[n,i].filter(Boolean).join(" "))}return{...e,...r}}(y,h.props??{});return h.type!==t.Fragment&&(w.ref=o?v:b),t.cloneElement(h,w)});return r.displayName=`${e}.Slot`,r}var a=Symbol.for("radix.slottable"),s=(e,r)=>{if("child"in e.props){let r=e.props.child;return t.isValidElement(r)?t.cloneElement(r,void 0,e.props.children(r.props.children)):null}return t.isValidElement(r)?r:null},l=Symbol.for("react.lazy");function c(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===l&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var d=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,u=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,p=t[" use ".trim().toString()],f=e.i(843476),g=new WeakMap;function y(e,t){var r,o;let n,i,a;if("at"in Array.prototype)return Array.prototype.at.call(e,t);let s=(r=e,o=t,n=r.length,(a=(i=h(o))>=0?i:n+i)<0||a>=n?-1:a);return -1===s?void 0:e[s]}function h(e){return e!=e||0===e?0:Math.trunc(e)}(class e extends Map{#e;constructor(e){super(e),this.#e=[...super.keys()],g.set(this,!0)}set(e,t){return g.get(this)&&(this.has(e)?this.#e[this.#e.indexOf(e)]=e:this.#e.push(e)),super.set(e,t),this}insert(e,t,r){let o,n=this.has(t),i=this.#e.length,a=h(e),s=a>=0?a:i+a,l=s<0||s>=i?-1:s;if(l===this.size||n&&l===this.size-1||-1===l)return this.set(t,r),this;let c=this.size+ +!n;a<0&&s++;let d=[...this.#e],u=!1;for(let e=s;e<c;e++)if(s===e){let i=d[e];d[e]===t&&(i=d[e+1]),n&&this.delete(t),o=this.get(i),this.set(t,r)}else{u||d[e-1]!==t||(u=!0);let r=d[u?e:e-1],n=o;o=this.get(r),this.delete(r),this.set(r,n)}return this}with(t,r,o){let n=new e(this);return n.insert(t,r,o),n}before(e){let t=this.#e.indexOf(e)-1;if(!(t<0))return this.entryAt(t)}setBefore(e,t,r){let o=this.#e.indexOf(e);return -1===o?this:this.insert(o,t,r)}after(e){let t=this.#e.indexOf(e);if(-1!==(t=-1===t||t===this.size-1?-1:t+1))return this.entryAt(t)}setAfter(e,t,r){let o=this.#e.indexOf(e);return -1===o?this:this.insert(o+1,t,r)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return this.#e=[],super.clear()}delete(e){let t=super.delete(e);return t&&this.#e.splice(this.#e.indexOf(e),1),t}deleteAt(e){let t=this.keyAt(e);return void 0!==t&&this.delete(t)}at(e){let t=y(this.#e,e);if(void 0!==t)return this.get(t)}entryAt(e){let t=y(this.#e,e);if(void 0!==t)return[t,this.get(t)]}indexOf(e){return this.#e.indexOf(e)}keyAt(e){return y(this.#e,e)}from(e,t){let r=this.indexOf(e);if(-1===r)return;let o=r+t;return o<0&&(o=0),o>=this.size&&(o=this.size-1),this.at(o)}keyFrom(e,t){let r=this.indexOf(e);if(-1===r)return;let o=r+t;return o<0&&(o=0),o>=this.size&&(o=this.size-1),this.keyAt(o)}find(e,t){let r=0;for(let o of this){if(Reflect.apply(e,t,[o,r,this]))return o;r++}}findIndex(e,t){let r=0;for(let o of this){if(Reflect.apply(e,t,[o,r,this]))return r;r++}return -1}filter(t,r){let o=[],n=0;for(let e of this)Reflect.apply(t,r,[e,n,this])&&o.push(e),n++;return new e(o)}map(t,r){let o=[],n=0;for(let e of this)o.push([e[0],Reflect.apply(t,r,[e,n,this])]),n++;return new e(o)}reduce(...e){let[t,r]=e,o=0,n=r??this.at(0);for(let r of this)n=0===o&&1===e.length?r:Reflect.apply(t,this,[n,r,o,this]),o++;return n}reduceRight(...e){let[t,r]=e,o=r??this.at(-1);for(let r=this.size-1;r>=0;r--){let n=this.at(r);o=r===this.size-1&&1===e.length?n:Reflect.apply(t,this,[o,n,r,this])}return o}toSorted(t){return new e([...this.entries()].sort(t))}toReversed(){let t=new e;for(let e=this.size-1;e>=0;e--){let r=this.keyAt(e),o=this.get(r);t.set(r,o)}return t}toSpliced(...t){let r=[...this.entries()];return r.splice(...t),new e(r)}slice(t,r){let o=new e,n=this.size-1;if(void 0===t)return o;t<0&&(t+=this.size),void 0!==r&&r>0&&(n=r-1);for(let e=t;e<=n;e++){let t=this.keyAt(e),r=this.get(t);o.set(t,r)}return o}every(e,t){let r=0;for(let o of this){if(!Reflect.apply(e,t,[o,r,this]))return!1;r++}return!0}some(e,t){let r=0;for(let o of this){if(Reflect.apply(e,t,[o,r,this]))return!0;r++}return!1}}),e.s(["createCollection",0,function(e){let o=e+"CollectionProvider",[a,s]=(0,r.createContextScope)(o),[l,c]=a(o,{collectionRef:{current:null},itemMap:new Map}),d=e=>{let{scope:r,children:o}=e,n=t.useRef(null),i=t.useRef(new Map).current;return(0,f.jsx)(l,{scope:r,itemMap:i,collectionRef:n,children:o})};d.displayName=o;let u=e+"CollectionSlot",p=i(u),g=t.forwardRef((e,t)=>{let{scope:r,children:o}=e,i=n(t,c(u,r).collectionRef);return(0,f.jsx)(p,{ref:i,children:o})});g.displayName=u;let y=e+"CollectionItemSlot",h="data-radix-collection-item",m=i(y),x=t.forwardRef((e,r)=>{let{scope:o,children:i,...a}=e,s=t.useRef(null),l=n(r,s),d=c(y,o);return t.useEffect(()=>(d.itemMap.set(s,{ref:s,...a}),()=>void d.itemMap.delete(s))),(0,f.jsx)(m,{...{[h]:""},ref:l,children:i})});return x.displayName=y,[{Provider:d,Slot:g,ItemSlot:x},function(r){let o=c(e+"CollectionConsumer",r);return t.useCallback(()=>{let e=o.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${h}]`));return Array.from(o.itemMap.values()).sort((e,r)=>t.indexOf(e.ref.current)-t.indexOf(r.ref.current))},[o.collectionRef,o.itemMap])},s]}],75830);var m=t.createContext(void 0);e.s(["useDirection",0,function(e){let r=t.useContext(m);return e||r||"ltr"}],586318)},643957,e=>{"use strict";let t=(0,e.i(456420).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",0,t])},999682,e=>{"use strict";var t=e.i(271645);e.s(["usePrevious",0,function(e){let r=t.useRef({value:e,previous:e});return t.useMemo(()=>(r.current.value!==e&&(r.current.previous=r.current.value,r.current.value=e),r.current.previous),[e])}])},593698,e=>{"use strict";var t=e.i(643957);e.s(["CheckIcon",()=>t.default])},110204,e=>{"use strict";var t=e.i(843476),r=e.i(271645);function o(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}e.i(174080);var n=Symbol.for("radix.slottable"),i=Symbol.for("react.lazy");function a(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===i&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var s=r[" use ".trim().toString()],l=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,i)=>{var l;let c,d=(l=`Primitive.${i}`,(c=r.forwardRef((e,t)=>{var i;let c,d,{children:u,...p}=e,f=null,g=!1,y=[];a(u)&&"function"==typeof s&&(u=s(u._payload)),r.Children.forEach(u,e=>{var t;if(t=e,r.isValidElement(t)&&"function"==typeof t.type&&"__radixId"in t.type&&t.type.__radixId===n){g=!0;let t="child"in e.props?e.props.child:e.props.children;a(t)&&"function"==typeof s&&(t=s(t._payload)),f=((e,t)=>{if("child"in e.props){let t=e.props.child;return r.isValidElement(t)?r.cloneElement(t,void 0,e.props.children(t.props.children)):null}return r.isValidElement(t)?t:null})(e,t),y.push(f?.props?.children)}else y.push(e)}),f?f=r.cloneElement(f,void 0,y):!g&&1===r.Children.count(u)&&r.isValidElement(u)&&(f=u);let h=f?(i=f,(d=(c=Object.getOwnPropertyDescriptor(i.props,"ref")?.get)&&"isReactWarning"in c&&c.isReactWarning)?i.ref:(d=(c=Object.getOwnPropertyDescriptor(i,"ref")?.get)&&"isReactWarning"in c&&c.isReactWarning)?i.props.ref:i.props.ref||i.ref):void 0,m=function(...e){return r.useCallback(function(...e){return t=>{let r=!1,n=e.map(e=>{let n=o(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():o(e[t],null)}}}}(...e),e)}(t,h);if(!f){if(u||0===u){let e,t;throw Error(g?(e=l,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=l,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return u}let x=function(e,t){let r={...t};for(let o in t){let n=e[o],i=t[o];/^on[A-Z]/.test(o)?n&&i?r[o]=(...e)=>{let t=i(...e);return n(...e),t}:n&&(r[o]=n):"style"===o?r[o]={...n,...i}:"className"===o&&(r[o]=[n,i].filter(Boolean).join(" "))}return{...e,...r}}(p,f.props??{});return f.type!==r.Fragment&&(x.ref=t?m:h),r.cloneElement(f,x)})).displayName=`${l}.Slot`,c),u=r.forwardRef((e,r)=>{let{asChild:o,...n}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(o?d:i,{...n,ref:r})});return u.displayName=`Primitive.${i}`,{...e,[i]:u}},{}),c=r.forwardRef((e,r)=>(0,t.jsx)(l.label,{...e,ref:r,onMouseDown:t=>{t.target.closest("button, input, select, textarea")||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));c.displayName="Label",e.s(["Label",0,c,"Root",0,c],973741);var d=e.i(973741),d=d,u=e.i(975157);e.s(["Label",0,function({className:e,...r}){return(0,t.jsx)(d.Root,{"data-slot":"label",className:(0,u.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",e),...r})}],110204)},624687,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Textarea",0,function({className:e,...o}){return(0,t.jsx)("textarea",{className:(0,r.cn)("min-h-24 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50",e),...o})}])}]);
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,508734,e=>{"use strict";let t=(0,e.i(456420).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"}]]);e.s(["Copy",0,t],508734)},784774,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Table",0,function({className:e,containerClassName:n,...i}){return(0,t.jsx)("div",{className:(0,r.cn)("w-full overflow-x-auto",n),children:(0,t.jsx)("table",{className:(0,r.cn)("w-full caption-bottom text-sm",e),...i})})},"TableBody",0,function({className:e,...n}){return(0,t.jsx)("tbody",{className:(0,r.cn)("divide-y",e),...n})},"TableCell",0,function({className:e,...n}){return(0,t.jsx)("td",{className:(0,r.cn)("whitespace-nowrap px-3 py-3 align-middle",e),...n})},"TableFooter",0,function({className:e,...n}){return(0,t.jsx)("tfoot",{className:(0,r.cn)("border-t bg-muted/50 font-medium",e),...n})},"TableHead",0,function({className:e,...n}){return(0,t.jsx)("th",{className:(0,r.cn)("h-10 whitespace-nowrap px-3 text-left align-middle text-xs font-medium text-muted-foreground",e),...n})},"TableHeader",0,function({className:e,...n}){return(0,t.jsx)("thead",{className:(0,r.cn)("border-b",e),...n})},"TableRow",0,function({className:e,...n}){return(0,t.jsx)("tr",{className:(0,r.cn)("transition-colors hover:bg-muted/40",e),...n})}])},689664,e=>{"use strict";var t=e.i(643957);e.s(["Check",()=>t.default])},630299,e=>{"use strict";let t=(0,e.i(456420).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["default",0,t])},986253,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["default",0,t])},716327,e=>{"use strict";var t=e.i(26495);e.s(["ChevronDown",()=>t.default])},867927,e=>{"use strict";var t=e.i(986253);e.s(["ChevronRight",()=>t.default])},482022,e=>{"use strict";let t=(0,e.i(456420).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",0,t],482022)},741120,e=>{"use strict";let t=(0,e.i(456420).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",0,t],741120)},82612,e=>{"use strict";var t=e.i(843476),r=e.i(225913),n=e.i(975157);let i=(0,r.cva)("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",icon:"flex size-8 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-4"}},defaultVariants:{variant:"default"}});e.s(["Empty",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty",className:(0,n.cn)("flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-xl border-dashed p-6 text-center text-balance",e),...r})},"EmptyDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-description",className:(0,n.cn)("text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",e),...r})},"EmptyHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-header",className:(0,n.cn)("flex max-w-sm flex-col items-center gap-2",e),...r})},"EmptyMedia",0,function({className:e,variant:r="default",...s}){return(0,t.jsx)("div",{"data-slot":"empty-icon","data-variant":r,className:(0,n.cn)(i({variant:r,className:e})),...s})},"EmptyTitle",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-title",className:(0,n.cn)("font-heading text-sm font-medium tracking-tight",e),...r})}])},462777,e=>{"use strict";async function t(e){if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(e);return}catch{}let t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.append(t),t.select();let r=document.execCommand("copy");if(t.remove(),!r)throw Error("Copy is not supported by this browser")}e.s(["copyText",0,t,"createClientId",0,function(){try{if(globalThis.crypto?.randomUUID)return globalThis.crypto.randomUUID()}catch{}if(globalThis.crypto?.getRandomValues)try{let e=globalThis.crypto.getRandomValues(new Uint8Array(16));return Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")}catch{}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`}])},842727,e=>{"use strict";var t=e.i(271645);function r(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),!1===n||!r||!r.defaultPrevented)return t?.(r)}}"u">typeof window&&window.document&&window.document.createElement;var n=e.i(75830);function i(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function s(...e){return t.useCallback(function(...e){return t=>{let r=!1,n=e.map(e=>{let n=i(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():i(e[t],null)}}}}(...e),e)}var a=e.i(30030),l=e.i(610772);e.i(174080);var o=Symbol.for("radix.slottable"),c=Symbol.for("react.lazy");function d(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===c&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var u=t[" use ".trim().toString()],m=e.i(843476),p=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,r)=>{var n;let i,a=(n=`Primitive.${r}`,(i=t.forwardRef((e,r)=>{var i;let a,l,{children:c,...m}=e,p=null,f=!1,h=[];d(c)&&"function"==typeof u&&(c=u(c._payload)),t.Children.forEach(c,e=>{var r;if(r=e,t.isValidElement(r)&&"function"==typeof r.type&&"__radixId"in r.type&&r.type.__radixId===o){f=!0;let r="child"in e.props?e.props.child:e.props.children;d(r)&&"function"==typeof u&&(r=u(r._payload)),p=((e,r)=>{if("child"in e.props){let r=e.props.child;return t.isValidElement(r)?t.cloneElement(r,void 0,e.props.children(r.props.children)):null}return t.isValidElement(r)?r:null})(e,r),h.push(p?.props?.children)}else h.push(e)}),p?p=t.cloneElement(p,void 0,h):!f&&1===t.Children.count(c)&&t.isValidElement(c)&&(p=c);let x=p?(i=p,(l=(a=Object.getOwnPropertyDescriptor(i.props,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?i.ref:(l=(a=Object.getOwnPropertyDescriptor(i,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?i.props.ref:i.props.ref||i.ref):void 0,g=s(r,x);if(!p){if(c||0===c){let e,t;throw Error(f?(e=n,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=n,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return c}let y=function(e,t){let r={...t};for(let n in t){let i=e[n],s=t[n];/^on[A-Z]/.test(n)?i&&s?r[n]=(...e)=>{let t=s(...e);return i(...e),t}:i&&(r[n]=i):"style"===n?r[n]={...i,...s}:"className"===n&&(r[n]=[i,s].filter(Boolean).join(" "))}return{...e,...r}}(m,p.props??{});return p.type!==t.Fragment&&(y.ref=r?g:x),t.cloneElement(p,y)})).displayName=`${n}.Slot`,i),l=t.forwardRef((e,t)=>{let{asChild:n,...i}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,m.jsx)(n?a:r,{...i,ref:t})});return l.displayName=`Primitive.${r}`,{...e,[r]:l}},{}),f=e.i(30207),h=globalThis?.document?t.useLayoutEffect:()=>{};t[" useEffectEvent ".trim().toString()],t[" useInsertionEffect ".trim().toString()];var x=t[" useInsertionEffect ".trim().toString()]||h;Symbol("RADIX:SYNC_STATE");var g=e.i(586318),y=!1,v=t[" useSyncExternalStore ".trim().toString()];function b(){return()=>{}}var j="function"==typeof v?function(){return v(b,()=>!0,()=>!1)}:function(){let[e,r]=t.useState(y);return t.useEffect(()=>{y||(y=!0,r(!0))},[]),e},w="rovingFocusGroup.onEntryFocus",k={bubbles:!1,cancelable:!0},T="RovingFocusGroup",[R,S,N]=(0,n.createCollection)(T),[C,I]=(0,a.createContextScope)(T,[N]),[E,D]=C(T),A=t.forwardRef((e,t)=>(0,m.jsx)(R.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,m.jsx)(R.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,m.jsx)($,{...e,ref:t})})}));A.displayName=T;var $=t.forwardRef((e,n)=>{let{__scopeRovingFocusGroup:i,orientation:a,loop:l=!1,dir:o,currentTabStopId:c,defaultCurrentTabStopId:d,onCurrentTabStopIdChange:u,onEntryFocus:h,preventScrollOnEntryFocus:y=!1,...v}=e,b=t.useRef(null),j=s(n,b),R=(0,g.useDirection)(o),[N,C]=function({prop:e,defaultProp:r,onChange:n=()=>{},caller:i}){let[s,a,l]=function({defaultProp:e,onChange:r}){let[n,i]=t.useState(e),s=t.useRef(n),a=t.useRef(r);return x(()=>{a.current=r},[r]),t.useEffect(()=>{s.current!==n&&(a.current?.(n),s.current=n)},[n,s]),[n,i,a]}({defaultProp:r,onChange:n}),o=void 0!==e,c=o?e:s;{let r=t.useRef(void 0!==e);t.useEffect(()=>{let e=r.current;if(e!==o){let t=o?"controlled":"uncontrolled";console.warn(`${i} is changing from ${e?"controlled":"uncontrolled"} to ${t}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}r.current=o},[o,i])}return[c,t.useCallback(t=>{if(o){let r="function"==typeof t?t(e):t;r!==e&&l.current?.(r)}else a(t)},[o,e,a,l])]}({prop:c,defaultProp:d??null,onChange:u,caller:T}),[I,D]=t.useState(!1),A=(0,f.useCallbackRef)(h),$=S(i),U=t.useRef(!1),[M,P]=t.useState(0);return t.useEffect(()=>{let e=b.current;if(e)return e.addEventListener(w,A),()=>e.removeEventListener(w,A)},[A]),(0,m.jsx)(E,{scope:i,orientation:a,dir:R,loop:l,currentTabStopId:N,onItemFocus:t.useCallback(e=>C(e),[C]),onItemShiftTab:t.useCallback(()=>D(!0),[]),onFocusableItemAdd:t.useCallback(()=>P(e=>e+1),[]),onFocusableItemRemove:t.useCallback(()=>P(e=>e-1),[]),children:(0,m.jsx)(p.div,{tabIndex:I||0===M?-1:0,"data-orientation":a,...v,ref:j,style:{outline:"none",...e.style},onMouseDown:r(e.onMouseDown,()=>{U.current=!0}),onFocus:r(e.onFocus,e=>{let t=!U.current;if(e.target===e.currentTarget&&t&&!I){let t=new CustomEvent(w,k);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=$().filter(e=>e.focusable);L([e.find(e=>e.active),e.find(e=>e.id===N),...e].filter(Boolean).map(e=>e.ref.current),y)}}U.current=!1}),onBlur:r(e.onBlur,()=>D(!1))})})}),U="RovingFocusGroupItem",M=t.forwardRef((e,n)=>{let{__scopeRovingFocusGroup:i,focusable:s=!0,active:a=!1,tabStopId:o,children:c,...d}=e,u=(0,l.useId)(),f=o||u,x=D(U,i),g=x.currentTabStopId===f,y=S(i),{onFocusableItemAdd:v,onFocusableItemRemove:b,currentTabStopId:w}=x,k=j();return h(()=>{if(k&&s)return v(),()=>b()},[k,s,v,b]),t.useEffect(()=>{if(!k&&s)return v(),()=>b()},[k,s,v,b]),(0,m.jsx)(R.ItemSlot,{scope:i,id:f,focusable:s,active:a,children:(0,m.jsx)(p.span,{tabIndex:g?0:-1,"data-orientation":x.orientation,...d,ref:n,onMouseDown:r(e.onMouseDown,e=>{s?x.onItemFocus(f):e.preventDefault()}),onFocus:r(e.onFocus,()=>x.onItemFocus(f)),onKeyDown:r(e.onKeyDown,e=>{if("Tab"===e.key&&e.shiftKey)return void x.onItemShiftTab();if(e.target!==e.currentTarget)return;let t=function(e,t,r){var n;let i=(n=e.key,"rtl"!==r?n:"ArrowLeft"===n?"ArrowRight":"ArrowRight"===n?"ArrowLeft":n);if(!("vertical"===t&&["ArrowLeft","ArrowRight"].includes(i))&&!("horizontal"===t&&["ArrowUp","ArrowDown"].includes(i)))return P[i]}(e,x.orientation,x.dir);if(void 0!==t){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let i=y().filter(e=>e.focusable).map(e=>e.ref.current);if("last"===t)i.reverse();else if("prev"===t||"next"===t){var r,n;"prev"===t&&i.reverse();let s=i.indexOf(e.currentTarget);i=x.loop?(r=i,n=s+1,r.map((e,t)=>r[(n+t)%r.length])):i.slice(s+1)}setTimeout(()=>L(i))}}),children:"function"==typeof c?c({isCurrentTabStop:g,hasTabStop:null!=w}):c})})});M.displayName=U;var P={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function L(e,t=!1){let r=document.activeElement;for(let n of e)if(n===r||(n.focus({preventScroll:t}),document.activeElement!==r))return}e.s(["Item",0,M,"Root",0,A,"createRovingFocusGroupScope",0,I],842727)},560972,e=>{"use strict";let t=(0,e.i(456420).default)("ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);e.s(["default",0,t])},356505,853138,e=>{"use strict";var t=e.i(843476),r=e.i(456420);let n=(0,r.default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",0,n],853138);var i=e.i(482022),s=e.i(269846);let a=(0,r.default)("maximize-2",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]]);var l=e.i(948148),o=e.i(271645),c=e.i(653090),d=e.i(278015),u=e.i(762279),m=e.i(456743),p=e.i(929592),f=e.i(487486),h=e.i(519455),x=e.i(515288),g=e.i(906197),y=e.i(980376),v=e.i(987968),b=e.i(520133),j=e.i(637611),w=e.i(741725),k=e.i(467511);let T={highest:"border-red-500/30 bg-red-500/10 text-red-700 dark:text-red-300",high:"border-orange-500/30 bg-orange-500/10 text-orange-700 dark:text-orange-300",medium:"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300",low:"border-blue-500/30 bg-blue-500/10 text-blue-700 dark:text-blue-300",lowest:"border-slate-500/30 bg-slate-500/10 text-slate-700 dark:text-slate-300"};function R(e){return e?new Date(e).toLocaleString():"—"}function S({ticket:e}){let r=(0,l.useTranslations)("jiraTickets"),n=[[r("assignee"),(0,t.jsx)(c.JiraUser,{avatarUrl:e.assigneeAvatarUrl,name:e.assignee??r("unassigned")},"assignee")],[r("reporter"),e.reporter?(0,t.jsx)(c.JiraUser,{avatarUrl:e.reporter.avatarUrl,name:e.reporter.displayName},"reporter"):"—"],[r("created"),R(e.createdAt)],[r("updated"),R(e.updatedAt)],[r("due"),R(e.dueAt)],[r("resolved"),R(e.resolvedAt)]];return(0,t.jsx)("dl",{className:"grid gap-3 rounded-lg bg-muted/50 p-4 text-sm sm:grid-cols-2",children:n.map(([e,r])=>(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{className:"text-xs text-muted-foreground",children:e}),(0,t.jsx)("dd",{className:"mt-0.5 font-medium",children:r})]},e))})}function N({label:e,values:r}){return(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{className:"text-muted-foreground",children:e}),(0,t.jsx)("dd",{className:"mt-1",children:r.join(", ")})]})}e.s(["JiraTicketDrawer",0,function({issueKey:e,onClose:r,onTicketChange:c}){let R=(0,l.useTranslations)("jiraTickets"),[C,I]=(0,o.useState)(null),[E,D]=(0,o.useState)(null),[A,$]=(0,o.useState)(!1),[U,M]=(0,o.useState)(!1);(0,o.useEffect)(()=>{if(!e){let e=window.setTimeout(()=>I(null),0);return()=>window.clearTimeout(e)}let t=window.setTimeout(async()=>{$(!0);try{let t=await (0,j.controlPlaneRequest)(`query JiraTicket($issueKey: ID!) { jiraTicket(issueKey: $issueKey) { ${k.JIRA_TICKET_DETAIL_FIELDS} } }`,{issueKey:e});I(t.jiraTicket),D(null)}catch(e){D(e instanceof Error?e.message:String(e))}finally{$(!1)}},0);return()=>window.clearTimeout(t)},[e]);let P=e=>{I(e),c?.(e)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(y.Sheet,{onOpenChange:e=>{e||r()},open:!!e,children:(0,t.jsxs)(y.SheetContent,{className:"w-[min(48rem,95vw)] overflow-y-auto sm:max-w-3xl",children:[(0,t.jsxs)(y.SheetHeader,{className:"border-b pr-12",children:[(0,t.jsx)(y.SheetTitle,{children:C?.key??e??R("ticket")}),(0,t.jsx)(y.SheetDescription,{children:C?.summary??R("loadingTicket")})]}),(0,t.jsxs)("div",{className:"space-y-6 px-4 pb-6",children:[A&&(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(v.Spinner,{}),R("loadingTicket")]}),E&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:E})}),C&&(0,t.jsxs)(t.Fragment,{children:[(C.cache.stale||C.commentsCache.stale)&&(0,t.jsxs)(p.Alert,{className:"border-amber-500/30 bg-amber-500/10",children:[(0,t.jsx)(n,{}),(0,t.jsx)(p.AlertDescription,{children:R("staleTicket")})]}),(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsx)(f.Badge,{children:C.status}),C.issueType&&(0,t.jsx)(f.Badge,{children:C.issueType}),C.priority&&(0,t.jsx)(f.Badge,{className:T[C.priority.trim().toLowerCase()],children:C.priority})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsxs)(h.Button,{onClick:()=>M(!0),size:"sm",variant:"outline",children:[(0,t.jsx)(s.GitBranch,{})," ",R("worktreeAction")]}),(0,t.jsx)(h.Button,{asChild:!0,size:"sm",variant:"outline",children:(0,t.jsxs)(b.Link,{href:`/jira/tickets/${encodeURIComponent(C.key)}`,children:[(0,t.jsx)(a,{})," ",R("openFullDetails")]})}),(0,t.jsx)(h.Button,{asChild:!0,size:"sm",variant:"outline",children:(0,t.jsxs)("a",{href:C.jiraUrl,rel:"noreferrer",target:"_blank",children:[(0,t.jsx)(i.ExternalLink,{})," ",R("openInJira")]})})]})]}),(0,t.jsx)(u.JiraTicketActions,{onTicketChange:P,ticket:C}),(0,t.jsx)(S,{ticket:C}),(0,t.jsx)("section",{children:(0,t.jsx)(x.Card,{size:"sm",children:(0,t.jsx)(x.CardContent,{children:(0,t.jsx)(d.JiraRichTextBlock,{content:C.descriptionContent,header:(0,t.jsx)("h3",{className:"font-semibold",children:R("descriptionTitle")}),headerClassName:"border-b pb-2",value:C.description})})})}),(C.labels.length>0||C.components.length>0||C.fixVersions.length>0||C.sprintNames.length>0)&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h3",{className:"mb-2 font-semibold",children:R("classification")}),(0,t.jsxs)("dl",{className:"grid gap-3 text-sm sm:grid-cols-2",children:[C.labels.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{className:"text-muted-foreground",children:R("labels")}),(0,t.jsx)("dd",{className:"mt-1 flex flex-wrap gap-1",children:C.labels.map(e=>(0,t.jsx)(f.Badge,{children:e},e))})]}),C.components.length>0&&(0,t.jsx)(N,{label:R("components"),values:C.components.map(e=>e.name)}),C.fixVersions.length>0&&(0,t.jsx)(N,{label:R("fixVersions"),values:C.fixVersions.map(e=>e.name)}),C.sprintNames.length>0&&(0,t.jsx)(N,{label:R("sprints"),values:C.sprintNames})]})]}),(C.parent||C.subtasks.length>0||C.issueLinks.length>0)&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h3",{className:"mb-2 font-semibold",children:R("relatedIssues")}),(0,t.jsx)(g.ItemGroup,{className:"gap-2",children:[...C.parent?[C.parent]:[],...C.subtasks,...C.issueLinks].map((e,r)=>(0,t.jsx)(g.Item,{asChild:!0,size:"xs",variant:"outline",children:(0,t.jsxs)(b.Link,{href:`/jira/tickets/${encodeURIComponent(e.key)}`,children:[(0,t.jsxs)(g.ItemContent,{children:[(0,t.jsxs)(g.ItemTitle,{className:"leading-tight",children:[e.key," · ",e.summary]}),(0,t.jsx)(g.ItemDescription,{className:"leading-tight",children:e.relationship})]}),(0,t.jsx)(g.ItemActions,{children:e.status&&(0,t.jsx)(f.Badge,{children:e.status})})]})},`${e.key}-${r}`))})]}),C.attachments.length>0&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h3",{className:"mb-2 font-semibold",children:R("attachments")}),(0,t.jsx)(g.ItemGroup,{className:"gap-2",children:C.attachments.map(e=>(0,t.jsx)(g.Item,{asChild:!0,variant:"outline",children:(0,t.jsxs)("a",{href:e.contentUrl??"#",rel:"noreferrer",target:"_blank",children:[(0,t.jsx)(g.ItemContent,{children:(0,t.jsx)(g.ItemTitle,{children:e.filename})}),(0,t.jsx)(g.ItemActions,{className:"text-xs text-muted-foreground",children:e.size?`${Math.round(e.size/1024)} KB`:""})]})},e.id))})]}),(0,t.jsx)(m.JiraTicketComments,{onTicketChange:P,ticket:C})]})]})]})}),C&&(0,t.jsx)(w.TicketWorktreeDialog,{issueKey:C.key,onOpenChange:M,open:U})]})}],356505)},948812,e=>{"use strict";function t(e){return`${e.repositoryNameWithOwner}#${e.number}`}e.s(["pullRequestCommentsHref",0,function(e){return`/comments?pullRequest=${encodeURIComponent(t(e))}`},"pullRequestDetailHref",0,function(e){let[t="",r=""]=e.repositoryNameWithOwner.split("/");return`/pull-requests/${encodeURIComponent(t)}/${encodeURIComponent(r)}/${e.number}`},"pullRequestKey",0,t])},647776,395925,e=>{"use strict";var t=e.i(843476),r=e.i(716327),n=e.i(482022);let i=(0,e.i(456420).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);e.s(["RotateCcw",0,i],395925);var s=e.i(948148),a=e.i(271645),l=e.i(487486),o=e.i(519455),c=e.i(755146),d=e.i(987968),u=e.i(746798),m=e.i(637611);function p({pipeline:e,repositoryId:r,onPipelineRetried:n,onError:l}){let c=(0,s.useTranslations)("pullRequests"),[f,h]=(0,a.useState)(!1),x=async t=>{if(t.stopPropagation(),e.canRetry&&e.checkSuiteId){h(!0);try{let t=await (0,m.controlPlaneRequest)(`mutation RetryGitHubPipeline(
|
|
2
|
-
$repositoryId: ID!
|
|
3
|
-
$checkSuiteId: ID!
|
|
4
|
-
) {
|
|
5
|
-
retryGitHubPipeline(
|
|
6
|
-
repositoryId: $repositoryId
|
|
7
|
-
checkSuiteId: $checkSuiteId
|
|
8
|
-
) { id name status url checkSuiteId canRetry retryUnavailableReason jobs { id name status url canRetry retryUnavailableReason steps { number name status } } }
|
|
9
|
-
}`,{repositoryId:r,checkSuiteId:e.checkSuiteId});n?.(t.retryGitHubPipeline),l?.(null)}catch(e){l?.(e instanceof Error?e.message:String(e))}finally{h(!1)}}},g=(0,t.jsxs)(o.Button,{disabled:f||!e.canRetry||!e.checkSuiteId,onClick:e=>void x(e),size:"sm",variant:"outline",children:[f?(0,t.jsx)(d.Spinner,{}):(0,t.jsx)(i,{}),c(f?"retrying":"retry")]});if(!e.retryUnavailableReason||f)return g;let y=c(`retryUnavailable.${e.retryUnavailableReason}`);return(0,t.jsx)(u.TooltipProvider,{children:(0,t.jsxs)(u.Tooltip,{children:[(0,t.jsx)(u.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{"aria-label":y,className:"inline-flex",tabIndex:0,children:g})}),(0,t.jsx)(u.TooltipContent,{children:y})]})})}function f(e){return"SUCCESS"===e?"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":"PENDING"===e||"EXPECTED"===e||"QUEUED"===e||"IN_PROGRESS"===e||"ACTION_REQUIRED"===e?"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300":"FAILURE"===e||"ERROR"===e||"CANCELLED"===e||"STALE"===e||"STARTUP_FAILURE"===e||"TIMED_OUT"===e?"border-red-500/30 bg-red-500/10 text-red-700 dark:text-red-300":"border-slate-500/30 bg-slate-500/10 text-slate-700 dark:text-slate-300"}e.s(["PipelineMenu",0,function({pipelineStatus:e,pipelines:i,repositoryId:d,onPipelineRetried:u}){let m=(0,s.useTranslations)("pullRequests"),[h,x]=(0,a.useState)(null),g=e=>e.stopPropagation();return(0,t.jsxs)(c.DropdownMenu,{children:[(0,t.jsx)(c.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsxs)(o.Button,{className:`h-5 rounded-full px-2 py-0.5 text-xs ${f(e)}`,onClick:g,variant:"outline",children:[m(`pipelineStates.${e}`),(0,t.jsx)(r.ChevronDown,{className:"size-3"})]})}),(0,t.jsxs)(c.DropdownMenuContent,{align:"end",className:"w-80",onClick:g,children:[(0,t.jsx)(c.DropdownMenuLabel,{children:m("pipelineMenuTitle")}),(0,t.jsx)(c.DropdownMenuSeparator,{}),h&&(0,t.jsx)("p",{className:"px-2 py-1.5 text-xs text-destructive",children:h}),0===i.length?(0,t.jsx)("p",{className:"px-2 py-3 text-sm text-muted-foreground",children:m("noPipelines")}):(0,t.jsx)("div",{className:"space-y-1 p-1",children:i.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 rounded-md px-2 py-2 hover:bg-muted",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[e.url?(0,t.jsxs)("a",{className:"flex min-w-0 items-center gap-1 text-sm font-medium hover:underline",href:e.url,rel:"noreferrer",target:"_blank",children:[(0,t.jsx)("span",{className:"truncate",children:e.name}),(0,t.jsx)(n.ExternalLink,{className:"size-3 shrink-0"})]}):(0,t.jsx)("p",{className:"truncate text-sm font-medium",children:e.name}),(0,t.jsx)(l.Badge,{className:`mt-1 ${f(e.status)}`,children:m(`pipelineStates.${e.status}`)})]}),e.checkSuiteId&&(0,t.jsx)(p,{onError:x,onPipelineRetried:u,pipeline:e,repositoryId:d})]},e.id))})]})]})},"RetryPipelineButton",0,p,"pipelineStateClass",0,f],647776)},940276,e=>{"use strict";e.s(["findWorktreeOverviewEntry",0,function(e,t){for(let r of e.agents)for(let e of r.codebases){let n=e.worktrees.find(e=>e.id===t);if(n)return{agentGroup:r,group:e,worktree:n}}return null},"shouldNavigateWorktreeSurface",0,function(e){if(e.defaultPrevented||0!==e.button)return!1;let t=e.target;return t instanceof Element&&!!e.currentTarget.contains(t)&&!t.closest("a,button,input,select,textarea,[role='button'],[role='link'],[role='menuitem'],[data-worktree-navigation-ignore]")},"worktreeDetailHref",0,function(e){return`/worktrees/${encodeURIComponent(e)}`}])}]);
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,573474,e=>{"use strict";let t=(0,e.i(456420).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",0,t],573474)},340953,e=>{"use strict";var t=e.i(843476),r=e.i(271645),a=e.i(30030);function n(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function i(...e){return r.useCallback(function(...e){return t=>{let r=!1,a=e.map(e=>{let a=n(e,t);return r||"function"!=typeof a||(r=!0),a});if(r)return()=>{for(let t=0;t<a.length;t++){let r=a[t];"function"==typeof r?r():n(e[t],null)}}}}(...e),e)}var s=e.i(326999);"u">typeof window&&window.document&&window.document.createElement;var l="AlertDialog",[o,c]=(0,a.createContextScope)(l,[s.createDialogScope]),d=(0,s.createDialogScope)(),u=e=>{let{__scopeAlertDialog:r,...a}=e,n=d(r);return(0,t.jsx)(s.Root,{...n,...a,modal:!0})};u.displayName=l;var m=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...n}=e,i=d(a);return(0,t.jsx)(s.Trigger,{...i,...n,ref:r})});m.displayName="AlertDialogTrigger";var p=e=>{let{__scopeAlertDialog:r,...a}=e,n=d(r);return(0,t.jsx)(s.Portal,{...n,...a})};p.displayName="AlertDialogPortal";var h=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...n}=e,i=d(a);return(0,t.jsx)(s.Overlay,{...i,...n,ref:r})});h.displayName="AlertDialogOverlay";var f="AlertDialogContent",[x,g]=o(f),j=r.forwardRef((e,a)=>{let{__scopeAlertDialog:n,children:l,...o}=e,c=d(n),u=i(a,r.useRef(null)),m=r.useRef(null);return(0,t.jsx)(x,{scope:n,cancelRef:m,children:(0,t.jsx)(s.Content,{role:"alertdialog",...c,...o,ref:u,onOpenAutoFocus:function(e,t,{checkForDefaultPrevented:r=!0}={}){return function(a){if(e?.(a),!1===r||!a||!a.defaultPrevented)return t?.(a)}}(o.onOpenAutoFocus,e=>{e.preventDefault(),m.current?.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:l})})});j.displayName=f;var v=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...n}=e,i=d(a);return(0,t.jsx)(s.Title,{...i,...n,ref:r})});v.displayName="AlertDialogTitle";var y=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...n}=e,i=d(a);return(0,t.jsx)(s.Description,{...i,...n,ref:r})});y.displayName="AlertDialogDescription";var b=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...n}=e,i=d(a);return(0,t.jsx)(s.Close,{...i,...n,ref:r})});b.displayName="AlertDialogAction";var w="AlertDialogCancel",k=r.forwardRef((e,r)=>{let{__scopeAlertDialog:a,...n}=e,{cancelRef:l}=g(w,a),o=d(a),c=i(r,l);return(0,t.jsx)(s.Close,{...o,...n,ref:c})});k.displayName=w,e.s(["Action",0,b,"AlertDialog",0,u,"AlertDialogAction",0,b,"AlertDialogCancel",0,k,"AlertDialogContent",0,j,"AlertDialogDescription",0,y,"AlertDialogOverlay",0,h,"AlertDialogPortal",0,p,"AlertDialogTitle",0,v,"AlertDialogTrigger",0,m,"Cancel",0,k,"Content",0,j,"Description",0,y,"Overlay",0,h,"Portal",0,p,"Root",0,u,"Title",0,v,"Trigger",0,m,"createAlertDialogScope",0,c],691162);var N=e.i(691162),N=N,S=e.i(975157),C=e.i(519455);function T({...e}){return(0,t.jsx)(N.Root,{"data-slot":"alert-dialog",...e})}function D({...e}){return(0,t.jsx)(N.Trigger,{"data-slot":"alert-dialog-trigger",...e})}function I({...e}){return(0,t.jsx)(N.Portal,{"data-slot":"alert-dialog-portal",...e})}function E({className:e,...r}){return(0,t.jsx)(N.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,S.cn)("fixed inset-0 z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...r})}function A({className:e,size:r="default",...a}){return(0,t.jsxs)(I,{children:[(0,t.jsx)(E,{}),(0,t.jsx)(N.Content,{"data-slot":"alert-dialog-content","data-size":r,className:(0,S.cn)("group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),...a})]})}function R({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,S.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",e),...r})}function P({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,S.cn)("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",e),...r})}function $({className:e,...r}){return(0,t.jsx)(N.Title,{"data-slot":"alert-dialog-title",className:(0,S.cn)("font-heading text-base font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",e),...r})}function B({className:e,...r}){return(0,t.jsx)(N.Description,{"data-slot":"alert-dialog-description",className:(0,S.cn)("text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),...r})}function J({className:e,variant:r="default",size:a="default",...n}){return(0,t.jsx)(C.Button,{variant:r,size:a,asChild:!0,children:(0,t.jsx)(N.Action,{"data-slot":"alert-dialog-action",className:(0,S.cn)(e),...n})})}function L({className:e,variant:r="outline",size:a="default",...n}){return(0,t.jsx)(C.Button,{variant:r,size:a,asChild:!0,children:(0,t.jsx)(N.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,S.cn)(e),...n})})}e.s(["ConfirmationDialog",0,function({actionLabel:e,cancelLabel:r,description:a,onConfirm:n,onOpenChange:i,open:s,title:l,trigger:o}){return(0,t.jsxs)(T,{onOpenChange:i,open:s,children:[o&&(0,t.jsx)(D,{asChild:!0,children:o}),(0,t.jsxs)(A,{children:[(0,t.jsxs)(R,{children:[(0,t.jsx)($,{children:l}),(0,t.jsx)(B,{children:a})]}),(0,t.jsxs)(P,{children:[(0,t.jsx)(L,{children:r}),(0,t.jsx)(J,{onClick:()=>void n(),variant:"destructive",children:e})]})]})]})}],340953)},77071,e=>{"use strict";let t=(0,e.i(456420).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",0,t],77071)},776639,e=>{"use strict";var t=e.i(843476),r=e.i(560964),a=e.i(964053),n=e.i(519455),i=e.i(975157);function s({...e}){return(0,t.jsx)(a.Dialog.Portal,{"data-slot":"dialog-portal",...e})}function l({className:e,...r}){return(0,t.jsx)(a.Dialog.Overlay,{className:(0,i.cn)("fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),"data-slot":"dialog-overlay",...r})}e.s(["Dialog",0,function({...e}){return(0,t.jsx)(a.Dialog.Root,{"data-slot":"dialog",...e})},"DialogContent",0,function({className:e,children:o,showCloseButton:c=!0,...d}){return(0,t.jsxs)(s,{children:[(0,t.jsx)(l,{}),(0,t.jsxs)(a.Dialog.Content,{className:(0,i.cn)("fixed top-1/2 left-1/2 z-50 grid max-h-[85dvh] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 overflow-y-auto rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),"data-slot":"dialog-content",...d,children:[o,c&&(0,t.jsx)(a.Dialog.Close,{asChild:!0,"data-slot":"dialog-close",children:(0,t.jsxs)(n.Button,{className:"absolute top-2 right-2",size:"icon-sm",variant:"ghost",children:[(0,t.jsx)(r.XIcon,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})})]})]})},"DialogDescription",0,function({className:e,...r}){return(0,t.jsx)(a.Dialog.Description,{className:(0,i.cn)("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),"data-slot":"dialog-description",...r})},"DialogFooter",0,function({className:e,showCloseButton:r=!1,children:s,...l}){return(0,t.jsxs)("div",{className:(0,i.cn)("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end",e),"data-slot":"dialog-footer",...l,children:[s,r&&(0,t.jsx)(a.Dialog.Close,{asChild:!0,children:(0,t.jsx)(n.Button,{variant:"outline",children:"Close"})})]})},"DialogHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col gap-2",e),"data-slot":"dialog-header",...r})},"DialogTitle",0,function({className:e,...r}){return(0,t.jsx)(a.Dialog.Title,{className:(0,i.cn)("font-heading text-base leading-none font-medium",e),"data-slot":"dialog-title",...r})}])},59497,e=>{"use strict";var t=e.i(843476),r=e.i(271645);function a(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function n(...e){return r.useCallback(function(...e){return t=>{let r=!1,n=e.map(e=>{let n=a(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():a(e[t],null)}}}}(...e),e)}var i=e.i(30030);function s(e,t,{checkForDefaultPrevented:r=!0}={}){return function(a){if(e?.(a),!1===r||!a||!a.defaultPrevented)return t?.(a)}}"u">typeof window&&window.document&&window.document.createElement;var l=globalThis?.document?r.useLayoutEffect:()=>{};r[" useEffectEvent ".trim().toString()],r[" useInsertionEffect ".trim().toString()];var o=r[" useInsertionEffect ".trim().toString()]||l;Symbol("RADIX:SYNC_STATE");var c=e.i(999682),d=e.i(635804),u=e.i(296626);e.i(174080);var m=Symbol.for("radix.slottable"),p=Symbol.for("react.lazy");function h(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===p&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var f=r[" use ".trim().toString()],x=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,a)=>{var i;let s,l=(i=`Primitive.${a}`,(s=r.forwardRef((e,t)=>{var a;let s,l,{children:o,...c}=e,d=null,u=!1,p=[];h(o)&&"function"==typeof f&&(o=f(o._payload)),r.Children.forEach(o,e=>{var t;if(t=e,r.isValidElement(t)&&"function"==typeof t.type&&"__radixId"in t.type&&t.type.__radixId===m){u=!0;let t="child"in e.props?e.props.child:e.props.children;h(t)&&"function"==typeof f&&(t=f(t._payload)),d=((e,t)=>{if("child"in e.props){let t=e.props.child;return r.isValidElement(t)?r.cloneElement(t,void 0,e.props.children(t.props.children)):null}return r.isValidElement(t)?t:null})(e,t),p.push(d?.props?.children)}else p.push(e)}),d?d=r.cloneElement(d,void 0,p):!u&&1===r.Children.count(o)&&r.isValidElement(o)&&(d=o);let x=d?(a=d,(l=(s=Object.getOwnPropertyDescriptor(a.props,"ref")?.get)&&"isReactWarning"in s&&s.isReactWarning)?a.ref:(l=(s=Object.getOwnPropertyDescriptor(a,"ref")?.get)&&"isReactWarning"in s&&s.isReactWarning)?a.props.ref:a.props.ref||a.ref):void 0,g=n(t,x);if(!d){if(o||0===o){let e,t;throw Error(u?(e=i,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=i,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return o}let j=function(e,t){let r={...t};for(let a in t){let n=e[a],i=t[a];/^on[A-Z]/.test(a)?n&&i?r[a]=(...e)=>{let t=i(...e);return n(...e),t}:n&&(r[a]=n):"style"===a?r[a]={...n,...i}:"className"===a&&(r[a]=[n,i].filter(Boolean).join(" "))}return{...e,...r}}(c,d.props??{});return d.type!==r.Fragment&&(j.ref=t?g:x),r.cloneElement(d,j)})).displayName=`${i}.Slot`,s),o=r.forwardRef((e,r)=>{let{asChild:n,...i}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(n?l:a,{...i,ref:r})});return o.displayName=`Primitive.${a}`,{...e,[a]:o}},{}),g="Checkbox",[j,v]=(0,i.createContextScope)(g),[y,b]=j(g);function w(e){let{__scopeCheckbox:a,checked:n,children:i,defaultChecked:s,disabled:l,form:c,name:d,onCheckedChange:u,required:m,value:p="on",internal_do_not_use_render:h}=e,[f,x]=function({prop:e,defaultProp:t,onChange:a=()=>{},caller:n}){let[i,s,l]=function({defaultProp:e,onChange:t}){let[a,n]=r.useState(e),i=r.useRef(a),s=r.useRef(t);return o(()=>{s.current=t},[t]),r.useEffect(()=>{i.current!==a&&(s.current?.(a),i.current=a)},[a,i]),[a,n,s]}({defaultProp:t,onChange:a}),c=void 0!==e,d=c?e:i;{let t=r.useRef(void 0!==e);r.useEffect(()=>{let e=t.current;if(e!==c){let t=c?"controlled":"uncontrolled";console.warn(`${n} is changing from ${e?"controlled":"uncontrolled"} to ${t}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}t.current=c},[c,n])}return[d,r.useCallback(t=>{if(c){let r="function"==typeof t?t(e):t;r!==e&&l.current?.(r)}else s(t)},[c,e,s,l])]}({prop:n,defaultProp:s??!1,onChange:u,caller:g}),[j,v]=r.useState(null),[b,w]=r.useState(null),k=r.useRef(!1),N=!j||!!c||!!j.closest("form"),S={checked:f,disabled:l,setChecked:x,control:j,setControl:v,name:d,form:c,value:p,hasConsumerStoppedPropagationRef:k,required:m,defaultChecked:!E(s)&&s,isFormControl:N,bubbleInput:b,setBubbleInput:w};return(0,t.jsx)(y,{scope:a,...S,children:"function"==typeof h?h(S):i})}var k="CheckboxTrigger",N=r.forwardRef(({__scopeCheckbox:e,onKeyDown:a,onClick:i,...l},o)=>{let{control:c,value:d,disabled:u,checked:m,required:p,setControl:h,setChecked:f,hasConsumerStoppedPropagationRef:g,isFormControl:j,bubbleInput:v}=b(k,e),y=n(o,h),w=r.useRef(m);return r.useEffect(()=>{let e=c?.form;if(e){let t=()=>f(w.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[c,f]),(0,t.jsx)(x.button,{type:"button",role:"checkbox","aria-checked":E(m)?"mixed":m,"aria-required":p,"data-state":A(m),"data-disabled":u?"":void 0,disabled:u,value:d,...l,ref:y,onKeyDown:s(a,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:s(i,e=>{f(e=>!!E(e)||!e),v&&j&&(g.current=e.isPropagationStopped(),g.current||e.stopPropagation())})})});N.displayName=k;var S=r.forwardRef((e,r)=>{let{__scopeCheckbox:a,name:n,checked:i,defaultChecked:s,required:l,disabled:o,value:c,onCheckedChange:d,form:u,...m}=e;return(0,t.jsx)(w,{__scopeCheckbox:a,checked:i,defaultChecked:s,disabled:o,required:l,onCheckedChange:d,name:n,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(N,{...m,ref:r,__scopeCheckbox:a}),e&&(0,t.jsx)(I,{__scopeCheckbox:a})]})})});S.displayName=g;var C="CheckboxIndicator",T=r.forwardRef((e,r)=>{let{__scopeCheckbox:a,forceMount:n,...i}=e,s=b(C,a);return(0,t.jsx)(u.Presence,{present:n||E(s.checked)||!0===s.checked,children:(0,t.jsx)(x.span,{"data-state":A(s.checked),"data-disabled":s.disabled?"":void 0,...i,ref:r,style:{pointerEvents:"none",...e.style}})})});T.displayName=C;var D="CheckboxBubbleInput",I=r.forwardRef(({__scopeCheckbox:e,...a},i)=>{let{control:s,hasConsumerStoppedPropagationRef:l,checked:o,defaultChecked:u,required:m,disabled:p,name:h,value:f,form:g,bubbleInput:j,setBubbleInput:v}=b(D,e),y=n(i,v),w=(0,c.usePrevious)(o),k=(0,d.useSize)(s);r.useEffect(()=>{if(!j)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!l.current;if(w!==o&&e){let r=new Event("click",{bubbles:t});j.indeterminate=E(o),e.call(j,!E(o)&&o),j.dispatchEvent(r)}},[j,w,o,l]);let N=r.useRef(!E(o)&&o);return(0,t.jsx)(x.input,{type:"checkbox","aria-hidden":!0,defaultChecked:u??N.current,required:m,disabled:p,name:h,value:f,form:g,...a,tabIndex:-1,ref:y,style:{...a.style,...k,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function E(e){return"indeterminate"===e}function A(e){return E(e)?"indeterminate":e?"checked":"unchecked"}I.displayName=D,e.s(["Checkbox",0,S,"CheckboxIndicator",0,T,"Indicator",0,T,"Root",0,S,"createCheckboxScope",0,v,"unstable_BubbleInput",0,I,"unstable_CheckboxBubbleInput",0,I,"unstable_CheckboxProvider",0,w,"unstable_CheckboxTrigger",0,N,"unstable_Provider",0,w,"unstable_Trigger",0,N],388474);var R=e.i(388474),R=R,P=e.i(975157),$=e.i(593698);e.s(["Checkbox",0,function({className:e,...r}){return(0,t.jsx)(R.Root,{"data-slot":"checkbox",className:(0,P.cn)("peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary",e),...r,children:(0,t.jsx)(R.Indicator,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none [&>svg]:size-3.5",children:(0,t.jsx)($.CheckIcon,{})})})}],59497)},482022,e=>{"use strict";let t=(0,e.i(456420).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",0,t],482022)},741120,e=>{"use strict";let t=(0,e.i(456420).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",0,t],741120)},82612,e=>{"use strict";var t=e.i(843476),r=e.i(225913),a=e.i(975157);let n=(0,r.cva)("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",icon:"flex size-8 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-4"}},defaultVariants:{variant:"default"}});e.s(["Empty",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty",className:(0,a.cn)("flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-xl border-dashed p-6 text-center text-balance",e),...r})},"EmptyDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-description",className:(0,a.cn)("text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",e),...r})},"EmptyHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-header",className:(0,a.cn)("flex max-w-sm flex-col items-center gap-2",e),...r})},"EmptyMedia",0,function({className:e,variant:r="default",...i}){return(0,t.jsx)("div",{"data-slot":"empty-icon","data-variant":r,className:(0,a.cn)(n({variant:r,className:e})),...i})},"EmptyTitle",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-title",className:(0,a.cn)("font-heading text-sm font-medium tracking-tight",e),...r})}])},462777,e=>{"use strict";async function t(e){if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(e);return}catch{}let t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.append(t),t.select();let r=document.execCommand("copy");if(t.remove(),!r)throw Error("Copy is not supported by this browser")}e.s(["copyText",0,t,"createClientId",0,function(){try{if(globalThis.crypto?.randomUUID)return globalThis.crypto.randomUUID()}catch{}if(globalThis.crypto?.getRandomValues)try{let e=globalThis.crypto.getRandomValues(new Uint8Array(16));return Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")}catch{}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`}])},842727,e=>{"use strict";var t=e.i(271645);function r(e,t,{checkForDefaultPrevented:a=!0}={}){return function(r){if(e?.(r),!1===a||!r||!r.defaultPrevented)return t?.(r)}}"u">typeof window&&window.document&&window.document.createElement;var a=e.i(75830);function n(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function i(...e){return t.useCallback(function(...e){return t=>{let r=!1,a=e.map(e=>{let a=n(e,t);return r||"function"!=typeof a||(r=!0),a});if(r)return()=>{for(let t=0;t<a.length;t++){let r=a[t];"function"==typeof r?r():n(e[t],null)}}}}(...e),e)}var s=e.i(30030),l=e.i(610772);e.i(174080);var o=Symbol.for("radix.slottable"),c=Symbol.for("react.lazy");function d(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===c&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var u=t[" use ".trim().toString()],m=e.i(843476),p=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,r)=>{var a;let n,s=(a=`Primitive.${r}`,(n=t.forwardRef((e,r)=>{var n;let s,l,{children:c,...m}=e,p=null,h=!1,f=[];d(c)&&"function"==typeof u&&(c=u(c._payload)),t.Children.forEach(c,e=>{var r;if(r=e,t.isValidElement(r)&&"function"==typeof r.type&&"__radixId"in r.type&&r.type.__radixId===o){h=!0;let r="child"in e.props?e.props.child:e.props.children;d(r)&&"function"==typeof u&&(r=u(r._payload)),p=((e,r)=>{if("child"in e.props){let r=e.props.child;return t.isValidElement(r)?t.cloneElement(r,void 0,e.props.children(r.props.children)):null}return t.isValidElement(r)?r:null})(e,r),f.push(p?.props?.children)}else f.push(e)}),p?p=t.cloneElement(p,void 0,f):!h&&1===t.Children.count(c)&&t.isValidElement(c)&&(p=c);let x=p?(n=p,(l=(s=Object.getOwnPropertyDescriptor(n.props,"ref")?.get)&&"isReactWarning"in s&&s.isReactWarning)?n.ref:(l=(s=Object.getOwnPropertyDescriptor(n,"ref")?.get)&&"isReactWarning"in s&&s.isReactWarning)?n.props.ref:n.props.ref||n.ref):void 0,g=i(r,x);if(!p){if(c||0===c){let e,t;throw Error(h?(e=a,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=a,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return c}let j=function(e,t){let r={...t};for(let a in t){let n=e[a],i=t[a];/^on[A-Z]/.test(a)?n&&i?r[a]=(...e)=>{let t=i(...e);return n(...e),t}:n&&(r[a]=n):"style"===a?r[a]={...n,...i}:"className"===a&&(r[a]=[n,i].filter(Boolean).join(" "))}return{...e,...r}}(m,p.props??{});return p.type!==t.Fragment&&(j.ref=r?g:x),t.cloneElement(p,j)})).displayName=`${a}.Slot`,n),l=t.forwardRef((e,t)=>{let{asChild:a,...n}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,m.jsx)(a?s:r,{...n,ref:t})});return l.displayName=`Primitive.${r}`,{...e,[r]:l}},{}),h=e.i(30207),f=globalThis?.document?t.useLayoutEffect:()=>{};t[" useEffectEvent ".trim().toString()],t[" useInsertionEffect ".trim().toString()];var x=t[" useInsertionEffect ".trim().toString()]||f;Symbol("RADIX:SYNC_STATE");var g=e.i(586318),j=!1,v=t[" useSyncExternalStore ".trim().toString()];function y(){return()=>{}}var b="function"==typeof v?function(){return v(y,()=>!0,()=>!1)}:function(){let[e,r]=t.useState(j);return t.useEffect(()=>{j||(j=!0,r(!0))},[]),e},w="rovingFocusGroup.onEntryFocus",k={bubbles:!1,cancelable:!0},N="RovingFocusGroup",[S,C,T]=(0,a.createCollection)(N),[D,I]=(0,s.createContextScope)(N,[T]),[E,A]=D(N),R=t.forwardRef((e,t)=>(0,m.jsx)(S.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,m.jsx)(S.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,m.jsx)(P,{...e,ref:t})})}));R.displayName=N;var P=t.forwardRef((e,a)=>{let{__scopeRovingFocusGroup:n,orientation:s,loop:l=!1,dir:o,currentTabStopId:c,defaultCurrentTabStopId:d,onCurrentTabStopIdChange:u,onEntryFocus:f,preventScrollOnEntryFocus:j=!1,...v}=e,y=t.useRef(null),b=i(a,y),S=(0,g.useDirection)(o),[T,D]=function({prop:e,defaultProp:r,onChange:a=()=>{},caller:n}){let[i,s,l]=function({defaultProp:e,onChange:r}){let[a,n]=t.useState(e),i=t.useRef(a),s=t.useRef(r);return x(()=>{s.current=r},[r]),t.useEffect(()=>{i.current!==a&&(s.current?.(a),i.current=a)},[a,i]),[a,n,s]}({defaultProp:r,onChange:a}),o=void 0!==e,c=o?e:i;{let r=t.useRef(void 0!==e);t.useEffect(()=>{let e=r.current;if(e!==o){let t=o?"controlled":"uncontrolled";console.warn(`${n} is changing from ${e?"controlled":"uncontrolled"} to ${t}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}r.current=o},[o,n])}return[c,t.useCallback(t=>{if(o){let r="function"==typeof t?t(e):t;r!==e&&l.current?.(r)}else s(t)},[o,e,s,l])]}({prop:c,defaultProp:d??null,onChange:u,caller:N}),[I,A]=t.useState(!1),R=(0,h.useCallbackRef)(f),P=C(n),$=t.useRef(!1),[B,J]=t.useState(0);return t.useEffect(()=>{let e=y.current;if(e)return e.addEventListener(w,R),()=>e.removeEventListener(w,R)},[R]),(0,m.jsx)(E,{scope:n,orientation:s,dir:S,loop:l,currentTabStopId:T,onItemFocus:t.useCallback(e=>D(e),[D]),onItemShiftTab:t.useCallback(()=>A(!0),[]),onFocusableItemAdd:t.useCallback(()=>J(e=>e+1),[]),onFocusableItemRemove:t.useCallback(()=>J(e=>e-1),[]),children:(0,m.jsx)(p.div,{tabIndex:I||0===B?-1:0,"data-orientation":s,...v,ref:b,style:{outline:"none",...e.style},onMouseDown:r(e.onMouseDown,()=>{$.current=!0}),onFocus:r(e.onFocus,e=>{let t=!$.current;if(e.target===e.currentTarget&&t&&!I){let t=new CustomEvent(w,k);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=P().filter(e=>e.focusable);L([e.find(e=>e.active),e.find(e=>e.id===T),...e].filter(Boolean).map(e=>e.ref.current),j)}}$.current=!1}),onBlur:r(e.onBlur,()=>A(!1))})})}),$="RovingFocusGroupItem",B=t.forwardRef((e,a)=>{let{__scopeRovingFocusGroup:n,focusable:i=!0,active:s=!1,tabStopId:o,children:c,...d}=e,u=(0,l.useId)(),h=o||u,x=A($,n),g=x.currentTabStopId===h,j=C(n),{onFocusableItemAdd:v,onFocusableItemRemove:y,currentTabStopId:w}=x,k=b();return f(()=>{if(k&&i)return v(),()=>y()},[k,i,v,y]),t.useEffect(()=>{if(!k&&i)return v(),()=>y()},[k,i,v,y]),(0,m.jsx)(S.ItemSlot,{scope:n,id:h,focusable:i,active:s,children:(0,m.jsx)(p.span,{tabIndex:g?0:-1,"data-orientation":x.orientation,...d,ref:a,onMouseDown:r(e.onMouseDown,e=>{i?x.onItemFocus(h):e.preventDefault()}),onFocus:r(e.onFocus,()=>x.onItemFocus(h)),onKeyDown:r(e.onKeyDown,e=>{if("Tab"===e.key&&e.shiftKey)return void x.onItemShiftTab();if(e.target!==e.currentTarget)return;let t=function(e,t,r){var a;let n=(a=e.key,"rtl"!==r?a:"ArrowLeft"===a?"ArrowRight":"ArrowRight"===a?"ArrowLeft":a);if(!("vertical"===t&&["ArrowLeft","ArrowRight"].includes(n))&&!("horizontal"===t&&["ArrowUp","ArrowDown"].includes(n)))return J[n]}(e,x.orientation,x.dir);if(void 0!==t){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=j().filter(e=>e.focusable).map(e=>e.ref.current);if("last"===t)n.reverse();else if("prev"===t||"next"===t){var r,a;"prev"===t&&n.reverse();let i=n.indexOf(e.currentTarget);n=x.loop?(r=n,a=i+1,r.map((e,t)=>r[(a+t)%r.length])):n.slice(i+1)}setTimeout(()=>L(n))}}),children:"function"==typeof c?c({isCurrentTabStop:g,hasTabStop:null!=w}):c})})});B.displayName=$;var J={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function L(e,t=!1){let r=document.activeElement;for(let a of e)if(a===r||(a.focus({preventScroll:t}),document.activeElement!==r))return}e.s(["Item",0,B,"Root",0,R,"createRovingFocusGroupScope",0,I],842727)},560972,e=>{"use strict";let t=(0,e.i(456420).default)("ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);e.s(["default",0,t])},356505,853138,e=>{"use strict";var t=e.i(843476),r=e.i(456420);let a=(0,r.default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",0,a],853138);var n=e.i(482022),i=e.i(269846);let s=(0,r.default)("maximize-2",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]]);var l=e.i(948148),o=e.i(271645),c=e.i(653090),d=e.i(278015),u=e.i(762279),m=e.i(456743),p=e.i(929592),h=e.i(487486),f=e.i(519455),x=e.i(515288),g=e.i(906197),j=e.i(980376),v=e.i(987968),y=e.i(520133),b=e.i(637611),w=e.i(741725),k=e.i(467511);let N={highest:"border-red-500/30 bg-red-500/10 text-red-700 dark:text-red-300",high:"border-orange-500/30 bg-orange-500/10 text-orange-700 dark:text-orange-300",medium:"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300",low:"border-blue-500/30 bg-blue-500/10 text-blue-700 dark:text-blue-300",lowest:"border-slate-500/30 bg-slate-500/10 text-slate-700 dark:text-slate-300"};function S(e){return e?new Date(e).toLocaleString():"—"}function C({ticket:e}){let r=(0,l.useTranslations)("jiraTickets"),a=[[r("assignee"),(0,t.jsx)(c.JiraUser,{avatarUrl:e.assigneeAvatarUrl,name:e.assignee??r("unassigned")},"assignee")],[r("reporter"),e.reporter?(0,t.jsx)(c.JiraUser,{avatarUrl:e.reporter.avatarUrl,name:e.reporter.displayName},"reporter"):"—"],[r("created"),S(e.createdAt)],[r("updated"),S(e.updatedAt)],[r("due"),S(e.dueAt)],[r("resolved"),S(e.resolvedAt)]];return(0,t.jsx)("dl",{className:"grid gap-3 rounded-lg bg-muted/50 p-4 text-sm sm:grid-cols-2",children:a.map(([e,r])=>(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{className:"text-xs text-muted-foreground",children:e}),(0,t.jsx)("dd",{className:"mt-0.5 font-medium",children:r})]},e))})}function T({label:e,values:r}){return(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{className:"text-muted-foreground",children:e}),(0,t.jsx)("dd",{className:"mt-1",children:r.join(", ")})]})}e.s(["JiraTicketDrawer",0,function({issueKey:e,onClose:r,onTicketChange:c}){let S=(0,l.useTranslations)("jiraTickets"),[D,I]=(0,o.useState)(null),[E,A]=(0,o.useState)(null),[R,P]=(0,o.useState)(!1),[$,B]=(0,o.useState)(!1);(0,o.useEffect)(()=>{if(!e){let e=window.setTimeout(()=>I(null),0);return()=>window.clearTimeout(e)}let t=window.setTimeout(async()=>{P(!0);try{let t=await (0,b.controlPlaneRequest)(`query JiraTicket($issueKey: ID!) { jiraTicket(issueKey: $issueKey) { ${k.JIRA_TICKET_DETAIL_FIELDS} } }`,{issueKey:e});I(t.jiraTicket),A(null)}catch(e){A(e instanceof Error?e.message:String(e))}finally{P(!1)}},0);return()=>window.clearTimeout(t)},[e]);let J=e=>{I(e),c?.(e)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(j.Sheet,{onOpenChange:e=>{e||r()},open:!!e,children:(0,t.jsxs)(j.SheetContent,{className:"w-[min(48rem,95vw)] overflow-y-auto sm:max-w-3xl",children:[(0,t.jsxs)(j.SheetHeader,{className:"border-b pr-12",children:[(0,t.jsx)(j.SheetTitle,{children:D?.key??e??S("ticket")}),(0,t.jsx)(j.SheetDescription,{children:D?.summary??S("loadingTicket")})]}),(0,t.jsxs)("div",{className:"space-y-6 px-4 pb-6",children:[R&&(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(v.Spinner,{}),S("loadingTicket")]}),E&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:E})}),D&&(0,t.jsxs)(t.Fragment,{children:[(D.cache.stale||D.commentsCache.stale)&&(0,t.jsxs)(p.Alert,{className:"border-amber-500/30 bg-amber-500/10",children:[(0,t.jsx)(a,{}),(0,t.jsx)(p.AlertDescription,{children:S("staleTicket")})]}),(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsx)(h.Badge,{children:D.status}),D.issueType&&(0,t.jsx)(h.Badge,{children:D.issueType}),D.priority&&(0,t.jsx)(h.Badge,{className:N[D.priority.trim().toLowerCase()],children:D.priority})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsxs)(f.Button,{onClick:()=>B(!0),size:"sm",variant:"outline",children:[(0,t.jsx)(i.GitBranch,{})," ",S("worktreeAction")]}),(0,t.jsx)(f.Button,{asChild:!0,size:"sm",variant:"outline",children:(0,t.jsxs)(y.Link,{href:`/jira/tickets/${encodeURIComponent(D.key)}`,children:[(0,t.jsx)(s,{})," ",S("openFullDetails")]})}),(0,t.jsx)(f.Button,{asChild:!0,size:"sm",variant:"outline",children:(0,t.jsxs)("a",{href:D.jiraUrl,rel:"noreferrer",target:"_blank",children:[(0,t.jsx)(n.ExternalLink,{})," ",S("openInJira")]})})]})]}),(0,t.jsx)(u.JiraTicketActions,{onTicketChange:J,ticket:D}),(0,t.jsx)(C,{ticket:D}),(0,t.jsx)("section",{children:(0,t.jsx)(x.Card,{size:"sm",children:(0,t.jsx)(x.CardContent,{children:(0,t.jsx)(d.JiraRichTextBlock,{content:D.descriptionContent,header:(0,t.jsx)("h3",{className:"font-semibold",children:S("descriptionTitle")}),headerClassName:"border-b pb-2",value:D.description})})})}),(D.labels.length>0||D.components.length>0||D.fixVersions.length>0||D.sprintNames.length>0)&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h3",{className:"mb-2 font-semibold",children:S("classification")}),(0,t.jsxs)("dl",{className:"grid gap-3 text-sm sm:grid-cols-2",children:[D.labels.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{className:"text-muted-foreground",children:S("labels")}),(0,t.jsx)("dd",{className:"mt-1 flex flex-wrap gap-1",children:D.labels.map(e=>(0,t.jsx)(h.Badge,{children:e},e))})]}),D.components.length>0&&(0,t.jsx)(T,{label:S("components"),values:D.components.map(e=>e.name)}),D.fixVersions.length>0&&(0,t.jsx)(T,{label:S("fixVersions"),values:D.fixVersions.map(e=>e.name)}),D.sprintNames.length>0&&(0,t.jsx)(T,{label:S("sprints"),values:D.sprintNames})]})]}),(D.parent||D.subtasks.length>0||D.issueLinks.length>0)&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h3",{className:"mb-2 font-semibold",children:S("relatedIssues")}),(0,t.jsx)(g.ItemGroup,{className:"gap-2",children:[...D.parent?[D.parent]:[],...D.subtasks,...D.issueLinks].map((e,r)=>(0,t.jsx)(g.Item,{asChild:!0,size:"xs",variant:"outline",children:(0,t.jsxs)(y.Link,{href:`/jira/tickets/${encodeURIComponent(e.key)}`,children:[(0,t.jsxs)(g.ItemContent,{children:[(0,t.jsxs)(g.ItemTitle,{className:"leading-tight",children:[e.key," · ",e.summary]}),(0,t.jsx)(g.ItemDescription,{className:"leading-tight",children:e.relationship})]}),(0,t.jsx)(g.ItemActions,{children:e.status&&(0,t.jsx)(h.Badge,{children:e.status})})]})},`${e.key}-${r}`))})]}),D.attachments.length>0&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h3",{className:"mb-2 font-semibold",children:S("attachments")}),(0,t.jsx)(g.ItemGroup,{className:"gap-2",children:D.attachments.map(e=>(0,t.jsx)(g.Item,{asChild:!0,variant:"outline",children:(0,t.jsxs)("a",{href:e.contentUrl??"#",rel:"noreferrer",target:"_blank",children:[(0,t.jsx)(g.ItemContent,{children:(0,t.jsx)(g.ItemTitle,{children:e.filename})}),(0,t.jsx)(g.ItemActions,{className:"text-xs text-muted-foreground",children:e.size?`${Math.round(e.size/1024)} KB`:""})]})},e.id))})]}),(0,t.jsx)(m.JiraTicketComments,{onTicketChange:J,ticket:D})]})]})]})}),D&&(0,t.jsx)(w.TicketWorktreeDialog,{issueKey:D.key,onOpenChange:B,open:$})]})}],356505)},250832,e=>{"use strict";let t=(0,e.i(456420).default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);e.s(["Settings2",0,t],250832)},630299,e=>{"use strict";let t=(0,e.i(456420).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["default",0,t])},784774,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Table",0,function({className:e,containerClassName:a,...n}){return(0,t.jsx)("div",{className:(0,r.cn)("w-full overflow-x-auto",a),children:(0,t.jsx)("table",{className:(0,r.cn)("w-full caption-bottom text-sm",e),...n})})},"TableBody",0,function({className:e,...a}){return(0,t.jsx)("tbody",{className:(0,r.cn)("divide-y",e),...a})},"TableCell",0,function({className:e,...a}){return(0,t.jsx)("td",{className:(0,r.cn)("whitespace-nowrap px-3 py-3 align-middle",e),...a})},"TableFooter",0,function({className:e,...a}){return(0,t.jsx)("tfoot",{className:(0,r.cn)("border-t bg-muted/50 font-medium",e),...a})},"TableHead",0,function({className:e,...a}){return(0,t.jsx)("th",{className:(0,r.cn)("h-10 whitespace-nowrap px-3 text-left align-middle text-xs font-medium text-muted-foreground",e),...a})},"TableHeader",0,function({className:e,...a}){return(0,t.jsx)("thead",{className:(0,r.cn)("border-b",e),...a})},"TableRow",0,function({className:e,...a}){return(0,t.jsx)("tr",{className:(0,r.cn)("transition-colors hover:bg-muted/40",e),...a})}])},689664,e=>{"use strict";var t=e.i(643957);e.s(["Check",()=>t.default])},508734,e=>{"use strict";let t=(0,e.i(456420).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"}]]);e.s(["Copy",0,t],508734)},986253,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["default",0,t])},716327,e=>{"use strict";var t=e.i(26495);e.s(["ChevronDown",()=>t.default])},867927,e=>{"use strict";var t=e.i(986253);e.s(["ChevronRight",()=>t.default])},515281,e=>{"use strict";let t=(0,e.i(456420).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"}]]);e.s(["Pencil",0,t],515281)},960024,e=>{"use strict";var t=e.i(843476),r=e.i(853138),a=e.i(716327),n=e.i(867927),i=e.i(456420);let s=(0,i.default)("columns-3",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"M15 3v18",key:"14nvp0"}]]),l=(0,i.default)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]]);var o=e.i(515281),c=e.i(77071),d=e.i(741120),u=e.i(250832);let m=(0,i.default)("table-2",[["path",{d:"M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18",key:"gugj83"}]]);var p=e.i(573474),h=e.i(948148),f=e.i(618566),x=e.i(271645),g=e.i(340953),j=e.i(653090),v=e.i(356505),y=e.i(929592),b=e.i(487486),w=e.i(519455),k=e.i(515288),N=e.i(59497),S=e.i(776639),C=e.i(755146),T=e.i(82612),D=e.i(793479),I=e.i(906197),E=e.i(110204),A=e.i(967489),R=e.i(987968),P=e.i(784774),$=e.i(677572),B=e.i(624687),J=e.i(637611);let L="id projectId name kind value boardId position",z=`id jiraId key name avatarUrl position ticketAssignmentFilter hideCompletedTickets completedStatusIds branchNamingScript sources { ${L} }`,_=`source { ${L} } tickets { id key summary statusId status statusCategory issueType priority assignee assigneeAccountId assigneeAvatarUrl projectKey updatedAt } statusOrder cache { source stale fetchedAt } truncated warnings`,M={highest:"border-red-500/30 bg-red-500/10 text-red-700 dark:text-red-300",high:"border-orange-500/30 bg-orange-500/10 text-orange-700 dark:text-orange-300",medium:"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300",low:"border-blue-500/30 bg-blue-500/10 text-blue-700 dark:text-blue-300",lowest:"border-slate-500/30 bg-slate-500/10 text-slate-700 dark:text-slate-300"};function F(e){let t=new URLSearchParams(window.location.search);for(let[r,a]of Object.entries(e))a?t.set(r,a):t.delete(r);let r=t.toString();window.history.pushState(null,"",`${window.location.pathname}${r?`?${r}`:""}`)}function U(e){return M[e.trim().toLowerCase()]}function O({statuses:e,value:r,onChange:n,label:i,placeholder:s,disabled:l}){let o=new Set(r);return(0,t.jsxs)(C.DropdownMenu,{children:[(0,t.jsx)(C.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsxs)(w.Button,{"aria-label":i,className:"w-full justify-between font-normal",disabled:l,type:"button",variant:"outline",children:[(0,t.jsx)("span",{className:"truncate",children:r.length>0?`${r.length} ${i}`:s}),(0,t.jsx)(a.ChevronDown,{className:"shrink-0"})]})}),(0,t.jsx)(C.DropdownMenuContent,{align:"start",className:"z-60 max-h-64",children:e.map(e=>(0,t.jsxs)(C.DropdownMenuCheckboxItem,{checked:o.has(e.id),onCheckedChange:t=>n(t?[...o,e.id]:r.filter(t=>t!==e.id)),onSelect:e=>e.preventDefault(),children:[(0,t.jsx)("span",{className:"truncate",children:e.name}),(0,t.jsx)("span",{className:"ml-auto mr-5 pl-2 text-xs text-muted-foreground",children:e.category})]},e.id))})]})}function V({open:e,setOpen:r,projects:a,selectedProjectId:n,onProjectsChanged:i}){let s=(0,h.useTranslations)("jiraTickets"),l=(0,h.useTranslations)("common"),[d,u]=(0,x.useState)([]),[m,f]=(0,x.useState)(""),[j,v]=(0,x.useState)(null),[b,k]=(0,x.useState)(""),[C,T]=(0,x.useState)("JQL"),[R,P]=(0,x.useState)(""),[$,L]=(0,x.useState)(null),[_,M]=(0,x.useState)([]),[U,q]=(0,x.useState)(!1),[H,K]=(0,x.useState)("ALL"),[G,W]=(0,x.useState)(!1),[Q,X]=(0,x.useState)([]),[Z,Y]=(0,x.useState)(""),[ee,et]=(0,x.useState)(!1),[er,ea]=(0,x.useState)(null);(0,x.useEffect)(()=>{if(!e)return;let t=window.setTimeout(async()=>{try{let e=await (0,J.controlPlaneRequest)("query { jiraAvailableProjects { jiraId key name avatarUrl } }");u(e.jiraAvailableProjects)}catch(e){ea(e instanceof Error?e.message:String(e))}},0);return()=>window.clearTimeout(t)},[e]);let en=a.find(e=>e.id===j)??a.find(e=>e.id===n)??a[0]??null,ei=d.filter(e=>!a.some(t=>t.jiraId===e.jiraId));(0,x.useEffect)(()=>{if(!e||!en)return;let t=!1,r=window.setTimeout(async()=>{K(en.ticketAssignmentFilter),W(en.hideCompletedTickets),X(en.completedStatusIds),Y(en.branchNamingScript??""),q(!0);try{let e=await (0,J.controlPlaneRequest)("query JiraProjectStatuses($projectId: ID!) { jiraProjectStatuses(projectId: $projectId) { id name category } }",{projectId:en.id});if(t)return;M(e.jiraProjectStatuses),ea(null)}catch(e){if(t)return;ea(e instanceof Error?e.message:String(e)),M([])}finally{t||q(!1)}},0);return()=>{t=!0,window.clearTimeout(r)}},[e,en]);let es=async()=>{if(m){et(!0);try{let e=await (0,J.controlPlaneRequest)(`mutation AddJiraProject($jiraId: ID!) { addJiraProject(jiraId: $jiraId) { ${z} } }`,{jiraId:m});i(e.addJiraProject);let t=e.addJiraProject.find(e=>e.jiraId===m);t&&v(t.id),f(""),ea(null)}catch(e){ea(e instanceof Error?e.message:String(e))}finally{et(!1)}}},el=async e=>{et(!0);try{let t=await (0,J.controlPlaneRequest)(`mutation RemoveJiraProject($projectId: ID!) { removeJiraProject(projectId: $projectId) { ${z} } }`,{projectId:e});i(t.removeJiraProject),e===en?.id&&v(t.removeJiraProject[0]?.id??null),F({project:t.removeJiraProject[0]?.id??null,source:t.removeJiraProject[0]?.sources[0]?.id??null,issue:null}),ea(null)}catch(e){ea(e instanceof Error?e.message:String(e))}finally{et(!1)}},eo=async e=>{if(e.preventDefault(),en){et(!0);try{let e=$?`mutation UpdateJiraSource($input: UpdateJiraSourceInput!) { updateJiraSource(input: $input) { ${z} } }`:`mutation CreateJiraSource($input: CreateJiraSourceInput!) { createJiraSource(input: $input) { ${z} } }`,t=$?{id:$.id,name:b,kind:C,value:R}:{projectId:en.id,name:b,kind:C,value:R},r=await (0,J.controlPlaneRequest)(e,{input:t});i($?r.updateJiraSource:r.createJiraSource),k(""),P(""),T("JQL"),L(null),ea(null)}catch(e){ea(e instanceof Error?e.message:String(e))}finally{et(!1)}}},ec=async e=>{et(!0);try{let t=await (0,J.controlPlaneRequest)(`mutation DeleteJiraSource($id: ID!) { deleteJiraSource(id: $id) { ${z} } }`,{id:e});i(t.deleteJiraSource);let r=t.deleteJiraSource.find(e=>e.id===en?.id);F({source:r?.sources[0]?.id??null,issue:null}),ea(null)}catch(e){ea(e instanceof Error?e.message:String(e))}finally{et(!1)}},ed=async()=>{if(en){et(!0);try{let e={projectId:en.id,ticketAssignmentFilter:H,hideCompletedTickets:G,completedStatusIds:Q},t=await (0,J.controlPlaneRequest)(`mutation UpdateJiraProjectDisplaySettings($input: UpdateJiraProjectDisplaySettingsInput!) { updateJiraProjectDisplaySettings(input: $input) { ${z} } }`,{input:e});i(t.updateJiraProjectDisplaySettings),ea(null)}catch(e){ea(e instanceof Error?e.message:String(e))}finally{et(!1)}}},eu=async()=>{if(en){et(!0);try{let e=await (0,J.controlPlaneRequest)(`mutation UpdateJiraProjectBranchNaming($projectId: ID!, $branchNamingScript: String!) {
|
|
2
|
-
updateJiraProjectBranchNaming(projectId: $projectId, branchNamingScript: $branchNamingScript) { ${z} }
|
|
3
|
-
}`,{projectId:en.id,branchNamingScript:Z});i(e.updateJiraProjectBranchNaming),ea(null)}catch(e){ea(e instanceof Error?e.message:String(e))}finally{et(!1)}}};return(0,t.jsx)(S.Dialog,{onOpenChange:e=>{e||v(null),r(e)},open:e,children:(0,t.jsxs)(S.DialogContent,{className:"overflow-x-hidden sm:max-w-4xl",children:[(0,t.jsxs)(S.DialogHeader,{children:[(0,t.jsx)(S.DialogTitle,{children:s("manageTitle")}),(0,t.jsx)(S.DialogDescription,{children:s("manageDescription")})]}),er&&(0,t.jsx)(y.Alert,{variant:"destructive",children:(0,t.jsx)(y.AlertDescription,{children:er})}),(0,t.jsxs)("div",{className:"grid min-w-0 gap-6 md:grid-cols-2",children:[(0,t.jsxs)("section",{className:"min-w-0 space-y-3",children:[(0,t.jsx)("h3",{className:"font-medium",children:s("projects")}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)(A.Select,{onValueChange:f,value:m,children:[(0,t.jsx)(A.SelectTrigger,{"aria-label":s("availableProjects"),className:"w-full",children:(0,t.jsx)(A.SelectValue,{placeholder:s("selectProject")})}),(0,t.jsx)(A.SelectContent,{className:"z-60",children:ei.map(e=>(0,t.jsxs)(A.SelectItem,{value:e.jiraId,children:[e.key," · ",e.name]},e.jiraId))})]}),(0,t.jsxs)(w.Button,{disabled:!m||ee,onClick:()=>void es(),size:"icon",children:[(0,t.jsx)(c.Plus,{}),(0,t.jsx)("span",{className:"sr-only",children:s("addProject")})]})]}),(0,t.jsx)("div",{className:"space-y-2",children:a.map(e=>(0,t.jsxs)(I.Item,{className:`min-w-0 gap-2 p-1 ${e.id===en?.id?"border-primary bg-primary/5":""}`,variant:"outline",children:[(0,t.jsxs)(w.Button,{"aria-pressed":e.id===en?.id,className:"h-auto min-w-0 flex-1 flex-col items-start p-2 text-left whitespace-normal",onClick:()=>{v(e.id),L(null),k(""),P(""),T("JQL")},type:"button",variant:"ghost",children:[(0,t.jsxs)("p",{className:"truncate text-sm font-medium",children:[e.key," · ",e.name]}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:s("sourceCount",{count:e.sources.length})})]}),(0,t.jsx)(g.ConfirmationDialog,{actionLabel:s("removeProject"),cancelLabel:l("cancel"),description:l("cannotBeUndone"),onConfirm:()=>el(e.id),title:s("confirmRemoveProject"),trigger:(0,t.jsxs)(w.Button,{disabled:ee,size:"icon-sm",variant:"ghost",children:[(0,t.jsx)(p.Trash2,{}),(0,t.jsx)("span",{className:"sr-only",children:s("removeProject")})]})})]},e.id))})]}),(0,t.jsxs)("section",{className:"min-w-0 space-y-3",children:[(0,t.jsx)("h3",{className:"font-medium",children:s("sourcesFor",{project:en?.key??"—"})}),en?.sources.map(e=>(0,t.jsxs)(I.Item,{className:"min-w-0 items-start gap-2 overflow-hidden",variant:"outline",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("p",{className:"truncate text-sm font-medium",children:e.name}),(0,t.jsxs)("div",{className:"flex min-w-0 items-center gap-1 text-xs text-muted-foreground",children:[(0,t.jsxs)("span",{className:"shrink-0",children:[e.kind," ·"]}),(0,t.jsx)("span",{className:"min-w-0 overflow-hidden text-ellipsis whitespace-nowrap [direction:rtl] md:[direction:ltr]",children:(0,t.jsx)("bdi",{children:e.value})})]})]}),(0,t.jsxs)("div",{className:"flex shrink-0",children:[(0,t.jsxs)(w.Button,{onClick:()=>{L(e),k(e.name),T(e.kind),P(e.value)},size:"icon-sm",variant:"ghost",children:[(0,t.jsx)(o.Pencil,{}),(0,t.jsx)("span",{className:"sr-only",children:s("editSource")})]}),(0,t.jsx)(g.ConfirmationDialog,{actionLabel:s("deleteSource"),cancelLabel:l("cancel"),description:l("cannotBeUndone"),onConfirm:()=>ec(e.id),title:s("confirmDeleteSource"),trigger:(0,t.jsxs)(w.Button,{disabled:ee,size:"icon-sm",variant:"ghost",children:[(0,t.jsx)(p.Trash2,{}),(0,t.jsx)("span",{className:"sr-only",children:s("deleteSource")})]})})]})]},e.id)),en&&(0,t.jsxs)("form",{className:"min-w-0 space-y-3 rounded-lg border p-3",onSubmit:e=>void eo(e),children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(E.Label,{className:"mb-1 block text-xs font-medium",htmlFor:"source-name",children:s("sourceName")}),(0,t.jsx)(D.Input,{id:"source-name",maxLength:100,onChange:e=>k(e.target.value),required:!0,value:b})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(E.Label,{className:"mb-1 block text-xs font-medium",htmlFor:"source-kind",children:s("sourceType")}),(0,t.jsxs)(A.Select,{onValueChange:e=>T(e),value:C,children:[(0,t.jsx)(A.SelectTrigger,{className:"w-full",id:"source-kind",children:(0,t.jsx)(A.SelectValue,{})}),(0,t.jsxs)(A.SelectContent,{className:"z-60",children:[(0,t.jsx)(A.SelectItem,{value:"JQL",children:"JQL"}),(0,t.jsx)(A.SelectItem,{value:"BOARD",children:s("boardUrl")})]})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(E.Label,{className:"mb-1 block text-xs font-medium",htmlFor:"source-value",children:"JQL"===C?"JQL":s("boardUrl")}),(0,t.jsx)(B.Textarea,{id:"source-value",onChange:e=>P(e.target.value),required:!0,value:R})]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2",children:[$&&(0,t.jsx)(w.Button,{onClick:()=>{L(null),k(""),P("")},type:"button",variant:"ghost",children:s("cancel")}),(0,t.jsx)(w.Button,{disabled:ee,type:"submit",children:$?s("saveSource"):s("addSource")})]})]}),en&&(0,t.jsxs)("section",{className:"min-w-0 space-y-3 rounded-lg border p-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h4",{className:"text-sm font-medium",children:s("displaySettings")}),(0,t.jsx)("p",{className:"mt-0.5 text-xs text-muted-foreground",children:s("displaySettingsDescription")})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(E.Label,{className:"mb-1 block text-xs font-medium",htmlFor:"ticket-assignment-filter",children:s("ticketsToShow")}),(0,t.jsxs)(A.Select,{onValueChange:e=>K(e),value:H,children:[(0,t.jsx)(A.SelectTrigger,{className:"w-full",id:"ticket-assignment-filter",children:(0,t.jsx)(A.SelectValue,{})}),(0,t.jsxs)(A.SelectContent,{className:"z-60",children:[(0,t.jsx)(A.SelectItem,{value:"ALL",children:s("allTickets")}),(0,t.jsx)(A.SelectItem,{value:"UNASSIGNED_OR_SELF",children:s("unassignedOrSelfAssigned")}),(0,t.jsx)(A.SelectItem,{value:"SELF_IN_PROGRESS",children:s("selfAssignedInProgress")})]})]})]}),(0,t.jsxs)("div",{className:"flex items-start gap-2 text-sm",children:[(0,t.jsx)(N.Checkbox,{checked:G,className:"mt-0.5",id:"hide-completed-tickets",onCheckedChange:e=>W(!0===e)}),(0,t.jsx)(E.Label,{className:"block leading-normal",htmlFor:"hide-completed-tickets",children:(0,t.jsxs)("span",{children:[(0,t.jsx)("span",{className:"block font-medium",children:s("hideCompletedTickets")}),(0,t.jsx)("span",{className:"block text-xs text-muted-foreground",children:s("hideCompletedTicketsDescription")})]})})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-1 text-xs font-medium",children:s("completedStatuses")}),(0,t.jsx)(O,{disabled:!G||U,label:s("completedStatuses"),onChange:X,placeholder:U?s("loadingStatuses"):s("selectCompletedStatuses"),statuses:_,value:Q})]}),(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)(w.Button,{disabled:ee,onClick:()=>void ed(),type:"button",children:s("saveDisplaySettings")})})]}),en&&(0,t.jsxs)("section",{className:"min-w-0 space-y-3 rounded-lg border p-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h4",{className:"text-sm font-medium",children:s("branchNaming")}),(0,t.jsx)("p",{className:"mt-0.5 text-xs text-muted-foreground",children:s("branchNamingDescription")})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(E.Label,{className:"mb-1 block text-xs font-medium",htmlFor:"jira-branch-naming-script",children:s("branchNamingFunction")}),(0,t.jsx)(B.Textarea,{className:"min-h-48 font-mono text-xs",id:"jira-branch-naming-script",onChange:e=>Y(e.target.value),spellCheck:!1,value:Z}),(0,t.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:s("branchNamingFunctionHelp")})]}),(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)(w.Button,{disabled:ee||!Z.trim(),onClick:()=>void eu(),type:"button",children:s("saveBranchNaming")})})]})]})]}),(0,t.jsx)(S.DialogFooter,{children:(0,t.jsx)(w.Button,{onClick:()=>r(!1),variant:"outline",children:s("done")})})]})})}e.s(["JiraTicketsPage",0,function(){let e=(0,h.useTranslations)("jiraTickets"),i=(0,f.useSearchParams)(),[o,p]=(0,x.useState)([]),[g,N]=(0,x.useState)(null),[S,C]=(0,x.useState)(!0),[D,I]=(0,x.useState)(!1),[E,A]=(0,x.useState)(null),[B,L]=(0,x.useState)(!1),[M,O]=(0,x.useState)("table"),[q,H]=(0,x.useState)(()=>new Set),K=i.get("project"),G=i.get("source"),W=i.get("issue"),Q=o.find(e=>e.id===K)??o[0]??null,X=Q?.sources.find(e=>e.id===G)??Q?.sources[0]??null,Z=(0,x.useRef)(0),Y=g?.source.id===X?.id?g:null,ee=(0,x.useCallback)(async()=>{try{let e=await (0,J.controlPlaneRequest)(`query JiraProjects { jiraProjects { ${z} } }`);p(e.jiraProjects),A(null)}catch(e){A(e instanceof Error?e.message:String(e))}finally{C(!1)}},[]);(0,x.useEffect)(()=>{let e=window.setTimeout(()=>void ee(),0);return()=>window.clearTimeout(e)},[ee]),(0,x.useEffect)(()=>{if(!Q)return;let e={};K!==Q.id&&(e.project=Q.id),X&&G!==X.id&&(e.source=X.id),Object.keys(e).length>0&&F(e)},[K,G,Q,X]);let et=(0,x.useCallback)(async(e,t=!1)=>{let r=++Z.current;I(!0),N(t=>t?.source.id===e?t:null);try{let a=t?`mutation RefreshJiraSource($sourceId: ID!) { refreshJiraSource(sourceId: $sourceId) { ${_} } }`:`query JiraTicketBoard($sourceId: ID!) { jiraTicketBoard(sourceId: $sourceId) { ${_} } }`,n=await (0,J.controlPlaneRequest)(a,{sourceId:e});if(r!==Z.current)return;N(t?n.refreshJiraSource:n.jiraTicketBoard),A(null)}catch(e){if(r!==Z.current)return;A(e instanceof Error?e.message:String(e)),N(null)}finally{r===Z.current&&I(!1)}},[]),er=(0,x.useCallback)(()=>{X&&et(X.id)},[et,X]);(0,x.useEffect)(()=>{if(!X){Z.current+=1;let e=window.setTimeout(()=>{N(null),I(!1)},0);return()=>window.clearTimeout(e)}let e=window.setTimeout(()=>void et(X.id),0);return()=>{window.clearTimeout(e),Z.current+=1}},[et,X]);let ea=(0,x.useMemo)(()=>{let e=new Map;for(let t of Y?.statusOrder??[])e.set(t,[]);for(let t of Y?.tickets??[]){let r=e.get(t.status)??[];r.push(t),e.set(t.status,r)}return[...e.entries()]},[Y]),en=e=>{H(t=>{let r=new Set(t);return r.has(e)?r.delete(e):r.add(e),r})};return(0,t.jsxs)("section",{className:"mx-auto flex w-full max-w-[1600px] flex-col gap-5",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:e("title")}),(0,t.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:e("description")})]}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)(w.Button,{onClick:()=>O(e=>"table"===e?"board":"table"),variant:"outline",children:["table"===M?(0,t.jsx)(s,{}):(0,t.jsx)(m,{}),"table"===M?e("showBoardLayout"):e("showTableLayout")]}),(0,t.jsxs)(w.Button,{disabled:!X||D,onClick:()=>X&&void et(X.id,!0),variant:"outline",children:[(0,t.jsx)(d.RefreshCw,{className:D?"animate-spin":void 0}),e("refresh")]}),(0,t.jsxs)(w.Button,{onClick:()=>L(!0),children:[(0,t.jsx)(u.Settings2,{}),e("manage")]})]})]}),E&&(0,t.jsx)(y.Alert,{variant:"destructive",children:(0,t.jsx)(y.AlertDescription,{children:E})}),S?(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(R.Spinner,{}),e("loading")]}):0===o.length?(0,t.jsxs)(T.Empty,{className:"border py-10",children:[(0,t.jsxs)(T.EmptyHeader,{children:[(0,t.jsx)(T.EmptyMedia,{variant:"icon",children:(0,t.jsx)(l,{})}),(0,t.jsx)(T.EmptyTitle,{children:e("emptyProjects")}),(0,t.jsx)(T.EmptyDescription,{children:e("emptyProjectsDescription")})]}),(0,t.jsxs)(w.Button,{className:"mt-4",onClick:()=>L(!0),children:[(0,t.jsx)(c.Plus,{}),e("addProject")]})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"overflow-x-auto pb-1",children:(0,t.jsx)($.Tabs,{value:Q?.id,onValueChange:e=>{let t=o.find(t=>t.id===e);F({project:e,source:t?.sources[0]?.id??null,issue:null})},children:(0,t.jsx)($.TabsList,{"aria-label":e("projectTabs"),children:o.map(e=>(0,t.jsx)($.TabsTrigger,{value:e.id,children:e.key},e.id))})})}),Q&&Q.sources.length>1?(0,t.jsx)("div",{className:"overflow-x-auto border-b pb-3",children:(0,t.jsx)($.Tabs,{value:X?.id,onValueChange:e=>F({source:e,issue:null}),children:(0,t.jsx)($.TabsList,{"aria-label":e("sourceTabs"),variant:"line",children:Q.sources.map(e=>(0,t.jsx)($.TabsTrigger,{value:e.id,children:e.name},e.id))})})}):Q?.sources.length===0?(0,t.jsxs)(T.Empty,{className:"border py-8",children:[(0,t.jsxs)(T.EmptyHeader,{children:[(0,t.jsx)(T.EmptyTitle,{children:e("emptySources")}),(0,t.jsx)(T.EmptyDescription,{children:e("emptySourcesDescription")})]}),(0,t.jsxs)(w.Button,{className:"mt-4",onClick:()=>L(!0),children:[(0,t.jsx)(c.Plus,{}),e("addSource")]})]}):null,Y?.cache.stale&&(0,t.jsxs)(y.Alert,{className:"border-amber-500/30 bg-amber-500/10 text-amber-800 dark:text-amber-300",children:[(0,t.jsx)(r.AlertTriangle,{}),(0,t.jsx)(y.AlertDescription,{className:"text-current",children:e("staleWarning")})]}),Y?.truncated&&(0,t.jsx)(y.Alert,{className:"bg-muted",children:(0,t.jsx)(y.AlertDescription,{children:e("truncatedWarning")})}),Y?.warnings.map(e=>(0,t.jsx)(y.Alert,{className:"bg-muted",children:(0,t.jsx)(y.AlertDescription,{children:e})},e)),X&&D&&!Y?(0,t.jsxs)("div",{className:"flex items-center gap-2 py-8 text-sm text-muted-foreground",children:[(0,t.jsx)(R.Spinner,{}),e("loadingTickets")]}):Y&&0===Y.tickets.length?(0,t.jsx)(T.Empty,{className:"border py-10",children:(0,t.jsx)(T.EmptyHeader,{children:(0,t.jsx)(T.EmptyDescription,{children:e("emptyTickets")})})}):Y?"table"===M?(0,t.jsx)("div",{className:"space-y-5 pb-4",children:ea.map(([r,i])=>(0,t.jsxs)(k.Card,{className:"gap-0 py-0",children:[(0,t.jsx)(k.CardHeader,{className:q.has(r)?"bg-muted/40 py-3":"border-b bg-muted/40 py-3",children:(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)(w.Button,{"aria-expanded":!q.has(r),className:"-m-2 h-auto min-w-0 flex-1 justify-start p-2 text-left aria-expanded:bg-transparent aria-expanded:hover:bg-muted dark:aria-expanded:bg-transparent dark:aria-expanded:hover:bg-muted/50",onClick:()=>en(r),type:"button",variant:"ghost",children:(0,t.jsx)("span",{className:"truncate font-medium",children:r})}),(0,t.jsxs)("div",{className:"ml-auto flex items-center justify-end gap-2",children:[(0,t.jsx)(b.Badge,{children:i.length}),(0,t.jsx)(w.Button,{"aria-expanded":!q.has(r),"aria-label":e(q.has(r)?"expandStatus":"collapseStatus",{status:r}),className:"aria-expanded:bg-transparent aria-expanded:hover:bg-muted dark:aria-expanded:bg-transparent dark:aria-expanded:hover:bg-muted/50",onClick:()=>en(r),size:"icon-sm",title:e(q.has(r)?"expandStatus":"collapseStatus",{status:r}),type:"button",variant:"ghost",children:q.has(r)?(0,t.jsx)(n.ChevronRight,{className:"size-5"}):(0,t.jsx)(a.ChevronDown,{className:"size-5"})})]})]})}),!q.has(r)&&(0,t.jsx)(k.CardContent,{className:"px-0",children:(0,t.jsxs)(P.Table,{children:[(0,t.jsx)(P.TableHeader,{children:(0,t.jsxs)(P.TableRow,{className:"hover:bg-transparent",children:[(0,t.jsx)(P.TableHead,{children:e("ticket")}),(0,t.jsx)(P.TableHead,{children:e("issueType")}),(0,t.jsx)(P.TableHead,{children:e("priority")}),(0,t.jsx)(P.TableHead,{children:e("assignee")}),(0,t.jsx)(P.TableHead,{children:e("updated")})]})}),(0,t.jsx)(P.TableBody,{children:i.map(r=>{var a;return(0,t.jsxs)(P.TableRow,{children:[(0,t.jsx)(P.TableCell,{className:"min-w-80 whitespace-normal",children:(0,t.jsxs)(w.Button,{className:"group h-auto w-full flex-col items-start justify-start gap-0 px-1 py-0.5 text-left whitespace-normal",onClick:()=>F({issue:r.key}),type:"button",variant:"ghost",children:[(0,t.jsx)("span",{className:"block text-xs font-semibold text-primary group-hover:underline",children:r.key}),(0,t.jsx)("span",{className:"mt-1 block font-medium",children:r.summary})]})}),(0,t.jsx)(P.TableCell,{children:r.issueType??e("issue")}),(0,t.jsx)(P.TableCell,{children:r.priority?(0,t.jsx)(b.Badge,{className:U(r.priority),children:r.priority}):"—"}),(0,t.jsx)(P.TableCell,{children:(0,t.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,t.jsx)(j.JiraPersonAvatar,{avatarUrl:r.assigneeAvatarUrl}),r.assignee??e("unassigned")]})}),(0,t.jsx)(P.TableCell,{className:"text-muted-foreground",children:(a=r.updatedAt)?new Date(a).toLocaleString():"—"})]},r.key)})})]})})]},r))}):(0,t.jsx)("div",{className:"overflow-x-auto pb-4",children:(0,t.jsx)("div",{className:"flex min-w-max items-start gap-4",children:ea.map(([r,a])=>(0,t.jsxs)("section",{className:"w-[19rem] rounded-xl bg-muted/50 p-3",children:[(0,t.jsxs)("div",{className:"mb-3 flex items-center justify-between gap-2",children:[(0,t.jsx)("h2",{className:"font-medium",children:r}),(0,t.jsx)(b.Badge,{children:a.length})]}),(0,t.jsx)("div",{className:"space-y-2",children:a.map(r=>(0,t.jsxs)(w.Button,{className:"h-auto w-full flex-col items-stretch rounded-lg p-3 text-left whitespace-normal shadow-sm",onClick:()=>F({issue:r.key}),type:"button",variant:"outline",children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,t.jsx)("span",{className:"text-xs font-semibold text-primary",children:r.key}),r.priority&&(0,t.jsx)(b.Badge,{className:U(r.priority),children:r.priority})]}),(0,t.jsx)("p",{className:"mt-2 line-clamp-3 text-sm font-medium",children:r.summary}),(0,t.jsxs)("div",{className:"mt-3 flex items-center justify-between gap-2 text-xs text-muted-foreground",children:[(0,t.jsx)("span",{children:r.issueType??e("issue")}),(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1",children:[(0,t.jsx)(j.JiraPersonAvatar,{avatarUrl:r.assigneeAvatarUrl,compact:!0}),(0,t.jsx)("span",{className:"truncate",children:r.assignee??e("unassigned")})]})]})]},r.key))})]},r))})}):null]}),(0,t.jsx)(V,{onProjectsChanged:p,open:B,projects:o,selectedProjectId:Q?.id??null,setOpen:L}),(0,t.jsx)(v.JiraTicketDrawer,{issueKey:W,onClose:()=>F({issue:null}),onTicketChange:er})]})}],960024)}]);
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,573474,e=>{"use strict";let t=(0,e.i(456420).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",0,t],573474)},340953,e=>{"use strict";var t=e.i(843476),r=e.i(271645),n=e.i(30030);function a(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function i(...e){return r.useCallback(function(...e){return t=>{let r=!1,n=e.map(e=>{let n=a(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():a(e[t],null)}}}}(...e),e)}var s=e.i(326999);"u">typeof window&&window.document&&window.document.createElement;var l="AlertDialog",[o,d]=(0,n.createContextScope)(l,[s.createDialogScope]),c=(0,s.createDialogScope)(),u=e=>{let{__scopeAlertDialog:r,...n}=e,a=c(r);return(0,t.jsx)(s.Root,{...a,...n,modal:!0})};u.displayName=l;var f=r.forwardRef((e,r)=>{let{__scopeAlertDialog:n,...a}=e,i=c(n);return(0,t.jsx)(s.Trigger,{...i,...a,ref:r})});f.displayName="AlertDialogTrigger";var p=e=>{let{__scopeAlertDialog:r,...n}=e,a=c(r);return(0,t.jsx)(s.Portal,{...a,...n})};p.displayName="AlertDialogPortal";var m=r.forwardRef((e,r)=>{let{__scopeAlertDialog:n,...a}=e,i=c(n);return(0,t.jsx)(s.Overlay,{...i,...a,ref:r})});m.displayName="AlertDialogOverlay";var x="AlertDialogContent",[h,g]=o(x),v=r.forwardRef((e,n)=>{let{__scopeAlertDialog:a,children:l,...o}=e,d=c(a),u=i(n,r.useRef(null)),f=r.useRef(null);return(0,t.jsx)(h,{scope:a,cancelRef:f,children:(0,t.jsx)(s.Content,{role:"alertdialog",...d,...o,ref:u,onOpenAutoFocus:function(e,t,{checkForDefaultPrevented:r=!0}={}){return function(n){if(e?.(n),!1===r||!n||!n.defaultPrevented)return t?.(n)}}(o.onOpenAutoFocus,e=>{e.preventDefault(),f.current?.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:l})})});v.displayName=x;var j=r.forwardRef((e,r)=>{let{__scopeAlertDialog:n,...a}=e,i=c(n);return(0,t.jsx)(s.Title,{...i,...a,ref:r})});j.displayName="AlertDialogTitle";var y=r.forwardRef((e,r)=>{let{__scopeAlertDialog:n,...a}=e,i=c(n);return(0,t.jsx)(s.Description,{...i,...a,ref:r})});y.displayName="AlertDialogDescription";var b=r.forwardRef((e,r)=>{let{__scopeAlertDialog:n,...a}=e,i=c(n);return(0,t.jsx)(s.Close,{...i,...a,ref:r})});b.displayName="AlertDialogAction";var w="AlertDialogCancel",C=r.forwardRef((e,r)=>{let{__scopeAlertDialog:n,...a}=e,{cancelRef:l}=g(w,n),o=c(n),d=i(r,l);return(0,t.jsx)(s.Close,{...o,...a,ref:d})});C.displayName=w,e.s(["Action",0,b,"AlertDialog",0,u,"AlertDialogAction",0,b,"AlertDialogCancel",0,C,"AlertDialogContent",0,v,"AlertDialogDescription",0,y,"AlertDialogOverlay",0,m,"AlertDialogPortal",0,p,"AlertDialogTitle",0,j,"AlertDialogTrigger",0,f,"Cancel",0,C,"Content",0,v,"Description",0,y,"Overlay",0,m,"Portal",0,p,"Root",0,u,"Title",0,j,"Trigger",0,f,"createAlertDialogScope",0,d],691162);var D=e.i(691162),D=D,A=e.i(975157),S=e.i(519455);function E({...e}){return(0,t.jsx)(D.Root,{"data-slot":"alert-dialog",...e})}function N({...e}){return(0,t.jsx)(D.Trigger,{"data-slot":"alert-dialog-trigger",...e})}function I({...e}){return(0,t.jsx)(D.Portal,{"data-slot":"alert-dialog-portal",...e})}function R({className:e,...r}){return(0,t.jsx)(D.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,A.cn)("fixed inset-0 z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...r})}function T({className:e,size:r="default",...n}){return(0,t.jsxs)(I,{children:[(0,t.jsx)(R,{}),(0,t.jsx)(D.Content,{"data-slot":"alert-dialog-content","data-size":r,className:(0,A.cn)("group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),...n})]})}function k({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,A.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",e),...r})}function B({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,A.cn)("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",e),...r})}function P({className:e,...r}){return(0,t.jsx)(D.Title,{"data-slot":"alert-dialog-title",className:(0,A.cn)("font-heading text-base font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",e),...r})}function $({className:e,...r}){return(0,t.jsx)(D.Description,{"data-slot":"alert-dialog-description",className:(0,A.cn)("text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),...r})}function U({className:e,variant:r="default",size:n="default",...a}){return(0,t.jsx)(S.Button,{variant:r,size:n,asChild:!0,children:(0,t.jsx)(D.Action,{"data-slot":"alert-dialog-action",className:(0,A.cn)(e),...a})})}function L({className:e,variant:r="outline",size:n="default",...a}){return(0,t.jsx)(S.Button,{variant:r,size:n,asChild:!0,children:(0,t.jsx)(D.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,A.cn)(e),...a})})}e.s(["ConfirmationDialog",0,function({actionLabel:e,cancelLabel:r,description:n,onConfirm:a,onOpenChange:i,open:s,title:l,trigger:o}){return(0,t.jsxs)(E,{onOpenChange:i,open:s,children:[o&&(0,t.jsx)(N,{asChild:!0,children:o}),(0,t.jsxs)(T,{children:[(0,t.jsxs)(k,{children:[(0,t.jsx)(P,{children:l}),(0,t.jsx)($,{children:n})]}),(0,t.jsxs)(B,{children:[(0,t.jsx)(L,{children:r}),(0,t.jsx)(U,{onClick:()=>void a(),variant:"destructive",children:e})]})]})]})}],340953)},711241,e=>{"use strict";let t=(0,e.i(456420).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],711241)},716327,e=>{"use strict";var t=e.i(26495);e.s(["ChevronDown",()=>t.default])},82612,e=>{"use strict";var t=e.i(843476),r=e.i(225913),n=e.i(975157);let a=(0,r.cva)("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",icon:"flex size-8 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-4"}},defaultVariants:{variant:"default"}});e.s(["Empty",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty",className:(0,n.cn)("flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-xl border-dashed p-6 text-center text-balance",e),...r})},"EmptyDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-description",className:(0,n.cn)("text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",e),...r})},"EmptyHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-header",className:(0,n.cn)("flex max-w-sm flex-col items-center gap-2",e),...r})},"EmptyMedia",0,function({className:e,variant:r="default",...i}){return(0,t.jsx)("div",{"data-slot":"empty-icon","data-variant":r,className:(0,n.cn)(a({variant:r,className:e})),...i})},"EmptyTitle",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-title",className:(0,n.cn)("font-heading text-sm font-medium tracking-tight",e),...r})}])},462777,e=>{"use strict";async function t(e){if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(e);return}catch{}let t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.append(t),t.select();let r=document.execCommand("copy");if(t.remove(),!r)throw Error("Copy is not supported by this browser")}e.s(["copyText",0,t,"createClientId",0,function(){try{if(globalThis.crypto?.randomUUID)return globalThis.crypto.randomUUID()}catch{}if(globalThis.crypto?.getRandomValues)try{let e=globalThis.crypto.getRandomValues(new Uint8Array(16));return Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")}catch{}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`}])},986253,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["default",0,t])},842727,e=>{"use strict";var t=e.i(271645);function r(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),!1===n||!r||!r.defaultPrevented)return t?.(r)}}"u">typeof window&&window.document&&window.document.createElement;var n=e.i(75830);function a(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function i(...e){return t.useCallback(function(...e){return t=>{let r=!1,n=e.map(e=>{let n=a(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():a(e[t],null)}}}}(...e),e)}var s=e.i(30030),l=e.i(610772);e.i(174080);var o=Symbol.for("radix.slottable"),d=Symbol.for("react.lazy");function c(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===d&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var u=t[" use ".trim().toString()],f=e.i(843476),p=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,r)=>{var n;let a,s=(n=`Primitive.${r}`,(a=t.forwardRef((e,r)=>{var a;let s,l,{children:d,...f}=e,p=null,m=!1,x=[];c(d)&&"function"==typeof u&&(d=u(d._payload)),t.Children.forEach(d,e=>{var r;if(r=e,t.isValidElement(r)&&"function"==typeof r.type&&"__radixId"in r.type&&r.type.__radixId===o){m=!0;let r="child"in e.props?e.props.child:e.props.children;c(r)&&"function"==typeof u&&(r=u(r._payload)),p=((e,r)=>{if("child"in e.props){let r=e.props.child;return t.isValidElement(r)?t.cloneElement(r,void 0,e.props.children(r.props.children)):null}return t.isValidElement(r)?r:null})(e,r),x.push(p?.props?.children)}else x.push(e)}),p?p=t.cloneElement(p,void 0,x):!m&&1===t.Children.count(d)&&t.isValidElement(d)&&(p=d);let h=p?(a=p,(l=(s=Object.getOwnPropertyDescriptor(a.props,"ref")?.get)&&"isReactWarning"in s&&s.isReactWarning)?a.ref:(l=(s=Object.getOwnPropertyDescriptor(a,"ref")?.get)&&"isReactWarning"in s&&s.isReactWarning)?a.props.ref:a.props.ref||a.ref):void 0,g=i(r,h);if(!p){if(d||0===d){let e,t;throw Error(m?(e=n,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=n,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return d}let v=function(e,t){let r={...t};for(let n in t){let a=e[n],i=t[n];/^on[A-Z]/.test(n)?a&&i?r[n]=(...e)=>{let t=i(...e);return a(...e),t}:a&&(r[n]=a):"style"===n?r[n]={...a,...i}:"className"===n&&(r[n]=[a,i].filter(Boolean).join(" "))}return{...e,...r}}(f,p.props??{});return p.type!==t.Fragment&&(v.ref=r?g:h),t.cloneElement(p,v)})).displayName=`${n}.Slot`,a),l=t.forwardRef((e,t)=>{let{asChild:n,...a}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,f.jsx)(n?s:r,{...a,ref:t})});return l.displayName=`Primitive.${r}`,{...e,[r]:l}},{}),m=e.i(30207),x=globalThis?.document?t.useLayoutEffect:()=>{};t[" useEffectEvent ".trim().toString()],t[" useInsertionEffect ".trim().toString()];var h=t[" useInsertionEffect ".trim().toString()]||x;Symbol("RADIX:SYNC_STATE");var g=e.i(586318),v=!1,j=t[" useSyncExternalStore ".trim().toString()];function y(){return()=>{}}var b="function"==typeof j?function(){return j(y,()=>!0,()=>!1)}:function(){let[e,r]=t.useState(v);return t.useEffect(()=>{v||(v=!0,r(!0))},[]),e},w="rovingFocusGroup.onEntryFocus",C={bubbles:!1,cancelable:!0},D="RovingFocusGroup",[A,S,E]=(0,n.createCollection)(D),[N,I]=(0,s.createContextScope)(D,[E]),[R,T]=N(D),k=t.forwardRef((e,t)=>(0,f.jsx)(A.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,f.jsx)(A.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,f.jsx)(B,{...e,ref:t})})}));k.displayName=D;var B=t.forwardRef((e,n)=>{let{__scopeRovingFocusGroup:a,orientation:s,loop:l=!1,dir:o,currentTabStopId:d,defaultCurrentTabStopId:c,onCurrentTabStopIdChange:u,onEntryFocus:x,preventScrollOnEntryFocus:v=!1,...j}=e,y=t.useRef(null),b=i(n,y),A=(0,g.useDirection)(o),[E,N]=function({prop:e,defaultProp:r,onChange:n=()=>{},caller:a}){let[i,s,l]=function({defaultProp:e,onChange:r}){let[n,a]=t.useState(e),i=t.useRef(n),s=t.useRef(r);return h(()=>{s.current=r},[r]),t.useEffect(()=>{i.current!==n&&(s.current?.(n),i.current=n)},[n,i]),[n,a,s]}({defaultProp:r,onChange:n}),o=void 0!==e,d=o?e:i;{let r=t.useRef(void 0!==e);t.useEffect(()=>{let e=r.current;if(e!==o){let t=o?"controlled":"uncontrolled";console.warn(`${a} is changing from ${e?"controlled":"uncontrolled"} to ${t}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}r.current=o},[o,a])}return[d,t.useCallback(t=>{if(o){let r="function"==typeof t?t(e):t;r!==e&&l.current?.(r)}else s(t)},[o,e,s,l])]}({prop:d,defaultProp:c??null,onChange:u,caller:D}),[I,T]=t.useState(!1),k=(0,m.useCallbackRef)(x),B=S(a),P=t.useRef(!1),[$,U]=t.useState(0);return t.useEffect(()=>{let e=y.current;if(e)return e.addEventListener(w,k),()=>e.removeEventListener(w,k)},[k]),(0,f.jsx)(R,{scope:a,orientation:s,dir:A,loop:l,currentTabStopId:E,onItemFocus:t.useCallback(e=>N(e),[N]),onItemShiftTab:t.useCallback(()=>T(!0),[]),onFocusableItemAdd:t.useCallback(()=>U(e=>e+1),[]),onFocusableItemRemove:t.useCallback(()=>U(e=>e-1),[]),children:(0,f.jsx)(p.div,{tabIndex:I||0===$?-1:0,"data-orientation":s,...j,ref:b,style:{outline:"none",...e.style},onMouseDown:r(e.onMouseDown,()=>{P.current=!0}),onFocus:r(e.onFocus,e=>{let t=!P.current;if(e.target===e.currentTarget&&t&&!I){let t=new CustomEvent(w,C);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=B().filter(e=>e.focusable);L([e.find(e=>e.active),e.find(e=>e.id===E),...e].filter(Boolean).map(e=>e.ref.current),v)}}P.current=!1}),onBlur:r(e.onBlur,()=>T(!1))})})}),P="RovingFocusGroupItem",$=t.forwardRef((e,n)=>{let{__scopeRovingFocusGroup:a,focusable:i=!0,active:s=!1,tabStopId:o,children:d,...c}=e,u=(0,l.useId)(),m=o||u,h=T(P,a),g=h.currentTabStopId===m,v=S(a),{onFocusableItemAdd:j,onFocusableItemRemove:y,currentTabStopId:w}=h,C=b();return x(()=>{if(C&&i)return j(),()=>y()},[C,i,j,y]),t.useEffect(()=>{if(!C&&i)return j(),()=>y()},[C,i,j,y]),(0,f.jsx)(A.ItemSlot,{scope:a,id:m,focusable:i,active:s,children:(0,f.jsx)(p.span,{tabIndex:g?0:-1,"data-orientation":h.orientation,...c,ref:n,onMouseDown:r(e.onMouseDown,e=>{i?h.onItemFocus(m):e.preventDefault()}),onFocus:r(e.onFocus,()=>h.onItemFocus(m)),onKeyDown:r(e.onKeyDown,e=>{if("Tab"===e.key&&e.shiftKey)return void h.onItemShiftTab();if(e.target!==e.currentTarget)return;let t=function(e,t,r){var n;let a=(n=e.key,"rtl"!==r?n:"ArrowLeft"===n?"ArrowRight":"ArrowRight"===n?"ArrowLeft":n);if(!("vertical"===t&&["ArrowLeft","ArrowRight"].includes(a))&&!("horizontal"===t&&["ArrowUp","ArrowDown"].includes(a)))return U[a]}(e,h.orientation,h.dir);if(void 0!==t){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let a=v().filter(e=>e.focusable).map(e=>e.ref.current);if("last"===t)a.reverse();else if("prev"===t||"next"===t){var r,n;"prev"===t&&a.reverse();let i=a.indexOf(e.currentTarget);a=h.loop?(r=a,n=i+1,r.map((e,t)=>r[(n+t)%r.length])):a.slice(i+1)}setTimeout(()=>L(a))}}),children:"function"==typeof d?d({isCurrentTabStop:g,hasTabStop:null!=w}):d})})});$.displayName=P;var U={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function L(e,t=!1){let r=document.activeElement;for(let n of e)if(n===r||(n.focus({preventScroll:t}),document.activeElement!==r))return}e.s(["Item",0,$,"Root",0,k,"createRovingFocusGroupScope",0,I],842727)},762368,e=>{"use strict";let t=(0,e.i(456420).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);e.s(["Download",0,t],762368)},21357,e=>{"use strict";let t=(0,e.i(456420).default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);e.s(["Play",0,t],21357)},876561,e=>{"use strict";let t=(0,e.i(456420).default)("archive",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]]);e.s(["Archive",0,t],876561)},929272,e=>{"use strict";let t=(0,e.i(456420).default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);e.s(["Square",0,t],929272)},885325,e=>{"use strict";var t=e.i(843476),r=e.i(876561),n=e.i(711241),a=e.i(716327),i=e.i(762368),s=e.i(21357),l=e.i(929272),o=e.i(573474),d=e.i(861745),c=e.i(948148),u=e.i(271645),f=e.i(340953),p=e.i(929592),m=e.i(487486),x=e.i(519455),h=e.i(515288),g=e.i(776639),v=e.i(755146),j=e.i(82612),y=e.i(793479),b=e.i(110204),w=e.i(967489),C=e.i(987968),D=e.i(520133),A=e.i(462777),S=e.i(637611);let E=`
|
|
2
|
-
id requestId jobId status action destinationType destination snapshot commandSummary artifactDirectory errorCode error
|
|
3
|
-
createdAt startedAt finishedAt durationMs updatedAt
|
|
4
|
-
configuration {
|
|
5
|
-
id name iconKey scheme buildConfiguration defaultAction advancedSettings createdAt updatedAt
|
|
6
|
-
source { id kind relativePath }
|
|
7
|
-
}
|
|
8
|
-
artifacts { id kind relativePath sizeBytes checksum metadata createdAt }
|
|
9
|
-
scriptExecutions { id phase position nameSnapshot status exitCode durationMs causedBuildFailure outputRelativePath error }
|
|
10
|
-
deployments { id batchId destination status commandSummary outputRelativePath error createdAt startedAt finishedAt }
|
|
11
|
-
exports { id status settings commandSummary outputRelativePath error createdAt startedAt finishedAt }
|
|
12
|
-
`,N="id scope scopeId sequence phase level stream message createdAt";function I({label:e,value:r,mono:n=!1}){return(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{className:"text-xs text-muted-foreground",children:e}),(0,t.jsx)("dd",{className:n?"mt-0.5 break-all font-mono text-xs":"mt-0.5",children:r})]})}function R({buildId:e,open:r,onOpenChange:n,onSaved:a}){let i=(0,c.useTranslations)("builds"),[s,l]=(0,u.useState)("DEBUGGING"),[o,d]=(0,u.useState)("AUTOMATIC"),[f,m]=(0,u.useState)(""),[h,v]=(0,u.useState)(!1),[j,D]=(0,u.useState)(null),E=async()=>{v(!0);try{await (0,S.controlPlaneRequest)(`mutation ExportArchive($input: ExportBuildArchiveInput!) {
|
|
13
|
-
exportBuildArchive(input: $input) { id status }
|
|
14
|
-
}`,{input:{buildId:e,requestId:(0,A.createClientId)(),settings:{method:s,signingStyle:o,teamId:f||null,signingCertificate:null,provisioningProfiles:{},uploadSymbols:!0,manageAppVersionAndBuildNumber:!0,testFlightInternalTestingOnly:!1}}}),await a(),n(!1)}catch(e){D(e instanceof Error?e.message:String(e))}finally{v(!1)}};return(0,t.jsx)(g.Dialog,{onOpenChange:n,open:r,children:(0,t.jsxs)(g.DialogContent,{children:[(0,t.jsxs)(g.DialogHeader,{children:[(0,t.jsx)(g.DialogTitle,{children:i("exportArchive")}),(0,t.jsx)(g.DialogDescription,{children:i("exportArchiveDescription")})]}),j&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:j})}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:i("distributionMethod")}),(0,t.jsxs)(w.Select,{onValueChange:l,value:s,children:[(0,t.jsx)(w.SelectTrigger,{children:(0,t.jsx)(w.SelectValue,{})}),(0,t.jsx)(w.SelectContent,{children:["DEBUGGING","RELEASE_TESTING","ENTERPRISE","APP_STORE_CONNECT"].map(e=>(0,t.jsx)(w.SelectItem,{value:e,children:e},e))})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:i("signingStyle")}),(0,t.jsxs)(w.Select,{onValueChange:d,value:o,children:[(0,t.jsx)(w.SelectTrigger,{children:(0,t.jsx)(w.SelectValue,{})}),(0,t.jsxs)(w.SelectContent,{children:[(0,t.jsx)(w.SelectItem,{value:"AUTOMATIC",children:i("automatic")}),(0,t.jsx)(w.SelectItem,{value:"MANUAL",children:i("manual")})]})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"export-team-id",children:i("developmentTeam")}),(0,t.jsx)(y.Input,{id:"export-team-id",onChange:e=>m(e.target.value),value:f})]})]}),(0,t.jsxs)(g.DialogFooter,{children:[(0,t.jsx)(x.Button,{onClick:()=>n(!1),variant:"outline",children:i("cancel")}),(0,t.jsxs)(x.Button,{disabled:h,onClick:()=>void E(),children:[h&&(0,t.jsx)(C.Spinner,{})," ",i("exportArchive")]})]})]})})}e.s(["BuildDetailPage",0,function({buildId:e}){let g=(0,c.useTranslations)("builds"),y=(0,d.useLocale)(),b=(0,D.useRouter)(),[w,T]=(0,u.useState)(null),[k,B]=(0,u.useState)([]),[P,$]=(0,u.useState)(!0),[U,L]=(0,u.useState)(null),[F,M]=(0,u.useState)(!1),[z,O]=(0,u.useState)([]),[_,q]=(0,u.useState)(new Set),[G,V]=(0,u.useState)(!1),[H,K]=(0,u.useState)(!1),[Q,W]=(0,u.useState)(!1),X=(0,u.useRef)(null),Y=(0,u.useCallback)(async()=>{try{let t=await (0,S.controlPlaneRequest)(`query BuildDetail($id: ID!) {
|
|
15
|
-
build(id: $id) { ${E} }
|
|
16
|
-
buildLogs(buildId: $id, first: 5000) { ${N} }
|
|
17
|
-
}`,{id:e});T(t.build),B(t.buildLogs),L(null)}catch(e){L(e instanceof Error?e.message:String(e))}finally{$(!1)}},[e]);(0,u.useEffect)(()=>{let e=window.setTimeout(()=>void Y(),0);return()=>window.clearTimeout(e)},[Y]),(0,u.useEffect)(()=>{let t=(0,S.controlPlaneSubscriptions)().subscribe({query:"subscription BuildChanged($id: ID!) { buildChanged(id: $id) { id } }",variables:{id:e}},{next:()=>void Y(),error:()=>void 0,complete:()=>void 0}),r=(0,S.controlPlaneSubscriptions)().subscribe({query:`subscription BuildLogAdded($buildId: ID!) {
|
|
18
|
-
buildLogAdded(buildId: $buildId) { ${N} }
|
|
19
|
-
}`,variables:{buildId:e}},{next:e=>{let t=e.data?.buildLogAdded;t&&B(e=>e.some(e=>e.id===t.id)?e:[...e,t])},error:()=>void 0,complete:()=>void 0});return()=>{t(),r()}},[e,Y]);let Z=null!==w&&(["QUEUED","PREPARING","RUNNING"].includes(w.status)||w.deployments.some(e=>["QUEUED","RUNNING"].includes(e.status))||w.exports.some(e=>["QUEUED","RUNNING"].includes(e.status)));(0,u.useEffect)(()=>{if(!Z)return;let e=window.setInterval(()=>void Y(),2e3);return()=>window.clearInterval(e)},[Z,Y]),(0,u.useEffect)(()=>{Z&&X.current&&(X.current.scrollTop=X.current.scrollHeight)},[Z,k]);let J=async()=>{M(!0);try{await (0,S.controlPlaneRequest)("mutation CancelBuild($id: ID!) { cancelBuild(id: $id) { id status } }",{id:e}),await Y()}catch(e){L(e instanceof Error?e.message:String(e))}finally{M(!1)}},ee=async()=>{M(!0),L(null);try{await (0,S.controlPlaneRequest)("mutation DeleteBuild($ids: [ID!]!) { deleteBuilds(ids: $ids) }",{ids:[e]}),b.replace("/builds")}catch(e){L(e instanceof Error?e.message:String(e)),W(!1)}finally{M(!1)}},et=async()=>{if(w){V(!0),L(null);try{let e=(await (0,S.controlPlaneRequest)(`mutation BuildRunDestinations($buildId: ID!, $requestId: ID!) {
|
|
20
|
-
inspectBuildRunDestinations(buildId: $buildId, requestId: $requestId)
|
|
21
|
-
}`,{buildId:w.id,requestId:(0,A.createClientId)()})).inspectBuildRunDestinations.filter(e=>e.type===w.destinationType&&!e.generic);O(e),q(new Set)}catch(e){L(e instanceof Error?e.message:String(e))}finally{V(!1)}}},er=async()=>{if(w){M(!0),L(null);try{await (0,S.controlPlaneRequest)(`mutation RunCompletedBuild($input: RunBuildInput!) {
|
|
22
|
-
runBuild(input: $input) { id status }
|
|
23
|
-
}`,{input:{buildId:w.id,destinations:z.filter(e=>_.has(e.id)),requestId:(0,A.createClientId)()}}),q(new Set),await Y()}catch(e){L(e instanceof Error?e.message:String(e))}finally{M(!1)}}},en=w?.artifacts.some(e=>"RUNNABLE_APP"===e.kind),ea=w?.artifacts.some(e=>"ARCHIVE"===e.kind),ei=w?.snapshot??{},es=ei.repository,el=ei.worktree,eo=ei.configuration,ed=(0,u.useMemo)(()=>z.filter(e=>_.has(e.id)).map(e=>e.name),[z,_]),ec=e=>e?new Date(e).toLocaleString(y):"—";return P?(0,t.jsxs)("p",{className:"mx-auto flex max-w-6xl items-center gap-2 text-muted-foreground",children:[(0,t.jsx)(C.Spinner,{})," ",g("loading")]}):w?(0,t.jsxs)("section",{className:"mx-auto flex w-full max-w-6xl flex-col gap-5",children:[(0,t.jsx)("div",{children:(0,t.jsx)(x.Button,{asChild:!0,className:"-ml-2",size:"sm",variant:"ghost",children:(0,t.jsxs)(D.Link,{href:"/builds",children:[(0,t.jsx)(n.ArrowLeft,{})," ",g("backToBuilds")]})})}),U&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:U})}),w.error&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsxs)(p.AlertDescription,{children:[w.errorCode?`${w.errorCode}: `:"",w.error]})}),(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:es?.name??"—"}),(0,t.jsxs)("div",{className:"mt-1 flex flex-wrap items-center gap-2",children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold",children:eo?.name??w.id}),(0,t.jsx)(m.Badge,{variant:"FAILED"===w.status?"destructive":"SUCCEEDED"===w.status?"default":"secondary",children:g(`statuses.${w.status}`)}),(0,t.jsx)(m.Badge,{variant:"outline",children:g(`actions.${w.action}`)})]}),(0,t.jsxs)("p",{className:"mt-1 font-mono text-xs text-muted-foreground",children:[el?.branch??el?.folder??"—"," ·"," ",w.destination.name]}),(0,t.jsxs)("p",{className:"mt-1 font-mono text-xs text-muted-foreground",children:[g("buildId"),": ",w.id]})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[["QUEUED","PREPARING","RUNNING"].includes(w.status)&&(0,t.jsxs)(x.Button,{disabled:F,onClick:()=>void J(),variant:"destructive",children:[F?(0,t.jsx)(C.Spinner,{}):(0,t.jsx)(l.Square,{})," ",g("cancelBuild")]}),"SUCCEEDED"===w.status&&en&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(v.DropdownMenu,{onOpenChange:e=>{e&&!z.length&&et()},children:[(0,t.jsx)(v.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsxs)(x.Button,{disabled:G,variant:"outline",children:[G?(0,t.jsx)(C.Spinner,{}):(0,t.jsx)(s.Play,{}),ed.length?g("selectedDevices",{count:ed.length}):g("selectRunDevices"),(0,t.jsx)(a.ChevronDown,{})]})}),(0,t.jsxs)(v.DropdownMenuContent,{align:"end",className:"w-72",children:[z.map(e=>(0,t.jsxs)(v.DropdownMenuCheckboxItem,{checked:_.has(e.id),onCheckedChange:t=>q(r=>{let n=new Set(r);return t?n.add(e.id):n.delete(e.id),n}),children:[e.name,e.osVersion?` \xb7 ${e.osVersion}`:""]},e.id)),!z.length&&(0,t.jsx)("p",{className:"p-2 text-xs text-muted-foreground",children:g("noCompatibleDevices")})]})]}),(0,t.jsxs)(x.Button,{disabled:F||0===_.size,onClick:()=>void er(),children:[F?(0,t.jsx)(C.Spinner,{}):(0,t.jsx)(s.Play,{})," ",g("run")]})]}),"SUCCEEDED"===w.status&&ea&&(0,t.jsxs)(x.Button,{onClick:()=>K(!0),variant:"outline",children:[(0,t.jsx)(r.Archive,{})," ",g("exportArchive")]}),(0,t.jsxs)(x.Button,{disabled:F||["QUEUED","PREPARING","RUNNING"].includes(w.status),onClick:()=>W(!0),variant:"destructive",children:[(0,t.jsx)(o.Trash2,{})," ",g("deleteBuild")]})]})]}),(0,t.jsxs)("div",{className:"grid gap-5 lg:grid-cols-[minmax(0,2fr)_minmax(18rem,1fr)]",children:[(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)(h.Card,{children:[(0,t.jsx)(h.CardHeader,{children:(0,t.jsx)(h.CardTitle,{children:g("logs")})}),(0,t.jsx)(h.CardContent,{children:(0,t.jsx)("pre",{className:"max-h-[36rem] overflow-auto rounded-lg bg-neutral-950 p-3 text-xs whitespace-pre-wrap text-neutral-100",ref:X,children:k.length?k.map(e=>`[${e.phase}] ${e.message}`).join("\n"):g("noLogs")})})]}),(0,t.jsxs)(h.Card,{children:[(0,t.jsx)(h.CardHeader,{children:(0,t.jsx)(h.CardTitle,{children:g("commandSummary")})}),(0,t.jsx)(h.CardContent,{children:(0,t.jsx)("pre",{className:"overflow-x-auto rounded-lg bg-muted p-3 text-xs whitespace-pre-wrap",children:w.commandSummary})})]}),(0,t.jsxs)(h.Card,{children:[(0,t.jsx)(h.CardHeader,{children:(0,t.jsx)(h.CardTitle,{children:g("scripts")})}),(0,t.jsx)(h.CardContent,{className:"space-y-2",children:w.scriptExecutions.length?w.scriptExecutions.map(e=>(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2 rounded-lg border p-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("p",{className:"text-sm font-medium",children:[e.nameSnapshot," · ",e.phase]}),e.error&&(0,t.jsx)("p",{className:"text-xs text-destructive",children:e.error})]}),(0,t.jsx)(m.Badge,{variant:"FAILED"===e.status?"destructive":"outline",children:e.status})]},e.id)):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:g("noScriptExecutions")})})]})]}),(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)(h.Card,{children:[(0,t.jsx)(h.CardHeader,{children:(0,t.jsx)(h.CardTitle,{children:g("overview")})}),(0,t.jsx)(h.CardContent,{children:(0,t.jsxs)("dl",{className:"space-y-3 text-sm",children:[(0,t.jsx)(I,{label:g("buildId"),value:w.id,mono:!0}),(0,t.jsx)(I,{label:g("scheme"),value:eo?.scheme??"—",mono:!0}),(0,t.jsx)(I,{label:g("configuration"),value:eo?.buildConfiguration??"—",mono:!0}),(0,t.jsx)(I,{label:g("head"),value:el?.headSha??"—",mono:!0}),(0,t.jsx)(I,{label:g("startedAt"),value:ec(w.startedAt)}),(0,t.jsx)(I,{label:g("finishedAt"),value:ec(w.finishedAt)}),(0,t.jsx)(I,{label:g("artifactDirectory"),value:w.artifactDirectory,mono:!0})]})})]}),(0,t.jsxs)(h.Card,{children:[(0,t.jsx)(h.CardHeader,{children:(0,t.jsx)(h.CardTitle,{children:g("artifacts")})}),(0,t.jsx)(h.CardContent,{className:"space-y-2",children:w.artifacts.length?w.artifacts.map(e=>(0,t.jsxs)("div",{className:"rounded-lg border p-2",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)(m.Badge,{variant:"outline",children:e.kind}),(0,t.jsx)(x.Button,{asChild:!0,size:"sm",variant:"outline",children:(0,t.jsxs)("a",{download:!0,href:`/api/builds/${encodeURIComponent(w.id)}/artifacts/${encodeURIComponent(e.id)}`,children:[(0,t.jsx)(i.Download,{})," ",g("downloadArtifact")]})})]}),(0,t.jsx)("p",{className:"mt-1 break-all font-mono text-xs text-muted-foreground",children:e.relativePath})]},e.id)):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:g("noArtifacts")})})]}),(0,t.jsxs)(h.Card,{children:[(0,t.jsx)(h.CardHeader,{children:(0,t.jsx)(h.CardTitle,{children:g("runsAndExports")})}),(0,t.jsxs)(h.CardContent,{className:"space-y-2",children:[w.deployments.map(e=>(0,t.jsxs)("div",{className:"rounded-lg border p-2",children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:e.destination.name}),(0,t.jsx)(m.Badge,{variant:"FAILED"===e.status?"destructive":"outline",children:e.status}),e.error&&(0,t.jsx)("p",{className:"mt-1 text-xs text-destructive",children:e.error})]},e.id)),w.exports.map(e=>(0,t.jsxs)("div",{className:"rounded-lg border p-2",children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:g("archiveExport")}),(0,t.jsx)(m.Badge,{variant:"FAILED"===e.status?"destructive":"outline",children:e.status}),e.outputRelativePath&&(0,t.jsx)("p",{className:"mt-1 font-mono text-xs",children:e.outputRelativePath}),e.error&&(0,t.jsx)("p",{className:"mt-1 text-xs text-destructive",children:e.error})]},e.id)),!w.deployments.length&&!w.exports.length&&(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:g("noRunsOrExports")})]})]})]})]}),H&&(0,t.jsx)(R,{buildId:w.id,onOpenChange:K,onSaved:Y,open:H}),(0,t.jsx)(f.ConfirmationDialog,{actionLabel:g("deleteBuild"),cancelLabel:g("cancel"),description:g("deleteBuildDescription"),onConfirm:ee,onOpenChange:W,open:Q,title:g("deleteBuildTitle")})]}):(0,t.jsxs)(j.Empty,{className:"mx-auto max-w-6xl border py-12",children:[(0,t.jsxs)(j.EmptyHeader,{children:[(0,t.jsx)(j.EmptyTitle,{children:g("buildNotFound")}),(0,t.jsx)(j.EmptyDescription,{children:g("buildNotFoundDescription")})]}),(0,t.jsx)(x.Button,{asChild:!0,variant:"outline",children:(0,t.jsxs)(D.Link,{href:"/builds",children:[(0,t.jsx)(n.ArrowLeft,{})," ",g("backToBuilds")]})})]})}])}]);
|