@ai-development-environment/server 0.0.29 → 0.0.31
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/20260719010000_add_build_reports/migration.sql +29 -0
- package/prisma-runtime/prisma/schema.prisma +23 -0
- package/standalone/.next/BUILD_ID +1 -1
- package/standalone/.next/app-path-routes-manifest.json +3 -0
- package/standalone/.next/build-manifest.json +6 -6
- package/standalone/.next/prerender-manifest.json +3 -3
- package/standalone/.next/routes-manifest.json +26 -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 +1 -1
- 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]/manifest.plist/route/app-paths-manifest.json +3 -0
- package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route/build-manifest.json +9 -0
- package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route/server-reference-manifest.json +4 -0
- package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route.js +11 -0
- package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route.js.map +5 -0
- package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route.js.nft.json +1 -0
- package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route_client-reference-manifest.js +3 -0
- package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/route.js +4 -3
- 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.nft.json +1 -1
- package/standalone/.next/server/app/api/codebases/route.js.nft.json +1 -1
- package/standalone/.next/server/app/api/graphql/route.js.nft.json +1 -1
- package/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/standalone/.next/server/app/api/tools/call/route.js.nft.json +1 -1
- 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 +3 -0
- package/standalone/.next/server/chunks/07_e_builds_[buildId]_artifacts_[artifactId]_manifest_plist_route_actions_18mzaf3.js +3 -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]__08mnmfs._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__0906ea6._.js +3 -0
- package/standalone/.next/server/chunks/{[root-of-the-server]__0-ypkf7._.js → [root-of-the-server]__09v6swg._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__1wtng3p._.js → [root-of-the-server]__0aiyd05._.js} +1 -1
- package/standalone/.next/server/chunks/{[root-of-the-server]__09skp6r._.js → [root-of-the-server]__0cz4ap5._.js} +1 -1
- package/standalone/.next/server/chunks/[root-of-the-server]__0nvcazp._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__12807ia._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__15_clsj._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__1csx222._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__1ix62p0._.js +122 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__1j-hk6b._.js +3 -0
- package/standalone/.next/server/chunks/{[root-of-the-server]__15aat79._.js → [root-of-the-server]__1j0u03u._.js} +1 -1
- 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]__1qmvsu_._.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]__1w59u6o._.js +3 -0
- package/standalone/.next/server/chunks/[root-of-the-server]__1z-3x8k._.js +3 -0
- package/standalone/.next/server/chunks/_0exkna-._.js +193 -8
- package/standalone/.next/server/chunks/_0jurkow._.js +1 -1
- package/standalone/.next/server/chunks/_0rx5rfm._.js +1 -1
- package/standalone/.next/server/chunks/_0tufgj0._.js +263 -78
- package/standalone/.next/server/chunks/_0w2eghf._.js +193 -8
- package/standalone/.next/server/chunks/_152rnkf._.js +17 -17
- package/standalone/.next/server/chunks/_16x77b_._.js +1 -1
- 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/node_modules_next_dist_esm_build_templates_app-route_08x37wy.js +6 -0
- package/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0eghv0a.js +3 -0
- 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]__0qy28ku._.js +3 -0
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0tsac-e._.js +15 -0
- package/standalone/.next/server/chunks/ssr/{_19fwji0._.js → [root-of-the-server]__0uo4dhz._.js} +2 -2
- 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/{_00ye62k._.js → _08q5hnx._.js} +2 -2
- 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/_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/{_1_1j9nd._.js → _0id1774._.js} +3 -3
- 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/_0q8sy0w._.js +3 -0
- 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/{_1zyjq9y._.js → _0ufkrvm._.js} +2 -2
- package/standalone/.next/server/chunks/ssr/{_07tglcd._.js → _0vjihfb._.js} +2 -10
- package/standalone/.next/server/chunks/ssr/_0xh-lyy._.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 +1 -1
- package/standalone/.next/server/chunks/ssr/_1bzibio._.js +109 -0
- package/standalone/.next/server/chunks/ssr/{_12ws_f2._.js → _1c2fde9._.js} +2 -2
- package/standalone/.next/server/chunks/ssr/{_0mr9u9p._.js → _1dnm1d4._.js} +2 -2
- package/standalone/.next/server/chunks/ssr/_1ekznx8._.js +3 -0
- package/standalone/.next/server/chunks/ssr/{_1r2rmfp._.js → _1f5k6bj._.js} +2 -2
- package/standalone/.next/server/chunks/ssr/_1k1tyz4._.js +3 -0
- package/standalone/.next/server/chunks/ssr/_1och_zk._.js +3 -0
- package/standalone/.next/server/chunks/ssr/{_0xrpdyy._.js → _1tpguta._.js} +2 -2
- 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_builds_build-detail-page_tsx_0q1lvps._.js +25 -9
- 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_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_worktrees_worktree-detail-page_tsx_1oexgu_._.js +13 -5
- package/standalone/.next/server/functions-config-manifest.json +7 -1
- 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/08ujwkhzkokhf.js +1 -0
- package/standalone/.next/static/chunks/{16tfdsma_h0r5.js → 0a82bgw37ev__.js} +1 -1
- 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/0hwbkceik59kx.js +35 -0
- package/standalone/.next/static/chunks/0mq066ue0yufb.js +7 -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/175269y15-grc.js +48 -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/{2rjf8o4g23no8.js → 1mprxk0uebv70.js} +1 -1
- 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/1w_zvfx_jdyv_.js +29 -0
- package/standalone/.next/static/chunks/2-wrd12dmwbo-.js +1 -0
- package/standalone/.next/static/chunks/208k3moxxd_53.js +51 -0
- package/standalone/.next/static/chunks/23kut2_l2y2-w.js +9 -0
- package/standalone/.next/static/chunks/{1nnp0crt0mi_-.js → 23xyv764-kx8z.js} +12 -12
- 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/{4013cp3x6bvuw.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/2zwijj9t6y7gn.js +7 -0
- package/standalone/.next/static/chunks/{0m26h4h36cb_0.js → 3120xcqaqci82.js} +1 -1
- package/standalone/.next/static/chunks/{3-u7pvogc5_bx.js → 315cis1es_5t3.js} +12 -12
- 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/37mczlawlcx5l.js +1 -0
- package/standalone/.next/static/chunks/398uw5_4-ciaz.css +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/3l2g83119oyl0.js +1 -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/{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/artifact-cache.test.ts +241 -0
- package/standalone/src/services/builds/artifact-cache.ts +235 -0
- package/standalone/src/services/builds/artifact-transfer.ts +2 -1
- package/standalone/src/services/builds/builds.service.test.ts +55 -0
- package/standalone/src/services/builds/builds.service.ts +499 -17
- package/standalone/.next/server/chunks/[root-of-the-server]__02vqwey._.js +0 -3
- package/standalone/.next/server/chunks/[root-of-the-server]__1oahp4o._.js +0 -122
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0361lgt._.js +0 -33
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__06f05jg._.js +0 -3
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ay4_3d._.js +0 -37
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0dm8osz._.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]__1xv798-._.js +0 -3
- package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1z955gh._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0bvpmhm._.js +0 -101
- package/standalone/.next/server/chunks/ssr/_0eb36qa._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0ndnmkz._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0nm6upn._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0pe56xv._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0quhjav._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0w05v7m._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_0xozjkz._.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/_1-grolz._.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/_1ey5mmy._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1fdyu2w._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1g3i459._.js +0 -15
- package/standalone/.next/server/chunks/ssr/_1g_aflc._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1lcwubl._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1lseili._.js +0 -3
- package/standalone/.next/server/chunks/ssr/_1za3z6k._.js +0 -101
- package/standalone/.next/server/chunks/ssr/_20ufqtr._.js +0 -3
- package/standalone/.next/static/chunks/0a3s519wuzjet.js +0 -1
- package/standalone/.next/static/chunks/0newuocvg03xy.js +0 -3
- package/standalone/.next/static/chunks/0rlomhlt6030e.js +0 -1
- package/standalone/.next/static/chunks/1802j8gq2g47d.js +0 -7
- package/standalone/.next/static/chunks/1_tnhhn4f122y.js +0 -9
- package/standalone/.next/static/chunks/1eny65xy2ho48.js +0 -1
- package/standalone/.next/static/chunks/1joeb4m-mmn69.js +0 -7
- package/standalone/.next/static/chunks/1l4bkigul15i3.js +0 -25
- package/standalone/.next/static/chunks/1qd6cse_d9ae1.js +0 -99
- package/standalone/.next/static/chunks/2-mxmazwsh-wz.js +0 -1
- package/standalone/.next/static/chunks/24sd_kmnetibb.js +0 -1
- 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/2fzwgr2iq_783.css +0 -1
- package/standalone/.next/static/chunks/2hv6pkoloju0g.js +0 -33
- package/standalone/.next/static/chunks/2jbygfc0lzu0t.js +0 -55
- package/standalone/.next/static/chunks/2n7u72nxziv_5.js +0 -7
- package/standalone/.next/static/chunks/2sqprazdqp7f7.js +0 -1
- package/standalone/.next/static/chunks/2x8qovg070057.js +0 -1
- package/standalone/.next/static/chunks/3-zh9b0tcttiw.js +0 -33
- package/standalone/.next/static/chunks/31wyih3wwkeid.js +0 -1
- package/standalone/.next/static/chunks/33y_b6dqfx3tk.js +0 -1
- package/standalone/.next/static/chunks/3h1pxh5fd97ym.js +0 -27
- package/standalone/.next/static/chunks/3jbfibit05k5o.js +0 -29
- package/standalone/.next/static/chunks/3jd8_7lna-j_x.js +0 -40
- package/standalone/.next/static/chunks/3jv2gnnn4vx-j.js +0 -43
- package/standalone/.next/static/chunks/3k0oakdayt9yt.js +0 -40
- package/standalone/.next/static/chunks/3pgngh8lg3be3.js +0 -99
- package/standalone/.next/static/chunks/43gw6_6hbw18w.js +0 -51
- /package/standalone/.next/static/{8uBWJ8MOV-OEPe88M3PhU → sJ09NBDjsLncJEkHNWbdR}/_buildManifest.js +0 -0
- /package/standalone/.next/static/{8uBWJ8MOV-OEPe88M3PhU → sJ09NBDjsLncJEkHNWbdR}/_clientMiddlewareManifest.js +0 -0
- /package/standalone/.next/static/{8uBWJ8MOV-OEPe88M3PhU → sJ09NBDjsLncJEkHNWbdR}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,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)},784774,e=>{"use strict";var t=e.i(843476),l=e.i(975157);e.s(["Table",0,function({className:e,containerClassName:a,...r}){return(0,t.jsx)("div",{className:(0,l.cn)("w-full overflow-x-auto",a),children:(0,t.jsx)("table",{className:(0,l.cn)("w-full caption-bottom text-sm",e),...r})})},"TableBody",0,function({className:e,...a}){return(0,t.jsx)("tbody",{className:(0,l.cn)("divide-y",e),...a})},"TableCell",0,function({className:e,...a}){return(0,t.jsx)("td",{className:(0,l.cn)("whitespace-nowrap px-3 py-3 align-middle",e),...a})},"TableFooter",0,function({className:e,...a}){return(0,t.jsx)("tfoot",{className:(0,l.cn)("border-t bg-muted/50 font-medium",e),...a})},"TableHead",0,function({className:e,...a}){return(0,t.jsx)("th",{className:(0,l.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,l.cn)("border-b",e),...a})},"TableRow",0,function({className:e,...a}){return(0,t.jsx)("tr",{className:(0,l.cn)("transition-colors hover:bg-muted/40",e),...a})}])},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])},566595,e=>{"use strict";var t=e.i(630299);e.s(["Search",()=>t.default])},59497,e=>{"use strict";var t=e.i(843476),l=e.i(271645);function a(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function r(...e){return l.useCallback(function(...e){return t=>{let l=!1,r=e.map(e=>{let r=a(e,t);return l||"function"!=typeof r||(l=!0),r});if(l)return()=>{for(let t=0;t<r.length;t++){let l=r[t];"function"==typeof l?l():a(e[t],null)}}}}(...e),e)}var n=e.i(30030);function s(e,t,{checkForDefaultPrevented:l=!0}={}){return function(a){if(e?.(a),!1===l||!a||!a.defaultPrevented)return t?.(a)}}"u">typeof window&&window.document&&window.document.createElement;var i=globalThis?.document?l.useLayoutEffect:()=>{};l[" useEffectEvent ".trim().toString()],l[" useInsertionEffect ".trim().toString()];var o=l[" useInsertionEffect ".trim().toString()]||i;Symbol("RADIX:SYNC_STATE");var d=e.i(999682),c=e.i(635804),u=e.i(296626);e.i(174080);var h=Symbol.for("radix.slottable"),p=Symbol.for("react.lazy");function x(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=l[" use ".trim().toString()],m=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,a)=>{var n;let s,i=(n=`Primitive.${a}`,(s=l.forwardRef((e,t)=>{var a;let s,i,{children:o,...d}=e,c=null,u=!1,p=[];x(o)&&"function"==typeof f&&(o=f(o._payload)),l.Children.forEach(o,e=>{var t;if(t=e,l.isValidElement(t)&&"function"==typeof t.type&&"__radixId"in t.type&&t.type.__radixId===h){u=!0;let t="child"in e.props?e.props.child:e.props.children;x(t)&&"function"==typeof f&&(t=f(t._payload)),c=((e,t)=>{if("child"in e.props){let t=e.props.child;return l.isValidElement(t)?l.cloneElement(t,void 0,e.props.children(t.props.children)):null}return l.isValidElement(t)?t:null})(e,t),p.push(c?.props?.children)}else p.push(e)}),c?c=l.cloneElement(c,void 0,p):!u&&1===l.Children.count(o)&&l.isValidElement(o)&&(c=o);let m=c?(a=c,(i=(s=Object.getOwnPropertyDescriptor(a.props,"ref")?.get)&&"isReactWarning"in s&&s.isReactWarning)?a.ref:(i=(s=Object.getOwnPropertyDescriptor(a,"ref")?.get)&&"isReactWarning"in s&&s.isReactWarning)?a.props.ref:a.props.ref||a.ref):void 0,b=r(t,m);if(!c){if(o||0===o){let e,t;throw Error(u?(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 o}let g=function(e,t){let l={...t};for(let a in t){let r=e[a],n=t[a];/^on[A-Z]/.test(a)?r&&n?l[a]=(...e)=>{let t=n(...e);return r(...e),t}:r&&(l[a]=r):"style"===a?l[a]={...r,...n}:"className"===a&&(l[a]=[r,n].filter(Boolean).join(" "))}return{...e,...l}}(d,c.props??{});return c.type!==l.Fragment&&(g.ref=t?b:m),l.cloneElement(c,g)})).displayName=`${n}.Slot`,s),o=l.forwardRef((e,l)=>{let{asChild:r,...n}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(r?i:a,{...n,ref:l})});return o.displayName=`Primitive.${a}`,{...e,[a]:o}},{}),b="Checkbox",[g,j]=(0,n.createContextScope)(b),[y,v]=g(b);function k(e){let{__scopeCheckbox:a,checked:r,children:n,defaultChecked:s,disabled:i,form:d,name:c,onCheckedChange:u,required:h,value:p="on",internal_do_not_use_render:x}=e,[f,m]=function({prop:e,defaultProp:t,onChange:a=()=>{},caller:r}){let[n,s,i]=function({defaultProp:e,onChange:t}){let[a,r]=l.useState(e),n=l.useRef(a),s=l.useRef(t);return o(()=>{s.current=t},[t]),l.useEffect(()=>{n.current!==a&&(s.current?.(a),n.current=a)},[a,n]),[a,r,s]}({defaultProp:t,onChange:a}),d=void 0!==e,c=d?e:n;{let t=l.useRef(void 0!==e);l.useEffect(()=>{let e=t.current;if(e!==d){let t=d?"controlled":"uncontrolled";console.warn(`${r} 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=d},[d,r])}return[c,l.useCallback(t=>{if(d){let l="function"==typeof t?t(e):t;l!==e&&i.current?.(l)}else s(t)},[d,e,s,i])]}({prop:r,defaultProp:s??!1,onChange:u,caller:b}),[g,j]=l.useState(null),[v,k]=l.useState(null),C=l.useRef(!1),S=!g||!!d||!!g.closest("form"),T={checked:f,disabled:i,setChecked:m,control:g,setControl:j,name:c,form:d,value:p,hasConsumerStoppedPropagationRef:C,required:h,defaultChecked:!D(s)&&s,isFormControl:S,bubbleInput:v,setBubbleInput:k};return(0,t.jsx)(y,{scope:a,...T,children:"function"==typeof x?x(T):n})}var C="CheckboxTrigger",S=l.forwardRef(({__scopeCheckbox:e,onKeyDown:a,onClick:n,...i},o)=>{let{control:d,value:c,disabled:u,checked:h,required:p,setControl:x,setChecked:f,hasConsumerStoppedPropagationRef:b,isFormControl:g,bubbleInput:j}=v(C,e),y=r(o,x),k=l.useRef(h);return l.useEffect(()=>{let e=d?.form;if(e){let t=()=>f(k.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[d,f]),(0,t.jsx)(m.button,{type:"button",role:"checkbox","aria-checked":D(h)?"mixed":h,"aria-required":p,"data-state":O(h),"data-disabled":u?"":void 0,disabled:u,value:c,...i,ref:y,onKeyDown:s(a,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:s(n,e=>{f(e=>!!D(e)||!e),j&&g&&(b.current=e.isPropagationStopped(),b.current||e.stopPropagation())})})});S.displayName=C;var T=l.forwardRef((e,l)=>{let{__scopeCheckbox:a,name:r,checked:n,defaultChecked:s,required:i,disabled:o,value:d,onCheckedChange:c,form:u,...h}=e;return(0,t.jsx)(k,{__scopeCheckbox:a,checked:n,defaultChecked:s,disabled:o,required:i,onCheckedChange:c,name:r,form:u,value:d,internal_do_not_use_render:({isFormControl:e})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(S,{...h,ref:l,__scopeCheckbox:a}),e&&(0,t.jsx)(A,{__scopeCheckbox:a})]})})});T.displayName=b;var w="CheckboxIndicator",E=l.forwardRef((e,l)=>{let{__scopeCheckbox:a,forceMount:r,...n}=e,s=v(w,a);return(0,t.jsx)(u.Presence,{present:r||D(s.checked)||!0===s.checked,children:(0,t.jsx)(m.span,{"data-state":O(s.checked),"data-disabled":s.disabled?"":void 0,...n,ref:l,style:{pointerEvents:"none",...e.style}})})});E.displayName=w;var N="CheckboxBubbleInput",A=l.forwardRef(({__scopeCheckbox:e,...a},n)=>{let{control:s,hasConsumerStoppedPropagationRef:i,checked:o,defaultChecked:u,required:h,disabled:p,name:x,value:f,form:b,bubbleInput:g,setBubbleInput:j}=v(N,e),y=r(n,j),k=(0,d.usePrevious)(o),C=(0,c.useSize)(s);l.useEffect(()=>{if(!g)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!i.current;if(k!==o&&e){let l=new Event("click",{bubbles:t});g.indeterminate=D(o),e.call(g,!D(o)&&o),g.dispatchEvent(l)}},[g,k,o,i]);let S=l.useRef(!D(o)&&o);return(0,t.jsx)(m.input,{type:"checkbox","aria-hidden":!0,defaultChecked:u??S.current,required:h,disabled:p,name:x,value:f,form:b,...a,tabIndex:-1,ref:y,style:{...a.style,...C,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function D(e){return"indeterminate"===e}function O(e){return D(e)?"indeterminate":e?"checked":"unchecked"}A.displayName=N,e.s(["Checkbox",0,T,"CheckboxIndicator",0,E,"Indicator",0,E,"Root",0,T,"createCheckboxScope",0,j,"unstable_BubbleInput",0,A,"unstable_CheckboxBubbleInput",0,A,"unstable_CheckboxProvider",0,k,"unstable_CheckboxTrigger",0,S,"unstable_Provider",0,k,"unstable_Trigger",0,S],388474);var R=e.i(388474),R=R,P=e.i(975157),H=e.i(593698);e.s(["Checkbox",0,function({className:e,...l}){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),...l,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)(H.CheckIcon,{})})})}],59497)},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)},452330,e=>{"use strict";let t=(0,e.i(456420).default)("code-xml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]]);e.s(["Code2",0,t],452330)},131460,e=>{"use strict";let t=(0,e.i(456420).default)("arrow-down-to-line",[["path",{d:"M12 17V3",key:"1cwfxf"}],["path",{d:"m6 11 6 6 6-6",key:"12ii2o"}],["path",{d:"M19 21H5",key:"150jfl"}]]);e.s(["ArrowDownToLine",0,t],131460)},669253,e=>{"use strict";let t=(0,e.i(456420).default)("folder-tree",[["path",{d:"M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"hod4my"}],["path",{d:"M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"w4yl2u"}],["path",{d:"M3 5a2 2 0 0 0 2 2h3",key:"f2jnh7"}],["path",{d:"M3 3v13a2 2 0 0 0 2 2h3",key:"k8epm1"}]]);e.s(["FolderTree",0,t],669253)},41074,e=>{"use strict";var t=e.i(843476),l=e.i(131460),a=e.i(456420);let r=(0,a.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);var n=e.i(689664),s=e.i(452330),i=e.i(809584),o=e.i(669253);let d=(0,a.default)("mouse-pointer-2",[["path",{d:"M4.037 4.688a.495.495 0 0 1 .651-.651l16 6.5a.5.5 0 0 1-.063.947l-6.124 1.58a2 2 0 0 0-1.438 1.435l-1.579 6.126a.5.5 0 0 1-.947.063z",key:"edeuup"}]]);var c=e.i(77071),u=e.i(741120),h=e.i(566595),p=e.i(166794);let x=(0,a.default)("shield-alert",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]]);var f=e.i(328623);let m=(0,a.default)("square-terminal",[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]]);var b=e.i(948148),g=e.i(271645),j=e.i(929592),y=e.i(487486),v=e.i(519455),k=e.i(515288),C=e.i(59497),S=e.i(776639),T=e.i(793479),w=e.i(110204),E=e.i(987968),N=e.i(967489),A=e.i(784774),D=e.i(677572),O=e.i(520133),R=e.i(637611);let P={CURSOR:"Cursor",GITHUB_COPILOT:"GitHub Copilot",CODEX:"OpenAI Codex",CLAUDE:"Claude Code",OPENCODE:"OpenCode"},H={CURSOR:d,GITHUB_COPILOT:f.Sparkles,CODEX:m,CLAUDE:r,OPENCODE:s.Code2},B=`
|
|
2
|
+
query SkillsOverview($search: String) {
|
|
3
|
+
skillsOverview(search: $search) {
|
|
4
|
+
skills {
|
|
5
|
+
id name description syncGlobally packageHash updatedAt
|
|
6
|
+
files { id path }
|
|
7
|
+
groups { id name }
|
|
8
|
+
}
|
|
9
|
+
groups { id name }
|
|
10
|
+
observations {
|
|
11
|
+
tool configured homePath checkedAt
|
|
12
|
+
agent { id name hostname connectionStatus }
|
|
13
|
+
}
|
|
14
|
+
installations {
|
|
15
|
+
id scope rootKind rootPath skillName description packageHash fileCount totalBytes tracked consumers lastSeenAt
|
|
16
|
+
agent { id name hostname connectionStatus }
|
|
17
|
+
codebase { id folder repository { id name displayOrigin } }
|
|
18
|
+
worktree { id folder }
|
|
19
|
+
skill { id name packageHash }
|
|
20
|
+
}
|
|
21
|
+
settings {
|
|
22
|
+
autoSyncProjectGroups cursorEnabled githubCopilotEnabled codexEnabled claudeEnabled openCodeEnabled updatedAt
|
|
23
|
+
}
|
|
24
|
+
repositories { id name displayOrigin }
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
`;function I(e,t){return"CURSOR"===t?e.cursorEnabled:"GITHUB_COPILOT"===t?e.githubCopilotEnabled:"CODEX"===t?e.codexEnabled:"CLAUDE"===t?e.claudeEnabled:e.openCodeEnabled}function L({overview:e}){let l=(0,b.useTranslations)("skills");return(0,t.jsxs)(k.Card,{className:"gap-0 py-0",children:[(0,t.jsxs)(k.CardHeader,{className:"border-b py-4",children:[(0,t.jsx)(k.CardTitle,{children:l("databaseSkills")}),(0,t.jsx)(k.CardDescription,{children:l("databaseSkillsDescription")})]}),(0,t.jsx)(k.CardContent,{className:"px-0",children:(0,t.jsxs)(A.Table,{children:[(0,t.jsx)(A.TableHeader,{children:(0,t.jsxs)(A.TableRow,{children:[(0,t.jsx)(A.TableHead,{children:l("name")}),(0,t.jsx)(A.TableHead,{children:l("skillDescription")}),(0,t.jsx)(A.TableHead,{children:l("scope")}),(0,t.jsx)(A.TableHead,{children:l("groups")}),(0,t.jsx)(A.TableHead,{children:l("files")}),(0,t.jsx)(A.TableHead,{children:l("updated")})]})}),(0,t.jsxs)(A.TableBody,{children:[e.skills.map(e=>(0,t.jsxs)(A.TableRow,{children:[(0,t.jsx)(A.TableCell,{children:(0,t.jsx)(O.Link,{className:"font-medium text-primary hover:underline",href:`/skills/${e.id}`,children:e.name})}),(0,t.jsx)(A.TableCell,{className:"max-w-lg whitespace-normal text-muted-foreground",children:e.description}),(0,t.jsx)(A.TableCell,{children:(0,t.jsx)(y.Badge,{variant:e.syncGlobally?"default":"secondary",children:e.syncGlobally?l("global"):l("projectOnly")})}),(0,t.jsx)(A.TableCell,{children:(0,t.jsx)("div",{className:"flex flex-wrap gap-1",children:e.groups.length?e.groups.map(e=>(0,t.jsx)(y.Badge,{variant:"outline",children:e.name},e.id)):"—"})}),(0,t.jsx)(A.TableCell,{children:e.files.length}),(0,t.jsx)(A.TableCell,{children:new Date(e.updatedAt).toLocaleString()})]},e.id)),!e.skills.length&&(0,t.jsx)(A.TableRow,{children:(0,t.jsx)(A.TableCell,{className:"py-10 text-center text-muted-foreground",colSpan:6,children:l("noSkills")})})]})]})})]})}function M({installations:e}){let a=(0,b.useTranslations)("skills");return(0,t.jsxs)(k.Card,{className:"gap-0 py-0",children:[(0,t.jsxs)(k.CardHeader,{className:"border-b py-4",children:[(0,t.jsx)(k.CardTitle,{children:a("clientSkills")}),(0,t.jsx)(k.CardDescription,{children:a("clientSkillsDescription")})]}),(0,t.jsx)(k.CardContent,{className:"px-0",children:(0,t.jsxs)(A.Table,{children:[(0,t.jsx)(A.TableHeader,{children:(0,t.jsxs)(A.TableRow,{children:[(0,t.jsx)(A.TableHead,{children:a("name")}),(0,t.jsx)(A.TableHead,{children:a("scope")}),(0,t.jsx)(A.TableHead,{children:a("agent")}),(0,t.jsx)(A.TableHead,{children:a("location")}),(0,t.jsx)(A.TableHead,{children:a("status")})]})}),(0,t.jsxs)(A.TableBody,{children:[e.map(e=>{let r=e.skill?e.skill.packageHash===e.packageHash?"UNCHANGED":"CONFLICT":"IMPORT";return(0,t.jsxs)(A.TableRow,{children:[(0,t.jsxs)(A.TableCell,{children:[(0,t.jsx)("div",{className:"font-medium",children:e.skillName}),(0,t.jsx)("div",{className:"max-w-md whitespace-normal text-xs text-muted-foreground",children:e.description})]}),(0,t.jsxs)(A.TableCell,{children:[(0,t.jsx)(y.Badge,{variant:"outline",children:"GLOBAL"===e.scope?a("global"):a("project")}),e.codebase&&(0,t.jsx)("div",{className:"mt-1 text-xs text-muted-foreground",children:e.codebase.repository.name})]}),(0,t.jsx)(A.TableCell,{children:e.agent.name}),(0,t.jsxs)(A.TableCell,{className:"max-w-md whitespace-normal font-mono text-xs",children:[e.rootPath,e.tracked&&(0,t.jsx)(y.Badge,{className:"ml-2",variant:"secondary",children:a("tracked")})]}),(0,t.jsx)(A.TableCell,{children:"UNCHANGED"===r?(0,t.jsxs)(y.Badge,{className:"gap-1",variant:"secondary",children:[(0,t.jsx)(n.Check,{})," ",a("inSync")]}):"IMPORT"===r?(0,t.jsxs)(y.Badge,{className:"gap-1",variant:"outline",children:[(0,t.jsx)(l.ArrowDownToLine,{})," ",a("toDatabase")]}):(0,t.jsxs)(y.Badge,{className:"gap-1",variant:"destructive",children:[(0,t.jsx)(x,{})," ",a("conflict")]})})]},e.id)}),!e.length&&(0,t.jsx)(A.TableRow,{children:(0,t.jsx)(A.TableCell,{className:"py-10 text-center text-muted-foreground",colSpan:5,children:a("noClientSkills")})})]})]})})]})}function _({configuredCounts:e,onOpenChange:l,onSaved:a,open:r,settings:n}){let s=(0,b.useTranslations)("skills"),[i,o]=(0,g.useState)(n),[d,c]=(0,g.useState)(!1),[u,h]=(0,g.useState)(null),p=async()=>{c(!0);try{await (0,R.controlPlaneRequest)(`mutation SaveSkillSettings($input: SaveSkillSettingsInput!) {
|
|
28
|
+
saveSkillSettings(input: $input) { updatedAt }
|
|
29
|
+
}`,{input:{autoSyncProjectGroups:i.autoSyncProjectGroups,cursorEnabled:i.cursorEnabled,githubCopilotEnabled:i.githubCopilotEnabled,codexEnabled:i.codexEnabled,claudeEnabled:i.claudeEnabled,openCodeEnabled:i.openCodeEnabled}}),await a(),l(!1)}catch(e){h(e instanceof Error?e.message:String(e))}finally{c(!1)}};return(0,t.jsx)(S.Dialog,{onOpenChange:l,open:r,children:(0,t.jsxs)(S.DialogContent,{children:[(0,t.jsxs)(S.DialogHeader,{children:[(0,t.jsx)(S.DialogTitle,{children:s("settingsTitle")}),(0,t.jsx)(S.DialogDescription,{children:s("settingsDescription")})]}),u&&(0,t.jsx)(j.Alert,{variant:"destructive",children:(0,t.jsx)(j.AlertDescription,{children:u})}),(0,t.jsxs)("div",{className:"flex items-start gap-3 rounded-lg border p-3",children:[(0,t.jsx)(C.Checkbox,{checked:i.autoSyncProjectGroups,id:"skills-auto-sync",onCheckedChange:e=>o(t=>({...t,autoSyncProjectGroups:!0===e}))}),(0,t.jsxs)("div",{children:[(0,t.jsx)(w.Label,{htmlFor:"skills-auto-sync",children:s("autoSync")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:s("autoSyncHelp")})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(w.Label,{children:s("enabledTools")}),Object.keys(P).map(l=>{let a=I(i,l);return(0,t.jsxs)("div",{className:"flex items-center gap-3 rounded-md border px-3 py-2",children:[(0,t.jsx)(C.Checkbox,{checked:a,id:`skill-tool-${l}`,onCheckedChange:e=>{var t;return t=!0===e,void o(e=>({...e,..."CURSOR"===l?{cursorEnabled:t}:{},..."GITHUB_COPILOT"===l?{githubCopilotEnabled:t}:{},..."CODEX"===l?{codexEnabled:t}:{},..."CLAUDE"===l?{claudeEnabled:t}:{},..."OPENCODE"===l?{openCodeEnabled:t}:{}}))}}),(0,t.jsxs)(w.Label,{className:"flex flex-1 justify-between",htmlFor:`skill-tool-${l}`,children:[(0,t.jsx)("span",{children:P[l]}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:e[l]>0?s("configuredAgents",{count:e[l]}):s("notDetected")})]})]},l)})]}),(0,t.jsx)(S.DialogFooter,{children:(0,t.jsxs)(v.Button,{disabled:d,onClick:()=>void p(),children:[d&&(0,t.jsx)(E.Spinner,{})," ",s("saveSettings")]})})]})})}e.s(["SkillsPage",0,function(){let e=(0,b.useTranslations)("skills"),l=(0,O.useRouter)(),[a,r]=(0,g.useState)(null),[n,s]=(0,g.useState)(""),[d,x]=(0,g.useState)("DATABASE"),[f,m]=(0,g.useState)(!1),[y,k]=(0,g.useState)(!0),[C,S]=(0,g.useState)(!1),[w,A]=(0,g.useState)(null),$=(0,g.useCallback)(async()=>{try{let e=await (0,R.controlPlaneRequest)(B,{search:n});r(e.skillsOverview),A(null)}catch(e){A(e instanceof Error?e.message:String(e))}finally{k(!1)}},[n]);(0,g.useEffect)(()=>{let e=window.setTimeout(()=>void $(),200);return()=>window.clearTimeout(e)},[$]);let G=(0,g.useMemo)(()=>a?Object.keys(P).filter(e=>I(a.settings,e)&&a.observations.some(t=>t.tool===e&&t.configured)):[],[a]),U=(0,g.useMemo)(()=>Object.fromEntries(Object.keys(P).map(e=>[e,a?.observations.filter(t=>t.tool===e&&t.configured).length??0])),[a]),V="DATABASE"===d||G.includes(d)?d:"DATABASE",z=async()=>{S(!0);try{let e=await (0,R.controlPlaneRequest)("mutation PrepareSkillSync { prepareSkillSync(kind: ALL) { id } }");l.push(`/skills/sync/${e.prepareSkillSync.id}`)}catch(e){A(e instanceof Error?e.message:String(e))}finally{S(!1)}};return(0,t.jsxs)("div",{className:"flex h-full min-h-0 flex-col gap-4 overflow-auto p-4 sm:p-6",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:"text-sm text-muted-foreground",children:e("description")})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsx)(v.Button,{asChild:!0,variant:"outline",children:(0,t.jsxs)(O.Link,{href:"/skills/groups",children:[(0,t.jsx)(o.FolderTree,{})," ",e("manageGroups")]})}),(0,t.jsxs)(v.Button,{onClick:()=>m(!0),variant:"outline",children:[(0,t.jsx)(p.Settings,{})," ",e("settings")]}),(0,t.jsx)(v.Button,{asChild:!0,variant:"outline",children:(0,t.jsxs)(O.Link,{href:"/skills/new",children:[(0,t.jsx)(c.Plus,{})," ",e("addSkill")]})}),(0,t.jsxs)(v.Button,{disabled:C,onClick:()=>void z(),children:[C?(0,t.jsx)(E.Spinner,{}):(0,t.jsx)(u.RefreshCw,{})," ",e("syncAll")]})]})]}),w&&(0,t.jsx)(j.Alert,{variant:"destructive",children:(0,t.jsx)(j.AlertDescription,{children:w})}),(0,t.jsxs)("div",{className:"relative max-w-xl",children:[(0,t.jsx)(h.Search,{className:"absolute top-2.5 left-3 size-4 text-muted-foreground"}),(0,t.jsx)(T.Input,{"aria-label":e("search"),className:"pl-9",onChange:e=>s(e.target.value),placeholder:e("searchPlaceholder"),value:n})]}),(0,t.jsx)("div",{className:"sm:hidden",children:(0,t.jsxs)(N.Select,{onValueChange:x,value:V,children:[(0,t.jsx)(N.SelectTrigger,{"aria-label":e("skillSource"),className:"w-full",children:(0,t.jsx)(N.SelectValue,{})}),(0,t.jsxs)(N.SelectContent,{children:[(0,t.jsxs)(N.SelectItem,{value:"DATABASE",children:[(0,t.jsx)(i.Database,{})," ",e("database")]}),G.map(e=>{let l=H[e];return(0,t.jsxs)(N.SelectItem,{value:e,children:[(0,t.jsx)(l,{})," ",P[e]]},e)})]})]})}),(0,t.jsx)(D.Tabs,{className:"hidden sm:flex",onValueChange:x,value:V,children:(0,t.jsxs)(D.TabsList,{className:"h-auto flex-wrap justify-start",children:[(0,t.jsxs)(D.TabsTrigger,{value:"DATABASE",children:[(0,t.jsx)(i.Database,{})," ",e("database")]}),G.map(e=>{let l=H[e];return(0,t.jsxs)(D.TabsTrigger,{value:e,children:[(0,t.jsx)(l,{})," ",P[e]]},e)})]})}),y||!a?(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(E.Spinner,{})," ",e("loading")]}):"DATABASE"===V?(0,t.jsx)(L,{overview:a}):(0,t.jsx)(M,{installations:a.installations.filter(e=>e.consumers.includes(V))}),a&&(0,t.jsx)(_,{configuredCounts:U,onOpenChange:m,onSaved:$,open:f,settings:a.settings},`${a.settings.updatedAt}-${f?"open":"closed"}`)]})}],41074)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,929592,e=>{"use strict";var t=e.i(843476),r=e.i(225913),n=e.i(975157);let o=(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,n.cn)(o({variant:r}),e),...i})},"AlertDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-description",className:(0,n.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})}])},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),n=e.i(758379),n=n;e.s(["Spinner",0,function({className:e,...o}){return(0,t.jsx)(n.default,{"data-slot":"spinner",role:"status","aria-label":"Loading",className:(0,r.cn)("size-4 animate-spin",e),...o})}],987968)},637611,e=>{"use strict";var t,r,n=e.i(247167);function o(e){return null===e?"null":Array.isArray(e)?"array":typeof e}function i(e){return"object"===o(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 ${o(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 ${o(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 ${o(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 ${o(e.payload)}`);if("string"!=typeof e.payload.query)throw Error(`"${e.type}" message payload expects the 'query' property to be a string, but got ${o(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 ${o(e.payload.variables)}`);if(null!=e.payload.operationName&&"string"!==o(e.payload.operationName))throw Error(`"${e.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${o(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 ${o(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 ${o(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 ${o(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 ${o(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 ${o(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})}),n=await r.json();if(!r.ok||n.errors?.length||!n.data)throw Error(n.errors?.map(e=>e.message).join("; ")||`HTTP ${r.status}`);return n.data}let y=null;function h(){let e=n.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 y??=function(t){let r,n,o,i,{url:f,connectionParams:y,lazy:h=!0,onNonLazyError:g=console.error,lazyCloseTimeout:m=0,keepAlive:b=0,disablePong:v,connectionAckWaitTimeout:x=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:k=p,on:S,webSocketImpl:C,generateID:R=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:$,jsonMessageReviver:N}=t;if(C){var j;if(!("function"==typeof(j=C)&&"constructor"in j&&"CLOSED"in j&&"CLOSING"in j&&"CONNECTING"in j&&"OPEN"in j))throw Error("Invalid WebSocket implementation provided");r=C}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=(n={},o={on:(e,t)=>(n[e]=t,()=>{delete n[e]}),emit(e){"id"in e&&n[e.id]?.(e)}},i={connecting:S?.connecting?[S.connecting]:[],opened:S?.opened?[S.opened]:[],connected:S?.connected?[S.connected]:[],ping:S?.ping?[S.ping]:[],pong:S?.pong?[S.pong]:[],message:S?.message?[o.emit,S.message]:[o.emit],closed:S?.closed?[S.closed]:[],error:S?.error?[S.error]:[]},{onMessage:o.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 P,z=0,I,_=!1,M=0,q=!1;async function W(){clearTimeout(I);let[e,t]=await (P??(P=new Promise((e,t)=>(async()=>{let r,n;if(_){if(await E(M),!z)return P=void 0,t({code:1e3,reason:"All Subscriptions Gone"});M++}O.emit("connecting",_);let o=new A("function"==typeof f?await f():f,"graphql-transport-ws");function i(){isFinite(b)&&b>0&&(clearTimeout(n),n=setTimeout(()=>{o.readyState===A.OPEN&&(o.send(d({type:l.Ping})),O.emit("ping",!1,void 0))},b))}T(e=>{P=void 0,clearTimeout(r),clearTimeout(n),t(e),e instanceof u&&(o.close(4499,"Terminated"),o.onerror=null,o.onclose=null)}),o.onerror=e=>O.emit("error",e),o.onclose=e=>O.emit("closed",e),o.onopen=async()=>{try{O.emit("opened",o);let e="function"==typeof y?await y():y;if(o.readyState!==A.OPEN)return;o.send(d(e?{type:l.ConnectionInit,payload:e}:{type:l.ConnectionInit},$)),isFinite(x)&&x>0&&(r=setTimeout(()=>{o.close(s.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},x)),i()}catch(e){O.emit("error",e),o.close(s.InternalClientError,a(e instanceof Error?e.message:String(e),"Internal client error"))}};let p=!1;o.onmessage=({data:t})=>{try{let n=c("string"==typeof t?JSON.parse(t,N):t);if(O.emit("message",n),"ping"===n.type||"pong"===n.type){O.emit(n.type,!0,n.payload),"pong"===n.type?i():v||(o.send(d(n.payload?{type:l.Pong,payload:n.payload}:{type:l.Pong})),O.emit("pong",!1,n.payload));return}if(p)return;if(n.type!==l.ConnectionAck)throw Error(`First message cannot be of type ${n.type}`);clearTimeout(r),p=!0,O.emit("connected",o,n.payload,_),_=!1,M=0,e([o,new Promise((e,t)=>T(t))])}catch(e){o.onmessage=null,O.emit("error",e),o.close(s.BadResponse,a(e instanceof Error?e.message:String(e),"Bad response"))}}})())));e.readyState===A.CLOSING&&await t;let r=()=>{},n=new Promise(e=>r=e);return[e,r,Promise.race([n.then(()=>{z||(isFinite(m)&&m>0?I=setTimeout(()=>{e.readyState===A.OPEN&&e.close(1e3,"Normal Closure")},m):e.close(1e3,"Normal Closure"))}),t])]}function B(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(q)return!1;if(p(e)&&1e3===e.code)return z>0;if(!w||M>=w||!k(e))throw e;return _=!0}function D(e,t){let r=R(e),n=!1,o=!1,i=()=>{z--,n=!0};return(async()=>{for(z++;;)try{let[a,s,c]=await W();if(n)return s();let u=O.onMessage(r,e=>{switch(e.type){case l.Next:return void t.next(e.payload);case l.Error:o=!0,n=!0,t.error(e.payload),i();return;case l.Complete:n=!0,i();return}});a.send(d({id:r,type:l.Subscribe,payload:e},$)),i=()=>{n||a.readyState!==A.OPEN||a.send(d({id:r,type:l.Complete},$)),z--,n=!0,s()},await c.finally(u);return}catch(e){if(!B(e))return}})().then(()=>{o||t.complete()}).catch(e=>{t.error(e)}),()=>{n||i()}}return h||(async()=>{for(z++;;)try{let[,,e]=await W();await e}catch(e){try{if(!B(e))return}catch(e){return g?.(e)}}})(),{on:O.on,subscribe:D,iterate(e){let t=[],r={done:!1,error:null,resolve:()=>{}},n=D(e,{next(e){t.push(e),r.resolve()},error(e){r.done=!0,r.error=e,r.resolve()},complete(){r.done=!0,r.resolve()}}),o=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 o.throw=async e=>(r.done||(r.done=!0,r.error=e,r.resolve()),{done:!0,value:void 0}),o.return=async()=>(n(),{done:!0,value:void 0}),o},async dispose(){if(q=!0,P){let[e]=await P;e.close(1e3,"Normal Closure")}},terminate(){P&&O.emit("closed",new u)}}}({url:h,lazy:!0,retryAttempts:1/0,shouldRetry:()=>!0})}],637611)},515288,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Card",0,function({className:e,size:n="default",...o}){return(0,t.jsx)("div",{"data-slot":"card","data-size":n,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),...o})},"CardAction",0,function({className:e,...n}){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),...n})},"CardContent",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-(--card-spacing)",e),...n})},"CardDescription",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-sm text-muted-foreground",e),...n})},"CardFooter",0,function({className:e,...n}){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),...n})},"CardHeader",0,function({className:e,...n}){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),...n})},"CardTitle",0,function({className:e,...n}){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),...n})}])},487486,e=>{"use strict";var t=e.i(843476),r=e.i(225913),n=e.i(709840),o=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",success:"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300 [a]:hover:bg-emerald-500/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?n.Slot.Root:"span";return(0,t.jsx)(l,{className:(0,o.cn)(i({variant:r}),e),"data-slot":"badge","data-variant":r,...s})}])},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])},75830,586318,e=>{"use strict";var t=e.i(271645),r=e.i(30030);function n(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function o(...e){return t.useCallback(function(...e){return t=>{let r=!1,o=e.map(e=>{let o=n(e,t);return r||"function"!=typeof o||(r=!0),o});if(r)return()=>{for(let t=0;t<o.length;t++){let r=o[t];"function"==typeof r?r():n(e[t],null)}}}}(...e),e)}function i(e){let r=t.forwardRef((r,n)=>{var i;let l,f,{children:y,...h}=r,g=null,m=!1,b=[];c(y)&&"function"==typeof p&&(y=p(y._payload)),t.Children.forEach(y,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)),g=s(e,t),b.push(g?.props?.children)}else b.push(e)}),g?g=t.cloneElement(g,void 0,b):!m&&1===t.Children.count(y)&&t.isValidElement(y)&&(g=y);let v=g?(i=g,(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,x=o(n,v);if(!g){if(y||0===y)throw Error(m?u(e):d(e));return y}let w=function(e,t){let r={...t};for(let n in t){let o=e[n],i=t[n];/^on[A-Z]/.test(n)?o&&i?r[n]=(...e)=>{let t=i(...e);return o(...e),t}:o&&(r[n]=o):"style"===n?r[n]={...o,...i}:"className"===n&&(r[n]=[o,i].filter(Boolean).join(" "))}return{...e,...r}}(h,g.props??{});return g.type!==t.Fragment&&(w.ref=n?x:v),t.cloneElement(g,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),y=new WeakMap;function h(e,t){var r,n;let o,i,a;if("at"in Array.prototype)return Array.prototype.at.call(e,t);let s=(r=e,n=t,o=r.length,(a=(i=g(n))>=0?i:o+i)<0||a>=o?-1:a);return -1===s?void 0:e[s]}function g(e){return e!=e||0===e?0:Math.trunc(e)}(class e extends Map{#e;constructor(e){super(e),this.#e=[...super.keys()],y.set(this,!0)}set(e,t){return y.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 n,o=this.has(t),i=this.#e.length,a=g(e),s=a>=0?a:i+a,l=s<0||s>=i?-1:s;if(l===this.size||o&&l===this.size-1||-1===l)return this.set(t,r),this;let c=this.size+ +!o;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]),o&&this.delete(t),n=this.get(i),this.set(t,r)}else{u||d[e-1]!==t||(u=!0);let r=d[u?e:e-1],o=n;n=this.get(r),this.delete(r),this.set(r,o)}return this}with(t,r,n){let o=new e(this);return o.insert(t,r,n),o}before(e){let t=this.#e.indexOf(e)-1;if(!(t<0))return this.entryAt(t)}setBefore(e,t,r){let n=this.#e.indexOf(e);return -1===n?this:this.insert(n,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 n=this.#e.indexOf(e);return -1===n?this:this.insert(n+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=h(this.#e,e);if(void 0!==t)return this.get(t)}entryAt(e){let t=h(this.#e,e);if(void 0!==t)return[t,this.get(t)]}indexOf(e){return this.#e.indexOf(e)}keyAt(e){return h(this.#e,e)}from(e,t){let r=this.indexOf(e);if(-1===r)return;let n=r+t;return n<0&&(n=0),n>=this.size&&(n=this.size-1),this.at(n)}keyFrom(e,t){let r=this.indexOf(e);if(-1===r)return;let n=r+t;return n<0&&(n=0),n>=this.size&&(n=this.size-1),this.keyAt(n)}find(e,t){let r=0;for(let n of this){if(Reflect.apply(e,t,[n,r,this]))return n;r++}}findIndex(e,t){let r=0;for(let n of this){if(Reflect.apply(e,t,[n,r,this]))return r;r++}return -1}filter(t,r){let n=[],o=0;for(let e of this)Reflect.apply(t,r,[e,o,this])&&n.push(e),o++;return new e(n)}map(t,r){let n=[],o=0;for(let e of this)n.push([e[0],Reflect.apply(t,r,[e,o,this])]),o++;return new e(n)}reduce(...e){let[t,r]=e,n=0,o=r??this.at(0);for(let r of this)o=0===n&&1===e.length?r:Reflect.apply(t,this,[o,r,n,this]),n++;return o}reduceRight(...e){let[t,r]=e,n=r??this.at(-1);for(let r=this.size-1;r>=0;r--){let o=this.at(r);n=r===this.size-1&&1===e.length?o:Reflect.apply(t,this,[n,o,r,this])}return n}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),n=this.get(r);t.set(r,n)}return t}toSpliced(...t){let r=[...this.entries()];return r.splice(...t),new e(r)}slice(t,r){let n=new e,o=this.size-1;if(void 0===t)return n;t<0&&(t+=this.size),void 0!==r&&r>0&&(o=r-1);for(let e=t;e<=o;e++){let t=this.keyAt(e),r=this.get(t);n.set(t,r)}return n}every(e,t){let r=0;for(let n of this){if(!Reflect.apply(e,t,[n,r,this]))return!1;r++}return!0}some(e,t){let r=0;for(let n of this){if(Reflect.apply(e,t,[n,r,this]))return!0;r++}return!1}}),e.s(["createCollection",0,function(e){let n=e+"CollectionProvider",[a,s]=(0,r.createContextScope)(n),[l,c]=a(n,{collectionRef:{current:null},itemMap:new Map}),d=e=>{let{scope:r,children:n}=e,o=t.useRef(null),i=t.useRef(new Map).current;return(0,f.jsx)(l,{scope:r,itemMap:i,collectionRef:o,children:n})};d.displayName=n;let u=e+"CollectionSlot",p=i(u),y=t.forwardRef((e,t)=>{let{scope:r,children:n}=e,i=o(t,c(u,r).collectionRef);return(0,f.jsx)(p,{ref:i,children:n})});y.displayName=u;let h=e+"CollectionItemSlot",g="data-radix-collection-item",m=i(h),b=t.forwardRef((e,r)=>{let{scope:n,children:i,...a}=e,s=t.useRef(null),l=o(r,s),d=c(h,n);return t.useEffect(()=>(d.itemMap.set(s,{ref:s,...a}),()=>void d.itemMap.delete(s))),(0,f.jsx)(m,{...{[g]:""},ref:l,children:i})});return b.displayName=h,[{Provider:d,Slot:y,ItemSlot:b},function(r){let n=c(e+"CollectionConsumer",r);return t.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${g}]`));return Array.from(n.itemMap.values()).sort((e,r)=>t.indexOf(e.ref.current)-t.indexOf(r.ref.current))},[n.collectionRef,n.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)},26495,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["default",0,t])},144716,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);e.s(["default",0,t])},110204,e=>{"use strict";var t=e.i(843476),r=e.i(271645);function n(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}e.i(174080);var o=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,y=!1,h=[];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===o){y=!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),h.push(f?.props?.children)}else h.push(e)}),f?f=r.cloneElement(f,void 0,h):!y&&1===r.Children.count(u)&&r.isValidElement(u)&&(f=u);let g=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,o=e.map(e=>{let o=n(e,t);return r||"function"!=typeof o||(r=!0),o});if(r)return()=>{for(let t=0;t<o.length;t++){let r=o[t];"function"==typeof r?r():n(e[t],null)}}}}(...e),e)}(t,g);if(!f){if(u||0===u){let e,t;throw Error(y?(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 b=function(e,t){let r={...t};for(let n in t){let o=e[n],i=t[n];/^on[A-Z]/.test(n)?o&&i?r[n]=(...e)=>{let t=i(...e);return o(...e),t}:o&&(r[n]=o):"style"===n?r[n]={...o,...i}:"className"===n&&(r[n]=[o,i].filter(Boolean).join(" "))}return{...e,...r}}(p,f.props??{});return f.type!==r.Fragment&&(b.ref=t?m:g),r.cloneElement(f,b)})).displayName=`${l}.Slot`,c),u=r.forwardRef((e,r)=>{let{asChild:n,...o}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(n?d:i,{...o,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,...n}){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),...n})}])}]);
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,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)},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)},59497,e=>{"use strict";var t=e.i(843476),a=e.i(271645);function s(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function r(...e){return a.useCallback(function(...e){return t=>{let a=!1,r=e.map(e=>{let r=s(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():s(e[t],null)}}}}(...e),e)}var i=e.i(30030);function n(e,t,{checkForDefaultPrevented:a=!0}={}){return function(s){if(e?.(s),!1===a||!s||!s.defaultPrevented)return t?.(s)}}"u">typeof window&&window.document&&window.document.createElement;var l=globalThis?.document?a.useLayoutEffect:()=>{};a[" useEffectEvent ".trim().toString()],a[" useInsertionEffect ".trim().toString()];var o=a[" 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 h=Symbol.for("radix.slottable"),p=Symbol.for("react.lazy");function x(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 m=a[" use ".trim().toString()],f=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,s)=>{var i;let n,l=(i=`Primitive.${s}`,(n=a.forwardRef((e,t)=>{var s;let n,l,{children:o,...c}=e,d=null,u=!1,p=[];x(o)&&"function"==typeof m&&(o=m(o._payload)),a.Children.forEach(o,e=>{var t;if(t=e,a.isValidElement(t)&&"function"==typeof t.type&&"__radixId"in t.type&&t.type.__radixId===h){u=!0;let t="child"in e.props?e.props.child:e.props.children;x(t)&&"function"==typeof m&&(t=m(t._payload)),d=((e,t)=>{if("child"in e.props){let t=e.props.child;return a.isValidElement(t)?a.cloneElement(t,void 0,e.props.children(t.props.children)):null}return a.isValidElement(t)?t:null})(e,t),p.push(d?.props?.children)}else p.push(e)}),d?d=a.cloneElement(d,void 0,p):!u&&1===a.Children.count(o)&&a.isValidElement(o)&&(d=o);let f=d?(s=d,(l=(n=Object.getOwnPropertyDescriptor(s.props,"ref")?.get)&&"isReactWarning"in n&&n.isReactWarning)?s.ref:(l=(n=Object.getOwnPropertyDescriptor(s,"ref")?.get)&&"isReactWarning"in n&&n.isReactWarning)?s.props.ref:s.props.ref||s.ref):void 0,v=r(t,f);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 g=function(e,t){let a={...t};for(let s in t){let r=e[s],i=t[s];/^on[A-Z]/.test(s)?r&&i?a[s]=(...e)=>{let t=i(...e);return r(...e),t}:r&&(a[s]=r):"style"===s?a[s]={...r,...i}:"className"===s&&(a[s]=[r,i].filter(Boolean).join(" "))}return{...e,...a}}(c,d.props??{});return d.type!==a.Fragment&&(g.ref=t?v:f),a.cloneElement(d,g)})).displayName=`${i}.Slot`,n),o=a.forwardRef((e,a)=>{let{asChild:r,...i}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(r?l:s,{...i,ref:a})});return o.displayName=`Primitive.${s}`,{...e,[s]:o}},{}),v="Checkbox",[g,y]=(0,i.createContextScope)(v),[j,b]=g(v);function S(e){let{__scopeCheckbox:s,checked:r,children:i,defaultChecked:n,disabled:l,form:c,name:d,onCheckedChange:u,required:h,value:p="on",internal_do_not_use_render:x}=e,[m,f]=function({prop:e,defaultProp:t,onChange:s=()=>{},caller:r}){let[i,n,l]=function({defaultProp:e,onChange:t}){let[s,r]=a.useState(e),i=a.useRef(s),n=a.useRef(t);return o(()=>{n.current=t},[t]),a.useEffect(()=>{i.current!==s&&(n.current?.(s),i.current=s)},[s,i]),[s,r,n]}({defaultProp:t,onChange:s}),c=void 0!==e,d=c?e:i;{let t=a.useRef(void 0!==e);a.useEffect(()=>{let e=t.current;if(e!==c){let t=c?"controlled":"uncontrolled";console.warn(`${r} 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,r])}return[d,a.useCallback(t=>{if(c){let a="function"==typeof t?t(e):t;a!==e&&l.current?.(a)}else n(t)},[c,e,n,l])]}({prop:r,defaultProp:n??!1,onChange:u,caller:v}),[g,y]=a.useState(null),[b,S]=a.useState(null),k=a.useRef(!1),C=!g||!!c||!!g.closest("form"),I={checked:m,disabled:l,setChecked:f,control:g,setControl:y,name:d,form:c,value:p,hasConsumerStoppedPropagationRef:k,required:h,defaultChecked:!T(n)&&n,isFormControl:C,bubbleInput:b,setBubbleInput:S};return(0,t.jsx)(j,{scope:s,...I,children:"function"==typeof x?x(I):i})}var k="CheckboxTrigger",C=a.forwardRef(({__scopeCheckbox:e,onKeyDown:s,onClick:i,...l},o)=>{let{control:c,value:d,disabled:u,checked:h,required:p,setControl:x,setChecked:m,hasConsumerStoppedPropagationRef:v,isFormControl:g,bubbleInput:y}=b(k,e),j=r(o,x),S=a.useRef(h);return a.useEffect(()=>{let e=c?.form;if(e){let t=()=>m(S.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[c,m]),(0,t.jsx)(f.button,{type:"button",role:"checkbox","aria-checked":T(h)?"mixed":h,"aria-required":p,"data-state":B(h),"data-disabled":u?"":void 0,disabled:u,value:d,...l,ref:j,onKeyDown:n(s,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:n(i,e=>{m(e=>!!T(e)||!e),y&&g&&(v.current=e.isPropagationStopped(),v.current||e.stopPropagation())})})});C.displayName=k;var I=a.forwardRef((e,a)=>{let{__scopeCheckbox:s,name:r,checked:i,defaultChecked:n,required:l,disabled:o,value:c,onCheckedChange:d,form:u,...h}=e;return(0,t.jsx)(S,{__scopeCheckbox:s,checked:i,defaultChecked:n,disabled:o,required:l,onCheckedChange:d,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(C,{...h,ref:a,__scopeCheckbox:s}),e&&(0,t.jsx)(D,{__scopeCheckbox:s})]})})});I.displayName=v;var w="CheckboxIndicator",E=a.forwardRef((e,a)=>{let{__scopeCheckbox:s,forceMount:r,...i}=e,n=b(w,s);return(0,t.jsx)(u.Presence,{present:r||T(n.checked)||!0===n.checked,children:(0,t.jsx)(f.span,{"data-state":B(n.checked),"data-disabled":n.disabled?"":void 0,...i,ref:a,style:{pointerEvents:"none",...e.style}})})});E.displayName=w;var N="CheckboxBubbleInput",D=a.forwardRef(({__scopeCheckbox:e,...s},i)=>{let{control:n,hasConsumerStoppedPropagationRef:l,checked:o,defaultChecked:u,required:h,disabled:p,name:x,value:m,form:v,bubbleInput:g,setBubbleInput:y}=b(N,e),j=r(i,y),S=(0,c.usePrevious)(o),k=(0,d.useSize)(n);a.useEffect(()=>{if(!g)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!l.current;if(S!==o&&e){let a=new Event("click",{bubbles:t});g.indeterminate=T(o),e.call(g,!T(o)&&o),g.dispatchEvent(a)}},[g,S,o,l]);let C=a.useRef(!T(o)&&o);return(0,t.jsx)(f.input,{type:"checkbox","aria-hidden":!0,defaultChecked:u??C.current,required:h,disabled:p,name:x,value:m,form:v,...s,tabIndex:-1,ref:j,style:{...s.style,...k,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function T(e){return"indeterminate"===e}function B(e){return T(e)?"indeterminate":e?"checked":"unchecked"}D.displayName=N,e.s(["Checkbox",0,I,"CheckboxIndicator",0,E,"Indicator",0,E,"Root",0,I,"createCheckboxScope",0,y,"unstable_BubbleInput",0,D,"unstable_CheckboxBubbleInput",0,D,"unstable_CheckboxProvider",0,S,"unstable_CheckboxTrigger",0,C,"unstable_Provider",0,S,"unstable_Trigger",0,C],388474);var P=e.i(388474),P=P,A=e.i(975157),R=e.i(593698);e.s(["Checkbox",0,function({className:e,...a}){return(0,t.jsx)(P.Root,{"data-slot":"checkbox",className:(0,A.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),...a,children:(0,t.jsx)(P.Indicator,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none [&>svg]:size-3.5",children:(0,t.jsx)(R.CheckIcon,{})})})}],59497)},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)},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),a=e.i(225913),s=e.i(975157);let r=(0,a.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,...a}){return(0,t.jsx)("div",{"data-slot":"empty",className:(0,s.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),...a})},"EmptyDescription",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"empty-description",className:(0,s.cn)("text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",e),...a})},"EmptyHeader",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"empty-header",className:(0,s.cn)("flex max-w-sm flex-col items-center gap-2",e),...a})},"EmptyMedia",0,function({className:e,variant:a="default",...i}){return(0,t.jsx)("div",{"data-slot":"empty-icon","data-variant":a,className:(0,s.cn)(r({variant:a,className:e})),...i})},"EmptyTitle",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"empty-title",className:(0,s.cn)("font-heading text-sm font-medium tracking-tight",e),...a})}])},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 a=document.execCommand("copy");if(t.remove(),!a)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)}`}])},778434,e=>{"use strict";e.s(["AGENT_FIELDS",0,"id name hostname version osVersion architecture cpuModel memoryTotalBytes memoryFreeBytes diskTotalBytes diskFreeBytes capabilities baseRepoDirectory derivedDataLocationMode derivedDataPath buildsDirectory defaultBuildsDirectory effectiveBuildsDirectory connectionStatus ipAddress lastSeenAt disconnectedAt createdAt","JOB_FIELDS",0,"id agentId kind payload status error result timeoutSeconds createdAt startedAt finishedAt updatedAt","JOB_LOG_FIELDS",0,"id jobId sequence stream message createdAt"])},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)},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,986206,e=>{"use strict";var t=e.i(456420);let a=(0,t.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,a],876561);let s=(0,t.default)("smartphone",[["rect",{width:"14",height:"20",x:"5",y:"2",rx:"2",ry:"2",key:"1yt0o3"}],["path",{d:"M12 18h.01",key:"mhygvu"}]]);e.s(["Smartphone",0,s],986206)},920950,e=>{"use strict";var t=e.i(843476),a=e.i(876561),s=e.i(93384),r=e.i(21357),i=e.i(456420);let n=(0,i.default)("rocket",[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]]);var l=e.i(986206);let o=(0,i.default)("test-tube",[["path",{d:"M14.5 2v17.5c0 1.4-1.1 2.5-2.5 2.5c-1.4 0-2.5-1.1-2.5-2.5V2",key:"125lnx"}],["path",{d:"M8.5 2h7",key:"csnxdl"}],["path",{d:"M14.5 16h-5",key:"1ox875"}]]),c={archive:a.Archive,hammer:s.Hammer,play:r.Play,rocket:n,smartphone:l.Smartphone,"test-tube":o};e.s(["ConfigurationIcon",0,function({iconKey:e}){if(!e)return null;let a=c[e];return a?(0,t.jsx)(a,{"aria-hidden":!0,className:"size-4"}):null}],920950)},390615,e=>{"use strict";var t=e.i(843476),a=e.i(711241),s=e.i(835079),r=e.i(856522),i=e.i(948148),n=e.i(271645),l=e.i(778434),o=e.i(93384),c=e.i(77071),d=e.i(741120),u=e.i(250832),h=e.i(573474),p=e.i(929592),x=e.i(487486),m=e.i(519455),f=e.i(515288),v=e.i(59497),g=e.i(776639),y=e.i(82612),j=e.i(793479),b=e.i(110204),S=e.i(967489),k=e.i(987968),C=e.i(624687),I=e.i(462777),w=e.i(637611),E=e.i(920950);let N=`
|
|
2
|
+
id type
|
|
3
|
+
configurations {
|
|
4
|
+
id name iconKey scheme buildConfiguration defaultAction advancedSettings createdAt updatedAt
|
|
5
|
+
source { id kind relativePath }
|
|
6
|
+
observation { id scopeKey status schemes configurations testPlans error stale headSha xcodeVersion lastParseAttemptAt lastParsedAt }
|
|
7
|
+
}
|
|
8
|
+
allowedScripts {
|
|
9
|
+
position
|
|
10
|
+
script { id name preBuildScript postBuildScript enabledByDefault timeoutSeconds failureBehavior }
|
|
11
|
+
}
|
|
12
|
+
`;function D({codebaseId:e,checkouts:a}){let s=(0,i.useTranslations)("builds"),[r,l]=(0,n.useState)(a?.find(e=>e.available)?.codebaseId??e),[g,j]=(0,n.useState)(null),[b,C]=(0,n.useState)([]),[B,P]=(0,n.useState)(null),[A,R]=(0,n.useState)(!0),[$,_]=(0,n.useState)(!1),[L,V]=(0,n.useState)(null),[M,O]=(0,n.useState)(null),[q,U]=(0,n.useState)(!1),F=(0,n.useCallback)(async()=>{try{let e=await (0,w.controlPlaneRequest)(`query IosProjectSection($codebaseId: ID!) {
|
|
13
|
+
iosAppProject(codebaseId: $codebaseId) { ${N} }
|
|
14
|
+
buildScripts { id name preBuildScript postBuildScript enabledByDefault timeoutSeconds failureBehavior }
|
|
15
|
+
worktreeOverview {
|
|
16
|
+
agents { codebases { codebase { id } worktrees { id primary } } }
|
|
17
|
+
}
|
|
18
|
+
}`,{codebaseId:r});j(e.iosAppProject),C(e.buildScripts);let t=e.worktreeOverview.agents.flatMap(e=>e.codebases).find(e=>e.codebase.id===r);P(t?.worktrees.find(e=>e.primary)?.id??t?.worktrees[0]?.id??null),V(null)}catch(e){V(e instanceof Error?e.message:String(e))}finally{R(!1)}},[r]);(0,n.useEffect)(()=>{let e=window.setTimeout(()=>void F(),0);return()=>window.clearTimeout(e)},[F]);let H=async()=>{_(!0);try{await (0,w.controlPlaneRequest)(`mutation CreateIosProject($codebaseId: ID!) {
|
|
19
|
+
createIosAppProject(codebaseId: $codebaseId) { id }
|
|
20
|
+
}`,{codebaseId:r}),await F()}catch(e){V(e instanceof Error?e.message:String(e))}finally{_(!1)}},z=async e=>{if(B){_(!0);try{await (0,w.controlPlaneRequest)(`mutation ReparseProjectConfiguration($configurationId: ID!, $worktreeId: ID!, $requestId: ID!) {
|
|
21
|
+
reparseBuildConfiguration(configurationId: $configurationId, worktreeId: $worktreeId, requestId: $requestId) { id status }
|
|
22
|
+
}`,{configurationId:e.id,worktreeId:B,requestId:(0,I.createClientId)()}),await F()}catch(e){V(e instanceof Error?e.message:String(e))}finally{_(!1)}}},G=async e=>{_(!0);try{await (0,w.controlPlaneRequest)("mutation DeleteBuildConfiguration($id: ID!) { deleteBuildConfiguration(id: $id) }",{id:e}),await F()}catch(e){V(e instanceof Error?e.message:String(e))}finally{_(!1)}},K=async(e,t)=>{let a=g?.allowedScripts.map(e=>e.script.id)??[],s=t?[...a,e]:a.filter(t=>t!==e);try{await (0,w.controlPlaneRequest)(`mutation SetAllowedBuildScripts($codebaseId: ID!, $scriptIds: [ID!]!) {
|
|
23
|
+
setCodebaseBuildScripts(codebaseId: $codebaseId, scriptIds: $scriptIds) { id }
|
|
24
|
+
}`,{codebaseId:r,scriptIds:s}),await F()}catch(e){V(e instanceof Error?e.message:String(e))}};return A?(0,t.jsxs)("p",{className:"flex items-center gap-2 text-muted-foreground",children:[(0,t.jsx)(k.Spinner,{})," ",s("loading")]}):(0,t.jsxs)("div",{className:"space-y-5",children:[L&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:L})}),a&&a.length>0&&(0,t.jsxs)(f.Card,{children:[(0,t.jsx)(f.CardHeader,{children:(0,t.jsx)(f.CardTitle,{children:s("parseCheckout")})}),(0,t.jsxs)(f.CardContent,{className:"space-y-2",children:[(0,t.jsxs)(S.Select,{disabled:$,onValueChange:e=>{R(!0),l(e)},value:r,children:[(0,t.jsx)(S.SelectTrigger,{"aria-label":s("parseCheckout"),children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsx)(S.SelectContent,{children:a.map(e=>(0,t.jsxs)(S.SelectItem,{disabled:!e.available,value:e.codebaseId,children:[e.label,e.available?"":` \xb7 ${s("checkoutUnavailable")}`]},e.codebaseId))})]}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:s("parseCheckoutDescription")})]})]}),g?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(p.Alert,{children:(0,t.jsx)(p.AlertDescription,{children:s("sharedProjectDescription")})}),(0,t.jsxs)(f.Card,{children:[(0,t.jsxs)(f.CardHeader,{className:"flex-row items-center justify-between",children:[(0,t.jsx)(f.CardTitle,{children:s("buildConfigurations")}),(0,t.jsxs)(m.Button,{disabled:!B,onClick:()=>{O(null),U(!0)},size:"sm",children:[(0,t.jsx)(c.Plus,{})," ",s("newConfiguration")]})]}),(0,t.jsx)(f.CardContent,{children:g.configurations.length?(0,t.jsx)("div",{className:"grid gap-3 lg:grid-cols-2",children:g.configurations.map(e=>(0,t.jsx)(f.Card,{children:(0,t.jsxs)(f.CardContent,{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("h3",{className:"flex items-center gap-2 font-medium",children:[(0,t.jsx)(E.ConfigurationIcon,{iconKey:e.iconKey}),e.name]}),(0,t.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:e.source.relativePath})]}),(0,t.jsx)(x.Badge,{variant:e.observation?.status==="ERROR"||e.observation?.status==="INVALID"?"destructive":"outline",children:e.observation?.status??"UNPARSED"})]}),(0,t.jsxs)("div",{className:"rounded-lg border bg-muted/20 p-3 text-sm",children:[(0,t.jsxs)("p",{children:[e.scheme," ·"," ",e.buildConfiguration]}),(0,t.jsxs)("p",{className:"mt-1 text-xs text-muted-foreground",children:[e.observation?.lastParsedAt?s("lastParsed",{value:new Date(e.observation.lastParsedAt).toLocaleString()}):s("neverParsed"),e.observation?.stale?` \xb7 ${s("stale")}`:""]}),e.observation?.error&&(0,t.jsx)("p",{className:"mt-1 text-xs text-destructive",children:e.observation.error})]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,t.jsxs)(m.Button,{disabled:$||!B,onClick:()=>void z(e),size:"sm",variant:"outline",children:[(0,t.jsx)(d.RefreshCw,{})," ",s("reparse")]}),(0,t.jsxs)(m.Button,{onClick:()=>{O(e),U(!0)},size:"sm",variant:"outline",children:[(0,t.jsx)(u.Settings2,{})," ",s("edit")]}),(0,t.jsx)(m.Button,{"aria-label":s("deleteConfiguration"),disabled:$,onClick:()=>void G(e.id),size:"icon-sm",variant:"destructive",children:(0,t.jsx)(h.Trash2,{})})]})]})},e.id))}):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:s("noConfigurations")})})]}),(0,t.jsxs)(f.Card,{children:[(0,t.jsx)(f.CardHeader,{children:(0,t.jsx)(f.CardTitle,{children:s("allowedScripts")})}),(0,t.jsx)(f.CardContent,{className:"space-y-2",children:b.length?b.map(e=>{let a=g.allowedScripts.some(t=>t.script.id===e.id);return(0,t.jsxs)("label",{className:"flex items-center gap-2 rounded-lg border p-2",children:[(0,t.jsx)(v.Checkbox,{checked:a,onCheckedChange:t=>void K(e.id,!!t)}),(0,t.jsx)("span",{className:"text-sm",children:e.name}),e.enabledByDefault&&(0,t.jsx)(x.Badge,{variant:"outline",children:s("defaultEnabled")})]},e.id)}):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:s("createScriptsOnBuildsPage")})})]})]}):(0,t.jsxs)(y.Empty,{className:"border py-12",children:[(0,t.jsxs)(y.EmptyHeader,{children:[(0,t.jsx)(y.EmptyMedia,{variant:"icon",children:(0,t.jsx)(o.Hammer,{})}),(0,t.jsx)(y.EmptyTitle,{children:s("addIosProject")}),(0,t.jsx)(y.EmptyDescription,{children:s("addIosProjectDescription")})]}),(0,t.jsxs)(m.Button,{disabled:$,onClick:()=>void H(),children:[$?(0,t.jsx)(k.Spinner,{}):(0,t.jsx)(c.Plus,{})," ",s("addIosProject")]})]}),q&&B&&(0,t.jsx)(T,{codebaseId:r,configuration:M,onOpenChange:U,onSaved:F,open:q,worktreeId:B})]})}function T({codebaseId:e,worktreeId:a,configuration:s,open:r,onOpenChange:l,onSaved:o}){let c=(0,i.useTranslations)("builds"),[u,h]=(0,n.useState)(s?.name??""),[y,E]=(0,n.useState)(s?.iconKey??"none"),[N,D]=(0,n.useState)([]),[B,P]=(0,n.useState)(s?.source.relativePath??""),[A,R]=(0,n.useState)(s?.source.kind??"PROJECT"),[$,_]=(0,n.useState)(s?.observation?{source:s.source,schemes:s.observation.schemes,configurations:s.observation.configurations,testPlans:s.observation.testPlans,headSha:s.observation.headSha,xcodeVersion:s.observation.xcodeVersion}:null),[L,V]=(0,n.useState)(s?.observation?.status??"UNPARSED"),[M,O]=(0,n.useState)(s?.observation?.stale??!1),[q,U]=(0,n.useState)(s?.scheme??""),[F,H]=(0,n.useState)(s?.buildConfiguration??""),[z,G]=(0,n.useState)(s?.defaultAction??"BUILD"),[K,J]=(0,n.useState)(JSON.stringify(s?.advancedSettings??{},null,2)),[W,X]=(0,n.useState)(s?.advancedSettings?.parseTestResults!==!1),[Y,Z]=(0,n.useState)("string"==typeof s?.advancedSettings?.testPlan?s.advancedSettings.testPlan:"__SCHEME_DEFAULT__"),[Q,ee]=(0,n.useState)(!1),[et,ea]=(0,n.useState)(!1),[es,er]=(0,n.useState)(!1),[ei,en]=(0,n.useState)(null),el=(0,n.useCallback)(async()=>{ee(!0);try{let e=await (0,w.controlPlaneRequest)(`mutation DiscoverBuildSources($worktreeId: ID!, $requestId: ID!) {
|
|
25
|
+
discoverBuildSources(worktreeId: $worktreeId, requestId: $requestId) { kind relativePath }
|
|
26
|
+
}`,{worktreeId:a,requestId:(0,I.createClientId)()});D(e.discoverBuildSources)}catch(e){en(e instanceof Error?e.message:String(e))}finally{ee(!1)}},[a]);(0,n.useEffect)(()=>{let e=window.setTimeout(()=>void el(),0);return()=>window.clearTimeout(e)},[el]);let eo=async(e,t)=>{ea(!0),en(null);try{let s=await (0,w.controlPlaneRequest)(`mutation InspectBuildSource($input: InspectBuildSourceInput!) {
|
|
27
|
+
inspectBuildSource(input: $input) {
|
|
28
|
+
source { kind relativePath }
|
|
29
|
+
schemes configurations testPlans headSha xcodeVersion
|
|
30
|
+
}
|
|
31
|
+
}`,{input:{worktreeId:a,sourceKind:e.kind,sourcePath:e.relativePath,scheme:t||null,requestId:(0,I.createClientId)()}});_(s.inspectBuildSource),V("VALID"),O(!1),P(e.relativePath),R(e.kind),t||(U(s.inspectBuildSource.schemes[0]??q),H(s.inspectBuildSource.configurations[0]??F))}catch(e){V("ERROR"),O(!!$),en(e instanceof Error?e.message:String(e))}finally{ea(!1)}},ec=async()=>{er(!0),en(null);try{let t;try{if(!(t=JSON.parse(K))||"object"!=typeof t||Array.isArray(t))throw Error()}catch{throw Error(c("advancedJsonInvalid"))}t={...t,testPlan:"__SCHEME_DEFAULT__"===Y?null:Y,parseTestResults:W};let r=await (0,w.controlPlaneRequest)(`mutation SaveBuildConfiguration($input: SaveBuildConfigurationInput!) {
|
|
32
|
+
saveBuildConfiguration(input: $input) { id }
|
|
33
|
+
}`,{input:{id:s?.id??null,codebaseId:e,name:u,iconKey:"none"===y?null:y,sourceKind:A,sourcePath:B,scheme:q,buildConfiguration:F,defaultAction:z,advancedSettings:t}});await (0,w.controlPlaneRequest)(`mutation ReparseSavedBuildConfiguration($configurationId: ID!, $worktreeId: ID!, $requestId: ID!) {
|
|
34
|
+
reparseBuildConfiguration(configurationId: $configurationId, worktreeId: $worktreeId, requestId: $requestId) { id status }
|
|
35
|
+
}`,{configurationId:r.saveBuildConfiguration.id,worktreeId:a,requestId:(0,I.createClientId)()}),await o(),l(!1)}catch(e){en(e instanceof Error?e.message:String(e))}finally{er(!1)}};return(0,t.jsx)(g.Dialog,{onOpenChange:l,open:r,children:(0,t.jsxs)(g.DialogContent,{className:"sm:max-w-3xl",children:[(0,t.jsxs)(g.DialogHeader,{children:[(0,t.jsx)(g.DialogTitle,{children:s?c("editConfiguration"):c("newConfiguration")}),(0,t.jsx)(g.DialogDescription,{children:c("configurationDescription")})]}),ei&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:ei})}),(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)("div",{className:"grid gap-4 sm:grid-cols-2",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"configuration-name",children:c("name")}),(0,t.jsx)(j.Input,{id:"configuration-name",onChange:e=>h(e.target.value),value:u})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:c("icon")}),(0,t.jsxs)(S.Select,{onValueChange:E,value:y,children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsx)(S.SelectContent,{children:["none","smartphone","hammer","play","test-tube","archive","rocket"].map(e=>(0,t.jsx)(S.SelectItem,{value:e,children:e},e))})]})]})]}),(0,t.jsx)(f.Card,{children:(0,t.jsxs)(f.CardContent,{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"font-medium",children:c("source")}),(0,t.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:B||c("selectSource")})]}),$&&(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[M&&(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:c("stale")}),(0,t.jsx)(x.Badge,{variant:"VALID"===L?"outline":"destructive",children:L})]})]}),(0,t.jsxs)(S.Select,{disabled:Q||et,onValueChange:e=>{let t=N.find(t=>t.relativePath===e);t&&eo(t)},value:N.some(e=>e.relativePath===B)?B:"",children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{placeholder:Q?c("loadingSources"):c("selectSource")})}),(0,t.jsx)(S.SelectContent,{children:N.map(e=>(0,t.jsx)(S.SelectItem,{value:e.relativePath,children:e.relativePath},e.relativePath))})]}),$&&(0,t.jsxs)("div",{className:"grid gap-4 sm:grid-cols-2",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:c("scheme")}),(0,t.jsxs)(S.Select,{onValueChange:e=>{U(e),eo($.source,e)},value:q,children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsxs)(S.SelectContent,{children:[q&&!$.schemes.includes(q)&&(0,t.jsxs)(S.SelectItem,{value:q,children:[q," · ",c("savedValueUnavailable")]}),$.schemes.map(e=>(0,t.jsx)(S.SelectItem,{value:e,children:e},e))]})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:c("configuration")}),(0,t.jsxs)(S.Select,{onValueChange:H,value:F,children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsxs)(S.SelectContent,{children:[F&&!$.configurations.includes(F)&&(0,t.jsxs)(S.SelectItem,{value:F,children:[F," ·"," ",c("savedValueUnavailable")]}),$.configurations.map(e=>(0,t.jsx)(S.SelectItem,{value:e,children:e},e))]})]})]})]}),(0,t.jsxs)(m.Button,{disabled:!B||et,onClick:()=>void eo({kind:A,relativePath:B},q),size:"sm",variant:"outline",children:[et?(0,t.jsx)(k.Spinner,{}):(0,t.jsx)(d.RefreshCw,{})," ",c("reparse")]})]})}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:c("defaultAction")}),(0,t.jsxs)(S.Select,{onValueChange:e=>G(e),value:z,children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsx)(S.SelectContent,{children:["BUILD","TEST","ANALYZE","ARCHIVE","BUILD_FOR_TESTING","TEST_WITHOUT_BUILDING"].map(e=>(0,t.jsx)(S.SelectItem,{value:e,children:c(`actions.${e}`)},e))})]})]}),["TEST","BUILD_FOR_TESTING","TEST_WITHOUT_BUILDING"].includes(z)&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:c("testPlan")}),(0,t.jsxs)(S.Select,{onValueChange:Z,value:Y,children:[(0,t.jsx)(S.SelectTrigger,{children:(0,t.jsx)(S.SelectValue,{})}),(0,t.jsxs)(S.SelectContent,{children:[(0,t.jsx)(S.SelectItem,{value:"__SCHEME_DEFAULT__",children:c("schemeDefaultTestPlan")}),"__SCHEME_DEFAULT__"!==Y&&!$?.testPlans.includes(Y)&&(0,t.jsxs)(S.SelectItem,{value:Y,children:[Y," · ",c("savedValueUnavailable")]}),$?.testPlans.map(e=>(0,t.jsx)(S.SelectItem,{value:e,children:e},e))]})]})]}),(0,t.jsxs)("details",{className:"rounded-xl border p-3",children:[(0,t.jsx)("summary",{className:"cursor-pointer font-medium",children:c("advancedSettings")}),(0,t.jsxs)("div",{className:"mt-3 space-y-2",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 pb-2",children:[(0,t.jsx)(v.Checkbox,{checked:W,onCheckedChange:e=>X(!!e)}),c("parseTestResults")]}),(0,t.jsx)(b.Label,{htmlFor:"configuration-advanced-json",children:c("advancedJson")}),(0,t.jsx)(C.Textarea,{className:"font-mono text-xs",id:"configuration-advanced-json",onChange:e=>J(e.target.value),rows:10,value:K})]})]})]}),(0,t.jsxs)(g.DialogFooter,{children:[(0,t.jsx)(m.Button,{onClick:()=>l(!1),variant:"outline",children:c("cancel")}),(0,t.jsxs)(m.Button,{disabled:es||et||!u.trim()||!B||!q||!F,onClick:()=>void ec(),children:[es&&(0,t.jsx)(k.Spinner,{})," ",c("save")]})]})]})})}var B=e.i(677572),P=e.i(520133);let A=`
|
|
36
|
+
id canonicalOrigin displayOrigin name description jiraBranchRegex keepBaseBranchUpToDate createdAt updatedAt
|
|
37
|
+
skillGroups { id name }
|
|
38
|
+
codebases {
|
|
39
|
+
id folder observedOrigin branch headSha upstream ahead behind syncState availability statusError
|
|
40
|
+
defaultBranch localBranches remoteBranches lastCheckedAt lastFetchedAt lastFetchAttemptAt lastFetchError
|
|
41
|
+
agent { ${l.AGENT_FIELDS} }
|
|
42
|
+
activeJob { ${l.JOB_FIELDS} }
|
|
43
|
+
}
|
|
44
|
+
`;e.s(["RepositoryDetailPage",0,function({repositoryId:e}){let l=(0,i.useTranslations)("codebases"),o=(0,i.useTranslations)("builds"),[c,d]=(0,n.useState)(null),[u,h]=(0,n.useState)([]),[x,g]=(0,n.useState)(!0),[S,I]=(0,n.useState)(!1),[E,N]=(0,n.useState)(null),[T,R]=(0,n.useState)(null),[$,_]=(0,n.useState)(""),[L,V]=(0,n.useState)(""),[M,O]=(0,n.useState)(""),[q,U]=(0,n.useState)(!0),[F,H]=(0,n.useState)([]),z=(0,n.useCallback)(e=>{d(e),_(e.name),V(e.description),O(e.jiraBranchRegex??""),U(e.keepBaseBranchUpToDate),H(e.skillGroups?.map(e=>e.id)??[])},[]),G=(0,n.useCallback)(async()=>{try{let t=await (0,w.controlPlaneRequest)(`query RepositoryDetail($id: ID!) {
|
|
45
|
+
codebaseRepository(id: $id) { ${A} }
|
|
46
|
+
skillsOverview { groups { id name } }
|
|
47
|
+
}`,{id:e});t.codebaseRepository?z(t.codebaseRepository):d(null),h(t.skillsOverview?.groups??[]),N(null)}catch(e){N(e instanceof Error?e.message:String(e))}finally{g(!1)}},[z,e]);(0,n.useEffect)(()=>{let t=window.setTimeout(()=>void G(),0),a=(0,w.controlPlaneSubscriptions)().subscribe({query:`subscription RepositoryDetailChanged {
|
|
48
|
+
codebaseOverviewChanged { repositoryId }
|
|
49
|
+
}`},{next:t=>{let a=t.data?.codebaseOverviewChanged;a&&a.repositoryId!==e||G()},error:()=>void 0,complete:()=>void 0});return()=>{window.clearTimeout(t),a()}},[G,e]);let K=async e=>{if(e.preventDefault(),c){I(!0),N(null),R(null);try{await (0,w.controlPlaneRequest)(`mutation UpdateCodebaseRepository($input: UpdateCodebaseRepositoryInput!) {
|
|
50
|
+
updateCodebaseRepository(input: $input) { id }
|
|
51
|
+
}`,{input:{id:c.id,name:$,description:L,jiraBranchRegex:M||null,keepBaseBranchUpToDate:q,skillGroupIds:F}}),await G(),R(l("repositorySaved"))}catch(e){N(e instanceof Error?e.message:String(e))}finally{I(!1)}}};if(x)return(0,t.jsxs)("p",{className:"mx-auto flex max-w-6xl items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(k.Spinner,{})," ",l("loadingRepository")]});if(!c)return(0,t.jsxs)(y.Empty,{className:"mx-auto max-w-6xl border py-12",children:[(0,t.jsxs)(y.EmptyHeader,{children:[(0,t.jsx)(y.EmptyMedia,{variant:"icon",children:(0,t.jsx)(s.FolderGit2,{})}),(0,t.jsx)(y.EmptyTitle,{children:l("repositoryNotFound")}),(0,t.jsx)(y.EmptyDescription,{children:l("repositoryNotFoundDescription")})]}),(0,t.jsx)(m.Button,{asChild:!0,variant:"outline",children:(0,t.jsxs)(P.Link,{href:"/codebases",children:[(0,t.jsx)(a.ArrowLeft,{})," ",l("backToCodebases")]})})]});let J=c.codebases.map(e=>({codebaseId:e.id,label:`${e.agent.name} \xb7 ${e.folder}`,available:"ONLINE"===e.agent.connectionStatus&&"AVAILABLE"===e.availability}));return(0,t.jsxs)("section",{className:"mx-auto flex w-full max-w-6xl flex-col gap-6",children:[(0,t.jsx)("div",{children:(0,t.jsx)(m.Button,{asChild:!0,className:"-ml-2",size:"sm",variant:"ghost",children:(0,t.jsxs)(P.Link,{href:"/codebases",children:[(0,t.jsx)(a.ArrowLeft,{})," ",l("backToCodebases")]})})}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:l("editTitle")}),(0,t.jsx)("p",{className:"mt-1 font-mono text-xs text-muted-foreground",children:c.displayOrigin}),(0,t.jsx)("p",{className:"mt-2 text-sm text-muted-foreground",children:l("repositorySharedDescription")})]}),E&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:E})}),T&&(0,t.jsx)(p.Alert,{children:(0,t.jsx)(p.AlertDescription,{children:T})}),(0,t.jsxs)(B.Tabs,{defaultValue:"details",children:[(0,t.jsxs)(B.TabsList,{children:[(0,t.jsx)(B.TabsTrigger,{value:"details",children:l("repositoryDetails")}),(0,t.jsx)(B.TabsTrigger,{value:"ios-app",children:o("iosApp")})]}),(0,t.jsx)(B.TabsContent,{value:"details",children:(0,t.jsx)("form",{className:"space-y-5",onSubmit:K,children:(0,t.jsxs)(f.Card,{children:[(0,t.jsxs)(f.CardHeader,{children:[(0,t.jsx)(f.CardTitle,{children:l("repositoryDetails")}),(0,t.jsx)(f.CardDescription,{children:l("repositoryDetailsDescription")})]}),(0,t.jsxs)(f.CardContent,{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"repository-name",children:l("name")}),(0,t.jsx)(j.Input,{id:"repository-name",maxLength:120,onChange:e=>_(e.target.value),required:!0,value:$})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"repository-jira-regex",children:l("jiraBranchRegex")}),(0,t.jsx)(j.Input,{id:"repository-jira-regex",onChange:e=>O(e.target.value),placeholder:l("inheritDefaultRegex"),value:M}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:l("jiraBranchRegexHelp")})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"repository-description",children:l("repositoryDescription")}),(0,t.jsx)(C.Textarea,{id:"repository-description",maxLength:2e3,onChange:e=>V(e.target.value),value:L})]}),(0,t.jsxs)("div",{className:"flex items-start gap-3 rounded-lg border p-3",children:[(0,t.jsx)(v.Checkbox,{checked:q,className:"mt-0.5",id:"repository-keep-base-branch-up-to-date",onCheckedChange:e=>U(!0===e)}),(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)(b.Label,{htmlFor:"repository-keep-base-branch-up-to-date",children:l("keepBaseBranchUpToDate")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:l("keepBaseBranchUpToDateHelp")})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:l("skillGroups")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:l("skillGroupsHelp")}),(0,t.jsxs)("div",{className:"max-h-56 space-y-1 overflow-auto rounded-lg border p-2",children:[u.map(e=>(0,t.jsxs)("label",{className:"flex items-center gap-2 rounded-md px-2 py-1.5 hover:bg-muted",children:[(0,t.jsx)(v.Checkbox,{checked:F.includes(e.id),onCheckedChange:t=>H(a=>!0===t?[...new Set([...a,e.id])]:a.filter(t=>t!==e.id))}),e.name]},e.id)),!u.length&&(0,t.jsx)("p",{className:"px-2 py-1 text-sm text-muted-foreground",children:l("noSkillGroups")})]})]}),(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsxs)(m.Button,{disabled:S||!$.trim(),type:"submit",children:[S?(0,t.jsx)(k.Spinner,{}):(0,t.jsx)(r.Save,{})," ",l("save")]})})]})]})})}),(0,t.jsx)(B.TabsContent,{value:"ios-app",children:(0,t.jsx)(D,{checkouts:J,codebaseId:J[0]?.codebaseId??""})})]})]})}],390615)}]);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,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)},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})}])},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",...s}){return(0,t.jsx)("div",{"data-slot":"empty-icon","data-variant":r,className:(0,a.cn)(n({variant:r,className:e})),...s})},"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})}])},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])},929592,e=>{"use strict";var t=e.i(843476),r=e.i(225913),a=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,...s}){return(0,t.jsx)("div",{"data-slot":"alert",role:"alert",className:(0,a.cn)(n({variant:r}),e),...s})},"AlertDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-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 [&_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:a="default",...n}){return(0,t.jsx)("div",{"data-slot":"card","data-size":a,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,...a}){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),...a})},"CardContent",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-(--card-spacing)",e),...a})},"CardDescription",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-sm text-muted-foreground",e),...a})},"CardFooter",0,function({className:e,...a}){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),...a})},"CardHeader",0,function({className:e,...a}){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),...a})},"CardTitle",0,function({className:e,...a}){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),...a})}])},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),a=e.i(758379),a=a;e.s(["Spinner",0,function({className:e,...n}){return(0,t.jsx)(a.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,a=e.i(247167);function n(e){return null===e?"null":Array.isArray(e)?"array":typeof e}function s(e){return"object"===n(e)}function o(e,t){return e.length<124?e:t}var i=((t=i||{})[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(!s(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&&!s(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(!s(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&&!s(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&&!s(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(!s(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 s(e)&&"code"in e&&"reason"in e}async function m(e,t){let r=await fetch("/api/graphql",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({query:e,variables:t})}),a=await r.json();if(!r.ok||a.errors?.length||!a.data)throw Error(a.errors?.map(e=>e.message).join("; ")||`HTTP ${r.status}`);return a.data}let g=null;function x(){let e=a.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,m,"controlPlaneSubscriptions",0,function(){return g??=function(t){let r,a,n,s,{url:m,connectionParams:g,lazy:x=!0,onNonLazyError:h=console.error,lazyCloseTimeout:y=0,keepAlive:f=0,disablePong:v,connectionAckWaitTimeout:b=0,retryAttempts:j=5,retryWait:w=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:N,webSocketImpl:k,generateID:T=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:S,jsonMessageReviver:E}=t;if(k){var L;if(!("function"==typeof(L=k)&&"constructor"in L&&"CLOSED"in L&&"CLOSING"in L&&"CONNECTING"in L&&"OPEN"in L))throw Error("Invalid WebSocket implementation provided");r=k}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 $=r,A=(a={},n={on:(e,t)=>(a[e]=t,()=>{delete a[e]}),emit(e){"id"in e&&a[e.id]?.(e)}},s={connecting:N?.connecting?[N.connecting]:[],opened:N?.opened?[N.opened]:[],connected:N?.connected?[N.connected]:[],ping:N?.ping?[N.ping]:[],pong:N?.pong?[N.pong]:[],message:N?.message?[n.emit,N.message]:[n.emit],closed:N?.closed?[N.closed]:[],error:N?.error?[N.error]:[]},{onMessage:n.on,on(e,t){let r=s[e];return r.push(t),()=>{r.splice(r.indexOf(t),1)}},emit(e,...t){for(let r of[...s[e]])r(...t)}});function F(e){let t=[A.on("error",r=>{t.forEach(e=>e()),e(r)}),A.on("closed",r=>{t.forEach(e=>e()),e(r)})]}let R,P=0,z,I=!1,M=0,B=!1;async function q(){clearTimeout(z);let[e,t]=await (R??(R=new Promise((e,t)=>(async()=>{let r,a;if(I){if(await w(M),!P)return R=void 0,t({code:1e3,reason:"All Subscriptions Gone"});M++}A.emit("connecting",I);let n=new $("function"==typeof m?await m():m,"graphql-transport-ws");function s(){isFinite(f)&&f>0&&(clearTimeout(a),a=setTimeout(()=>{n.readyState===$.OPEN&&(n.send(d({type:l.Ping})),A.emit("ping",!1,void 0))},f))}F(e=>{R=void 0,clearTimeout(r),clearTimeout(a),t(e),e instanceof u&&(n.close(4499,"Terminated"),n.onerror=null,n.onclose=null)}),n.onerror=e=>A.emit("error",e),n.onclose=e=>A.emit("closed",e),n.onopen=async()=>{try{A.emit("opened",n);let e="function"==typeof g?await g():g;if(n.readyState!==$.OPEN)return;n.send(d(e?{type:l.ConnectionInit,payload:e}:{type:l.ConnectionInit},S)),isFinite(b)&&b>0&&(r=setTimeout(()=>{n.close(i.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},b)),s()}catch(e){A.emit("error",e),n.close(i.InternalClientError,o(e instanceof Error?e.message:String(e),"Internal client error"))}};let p=!1;n.onmessage=({data:t})=>{try{let a=c("string"==typeof t?JSON.parse(t,E):t);if(A.emit("message",a),"ping"===a.type||"pong"===a.type){A.emit(a.type,!0,a.payload),"pong"===a.type?s():v||(n.send(d(a.payload?{type:l.Pong,payload:a.payload}:{type:l.Pong})),A.emit("pong",!1,a.payload));return}if(p)return;if(a.type!==l.ConnectionAck)throw Error(`First message cannot be of type ${a.type}`);clearTimeout(r),p=!0,A.emit("connected",n,a.payload,I),I=!1,M=0,e([n,new Promise((e,t)=>F(t))])}catch(e){n.onmessage=null,A.emit("error",e),n.close(i.BadResponse,o(e instanceof Error?e.message:String(e),"Bad response"))}}})())));e.readyState===$.CLOSING&&await t;let r=()=>{},a=new Promise(e=>r=e);return[e,r,Promise.race([a.then(()=>{P||(isFinite(y)&&y>0?z=setTimeout(()=>{e.readyState===$.OPEN&&e.close(1e3,"Normal Closure")},y):e.close(1e3,"Normal Closure"))}),t])]}function O(e){var t;if(p(e)&&(![1e3,1001,1006,1005,1012,1013,1014].includes(t=e.code)&&t>=1e3&&t<=1999||[i.InternalServerError,i.InternalClientError,i.BadRequest,i.BadResponse,i.Unauthorized,i.SubprotocolNotAcceptable,i.SubscriberAlreadyExists,i.TooManyInitialisationRequests].includes(e.code)))throw e;if(B)return!1;if(p(e)&&1e3===e.code)return P>0;if(!j||M>=j||!C(e))throw e;return I=!0}function _(e,t){let r=T(e),a=!1,n=!1,s=()=>{P--,a=!0};return(async()=>{for(P++;;)try{let[o,i,c]=await q();if(a)return i();let u=A.onMessage(r,e=>{switch(e.type){case l.Next:return void t.next(e.payload);case l.Error:n=!0,a=!0,t.error(e.payload),s();return;case l.Complete:a=!0,s();return}});o.send(d({id:r,type:l.Subscribe,payload:e},S)),s=()=>{a||o.readyState!==$.OPEN||o.send(d({id:r,type:l.Complete},S)),P--,a=!0,i()},await c.finally(u);return}catch(e){if(!O(e))return}})().then(()=>{n||t.complete()}).catch(e=>{t.error(e)}),()=>{a||s()}}return x||(async()=>{for(P++;;)try{let[,,e]=await q();await e}catch(e){try{if(!O(e))return}catch(e){return h?.(e)}}})(),{on:A.on,subscribe:_,iterate(e){let t=[],r={done:!1,error:null,resolve:()=>{}},a=_(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()=>(a(),{done:!0,value:void 0}),n},async dispose(){if(B=!0,R){let[e]=await R;e.close(1e3,"Normal Closure")}},terminate(){R&&A.emit("closed",new u)}}}({url:x,lazy:!0,retryAttempts:1/0,shouldRetry:()=>!0})}],637611)},487486,e=>{"use strict";var t=e.i(843476),r=e.i(225913),a=e.i(709840),n=e.i(975157);let s=(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",success:"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300 [a]:hover:bg-emerald-500/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:o=!1,...i}){let l=o?a.Slot.Root:"span";return(0,t.jsx)(l,{className:(0,n.cn)(s({variant:r}),e),"data-slot":"badge","data-variant":r,...i})}])},26495,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["default",0,t])},867927,e=>{"use strict";var t=e.i(986253);e.s(["ChevronRight",()=>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])},566595,e=>{"use strict";var t=e.i(630299);e.s(["Search",()=>t.default])},635416,96892,e=>{"use strict";var t=e.i(456420);let r=(0,t.default)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);e.s(["ArrowDown",0,r],635416);let a=(0,t.default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);e.s(["ArrowUp",0,a],96892)},491881,e=>{"use strict";var t=e.i(843476),r=e.i(635416),a=e.i(711241),n=e.i(96892);let s=(0,e.i(456420).default)("arrow-up-down",[["path",{d:"m21 16-4 4-4-4",key:"f6ql7i"}],["path",{d:"M17 20V4",key:"1ejh1v"}],["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}]]);var o=e.i(716327),i=e.i(867927),l=e.i(566595),c=e.i(861745),d=e.i(948148),u=e.i(271645),p=e.i(929592),m=e.i(487486),g=e.i(519455),x=e.i(515288),h=e.i(82612),y=e.i(793479),f=e.i(987968),v=e.i(784774),b=e.i(520133),j=e.i(637611);function w(e){return Math.max(0,e.executableLines-e.coveredLines)}function C(e,t){let r=e.replaceAll("\\","/"),a=t?.replaceAll("\\","/").replace(/\/$/,"");return a?r===a?".":r.startsWith(`${a}/`)?r.slice(a.length+1):r:r}function N({activeSort:e,align:r="left",ariaLabel:a,label:n,onSort:s,sortKey:o}){let i=e.key===o;return(0,t.jsx)(k,{active:i,align:r,ariaLabel:a,direction:e.direction,label:n,onSort:()=>s(o)})}function k({active:e,align:a,ariaLabel:o,direction:i,label:l,onSort:c}){return(0,t.jsx)(v.TableHead,{"aria-sort":e?"asc"===i?"ascending":"descending":"none",className:"h-8 px-2",children:(0,t.jsxs)(g.Button,{"aria-label":o,className:`-mx-2 h-7 px-2 text-xs ${"right"===a?"w-[calc(100%+1rem)] justify-end":"justify-start"}`,onClick:c,size:"sm",title:o,type:"button",variant:"ghost",children:[l,e?"asc"===i?(0,t.jsx)(n.ArrowUp,{}):(0,t.jsx)(r.ArrowDown,{}):(0,t.jsx)(s,{})]})})}function T({value:e,percent:r,size:a="compact"}){if("number"!=typeof e)return(0,t.jsx)(t.Fragment,{children:"—"});let n=Math.max(0,Math.min(1,e));return(0,t.jsxs)("span",{className:`inline-flex items-center justify-end tabular-nums ${"metric"===a?"gap-2 text-2xl font-semibold":"gap-1.5"}`,children:[r(e),(0,t.jsx)("span",{"aria-hidden":"true",className:`${"metric"===a?"size-7":"size-3.5"} shrink-0 rounded-full ring-1 ring-foreground/10 ${n>=.8?"text-emerald-500":n>=.5?"text-amber-500":"text-red-500"}`,"data-coverage-indicator":!0,style:{background:`conic-gradient(currentColor ${360*n}deg, var(--muted) 0deg)`}})]})}function S({label:e,percentage:r,value:a}){return(0,t.jsx)(x.Card,{children:(0,t.jsxs)(x.CardContent,{children:[(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:e}),(0,t.jsx)("div",{className:"mt-1",children:"number"==typeof r?(0,t.jsx)(T,{percent:()=>a,size:"metric",value:r}):(0,t.jsx)("p",{className:"text-2xl font-semibold tabular-nums",children:a})})]})})}function E({coverageFiles:e,files:r,percent:a,worktreeFolder:n}){let s=(0,d.useTranslations)("builds"),o=(0,c.useLocale)(),[i,p]=(0,u.useState)(""),[m,g]=(0,u.useState)({key:"filename",direction:"asc"}),x=r.map(t=>{var r;let a=C(t.path,n),s=e.filter(e=>C(e.path,n)===a);return{...t,displayName:s[0]?.name??(r=a).replaceAll("\\","/").split("/").filter(Boolean).at(-1)??r,displayPath:a}}).filter(e=>`${e.displayName} ${e.displayPath} ${e.changeType??""}`.toLocaleLowerCase().includes(i.trim().toLocaleLowerCase())).toSorted((e,t)=>{let r=(e,t)=>e.localeCompare(t,o,{numeric:!0,sensitivity:"base"}),a=0;return 0!==(a="filename"===m.key?r(e.displayName,t.displayName)||r(e.displayPath,t.displayPath):"changeType"===m.key?r(e.changeType??"",t.changeType??""):"coveredLines"===m.key?e.changedCoveredLines-t.changedCoveredLines:(e.changedLineCoverage??-1)-(t.changedLineCoverage??-1))?"asc"===m.direction?a:-a:r(e.displayPath,t.displayPath)}),h=e=>{g(t=>t.key===e?{key:e,direction:"asc"===t.direction?"desc":"asc"}:{key:e,direction:"coveredLines"===e||"lineCoverage"===e?"desc":"asc"})};return(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"relative max-w-xl",children:[(0,t.jsx)(l.Search,{className:"absolute left-3 top-1/2 size-4 -translate-y-1/2 text-muted-foreground"}),(0,t.jsx)(y.Input,{"aria-label":s("searchChangedCoverageFiles"),className:"pl-9",onChange:e=>p(e.target.value),placeholder:s("searchChangedCoverageFiles"),value:i})]}),(0,t.jsx)("div",{className:"overflow-auto rounded-md border",children:(0,t.jsxs)(v.Table,{"aria-label":s("changedFilesCoverage"),className:"text-xs",children:[(0,t.jsx)(v.TableHeader,{children:(0,t.jsxs)(v.TableRow,{children:[(0,t.jsx)(L,{activeSort:m,ariaLabel:s("sortCoverageFiles",{column:s("coverageFile")}),label:s("coverageFile"),onSort:h,sortKey:"filename"}),(0,t.jsx)(L,{activeSort:m,ariaLabel:s("sortCoverageFiles",{column:s("changeType")}),label:s("changeType"),onSort:h,sortKey:"changeType"}),(0,t.jsx)(L,{activeSort:m,align:"right",ariaLabel:s("sortCoverageFiles",{column:s("coveredLines")}),label:s("coveredLines"),onSort:h,sortKey:"coveredLines"}),(0,t.jsx)(L,{activeSort:m,align:"right",ariaLabel:s("sortCoverageFiles",{column:s("coverage")}),label:s("coverage"),onSort:h,sortKey:"lineCoverage"})]})}),(0,t.jsx)(v.TableBody,{children:x.map(e=>(0,t.jsxs)(v.TableRow,{children:[(0,t.jsx)(v.TableCell,{className:"max-w-xl px-2 py-1.5",children:(0,t.jsxs)("div",{className:"flex min-w-0 items-baseline gap-2",children:[(0,t.jsx)("span",{className:"shrink-0 font-medium",children:e.displayName}),(0,t.jsx)("span",{className:"min-w-0 truncate font-mono text-muted-foreground",title:e.path,children:e.displayPath})]})}),(0,t.jsx)(v.TableCell,{className:"px-2 py-1.5",children:e.changeType??"—"}),(0,t.jsxs)(v.TableCell,{className:"px-2 py-1.5 text-right",children:[e.changedCoveredLines," / ",e.changedExecutableLines]}),(0,t.jsx)(v.TableCell,{className:"px-2 py-1.5 text-right",children:(0,t.jsx)(T,{percent:a,value:e.changedLineCoverage})})]},e.path))})]})})]})}function L({activeSort:e,align:r="left",ariaLabel:a,label:n,onSort:s,sortKey:o}){let i=e.key===o;return(0,t.jsx)(k,{active:i,align:r,ariaLabel:a,direction:e.direction,label:n,onSort:()=>s(o)})}e.s(["CoverageReportPage",0,function({buildId:e}){let r=(0,d.useTranslations)("builds"),n=(0,c.useLocale)(),[s,k]=(0,u.useState)(null),[L,$]=(0,u.useState)(e),[A,F]=(0,u.useState)(null),[R,P]=(0,u.useState)(!0),[z,I]=(0,u.useState)(null),[M,B]=(0,u.useState)(""),[q,O]=(0,u.useState)(!1),[_,D]=(0,u.useState)({key:"filename",direction:"asc"}),H=(0,u.useCallback)(async()=>{try{let t=await (0,j.controlPlaneRequest)(`query CoverageReport($id: ID!) {
|
|
2
|
+
build(id: $id) {
|
|
3
|
+
id snapshot
|
|
4
|
+
reports {
|
|
5
|
+
id kind source status summary data error createdAt updatedAt finishedAt
|
|
6
|
+
artifact { id kind relativePath sizeBytes checksum metadata createdAt }
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
}`,{id:e}),r=t.build?.reports.find(e=>"CODE_COVERAGE"===e.kind);k(r??null);let a=t.build?.snapshot.configuration,n=t.build?.snapshot.worktree;$(a?.name??e),F(n?.folder??null),I(null)}catch(e){I(e instanceof Error?e.message:String(e))}finally{P(!1)}},[e]);(0,u.useEffect)(()=>{let e=window.setTimeout(()=>void H(),0);return()=>window.clearTimeout(e)},[H]);let K=(0,u.useMemo)(()=>Array.isArray(s?.data.files)?s.data.files:[],[s]),W=(0,u.useMemo)(()=>{let e=K.filter(e=>`${e.target} ${e.name} ${C(e.path,A)}`.toLocaleLowerCase().includes(M.trim().toLocaleLowerCase())),t=(e,t)=>e.localeCompare(t,n,{numeric:!0,sensitivity:"base"});return e.toSorted((e,r)=>{let a=0;return 0!==(a="filename"===_.key?t(e.name,r.name):"target"===_.key?t(e.target,r.target):"lineCoverage"===_.key?e.lineCoverage-r.lineCoverage:w(e)-w(r))?"asc"===_.direction?a:-a:t(e.name,r.name)||t(e.target,r.target)||t(e.path,r.path)})},[n,K,M,_,A]),U=Array.isArray(s?.data.changedFiles)?s.data.changedFiles:[],G=e=>"number"==typeof e?new Intl.NumberFormat(n,{style:"percent",maximumFractionDigits:1}).format(e):"—",V=e=>{D(t=>t.key===e?{key:e,direction:"asc"===t.direction?"desc":"asc"}:{key:e,direction:"lineCoverage"===e||"uncoveredLines"===e?"desc":"asc"})};return R?(0,t.jsxs)("p",{className:"mx-auto flex max-w-6xl items-center gap-2 text-muted-foreground",children:[(0,t.jsx)(f.Spinner,{})," ",r("loadingCoverageReport")]}):s?(0,t.jsxs)("section",{className:"mx-auto flex w-full max-w-7xl flex-col gap-5",children:[(0,t.jsx)("div",{children:(0,t.jsx)(g.Button,{asChild:!0,className:"-ml-2",size:"sm",variant:"ghost",children:(0,t.jsxs)(b.Link,{href:`/builds/${e}`,children:[(0,t.jsx)(a.ArrowLeft,{})," ",r("backToBuild")]})})}),z&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:z})}),s.error&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:s.error})}),(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:r("coverageReport")}),(0,t.jsx)("h1",{className:"text-2xl font-semibold",children:L})]}),(0,t.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2 lg:grid-cols-4",children:[(0,t.jsx)(S,{label:r("overallCoverage"),percentage:s.summary.lineCoverage,value:G(s.summary.lineCoverage)}),(0,t.jsx)(S,{label:r("coveredLines"),value:String(s.summary.coveredLines??0)}),(0,t.jsx)(S,{label:r("executableLines"),value:String(s.summary.executableLines??0)}),(0,t.jsx)(S,{label:r("changedCoverage"),percentage:s.summary.changedLineCoverage,value:G(s.summary.changedLineCoverage)})]}),U.length>0&&(0,t.jsxs)(x.Card,{children:[(0,t.jsx)(x.CardHeader,{children:(0,t.jsx)(x.CardTitle,{children:r("changedFilesCoverage")})}),(0,t.jsx)(x.CardContent,{children:(0,t.jsx)(E,{coverageFiles:K,files:U,percent:G,worktreeFolder:A})})]}),(0,t.jsxs)(x.Card,{className:"gap-0 py-0",children:[(0,t.jsx)(x.CardHeader,{className:q?"border-b bg-muted/40 py-3":"bg-muted/40 py-3",children:(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)(g.Button,{"aria-expanded":q,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:()=>O(e=>!e),type:"button",variant:"ghost",children:(0,t.jsx)("span",{className:"truncate font-medium",children:r("allCoverageFiles")})}),(0,t.jsxs)("div",{className:"ml-auto flex items-center gap-2",children:[(0,t.jsx)(m.Badge,{children:K.length}),(0,t.jsx)(g.Button,{"aria-expanded":q,"aria-label":r(q?"collapseCoverageFiles":"expandCoverageFiles"),onClick:()=>O(e=>!e),size:"icon-sm",title:r(q?"collapseCoverageFiles":"expandCoverageFiles"),type:"button",variant:"ghost",children:q?(0,t.jsx)(o.ChevronDown,{className:"size-5"}):(0,t.jsx)(i.ChevronRight,{className:"size-5"})})]})]})}),q&&(0,t.jsxs)(x.CardContent,{className:"space-y-4 py-4",children:[(0,t.jsxs)("div",{className:"relative max-w-xl",children:[(0,t.jsx)(l.Search,{className:"absolute left-3 top-1/2 size-4 -translate-y-1/2 text-muted-foreground"}),(0,t.jsx)(y.Input,{"aria-label":r("searchCoverageFiles"),className:"pl-9",onChange:e=>B(e.target.value),placeholder:r("searchCoverageFiles"),value:M})]}),(0,t.jsx)("div",{className:"overflow-auto rounded-md border",children:(0,t.jsxs)(v.Table,{"aria-label":r("allCoverageFiles"),className:"min-w-[60rem] text-xs",children:[(0,t.jsx)(v.TableHeader,{children:(0,t.jsxs)(v.TableRow,{children:[(0,t.jsx)(N,{activeSort:_,ariaLabel:r("sortCoverageFiles",{column:r("coverageTarget")}),label:r("coverageTarget"),onSort:V,sortKey:"target"}),(0,t.jsx)(N,{activeSort:_,ariaLabel:r("sortCoverageFiles",{column:r("coverageFile")}),label:r("coverageFile"),onSort:V,sortKey:"filename"}),(0,t.jsx)(v.TableHead,{className:"h-8 px-2 text-right",children:r("coveredLines")}),(0,t.jsx)(N,{activeSort:_,align:"right",ariaLabel:r("sortCoverageFiles",{column:r("uncoveredLines")}),label:r("uncoveredLines"),onSort:V,sortKey:"uncoveredLines"}),(0,t.jsx)(N,{activeSort:_,align:"right",ariaLabel:r("sortCoverageFiles",{column:r("coverage")}),label:r("coverage"),onSort:V,sortKey:"lineCoverage"})]})}),(0,t.jsx)(v.TableBody,{children:W.map((e,r)=>(0,t.jsxs)(v.TableRow,{children:[(0,t.jsx)(v.TableCell,{className:"px-2 py-1.5",children:(0,t.jsx)(m.Badge,{variant:"outline",children:e.target})}),(0,t.jsx)(v.TableCell,{className:"max-w-xl px-2 py-1.5",children:(0,t.jsxs)("div",{className:"flex min-w-0 items-baseline gap-2",children:[(0,t.jsx)("span",{className:"shrink-0 font-medium",children:e.name}),(0,t.jsx)("span",{className:"min-w-0 truncate font-mono text-muted-foreground",title:e.path,children:C(e.path,A)})]})}),(0,t.jsxs)(v.TableCell,{className:"px-2 py-1.5 text-right tabular-nums",children:[e.coveredLines," / ",e.executableLines]}),(0,t.jsx)(v.TableCell,{className:"px-2 py-1.5 text-right tabular-nums",children:w(e)}),(0,t.jsx)(v.TableCell,{className:"px-2 py-1.5 text-right font-medium",children:(0,t.jsx)(T,{percent:G,value:e.lineCoverage})})]},`${e.target}:${e.path}:${r}`))})]})})]})]})]}):(0,t.jsxs)(h.Empty,{className:"mx-auto max-w-6xl border py-12",children:[(0,t.jsxs)(h.EmptyHeader,{children:[(0,t.jsx)(h.EmptyTitle,{children:r("coverageReportNotFound")}),(0,t.jsx)(h.EmptyDescription,{children:r("coverageReportNotFoundDescription")})]}),(0,t.jsx)(g.Button,{asChild:!0,variant:"outline",children:(0,t.jsxs)(b.Link,{href:`/builds/${e}`,children:[(0,t.jsx)(a.ArrowLeft,{})," ",r("backToBuild")]})})]})}],491881)}]);
|