tower-studio 0.2.44 → 0.2.46
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/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-path-routes-manifest.json +6 -0
- package/.next/standalone/.next/build-manifest.json +3 -3
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/routes-manifest.json +38 -0
- package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +133 -85
- package/.next/standalone/.next/server/app/_not-found/page.js +8 -9
- package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/adapters/test/route.js +2 -2
- package/.next/standalone/.next/server/app/api/adapters/test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/browse-fs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/files/assets/[projectId]/[filename]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/files/assets/[projectId]/[filename]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/git/route.js +1 -1
- package/.next/standalone/.next/server/app/api/git/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assets/[projectId]/[filename]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/assets/[projectId]/[filename]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assets/reveal/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/attachments/route.js +2 -3
- package/.next/standalone/.next/server/app/api/internal/assistant/attachments/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/chat/route.js +2 -2
- package/.next/standalone/.next/server/app/api/internal/assistant/chat/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/route.js +5 -4
- package/.next/standalone/.next/server/app/api/internal/assistant/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/sessions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/backup/import/route.js +3 -4
- package/.next/standalone/.next/server/app/api/internal/backup/import/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/cache/[...segments]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/cache/[...segments]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/harness/ask/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/internal/harness/ask/route/build-manifest.json +9 -0
- package/.next/standalone/.next/server/app/api/internal/harness/ask/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/internal/harness/ask/route.js +7 -0
- package/.next/standalone/.next/server/app/api/internal/harness/ask/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/internal/harness/ask/route_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/api/internal/harness/notify/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/internal/harness/notify/route/build-manifest.json +9 -0
- package/.next/standalone/.next/server/app/api/internal/harness/notify/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/internal/harness/notify/route.js +7 -0
- package/.next/standalone/.next/server/app/api/internal/harness/notify/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/internal/harness/notify/route_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/api/internal/harness/pending/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/internal/harness/pending/route/build-manifest.json +9 -0
- package/.next/standalone/.next/server/app/api/internal/harness/pending/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/internal/harness/pending/route.js +7 -0
- package/.next/standalone/.next/server/app/api/internal/harness/pending/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/internal/harness/pending/route_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/api/internal/harness/reply/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/internal/harness/reply/route/build-manifest.json +9 -0
- package/.next/standalone/.next/server/app/api/internal/harness/reply/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/internal/harness/reply/route.js +12 -0
- package/.next/standalone/.next/server/app/api/internal/harness/reply/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/internal/harness/reply/route_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/api/internal/hooks/install/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/hooks/install/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/hooks/session/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/hooks/session/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/hooks/stop/route.js +3 -3
- package/.next/standalone/.next/server/app/api/internal/hooks/stop/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/hooks/upload/route.js +2 -2
- package/.next/standalone/.next/server/app/api/internal/hooks/upload/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/monaco/[...path]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/monaco/[...path]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/buffer/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/buffer/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/input/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/input/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/paste-image/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/paste-image/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/resume/route.js +5 -4
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/resume/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/start/route.js +6 -5
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/start/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/stop/route.js +5 -4
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/stop/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[taskId]/diff/route.js +2 -2
- package/.next/standalone/.next/server/app/api/tasks/[taskId]/diff/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[taskId]/diff-patch/route.js +2 -2
- package/.next/standalone/.next/server/app/api/tasks/[taskId]/diff-patch/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[taskId]/merge/route.js +5 -3
- package/.next/standalone/.next/server/app/api/tasks/[taskId]/merge/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/harness/page/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/harness/page/build-manifest.json +18 -0
- package/.next/standalone/.next/server/app/harness/page/next-font-manifest.json +11 -0
- package/.next/standalone/.next/server/app/harness/page/react-loadable-manifest.json +18 -0
- package/.next/standalone/.next/server/app/harness/page/server-reference-manifest.json +437 -0
- package/.next/standalone/.next/server/app/harness/page.js +24 -0
- package/.next/standalone/.next/server/app/harness/page.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/harness/page_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/missions/page/react-loadable-manifest.json +3 -2
- package/.next/standalone/.next/server/app/missions/page/server-reference-manifest.json +244 -160
- package/.next/standalone/.next/server/app/missions/page.js +11 -11
- package/.next/standalone/.next/server/app/missions/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/missions/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/onboarding/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/onboarding/page/server-reference-manifest.json +133 -85
- package/.next/standalone/.next/server/app/onboarding/page.js +8 -9
- package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/page/server-reference-manifest.json +133 -85
- package/.next/standalone/.next/server/app/page.js +8 -9
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/settings/page/server-reference-manifest.json +260 -140
- package/.next/standalone/.next/server/app/settings/page.js +10 -11
- package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page/server-reference-manifest.json +284 -248
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page.js +9 -10
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page/server-reference-manifest.json +247 -211
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page.js +9 -10
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page/build-manifest.json +18 -0
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page/next-font-manifest.json +11 -0
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page/react-loadable-manifest.json +18 -0
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page/server-reference-manifest.json +401 -0
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page.js +24 -0
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page/server-reference-manifest.json +222 -186
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page.js +9 -10
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page/server-reference-manifest.json +257 -209
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page.js +10 -11
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/server-reference-manifest.json +133 -85
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js +9 -10
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page/server-reference-manifest.json +219 -171
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page.js +9 -10
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/react-loadable-manifest.json +4 -4
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/server-reference-manifest.json +269 -221
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js +11 -12
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/page/server-reference-manifest.json +169 -133
- package/.next/standalone/.next/server/app/workspaces/page.js +8 -9
- package/.next/standalone/.next/server/app/workspaces/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app-paths-manifest.json +6 -0
- package/.next/standalone/.next/server/chunks/0se9_next_dist_esm_build_templates_app-route_09ikw5j.js +5 -0
- package/.next/standalone/.next/server/chunks/0se9_next_dist_esm_build_templates_app-route_0eh8dj_.js +9 -5
- package/.next/standalone/.next/server/chunks/0se9_next_dist_esm_build_templates_app-route_0gr2wxq.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-1~xqo._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0lvlooo._.js → [root-of-the-server]__0-kboke._.js} +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.3n3t.._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.wsvr6._.js +4 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.yf1mx._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00xe-t8._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02r7j6y._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02yvm55._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__09arklv._.js → [root-of-the-server]__04-ty51._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__065hi6e._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06iuq17._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06x1zwj._.js +28 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06~wmlx._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08-bq72._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08clp-r._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__092475e._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__095t6ga._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_7_w.g._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0atap--._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0c3je91._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dz.knv._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ehwsa1._.js +4 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0esywxf._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fd9z.r._.js +30 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gbyryz._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gcg7i.._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iyp~.k._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0khq-k0._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kkrbn-._.js +4 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l1-djp._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0m8t3vi._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nt7c0f._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nv83.p._.js +4 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pr~t0y._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qcpe0l._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qfcg6k._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0sq5irw._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0squ613._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0u8tl88._.js +28 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wjr-72._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wugb-9._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yeg1kp._.js +4 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zchqv1._.js +43 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zcy11y._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~1-i5h._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~ju4-d._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10aw_67._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10ci~o9._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10qclz-._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12fmxq0._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__136ty69._.js +3 -0
- package/.next/standalone/.next/server/chunks/_02hac5p._.js +30 -0
- package/.next/standalone/.next/server/chunks/_0_w835g._.js +4 -0
- package/.next/standalone/.next/server/chunks/_0je3dz2._.js +30 -0
- package/.next/standalone/.next/server/chunks/_0tidm8l._.js +30 -0
- package/.next/standalone/.next/server/chunks/_0zok2an._.js +30 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_internal_harness_ask_route_actions_0_c62hg.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_internal_harness_notify_route_actions_08hof6m.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_internal_harness_pending_route_actions_0w9t_9m.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_internal_harness_reply_route_actions_0qatz~a.js +3 -0
- package/.next/standalone/.next/server/chunks/src_05balzk._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_0aygchu._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_0gif-f5._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_0pg9w-x._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_0vp6.co._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_11k6i~l._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_actions_agent-actions_ts_10q9r5b._.js +8 -2
- package/.next/standalone/.next/server/chunks/src_lib_02llcit._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_0aowbzy._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_0d~1~wz._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_lib_0ylel_1._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_lib_ai_0xx6y51._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_ai_providers_index_ts_0.y.3vp._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_config-defaults_ts_10ayktg._.js +3 -0
- package/.next/standalone/.next/server/chunks/src_lib_config-reader_ts_0e5f7vk._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/0iu._[workspaceId]_projects_[projectId]_versions_version-timeline-client_tsx_07o_kyi._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/0se9_next_dist_0i5qmqd._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/0se9_next_dist_esm_build_templates_app-page_04~dhws.js +4 -0
- package/.next/standalone/.next/server/chunks/ssr/0se9_next_dist_esm_build_templates_app-page_0fro4ex.js +4 -0
- package/.next/standalone/.next/server/chunks/ssr/0ws9_lucide-react_dist_esm_icons_0gv_cwy._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/12k._sonner_dist_index_mjs_0-vmpk5._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-geq20._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0.0m12b._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__00qzvly._.js +43 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__01bz3_g._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__02~hdzx._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__06sew6r._.js +43 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__07rk6ic._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__090y_.y._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0b.ej5q._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0b6fbjv._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0b6hugs._.js +43 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0br5e7w._.js +43 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0bx_h2u._.js +4 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0dhq_gl._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0e79g0v._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0esg88l._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h_pt4a._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0hzwoy5._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0idkp76._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0j4m.1s._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0jymb~t._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0kmonje._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0kqp70x._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0l0~scn._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0lh3mlq._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0m8m7vc._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0muf4wq._.js +49 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0n02kfa._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0n3uc.v._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0o5ohqy._.js +47 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0s_q09t._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0s~4y3y._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0s~ak20._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ta_mpj._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0trmndk._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0u3~-.g._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0vyl8to._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ws0_c1._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0x7br99._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0xnuz05._.js +5 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ynq8ty._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zsnp~d._.js +5 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0~edc3d._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0~mhv4m._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1013v_g._.js +47 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11fp64w._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__123rmn-._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0_z5hke._.js → [root-of-the-server]__12viys4._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0-5.hgb._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0dye20y._.js → _0-wp_zu._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0-~9em3._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0..h3hk._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_08bq4g8._.js → _00_h2nx._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_02p-udo._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_05~lqg-._.js +4 -0
- package/.next/standalone/.next/server/chunks/ssr/_0771b4a._.js +47 -0
- package/.next/standalone/.next/server/chunks/ssr/{_113957g._.js → _0ak77.u._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/{_11osha9._.js → _0ami9yt._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0r4_qn~._.js → _0awn2mm._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_07lq-bp._.js → _0b660g4._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0j5.ig_._.js → _0czsddm._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0fmko25._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0_nhdgs._.js → _0gomvsp._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0g~p9_x._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0hg~.4w._.js +6 -0
- package/.next/standalone/.next/server/chunks/ssr/_0hsuip_._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0zr81mw._.js → _0hx2o_8._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0s.ik0k._.js → _0j7m~u6._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_08-x_rp._.js → _0l6byg1._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0i4xdso._.js → _0mmy~98._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0nrxhfb._.js +47 -0
- package/.next/standalone/.next/server/chunks/ssr/{_02vz78l._.js → _0o_c3b2._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0os43sb._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0nze-e6._.js → _0p5ft59._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0q2pep_._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_060e1u.._.js → _0snv7nt._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0ty4xe6._.js +43 -0
- package/.next/standalone/.next/server/chunks/ssr/_0vkl7.h._.js +47 -0
- package/.next/standalone/.next/server/chunks/ssr/_0wbcp88._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0x09t_o._.js +47 -0
- package/.next/standalone/.next/server/chunks/ssr/_0z5~opf._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0zn.4bi._.js +47 -0
- package/.next/standalone/.next/server/chunks/ssr/_1086w4p._.js +47 -0
- package/.next/standalone/.next/server/chunks/ssr/_10q2mbe._.js +17 -0
- package/.next/standalone/.next/server/chunks/ssr/_11.knhq._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_1118hto._.js +43 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0rtydyv._.js → _12s8n8g._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_11j0qlp._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_actions_agent-actions_ts_0~wc.sy._.js +8 -2
- package/.next/standalone/.next/server/chunks/ssr/src_actions_file-actions_ts_0gcvqwm._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_missions_missions-client_tsx_11429lj._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_onboarding_page_tsx_0xf7hpz._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_settings_page_tsx_0h9v7dr._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_assets_assets-page-client_tsx_0wyzpam._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_board-page-client_tsx_0gips66._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_notes_notes-page-client_tsx_10gyo3v._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_tasks_[taskId]_task-page-client_tsx_02t7blt._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_0rowjw~._.js +7 -0
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_00wjv6n._.js → src_lib_04nzvfd._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_0.~.oo-._.js → src_lib_0_px2pz._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0a.zy31._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0b73q0a._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0cld9rt._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_005uqbe._.js → src_lib_0dbf2qa._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0er7rzd._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0f0v8_~._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0fr6fzy._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_01sr8_t._.js → src_lib_0h2u7a0._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0k04rl3._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0lpxsj~._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0sq6aqm._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0ui-~7g._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0y5zzg-._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0z-gn78._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_13c4a4g._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_harness_harness-message_ts_0_3ygf9._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_pty_11~ojr2._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_pty_orphan-reaper_ts_0a0qmlo._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0ng0eku._.js → src_lib_schemas_ts_0ph~1ak._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_worktree_ts_06cucy3._.js +1 -1
- package/.next/standalone/.next/server/functions-config-manifest.json +6 -0
- package/.next/standalone/.next/server/instrumentation.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
- package/.next/standalone/.next/server/next-font-manifest.js +1 -1
- package/.next/standalone/.next/server/next-font-manifest.json +8 -0
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +2368 -1528
- package/.next/standalone/.next/static/chunks/0-kkc.ibted8y.js +1 -0
- package/.next/standalone/.next/static/chunks/{0xejm4ge9~cn..js → 0.2y9uc38xso-.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0346xrw6i2bwo.js → 0.gedys.tq.~k.js} +1 -1
- package/.next/standalone/.next/static/chunks/00g58.es_hxli.js +1 -0
- package/.next/standalone/.next/static/chunks/00o_eiv12t~.1.js +1 -0
- package/.next/standalone/.next/static/chunks/01qtgj0xv1fsm.js +2 -0
- package/.next/standalone/.next/static/chunks/024euw7po0d0w.js +1 -0
- package/.next/standalone/.next/static/chunks/02v-9v~885t9c.js +1 -0
- package/.next/standalone/.next/static/chunks/03ct4d8znb7tp.js +1 -0
- package/.next/standalone/.next/static/chunks/03uix~1ru.ovv.js +1 -0
- package/.next/standalone/.next/static/chunks/04.2m8l~ws19v.js +1 -0
- package/.next/standalone/.next/static/chunks/06x7oq8_iu~9d.js +1 -0
- package/.next/standalone/.next/static/chunks/07c4b1kp_85qg.js +1 -0
- package/.next/standalone/.next/static/chunks/07qijq9o5jccu.js +1 -0
- package/.next/standalone/.next/static/chunks/{0uj-3ckujwaiy.js → 09om2gfwimh7k.js} +1 -1
- package/.next/standalone/.next/static/chunks/0alhq.h4~iogi.js +1 -0
- package/.next/standalone/.next/static/chunks/{0rcuiuax31_uh.js → 0cf7e1scao3zk.js} +1 -1
- package/.next/standalone/.next/static/chunks/0ck~sr0nkabl~.js +1 -0
- package/.next/standalone/.next/static/chunks/0d1ok-v-u-xe~.js +1 -0
- package/.next/standalone/.next/static/chunks/0d9u2xspag~4h.js +5 -0
- package/.next/standalone/.next/static/chunks/0ftptcpntzaux.js +1 -0
- package/.next/standalone/.next/static/chunks/0gk~m5bwgoafi.js +1 -0
- package/.next/standalone/.next/static/chunks/0in_7s8n4lmfr.js +1 -0
- package/.next/standalone/.next/static/chunks/0ix28r65.7o_r.js +12 -0
- package/.next/standalone/.next/static/chunks/0j5olwb~d3~3j.js +1 -0
- package/.next/standalone/.next/static/chunks/0mtrtl-jl46in.js +2 -0
- package/.next/standalone/.next/static/chunks/0ov_akpudbv96.js +5 -0
- package/.next/standalone/.next/static/chunks/0oyskd~8~j.j7.js +1 -0
- package/.next/standalone/.next/static/chunks/0q1872yhybt55.js +1 -0
- package/.next/standalone/.next/static/chunks/0seo-lerjdkbn.js +1 -0
- package/.next/standalone/.next/static/chunks/0t1awv68pnn-e.js +1 -0
- package/.next/standalone/.next/static/chunks/0wl8cpmvyhv0l.js +1 -0
- package/.next/standalone/.next/static/chunks/0~2l3wz-gxs2j.js +1 -0
- package/.next/standalone/.next/static/chunks/0~7h_a_dofg-4.js +1 -0
- package/.next/standalone/.next/static/chunks/11yhe31en~dvt.js +1 -0
- package/.next/standalone/.next/static/chunks/12-mlz2vukuga.js +1 -0
- package/.next/standalone/.next/static/chunks/14fch6~swodjf.css +1 -0
- package/.next/standalone/.next/static/chunks/15gztq9f12uhe.js +1 -0
- package/.next/standalone/.next/static/chunks/15ue90qe1sh-9.js +1 -0
- package/.next/standalone/.next/static/chunks/17z9uivez~kp3.js +1 -0
- package/.next/standalone/package.json +5 -6
- package/dist/mcp-server.cjs +1597 -4545
- package/package.json +5 -6
- package/prisma/schema.prisma +83 -5
- package/scripts/migrations/0005-add-parent-task-id.ts +29 -0
- package/scripts/migrations/0006-project-knowledge.ts +58 -0
- package/scripts/migrations/0007-product-group.ts +67 -0
- package/scripts/{stop-hook.js → tower-stop-hook.js} +42 -3
- package/skills/tower/SKILL.md +36 -75
- package/skills/tower/references/task-source.md +80 -0
- package/skills/tower/references/unattended-messaging.md +95 -0
- package/tsconfig.json +14 -4
- package/.next/standalone/.next/server/chunks/[externals]__0x_wqa7._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.p6em~._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.zmhk-._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0042hx5._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__03ufxqq._.js +0 -28
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__04--bs7._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__04m2l8a._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__04r193~._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0657y50._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06ndn7a._.js +0 -4
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08yqoti._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__098.3z2._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_d.s7s._.js +0 -28
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_zfnj0._.js +0 -20
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0clptds._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g.k9o~._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i34gbs._.js +0 -4
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iggiij._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i~3dwq._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j05vlm._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j1px8f._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0k-5ag7._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0otyifi._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pl.c5.._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0r~9.7c._.js +0 -4
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t31ba_._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t_weyi._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0uptkzd._.js +0 -4
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x3kws1._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0y8w5di._.js +0 -4
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zi3~a8._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~g6-c~._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10fv6tt._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1189rd1._.js +0 -4
- package/.next/standalone/.next/server/chunks/_0jmdgq~._.js +0 -7
- package/.next/standalone/.next/server/chunks/_0q10iet._.js +0 -7
- package/.next/standalone/.next/server/chunks/_0qk_esg._.js +0 -4
- package/.next/standalone/.next/server/chunks/_0t31z6q._.js +0 -5
- package/.next/standalone/.next/server/chunks/_12537g8._.js +0 -7
- package/.next/standalone/.next/server/chunks/src_0fq3zjg._.js +0 -3
- package/.next/standalone/.next/server/chunks/src_0weytpz._.js +0 -3
- package/.next/standalone/.next/server/chunks/src_0wlyw0g._.js +0 -3
- package/.next/standalone/.next/server/chunks/src_0~ey84y._.js +0 -3
- package/.next/standalone/.next/server/chunks/src_lib_0i2.v2d._.js +0 -3
- package/.next/standalone/.next/server/chunks/src_lib_0nw5n~t._.js +0 -3
- package/.next/standalone/.next/server/chunks/src_lib_12xey8u._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/0ws9_lucide-react_dist_esm_icons_0pkla8j._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__00ebsjb._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__01fmnse._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__01vm_46._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__025ol9g._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__049n47u._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__04ednzb._.js +0 -43
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__04wbr9x._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__05xg05r._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__06dfcgo._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__07xkj1s._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__081e5n~._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__08tzbfh._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ecd_1d._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0iln7n_._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0j_-qk5._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0k6oo0n._.js +0 -43
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0lws68d._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0mpjat-._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0oamph.._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0pnv7nd._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0tja~wz._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ug022w._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ugledi._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0vxlsec._.js +0 -4
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w0.sdz._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0x6k.ee._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0xwzk2.._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0yby8pl._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0z7je5_._.js +0 -5
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zxc81t._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zzqn5z._.js +0 -43
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__10c.a3u._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__10n3vn6._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__123rmyb._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__124zb~p._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__127w3bm._.js +0 -43
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__13ce7v2._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/_04~mjmb._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_05a2u03._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/_070t_mh._.js +0 -6
- package/.next/standalone/.next/server/chunks/ssr/_07q06~v._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/_0_q41~z._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/_0cj9a7y._.js +0 -7
- package/.next/standalone/.next/server/chunks/ssr/_0dxbp89._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/_0foto06._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0kojxno._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0rdyrfd._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0rxeqmo._.js +0 -17
- package/.next/standalone/.next/server/chunks/ssr/_0s.h4l2._.js +0 -43
- package/.next/standalone/.next/server/chunks/ssr/_0u3yt.5._.js +0 -4
- package/.next/standalone/.next/server/chunks/ssr/_0wqcz3w._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/_0ye1-r-._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules__pnpm_03r.9go._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules__pnpm_06f0dao._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_0djxlqx._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_0eufeyj._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_components_ui_select_tsx_0d2ra01._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_08jql1e._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0b~j-9d._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0eymyjf._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0fkv9z3._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0n-n0.a._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0sgt~lv._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0sms4xl._.js +0 -5
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0x-iyl1._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0yjmty1._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_13aevv6._.js +0 -3
- package/.next/standalone/.next/static/chunks/0-tuek2jqf0el.js +0 -1
- package/.next/standalone/.next/static/chunks/0.-.jc~0b~hy0.js +0 -1
- package/.next/standalone/.next/static/chunks/0.lqb7y9kz5z6.js +0 -1
- package/.next/standalone/.next/static/chunks/0.nsmn6shzidu.js +0 -2
- package/.next/standalone/.next/static/chunks/0.~03w.uxge40.js +0 -1
- package/.next/standalone/.next/static/chunks/01hdj_kw4z2zq.js +0 -2
- package/.next/standalone/.next/static/chunks/01j9m895w64zn.js +0 -1
- package/.next/standalone/.next/static/chunks/01yoibobkdz3x.js +0 -1
- package/.next/standalone/.next/static/chunks/041o.dh2lc-k3.js +0 -1
- package/.next/standalone/.next/static/chunks/07i9j5yyg4vs3.js +0 -1
- package/.next/standalone/.next/static/chunks/08ooaq~-.8fzu.js +0 -1
- package/.next/standalone/.next/static/chunks/0bylodlncwfpb.js +0 -5
- package/.next/standalone/.next/static/chunks/0clewc5ifaruu.js +0 -12
- package/.next/standalone/.next/static/chunks/0cpwtqzrjdgvs.js +0 -1
- package/.next/standalone/.next/static/chunks/0c~e1-nst-ze-.js +0 -1
- package/.next/standalone/.next/static/chunks/0ddt-snh45031.js +0 -1
- package/.next/standalone/.next/static/chunks/0dv4anj-j523o.js +0 -1
- package/.next/standalone/.next/static/chunks/0gf~0e3xpa0fj.js +0 -5
- package/.next/standalone/.next/static/chunks/0gvfb.b8m_i8t.js +0 -1
- package/.next/standalone/.next/static/chunks/0h77-u2vvr-a1.js +0 -1
- package/.next/standalone/.next/static/chunks/0jrje~1gt6w85.css +0 -1
- package/.next/standalone/.next/static/chunks/0lqp~-dlfenad.js +0 -1
- package/.next/standalone/.next/static/chunks/0p4w5b_p_yju8.js +0 -1
- package/.next/standalone/.next/static/chunks/0qkr26yz3bocs.js +0 -1
- package/.next/standalone/.next/static/chunks/0uf~7eqel0zra.js +0 -1
- package/.next/standalone/.next/static/chunks/0w71r_sj_fibx.js +0 -1
- package/.next/standalone/.next/static/chunks/0xg6rcq6g4bbh.js +0 -1
- package/.next/standalone/.next/static/chunks/0yff8rwmrl5m4.js +0 -1
- package/.next/standalone/.next/static/chunks/0ymipmkk2uqby.js +0 -1
- package/.next/standalone/.next/static/chunks/0znfclapbniaa.js +0 -1
- package/.next/standalone/.next/static/chunks/11pe3kpxuj33f.js +0 -1
- package/.next/standalone/.next/static/chunks/172s9cg35qt7i.js +0 -1
- package/.next/standalone/.next/static/chunks/17m4o~gdsvuo3.js +0 -1
- package/.next/standalone/.next/static/chunks/184-zu89wwa4u.js +0 -1
- package/next.config.ts +0 -18
- /package/.next/standalone/.next/static/{dinNvsaC6aoPK_B7ZTeBv → Pf_z-PYy0CJhvcyPEi-LM}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{dinNvsaC6aoPK_B7ZTeBv → Pf_z-PYy0CJhvcyPEi-LM}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{dinNvsaC6aoPK_B7ZTeBv → Pf_z-PYy0CJhvcyPEi-LM}/_ssgManifest.js +0 -0
- /package/scripts/{post-tool-hook.js → tower-post-tool-hook.js} +0 -0
- /package/scripts/{session-start-hook.js → tower-session-start-hook.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,645119,e=>{"use strict";var t=e.i(289721),s=e.i(965652),r=e.i(538059),n=e.i(210702),a=e.i(232545),i=e.i(487278),l=e.i(368490),o=e.i(259846),d=e.i(572989);let c=(0,d.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"}]]);var x=e.i(519455),m=e.i(759684),u=e.i(606393),p=e.i(226145),h=e.i(340873),f=e.i(263938),g=e.i(960518),v=e.i(453889),b=e.i(645378);let j=(0,d.default)("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);var N=e.i(464249);let y=(0,d.default)("package-check",[["path",{d:"M12 22V12",key:"d0xqtd"}],["path",{d:"m16 17 2 2 4-4",key:"uh5qu3"}],["path",{d:"M21 11.127V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.729l7 4a2 2 0 0 0 2 .001l1.32-.753",key:"kpkbpo"}],["path",{d:"M3.29 7 12 12l8.71-5",key:"19ckod"}],["path",{d:"m7.5 4.27 8.997 5.148",key:"9yrvtv"}]]),w=(0,d.default)("panel-right",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}]]);var C=e.i(746798),S=e.i(685149),k=e.i(35967),D=e.i(533499);function T(e){if(!e)return"";let t="string"==typeof e?new Date(e):e;if(isNaN(t.getTime()))return"";let s=String(t.getMonth()+1).padStart(2,"0"),r=String(t.getDate()).padStart(2,"0");return`${s}-${r}`}let B=Object.fromEntries(S.BOARD_COLUMNS.map(e=>[e.id,e.color]));function E({children:e,className:s}){return(0,t.jsx)("span",{className:`inline-flex items-center gap-1.5 rounded-md border border-border bg-muted/40 px-2 py-0.5 text-xs text-muted-foreground ${s??""}`,children:e})}function I({task:e,onOpenDetail:r}){let{t:n}=(0,D.useI18n)(),[a,i]=(0,s.useState)(!1),o="CANCELLED"===e.status?"text-muted-foreground line-through decoration-muted-foreground/40":"DONE"===e.status?"text-muted-foreground":"text-foreground";return(0,t.jsxs)("div",{className:"rounded-[10px]",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>i(e=>!e),className:"flex w-full items-center gap-2.5 rounded-[10px] px-2.5 py-2.5 text-left transition-colors hover:bg-muted/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:[(0,t.jsx)(l.ChevronRight,{className:`h-3.5 w-3.5 flex-none text-muted-foreground/60 transition-transform duration-150 ${a?"rotate-90":""}`}),(0,t.jsx)("span",{className:`h-2 w-2 flex-none rounded-full ${B[e.status]??"bg-slate-400"}`}),(0,t.jsx)("span",{className:`text-[13.5px] font-medium ${o}`,children:e.title}),e.labels.map(({label:e})=>(0,t.jsx)("span",{className:"rounded-full border border-border px-1.5 py-px text-[10.5px] text-muted-foreground",style:e.color?{borderColor:e.color+"55",color:e.color}:void 0,children:e.name},e.id)),(0,t.jsx)("span",{className:"flex-1"}),(0,t.jsx)("span",{className:"flex w-16 flex-none justify-center",children:(0,t.jsx)("span",{className:`rounded-[5px] px-1.5 py-px text-[10.5px] font-bold ${S.PRIORITY_CONFIG[e.priority]?.color??S.PRIORITY_CONFIG.LOW.color}`,children:e.priority})}),(0,t.jsx)("span",{className:"h-3 w-px bg-border flex-none"}),(0,t.jsxs)("span",{className:"flex w-[72px] flex-none items-center gap-1.5",children:[(0,t.jsx)("span",{className:`h-1.5 w-1.5 flex-none rounded-full ${B[e.status]??"bg-slate-400"}`}),(0,t.jsx)("span",{className:"truncate text-[10.5px] text-muted-foreground",children:n(`version.taskStatus.${e.status}`)})]}),(0,t.jsx)("span",{className:"h-3 w-px bg-border flex-none"}),(0,t.jsx)("span",{className:"flex w-6 flex-none justify-center",children:r&&(0,t.jsxs)(C.Tooltip,{children:[(0,t.jsx)(C.TooltipTrigger,{render:(0,t.jsx)(x.Button,{variant:"ghost",size:"icon",className:"h-6 w-6 text-muted-foreground",onClick:t=>{t.stopPropagation(),r(e.id)}}),children:(0,t.jsx)(w,{className:"h-3.5 w-3.5"})}),(0,t.jsx)(C.TooltipContent,{children:n("version.detail")})]})})]}),a&&(0,t.jsxs)("div",{className:"flex flex-col gap-2.5 pb-3 pl-[30px] pr-3 pt-1",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"mb-1.5 flex items-center gap-1.5",children:[(0,t.jsx)(v.FolderOpen,{className:"h-3 w-3 text-muted-foreground/60"}),(0,t.jsx)("span",{className:"text-[11px] font-bold uppercase tracking-wide text-muted-foreground/60",children:n("version.resources")})]}),0===e.assets.length?(0,t.jsx)("p",{className:"text-[12px] italic text-muted-foreground/60",children:n("version.empty.resources")}):(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:e.assets.map(e=>{var s;let r=e.mimeType?.startsWith("image/");return(0,t.jsxs)("span",{className:"inline-flex cursor-pointer items-center gap-1.5 rounded-lg border border-border bg-background px-2.5 py-1.5 text-[12px] text-foreground shadow-sm transition-colors hover:border-primary/50",children:[r?(0,t.jsx)(j,{className:"h-3.5 w-3.5 text-muted-foreground"}):(0,t.jsx)(b.FileText,{className:"h-3.5 w-3.5 text-muted-foreground"}),(0,t.jsx)("span",{children:e.filename}),null!=e.size&&(0,t.jsx)("span",{className:"text-[11px] text-muted-foreground/60",children:(s=e.size)<1024?`${s} B`:s<1048576?`${Math.round(s/1024)} KB`:`${(s/1048576).toFixed(1)} MB`})]},e.id)})})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"mb-1.5 flex items-center gap-1.5",children:[(0,t.jsx)(b.FileText,{className:"h-3 w-3 text-muted-foreground/60"}),(0,t.jsx)("span",{className:"text-[11px] font-bold uppercase tracking-wide text-muted-foreground/60",children:n("version.notes")})]}),0===e.notes.length?(0,t.jsx)("p",{className:"text-[12px] italic text-muted-foreground/60",children:n("version.empty.notes")}):(0,t.jsx)("div",{className:"flex flex-col gap-1.5",children:e.notes.map(e=>(0,t.jsx)("div",{className:"rounded-lg border border-border border-l-violet-500/50 bg-background px-2.5 py-2 shadow-sm [border-left-width:3px]",children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[12.5px] font-semibold text-foreground",children:e.title}),e.category&&(0,t.jsx)("span",{className:"rounded-[5px] border border-violet-500/30 bg-violet-500/15 px-1.5 py-px text-[10px] font-bold text-violet-300",children:e.category})]})},e.id))})]})]})]})}function L({version:e,diffStat:r,onEdit:n,onRelease:a,onViewDiff:i,onOpenTaskDetail:o}){var d;let c,{t:m}=(0,D.useI18n)(),[v,b]=(0,s.useState)(e.isCurrent),j="RELEASED"===e.status,w="ACTIVE"===e.status,S=e.tasks.length,B=e.tasks.filter(e=>"DONE"===e.status).length,R=!!(e.releaseCommit||r),$=(c=`${S} ${m("version.tasksCount")}`,B>0&&B<S?`${c} \xb7 ${B} ${m("version.doneCount")}`:B>0&&B===S?`${c} \xb7 ${m("version.allDone")}`:c);return(0,t.jsxs)("div",{className:["overflow-hidden rounded-[14px] border bg-card shadow-sm transition-shadow duration-150 hover:shadow-md",e.isCurrent?"border-border border-l-2 border-l-primary ring-1 ring-primary/20":"border-border",j?"opacity-[.96]":""].filter(Boolean).join(" "),children:[(0,t.jsx)("button",{type:"button",onClick:()=>b(e=>!e),className:"w-full text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:(0,t.jsxs)("div",{className:"px-4 py-3.5",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsx)(l.ChevronRight,{className:`h-4 w-4 flex-none text-muted-foreground/60 transition-transform duration-150 ${v?"rotate-90":""}`}),(0,t.jsx)("span",{className:"font-mono text-[14.5px] font-bold text-foreground",children:e.number}),(0,t.jsx)("span",{className:"text-[14.5px] font-semibold text-foreground",children:e.name}),(0,t.jsx)(k.VersionTypeBadge,{name:e.type?.name??null}),(0,t.jsx)(k.VersionStatusBadge,{status:e.status}),e.isCurrent&&(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full border border-primary/30 bg-primary/15 px-2.5 py-0.5 text-[11px] font-bold text-primary shadow-sm",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-primary opacity-90"}),m("version.current")]}),(0,t.jsx)("span",{className:"flex-1"}),S>0&&(0,t.jsx)("span",{className:"text-[11.5px] text-muted-foreground",children:$}),(0,t.jsxs)("span",{className:"flex items-center gap-1",onClick:e=>e.stopPropagation(),onKeyDown:e=>e.stopPropagation(),children:[n&&(0,t.jsxs)(C.Tooltip,{children:[(0,t.jsx)(C.TooltipTrigger,{render:(0,t.jsx)(x.Button,{variant:"ghost",size:"icon",className:"h-7 w-7 text-muted-foreground",onClick:()=>n(e.id)}),children:(0,t.jsx)(N.Pencil,{className:"h-3.5 w-3.5"})}),(0,t.jsx)(C.TooltipContent,{children:m("version.edit")})]}),w&&a&&(0,t.jsxs)(x.Button,{variant:"outline",className:"h-7 px-2 text-xs font-semibold",onClick:()=>a(e.id),children:[(0,t.jsx)(y,{className:"h-3.5 w-3.5"}),m("version.release")]})]})]}),(0,t.jsxs)("div",{className:"mt-2.5 flex flex-wrap items-center gap-2",children:[j&&e.releasedAt?(0,t.jsxs)(E,{children:[(0,t.jsx)(u.Calendar,{className:"h-3 w-3"}),m("version.releasedAt"),(0,t.jsx)("strong",{className:"text-foreground",children:T(e.releasedAt)})]}):e.startDate||e.targetDate?(0,t.jsxs)(E,{children:[(0,t.jsx)(u.Calendar,{className:"h-3 w-3"}),e.startDate?T(e.startDate):"—"," → ",e.targetDate?(0,t.jsx)("strong",{className:"text-foreground",children:T(e.targetDate)}):"—"]}):null,e.baseBranch&&(0,t.jsxs)(E,{children:[(0,t.jsx)(p.GitBranch,{className:"h-3 w-3"}),(0,t.jsx)("span",{className:"font-mono text-[11px] text-foreground",children:e.baseBranch})]}),e.baseCommit&&(0,t.jsxs)(E,{children:[(0,t.jsx)(h.GitCommitHorizontal,{className:"h-3 w-3"}),m("version.field.baseCommit"),(0,t.jsx)("span",{className:"font-mono text-[11px] text-foreground",children:(d=e.baseCommit)?d.slice(0,7):""})]}),j&&(0,t.jsxs)(E,{children:[(0,t.jsx)(f.Tag,{className:"h-3 w-3"}),(0,t.jsx)("span",{className:"font-mono text-[11px] text-foreground",children:e.number})]}),r&&(0,t.jsxs)(E,{children:[(0,t.jsx)(g.GitCompare,{className:"h-3 w-3"}),!j&&(0,t.jsx)("span",{className:"text-muted-foreground",children:m("version.diff.live")}),(0,t.jsxs)("span",{className:"font-bold text-emerald-400",children:["+",r.additions.toLocaleString()]}),(0,t.jsxs)("span",{className:"font-bold text-rose-400",children:["−",r.deletions.toLocaleString()]}),(0,t.jsxs)("span",{className:"text-muted-foreground",children:["· ",r.files," ",m("version.diff.files")]})]}),R&&i&&(0,t.jsxs)(x.Button,{variant:"ghost",size:"sm",className:"h-6 gap-1 px-2 text-xs text-muted-foreground",onClick:t=>{t.stopPropagation(),i(e.id)},children:[(0,t.jsx)(g.GitCompare,{className:"h-3 w-3"}),m("version.diff.view")," →"]})]}),e.description&&(0,t.jsx)("p",{className:"mt-2 text-[13px] text-muted-foreground",children:e.description})]})}),v&&S>0&&(0,t.jsx)("div",{className:"border-t border-dashed border-border bg-muted/40 px-2 pb-2 pt-1.5",children:e.tasks.map(e=>(0,t.jsx)(I,{task:e,onOpenDetail:o},e.id))})]})}var R=e.i(360112),$=e.i(597746),_=e.i(456346),O=e.i(776639),A=e.i(793479),V=e.i(110204),P=e.i(967489),M=e.i(337822),F=e.i(317056),z=e.i(699375),U=e.i(624687),H=e.i(514798);let G=(0,H.createServerReference)("40875e8cbdeb1c6531ecd98e1a64ee30615c409c40",H.callServer,void 0,H.findSourceMapURL,"createVersion"),K=(0,H.createServerReference)("606b30b8f75f44f2116597bf593781a78472ec4eb2",H.callServer,void 0,H.findSourceMapURL,"updateVersion"),W=(0,H.createServerReference)("40238ad60822bb55adbf623dffd37ac64a88c71e03",H.callServer,void 0,H.findSourceMapURL,"getVersionTypes");var Y=e.i(419355),q=e.i(51517),J=e.i(998626);let Q=(0,H.createServerReference)("40b2d2e0d870f7ba902a016c23446379c065bd7372",H.callServer,void 0,H.findSourceMapURL,"createVersionType"),X=(0,H.createServerReference)("60eea878af94b0743388057d97aa005e606c6ca2ad",H.callServer,void 0,H.findSourceMapURL,"updateVersionType"),Z=(0,H.createServerReference)("40b029149a9f74f3c83bae3ceb4716a9b9be8ee0fd",H.callServer,void 0,H.findSourceMapURL,"deleteVersionType");function ee({open:e,onOpenChange:r,workspaceId:n,onChanged:a}){let{t:i}=(0,D.useI18n)(),[l,o]=(0,s.useState)([]),[d,c]=(0,s.useState)(""),[m,u]=(0,s.useState)({}),[p,h]=(0,s.useTransition)(),f=async()=>{let e=await W(n);o(e),u(t=>{let s={};return e.forEach(e=>{s[e.id]=e.id in t?t[e.id]:e.name}),s})};(0,s.useEffect)(()=>{e&&(f(),c(""))},[e,n]);let g=()=>{let e=d.trim();e&&h(async()=>{try{await Q({workspaceId:n,name:e}),c(""),await f(),a?.(),R.toast.success(i("version.type.add"))}catch(e){R.toast.error(e instanceof Error?e.message:String(e))}})};return(0,t.jsx)(O.Dialog,{open:e,onOpenChange:r,children:(0,t.jsxs)(O.DialogContent,{className:"sm:max-w-md",children:[(0,t.jsx)(O.DialogHeader,{children:(0,t.jsx)(O.DialogTitle,{children:i("version.manageTypes")})}),(0,t.jsxs)("div",{className:"flex flex-col gap-4 py-2",children:[(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsx)(A.Input,{value:d,onChange:e=>c(e.target.value),placeholder:i("version.type.namePlaceholder"),disabled:p,onKeyDown:e=>{"Enter"===e.key&&g()},className:"flex-1"}),(0,t.jsx)(x.Button,{onClick:g,disabled:p||!d.trim(),children:i("version.type.add")})]}),0===l.length?(0,t.jsx)("p",{className:"text-center text-sm text-muted-foreground py-4",children:i("version.type.empty")}):(0,t.jsx)("div",{className:"flex flex-col gap-1.5",children:l.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 rounded-lg border border-border bg-muted/30 px-3 py-2",children:[(0,t.jsx)("span",{className:`inline-flex h-2.5 w-2.5 flex-none rounded-full ${(0,k.typeBadgeColor)(m[e.id]??e.name).split(" ").filter(e=>e.startsWith("bg-"))[0]??"bg-muted"}`}),(0,t.jsx)(A.Input,{value:m[e.id]??e.name,onChange:t=>u(s=>({...s,[e.id]:t.target.value})),onBlur:()=>(e=>{let t=(m[e]??"").trim();if(!t)return;let s=l.find(t=>t.id===e);s?.name!==t&&h(async()=>{try{await X(e,{name:t}),await f(),a?.()}catch(t){R.toast.error(t instanceof Error?t.message:String(t)),u(t=>({...t,[e]:s?.name??""}))}})})(e.id),onKeyDown:e=>{"Enter"===e.key&&e.target.blur()},disabled:p,className:"h-7 flex-1 border-transparent bg-transparent shadow-none focus-visible:border-input focus-visible:bg-background focus-visible:shadow-sm"}),(0,t.jsx)(x.Button,{variant:"ghost",size:"icon",className:"h-7 w-7 flex-none text-muted-foreground hover:text-destructive",onClick:()=>{var t;return t=e.id,void(window.confirm(i("version.type.deleteConfirm"))&&h(async()=>{try{await Z(t),await f(),a?.()}catch(e){R.toast.error(e instanceof Error?e.message:String(e))}}))},disabled:p,children:(0,t.jsx)(J.Trash2,{className:"h-3.5 w-3.5"})})]},e.id))})]})]})})}function et(e){if(!e)return"";let t="string"==typeof e?new Date(e):e;if(isNaN(t.getTime()))return"";let s=t.getFullYear(),r=String(t.getMonth()+1).padStart(2,"0"),n=String(t.getDate()).padStart(2,"0");return`${s}-${r}-${n}`}function es(e){if(!e)return;let t=new Date(e);return isNaN(t.getTime())?void 0:t}function er({open:e,onOpenChange:r,projectId:n,workspaceId:a,editVersion:i,defaultBaseBranch:l,projectLocalPath:o,onSuccess:d}){let{t:c}=(0,D.useI18n)(),m=!!i,[u,h]=(0,s.useState)(""),[f,g]=(0,s.useState)(""),[v,b]=(0,s.useState)(""),[j,N]=(0,s.useState)([]),[y,w]=(0,s.useState)(!1),[C,S]=(0,s.useState)(""),[k,T]=(0,s.useState)(""),[B,E]=(0,s.useState)(""),[I,L]=(0,s.useState)(""),[H,J]=(0,s.useState)(!1),[Q,X]=(0,s.useState)([]),[Z,en]=(0,s.useState)(!1),[ea,ei]=(0,s.useState)(!1),el=!!o,[eo,ed]=(0,s.useTransition)();return(0,s.useEffect)(()=>{e&&(i?(h(i.number),g(i.name),b(i.typeId??""),S(i.baseBranch??""),T(et(i.startDate)),E(et(i.targetDate)),L(i.description??"")):(h(""),g(""),b(""),S(l??""),T(""),E(""),L("")),J(!1))},[e,i,l]),(0,s.useEffect)(()=>{e&&W(a).then(N).catch(()=>N([]))},[e,a]),(0,s.useEffect)(()=>{e&&el?(en(!0),(0,Y.getProjectBranches)(o).then(X).catch(()=>X([])).finally(()=>en(!1)),(0,q.fetchRemoteBranches)(o).then(()=>(0,Y.getProjectBranches)(o).then(X)).catch(()=>{})):X([])},[e,el,o]),(0,t.jsxs)(O.Dialog,{open:e,onOpenChange:r,children:[(0,t.jsxs)(O.DialogContent,{className:"sm:max-w-md",children:[(0,t.jsx)(O.DialogHeader,{children:(0,t.jsx)(O.DialogTitle,{children:m?c("version.edit"):c("version.new")})}),(0,t.jsxs)("div",{className:"grid gap-4 py-2",children:[(0,t.jsxs)("div",{className:"grid gap-1.5",children:[(0,t.jsxs)(V.Label,{htmlFor:"version-number",children:[c("version.field.number"),(0,t.jsx)("span",{className:"text-destructive ml-0.5",children:"*"})]}),(0,t.jsx)(A.Input,{id:"version-number",value:u,onChange:e=>h(e.target.value),placeholder:c("version.placeholder.number"),disabled:eo})]}),(0,t.jsxs)("div",{className:"grid gap-1.5",children:[(0,t.jsxs)(V.Label,{htmlFor:"version-name",children:[c("version.field.name"),(0,t.jsx)("span",{className:"text-destructive ml-0.5",children:"*"})]}),(0,t.jsx)(A.Input,{id:"version-name",value:f,onChange:e=>g(e.target.value),placeholder:c("version.placeholder.name"),disabled:eo})]}),(0,t.jsxs)("div",{className:"grid gap-1.5",children:[(0,t.jsx)(V.Label,{children:c("version.field.type")}),(0,t.jsxs)(P.Select,{value:v||"__none__",onValueChange:e=>{b(e&&"__none__"!==e?e:"")},children:[(0,t.jsx)(P.SelectTrigger,{className:"w-full",disabled:eo,children:(0,t.jsx)("span",{className:"truncate",children:v?j.find(e=>e.id===v)?.name??c("version.type.uncategorized"):c("version.type.uncategorized")})}),(0,t.jsxs)(P.SelectContent,{children:[(0,t.jsx)(P.SelectItem,{value:"__none__",children:c("version.type.uncategorized")}),j.map(e=>(0,t.jsx)(P.SelectItem,{value:e.id,children:e.name},e.id))]})]}),(0,t.jsxs)(x.Button,{type:"button",variant:"ghost",size:"sm",className:"h-auto justify-start px-0 py-0.5 text-xs text-muted-foreground hover:text-foreground",onClick:()=>w(!0),disabled:eo,children:["+ ",c("version.manageTypes")]})]}),(0,t.jsxs)("div",{className:"grid gap-1.5",children:[(0,t.jsx)(V.Label,{children:c("version.field.baseBranch")}),Z?(0,t.jsx)("div",{className:"text-sm text-muted-foreground",children:c("task.branchLoading")}):el&&Q.length>0?(0,t.jsxs)(M.Popover,{open:ea,onOpenChange:ei,children:[(0,t.jsxs)(M.PopoverTrigger,{className:"flex h-8 w-full items-center gap-2 rounded-lg border border-input bg-transparent px-3 text-sm transition-colors hover:bg-accent focus:outline-none focus-visible:ring-3 focus-visible:ring-ring/50 disabled:opacity-50",disabled:eo,"data-testid":"version-branch-selector",children:[(0,t.jsx)(p.GitBranch,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,t.jsx)("span",{className:`flex-1 truncate text-left text-xs ${C?"font-mono":"text-muted-foreground"}`,title:C||void 0,children:C||c("version.field.noBranch")}),(0,t.jsx)(_.ChevronsUpDown,{className:"h-3.5 w-3.5 shrink-0 opacity-50"})]}),(0,t.jsx)(M.PopoverContent,{className:"w-[min(32rem,90vw)] p-0",align:"start",children:(0,t.jsxs)(F.Command,{children:[(0,t.jsx)(F.CommandInput,{placeholder:c("task.branchSearch")}),(0,t.jsxs)(F.CommandList,{children:[(0,t.jsx)(F.CommandEmpty,{children:c("task.branchNone")}),(0,t.jsxs)(F.CommandGroup,{children:[(0,t.jsxs)(F.CommandItem,{value:"__none__",onSelect:()=>{S(""),ei(!1)},children:[(0,t.jsx)("span",{className:"flex-1 truncate text-muted-foreground",children:c("version.field.noBranch")}),!C&&(0,t.jsx)($.Check,{className:"ml-auto h-3 w-3 shrink-0 text-primary"})]}),Q.map(e=>(0,t.jsxs)(F.CommandItem,{value:e,onSelect:()=>{S(e),ei(!1)},children:[(0,t.jsx)(p.GitBranch,{className:"mr-2 h-3 w-3 shrink-0 text-muted-foreground"}),(0,t.jsx)("span",{className:"flex-1 truncate font-mono",title:e,children:e}),e===C&&(0,t.jsx)($.Check,{className:"ml-auto h-3 w-3 shrink-0 text-primary"})]},e))]})]})]})})]}):(0,t.jsx)(A.Input,{id:"version-base-branch",value:C,onChange:e=>S(e.target.value),placeholder:"main",disabled:eo})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,t.jsxs)("div",{className:"grid gap-1.5",children:[(0,t.jsx)(V.Label,{htmlFor:"version-start-date",children:c("version.field.startDate")}),(0,t.jsx)("input",{id:"version-start-date",type:"date",value:k,onChange:e=>T(e.target.value),disabled:eo,className:"h-8 w-full rounded-lg border border-input bg-transparent px-2.5 py-1 text-sm outline-none transition-colors focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50"})]}),(0,t.jsxs)("div",{className:"grid gap-1.5",children:[(0,t.jsx)(V.Label,{htmlFor:"version-target-date",children:c("version.field.targetDate")}),(0,t.jsx)("input",{id:"version-target-date",type:"date",value:B,onChange:e=>E(e.target.value),disabled:eo,className:"h-8 w-full rounded-lg border border-input bg-transparent px-2.5 py-1 text-sm outline-none transition-colors focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50"})]})]}),(0,t.jsxs)("div",{className:"grid gap-1.5",children:[(0,t.jsx)(V.Label,{htmlFor:"version-description",children:c("version.field.description")}),(0,t.jsx)(U.Textarea,{id:"version-description",value:I,onChange:e=>L(e.target.value),rows:3,disabled:eo})]}),!m&&(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(z.Switch,{id:"version-set-current",checked:H,onCheckedChange:J,disabled:eo}),(0,t.jsx)(V.Label,{htmlFor:"version-set-current",className:"cursor-pointer",children:c("version.field.setCurrent")})]})]}),(0,t.jsxs)(O.DialogFooter,{children:[(0,t.jsx)(x.Button,{variant:"outline",onClick:()=>r(!1),disabled:eo,children:c("common.cancel")}),(0,t.jsx)(x.Button,{onClick:()=>{u.trim()&&f.trim()&&ed(async()=>{try{m&&i?await K(i.id,{number:u.trim(),name:f.trim(),typeId:v||null,baseBranch:C.trim()||null,startDate:es(k)??null,targetDate:es(B)??null,description:I.trim()||null}):await G({projectId:n,number:u.trim(),name:f.trim(),typeId:v||void 0,baseBranch:C.trim()||void 0,startDate:es(k),targetDate:es(B),description:I.trim()||void 0,setCurrent:H}),R.toast.success(m?c("version.edit"):c("version.new")),r(!1),d?.()}catch(e){R.toast.error(e instanceof Error?e.message:String(e))}})},disabled:eo||!u.trim()||!f.trim(),children:m?c("common.save"):c("common.create")})]})]}),(0,t.jsx)(ee,{open:y,onOpenChange:w,workspaceId:a,onChanged:()=>W(a).then(N)})]})}let en=(0,H.createServerReference)("60f964c3b7e606c81ceb2e3c2b121bf911b77f4599",H.callServer,void 0,H.findSourceMapURL,"releaseVersion");function ea({open:e,onOpenChange:r,version:n,candidates:a,onSuccess:i}){let{t:l}=(0,D.useI18n)(),[o,d]=(0,s.useState)(""),[c,m]=(0,s.useTransition)();(0,s.useEffect)(()=>{e&&d("")},[e,n]);let u=a.find(e=>e.id===o),p=a.length>0,h=p&&!!o&&!c;return(0,t.jsx)(O.Dialog,{open:e,onOpenChange:r,children:(0,t.jsxs)(O.DialogContent,{className:"sm:max-w-md",children:[(0,t.jsx)(O.DialogHeader,{children:(0,t.jsx)(O.DialogTitle,{children:l("version.releaseAction")})}),(0,t.jsxs)("div",{className:"grid gap-4 py-2",children:[n&&(0,t.jsxs)("p",{className:"text-sm text-muted-foreground",children:[n.number," · ",n.name]}),(0,t.jsxs)("div",{className:"text-sm",children:[(0,t.jsx)("span",{children:l("version.release.rolloverHint")}),n?.unfinishedCount!==void 0&&n.unfinishedCount>0&&(0,t.jsxs)("span",{className:"ml-1 font-medium text-foreground",children:["(",n.unfinishedCount,")"]})]}),(0,t.jsxs)("div",{className:"grid gap-1.5",children:[(0,t.jsx)("label",{className:"text-sm font-medium",children:l("version.release.nextVersion")}),p?(0,t.jsxs)(P.Select,{value:o,onValueChange:e=>{e&&d(e)},disabled:c,children:[(0,t.jsx)(P.SelectTrigger,{className:"w-full",children:(0,t.jsx)("span",{className:"truncate",children:u?`${u.number} \xb7 ${u.name}`:""})}),(0,t.jsx)(P.SelectContent,{children:a.map(e=>(0,t.jsxs)(P.SelectItem,{value:e.id,children:[e.number," · ",e.name]},e.id))})]}):(0,t.jsx)("p",{className:"text-xs text-destructive",children:l("version.release.noCandidates")})]})]}),(0,t.jsxs)(O.DialogFooter,{children:[(0,t.jsx)(x.Button,{variant:"outline",onClick:()=>r(!1),disabled:c,children:l("common.cancel")}),(0,t.jsx)(x.Button,{onClick:()=>{n&&o&&m(async()=>{try{await en(n.id,o),R.toast.success(l("version.release")),r(!1),i?.()}catch(e){R.toast.error(e instanceof Error?e.message:String(e))}})},disabled:!h,children:l("version.release")})]})]})})}var ei=e.i(400355);let el=(0,H.createServerReference)("404c0a0bd0e9130e55bcf86139e302194eb58f0fa9",H.callServer,void 0,H.findSourceMapURL,"getVersionDiff");var eo=e.i(196199);function ed({file:e}){let{t:r}=(0,D.useI18n)(),[n,a]=(0,s.useState)(!0),i=e.to&&"/dev/null"!==e.to?e.to:e.from??"",o=e.additions??0,d=e.deletions??0,c=[];for(let t of e.chunks)for(let e of(c.push({type:"normal",content:t.content,chunkHeader:t.content}),t.changes))c.push({type:e.type,content:e.content});let x=c.length>500,m=x?c.slice(0,500):c;return(0,t.jsxs)("div",{className:"overflow-hidden rounded-[10px] border border-border",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>a(e=>!e),className:"flex w-full items-center gap-2 bg-muted/40 px-3 py-2 text-left transition-colors hover:bg-accent/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:[(0,t.jsx)(l.ChevronRight,{className:`h-3.5 w-3.5 flex-none text-muted-foreground/60 transition-transform duration-150 ${n?"rotate-90":""}`}),(0,t.jsx)("span",{className:"flex-1 truncate font-mono text-[12px] font-medium text-foreground",children:i}),(0,t.jsxs)("span",{className:"shrink-0 font-mono text-[11px] font-bold text-emerald-400",children:["+",o]}),(0,t.jsxs)("span",{className:"shrink-0 font-mono text-[11px] font-bold text-rose-400",children:["−",d]})]}),n&&(0,t.jsxs)("div",{className:"overflow-x-auto",children:[(0,t.jsx)("pre",{className:"m-0 p-0",children:m.map((e,s)=>void 0!==e.chunkHeader?(0,t.jsx)("div",{className:"whitespace-pre px-3 py-px font-mono text-xs text-muted-foreground bg-muted/40",children:e.content},s):"add"===e.type?(0,t.jsx)("div",{className:"whitespace-pre px-3 py-px font-mono text-xs text-emerald-300 bg-emerald-500/10",children:e.content},s):"del"===e.type?(0,t.jsx)("div",{className:"whitespace-pre px-3 py-px font-mono text-xs text-rose-300 bg-rose-500/10",children:e.content},s):(0,t.jsx)("div",{className:"whitespace-pre px-3 py-px font-mono text-xs text-muted-foreground",children:e.content},s))}),x&&(0,t.jsx)("p",{className:"border-t border-border px-3 py-2 text-[11px] text-muted-foreground/70 italic",children:r("version.diff.truncated")})]})]})}function ec({open:e,onOpenChange:r,versionId:n,versionLabel:a}){let{t:i}=(0,D.useI18n)(),[l,o]=(0,s.useTransition)(),[d,c]=(0,s.useState)(null),[x,m]=(0,s.useState)(!1);return(0,s.useEffect)(()=>{e&&n&&(c(null),m(!1),o(async()=>{let e=await el(n);if(!e)return void m(!0);let t=(0,eo.parseUnifiedDiff)(e.patch);0===t.length||""===e.patch?m(!0):c(t)}))},[e,n]),(0,t.jsx)(O.Dialog,{open:e,onOpenChange:r,children:(0,t.jsxs)(O.DialogContent,{className:"sm:max-w-3xl max-h-[80vh] overflow-auto",children:[(0,t.jsx)(O.DialogHeader,{children:(0,t.jsxs)(O.DialogTitle,{children:[i("version.diff.title"),a?` — ${a}`:""]})}),l&&(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2 py-12 text-muted-foreground",children:[(0,t.jsx)(ei.Loader2,{className:"h-5 w-5 animate-spin"}),(0,t.jsx)("span",{className:"text-sm",children:i("version.diff.loading")})]}),!l&&x&&(0,t.jsx)("p",{className:"py-10 text-center text-sm text-muted-foreground",children:i("version.diff.empty")}),!l&&d&&d.length>0&&(0,t.jsx)("div",{className:"flex flex-col gap-2",children:d.map((e,s)=>(0,t.jsx)(ed,{file:e},s))})]})})}var ex=e.i(605005),em=e.i(889620);function eu({version:e,isFirst:s,isLast:r,dashed:n=!1,diffStat:a,onEdit:i,onRelease:l,onViewDiff:o,onOpenTaskDetail:d}){return(0,t.jsxs)("div",{className:"flex gap-4",children:[(0,t.jsxs)("div",{className:"relative flex w-5 flex-none flex-col items-center",children:[(0,t.jsx)("div",{className:["w-px flex-none",s?"h-0":"h-6",n?"bg-[repeating-linear-gradient(to_bottom,var(--border)_0_4px,transparent_4px_8px)]":"bg-border"].filter(Boolean).join(" ")}),(0,t.jsx)("div",{className:["z-10 h-3.5 w-3.5 flex-none rounded-full border-2",e.isCurrent?"border-primary bg-primary ring-2 ring-primary/30":"ACTIVE"===e.status?"border-emerald-400 bg-emerald-400":"RELEASED"===e.status?"border-zinc-500 bg-zinc-500":"border-muted-foreground/40 bg-transparent border-dashed"].join(" ")}),!r&&(0,t.jsx)("div",{className:["w-px flex-1",n?"bg-[repeating-linear-gradient(to_bottom,var(--border)_0_4px,transparent_4px_8px)]":"bg-border"].join(" ")})]}),(0,t.jsx)("div",{className:"min-w-0 flex-1 pb-5",children:(0,t.jsx)(L,{version:e,diffStat:a??null,onEdit:i,onRelease:l,onViewDiff:o,onOpenTaskDetail:d})})]})}e.s(["VersionTimelineClient",0,function({project:e,workspaceId:d,versions:u,diffStats:p,backlog:h}){let f,{t:g}=(0,D.useI18n)(),v=(0,r.useRouter)();(0,s.useEffect)(()=>{(0,em.setLastProjectId)(d,e.id)},[d,e.id]);let[b,j]=(0,s.useState)(!1),[N,y]=(0,s.useState)(null),[w,C]=(0,s.useState)(!1),[S,k]=(0,s.useState)(!1),[T,B]=(0,s.useState)(null),[E,L]=(0,s.useState)(null),[R,$]=(0,s.useState)(null),[_,O]=(0,s.useState)(!1),A=[...[...u.filter(e=>"RELEASED"!==e.status)].sort((e,t)=>{if(!e.targetDate&&!t.targetDate)return 0;if(!e.targetDate)return 1;if(!t.targetDate)return -1;let s=new Date(t.targetDate).getTime()-new Date(e.targetDate).getTime();return 0!==s?s:new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime()}),...[...u.filter(e=>"RELEASED"===e.status)].sort((e,t)=>e.releasedAt||t.releasedAt?e.releasedAt?t.releasedAt?new Date(t.releasedAt).getTime()-new Date(e.releasedAt).getTime():-1:1:0)],V=e=>{let t=u.find(t=>t.id===e);t&&(y({id:t.id,number:t.number,name:t.name,typeId:t.typeId??null,baseBranch:t.baseBranch,startDate:t.startDate,targetDate:t.targetDate,description:t.description}),j(!0))},P=e=>{let t=u.find(t=>t.id===e);t&&(B(t),k(!0))},M=e=>{L(e)},F=()=>{y(null),j(!0)},z=()=>{v.refresh()},U=T?u.filter(e=>e.id!==T.id&&("PLANNED"===e.status||"ACTIVE"===e.status)).map(e=>({id:e.id,number:e.number,name:e.name})):[],H=T?T.tasks.filter(e=>"DONE"!==e.status&&"CANCELLED"!==e.status).length:void 0;return(0,t.jsxs)("div",{className:"flex h-full flex-col overflow-hidden",children:[(0,t.jsxs)("div",{className:"header-xl flex shrink-0 items-center gap-4 border-b px-6",children:[(0,t.jsxs)(n.default,{href:`/workspaces/${d}?projectId=${e.id}`,className:"flex items-center gap-1.5 text-sm text-muted-foreground transition-colors hover:text-foreground",children:[(0,t.jsx)(o.ArrowLeft,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:g("archive.backToBoard")})]}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)("span",{className:"truncate font-medium",children:e.name}),(0,t.jsx)("span",{children:"/"}),(0,t.jsx)("span",{children:g("version.timeline")})]}),(0,t.jsx)("p",{className:"mt-0.5 text-xs text-muted-foreground/70",children:g("version.historyHint")})]}),(0,t.jsxs)(x.Button,{variant:"outline",onClick:()=>C(!0),children:[(0,t.jsx)(c,{className:"h-4 w-4"}),g("version.manageTypes")]}),(0,t.jsxs)(x.Button,{onClick:F,children:[(0,t.jsx)(a.Plus,{className:"h-4 w-4"}),g("version.new")]})]}),(0,t.jsx)(m.ScrollArea,{className:"min-h-0 flex-1",children:(0,t.jsx)("div",{className:"px-6 py-6",children:(0,t.jsxs)("div",{className:"mx-auto max-w-3xl",children:[0===u.length&&0===h.length&&(0,t.jsxs)("div",{className:"flex flex-col items-center gap-4 py-20 text-center text-muted-foreground",children:[(0,t.jsx)("p",{className:"text-sm",children:g("version.empty.list")}),(0,t.jsxs)(x.Button,{variant:"outline",onClick:F,children:[(0,t.jsx)(a.Plus,{className:"h-4 w-4"}),g("version.new")]})]}),A.length>0&&(0,t.jsx)("div",{className:"relative",children:A.map((e,s)=>(0,t.jsx)(eu,{version:e,isFirst:0===s,isLast:s===A.length-1&&0===h.length,diffStat:p[e.id],onEdit:V,onRelease:P,onViewDiff:M,onOpenTaskDetail:$},e.id))}),h.length>0&&(0,t.jsxs)("div",{className:"flex gap-4",children:[(0,t.jsxs)("div",{className:"relative flex w-5 flex-none flex-col items-center",children:[(0,t.jsx)("div",{className:"h-6 w-px bg-[repeating-linear-gradient(to_bottom,var(--border)_0_4px,transparent_4px_8px)]"}),(0,t.jsx)("div",{className:"z-10 h-3.5 w-3.5 flex-none rounded-full border-2 border-dashed border-muted-foreground/40 bg-transparent"})]}),(0,t.jsx)("div",{className:"min-w-0 flex-1 pb-5",children:(0,t.jsxs)("div",{className:"overflow-hidden rounded-[14px] border border-dashed bg-muted/40 shadow-sm",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>O(e=>!e),className:"w-full px-4 py-3 text-left transition-colors hover:bg-accent/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,t.jsx)(l.ChevronRight,{className:`h-3.5 w-3.5 flex-none text-muted-foreground/60 transition-transform duration-150 ${_?"rotate-90":""}`}),(0,t.jsx)(i.Archive,{className:"h-4 w-4 flex-none text-muted-foreground/70"}),(0,t.jsx)("span",{className:"text-sm font-semibold text-foreground",children:g("version.history")}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:g("version.historySub")}),(0,t.jsx)("span",{className:"flex-1"}),(0,t.jsxs)("span",{className:"text-[11.5px] text-muted-foreground",children:[h.length," ",g("version.tasksCount")]})]}),(0,t.jsx)("p",{className:"mt-2 text-xs text-muted-foreground/70",children:g("version.historyHint")})]}),_&&(0,t.jsx)("div",{className:"border-t border-dashed border-border px-2 pb-2 pt-1.5",children:h.map(e=>(0,t.jsx)(I,{task:e,onOpenDetail:$},e.id))})]})})]})]})})}),(0,t.jsx)(er,{open:b,onOpenChange:e=>{j(e),e||y(null)},projectId:e.id,workspaceId:d,editVersion:N,defaultBaseBranch:null,projectLocalPath:e.localPath,onSuccess:z}),(0,t.jsx)(ee,{open:w,onOpenChange:C,workspaceId:d,onChanged:()=>v.refresh()}),(0,t.jsx)(ea,{open:S,onOpenChange:e=>{k(e),e||B(null)},version:T?{id:T.id,number:T.number,name:T.name,unfinishedCount:H}:null,candidates:U,onSuccess:z}),(0,t.jsx)(ec,{open:!!E,onOpenChange:e=>{e||L(null)},versionId:E,versionLabel:E&&(f=u.find(e=>e.id===E))?`${f.number} ${f.name}`:void 0}),(0,t.jsx)(ex.TaskOverviewDrawer,{open:!!R,onOpenChange:e=>{e||$(null)},taskId:R})]})}],645119)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,565893,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return l},searchParamsToUrlQuery:function(){return a},urlQueryToSearchParams:function(){return o}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});function a(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function i(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function o(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,i(e));else t.set(r,i(n));return t}function l(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},204575,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return y},MiddlewareNotFoundError:function(){return k},MissingStaticPage:function(){return v},NormalizeError:function(){return b},PageNotFoundError:function(){return x},SP:function(){return m},ST:function(){return g},WEB_VITALS:function(){return a},execOnce:function(){return i},getDisplayName:function(){return d},getLocationOrigin:function(){return c},getURL:function(){return u},isAbsoluteUrl:function(){return l},isResSent:function(){return f},loadGetInitialProps:function(){return p},normalizeRepeatedSlashes:function(){return h},stringifyError:function(){return w}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let a=["CLS","FCP","FID","INP","LCP","TTFB"];function i(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let o=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,l=e=>o.test(e);function c(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function u(){let{href:e}=window.location,t=c();return e.substring(t.length)}function d(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function h(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function p(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await p(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&f(r))return n;if(!n)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return n}let m="u">typeof performance,g=m&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class y extends Error{}class b extends Error{}class x extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class v extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class k extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function w(e){return JSON.stringify({message:e.message,stack:e.stack})}},619172,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},960793,e=>{"use strict";var t=e.i(514798);let r=(0,t.createServerReference)("406dd254cc7eb451737c80331e7288eb336e7df1a0",t.callServer,void 0,t.findSourceMapURL,"getLabelsForWorkspace");e.s(["getLabelsForWorkspace",0,r])},821957,e=>{"use strict";var t=e.i(965652),r=(e,t,r,n,s,a,i,o)=>{let l=document.documentElement,c=["light","dark"];function u(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&a?s.map(e=>a[e]||e):s;r?(l.classList.remove(...n),l.classList.add(a&&a[t]?a[t]:t)):l.setAttribute(e,t)}),r=t,o&&c.includes(r)&&(l.style.colorScheme=r)}if(n)u(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;u(n)}catch(e){}},n=["light","dark"],s="(prefers-color-scheme: dark)",a="u"<typeof window,i=t.createContext(void 0),o={setTheme:e=>{},themes:[]},l=["light","dark"],c=({forcedTheme:e,disableTransitionOnChange:r=!1,enableSystem:a=!0,enableColorScheme:o=!0,storageKey:c="theme",themes:p=l,defaultTheme:m=a?"system":"light",attribute:g="data-theme",value:y,children:b,nonce:x,scriptProps:v})=>{let[k,w]=t.useState(()=>d(c,m)),[S,j]=t.useState(()=>"system"===k?h():k),C=y?Object.values(y):p,M=t.useCallback(e=>{let t=e;if(!t)return;"system"===e&&a&&(t=h());let s=y?y[t]:t,i=r?f(x):null,l=document.documentElement,c=e=>{"class"===e?(l.classList.remove(...C),s&&l.classList.add(s)):e.startsWith("data-")&&(s?l.setAttribute(e,s):l.removeAttribute(e))};if(Array.isArray(g)?g.forEach(c):c(g),o){let e=n.includes(m)?m:null,r=n.includes(t)?t:e;l.style.colorScheme=r}null==i||i()},[x]),E=t.useCallback(e=>{let t="function"==typeof e?e(k):e;w(t);try{localStorage.setItem(c,t)}catch(e){}},[k]),A=t.useCallback(t=>{j(h(t)),"system"===k&&a&&!e&&M("system")},[k,e]);t.useEffect(()=>{let e=window.matchMedia(s);return e.addListener(A),A(e),()=>e.removeListener(A)},[A]),t.useEffect(()=>{let e=e=>{e.key===c&&(e.newValue?w(e.newValue):E(m))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)},[E]),t.useEffect(()=>{M(null!=e?e:k)},[e,k]);let N=t.useMemo(()=>({theme:k,setTheme:E,forcedTheme:e,resolvedTheme:"system"===k?S:k,themes:a?[...p,"system"]:p,systemTheme:a?S:void 0}),[k,E,e,S,a,p]);return t.createElement(i.Provider,{value:N},t.createElement(u,{forcedTheme:e,storageKey:c,attribute:g,enableSystem:a,enableColorScheme:o,defaultTheme:m,value:y,themes:p,nonce:x,scriptProps:v}),b)},u=t.memo(({forcedTheme:e,storageKey:n,attribute:s,enableSystem:a,enableColorScheme:i,defaultTheme:o,value:l,themes:c,nonce:u,scriptProps:d})=>{let f=JSON.stringify([s,n,o,e,c,l,a,i]).slice(1,-1);return t.createElement("script",{...d,suppressHydrationWarning:!0,nonce:"u"<typeof window?u:"",dangerouslySetInnerHTML:{__html:`(${r.toString()})(${f})`}})}),d=(e,t)=>{let r;if(!a){try{r=localStorage.getItem(e)||void 0}catch(e){}return r||t}},f=e=>{let t=document.createElement("style");return e&&t.setAttribute("nonce",e),t.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(t),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(t)},1)}},h=e=>(e||(e=window.matchMedia(s)),e.matches?"dark":"light");e.s(["ThemeProvider",0,e=>t.useContext(i)?t.createElement(t.Fragment,null,e.children):t.createElement(c,{...e}),"useTheme",0,()=>{var e;return null!=(e=t.useContext(i))?e:o}])},138261,e=>{"use strict";var t=e.i(514798);let r=(0,t.createServerReference)("0034462e041760d222594debc480822d72dd44f371",t.callServer,void 0,t.findSourceMapURL,"getActualWsPort");e.s(["getActualWsPort",0,r])},210404,e=>{"use strict";var t=e.i(514798);let r=(0,t.createServerReference)("40f33b6f6de981d4fa57e1e82fde31a17dfe8a85a2",t.callServer,void 0,t.findSourceMapURL,"installExtension");e.s(["installExtension",0,r])},812983,e=>{"use strict";let t=(0,e.i(572989).default)("file-code",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}]]);e.s(["FileCode",0,t],812983)},887911,e=>{"use strict";var t=e.i(738690),r=e.i(812983);let n={rg:{id:"rg",name:"代码搜索 (ripgrep)",description:"基于 rg 的全文代码搜索",icon:t.Search,sizeMB:5,homepageUrl:"https://github.com/BurntSushi/ripgrep#installation",manualInstall:!0},monaco:{id:"monaco",name:"代码编辑器 (Monaco)",description:"VS Code 同款 Web 编辑器",icon:r.FileCode,sizeMB:15,homepageUrl:"https://microsoft.github.io/monaco-editor/"}},s=[n.rg,n.monaco];e.s(["listExtensionMetadata",0,function(){return s}])},689401,e=>{"use strict";var t=e.i(965652),r=e.i(804849),n=e.i(207516);e.s(["useAriaLabelledBy",0,function(e,s,a,i=!0,o){let[l,c]=t.useState(),u=(0,n.useBaseUiId)(o?`${o}-label`:void 0),d=e??s??l;return(0,r.useIsoLayoutEffect)(()=>{let t=e||s||!i?void 0:function(e,t){let r=function(e){if(!e)return;let t=e.parentElement;if(t&&"LABEL"===t.tagName)return t;let r=e.id;if(r){let t=e.nextElementSibling;if(t&&t.htmlFor===r)return t}let n=e.labels;return n&&n[0]}(e);if(r)return!r.id&&t&&(r.id=t),r.id||void 0}(a.current,u);l!==t&&c(t)}),d}])},191210,e=>{"use strict";var t=e.i(514798);let r=(0,t.createServerReference)("60e7655a5a8bc89fb0a12f0a9ed7be77e2c93394c8",t.callServer,void 0,t.findSourceMapURL,"setConfigValue");e.s(["setConfigValue",0,r])},387091,15299,769757,e=>{"use strict";var t=e.i(572989);let r=(0,t.default)("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);e.s(["Sun",0,r],387091);let n=(0,t.default)("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]);e.s(["Moon",0,n],15299);let s=(0,t.default)("languages",[["path",{d:"m5 8 6 6",key:"1wu5hv"}],["path",{d:"m4 14 6-6 2-3",key:"1k1g8d"}],["path",{d:"M2 5h12",key:"or177f"}],["path",{d:"M7 2h1",key:"1t2jsx"}],["path",{d:"m22 22-5-10-5 10",key:"don7ne"}],["path",{d:"M14 18h6",key:"1m8k6r"}]]);e.s(["Languages",0,s],769757)},938499,e=>{"use strict";let t=(0,e.i(572989).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",0,t],938499)},651236,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"BailoutToCSR",{enumerable:!0,get:function(){return s}});let n=e.r(415440);function s({reason:e,children:t}){if("u"<typeof window)throw Object.defineProperty(new n.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t}},37982,(e,t,r)=>{"use strict";function n(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"encodeURIPath",{enumerable:!0,get:function(){return n}})},607717,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"PreloadChunks",{enumerable:!0,get:function(){return l}});let n=e.r(289721),s=e.r(585012),a=e.r(465687),i=e.r(37982),o=e.r(695597);function l({moduleIds:e}){if("u">typeof window)return null;let t=a.workAsyncStorage.getStore();if(void 0===t)return null;let r=[];if(t.reactLoadableManifest&&e){let n=t.reactLoadableManifest;for(let t of e){if(!n[t])continue;let e=n[t].files;r.push(...e)}}if(0===r.length)return null;let c=(0,o.getAssetTokenQuery)();return(0,n.jsx)(n.Fragment,{children:r.map(e=>{let r=`${t.assetPrefix}/_next/${(0,i.encodeURIPath)(e)}${c}`;return e.endsWith(".css")?(0,n.jsx)("link",{precedence:"dynamic",href:r,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,s.preload)(r,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},105931,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return c}});let n=e.r(289721),s=e.r(965652),a=e.r(651236),i=e.r(607717);function o(e){return{default:e&&"default"in e?e.default:e}}let l={loader:()=>Promise.resolve(o(()=>null)),loading:null,ssr:!0},c=function(e){let t={...l,...e},r=(0,s.lazy)(()=>t.loader().then(o)),c=t.loading;function u(e){let o=c?(0,n.jsx)(c,{isLoading:!0,pastDelay:!0,error:null}):null,l=!t.ssr||!!t.loading,u=l?s.Suspense:s.Fragment,d=t.ssr?(0,n.jsxs)(n.Fragment,{children:["u"<typeof window?(0,n.jsx)(i.PreloadChunks,{moduleIds:t.modules}):null,(0,n.jsx)(r,{...e})]}):(0,n.jsx)(a.BailoutToCSR,{reason:"next/dynamic",children:(0,n.jsx)(r,{...e})});return(0,n.jsx)(u,{...l?{fallback:o}:{},children:d})}return u.displayName="LoadableComponent",u}},19578,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return s}});let n=e.r(481258)._(e.r(105931));function s(e,t){let r={};"function"==typeof e&&(r.loader=e);let s={...r,...t};return(0,n.default)({...s,modules:s.loadableGenerated?.modules})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},232280,e=>{"use strict";var t=e.i(314338);e.s(["ChevronDown",()=>t.default])},966001,e=>{"use strict";var t=e.i(289721),r=e.i(965652),n=e.i(938499),s=e.i(194358),a=e.i(519455);class i extends r.Component{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){console.error("[ErrorBoundary]",e,t)}render(){return this.state.hasError?this.props.fallback?this.props.fallback:(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 p-8 text-center",children:[(0,t.jsx)(n.AlertCircle,{className:"h-8 w-8 text-destructive"}),(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-sm font-medium text-foreground",children:"Something went wrong"}),(0,t.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:this.state.error?.message??"An unexpected error occurred"})]}),(0,t.jsxs)(a.Button,{variant:"outline",onClick:()=>this.setState({hasError:!1,error:null}),children:[(0,t.jsx)(s.RefreshCw,{className:"mr-2 h-3.5 w-3.5"}),"Retry"]})]}):this.props.children}}e.s(["ErrorBoundary",0,i])},699375,e=>{"use strict";var t,r=e.i(289721);e.s([],159880),e.i(159880),e.i(708878);var n=e.i(965652),s=e.i(314757),a=e.i(887642),i=e.i(362891),o=e.i(804849),l=e.i(416369),c=e.i(954588),u=e.i(581263),d=e.i(565455),f=e.i(207516),h=e.i(282109),p=e.i(462902);let m=n.createContext(void 0);var g=e.i(551974);let y=((t={}).checked="data-checked",t.unchecked="data-unchecked",t.disabled="data-disabled",t.readonly="data-readonly",t.required="data-required",t.valid="data-valid",t.invalid="data-invalid",t.touched="data-touched",t.dirty="data-dirty",t.filled="data-filled",t.focused="data-focused",t),b={...g.fieldValidityMapping,checked:e=>e?{[y.checked]:""}:{[y.unchecked]:""}};var x=e.i(421689),v=e.i(890514),k=e.i(571870),w=e.i(179279),S=e.i(689401),j=e.i(103353),C=e.i(67077),M=e.i(586622),E=e.i(353052);let A=n.forwardRef(function(e,t){let{checked:p,className:g,defaultChecked:y,"aria-labelledby":A,id:N,inputRef:P,name:I,nativeButton:T=!1,onCheckedChange:R,readOnly:K=!1,required:O=!1,disabled:L=!1,render:z,uncheckedValue:F,value:$,...D}=e,{clearErrors:_}=(0,k.useFormContext)(),{state:U,setTouched:B,setDirty:H,validityData:V,setFilled:J,setFocused:q,shouldValidateOnChange:W,validationMode:G,disabled:Z,name:X,validation:Q}=(0,v.useFieldRootContext)(),{labelId:Y}=(0,w.useLabelableContext)(),ee=Z||L,et=X??I,er=(0,a.useStableCallback)(R),en=n.useRef(null),es=(0,i.useMergedRefs)(en,P,Q.inputRef),ea=n.useRef(null),ei=(0,f.useBaseUiId)(),eo=(0,j.useLabelableId)({id:N,implicit:!1,controlRef:ea}),el=T?void 0:eo,[ec,eu]=(0,s.useControlled)({controlled:p,default:!!y,name:"Switch",state:"checked"});(0,x.useField)({id:ei,commit:Q.commit,value:ec,controlRef:ea,name:et,getValue:()=>ec}),(0,o.useIsoLayoutEffect)(()=>{en.current&&J(en.current.checked)},[en,J]),(0,E.useValueChanged)(ec,()=>{_(et),H(ec!==V.initialValue),J(ec),W()?Q.commit(ec):Q.commit(ec,!0)});let{getButtonProps:ed,buttonRef:ef}=(0,h.useButton)({disabled:ee,native:T}),eh=(0,S.useAriaLabelledBy)(A,Y,en,!T,el),ep=n.useMemo(()=>(0,d.mergeProps)({checked:ec,disabled:ee,id:el,name:et,required:O,style:et?l.visuallyHiddenInput:l.visuallyHidden,tabIndex:-1,type:"checkbox","aria-hidden":!0,ref:es,onChange(e){if(e.nativeEvent.defaultPrevented)return;let t=e.target.checked,r=(0,C.createChangeEventDetails)(M.REASONS.none,e.nativeEvent);er?.(t,r),r.isCanceled||eu(t)},onFocus(){ea.current?.focus()}},Q.getInputValidationProps,void 0!==$?{value:$}:c.EMPTY_OBJECT),[ec,ee,es,el,et,er,O,eu,Q,$]),em=n.useMemo(()=>({...U,checked:ec,disabled:ee,readOnly:K,required:O}),[U,ec,ee,K,O]),eg=(0,u.useRenderElement)("span",e,{state:em,ref:[t,ea,ef],props:[{id:T?eo:ei,role:"switch","aria-checked":ec,"aria-readonly":K||void 0,"aria-required":O||void 0,"aria-labelledby":eh,onFocus(){ee||q(!0)},onBlur(){let e=en.current;e&&!ee&&(B(!0),q(!1),"onBlur"===G&&Q.commit(e.checked))},onClick(e){K||ee||(e.preventDefault(),en.current?.dispatchEvent(new PointerEvent("click",{bubbles:!0,shiftKey:e.shiftKey,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey})))}},Q.getValidationProps,D,ed],stateAttributesMapping:b});return(0,r.jsxs)(m.Provider,{value:em,children:[eg,!ec&&et&&void 0!==F&&(0,r.jsx)("input",{type:"hidden",name:et,value:F}),(0,r.jsx)("input",{...ep})]})}),N=n.forwardRef(function(e,t){let{render:r,className:s,...a}=e,{state:i}=(0,v.useFieldRootContext)(),o=function(){let e=n.useContext(m);if(void 0===e)throw Error((0,p.default)(63));return e}(),l={...i,...o};return(0,u.useRenderElement)("span",e,{state:l,ref:t,stateAttributesMapping:b,props:a})});e.s(["Root",0,A,"Thumb",0,N],803205);var P=e.i(803205),P=P,I=e.i(975157);e.s(["Switch",0,function({className:e,size:t="default",...n}){return(0,r.jsx)(P.Root,{"data-slot":"switch","data-size":t,className:(0,I.cn)("peer group/switch relative inline-flex shrink-0 items-center rounded-full border border-transparent transition-all outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-[size=default]:h-[18.4px] data-[size=default]:w-[32px] data-[size=sm]:h-[14px] data-[size=sm]:w-[24px] dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-primary data-unchecked:bg-input dark:data-unchecked:bg-input/80 data-disabled:cursor-not-allowed data-disabled:opacity-50",e),...n,children:(0,r.jsx)(P.Thumb,{"data-slot":"switch-thumb",className:"pointer-events-none block rounded-full bg-background ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] dark:data-checked:bg-primary-foreground group-data-[size=default]/switch:data-unchecked:translate-x-0 group-data-[size=sm]/switch:data-unchecked:translate-x-0 dark:data-unchecked:bg-foreground"})})}],699375)},464249,e=>{"use strict";let t=(0,e.i(572989).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",0,t],464249)},889620,e=>{"use strict";let t="workspace-last-project";function r(){try{let e=localStorage.getItem(t);if(!e)return{};let r=JSON.parse(e);return r&&"object"==typeof r?r:{}}catch{return{}}}e.s(["getLastProjectId",0,function(e){return r()[e]??null},"setLastProjectId",0,function(e,n){try{let s=r();if(s[e]===n)return;localStorage.setItem(t,JSON.stringify({...s,[e]:n}))}catch{}}])},263938,e=>{"use strict";let t=(0,e.i(572989).default)("tag",[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]]);e.s(["Tag",0,t],263938)},989548,338187,e=>{"use strict";let t=(0,e.i(572989).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"}]]);e.s(["Bot",0,t],989548);var r=e.i(289721),n=e.i(965652);e.i(508271);var s=e.i(841359),a=e.i(386443);let i="tower-assistant-sessions",o="tower-assistant-active-session";function l(){try{let e=localStorage.getItem(i);if(!e)return[];let t=JSON.parse(e);if(!Array.isArray(t))return[];return t}catch{return[]}}function c(){return localStorage.getItem(o)}function u(e){null===e?localStorage.removeItem(o):localStorage.setItem(o,e)}let d=(0,n.createContext)(null);function f(){return"u">typeof crypto&&crypto.randomUUID?crypto.randomUUID():`msg-${Date.now()}-${Math.random().toString(36).slice(2,9)}`}let h="assistant-attachment-cache";function p(e,t,r){try{let n=sessionStorage.getItem(h),s=n?JSON.parse(n):{};s[e]||(s[e]={}),s[e][t]=r,sessionStorage.setItem(h,JSON.stringify(s))}catch{}}e.s(["AssistantProvider",0,function({children:e}){let[t,o]=(0,n.useState)(!1),[m,g]=(0,n.useState)(!1),[y,b]=(0,n.useState)(0),[x,v]=(0,n.useState)("sidebar"),[k,w]=(0,n.useState)(null),[S,j]=(0,n.useState)([]),[C,M]=(0,n.useState)("idle"),[E,A]=(0,n.useState)(!1),N=(0,n.useRef)([]),P=(0,n.useRef)(null),I=(0,n.useRef)(null),[T,R]=(0,n.useState)([]),[K,O]=(0,n.useState)(null),L=(0,n.useRef)(!1),z=(0,n.useCallback)(()=>{j([...N.current])},[]),F=(0,n.useCallback)(async()=>{v("dialog"===await (0,a.getConfigValue)("assistant.displayMode","sidebar")?"dialog":"sidebar")},[]);(0,n.useEffect)(()=>{F()},[F]);let $=(0,n.useCallback)(async()=>{let e=l();try{let t=await fetch("/api/internal/assistant/sessions");if(t.ok){let r=await t.json();if(Array.isArray(r.sessions)){let t=new Map(e.map(e=>[e.id,e.title])),n=r.sessions.map(e=>{let r=t.get(e.id);return r?{...e,title:r}:e});return R(n),n}}}catch{}return R(e),e},[]),D=(0,n.useCallback)(async e=>{A(!0);try{let t=await fetch(`/api/internal/assistant/sessions?sessionId=${encodeURIComponent(e)}`);if(!t.ok)return;let r=await t.json();if(Array.isArray(r.messages)){N.current=r.messages;let t=function(e){try{let t=sessionStorage.getItem(h);if(!t)return{};return JSON.parse(t)[e]??{}}catch{return{}}}(e);if(Object.keys(t).length>0){let e=0;N.current=N.current.map(r=>{if("user"===r.role){let n=t[e];if(e++,n?.length)return{...r,attachmentFilenames:n}}return r})}j([...N.current])}}catch{}finally{A(!1)}},[]);(0,n.useEffect)(()=>{let e=!1;return(async()=>{let t=await $();if(e)return;let r=c(),n=r&&t.some(e=>e.id===r)?r:t[0]?.id??null;n&&(O(n),P.current=n,L.current=!0,u(n),D(n))})(),()=>{e=!0}},[$,D]);let _=(0,n.useCallback)(()=>{I.current?.abort(),P.current=null,L.current=!1,O(null),u(null),N.current=[],j([]),M("idle")},[]),U=(0,n.useCallback)(e=>{I.current?.abort(),P.current=e,L.current=!0,O(e),u(e),N.current=[],j([]),M("idle"),D(e)},[D]),B=(0,n.useCallback)(e=>{let t;t=l().filter(t=>t.id!==e),localStorage.setItem(i,JSON.stringify(t)),c()===e&&u(null),R(t=>t.filter(t=>t.id!==e)),K===e&&_(),fetch(`/api/internal/assistant/sessions?sessionId=${encodeURIComponent(e)}`,{method:"DELETE"}).catch(()=>{}).finally(()=>{$()})},[K,_,$]),H=(0,n.useCallback)((e,t)=>{let r=t.trim();if(r){var n;let t;n={title:r},t=l().map(t=>t.id===e?{...t,...n,updatedAt:new Date().toISOString()}:t),localStorage.setItem(i,JSON.stringify(t)),R(t=>t.map(t=>t.id===e?{...t,title:r}:t)),fetch(`/api/internal/assistant/sessions?sessionId=${encodeURIComponent(e)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:r})}).catch(()=>{})}},[]),V=(0,n.useCallback)(async()=>{g(!0);try{await F(),o(!0)}finally{g(!1)}},[F]),J=(0,n.useCallback)(()=>{o(!1),I.current?.abort(),I.current=null,M("idle")},[]),q=(0,n.useCallback)(()=>{if(!t&&!m)return void V();let e=document.activeElement;e instanceof HTMLElement&&null!==e.closest("[data-assistant-input]")?J():b(e=>e+1)},[t,m,J,V]);(0,s.useActionShortcut)("global.assistant",()=>q());let W=(0,n.useCallback)(async(e,t)=>{if(!e.trim()&&!t?.attachmentFilenames?.length)return;I.current?.abort();let r=new AbortController;I.current=r;let n=0!==N.current.length||L.current?null:e,s=f();if(N.current=[...N.current,{id:f(),role:"user",content:e,attachmentFilenames:t?.attachmentFilenames?.length?t.attachmentFilenames:void 0},{id:s,role:"thinking",content:"",isStreaming:!0}],z(),t?.attachmentFilenames?.length&&P.current){let e=N.current.filter(e=>"user"===e.role).length-1;p(P.current,e,t.attachmentFilenames)}M("connecting");let a=null;try{let o=await fetch("/api/internal/assistant/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({message:e,sessionId:P.current,attachmentFilenames:t?.attachmentFilenames??[]}),signal:r.signal});if(!o.ok||!o.body)throw Error(`HTTP ${o.status}`);M("streaming");let c=o.body.getReader(),d=new TextDecoder,h="";for(;;){let{done:e,value:r}=await c.read();if(e)break;let o=(h+=d.decode(r,{stream:!0})).split("\n");for(let e of(h=o.pop()??"",o)){let r;if(e.startsWith("data: ")){try{r=JSON.parse(e.slice(6).trim())}catch{continue}if(r.sessionId){let e=P.current;if(P.current=r.sessionId,n&&!L.current&&r.sessionId!==e){L.current=!0;let e=new Date().toISOString(),s={id:r.sessionId,title:function(e){let t=e.trim();return t?t.length>30?t.slice(0,30):t:"New Session"}(n),createdAt:e,updatedAt:e};!function(e){let t=[e,...l().filter(t=>t.id!==e.id)].slice(0,10);localStorage.setItem(i,JSON.stringify(t))}(s),R(l()),O(r.sessionId),u(r.sessionId),t?.attachmentFilenames?.length&&p(r.sessionId,0,t.attachmentFilenames)}}switch(r.type){case"text_delta":{let e=N.current.filter(e=>e.id!==s);a?N.current=e.map(e=>e.id===a?{...e,content:e.content+(r.content??""),isStreaming:!0}:e):(a=f(),N.current=[...e,{id:a,role:"assistant",content:r.content??"",isStreaming:!0}]),z();break}case"text":{let e=N.current.filter(e=>e.id!==s);a?N.current=e.map(e=>e.id===a?{...e,content:r.content??e.content,isStreaming:!0}:e):(a=f(),N.current=[...e,{id:a,role:"assistant",content:r.content??"",isStreaming:!0}]),z();break}case"tool_start":{let e=N.current.filter(e=>e.id!==s);a?(N.current=e.map(e=>e.id===a?{...e,isStreaming:!1}:e),a=null):N.current=e,r.toolId&&N.current.some(e=>"tool"===e.role&&e.toolId===r.toolId)||(N.current=[...N.current,{id:f(),role:"tool",content:`Calling ${r.content??"tool"}...`,toolName:r.content,toolId:r.toolId,isStreaming:!0}]),z();break}case"tool_use":{let e=N.current.filter(e=>e.id!==s),t=a?e.map(e=>e.id===a?{...e,isStreaming:!1}:e):e;a=null;let n=JSON.stringify(r.toolInput??{},null,2),i=-1;if(r.toolId&&(i=t.findIndex(e=>"tool"===e.role&&e.toolId===r.toolId)),-1===i)for(let e=t.length-1;e>=0;e--){let n=t[e];if("tool"===n.role&&n.isStreaming&&n.toolName===r.content){i=e;break}}-1!==i?N.current=t.map((e,t)=>t===i?{...e,content:n,toolName:r.content,toolId:r.toolId??e.toolId,isStreaming:!1}:e):N.current=[...t,{id:f(),role:"tool",content:n,toolName:r.content,toolId:r.toolId,isStreaming:!1}],z();break}case"tool_result":N.current=[...N.current,{id:f(),role:"tool",content:String(r.toolOutput??""),toolName:`${r.content??"tool"} (result)`}],z();break;case"error":N.current=[...N.current.filter(e=>e.id!==s),{id:f(),role:"assistant",content:`Error: ${r.content??"Unknown error"}`}],z(),M("error");break;case"done":N.current=N.current.filter(e=>e.id!==s).map(e=>e.isStreaming?{...e,isStreaming:!1}:e),a=null,z(),M("idle")}}}}N.current=N.current.filter(e=>e.id!==s),z(),M(e=>"streaming"===e?"idle":e),$()}catch(e){if("AbortError"===e.name)return;N.current=[...N.current.filter(e=>e.id!==s),{id:f(),role:"assistant",content:`Connection error: ${e.message??"Unknown error"}`}],z(),M("error")}},[z,$]),G=(0,n.useCallback)(()=>(I.current?.abort(),I.current=null,N.current=N.current.filter(e=>"thinking"!==e.role).map(e=>e.isStreaming?{...e,isStreaming:!1}:e),j([...N.current]),M("idle"),null),[]),Z=S[S.length-1],X="connecting"===C||"streaming"===C||Z?.role==="thinking"&&!0===Z.isStreaming;return(0,r.jsx)(d.Provider,{value:{isOpen:t,isStarting:m,displayMode:x,worktreePath:k,toggleAssistant:q,closeAssistant:J,inputFocusSignal:y,chatMessages:S,chatStatus:C,isChatThinking:X,isLoadingHistory:E,sendChatMessage:W,cancelChat:G,sessions:T,activeSessionId:K,createNewSession:_,switchSession:U,removeSession:B,renameSession:H,refreshSessions:$},children:e})},"useAssistant",0,function(){let e=(0,n.useContext)(d);if(!e)throw Error("useAssistant must be used within an AssistantProvider");return e}],338187)},275360,e=>{"use strict";let t=(0,e.i(572989).default)("folder-plus",[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);e.s(["FolderPlus",0,t],275360)},431828,763131,e=>{"use strict";var t=e.i(572989);let r=(0,t.default)("folder-git-2",[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]]);e.s(["FolderGit2",0,r],431828);let n=(0,t.default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]);e.s(["Home",0,n],763131)},256753,e=>{"use strict";let t=(0,e.i(572989).default)("hard-drive",[["path",{d:"M10 16h.01",key:"1bzywj"}],["path",{d:"M2.212 11.577a2 2 0 0 0-.212.896V18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5.527a2 2 0 0 0-.212-.896L18.55 5.11A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"18tbho"}],["path",{d:"M21.946 12.013H2.054",key:"zqlbp7"}],["path",{d:"M6 16h.01",key:"1pmjb7"}]]);e.s(["HardDrive",0,t],256753)},224277,e=>{"use strict";var t=e.i(289721),r=e.i(965652),n=e.i(977982),s=e.i(431828),a=e.i(763131),i=e.i(472074),o=e.i(738690),l=e.i(256753),c=e.i(275360),u=e.i(597746),d=e.i(657153),f=e.i(776639),h=e.i(519455),p=e.i(793479),m=e.i(746798),g=e.i(533499),y=e.i(759684);e.s(["FolderBrowserDialog",0,function({open:e,onOpenChange:b,onSelect:x,gitOnly:v=!1}){let{t:k}=(0,g.useI18n)(),[w,S]=(0,r.useState)(null),[j,C]=(0,r.useState)(!1),[M,E]=(0,r.useState)(null),[A,N]=(0,r.useState)(""),[P,I]=(0,r.useState)(""),[T,R]=(0,r.useState)(!1),K=(0,r.useRef)(null),[O,L]=(0,r.useState)(!1),[z,F]=(0,r.useState)(""),$=(0,r.useRef)(null),D=(0,r.useCallback)(async e=>{C(!0),E(null),I(""),R(!1);try{let t=e?`/api/browse-fs?path=${encodeURIComponent(e)}`:"/api/browse-fs",r=await fetch(t);if(!r.ok){let e=await r.json();E(e.error||"Failed");return}let n=await r.json();return S(n),N(n.currentPath),n}catch{E("Failed to browse filesystem")}finally{C(!1)}},[]);(0,r.useEffect)(()=>{e&&(D().then(e=>{e?.isWindows&&R(!0)}),setTimeout(()=>K.current?.focus(),200))},[e,D]);let _=()=>{A.trim()&&D(A.trim())},U=async()=>{let e=z.trim();if(e&&w?.currentPath)try{let t=await fetch("/api/browse-fs",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({parentPath:w.currentPath,name:e})});if(!t.ok){let e=await t.json();E(e.error||k("folder.newFolderError"));return}L(!1),F(""),D(w.currentPath)}catch{E(k("folder.newFolderError"))}},B=()=>{L(!1),F("")},H=w?.folders.filter(e=>e.name.toLowerCase().includes(P.toLowerCase()))??[];return(0,t.jsx)(f.Dialog,{open:e,onOpenChange:b,children:(0,t.jsx)(f.DialogContent,{className:"p-0 gap-0",style:{maxWidth:"36rem",overflow:"hidden"},children:(0,t.jsxs)("div",{className:"flex flex-col max-h-[60vh] overflow-hidden",children:[(0,t.jsxs)("div",{className:"px-5 pt-5 pb-3 shrink-0",children:[(0,t.jsx)(f.DialogTitle,{children:v?k("folder.selectGitRepo"):k("folder.selectFolder")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:k("folder.hint")})]}),(0,t.jsxs)("div",{className:"border-t border-border px-4 pt-3 pb-2 shrink-0",children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:k("folder.manualInput")}),(0,t.jsxs)("div",{className:"mt-1.5 flex gap-2",children:[(0,t.jsx)(p.Input,{ref:K,value:A,onChange:e=>N(e.target.value),onKeyDown:e=>"Enter"===e.key&&_(),placeholder:"/path/to/your/project",title:A,className:"flex-1 min-w-0"}),(0,t.jsx)(h.Button,{variant:"outline",onClick:_,className:"h-8 px-3 shrink-0",children:k("folder.goTo")})]})]}),(0,t.jsxs)("div",{className:"px-4 py-2 shrink-0",children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:k("folder.searchDir")}),(0,t.jsxs)("div",{className:"relative mt-1.5",children:[(0,t.jsx)(o.Search,{className:"absolute left-2.5 top-1/2 -translate-y-1/2 h-3.5 w-3.5 text-muted-foreground"}),(0,t.jsx)("input",{value:P,onChange:e=>I(e.target.value),placeholder:k("folder.filterPlaceholder"),className:"h-8 w-full rounded-md border border-border bg-background pl-8 pr-3 text-sm text-foreground placeholder-muted-foreground outline-none focus:border-ring focus:ring-1 focus:ring-ring"})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5 border-y border-border px-4 py-2 shrink-0 min-w-0",children:[(0,t.jsxs)(m.Tooltip,{children:[(0,t.jsx)(m.TooltipTrigger,{render:(0,t.jsx)(h.Button,{variant:"outline",size:"icon-sm",onClick:()=>{w?.isWindows?R(!0):w?.homePath&&D(w.homePath)},className:"shrink-0 text-muted-foreground"}),children:(0,t.jsx)(a.Home,{className:"h-3.5 w-3.5"})}),(0,t.jsx)(m.TooltipContent,{side:"bottom",sideOffset:4,children:k("folder.home")})]}),(0,t.jsxs)(m.Tooltip,{children:[(0,t.jsx)(m.TooltipTrigger,{render:(0,t.jsx)(h.Button,{variant:"outline",size:"icon-sm",onClick:()=>{w&&("__DRIVES__"===w.parentPath?R(!0):(R(!1),D(w.parentPath)))},className:"shrink-0 text-muted-foreground"}),children:(0,t.jsx)(i.ChevronUp,{className:"h-3.5 w-3.5"})}),(0,t.jsx)(m.TooltipContent,{side:"bottom",sideOffset:4,children:k("folder.parent")})]}),(0,t.jsxs)(m.Tooltip,{children:[(0,t.jsx)(m.TooltipTrigger,{render:(0,t.jsx)(h.Button,{variant:"outline",size:"icon-sm",onClick:()=>{L(!0),F(""),setTimeout(()=>$.current?.focus(),50)},className:"shrink-0 text-muted-foreground"}),children:(0,t.jsx)(c.FolderPlus,{className:"h-3.5 w-3.5"})}),(0,t.jsx)(m.TooltipContent,{side:"bottom",sideOffset:4,children:k("folder.newFolder")})]}),(0,t.jsx)("div",{className:"min-w-0 flex-1 truncate text-sm text-foreground font-mono",title:w?.currentPath??"",children:w?.currentPath??"..."})]}),(0,t.jsxs)(y.ScrollArea,{className:"min-h-0 flex-1",children:[O&&(0,t.jsxs)("div",{className:"flex items-center gap-2 border-b border-border/30 px-4 py-2",children:[(0,t.jsx)(n.Folder,{className:"h-4 w-4 text-primary/70 shrink-0"}),(0,t.jsx)("input",{ref:$,value:z,onChange:e=>F(e.target.value),onKeyDown:e=>{"Enter"===e.key&&U(),"Escape"===e.key&&B()},placeholder:k("folder.newFolderPlaceholder"),className:"h-7 flex-1 rounded-md border border-border bg-background px-2 text-sm text-foreground placeholder-muted-foreground outline-none focus:border-ring focus:ring-1 focus:ring-ring"}),(0,t.jsx)(h.Button,{variant:"ghost",size:"icon-xs",onClick:U,disabled:!z.trim(),className:"text-emerald-400 hover:text-emerald-300",children:(0,t.jsx)(u.Check,{className:"h-3.5 w-3.5"})}),(0,t.jsx)(h.Button,{variant:"ghost",size:"icon-xs",onClick:B,className:"text-muted-foreground",children:(0,t.jsx)(d.X,{className:"h-3.5 w-3.5"})})]}),j&&(0,t.jsx)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:"Loading..."}),M&&(0,t.jsx)("div",{className:"flex items-center justify-center py-8 text-sm text-rose-400",children:M}),T&&(!w?.drives||0===w.drives.length)&&(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center gap-1 py-8 text-sm text-muted-foreground",children:[(0,t.jsx)("span",{children:k("folder.noDrives")}),(0,t.jsxs)("span",{className:"text-[10px] opacity-60",children:[w?.diag??"old-build"," · platform=",w?.platform??"?"," · drives=",w?.drives?.length??0," · ",w?.currentPath??"?"]})]}),T&&w?.drives&&w.drives.map(e=>(0,t.jsxs)("button",{onClick:()=>{var t;return t=e.path,void(R(!1),D(t))},className:"flex w-full items-center gap-3 border-b border-border/30 px-4 py-2.5 text-left transition-colors hover:bg-accent last:border-b-0",children:[(0,t.jsx)(l.HardDrive,{className:"h-4 w-4 text-blue-400 shrink-0"}),(0,t.jsx)("span",{className:"flex-1 text-sm text-foreground truncate",children:e.name}),(0,t.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground",children:e.path})]},e.path)),!T&&!j&&!M&&0===H.length&&(0,t.jsx)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:k("folder.empty")}),!T&&!j&&!M&&H.map(e=>(0,t.jsxs)("button",{onClick:()=>{e.isGit||v?(x(e.path),b(!1)):D(e.path)},onDoubleClick:()=>D(e.path),className:"flex w-full items-center gap-3 border-b border-border/30 px-4 py-2.5 text-left transition-colors hover:bg-accent last:border-b-0",children:[e.isGit?(0,t.jsx)(s.FolderGit2,{className:"h-4 w-4 text-emerald-400 shrink-0"}):(0,t.jsx)(n.Folder,{className:"h-4 w-4 text-primary/70 shrink-0"}),(0,t.jsx)("span",{className:"flex-1 text-sm text-foreground truncate",children:e.name}),e.isGit&&(0,t.jsx)("span",{className:"shrink-0 rounded-md bg-emerald-500/10 px-2 py-0.5 text-[10px] font-medium text-emerald-400 ring-1 ring-emerald-500/20",children:"git"})]},e.path))]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2 px-5 py-3 shrink-0 border-t border-border",children:[(0,t.jsx)(h.Button,{variant:"outline",onClick:()=>b(!1),children:k("common.cancel")}),(0,t.jsx)(h.Button,{onClick:()=>{w?.currentPath&&(x(w.currentPath),b(!1))},className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:k("folder.selectPath")})]})]})})})}])},905455,e=>{"use strict";var t=e.i(289721),r=e.i(975157);e.s(["SegmentedControl",0,function({options:e,value:n,onChange:s,className:a}){return(0,t.jsx)("div",{className:(0,r.cn)("inline-flex rounded-md border border-border bg-muted p-1 gap-1",a),children:e.map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>s(e.value),className:(0,r.cn)("rounded px-3 py-1 text-sm transition-colors",n===e.value?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:e.label},e.value))})}])},233274,e=>{"use strict";let t=(0,e.i(572989).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);e.s(["Sparkles",0,t],233274)},624486,e=>{"use strict";var t=e.i(514798);let r=(0,t.createServerReference)("60474ed8af66d6d5d3b38dc4ead39b20409a155dbb",t.callServer,void 0,t.findSourceMapURL,"analyzeProjectDirectory");e.s(["analyzeProjectDirectory",0,r])},41188,e=>{"use strict";var t=e.i(514798);let r=(0,t.createServerReference)("402535ef46f2a5c3f9c9b0d4a80fea235b2a759106",t.callServer,void 0,t.findSourceMapURL,"createProject");e.s(["createProject",0,r])},469051,e=>{"use strict";let t=(0,e.i(572989).default)("layout-grid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]]);e.s(["LayoutGrid",0,t],469051)},338271,289813,941068,e=>{"use strict";var t=e.i(965652);let r=e=>{let t,r=new Set,n=(e,n)=>{let s="function"==typeof e?e(t):e;if(!Object.is(s,t)){let e=t;t=(null!=n?n:"object"!=typeof s||null===s)?s:Object.assign({},t,s),r.forEach(r=>r(t,e))}},s=()=>t,a={setState:n,getState:s,getInitialState:()=>i,subscribe:e=>(r.add(e),()=>r.delete(e))},i=t=e(n,s,a);return a},n=e=>{let n=e?r(e):r,s=e=>(function(e,r=e=>e){let n=t.default.useSyncExternalStore(e.subscribe,t.default.useCallback(()=>r(e.getState()),[e,r]),t.default.useCallback(()=>r(e.getInitialState()),[e,r]));return t.default.useDebugValue(n),n})(n,e);return Object.assign(s,n),s},s=e=>e?n(e):n;e.s(["create",0,s],289813);let a=["Shift","Meta","Alt","Control"],i="object"==typeof navigator?navigator.platform:"",o=/Mac|iPod|iPhone|iPad/.test(i)?"Meta":"Control",l="Win32"===i?["Control","Alt"]:["Alt"];function c(e,t){return"function"==typeof e.getModifierState&&(e.getModifierState(t)||l.includes(t)&&e.getModifierState("AltGraph"))}function u(e){return e.trim().split(" ").map(e=>{let t=e.split(/(?<=\w|\])\+/),r=t.pop(),n=r.match(/^\((.+)\)$/),s=n?RegExp(`^(?:${n[1]})$`,"iv"):r,a=[],i=[];for(let e of t){let t=e.match(/^\[(.*)\]$/),r=t?.[1]??e;r="$mod"===r?o:r,t?i.push(r):a.push(r)}return[a,i,s]})}e.s(["matchKeybindingPress",0,function(e,[t,r,n]){let s=t.includes("AltGraph");return!((n instanceof RegExp?!(n.test(e.key)||n.test(e.code)):n.toUpperCase()!==e.key.toUpperCase()&&n!==e.code)||t.find(t=>!c(e,t))||a.find(a=>!t.includes(a)&&!r.includes(a)&&n!==a&&c(e,a)&&!(s&&l.includes(a))))},"parseKeybinding",0,u],941068);let d=0,f=0,h=s(e=>({entries:new Map,register:t=>{var r;let n=(d+=1,`sc_${d}`);f+=1;let s=Array.isArray(r=t.keys)?[...r]:[r],a={...t,id:n,keys:s,presses:s.map(e=>u(e)),seq:f};return e(e=>{let t=new Map(e.entries);return t.set(n,a),{entries:t}}),n},unregister:t=>{e(e=>{if(!e.entries.has(t))return e;let r=new Map(e.entries);return r.delete(t),{entries:r}})}}));e.s(["selectAllShortcuts",0,function(e){return Array.from(e.entries.values())},"useShortcutStore",0,h],338271)},889383,e=>{"use strict";var t=e.i(289721),r=e.i(965652),n=e.i(338271),s=e.i(941068);function a(e){return(e.priority??0)+1e3*("global"!==e.scope)}e.s(["ShortcutProvider",0,function({children:e}){return(0,r.useEffect)(()=>{function e(e){let t=(0,n.selectAllShortcuts)(n.useShortcutStore.getState());if(0===t.length)return;let r=function(e,t,r){let n=[];for(let a of e){if(a.when&&!1===a.when())continue;let e=null;for(let r of a.presses){if(1!==r.length)continue;let n=r[0];if((0,s.matchKeybindingPress)(t,n)){e=n;break}}if(e){if(r){if(function(e){let[t]=e;return t.some(e=>"Control"===e||"Meta"===e||"Alt"===e)}(e)){if(!1===a.allowInInput)continue}else if(!a.allowInInput)continue}n.push(a)}}return 0===n.length?null:(n.sort((e,t)=>{let r=a(e),n=a(t);return r!==n?n-r:t.seq-e.seq}),n[0])}(t,e,function(e){if(!e)return!1;let t=e.tagName;return"INPUT"===t||"TEXTAREA"===t||"SELECT"===t||!0===e.isContentEditable}(document.activeElement));r&&(!1!==r.preventDefault&&e.preventDefault(),e.stopPropagation(),r.handler(e))}return window.addEventListener("keydown",e,{capture:!0}),()=>{window.removeEventListener("keydown",e,{capture:!0})}},[]),(0,t.jsx)(t.Fragment,{children:e})}],889383)},454711,e=>{"use strict";var t=e.i(965652),r=e.i(338271);e.s(["useShortcut",0,function(...e){let n=function(e){let t=e[0];if("string"==typeof t||Array.isArray(t))return Array.isArray(t)&&t.length>0&&"string"!=typeof t[0]?t:[{keys:t,handler:e[1],...e[2]??{}}];return[t]}(e),s=(0,t.useRef)(n);(0,t.useEffect)(()=>{s.current=n});let a=(0,r.useShortcutStore)(e=>e.register),i=(0,r.useShortcutStore)(e=>e.unregister),o=JSON.stringify(n.map(e=>({keys:e.keys,scope:e.scope,description:e.description,group:e.group,allowInInput:e.allowInInput,preventDefault:e.preventDefault,priority:e.priority,hidden:e.hidden,hasWhen:"function"==typeof e.when})));(0,t.useEffect)(()=>{let e=s.current.map((e,t)=>a({...e,handler:e=>s.current[t]?.handler(e),when:e.when?()=>s.current[t]?.when?.()??!0:void 0}));return()=>{for(let t of e)i(t)}},[o,a,i])}])},743059,e=>{"use strict";var t=e.i(338271);function r(){if("u"<typeof navigator)return!1;let e=navigator.userAgentData?.platform;return/mac/i.test(e??navigator.userAgent??"")}let n={ArrowLeft:"←",ArrowRight:"→",ArrowUp:"↑",ArrowDown:"↓"};function s(e){let t=r();return e.split("+").map(e=>(function(e,t){switch(e){case"$mod":case"Meta":return t?"⌘":"Ctrl";case"Control":return"Ctrl";case"Alt":return t?"⌥":"Alt";case"Shift":return"⇧";case"Escape":return"Esc";case"Enter":return"↵";case"Tab":return"Tab";default:if(/^Digit[0-9]$/.test(e))return e.slice(5);return n[e]??e}})(e,t))}function a(e){return e.map(e=>s(e).join("+"))}e.s(["compactKeyList",0,function(e){if(e.length<3)return e;let t=e.map(e=>{let t=/^(.*?)(?:Digit)?([1-9])$/.exec(e);return t?{prefix:t[1],digit:Number(t[2])}:null});if(t.some(e=>null===e))return e;let r=t[0].prefix;return t.every(e=>e.prefix===r)&&t.every((e,t)=>e.digit===t+1)?[`${r}1–${t[t.length-1].digit}`]:e},"isMac",0,r,"renderComboTokens",0,s,"renderKeys",0,a,"useShortcutHelp",0,function(){let e=(0,t.useShortcutStore)(t.selectAllShortcuts),r=new Map;for(let t of e){if(t.hidden)continue;let e=t.group??t.scope??"global",n=r.get(e);n?n.push(t):r.set(e,[t])}return{groups:Array.from(r.entries()).map(([e,t])=>({title:e,shortcuts:t})),renderKeys:a}}])},371385,75566,841359,e=>{"use strict";let t=[{id:"global.search",defaultKeys:["$mod+k"],descriptionKey:"shortcuts.search",group:"global",scope:"global",configurable:!0},{id:"global.commandPalette",defaultKeys:["$mod+p"],descriptionKey:"shortcuts.commandPalette",group:"global",scope:"global",configurable:!0},{id:"global.help",defaultKeys:["$mod+/","?"],descriptionKey:"shortcuts.openHelp",group:"global",scope:"global",configurable:!0},{id:"global.assistant",defaultKeys:["$mod+l"],descriptionKey:"shortcuts.assistant",group:"global",scope:"global",configurable:!0},{id:"global.gotoWorkspace",defaultKeys:["Alt+Digit1","Alt+Digit2","Alt+Digit3","Alt+Digit4","Alt+Digit5","Alt+Digit6","Alt+Digit7","Alt+Digit8","Alt+Digit9"],descriptionKey:"shortcuts.gotoWorkspace",group:"global",scope:"global",configurable:!1,allowInInput:!0},{id:"panels.taskManager",defaultKeys:["$mod+Control+j"],descriptionKey:"shortcuts.panels.taskManager",group:"panels",scope:"global",configurable:!0},{id:"panels.assets",defaultKeys:["$mod+Control+k"],descriptionKey:"shortcuts.panels.assets",group:"panels",scope:"global",configurable:!0},{id:"panels.notes",defaultKeys:["$mod+Control+l"],descriptionKey:"shortcuts.panels.notes",group:"panels",scope:"global",configurable:!0},{id:"panels.archive",defaultKeys:["$mod+Control+;"],descriptionKey:"shortcuts.panels.archive",group:"panels",scope:"global",configurable:!0},{id:"missions.exit",defaultKeys:["Control+;"],descriptionKey:"shortcuts.missions.exitToNav",group:"missions",scope:"missions",configurable:!0,allowInInput:!0},{id:"missions.jump",defaultKeys:["1","2","3","4","5","6","7","8","9"],descriptionKey:"shortcuts.missions.jump",group:"missions",scope:"missions",configurable:!1},{id:"missions.moveSelection",defaultKeys:["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],descriptionKey:"shortcuts.missions.moveSel",group:"missions",scope:"missions",configurable:!1},{id:"missions.cycle",defaultKeys:["Tab"],descriptionKey:"shortcuts.missions.cyclePane",group:"missions",scope:"missions",configurable:!1},{id:"missions.cycleBack",defaultKeys:["Shift+Tab"],descriptionKey:"shortcuts.missions.cyclePane",group:"missions",scope:"missions",configurable:!1},{id:"missions.focus",defaultKeys:["Enter"],descriptionKey:"shortcuts.missions.focusSel",group:"missions",scope:"missions",configurable:!1},{id:"missions.next",defaultKeys:["$mod+ArrowRight"],descriptionKey:"shortcuts.missions.nextPane",group:"missions",scope:"missions",configurable:!0,allowInInput:!0},{id:"missions.prev",defaultKeys:["$mod+ArrowLeft"],descriptionKey:"shortcuts.missions.prevPane",group:"missions",scope:"missions",configurable:!0,allowInInput:!0}],r=new Map(t.map(e=>[e.id,e]));function n(e){let t=r.get(e);if(!t)throw Error(`Unknown shortcut action: ${e}`);return t}e.s(["SHORTCUT_ACTIONS",0,t,"getAction",0,n],371385);var s=e.i(289813);let a="tower-keymap-overrides";function i(e){try{window.localStorage.setItem(a,JSON.stringify(e))}catch{}}function o(e,t){return e[t]??[...n(t).defaultKeys]}let l=(0,s.create)((e,t)=>({overrides:function(){try{let e=window.localStorage.getItem(a);if(!e)return{};let t=JSON.parse(e);if(t&&"object"==typeof t&&!Array.isArray(t))return t;return{}}catch{return{}}}(),setBinding:(t,r)=>e(e=>{let n={...e.overrides,[t]:r};return i(n),{overrides:n}}),resetBinding:t=>e(e=>{if(!(t in e.overrides))return e;let r={...e.overrides};return delete r[t],i(r),{overrides:r}}),resetAll:()=>{i({}),e({overrides:{}})},resolveKeys:e=>o(t().overrides,e)}));e.s(["resolveKeysFrom",0,o,"useKeymapStore",0,l],75566);var c=e.i(533499),u=e.i(454711);function d(e){return l(t=>t.overrides[e])??[...n(e).defaultKeys]}e.s(["useActionShortcut",0,function(e,t,r){let s=n(e),a=d(e),{t:i}=(0,c.useI18n)();(0,u.useShortcut)(a,t,{scope:s.scope,description:i(s.descriptionKey),group:i(`shortcuts.group.${s.group}`),allowInInput:s.allowInInput,...r})},"useResolvedKeys",0,d],841359)},508271,158956,e=>{"use strict";e.i(889383),e.i(454711);var t=e.i(743059);e.i(338271),e.i(371385),e.i(841359),e.s(["serializeKeyEvent",0,function(e){let{key:r}=e;if("Control"===r||"Shift"===r||"Alt"===r||"Meta"===r)return null;let n=(0,t.isMac)(),s=[];return(n?e.metaKey:e.ctrlKey)&&s.push("$mod"),(n?e.ctrlKey:e.metaKey)&&s.push(n?"Control":"Meta"),e.altKey&&s.push("Alt"),e.shiftKey&&s.push("Shift"),s.push(1===r.length&&/[a-zA-Z]/.test(r)?r.toLowerCase():r),s.join("+")}],158956),e.i(75566),e.s([],508271)},386443,e=>{"use strict";var t=e.i(514798);let r=(0,t.createServerReference)("60f9fcca9cc5ca10fc49386cabdc7854ab8435ad47",t.callServer,void 0,t.findSourceMapURL,"getConfigValue");e.s(["getConfigValue",0,r])},232545,e=>{"use strict";let t=(0,e.i(572989).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",0,t],232545)},998626,e=>{"use strict";let t=(0,e.i(572989).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],998626)},977982,472074,e=>{"use strict";let t=(0,e.i(572989).default)("folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);e.s(["Folder",0,t],977982);var r=e.i(792566);e.s(["ChevronUp",()=>r.default],472074)},59737,e=>{"use strict";let t=(0,e.i(572989).default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["default",0,t])},194358,e=>{"use strict";let t=(0,e.i(572989).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],194358)},567098,e=>{"use strict";let t=(0,e.i(572989).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["default",0,t])},770303,e=>{"use strict";var t=e.i(289721),r=e.i(965652),n=e.i(514798);let s=(0,n.createServerReference)("403c77e666b3c13997c6409d30a120d1f4a26d203c",n.callServer,void 0,n.findSourceMapURL,"checkExtension");var a=e.i(210404);let i=(0,n.createServerReference)("40312eba13f5edb81b44080732330685cf8e6923f0",n.callServer,void 0,n.findSourceMapURL,"uninstallExtension");var o=e.i(887911);let l={installed:!1},c=(0,r.createContext)(null);e.s(["ExtensionContext",0,c,"ExtensionProvider",0,function({children:e,initialStatus:n}){let[u,d]=(0,r.useState)(()=>n??Object.fromEntries((0,o.listExtensionMetadata)().map(e=>[e.id,l]))),[f,h]=(0,r.useState)(new Set),p=(0,r.useRef)(new Set),m=(0,r.useCallback)(async e=>{let t=await s(e);d(r=>({...r,[e]:t}))},[]),g=(0,r.useCallback)(async e=>{if(p.current.has(e))return{success:!1,error:"install already in progress"};p.current.add(e),h(t=>{let r=new Set(t);return r.add(e),r});try{let t=await (0,a.installExtension)(e);return t.success&&await m(e),t}finally{p.current.delete(e),h(t=>{let r=new Set(t);return r.delete(e),r})}},[m]),y=(0,r.useCallback)(async e=>{if(p.current.has(e))return{success:!1,error:"operation already in progress"};p.current.add(e),h(t=>{let r=new Set(t);return r.add(e),r});try{let t=await i(e);return t.success&&await m(e),t}finally{p.current.delete(e),h(t=>{let r=new Set(t);return r.delete(e),r})}},[m]),b=(0,r.useMemo)(()=>({statusMap:u,loading:!1,installing:f,refresh:m,install:g,uninstall:y}),[u,f,m,g,y]);return(0,t.jsx)(c.Provider,{value:b,children:e})}],770303)},360325,e=>{"use strict";let t=(0,e.i(572989).default)("keyboard",[["path",{d:"M10 8h.01",key:"1r9ogq"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M14 8h.01",key:"1primd"}],["path",{d:"M16 12h.01",key:"1l6xoz"}],["path",{d:"M18 8h.01",key:"emo2bl"}],["path",{d:"M6 8h.01",key:"x9i8wu"}],["path",{d:"M7 16h10",key:"wp8him"}],["path",{d:"M8 12h.01",key:"czm47f"}],["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}]]);e.s(["Keyboard",0,t],360325)},386343,125177,851289,e=>{"use strict";var t=e.i(572989);let r=(0,t.default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);e.s(["Settings",0,r],386343);let n=(0,t.default)("bell",[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]]);e.s(["Bell",0,n],125177);var s=e.i(289721),a=e.i(965652);e.i(508271);var i=e.i(743059),o=e.i(975157);function l({children:e}){return(0,s.jsx)("kbd",{className:(0,o.cn)("inline-flex min-w-[1.5rem] items-center justify-center rounded-md","border border-border bg-muted px-1.5 py-0.5","text-[11px] font-medium leading-none text-foreground","shadow-[inset_0_-1px_0_var(--border)]"),children:e})}e.s(["KeyCombo",0,function({keys:e}){let t=(0,i.compactKeyList)(e);return(0,s.jsx)("span",{className:"inline-flex flex-wrap items-center gap-1.5",children:t.map((e,t)=>(0,s.jsxs)("span",{className:"inline-flex items-center gap-1",children:[t>0&&(0,s.jsx)("span",{className:"text-[11px] text-muted-foreground/40",children:"/"}),(0,i.renderComboTokens)(e).map((e,t)=>(0,s.jsxs)(a.Fragment,{children:[t>0&&(0,s.jsx)("span",{className:"text-[10px] text-muted-foreground/60",children:"+"}),(0,s.jsx)(l,{children:e})]},t))]},`${e}-${t}`))})}],851289)},243288,e=>{e.v(t=>Promise.all(["static/chunks/0c~e1-nst-ze-.js","static/chunks/0ep-qrl_zzch8.js","static/chunks/0rcuiuax31_uh.js","static/chunks/17oc2l.ekcs8b.css"].map(t=>e.l(t))).then(()=>t(346069)))},427768,e=>{e.v(t=>Promise.all(["static/chunks/01j9m895w64zn.js","static/chunks/0o6zqtzz_7ysr.js"].map(t=>e.l(t))).then(()=>t(103363)))}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,69466,e=>{"use strict";e.s([],386333),e.i(386333),e.i(138410),e.i(754274),e.i(119410),e.i(501945),e.i(371141),e.i(650886),e.i(590715),e.i(937878),e.i(62263),e.i(139802);var i=e.i(514798);let r=(0,i.createServerReference)("609be1ada75d6ac936413c50342376443e7f0dbe9b",i.callServer,void 0,i.findSourceMapURL,"revealInFinder");e.s(["revealInFinder",0,r],69466)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,449636,e=>{"use strict";var t=e.i(289721),s=e.i(965652),r=e.i(533499),a=e.i(514798);let n=(0,a.createServerReference)("00654e30c45a893bcd34457b837320ddbd72c76394",a.callServer,void 0,a.findSourceMapURL,"getActiveExecutionsAcrossWorkspaces");var i=e.i(532970);let l=[{id:"1x1",label:"1×1",cols:1,rows:1,minHeight:"480px",desc:"Focus mode"},{id:"2x1",label:"2×1",cols:2,rows:1,minHeight:"480px",desc:"Side by side"},{id:"3x2",label:"3×2",cols:3,rows:2,minHeight:"300px",desc:"Default"},{id:"2x2",label:"2×2",cols:2,rows:2,minHeight:"300px",desc:"Balanced"},{id:"4x2",label:"4×2",cols:4,rows:2,minHeight:"240px",desc:"Wide monitor"},{id:"3x3",label:"3×3",cols:3,rows:3,minHeight:"240px",desc:"Max overview"}];var o=e.i(967489),c=e.i(519455),d=e.i(912505),u=e.i(572989);let m=(0,u.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 x=e.i(360325),h=e.i(746798),p=e.i(540405);function f({cols:e,rows:s,active:r}){let a=Array.from({length:e*s});return(0,t.jsx)("div",{className:`grid gap-[1px] w-7 h-5 p-[3px] rounded-sm border shrink-0 ${r?"border-primary bg-primary/10":"border-border bg-muted"}`,style:{gridTemplateColumns:`repeat(${e}, 1fr)`,gridTemplateRows:`repeat(${s}, 1fr)`},children:a.map((e,s)=>(0,t.jsx)("div",{className:`rounded-[1px] min-w-0 min-h-0 ${r?"bg-primary":"bg-muted-foreground/40"}`},s))})}let g="custom";function j({value:e,customValue:a,onChange:n}){let{t:i}=(0,r.useI18n)(),[o,d]=(0,s.useState)(!1),u=(0,s.useRef)(null),m=e===g,x=m?null:l.find(t=>t.id===e)??l[2],[h,b]=(0,s.useState)(a?.cols??2),[k,v]=(0,s.useState)(a?.rows??2),[w,N]=(0,s.useState)({minCols:1,maxCols:5,minRows:1,maxRows:5});(0,s.useEffect)(()=>{(0,p.getConfigValues)(["missions.grid.minCols","missions.grid.maxCols","missions.grid.minRows","missions.grid.maxRows"]).then(e=>{N({minCols:e["missions.grid.minCols"]??1,maxCols:e["missions.grid.maxCols"]??5,minRows:e["missions.grid.minRows"]??1,maxRows:e["missions.grid.maxRows"]??5})})},[]),(0,s.useEffect)(()=>{a&&(b(a.cols),v(a.rows))},[a?.cols,a?.rows]),(0,s.useEffect)(()=>{if(o)return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e);function e(e){u.current&&!u.current.contains(e.target)&&d(!1)}},[o]);let y=(e,t,s)=>Math.max(t,Math.min(s,e)),C=m?h:x?.cols??2,S=m?k:x?.rows??2,I=m?`${h}\xd7${k}`:x?.label??"";return(0,t.jsxs)("div",{ref:u,className:"relative",children:[(0,t.jsxs)(c.Button,{variant:"outline",onClick:()=>d(e=>!e),className:"gap-2",children:[(0,t.jsx)(f,{cols:C,rows:S,active:!1}),(0,t.jsx)("span",{children:I}),(0,t.jsx)("span",{className:"text-[10px] text-muted-foreground",children:"▼"})]}),o&&(0,t.jsxs)("div",{className:"absolute right-0 z-50 mt-1 w-72 rounded-lg border border-border bg-popover shadow-xl p-3",children:[(0,t.jsx)("h5",{className:"text-sm font-semibold text-foreground mb-3",children:i("missions.gridPreset")}),(0,t.jsxs)("div",{className:"flex flex-col gap-0.5",children:[l.map(s=>{let r=s.id===e;return(0,t.jsxs)("button",{onClick:()=>{n(s.id),d(!1)},className:`flex items-center gap-3 px-3 py-2.5 rounded-lg transition-colors ${r?"bg-primary/10":"hover:bg-accent"}`,children:[(0,t.jsx)(f,{cols:s.cols,rows:s.rows,active:r}),(0,t.jsx)("span",{className:`text-sm font-medium flex-1 text-left ${r?"text-primary":"text-foreground"}`,children:s.label}),(0,t.jsx)("span",{className:`text-xs ${r?"text-primary/60":"text-muted-foreground"}`,children:s.desc})]},s.id)}),(0,t.jsxs)("div",{className:"mt-1 border-t border-border pt-2",children:[(0,t.jsxs)("button",{onClick:()=>{m||n(g,{cols:h,rows:k})},className:`flex items-center gap-3 px-3 py-2.5 rounded-lg transition-colors w-full ${m?"bg-primary/10":"hover:bg-accent"}`,children:[(0,t.jsx)(f,{cols:h,rows:k,active:m}),(0,t.jsx)("span",{className:`text-sm font-medium flex-1 text-left ${m?"text-primary":"text-foreground"}`,children:i("missions.gridCustom")}),(0,t.jsxs)("span",{className:`text-xs ${m?"text-primary/60":"text-muted-foreground"}`,children:[h,"×",k]})]}),m&&(0,t.jsxs)("div",{className:"flex items-center gap-3 px-3 py-2",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground",children:i("missions.gridCols")}),(0,t.jsx)("input",{type:"number",min:w.minCols,max:w.maxCols,value:h,onChange:e=>{let t;b(t=y(Number(e.target.value),w.minCols,w.maxCols)),n(g,{cols:t,rows:k})},className:"h-7 w-14 rounded-md border border-border bg-background px-2 text-sm text-center"})]}),(0,t.jsx)("span",{className:"text-muted-foreground",children:"×"}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground",children:i("missions.gridRows")}),(0,t.jsx)("input",{type:"number",min:w.minRows,max:w.maxRows,value:k,onChange:e=>{let t;v(t=y(Number(e.target.value),w.minRows,w.maxRows)),n(g,{cols:h,rows:t})},className:"h-7 w-14 rounded-md border border-border bg-background px-2 text-sm text-center"})]})]})]})]})]})]})}var b=e.i(585012),k=e.i(670123),v=e.i(759684);let w="123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";function N(e,t,s){return t<=0?0:((e+s)%t+t)%t}function y({open:e,panes:a,selectedIndex:n,onSelect:i,onClose:l}){let{t:o}=(0,r.useI18n)();return((0,s.useEffect)(()=>{if(e)return window.addEventListener("keydown",t,{capture:!0}),()=>window.removeEventListener("keydown",t,{capture:!0});function t(e){if("Escape"===e.key){e.preventDefault(),e.stopPropagation(),l();return}if(e.metaKey||e.ctrlKey||e.altKey||/^[0-9]$/.test(e.key))return;let t=function(e){if(1!==e.length)return null;let t=w.indexOf(e.toUpperCase());return -1===t?null:t}(e.key);null===t||t>=a.length||(e.preventDefault(),e.stopPropagation(),i(t))}},[e,a.length,i,l]),!e||"u"<typeof document)?null:(0,b.createPortal)((0,t.jsxs)("div",{className:"fixed inset-0 z-50",children:[(0,t.jsx)("div",{className:"absolute inset-0 bg-black/10 supports-backdrop-filter:backdrop-blur-xs",onClick:l}),(0,t.jsxs)("div",{role:"dialog","aria-modal":"true",className:"fixed top-1/2 left-1/2 z-50 w-full max-w-[calc(100%-2rem)] sm:max-w-5xl -translate-x-1/2 -translate-y-1/2 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 outline-none",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 pr-8",children:[(0,t.jsx)("span",{className:"font-heading text-base font-medium leading-none",children:o("missions.selector.title")}),(0,t.jsx)("span",{className:"rounded-md bg-muted px-1.5 py-0.5 text-xs font-mono font-medium text-muted-foreground",children:a.length}),(0,t.jsx)("span",{className:"ml-1 truncate text-xs text-muted-foreground",children:o("missions.selector.hint")})]}),(0,t.jsx)(c.Button,{variant:"ghost",size:"icon-sm",className:"absolute top-2 right-2",onClick:l,"aria-label":o("missions.launcher.cancel"),children:(0,t.jsx)(k.XIcon,{})}),(0,t.jsx)(v.ScrollArea,{className:"mt-4 max-h-[60vh]",children:(0,t.jsx)("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-3 pr-3",children:a.map((e,s)=>{let r=s<0||s>=w.length?null:w[s],a=s===n;return(0,t.jsxs)("button",{type:"button",onClick:()=>i(s),className:["flex flex-col gap-2 rounded-lg border bg-card p-3 text-left transition-all hover:border-primary/40 hover:bg-accent/50",a?"border-primary ring-2 ring-inset ring-primary":"border-border"].join(" "),children:[(0,t.jsxs)("span",{className:"block w-full truncate text-[11px] text-muted-foreground",title:`${e.workspaceName} › ${e.projectAlias||e.projectName}`,children:[e.workspaceName," ›"," ",e.projectAlias||e.projectName]}),(0,t.jsx)("div",{className:"flex items-center justify-center py-2",children:(0,t.jsx)("span",{className:["flex h-12 w-12 items-center justify-center rounded-md border text-2xl font-semibold tabular-nums",a?"bg-primary text-primary-foreground border-primary":"bg-muted/80 text-foreground border-border"].join(" "),children:r??"·"})}),(0,t.jsx)("span",{className:"line-clamp-2 text-sm font-medium text-foreground",children:e.taskTitle})]},e.executionId)})})})]})]}),document.body)}var C=e.i(720247),S=e.i(775712),I=e.i(19578),R=e.i(538059),T=e.i(67013);let M=(0,u.default)("grip-vertical",[["circle",{cx:"9",cy:"12",r:"1",key:"1vctgf"}],["circle",{cx:"9",cy:"5",r:"1",key:"hp0tcf"}],["circle",{cx:"9",cy:"19",r:"1",key:"fkjjf6"}],["circle",{cx:"15",cy:"12",r:"1",key:"1tmaij"}],["circle",{cx:"15",cy:"5",r:"1",key:"19l28e"}],["circle",{cx:"15",cy:"19",r:"1",key:"f4zoj3"}]]),A=(0,u.default)("arrow-up-right",[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]]);var E=e.i(657153);let $=(0,u.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 L=e.i(487486),P=e.i(107286),B=e.i(360112);let D=(0,I.default)(()=>e.A(243288).then(e=>e.TaskTerminal),{loadableGenerated:{modules:[346069]},ssr:!1,loading:()=>(0,t.jsx)("div",{className:"h-full w-full bg-[#0a0a0a] animate-pulse"})});function O({execution:e,isRemoving:a,removeReason:n,onStop:i,onSessionEnd:l,index:o,onRegisterControls:d}){let{t:u}=(0,r.useI18n)(),m=(0,R.useRouter)(),{attributes:x,listeners:p,setNodeRef:f,transform:g,transition:j}=(0,S.useSortable)({id:e.executionId}),b={transform:T.CSS.Transform.toString(g),transition:j,opacity:+!a},[k,v]=(0,s.useState)(()=>e.startedAt?Math.floor((Date.now()-new Date(e.startedAt).getTime())/1e3):0);(0,s.useEffect)(()=>{if(a)return;let t=setInterval(()=>{v(e.startedAt?Math.floor((Date.now()-new Date(e.startedAt).getTime())/1e3):0)},1e3);return()=>clearInterval(t)},[e.startedAt,a]);let w=Math.floor(k/60),N=`${w}m ${k%60}s`;async function y(){let t=e.worktreePath??e.projectLocalPath;if(!t)return;let s=e.subPath?`${t}/${e.subPath}`:t;try{await (0,P.openInTerminal)(s)}catch{B.toast.error(u("preview.terminalError"))}}return(0,t.jsxs)("div",{ref:f,style:b,"data-pane-index":o,className:"border border-border rounded-lg overflow-hidden flex flex-col transition-opacity duration-300",...x,children:[(0,t.jsxs)("div",{className:"h-10 px-3 flex items-center gap-1 border-b border-border bg-card shrink-0",children:[(0,t.jsx)("button",{...p,"aria-label":u("missions.dragHandle"),"aria-roledescription":"sortable",className:"cursor-grab text-muted-foreground hover:text-foreground mr-1",children:(0,t.jsx)(M,{className:"h-3.5 w-3.5"})}),(0,t.jsxs)("div",{className:"flex items-center gap-1 min-w-0 flex-1 text-[11px] text-muted-foreground",children:[(0,t.jsxs)("span",{className:"truncate max-w-[45%] shrink-0",title:`${e.workspaceName} › ${e.projectAlias||e.projectName}`,children:[e.workspaceName," ›"," ",e.projectAlias||e.projectName]}),(0,t.jsx)("span",{className:"shrink-0",children:"›"}),(0,t.jsx)("span",{className:"text-foreground font-semibold truncate min-w-0 flex-1",title:e.taskTitle,children:e.taskTitle})]}),a?(0,t.jsx)(L.Badge,{variant:"outline",className:"text-[11px] text-muted-foreground bg-muted ml-1 shrink-0",children:"stopped"===n?u("missions.statusStopped"):u("missions.statusCompleted")}):(0,t.jsx)(L.Badge,{variant:"outline",className:"text-[11px] text-primary border-primary/30 bg-primary/10 ml-1 shrink-0",children:u("missions.statusRunning")}),(0,t.jsx)("span",{className:"text-[11px] text-muted-foreground ml-1 shrink-0",children:N}),e.projectLocalPath&&(0,t.jsxs)(h.Tooltip,{children:[(0,t.jsx)(h.TooltipTrigger,{render:(0,t.jsx)(c.Button,{variant:"ghost",size:"icon",className:"ml-1 shrink-0 text-muted-foreground",onClick:y}),children:(0,t.jsx)($,{className:"h-3.5 w-3.5"})}),(0,t.jsx)(h.TooltipContent,{children:u("missions.openInTerminal")})]}),(0,t.jsxs)(h.Tooltip,{children:[(0,t.jsx)(h.TooltipTrigger,{render:(0,t.jsx)(c.Button,{variant:"ghost",size:"icon",className:"ml-1 shrink-0 text-muted-foreground",onClick:()=>m.push(`/workspaces/${e.workspaceId}/tasks/${e.taskId}`)}),children:(0,t.jsx)(A,{className:"h-3.5 w-3.5"})}),(0,t.jsx)(h.TooltipContent,{children:u("missions.openFullView")})]}),(0,t.jsxs)(h.Tooltip,{children:[(0,t.jsx)(h.TooltipTrigger,{render:(0,t.jsx)(c.Button,{variant:"destructive",size:"icon",className:"ml-1 shrink-0",onClick:()=>i(e.taskId),disabled:a}),children:(0,t.jsx)(E.X,{className:"h-3.5 w-3.5"})}),(0,t.jsx)(h.TooltipContent,{children:u("missions.stopTask")})]})]}),(0,t.jsx)("div",{className:"relative flex-1 overflow-hidden",children:(0,t.jsx)(D,{taskId:e.taskId,worktreePath:e.worktreePath??e.projectLocalPath,onSessionEnd:t=>l?.(e.taskId,t),useCanvasRenderer:!0,onReady:t=>d(e.taskId,t)})})]})}var z=e.i(169751);let H=(0,a.createServerReference)("0084154bf3b55f07270443a00c9aa96dc9957f3347",a.callServer,void 0,a.findSourceMapURL,"getWorkspacesWithActiveTasks");var U=e.i(305049),V=e.i(648542),W=e.i(793479),F=e.i(776639),K=e.i(232280),_=e.i(19671),G=e.i(368490);let X=(0,u.default)("layout-dashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]);var q=e.i(400355);let J=(0,u.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"}]]);var Q=e.i(922541),Y=e.i(738690);function Z(e){return(e.labels?.length??0)>0}let ee={TODO:"TODO",IN_PROGRESS:"Running",IN_REVIEW:"Review"},et={LOW:"Low",MEDIUM:"Med",HIGH:"High",CRITICAL:"Crit"};function es({status:e}){return(0,t.jsx)("span",{className:`text-[10px] px-1.5 py-0.5 rounded font-medium ${{TODO:"bg-slate-100 text-slate-600 dark:bg-slate-800 dark:text-slate-400",IN_PROGRESS:"bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-400",IN_REVIEW:"bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400"}[e]??"bg-slate-100 text-slate-600"}`,children:ee[e]??e})}function er({task:e,isRunning:s,launchingId:r,onLaunchNew:a,onResume:n,t:i}){let l=e.executions?.[0]?.sessionId,o=r===e.id;return(0,t.jsxs)("div",{className:"group/task grid grid-cols-[minmax(0,1fr)_auto] items-center gap-2 px-3 py-1.5 hover:bg-accent/50 cursor-default",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("p",{className:`text-sm truncate ${s?"italic text-muted-foreground":""}`,children:e.title}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5 mt-0.5",children:[(0,t.jsx)(es,{status:e.status}),(0,t.jsx)("span",{className:"text-[10px] text-muted-foreground",children:et[e.priority]??e.priority})]})]}),s?(0,t.jsx)("span",{className:"text-[10px] italic text-muted-foreground",children:i("missions.alreadyMonitored")}):(0,t.jsxs)("div",{className:"flex items-center gap-1 opacity-0 group-hover/task:opacity-100 transition-opacity",children:[l&&(0,t.jsxs)(c.Button,{variant:"outline",className:"h-6 px-2 text-xs",onClick:()=>n(e.id,l),disabled:o,title:i("missions.continueSession"),children:[(0,t.jsx)(Q.RotateCcw,{className:"h-3 w-3 mr-1"}),i("missions.continueLabel")]}),(0,t.jsxs)(c.Button,{variant:"outline",className:"h-6 px-2 text-xs",onClick:()=>a(e.id),disabled:o,title:i("missions.launchNew"),children:[(0,t.jsx)(J,{className:"h-3 w-3 mr-1"}),o?"...":i("missions.launchNewLabel")]})]})]})}function ea({task:e,isRunning:s,launchingId:r,onLaunchNew:a,onResume:n,t:i}){let l=e.executions?.[0]?.sessionId,o=r===e.id;return(0,t.jsx)("div",{className:"shrink-0 border-b bg-muted/40 px-3 py-2",children:(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsxs)("div",{className:"flex min-w-0 items-center gap-1.5",children:[(0,t.jsx)(X,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,t.jsx)("span",{className:"truncate text-xs font-medium",children:i("missions.workbench.title")})]}),s?(0,t.jsx)("span",{className:"text-[10px] italic text-muted-foreground",children:i("missions.alreadyMonitored")}):(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[l&&(0,t.jsxs)(c.Button,{variant:"outline",className:"h-6 px-2 text-xs",onClick:()=>n(e.id,l),disabled:o,title:i("missions.continueSession"),children:[(0,t.jsx)(Q.RotateCcw,{className:"h-3 w-3 mr-1"}),i("missions.continueLabel")]}),(0,t.jsxs)(c.Button,{variant:"outline",className:"h-6 px-2 text-xs",onClick:()=>a(e.id),disabled:o,title:i("missions.launchNew"),children:[(0,t.jsx)(J,{className:"h-3 w-3 mr-1"}),o?"...":i("missions.launchNewLabel")]})]})]})})}function en({open:e,onOpenChange:a,onLaunched:n,runningTaskIds:i=new Set}){let{t:l}=(0,r.useI18n)(),[o,d]=(0,s.useState)([]),[u,m]=(0,s.useState)(!1),[x,h]=(0,s.useState)(null),[p,f]=(0,s.useState)(""),[g,j]=(0,s.useState)(new Set),[b,k]=(0,s.useState)(""),[w,N]=(0,s.useState)(0),y=(0,s.useMemo)(()=>o.map(e=>({...e,projects:e.projects.filter(e=>e.tasks.length>0)})).filter(e=>e.projects.length>0),[o]);(0,s.useEffect)(()=>{e&&(m(!0),f(""),N(0),H().then(e=>{d(e);let t=e.map(e=>({...e,projects:e.projects.filter(e=>e.tasks.length>0)})).find(e=>e.projects.length>0);j(t?new Set([t.id]):new Set),k(t?.projects[0]?.id??"")}).catch(()=>B.toast.error(l("missions.error.launchFailed"))).finally(()=>m(!1)))},[e,l]);let C=(0,s.useCallback)(e=>{j(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),s})},[]),S=(0,s.useCallback)(e=>{k(e),N(0)},[]),I=(0,s.useMemo)(()=>{let e=[];for(let t of y)for(let s of t.projects)for(let r of s.tasks)e.push({task:r,workspaceName:t.name,projectName:s.alias??s.name,projectId:s.id});return e},[y]),R=(0,s.useMemo)(()=>new z.default(I,{keys:["task.title"],threshold:.4,distance:200}),[I]),T=p.trim().length>0,M=(0,s.useMemo)(()=>{let e=p.trim();if(!e)return[];let t=R.search(e).map(e=>e.item),s=[],r=new Map;for(let e of t){let t=r.get(e.projectId);t||(t={workspaceName:e.workspaceName,projectName:e.projectName,tasks:[]},r.set(e.projectId,t),s.push(e.projectId)),t.tasks.push(e.task)}return s.map(e=>({id:e,...r.get(e)}))},[R,p]),A=(0,s.useMemo)(()=>I.length?y.flatMap(e=>e.projects).find(e=>e.id===b):void 0,[y,b,I.length]),$=(0,s.useMemo)(()=>A?.tasks.find(Z),[A]),L=(0,s.useMemo)(()=>A?.tasks.filter(e=>!Z(e))??[],[A]),P=Math.max(1,Math.ceil(L.length/10)),D=Math.min(w,P-1),O=L.slice(10*D,10*D+10),X=(0,s.useCallback)(async e=>{try{h(e),await (0,U.startPtyExecution)(e,""),n(e),a(!1)}catch{B.toast.error(l("missions.error.launchFailed"))}finally{h(null)}},[n,a,l]),J=(0,s.useCallback)(async(e,t)=>{try{h(e),await (0,V.resumePtyExecution)(e,t),n(e),a(!1)}catch{B.toast.error(l("missions.error.launchFailed"))}finally{h(null)}},[n,a,l]);return(0,t.jsx)(F.Dialog,{open:e,onOpenChange:a,children:(0,t.jsxs)(F.DialogContent,{className:"sm:max-w-3xl flex h-[80vh] max-h-[640px] flex-col gap-0 overflow-hidden p-0",children:[(0,t.jsx)(F.DialogHeader,{className:"shrink-0 border-b px-4 py-3",children:(0,t.jsx)(F.DialogTitle,{children:l("missions.launchTask")})}),(0,t.jsx)("div",{className:"shrink-0 border-b px-4 py-3",children:(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)(Y.Search,{className:"absolute left-2 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),(0,t.jsx)(W.Input,{value:p,onChange:e=>f(e.target.value),placeholder:l("missions.fullPicker.searchPlaceholder"),className:"pl-8 pr-8 h-8"}),p&&(0,t.jsx)(c.Button,{type:"button",variant:"ghost",size:"icon",className:"absolute right-1 top-1/2 -translate-y-1/2 h-6 w-6",onClick:()=>f(""),"aria-label":l("missions.fullPicker.clearSearch"),children:(0,t.jsx)(E.X,{className:"h-3.5 w-3.5"})})]})}),u?(0,t.jsx)("div",{className:"flex flex-1 items-center justify-center text-muted-foreground",children:(0,t.jsx)(q.Loader2,{className:"h-5 w-5 animate-spin"})}):0===y.length?(0,t.jsx)("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:l("missions.noAvailableTasks")}):T?(0,t.jsx)(v.ScrollArea,{className:"flex-1 min-h-0",children:0===M.length?(0,t.jsx)("p",{className:"text-sm text-muted-foreground text-center py-8",children:l("missions.fullPicker.noSearchResults")}):(0,t.jsx)("div",{className:"py-1",children:M.map(e=>(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"px-3 pt-2 pb-1 text-[11px] font-medium text-muted-foreground",children:[e.workspaceName," · ",e.projectName]}),e.tasks.map(e=>(0,t.jsx)(er,{task:e,isRunning:i.has(e.id),launchingId:x,onLaunchNew:X,onResume:J,t:l},e.id))]},e.id))})}):(0,t.jsxs)("div",{className:"flex flex-1 min-h-0",children:[(0,t.jsx)("aside",{className:"w-52 shrink-0 border-r",children:(0,t.jsx)(v.ScrollArea,{className:"h-full",children:(0,t.jsx)("div",{className:"py-1",children:y.map(e=>{let s=g.has(e.id);return(0,t.jsxs)("div",{children:[(0,t.jsxs)(c.Button,{variant:"ghost",onClick:()=>C(e.id),className:"flex h-auto w-full justify-start gap-1 rounded-none px-2 py-1.5 hover:bg-accent",children:[s?(0,t.jsx)(K.ChevronDown,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}):(0,t.jsx)(G.ChevronRight,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,t.jsx)("span",{className:"truncate text-[11px] font-semibold uppercase tracking-wider text-muted-foreground",children:e.name})]}),s&&e.projects.map(e=>{let s=e.id===b;return(0,t.jsxs)(c.Button,{variant:"ghost",onClick:()=>S(e.id),className:`flex h-auto w-full justify-start gap-2 rounded-none py-1.5 pl-7 pr-2 hover:bg-accent ${s?"bg-accent":""}`,children:[(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate text-left text-xs font-medium",children:e.alias??e.name}),(0,t.jsx)("span",{className:"shrink-0 text-[10px] text-muted-foreground",children:e._count.tasks})]},e.id)})]},e.id)})})})}),(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[$&&(0,t.jsx)(ea,{task:$,isRunning:i.has($.id),launchingId:x,onLaunchNew:X,onResume:J,t:l}),(0,t.jsx)(v.ScrollArea,{className:"flex-1 min-h-0",children:0===O.length?(0,t.jsx)("p",{className:"text-sm text-muted-foreground text-center py-8",children:l("missions.launcher.noTasks")}):(0,t.jsx)("div",{className:"py-1",children:O.map(e=>(0,t.jsx)(er,{task:e,isRunning:i.has(e.id),launchingId:x,onLaunchNew:X,onResume:J,t:l},e.id))})}),L.length>0&&(0,t.jsxs)("div",{className:"flex shrink-0 items-center justify-center gap-3 border-t px-3 py-2",children:[(0,t.jsx)(c.Button,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>N(e=>Math.max(0,e-1)),disabled:D<=0,"aria-label":l("missions.picker.prevPage"),children:(0,t.jsx)(_.ChevronLeft,{className:"h-4 w-4"})}),(0,t.jsxs)("span",{className:"text-xs text-muted-foreground tabular-nums",children:[D+1," / ",P]}),(0,t.jsx)(c.Button,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>N(e=>Math.min(P-1,e+1)),disabled:D>=P-1,"aria-label":l("missions.picker.nextPage"),children:(0,t.jsx)(G.ChevronRight,{className:"h-4 w-4"})})]})]})]})]})})}e.i(508271);var ei=e.i(841359);e.s(["MissionsClient",0,function({initialExecutions:e}){let{t:a}=(0,r.useI18n)(),[u,p]=(0,s.useState)(e),[f,g]=(0,s.useState)(()=>localStorage.getItem("missions-grid-preset")??"3x2"),[b,k]=(0,s.useState)(()=>{try{let e=localStorage.getItem("missions-grid-custom");if(e){let t=JSON.parse(e);if("number"==typeof t?.cols&&"number"==typeof t?.rows)return{cols:Math.max(1,Math.min(10,t.cols)),rows:Math.max(1,Math.min(10,t.rows))}}}catch{}return{cols:2,rows:2}}),[v,w]=(0,s.useState)(!1),[I,R]=(0,s.useState)(""),[T,M]=(0,s.useState)("input"),[A,E]=(0,s.useState)(0),$=(0,s.useRef)(new Map),L=(0,s.useRef)([]),P=(0,s.useRef)(2),D=(0,s.useRef)(A);D.current=A;let z=(0,s.useCallback)((e,t)=>{t?$.current.set(e,t):$.current.delete(e)},[]),[H,U]=(0,s.useState)(new Map),V=(0,s.useRef)(H);(0,s.useEffect)(()=>{V.current=H},[H]);let W=(0,s.useRef)(new Map),F=l.find(e=>e.id===f)??l[2],K="custom"===f?b.cols:F.cols,_="custom"===f?b.rows:F.rows,G=(0,s.useRef)(null),[X,q]=(0,s.useState)("480px");(0,s.useEffect)(()=>{let e=G.current;if(!e)return;let t=()=>{let t=(e.clientHeight-32-16*(_-1))/_;q(`${Math.max(t,200)}px`)};t();let s=new ResizeObserver(t);return s.observe(e),()=>s.disconnect()},[_]);let J=(0,s.useCallback)((e,t)=>{e&&(g(e),localStorage.setItem("missions-grid-preset",e),"custom"===e&&t&&(k(t),localStorage.setItem("missions-grid-custom",JSON.stringify(t))))},[]),Q=(0,C.useSensors)((0,C.useSensor)(C.PointerSensor,{activationConstraint:{distance:8}})),Y=(0,s.useCallback)(e=>{let{active:t,over:s}=e;s&&t.id!==s.id&&p(e=>{let r=e.findIndex(e=>e.executionId===t.id),a=e.findIndex(e=>e.executionId===s.id);return(0,S.arrayMove)(e,r,a)})},[]),Z=(0,s.useCallback)((e,t)=>{if(V.current.has(e))return;U(s=>new Map([...s,[e,t]]));let s=setTimeout(()=>{p(t=>t.filter(t=>t.executionId!==e)),U(t=>{let s=new Map(t);return s.delete(e),s}),W.current.delete(e)},500);W.current.set(e,s)},[]);(0,s.useEffect)(()=>{let e=setInterval(async()=>{try{let e=await n();p(t=>{let s=V.current,{merged:r,goneIds:a}=function({prev:e,fresh:t,removingIds:s}){let r=new Set(t.map(e=>e.executionId)),a=[];e.forEach(e=>{r.has(e.executionId)||s.has(e.executionId)||a.push(e.executionId)});let n=e.filter(e=>r.has(e.executionId)||s.has(e.executionId)),i=new Set(e.map(e=>e.executionId));return{merged:[...n,...t.filter(e=>!i.has(e.executionId))],goneIds:a}}({prev:t,fresh:e,removingIds:new Set(s.keys())});return a.forEach(e=>Z(e,"completed")),r})}catch{}},4e3);return()=>clearInterval(e)},[Z]),(0,s.useEffect)(()=>{let e=W.current;return()=>{e.forEach(e=>clearTimeout(e))}},[]);let ee=(0,s.useCallback)(async e=>{try{await (0,i.stopPtyExecution)(e),p(t=>{let s=t.find(t=>t.taskId===e);return s&&Z(s.executionId,"stopped"),t})}catch{B.toast.error(a("missions.error.stopFailed"))}},[Z,a]),et=(0,s.useCallback)((e,t)=>{p(t=>{let s=t.find(t=>t.taskId===e);return s&&Z(s.executionId,"completed"),t})},[Z]),es=(0,s.useCallback)(e=>{n().then(e=>{p(t=>{let s=new Set(t.map(e=>e.executionId));return[...t,...e.filter(e=>!s.has(e.executionId))]})}).catch(()=>{})},[]),er=(0,s.useCallback)(e=>{let t=L.current;e<0||e>=t.length||(t[e]?.focus(),E(e),M("input"),G.current?.querySelector(`[data-pane-index="${e}"]`)?.scrollIntoView({block:"nearest",inline:"nearest",behavior:"instant"}))},[]),ea=(0,s.useCallback)(()=>{let e=document.activeElement;e instanceof HTMLElement&&e.blur(),L.current[D.current]?.blur(),M("nav")},[]),el=(0,s.useCallback)(()=>{er(D.current)},[er]),eo=(0,s.useCallback)(()=>{"input"===T?ea():el()},[T,ea,el]),ec=(0,s.useCallback)(()=>{let e=L.current.length;0!==e&&er(N(D.current,e,1))},[er]),ed=(0,s.useCallback)(()=>{let e=L.current.length;0!==e&&er(N(D.current,e,-1))},[er]),eu=(0,s.useCallback)(e=>{let t=L.current.length;0!==t&&(M("nav"),E(s=>(function(e,t,s,r){if(s<=0)return 0;let a=Math.max(1,t);switch(r){case"left":return N(e,s,-1);case"right":return N(e,s,1);case"up":{let t=e-a;return t<0?e:t}case"down":{let t=e+a;return t>=s?e:t}default:return e}})(s,P.current,t,e)))},[]),em=(0,s.useCallback)(e=>{let t=L.current.length;0!==t&&(M("nav"),E(s=>N(s,t,e)))},[]);(0,ei.useActionShortcut)("missions.jump",e=>{let t=Number(e.key);Number.isInteger(t)&&t>=1&&er(t-1)}),(0,ei.useActionShortcut)("missions.moveSelection",e=>{eu("ArrowUp"===e.key?"up":"ArrowDown"===e.key?"down":"ArrowLeft"===e.key?"left":"right")}),(0,ei.useActionShortcut)("missions.cycle",()=>em(1)),(0,ei.useActionShortcut)("missions.cycleBack",()=>em(-1)),(0,ei.useActionShortcut)("missions.focus",()=>el()),(0,ei.useActionShortcut)("missions.next",()=>ec()),(0,ei.useActionShortcut)("missions.prev",()=>ed()),(0,ei.useActionShortcut)("missions.exit",()=>ea()),(0,s.useEffect)(()=>{let e=G.current;if(!e)return;let t=e=>{let t=e.target,s=t?.closest("[data-pane-index]");if(!s)return;let r=Number(s.dataset.paneIndex);Number.isInteger(r)&&(E(r),M("input"))};return e.addEventListener("focusin",t),()=>e.removeEventListener("focusin",t)},[]);let ex=Array.from(new Map(u.map(e=>[e.workspaceId,e.workspaceName])).entries()).map(([e,t])=>({id:e,name:t})),eh=I?u.filter(e=>e.workspaceId===I):u;L.current=eh.map(e=>$.current.get(e.taskId)).filter(e=>!!e),P.current=K,(0,s.useEffect)(()=>{E(e=>{let t=eh.length;return 0===t?0:Math.min(e,t-1)})},[eh.length]);let ep=new Set(u.map(e=>e.taskId));return(0,t.jsxs)("div",{className:"flex h-full flex-col",children:[(0,t.jsxs)("div",{className:"header-sm shrink-0 px-4 flex items-center gap-3",children:[(0,t.jsx)("h1",{className:"text-base font-semibold",children:a("missions.pageTitle")}),(0,t.jsxs)(h.Tooltip,{children:[(0,t.jsxs)(h.TooltipTrigger,{render:(0,t.jsx)(c.Button,{variant:"ghost",className:`h-7 gap-1.5 px-2 shrink-0 text-xs font-medium text-muted-foreground ${"nav"===T?"bg-accent text-foreground":""}`,onClick:eo,disabled:0===eh.length}),children:[(0,t.jsx)(x.Keyboard,{className:"h-3.5 w-3.5"}),"input"===T?a("missions.mode.input"):a("missions.mode.nav")]}),(0,t.jsx)(h.TooltipContent,{className:"max-w-xs",children:a("missions.mode.toggleHint")})]}),(0,t.jsxs)(o.Select,{value:I,onValueChange:e=>R(e??""),children:[(0,t.jsx)(o.SelectTrigger,{className:"w-36 h-8",children:(0,t.jsx)("span",{className:"truncate",children:I?ex.find(e=>e.id===I)?.name??a("missions.filterAll"):a("missions.filterAll")})}),(0,t.jsxs)(o.SelectContent,{children:[(0,t.jsx)(o.SelectItem,{value:"",children:a("missions.filterAll")}),ex.map(e=>(0,t.jsx)(o.SelectItem,{value:e.id,children:e.name},e.id))]})]}),(0,t.jsx)("div",{className:"flex-1"}),(0,t.jsx)(j,{value:f,customValue:b,onChange:J}),(0,t.jsx)(c.Button,{onClick:()=>w(!0),children:a("missions.launchTask")}),(0,t.jsx)(en,{open:v,onOpenChange:w,onLaunched:es,runningTaskIds:ep})]}),(0,t.jsx)("div",{ref:G,className:"flex-1 overflow-auto min-h-0 p-4",children:0===eh.length&&0===H.size?(0,t.jsx)(d.EmptyState,{icon:m,title:a("missions.emptyTitle"),description:a("missions.emptyDesc"),className:"h-full",action:(0,t.jsx)(c.Button,{onClick:()=>w(!0),children:a("missions.launchTask")})}):(0,t.jsx)(C.DndContext,{id:"missions-dnd",sensors:Q,collisionDetection:C.closestCenter,onDragEnd:Y,children:(0,t.jsx)(S.SortableContext,{items:eh.map(e=>e.executionId),strategy:S.rectSortingStrategy,children:(0,t.jsx)("div",{className:"grid gap-4",style:{gridTemplateColumns:`repeat(${K}, 1fr)`,gridAutoRows:X},children:eh.map((e,s)=>(0,t.jsx)(O,{execution:e,isRemoving:H.has(e.executionId),removeReason:H.get(e.executionId),onStop:ee,onSessionEnd:et,index:s,onRegisterControls:z},e.executionId))})})})}),(0,t.jsx)(y,{open:"nav"===T,panes:eh,selectedIndex:A,onSelect:er,onClose:el})]})}],449636)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,245697,e=>{"use strict";let t=(0,e.i(572989).default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);e.s(["Package",0,t],245697)},368490,e=>{"use strict";var t=e.i(776405);e.s(["ChevronRight",()=>t.default])},19671,e=>{"use strict";let t=(0,e.i(572989).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);e.s(["ChevronLeft",0,t],19671)},567860,e=>{"use strict";let t=(0,e.i(572989).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",0,t],567860)},259846,e=>{"use strict";let t=(0,e.i(572989).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],259846)},35967,e=>{"use strict";var t=e.i(289721);let a=(0,e.i(572989).default)("milestone",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M12 3v3",key:"1n5kay"}],["path",{d:"M18.172 6a2 2 0 0 1 1.414.586l2.06 2.06a1.207 1.207 0 0 1 0 1.708l-2.06 2.06a2 2 0 0 1-1.414.586H4a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1z",key:"8gz4t4"}]]);var r=e.i(533499);let s=["bg-sky-500/20 text-sky-300 border border-sky-500/30","bg-amber-500/20 text-amber-300 border border-amber-500/30","bg-violet-500/20 text-violet-300 border border-violet-500/30","bg-emerald-500/20 text-emerald-300 border border-emerald-500/30","bg-rose-500/20 text-rose-300 border border-rose-500/30","bg-cyan-500/20 text-cyan-300 border border-cyan-500/30","bg-indigo-500/20 text-indigo-300 border border-indigo-500/30"];function n(e){return s[function(e){let t=0;for(let a=0;a<e.length;a++)t=31*t+e.charCodeAt(a)>>>0;return t}(e)%s.length]}let l={PLANNED:"bg-slate-500/20 text-slate-300 border border-slate-500/30",ACTIVE:"bg-emerald-500/20 text-emerald-300 border border-emerald-500/30",RELEASED:"bg-zinc-500/20 text-zinc-400 border border-zinc-500/30"};e.s(["TaskVersionTag",0,function({number:e,name:r,showName:s=!1,className:n="",title:l}){return(0,t.jsxs)("span",{className:`inline-flex items-center gap-1 rounded-md border border-border bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground ${n}`,title:l??(r?`${e} \xb7 ${r}`:e),children:[(0,t.jsx)(a,{className:"h-2.5 w-2.5 shrink-0"}),(0,t.jsx)("span",{className:"font-mono",children:e}),s&&r?(0,t.jsx)("span",{className:"max-w-[140px] truncate",children:r}):null]})},"VersionStatusBadge",0,function({status:e}){let{t:a}=(0,r.useI18n)();return(0,t.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${l[e]}`,children:a(`version.status.${e}`)})},"VersionTypeBadge",0,function({name:e}){let{t:a}=(0,r.useI18n)();return e?(0,t.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${n(e)}`,children:e}):(0,t.jsx)("span",{className:"inline-flex items-center rounded-full border border-border bg-muted/40 px-2 py-0.5 text-xs font-medium text-muted-foreground",children:a("version.type.uncategorized")})},"typeBadgeColor",0,n],35967)},910119,344083,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("401a0b53b020a460f0aed044a7c1bf9ac975a217b1",t.callServer,void 0,t.findSourceMapURL,"openInFileManager");e.s(["openInFileManager",0,a],910119);let r=(0,t.createServerReference)("4004a88ffb826fc2973f7a4e6d046ea21a468a9e8f",t.callServer,void 0,t.findSourceMapURL,"openInEditor");e.s(["openInEditor",0,r],344083)},12659,e=>{"use strict";let t=(0,e.i(572989).default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["PlayCircle",0,t],12659)},736061,460707,e=>{"use strict";var t=e.i(572989);let a=(0,t.default)("folder-search",[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]]);e.s(["FolderSearch",0,a],736061);let r=(0,t.default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);e.s(["Code",0,r],460707)},867533,e=>{"use strict";let t=(0,e.i(572989).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);e.s(["Eye",0,t],867533)},540405,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("403fb9aba477474068caa46d6c3fa942de05b4edb6",t.callServer,void 0,t.findSourceMapURL,"getConfigValues");e.s(["getConfigValues",0,a])},110204,e=>{"use strict";var t=e.i(289721),a=e.i(975157);e.s(["Label",0,function({className:e,...r}){return(0,t.jsx)("label",{"data-slot":"label",className:(0,a.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})}])},875840,e=>{"use strict";let t=(0,e.i(572989).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",0,t],875840)},254826,309735,e=>{"use strict";var t=e.i(990216);e.s([],254826),e.s(["Streamdown",()=>t.C],309735)},685149,e=>{"use strict";e.s(["BOARD_COLUMNS",0,[{id:"TODO",label:"To Do",color:"bg-slate-400"},{id:"IN_PROGRESS",label:"In Progress",color:"bg-amber-400"},{id:"IN_REVIEW",label:"In Review",color:"bg-sky-400"},{id:"DONE",label:"Done",color:"bg-emerald-400"},{id:"CANCELLED",label:"Cancelled",color:"bg-rose-400"}],"NOTE_CATEGORIES_PRESET",0,["账号","环境","需求","备忘","任务笔记","经验洞见"],"PRIORITY_CONFIG",0,{LOW:{label:"低",color:"bg-slate-500/20 text-slate-300 border border-slate-500/30"},MEDIUM:{label:"中",color:"bg-amber-500/20 text-amber-300 border border-amber-500/30"},HIGH:{label:"高",color:"bg-orange-500/20 text-orange-300 border border-orange-500/30"},CRITICAL:{label:"紧急",color:"bg-rose-500/20 text-rose-300 border border-rose-500/30"}},"TOWER_LABEL_NAME",0,"Tower"])},456346,419355,51517,e=>{"use strict";let t=(0,e.i(572989).default)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]);e.s(["ChevronsUpDown",0,t],456346);var a=e.i(514798);let r=(0,a.createServerReference)("400d6f299d957c2738b8385cf76acfa613b4e40c23",a.callServer,void 0,a.findSourceMapURL,"getProjectBranches");e.s(["getProjectBranches",0,r],419355);let s=(0,a.createServerReference)("405ea1a33bdc8d4de8dd77a7658e251d0c5ea666da",a.callServer,void 0,a.findSourceMapURL,"fetchRemoteBranches");e.s(["fetchRemoteBranches",0,s],51517)},788147,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("401a8edde46c5000efe8ad48c7362805f155b29000",t.callServer,void 0,t.findSourceMapURL,"createTask");e.s(["createTask",0,a])},13517,727188,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("40ca267cfc9bea6b8e39ed9929c2f6155c72a52450",t.callServer,void 0,t.findSourceMapURL,"getTaskNotes");e.s(["getTaskNotes",0,a],13517);let r=(0,t.createServerReference)("4044de41c35107216ec541819870d98be7659bd39c",t.callServer,void 0,t.findSourceMapURL,"getTaskAssets");e.s(["getTaskAssets",0,r],727188)},744798,e=>{"use strict";var t=e.i(289721),a=e.i(965652),r=e.i(776639),s=e.i(519455),n=e.i(793479),l=e.i(624687),i=e.i(110204),o=e.i(226145),c=e.i(597746),d=e.i(456346),u=e.i(967489),x=e.i(337822),m=e.i(317056),h=e.i(533499),p=e.i(419355),g=e.i(51517),f=e.i(514798);let b=(0,f.createServerReference)("4004455e994abc095eb423df357e843bc62b614720",f.callServer,void 0,f.findSourceMapURL,"getCurrentBranch");var v=e.i(540405);e.s(["CreateTaskDialog",0,function({open:e,onOpenChange:f,onSubmit:y,onUpdate:j,defaultStatus:k="TODO",editTask:w,editTaskLabelIds:N,prefillFromTask:C,labels:S,projectType:I,projectLocalPath:D,versions:T,defaultVersionId:P}){let E,[M,L]=(0,a.useState)(""),[R,O]=(0,a.useState)(""),[$,B]=(0,a.useState)("MEDIUM"),[A,F]=(0,a.useState)(""),[U,_]=(0,a.useState)([]),[z,H]=(0,a.useState)([]),[V,G]=(0,a.useState)(!1),[W,Y]=(0,a.useState)(""),[X,J]=(0,a.useState)(!1),[K,q]=(0,a.useState)(!0),[Q,Z]=(0,a.useState)(!1),[ee,et]=(0,a.useState)(null),{t:ea}=(0,h.useI18n)();(0,a.useEffect)(()=>{if(!e||w)return;let t=!1;return(0,v.getConfigValues)(["task.defaultUseWorktree","task.defaultAutoStart"]).then(e=>{if(t)return;let a=e["task.defaultUseWorktree"],r=e["task.defaultAutoStart"];"boolean"==typeof a&&q(a),"boolean"==typeof r&&Z(r)}).catch(()=>{}),()=>{t=!0}},[e,w]);let er=!!w,es=!!D;return(0,a.useEffect)(()=>{w?(L(w.title),O(w.description??""),B(w.priority),F(w.subPath??""),_(N??[]),et(w.versionId??null)):(C?(L(C.title??""),O(C.description??""),B(C.priority??"MEDIUM"),F(C.subPath??""),_(C.labelIds??[])):(L(""),O(""),B("MEDIUM"),F(""),_([])),et(P??null))},[w,N,C,P]),(0,a.useEffect)(()=>{e||w||(L(""),O(""),B("MEDIUM"),F(""),_([]),H([]),Y(""),J(!1),et(P??null))},[e,w,P]),(0,a.useEffect)(()=>{e&&es&&!w&&(G(!0),Promise.all([(0,p.getProjectBranches)(D),b(D)]).then(([e,t])=>{H(e);let a=C?.baseBranch??null;a&&e.includes(a)?Y(a):Y(t&&e.includes(t)?t:e[0]??""),G(!1),(0,g.fetchRemoteBranches)(D).then(()=>{setTimeout(()=>{(0,p.getProjectBranches)(D).then(e=>{H(e),Y(t=>e.includes(t)?t:e[0]??"")}).catch(()=>{})},3e3)})}).catch(()=>{H([]),Y(""),G(!1)}))},[e,es,D,w,C]),(0,t.jsx)(r.Dialog,{open:e,onOpenChange:f,disablePointerDismissal:!0,children:(0,t.jsxs)(r.DialogContent,{className:"sm:max-w-md",children:[(0,t.jsx)(r.DialogHeader,{children:(0,t.jsx)(r.DialogTitle,{children:er?ea("task.edit"):ea("task.create")})}),(0,t.jsxs)("div",{className:"space-y-4 py-2",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(i.Label,{htmlFor:"title",children:ea("task.title")}),(0,t.jsx)(n.Input,{id:"title","data-testid":"task-title",placeholder:ea("task.titlePlaceholder"),value:M,onChange:e=>L(e.target.value),onKeyDown:e=>"Enter"===e.key&&e.preventDefault()})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(i.Label,{htmlFor:"description",children:ea("task.description")}),(0,t.jsx)(l.Textarea,{id:"description",placeholder:ea("task.descPlaceholder"),rows:4,value:R,onChange:e=>O(e.target.value),className:"max-h-[200px] overflow-y-auto"})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(i.Label,{htmlFor:"subPath",children:ea("task.subPath")}),(0,t.jsx)(n.Input,{id:"subPath",placeholder:ea("task.subPathPlaceholder"),value:A,onChange:e=>F(e.target.value)}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:ea("task.subPathHint")})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(i.Label,{children:ea("task.priority")}),(0,t.jsx)("div",{className:"flex gap-1.5",children:["LOW","MEDIUM","HIGH","CRITICAL"].map(e=>{let a={LOW:{label:ea("task.priorityLow"),style:"text-slate-300 border-slate-500/30 bg-slate-500/10"},MEDIUM:{label:ea("task.priorityMedium"),style:"text-amber-300 border-amber-500/30 bg-amber-500/10"},HIGH:{label:ea("task.priorityHigh"),style:"text-orange-300 border-orange-500/30 bg-orange-500/10"},CRITICAL:{label:ea("task.priorityCritical"),style:"text-rose-300 border-rose-500/30 bg-rose-500/10"}}[e];return(0,t.jsx)("button",{type:"button",onClick:()=>B(e),className:`rounded-lg border px-3 py-1.5 text-xs font-medium transition-all ${$===e?`${a.style} ring-1 ring-current/20`:"border-border text-muted-foreground hover:bg-accent"}`,children:a.label},e)})})]}),es&&!er&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(i.Label,{children:ea("task.baseBranch")}),V?(0,t.jsx)("div",{className:"text-sm text-muted-foreground",children:ea("task.branchLoading")}):z.length>0?(0,t.jsxs)(x.Popover,{open:X,onOpenChange:J,children:[(0,t.jsxs)(x.PopoverTrigger,{className:"flex w-full items-center gap-2 rounded-md border border-input bg-background px-3 py-2 text-sm font-mono transition-colors hover:bg-accent focus:outline-none focus:ring-1 focus:ring-ring","data-testid":"branch-selector",children:[(0,t.jsx)(o.GitBranch,{className:"h-3.5 w-3.5 text-muted-foreground shrink-0"}),(0,t.jsx)("span",{className:"flex-1 truncate text-left text-xs",title:W||void 0,children:W||ea("task.branchNone")}),(0,t.jsx)(d.ChevronsUpDown,{className:"h-3.5 w-3.5 shrink-0 opacity-50"})]}),(0,t.jsx)(x.PopoverContent,{className:"w-[min(32rem,90vw)] p-0",align:"start",children:(0,t.jsxs)(m.Command,{children:[(0,t.jsx)(m.CommandInput,{placeholder:ea("task.branchSearch")}),(0,t.jsxs)(m.CommandList,{children:[(0,t.jsx)(m.CommandEmpty,{children:ea("task.branchNone")}),(0,t.jsx)(m.CommandGroup,{children:z.map(e=>(0,t.jsxs)(m.CommandItem,{value:e,onSelect:()=>{Y(e),J(!1)},children:[(0,t.jsx)(o.GitBranch,{className:"h-3 w-3 text-muted-foreground shrink-0 mr-2"}),(0,t.jsx)("span",{className:"flex-1 truncate font-mono",title:e,children:e}),e===W&&(0,t.jsx)(c.Check,{className:"h-3 w-3 text-primary shrink-0 ml-auto"})]},e))})]})]})})]}):(0,t.jsx)("div",{className:"text-sm text-muted-foreground",children:ea("task.branchNone")}),(0,t.jsxs)("div",{className:"mt-3 flex items-center gap-2",children:[(0,t.jsx)(i.Label,{className:"text-xs text-muted-foreground",children:ea("task.worktreeLabel")}),(0,t.jsx)("div",{className:"flex gap-1",children:[!0,!1].map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>q(e),className:`rounded-md px-3 py-1 text-xs font-medium transition-colors ${K===e?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:text-foreground"}`,children:e?ea("task.worktreeYes"):ea("task.worktreeNo")},String(e)))})]}),(0,t.jsxs)("div",{className:"mt-2 flex items-center gap-2",children:[(0,t.jsx)(i.Label,{className:"text-xs text-muted-foreground",children:ea("task.autoStartLabel")}),(0,t.jsx)("div",{className:"flex gap-1",children:[!0,!1].map(e=>(0,t.jsx)("button",{type:"button",onClick:()=>Z(e),className:`rounded-md px-3 py-1 text-xs font-medium transition-colors ${Q===e?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:text-foreground"}`,children:e?ea("task.autoStartYes"):ea("task.autoStartNo")},String(e)))})]})]}),S.length>0&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(i.Label,{children:ea("task.labels")}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:S.map(e=>{let a=U.includes(e.id);return(0,t.jsx)("button",{type:"button",onClick:()=>{_(t=>a?t.filter(t=>t!==e.id):[...t,e.id])},className:`rounded-full px-2.5 py-1 text-xs font-medium transition-all ${a?"ring-1 ring-current/30":"opacity-50 hover:opacity-80"}`,style:{backgroundColor:e.color+"20",color:e.color,borderColor:a?e.color+"40":"transparent",borderWidth:"1px"},children:e.name},e.id)})})]}),(!er||T&&T.length>0)&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(i.Label,{children:ea("version.picker.label")}),T&&T.length>0?(0,t.jsxs)(u.Select,{value:ee??"__none__",onValueChange:e=>et("__none__"===e?null:e),children:[(0,t.jsx)(u.SelectTrigger,{children:(0,t.jsx)("span",{className:"truncate text-sm",children:ee&&(E=T.find(e=>e.id===ee))?E.isCurrent?`${E.number} \xb7 ${E.name} \xb7 ${ea("version.currentShort")}`:`${E.number} \xb7 ${E.name}`:ea("version.picker.none")})}),(0,t.jsxs)(u.SelectContent,{children:[(0,t.jsx)(u.SelectItem,{value:"__none__",children:ea("version.picker.none")}),T.map(e=>(0,t.jsx)(u.SelectItem,{value:e.id,children:e.isCurrent?`${e.number} \xb7 ${e.name} \xb7 ${ea("version.currentShort")}`:`${e.number} \xb7 ${e.name}`},e.id))]})]}):(0,t.jsx)("p",{className:"rounded-md border border-dashed border-border px-3 py-2 text-xs text-muted-foreground",children:ea("version.picker.empty")})]})]}),(0,t.jsxs)(r.DialogFooter,{children:[(0,t.jsx)(s.Button,{variant:"outline",onClick:()=>f(!1),children:ea("common.cancel")}),(0,t.jsx)(s.Button,{onClick:()=>{M.trim()&&(er&&j?j(w.id,{title:M,description:R,priority:$,labelIds:U,subPath:A.trim()||"",versionId:ee}):y({title:M,description:R,priority:$,status:k,labelIds:U,...es&&K&&W?{baseBranch:W}:{},...A.trim()?{subPath:A.trim()}:{},versionId:ee,autoStart:Q}),L(""),O(""),B("MEDIUM"),F(""),_([]),H([]),Y(""),q(!0),et(null),f(!1))},className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:er?ea("common.save"):ea("common.create")})]})]})})}],744798)},997025,e=>{"use strict";var t=e.i(289721);e.i(254826);var a=e.i(309735),r=e.i(776639),s=e.i(533499);e.s(["NotePreviewDialog",0,function({note:e,open:n,onOpenChange:l}){let{t:i}=(0,s.useI18n)();return(0,t.jsx)(r.Dialog,{open:n,onOpenChange:l,children:(0,t.jsxs)(r.DialogContent,{className:"w-[min(960px,92vw)] max-w-none sm:max-w-none h-[85vh] max-h-[85vh] flex flex-col p-0 gap-0",children:[(0,t.jsx)("h3",{className:"text-sm font-medium truncate px-5 py-3 border-b border-border/50",children:e?.title}),(0,t.jsx)("div",{className:"flex-1 overflow-auto px-5 py-4",children:e&&e.content.trim()?(0,t.jsx)("div",{className:"text-sm leading-relaxed",children:(0,t.jsx)(a.Streamdown,{children:e.content})}):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:i("taskPage.noteEmpty")})})]})})}])},235357,144640,e=>{"use strict";var t=e.i(289721),a=e.i(965652),r=e.i(585012),s=e.i(657153),n=e.i(19671),l=e.i(368490),i=e.i(902539);let o=(0,e.i(572989).default)("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]);var c=e.i(922541),d=e.i(533499);function u({children:e,onClick:a,title:r,disabled:s,...n}){return(0,t.jsx)("button",{type:"button",onClick:e=>{e.stopPropagation(),s||a()},title:r,disabled:s,className:"inline-flex h-8 w-8 items-center justify-center rounded-md text-white/80 hover:bg-white/15 hover:text-white disabled:opacity-30 disabled:hover:bg-transparent disabled:hover:text-white/80 transition-colors",...n,children:e})}e.s(["ImageLightbox",0,function({imageUrl:e,filename:x,open:m,onOpenChange:h,assets:p,currentIndex:g,onIndexChange:f}){let{t:b}=(0,d.useI18n)(),[v,y]=(0,a.useState)(1),[j,k]=(0,a.useState)({x:0,y:0}),[w,N]=(0,a.useState)(!1),C=(0,a.useRef)(null),[S,I]=(0,a.useState)(!1),D=!!p&&p.length>1&&"number"==typeof g&&!!f,T=D&&g>0,P=D&&g<p.length-1,E=D?p.length:0,M=E>0?Math.ceil(E/10):0,L=D?Math.floor(g/10):0,R=10*L,O=Math.min(R+10,E),$=M>1,B=D&&L>0,A=D&&L<M-1;(0,a.useEffect)(()=>{I(!0)},[]),(0,a.useEffect)(()=>{y(1),k({x:0,y:0})},[e]),(0,a.useEffect)(()=>{if(!m)return;let e=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=e}},[m]);let F=(0,a.useCallback)(()=>h(!1),[h]),U=(0,a.useCallback)(()=>{D&&T&&f(g-1)},[D,T,f,g]),_=(0,a.useCallback)(()=>{D&&P&&f(g+1)},[D,P,f,g]),z=(0,a.useCallback)(()=>{D&&B&&f((L-1)*10)},[D,B,f,L]),H=(0,a.useCallback)(()=>{D&&A&&f(Math.min((L+1)*10,E-1))},[D,A,f,L,E]),V=(0,a.useCallback)(()=>{y(e=>Math.min(8,1.25*e))},[]),G=(0,a.useCallback)(()=>{y(e=>{let t=Math.max(.1,e/1.25);return t<=1&&k({x:0,y:0}),t})},[]),W=(0,a.useCallback)(()=>{y(1),k({x:0,y:0})},[]);(0,a.useEffect)(()=>{if(!m)return;let e=e=>{switch(e.key){case"Escape":e.preventDefault(),F();break;case"ArrowLeft":D&&(e.preventDefault(),U());break;case"ArrowRight":D&&(e.preventDefault(),_());break;case"+":case"=":e.preventDefault(),V();break;case"-":case"_":e.preventDefault(),G();break;case"0":e.preventDefault(),W()}};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[m,D,F,U,_,V,G,W]);let Y=(0,a.useRef)(!1),X=()=>{w&&N(!1),C.current=null},J=w?"cursor-grabbing":"cursor-grab";if(!m||!S)return null;let K=(0,t.jsxs)("div",{className:"fixed inset-0 z-[100] bg-black/70 dark:bg-black/40 backdrop-blur-md",role:"dialog","aria-modal":"true","aria-label":b("assets.lightbox.zoomFit"),children:[(0,t.jsxs)("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 max-w-[80vw] truncate rounded-md bg-black/40 px-3 py-1 text-xs text-white/80 backdrop-blur-sm pointer-events-none",children:[x,D?` \xb7 ${g+1} / ${p.length}`:""]}),(0,t.jsx)("div",{className:`absolute inset-0 flex items-center justify-center overflow-hidden select-none ${J}`,onClick:e=>{e.target===e.currentTarget&&F()},onWheel:e=>{e.preventDefault();let t=-e.deltaY>0?1.25:.8;y(e=>{let a=Math.min(8,Math.max(.1,e*t));return a<=1&&k({x:0,y:0}),a})},children:e&&(0,t.jsx)("img",{src:e,alt:x,onClick:e=>{e.stopPropagation(),Y.current&&(Y.current=!1)},onPointerDown:e=>{0===e.button&&(e.stopPropagation(),Y.current=!1,e.target.setPointerCapture?.(e.pointerId),C.current={x:e.clientX,y:e.clientY,panX:j.x,panY:j.y},N(!0))},onPointerMove:e=>{if(!C.current)return;let t=e.clientX-C.current.x,a=e.clientY-C.current.y;Math.abs(t)+Math.abs(a)>5&&(Y.current=!0),w&&k({x:C.current.panX+t,y:C.current.panY+a})},onPointerUp:X,onPointerLeave:X,onPointerCancel:X,className:"max-h-[88vh] max-w-[92vw] object-contain pointer-events-auto",style:{transform:`translate3d(${j.x}px, ${j.y}px, 0) scale(${v})`,transformOrigin:"center center",transition:w?"none":"transform 120ms ease-out",willChange:w?"transform":"auto"},draggable:!1})}),(0,t.jsxs)("div",{className:"absolute bottom-4 left-1/2 -translate-x-1/2 z-10 flex flex-col items-center gap-2 max-w-[92vw]",onClick:e=>e.stopPropagation(),children:[D&&(0,t.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-black/50 px-1.5 py-1.5 backdrop-blur-md ring-1 ring-white/10 max-w-[92vw]",children:[$&&(0,t.jsx)(u,{onClick:z,title:`${b("assets.lightbox.prev")} (-10)`,"aria-label":`${b("assets.lightbox.prev")} (-10)`,disabled:!B,children:(0,t.jsx)(i.ChevronsLeft,{className:"h-4 w-4"})}),(0,t.jsx)(u,{onClick:U,title:b("assets.lightbox.prev"),"aria-label":b("assets.lightbox.prev"),disabled:!T,children:(0,t.jsx)(n.ChevronLeft,{className:"h-4 w-4"})}),(0,t.jsx)("div",{className:"flex items-center gap-1.5",children:p.slice(R,O).map((e,a)=>{let r=R+a,s=r===g;return(0,t.jsx)("button",{type:"button",onClick:e=>{e.stopPropagation(),s||f(r)},title:e.filename,className:`shrink-0 h-12 w-12 overflow-hidden rounded-md transition-all ${s?"ring-2 ring-white opacity-100 scale-105":"opacity-60 hover:opacity-100 ring-1 ring-white/20"}`,children:(0,t.jsx)("img",{src:e.url,alt:e.filename,className:"h-full w-full object-cover",loading:"lazy",draggable:!1})},e.url+r)})}),(0,t.jsx)(u,{onClick:_,title:b("assets.lightbox.next"),"aria-label":b("assets.lightbox.next"),disabled:!P,children:(0,t.jsx)(l.ChevronRight,{className:"h-4 w-4"})}),$&&(0,t.jsx)(u,{onClick:H,title:`${b("assets.lightbox.next")} (+10)`,"aria-label":`${b("assets.lightbox.next")} (+10)`,disabled:!A,children:(0,t.jsx)(o,{className:"h-4 w-4"})})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-black/50 px-2 py-1.5 backdrop-blur-md ring-1 ring-white/10",children:[(0,t.jsxs)("span",{className:"px-2 text-xs text-white/80 tabular-nums select-none min-w-12 text-center",children:[Math.round(100*v),"%"]}),(0,t.jsx)(u,{onClick:W,title:b("assets.lightbox.reset"),"aria-label":b("assets.lightbox.reset"),disabled:1===v&&0===j.x&&0===j.y,children:(0,t.jsx)(c.RotateCcw,{className:"h-4 w-4"})}),(0,t.jsx)("div",{className:"mx-1 h-5 w-px bg-white/20"}),(0,t.jsx)(u,{onClick:F,title:b("assets.lightbox.close"),"aria-label":b("assets.lightbox.close"),children:(0,t.jsx)(s.X,{className:"h-4 w-4"})})]})]})]});return(0,r.createPortal)(K,document.body)}],235357);var x=e.i(400355);e.i(254826);var m=e.i(309735),h=e.i(776639);e.s(["TextPreviewDialog",0,function({url:e,filename:r,open:s,onOpenChange:n}){let{t:l}=(0,d.useI18n)(),[i,o]=(0,a.useState)(null),[c,u]=(0,a.useState)(!1),[p,g]=(0,a.useState)(null);(0,a.useEffect)(()=>{if(!s||!e){o(null),g(null);return}let t=!1;return u(!0),g(null),o(null),fetch(e).then(e=>{let t=e.headers.get("content-length");if(t&&parseInt(t,10)>1048576)throw Error("FILE_TOO_LARGE");return e.text()}).then(e=>{if(e.length>1048576)throw Error("FILE_TOO_LARGE");t||(o(e),u(!1))}).catch(e=>{t||(e instanceof Error&&"FILE_TOO_LARGE"===e.message?g(l("assets.fileTooLarge")):g(l("assets.previewError")),u(!1))}),()=>{t=!0}},[s,e,l]);let f=r.split(".").pop()?.toLowerCase();return(0,t.jsx)(h.Dialog,{open:s,onOpenChange:n,children:(0,t.jsxs)(h.DialogContent,{className:"w-[min(960px,92vw)] max-w-none sm:max-w-none h-[85vh] max-h-[85vh] flex flex-col p-0 gap-0",children:[(0,t.jsx)("h3",{className:"text-sm font-medium truncate px-5 py-3 border-b border-border/50",children:r}),(0,t.jsx)("div",{className:"flex-1 overflow-auto px-5 py-4",children:(()=>{if(c)return(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 gap-2",children:[(0,t.jsx)(x.Loader2,{className:"size-5 animate-spin text-muted-foreground"}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:l("assets.loadingPreview")})]});if(p)return(0,t.jsx)("p",{className:"text-sm text-destructive",children:p});if(null===i)return null;if("md"===f)return(0,t.jsx)("div",{className:"text-sm leading-relaxed",children:(0,t.jsx)(m.Streamdown,{children:i})});if("json"===f){let e;try{e=JSON.stringify(JSON.parse(i),null,2)}catch{e=i}return(0,t.jsx)("pre",{className:"font-mono text-xs whitespace-pre-wrap text-foreground",children:e})}return(0,t.jsx)("pre",{className:"font-mono text-sm whitespace-pre-wrap text-foreground",children:i})})()})]})})}],144640)},937304,e=>{"use strict";let t=new Set(["png","jpg","jpeg","gif","webp","svg","bmp","ico","avif","apng"]);e.s(["isImageAsset",0,function(e,a){if(a?.startsWith("image/"))return!0;let r=e.split(".").pop()?.toLowerCase();return!!r&&t.has(r)},"localPathToApiUrl",0,function(e){let t=e.replace(/\\/g,"/").match(/\/assets\/([^/]+)\/([^/]+)$/);return t?`/api/files/assets/${t[1]}/${t[2]}`:e}])},297338,e=>{"use strict";let t=(0,e.i(572989).default)("paperclip",[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]]);e.s(["Paperclip",0,t],297338)},606393,e=>{"use strict";let t=(0,e.i(572989).default)("calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);e.s(["Calendar",0,t],606393)},980376,52119,e=>{"use strict";var t=e.i(289721),a=e.i(225061),r=e.i(975157),s=e.i(519455),n=e.i(670123);function l({...e}){return(0,t.jsx)(a.Dialog.Portal,{"data-slot":"sheet-portal",...e})}function i({className:e,...s}){return(0,t.jsx)(a.Dialog.Backdrop,{"data-slot":"sheet-overlay",className:(0,r.cn)("fixed inset-0 z-50 bg-black/10 transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs",e),...s})}e.s(["Sheet",0,function({...e}){return(0,t.jsx)(a.Dialog.Root,{"data-slot":"sheet",...e})},"SheetContent",0,function({className:e,children:o,side:c="right",showCloseButton:d=!0,...u}){return(0,t.jsxs)(l,{children:[(0,t.jsx)(i,{}),(0,t.jsxs)(a.Dialog.Popup,{"data-slot":"sheet-content","data-side":c,className:(0,r.cn)("fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm",e),...u,children:[o,d&&(0,t.jsxs)(a.Dialog.Close,{"data-slot":"sheet-close",render:(0,t.jsx)(s.Button,{variant:"ghost",className:"absolute top-3 right-3",size:"icon-sm"}),children:[(0,t.jsx)(n.XIcon,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})},"SheetDescription",0,function({className:e,...s}){return(0,t.jsx)(a.Dialog.Description,{"data-slot":"sheet-description",className:(0,r.cn)("text-sm text-muted-foreground",e),...s})},"SheetHeader",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"sheet-header",className:(0,r.cn)("flex flex-col gap-0.5 p-4",e),...a})},"SheetTitle",0,function({className:e,...s}){return(0,t.jsx)(a.Dialog.Title,{"data-slot":"sheet-title",className:(0,r.cn)("font-heading text-base font-medium text-foreground",e),...s})}],980376);var o=e.i(514798);let c=(0,o.createServerReference)("406a761553f903b0d225d9d372bee72626c8d83b84",o.callServer,void 0,o.findSourceMapURL,"getTaskOverview");e.s(["getTaskOverview",0,c],52119)},605005,e=>{"use strict";var t=e.i(289721),a=e.i(965652),r=e.i(980376),s=e.i(759684),n=e.i(487486),l=e.i(519455),i=e.i(533499),o=e.i(788147),c=e.i(52119),d=e.i(960793),u=e.i(13517),x=e.i(727188),m=e.i(910119),h=e.i(344083),p=e.i(107286),g=e.i(744798),f=e.i(997025),b=e.i(235357),v=e.i(144640),y=e.i(937304),j=e.i(685149),k=e.i(606393),w=e.i(875840),N=e.i(245697),C=e.i(12659),S=e.i(736061),I=e.i(460707),D=e.i(567860),T=e.i(645378),P=e.i(867533),E=e.i(297338),M=e.i(453889);function L({added:e,removed:a}){let{t:r}=(0,i.useI18n)();return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-gray-500",children:[(0,t.jsx)("span",{children:r("diff.filesChanged",{count:String(e+a)})}),e>0&&(0,t.jsxs)("span",{className:"text-green-500",children:["+",e]}),a>0&&(0,t.jsxs)("span",{className:"text-red-500",children:["-",a]})]})}var R=e.i(35967),O=e.i(360112);let $=/\.(txt|md|json)$/i;function B({text:e}){let{t:r}=(0,i.useI18n)(),[s,n]=(0,a.useState)(!1),[l,o]=(0,a.useState)(!1),c=(0,a.useRef)(null);return(0,a.useEffect)(()=>{let e=c.current;e&&o(e.scrollHeight>e.clientHeight+1)},[]),(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{ref:c,className:`text-sm text-foreground whitespace-pre-wrap ${s?"":"line-clamp-5"}`,children:e}),l&&(0,t.jsx)("button",{type:"button",onClick:()=>n(e=>!e),className:"mt-1 text-xs font-medium text-sky-600 hover:underline dark:text-sky-400",children:r(s?"taskDrawer.collapseDescription":"taskDrawer.expandDescription")})]})}e.s(["TaskOverviewDrawer",0,function({open:e,onOpenChange:A,taskId:F,hideEnvActions:U=!1}){let{t:_}=(0,i.useI18n)(),[z,H]=(0,a.useState)(null),[V,G]=(0,a.useTransition)(),[W,Y]=(0,a.useState)(!1),[X,J]=(0,a.useState)([]),[K,q]=(0,a.useState)([]),[Q,Z]=(0,a.useState)(null),[ee,et]=(0,a.useState)([]),[ea,er]=(0,a.useState)(null);(0,a.useEffect)(()=>{if(!F||!e){H(null),q([]),et([]);return}(0,u.getTaskNotes)(F).then(e=>q(e.map(e=>({id:e.id,title:e.title,content:e.content,category:e.category})))).catch(()=>q([])),(0,x.getTaskAssets)(F).then(e=>et(e.map(e=>({id:e.id,filename:e.filename,path:e.path,mimeType:e.mimeType,size:e.size})))).catch(()=>et([])),G(async()=>{let e=await (0,c.getTaskOverview)(F);e&&(H(e),e.project?.workspaceId&&(0,d.getLabelsForWorkspace)(e.project.workspaceId).then(e=>{J(e.map(e=>({id:e.id,name:e.name,color:e.color,isBuiltin:e.isBuiltin})))}).catch(()=>J([])))})},[F,e]);let es=z?j.BOARD_COLUMNS.find(e=>e.id===z.status):null,en=z?j.PRIORITY_CONFIG[z.priority]:null,el=z?.executions?.[0]??null,ei=(()=>{if(el?.worktreePath)return el.worktreePath;let e=z?.project?.localPath;return e?z?.subPath?`${e}/${z.subPath}`:e:null})(),eo=(()=>{let e=el?.gitStats;if(!e)return null;try{let t=JSON.parse(e);return{added:t.insertions??0,removed:t.deletions??0}}catch{return null}})(),ec=e=>(0,y.isImageAsset)(e.filename,e.mimeType)||$.test(e.filename),ed=e=>{ec(e)?er(e):O.toast.info(_("assets.previewNotSupported"))},eu=async e=>{try{let t=await fetch("/api/internal/assets/reveal",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e.path})});if(!t.ok){let e=await t.json().catch(()=>({}));O.toast.error(e.error||_("git.openInFileManagerFailed"))}}catch{O.toast.error(_("git.openInFileManagerFailed"))}},ex=ea?(0,y.isImageAsset)(ea.filename,ea.mimeType)?"image":$.test(ea.filename)?"text":null:null,em=ee.filter(e=>(0,y.isImageAsset)(e.filename,e.mimeType)).map(e=>({id:e.id,url:(0,y.localPathToApiUrl)(e.path),filename:e.filename})),eh=ea?em.findIndex(e=>e.id===ea.id):-1,ep=async e=>{if(z?.project)try{let{autoStart:t,...a}=e;await (0,o.createTask)({...a,projectId:z.project.id}),O.toast.success(_("taskDrawer.duplicateSuccess")),Y(!1),A(!1)}catch{O.toast.error(_("taskDrawer.duplicateFailed"))}};return(0,t.jsxs)(r.Sheet,{open:e,onOpenChange:A,children:[(0,t.jsxs)(r.SheetContent,{side:"right",className:"w-[380px] sm:max-w-[380px] p-0",children:[(0,t.jsxs)(r.SheetHeader,{className:"px-4 pt-4 pb-3 border-b border-border",children:[(0,t.jsx)(r.SheetTitle,{className:"text-base font-semibold leading-tight pr-8",children:z?.title??""}),(0,t.jsx)(r.SheetDescription,{className:"sr-only",children:_("taskDrawer.title")}),z&&(0,t.jsxs)("div",{className:"flex items-center gap-2 mt-2",children:[es&&(0,t.jsxs)(n.Badge,{variant:"secondary",className:"text-xs",children:[(0,t.jsx)("span",{className:`inline-block w-2 h-2 rounded-full mr-1.5 ${es.color}`}),es.label]}),en&&(0,t.jsx)(n.Badge,{variant:"secondary",className:`text-xs ${en.color}`,children:en.label}),z.version&&(0,t.jsx)(R.TaskVersionTag,{number:z.version.number,name:z.version.name,showName:!0})]})]}),(0,t.jsx)(s.ScrollArea,{className:"flex-1 h-[calc(100%-80px)]",children:V&&!z?(0,t.jsx)("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:_("assets.loading")}):z?(0,t.jsxs)("div",{className:"p-4 pb-8 space-y-4",children:[(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1",children:_("taskDrawer.description")}),z.description?(0,t.jsx)(B,{text:z.description},z.id):(0,t.jsx)("p",{className:"text-sm text-foreground whitespace-pre-wrap",children:_("taskDrawer.noDescription")})]}),z.labels.length>0&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5",children:_("taskDrawer.labels")}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:z.labels.map(e=>(0,t.jsx)(n.Badge,{variant:"secondary",className:"text-xs",style:{backgroundColor:`${e.label.color}20`,color:e.label.color,borderColor:`${e.label.color}40`},children:e.label.name},e.label.id))})]}),(0,t.jsxs)("section",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(k.Calendar,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:_("taskDrawer.createdAt")}),(0,t.jsx)("span",{className:"text-foreground",children:new Date(z.createdAt).toLocaleDateString()})]}),(0,t.jsxs)("section",{children:[(0,t.jsxs)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5 flex items-center gap-1.5",children:[(0,t.jsx)(N.Package,{className:"h-3.5 w-3.5"}),_("taskDrawer.resources"),(0,t.jsx)("span",{className:"text-foreground",children:z._count.assets})]}),ee.length>0?(0,t.jsx)("div",{className:"space-y-1.5",children:ee.map(e=>{var a;let r=ec(e);return(0,t.jsxs)("div",{className:"flex items-center gap-2 rounded-md border border-border px-2 py-1.5",children:[(0,t.jsx)(E.Paperclip,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,t.jsx)("button",{type:"button",onClick:()=>ed(e),disabled:!r,className:`min-w-0 flex-1 truncate text-left text-sm ${r?"cursor-pointer hover:underline":"cursor-default"}`,title:r?_("assets.preview"):e.filename,children:e.filename}),(0,t.jsx)("span",{className:"shrink-0 text-[10px] text-muted-foreground",children:(a=e.size)?a<1024?`${a} B`:a<1048576?`${(a/1024).toFixed(1)} KB`:`${(a/1024/1024).toFixed(1)} MB`:""}),(0,t.jsxs)("div",{className:"flex items-center gap-0.5",children:[r&&(0,t.jsx)(l.Button,{variant:"ghost",size:"icon-xs",onClick:()=>ed(e),className:"shrink-0 text-muted-foreground hover:bg-accent",title:_("assets.preview"),children:(0,t.jsx)(P.Eye,{className:"h-3 w-3"})}),(0,t.jsx)(l.Button,{variant:"ghost",size:"icon-xs",onClick:()=>eu(e),className:"shrink-0 text-muted-foreground hover:bg-accent",title:_("assets.revealInFinder"),children:(0,t.jsx)(M.FolderOpen,{className:"h-3 w-3"})})]})]},e.id)})}):(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:_("taskDrawer.noResources")})]}),(0,t.jsxs)("section",{children:[(0,t.jsxs)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5 flex items-center gap-1.5",children:[(0,t.jsx)(T.FileText,{className:"h-3.5 w-3.5"}),_("taskDrawer.notes")]}),K.length>0?(0,t.jsx)("div",{className:"space-y-1.5",children:K.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>Z(e),className:"group/note flex w-full items-start gap-2 rounded-md border border-border p-2 text-left transition-colors hover:bg-accent/40",title:_("taskDrawer.previewNote"),children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("p",{className:"truncate text-sm font-medium",children:e.title}),e.content&&(0,t.jsx)("p",{className:"mt-0.5 line-clamp-2 whitespace-pre-wrap text-xs text-muted-foreground",children:e.content})]}),(0,t.jsx)(P.Eye,{className:"mt-0.5 h-3.5 w-3.5 shrink-0 text-muted-foreground opacity-0 transition-opacity group-hover/note:opacity-100"})]},e.id))}):(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:_("taskDrawer.noNotes")})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5",children:_("taskDrawer.fileChanges")}),eo?(0,t.jsx)(L,{added:eo.added,removed:eo.removed}):(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:_("taskDrawer.noFileChanges")})]}),(0,t.jsxs)("section",{children:[(0,t.jsxs)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5 flex items-center gap-1.5",children:[(0,t.jsx)(C.PlayCircle,{className:"h-3.5 w-3.5"}),_("taskDrawer.lastExecution")]}),el?(0,t.jsxs)("div",{className:"rounded-md border border-border p-2.5 text-sm",children:[(0,t.jsx)(n.Badge,{variant:"secondary",className:"text-xs mb-1.5",children:el.status}),el.summary&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-4",children:el.summary.slice(0,200)})]}):(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:_("taskDrawer.noExecution")})]}),ei&&!U&&(0,t.jsxs)("section",{className:"flex flex-col",children:[(0,t.jsxs)(l.Button,{variant:"ghost",className:"w-full h-8 justify-start gap-2 px-2 text-xs text-muted-foreground",onClick:async()=>{try{await (0,m.openInFileManager)(ei)}catch(e){console.error("openInFileManager failed:",e),O.toast.error(_("git.openInFileManagerFailed"))}},children:[(0,t.jsx)(S.FolderSearch,{className:"h-3.5 w-3.5 shrink-0"}),_("git.openInFileManager")]}),(0,t.jsxs)(l.Button,{variant:"ghost",className:"w-full h-8 justify-start gap-2 px-2 text-xs text-muted-foreground",onClick:async()=>{try{await (0,h.openInEditor)(ei)}catch(e){console.error("openInEditor failed:",e),O.toast.error(_("git.openInEditorFailed"))}},children:[(0,t.jsx)(I.Code,{className:"h-3.5 w-3.5 shrink-0"}),_("git.openInEditor")]}),(0,t.jsxs)(l.Button,{variant:"ghost",className:"w-full h-8 justify-start gap-2 px-2 text-xs text-muted-foreground",onClick:async()=>{try{await (0,p.openInTerminal)(ei)}catch(e){console.error("openInTerminal failed:",e),O.toast.error(_("git.openInTerminalFailed"))}},children:[(0,t.jsx)(D.Terminal,{className:"h-3.5 w-3.5 shrink-0"}),_("git.openInTerminal")]})]}),(0,t.jsx)("section",{children:(0,t.jsxs)(l.Button,{variant:"default",className:"w-full",onClick:()=>{z&&Y(!0)},disabled:!z,children:[(0,t.jsx)(w.Copy,{className:"h-4 w-4"}),_("taskDrawer.duplicate")]})})]}):null})]}),z?.project&&(0,t.jsx)(g.CreateTaskDialog,{open:W,onOpenChange:Y,onSubmit:ep,labels:X,projectType:z.project.type,projectLocalPath:z.project.localPath,prefillFromTask:{title:z.title,description:z.description,priority:z.priority,subPath:z.subPath,labelIds:z.labels.map(e=>e.label.id),baseBranch:z.baseBranch}}),(0,t.jsx)(f.NotePreviewDialog,{note:Q,open:null!==Q,onOpenChange:e=>{e||Z(null)}}),(0,t.jsx)(b.ImageLightbox,{imageUrl:"image"===ex&&eh>=0?em[eh].url:null,filename:"image"===ex&&eh>=0?em[eh].filename:"",open:"image"===ex,onOpenChange:e=>{e||er(null)},assets:em.map(({url:e,filename:t})=>({url:e,filename:t})),currentIndex:eh>=0?eh:void 0,onIndexChange:e=>{let t=em[e];if(!t)return;let a=ee.find(e=>e.id===t.id);a&&er(a)}}),(0,t.jsx)(v.TextPreviewDialog,{url:"text"===ex&&ea?(0,y.localPathToApiUrl)(ea.path):null,filename:ea?.filename??"",open:"text"===ex,onOpenChange:e=>{e||er(null)}})]})}],605005)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,49007,e=>{"use strict";let t=(0,e.i(572989).default)("ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);e.s(["MoreHorizontal",0,t],49007)},961930,228559,271936,68128,743757,301823,398567,6851,462053,784830,262059,560033,374083,476723,72173,521192,851663,378837,188366,132596,408656,790326,516804,641388,e=>{"use strict";e.s([],961930),e.i(708878);var t,n=e.i(965652),o=e.i(462902);let r=n.createContext(void 0);function a(e){let t=n.useContext(r);if(void 0===t&&!e)throw Error((0,o.default)(33));return t}e.s(["MenuPositionerContext",0,r,"useMenuPositionerContext",0,a],228559);let i=n.createContext(void 0);function s(e){let t=n.useContext(i);if(void 0===t&&!e)throw Error((0,o.default)(36));return t}e.s(["MenuRootContext",0,i,"useMenuRootContext",0,s],271936);var u=e.i(581263),l=e.i(845756);let d=n.forwardRef(function(e,t){let{className:n,render:o,...r}=e,{store:i}=s(),{arrowRef:d,side:c,align:p,arrowUncentered:f,arrowStyles:m}=a(),g=i.useState("open");return(0,u.useRenderElement)("div",e,{ref:[d,t],stateAttributesMapping:l.popupStateMapping,state:{open:g,side:c,align:p,uncentered:f},props:{style:m,"aria-hidden":!0,...r}})});e.s(["MenuArrow",0,d],68128);var c=e.i(809058);let p=n.createContext(void 0);function f(e=!0){let t=n.useContext(p);if(void 0===t&&!e)throw Error((0,o.default)(25));return t}e.s(["useContextMenuRootContext",0,f],743757);var m=e.i(586622);let g={...l.popupStateMapping,...c.transitionStatusMapping},v=n.forwardRef(function(e,t){let{className:n,render:o,...r}=e,{store:a}=s(),i=a.useState("open"),l=a.useState("mounted"),d=a.useState("transitionStatus"),c=a.useState("lastOpenChangeReason"),p=f();return(0,u.useRenderElement)("div",e,{ref:p?.backdropRef?[t,p.backdropRef]:t,state:{open:i,transitionStatus:d},stateAttributesMapping:g,props:[{role:"presentation",hidden:!l,style:{pointerEvents:c===m.REASONS.triggerHover?"none":void 0,userSelect:"none",WebkitUserSelect:"none"}},r]})});e.s(["MenuBackdrop",0,v],301823);var h=e.i(887642),b=e.i(314757);let S=n.createContext(void 0);var x=e.i(362891),R=e.i(282109),y=e.i(565455),E=e.i(442383);function C(e){let{closeOnClick:t,highlighted:o,id:r,nodeId:a,store:i,typingRef:s,itemRef:u,itemMetadata:l}=e,{events:d}=i.useState("floatingTreeRoot"),c=f(!0),p=void 0!==c;return n.useMemo(()=>({id:r,role:"menuitem",tabIndex:o?0:-1,onKeyDown(e){" "===e.key&&s?.current&&e.preventDefault()},onMouseMove(e){a&&d.emit("itemhover",{nodeId:a,target:e.currentTarget})},onClick(e){t&&d.emit("close",{domEvent:e,reason:m.REASONS.itemPress})},onMouseUp(e){if(c){let t=c.initialCursorPointRef.current;if(c.initialCursorPointRef.current=null,p&&t&&1>=Math.abs(e.clientX-t.x)&&1>=Math.abs(e.clientY-t.y)||p&&!E.isMac&&2===e.button)return}u.current&&i.context.allowMouseUpTriggerRef.current&&(!p||2===e.button)&&(!l||"regular-item"===l.type)&&u.current.click()}}),[t,o,r,d,a,i,s,u,c,p,l])}let M={type:"regular-item"};function I(e){let{closeOnClick:t,disabled:o=!1,highlighted:r,id:a,store:i,typingRef:s=i.context.typingRef,nativeButton:u,itemMetadata:l,nodeId:d}=e,c=n.useRef(null),{getButtonProps:p,buttonRef:f}=(0,R.useButton)({disabled:o,focusableWhenDisabled:!0,native:u,composite:!0}),m=C({closeOnClick:t,highlighted:r,id:a,nodeId:d,store:i,typingRef:s,itemRef:c,itemMetadata:l}),g=n.useCallback(e=>(0,y.mergeProps)(m,{onMouseEnter(){"submenu-trigger"===l.type&&l.setActive()}},e,p),[m,p,l]),v=(0,x.useMergedRefs)(c,f);return n.useMemo(()=>({getItemProps:g,itemRef:v}),[g,v])}e.s(["REGULAR_ITEM",0,M,"useMenuItem",0,I],398567);var P=e.i(655728),w=e.i(207516);let T=((t={}).checked="data-checked",t.unchecked="data-unchecked",t.disabled="data-disabled",t.highlighted="data-highlighted",t),O={checked:e=>e?{[T.checked]:""}:{[T.unchecked]:""},...c.transitionStatusMapping};var k=e.i(67077),N=e.i(289721);let A=n.forwardRef(function(e,t){let{render:o,className:r,id:i,label:l,nativeButton:d=!1,disabled:c=!1,closeOnClick:p=!1,checked:f,defaultChecked:g,onCheckedChange:v,...x}=e,R=(0,P.useCompositeListItem)({label:l}),y=a(!0),E=(0,w.useBaseUiId)(i),{store:C}=s(),T=C.useState("isActive",R.index),A=C.useState("itemProps"),[D,j]=(0,b.useControlled)({controlled:f,default:g??!1,name:"MenuCheckboxItem",state:"checked"}),{getItemProps:L,itemRef:F}=I({closeOnClick:p,disabled:c,highlighted:T,id:E,store:C,nativeButton:d,nodeId:y?.nodeId,itemMetadata:M}),U=n.useMemo(()=>({disabled:c,highlighted:T,checked:D}),[c,T,D]),_=(0,h.useStableCallback)(e=>{let t={...(0,k.createChangeEventDetails)(m.REASONS.itemPress,e.nativeEvent),preventUnmountOnClose:()=>{}};v?.(!D,t),t.isCanceled||j(e=>!e)}),B=(0,u.useRenderElement)("div",e,{state:U,stateAttributesMapping:O,props:[A,{role:"menuitemcheckbox","aria-checked":D,onClick:_},x,L],ref:[F,t,R.ref]});return(0,N.jsx)(S.Provider,{value:U,children:B})});e.s(["MenuCheckboxItem",0,A],6851);var D=e.i(193214),j=e.i(504068);let L=n.forwardRef(function(e,t){let{render:r,className:a,keepMounted:i=!1,...s}=e,l=function(){let e=n.useContext(S);if(void 0===e)throw Error((0,o.default)(30));return e}(),d=n.useRef(null),{transitionStatus:c,setMounted:p}=(0,D.useTransitionStatus)(l.checked);(0,j.useOpenChangeComplete)({open:l.checked,ref:d,onComplete(){l.checked||p(!1)}});let f={checked:l.checked,disabled:l.disabled,highlighted:l.highlighted,transitionStatus:c};return(0,u.useRenderElement)("span",e,{state:f,ref:[t,d],stateAttributesMapping:O,props:{"aria-hidden":!0,...s},enabled:i||l.checked})});e.s(["MenuCheckboxItemIndicator",0,L],462053);let F=n.createContext(void 0),U=n.forwardRef(function(e,t){let{render:o,className:r,...a}=e,[i,s]=n.useState(void 0),l=n.useMemo(()=>({setLabelId:s}),[s]),d=(0,u.useRenderElement)("div",e,{ref:t,props:{role:"group","aria-labelledby":i,...a}});return(0,N.jsx)(F.Provider,{value:l,children:d})});e.s(["MenuGroup",0,U],784830);var _=e.i(804849);let B=n.forwardRef(function(e,t){let{className:r,render:a,id:i,...s}=e,l=(0,w.useBaseUiId)(i),{setLabelId:d}=function(){let e=n.useContext(F);if(void 0===e)throw Error((0,o.default)(31));return e}();return(0,_.useIsoLayoutEffect)(()=>(d(l),()=>{d(void 0)}),[d,l]),(0,u.useRenderElement)("div",e,{ref:t,props:{id:l,role:"presentation",...s}})});e.s(["MenuGroupLabel",0,B],262059);let H=n.forwardRef(function(e,t){let{render:n,className:o,id:r,label:i,nativeButton:l=!1,disabled:d=!1,closeOnClick:c=!0,...p}=e,f=(0,P.useCompositeListItem)({label:i}),m=a(!0),g=(0,w.useBaseUiId)(r),{store:v}=s(),h=v.useState("isActive",f.index),b=v.useState("itemProps"),{getItemProps:S,itemRef:x}=I({closeOnClick:c,disabled:d,highlighted:h,id:g,store:v,nativeButton:l,nodeId:m?.nodeId,itemMetadata:M});return(0,u.useRenderElement)("div",e,{state:{disabled:d,highlighted:h},props:[b,p,S],ref:[x,t,f.ref]})});e.s(["MenuItem",0,H],560033);let G=n.forwardRef(function(e,t){let{render:o,className:r,id:i,label:l,closeOnClick:d=!1,...c}=e,p=n.useRef(null),f=(0,P.useCompositeListItem)({label:l}),m=a(!0),g=m?.nodeId,v=(0,w.useBaseUiId)(i),{store:h}=s(),b=h.useState("isActive",f.index),S=h.useState("itemProps"),x=h.context.typingRef,{getButtonProps:E,buttonRef:M}=(0,R.useButton)({native:!1,composite:!0}),I=C({closeOnClick:d,highlighted:b,id:v,nodeId:g,store:h,typingRef:x,itemRef:p}),T=n.useMemo(()=>({highlighted:b}),[b]);return(0,u.useRenderElement)("a",e,{state:T,props:[S,c,function(e){return(0,y.mergeProps)(I,e,E)}],ref:[p,M,t,f.ref]})});e.s(["MenuLinkItem",0,G],374083);var V=e.i(11931),z=e.i(511980),Y=e.i(196368),K=e.i(197920),W=e.i(808754);let J={...l.popupStateMapping,...c.transitionStatusMapping},X=n.forwardRef(function(e,t){let{render:o,className:r,finalFocus:i,...l}=e,{store:d}=s(),{side:c,align:p}=a(),f=null!=(0,Y.useToolbarRootContext)(!0),g=d.useState("open"),v=d.useState("transitionStatus"),h=d.useState("popupProps"),b=d.useState("mounted"),S=d.useState("instantType"),x=d.useState("activeTriggerElement"),R=d.useState("parent"),y=d.useState("lastOpenChangeReason"),E=d.useState("rootId"),C=d.useState("floatingRootContext"),M=d.useState("floatingTreeRoot"),I=d.useState("closeDelay"),P=d.useState("activeTriggerElement"),w="context-menu"===R.type;(0,j.useOpenChangeComplete)({open:g,ref:d.context.popupRef,onComplete(){g&&d.context.onOpenChangeComplete?.(!0)}}),n.useEffect(()=>{function e(e){d.setOpen(!1,(0,k.createChangeEventDetails)(e.reason,e.domEvent))}return M.events.on("close",e),()=>{M.events.off("close",e)}},[M.events,d]);let T=d.useState("hoverEnabled"),O=d.useState("disabled");(0,z.useHoverFloatingInteraction)(C,{enabled:T&&!O&&!w&&"menubar"!==R.type,closeDelay:I});let A={transitionStatus:v,side:c,align:p,open:g,nested:"menu"===R.type,instant:S},D=n.useCallback(e=>{d.set("popupElement",e)},[d]),L=(0,u.useRenderElement)("div",e,{state:A,ref:[t,d.context.popupRef,D],stateAttributesMapping:J,props:[h,{onKeyDown(e){f&&K.COMPOSITE_KEYS.has(e.key)&&e.stopPropagation()}},(0,W.getDisabledMountTransitionStyles)(v),l,{"data-rootownerid":E}]}),F=void 0===R.type||w;return(x||"menubar"===R.type&&y!==m.REASONS.outsidePress)&&(F=!0),(0,N.jsx)(V.FloatingFocusManager,{context:C,modal:w,disabled:!b,returnFocus:void 0===i?F:i,initialFocus:"menu"!==R.type,restoreFocus:!0,externalTree:"menubar"!==R.type?M:void 0,previousFocusableElement:P,nextFocusableElement:void 0===R.type?d.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:void 0===R.type?d.context.beforeContentFocusGuardRef:void 0,children:L})});e.s(["MenuPopup",0,X],476723);var $=e.i(888393);let q=n.createContext(void 0),Q=n.forwardRef(function(e,t){let{keepMounted:n=!1,...o}=e,{store:r}=s();return r.useState("mounted")||n?(0,N.jsx)(q.Provider,{value:n,children:(0,N.jsx)($.FloatingPortal,{ref:t,...o})}):null});e.s(["MenuPortal",0,Q],72173);var Z=e.i(831766),ee=e.i(161476),et=e.i(205995),en=e.i(887943),eo=e.i(579028),er=e.i(72287),ea=e.i(693354),ei=e.i(431362),es=e.i(412522);let eu=n.forwardRef(function(e,t){let{anchor:a,positionMethod:i="absolute",className:d,render:c,side:p,align:g,sideOffset:v=0,alignOffset:h=0,collisionBoundary:b="clipping-ancestors",collisionPadding:S=5,arrowPadding:x=5,sticky:R=!1,disableAnchorTracking:y=!1,collisionAvoidance:E=ea.DROPDOWN_COLLISION_AVOIDANCE,...C}=e,{store:M}=s(),I=function(){let e=n.useContext(q);if(void 0===e)throw Error((0,o.default)(32));return e}(),P=f(!0),w=M.useState("parent"),T=M.useState("floatingRootContext"),O=M.useState("floatingTreeRoot"),A=M.useState("mounted"),D=M.useState("open"),j=M.useState("modal"),L=M.useState("activeTriggerElement"),F=M.useState("transitionStatus"),U=M.useState("positionerElement"),B=M.useState("instantType"),H=M.useState("hasViewport"),G=M.useState("lastOpenChangeReason"),V=M.useState("floatingNodeId"),z=M.useState("floatingParentNodeId"),Y=T.useState("domReferenceElement"),K=n.useRef(null),J=(0,es.useAnimationsFinished)(U,!1,!1),X=a,$=v,Q=h,eu=g,el=E;"context-menu"===w.type&&(X=a??w.context?.anchor,eu=eu??"start",p||"center"===eu||(Q=e.alignOffset??2,$=e.sideOffset??-5));let ed=p,ec=eu;"menu"===w.type?(ed=ed??"inline-end",ec=ec??"start",el=e.collisionAvoidance??ea.POPUP_COLLISION_AVOIDANCE):"menubar"===w.type&&(ed=ed??"bottom",ec=ec??"start");let ep="context-menu"===w.type,ef=(0,en.useAnchorPositioning)({anchor:X,floatingRootContext:T,positionMethod:P?"fixed":i,mounted:A,side:ed,sideOffset:$,align:ec,alignOffset:Q,arrowPadding:ep?0:x,collisionBoundary:b,collisionPadding:S,sticky:R,nodeId:V,keepMounted:I,disableAnchorTracking:y,collisionAvoidance:el,shiftCrossAxis:ep&&!("side"in el&&"flip"===el.side),externalTree:O,adaptiveOrigin:H?ei.adaptiveOrigin:void 0}),em=n.useMemo(()=>{let e={};return D||(e.pointerEvents="none"),{role:"presentation",hidden:!A,style:{...ef.positionerStyles,...e}}},[D,A,ef.positionerStyles]);n.useEffect(()=>{function e(e){e.open&&(e.parentNodeId===V&&M.set("hoverEnabled",!1),e.nodeId!==V&&e.parentNodeId===M.select("floatingParentNodeId")&&M.setOpen(!1,(0,k.createChangeEventDetails)(m.REASONS.siblingOpen)))}return O.events.on("menuopenchange",e),()=>{O.events.off("menuopenchange",e)}},[M,O.events,V]),n.useEffect(()=>{if(null!=M.select("floatingParentNodeId"))return O.events.on("menuopenchange",e),()=>{O.events.off("menuopenchange",e)};function e(e){if(e.open||e.nodeId!==M.select("floatingParentNodeId"))return;let t=e.reason??m.REASONS.siblingOpen;M.setOpen(!1,(0,k.createChangeEventDetails)(t))}},[O.events,M]);let eg=(0,ee.useTimeout)();n.useEffect(()=>{D||eg.clear()},[D,eg]),n.useEffect(()=>{function e(e){if(D&&e.nodeId===M.select("floatingParentNodeId"))if(e.target&&L&&L!==e.target){let e=M.select("closeDelay");e>0?eg.isStarted()||eg.start(e,()=>{M.setOpen(!1,(0,k.createChangeEventDetails)(m.REASONS.siblingOpen))}):M.setOpen(!1,(0,k.createChangeEventDetails)(m.REASONS.siblingOpen))}else eg.clear()}return O.events.on("itemhover",e),()=>{O.events.off("itemhover",e)}},[O.events,D,L,M,eg]),n.useEffect(()=>{let e={open:D,nodeId:V,parentNodeId:z,reason:M.select("lastOpenChangeReason")};O.events.emit("menuopenchange",e)},[O.events,D,M,V,z]),(0,_.useIsoLayoutEffect)(()=>{let e=K.current;if(Y&&(K.current=Y),e&&Y&&Y!==e){M.set("instantType",void 0);let e=new AbortController;return J(()=>{M.set("instantType","trigger-change")},e.signal),()=>{e.abort()}}},[Y,J,M]);let ev={open:D,side:ef.side,align:ef.align,anchorHidden:ef.anchorHidden,nested:"menu"===w.type,instant:B},eh=n.useMemo(()=>({side:ef.side,align:ef.align,arrowRef:ef.arrowRef,arrowUncentered:ef.arrowUncentered,arrowStyles:ef.arrowStyles,nodeId:ef.context.nodeId}),[ef.side,ef.align,ef.arrowRef,ef.arrowUncentered,ef.arrowStyles,ef.context.nodeId]),eb=(0,u.useRenderElement)("div",e,{state:ev,stateAttributesMapping:l.popupStateMapping,ref:[t,M.useStateSetter("positionerElement")],props:[em,(0,W.getDisabledMountTransitionStyles)(F),C]}),eS=A&&"menu"!==w.type&&("menubar"!==w.type&&j&&G!==m.REASONS.triggerHover||"menubar"===w.type&&w.context.modal),ex=null;return"menubar"===w.type?ex=w.context.contentElement:void 0===w.type&&(ex=L),(0,N.jsxs)(r.Provider,{value:eh,children:[eS&&(0,N.jsx)(er.InternalBackdrop,{ref:"context-menu"===w.type||"nested-context-menu"===w.type?w.context.internalBackdropRef:null,inert:(0,Z.inertValue)(!D),cutout:ex}),(0,N.jsx)(et.FloatingNode,{id:V,children:(0,N.jsx)(eo.CompositeList,{elementsRef:M.context.itemDomElements,labelsRef:M.context.itemLabels,children:eb})})]})});e.s(["MenuPositioner",0,eu],521192);let el=n.createContext(void 0),ed=n.memo(n.forwardRef(function(e,t){let{render:o,className:r,value:a,defaultValue:i,onValueChange:s,disabled:l=!1,...d}=e,[c,p]=(0,b.useControlled)({controlled:a,default:i,name:"MenuRadioGroup"}),f=(0,h.useStableCallback)(s),m=(0,h.useStableCallback)((e,t)=>{f?.(e,t),t.isCanceled||p(e)}),g=(0,u.useRenderElement)("div",e,{state:{disabled:l},ref:t,props:{role:"group","aria-disabled":l||void 0,...d}}),v=n.useMemo(()=>({value:c,setValue:m,disabled:l}),[c,m,l]);return(0,N.jsx)(el.Provider,{value:v,children:g})}));e.s(["MenuRadioGroup",0,ed],851663);let ec=n.createContext(void 0),ep=n.forwardRef(function(e,t){let{render:r,className:i,id:l,label:d,nativeButton:c=!1,disabled:p=!1,closeOnClick:f=!1,value:g,...v}=e,b=(0,P.useCompositeListItem)({label:d}),S=a(!0),x=(0,w.useBaseUiId)(l),{store:R}=s(),y=R.useState("isActive",b.index),E=R.useState("itemProps"),{value:C,setValue:T,disabled:A}=function(){let e=n.useContext(el);if(void 0===e)throw Error((0,o.default)(34));return e}(),D=A||p,j=C===g,{getItemProps:L,itemRef:F}=I({closeOnClick:f,disabled:D,highlighted:y,id:x,store:R,nativeButton:c,nodeId:S?.nodeId,itemMetadata:M}),U=n.useMemo(()=>({disabled:D,highlighted:y,checked:j}),[D,y,j]),_=(0,h.useStableCallback)(e=>{T(g,{...(0,k.createChangeEventDetails)(m.REASONS.itemPress,e.nativeEvent),preventUnmountOnClose:()=>{}})}),B=(0,u.useRenderElement)("div",e,{state:U,stateAttributesMapping:O,props:[E,{role:"menuitemradio","aria-checked":j,onClick:_},v,L],ref:[F,t,b.ref]});return(0,N.jsx)(ec.Provider,{value:U,children:B})});e.s(["MenuRadioItem",0,ep],378837);let ef=n.forwardRef(function(e,t){let{render:r,className:a,keepMounted:i=!1,...s}=e,l=function(){let e=n.useContext(ec);if(void 0===e)throw Error((0,o.default)(35));return e}(),d=n.useRef(null),{transitionStatus:c,setMounted:p}=(0,D.useTransitionStatus)(l.checked);(0,j.useOpenChangeComplete)({open:l.checked,ref:d,onComplete(){l.checked||p(!1)}});let f={checked:l.checked,disabled:l.disabled,highlighted:l.highlighted,transitionStatus:c};return(0,u.useRenderElement)("span",e,{state:f,stateAttributesMapping:O,ref:[t,d],props:{"aria-hidden":!0,...s},enabled:i||l.checked})});e.s(["MenuRadioItemIndicator",0,ef],188366);var em=e.i(722357),eg=e.i(528796),ev=e.i(620163),eh=e.i(954588),eb=e.i(154660),eS=e.i(594640),ex=e.i(306296),eR=e.i(234951),ey=e.i(344478),eE=e.i(471959),eC=e.i(611008);let eM=n.createContext(null);function eI(e){let t=n.useContext(eM);if(null===t&&!e)throw Error((0,o.default)(5));return t}e.s(["useMenubarContext",0,eI],132596);var eP=e.i(824047),ew=e.i(892069),eT=e.i(596290),eO=e.i(370161),ek=e.i(903224),eN=e.i(512677),eA=e.i(771326),eD=e.i(87396);let ej={...eA.popupStoreSelectors,disabled:(0,eT.createSelector)(e=>"menubar"===e.parent.type&&e.parent.context.disabled||e.disabled),modal:(0,eT.createSelector)(e=>(void 0===e.parent.type||"context-menu"===e.parent.type)&&(e.modal??!0)),allowMouseEnter:(0,eT.createSelector)(e=>e.allowMouseEnter),stickIfOpen:(0,eT.createSelector)(e=>e.stickIfOpen),parent:(0,eT.createSelector)(e=>e.parent),rootId:(0,eT.createSelector)(e=>"menu"===e.parent.type?e.parent.store.select("rootId"):void 0!==e.parent.type?e.parent.context.rootId:e.rootId),activeIndex:(0,eT.createSelector)(e=>e.activeIndex),isActive:(0,eT.createSelector)((e,t)=>e.activeIndex===t),hoverEnabled:(0,eT.createSelector)(e=>e.hoverEnabled),instantType:(0,eT.createSelector)(e=>e.instantType),lastOpenChangeReason:(0,eT.createSelector)(e=>e.openChangeReason),floatingTreeRoot:(0,eT.createSelector)(e=>"menu"===e.parent.type?e.parent.store.select("floatingTreeRoot"):e.floatingTreeRoot),floatingNodeId:(0,eT.createSelector)(e=>e.floatingNodeId),floatingParentNodeId:(0,eT.createSelector)(e=>e.floatingParentNodeId),itemProps:(0,eT.createSelector)(e=>e.itemProps),closeDelay:(0,eT.createSelector)(e=>e.closeDelay),hasViewport:(0,eT.createSelector)(e=>e.hasViewport),keyboardEventRelay:(0,eT.createSelector)(e=>e.keyboardEventRelay?e.keyboardEventRelay:"menu"===e.parent.type?e.parent.store.select("keyboardEventRelay"):void 0)};class eL extends eO.ReactStore{constructor(e){super({...{...(0,eA.createInitialPopupStoreState)(),disabled:!1,modal:!0,allowMouseEnter:!1,stickIfOpen:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new eN.FloatingTreeStore,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:eh.EMPTY_OBJECT,keyboardEventRelay:void 0,closeDelay:0,hasViewport:!1},...e},{positionerRef:n.createRef(),popupRef:n.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:n.createRef(),beforeContentFocusGuardRef:n.createRef(),onOpenChangeComplete:void 0,triggerElements:new eD.PopupTriggerMap},ej),this.unsubscribeParentListener=this.observe("parent",e=>{if(this.unsubscribeParentListener?.(),"menu"===e.type){let t=e.store.select("rootId"),n=e.store.select("floatingTreeRoot"),o=e.store.select("keyboardEventRelay");this.unsubscribeParentListener=e.store.subscribe(()=>{let r=e.store.select("rootId"),a=e.store.select("floatingTreeRoot"),i=e.store.select("keyboardEventRelay");(t!==r||n!==a||o!==i)&&(t=r,n=a,o=i,this.notifyAll())}),this.context.allowMouseUpTriggerRef=e.store.context.allowMouseUpTriggerRef;return}void 0!==e.type&&(this.context.allowMouseUpTriggerRef=e.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(e,t){this.state.floatingRootContext.context.events.emit("setOpen",{open:e,eventDetails:t})}static useStore(e,t){let n=(0,ek.useRefWithInit)(()=>new eL(t)).current;return e??n}unsubscribeParentListener=null}e.s(["MenuStore",0,eL],408656);var eF=e.i(894621);let eU=n.createContext(void 0);function e_(){return n.useContext(eU)}e.s(["MenuSubmenuRootContext",0,eU,"useMenuSubmenuRootContext",0,e_],790326);let eB=(0,eb.fastComponent)(function(e){let t,o,{children:r,open:a,onOpenChange:u,onOpenChangeComplete:l,defaultOpen:d=!1,disabled:c=!1,modal:p,loopFocus:g=!0,orientation:v="vertical",actionsRef:b,closeParentOnEsc:S=!1,handle:x,triggerId:R,defaultTriggerId:E=null,highlightItemOnHover:C=!0}=e,M=f(!0),I=s(!0),P=eI(!0),w=e_(),T=n.useMemo(()=>w&&I?{type:"menu",store:I.store}:P?{type:"menubar",context:P}:M&&!I?{type:"context-menu",context:M}:{type:void 0},[M,I,P,w]),O=eL.useStore(x?.store,{open:d,openProp:a,activeTriggerId:E,triggerIdProp:R,parent:T});(0,eg.useOnFirstRender)(()=>{void 0===a&&!1===O.state.open&&!0===d&&O.update({open:!0,activeTriggerId:E})}),O.useControlledProp("openProp",a),O.useControlledProp("triggerIdProp",R),O.useContextCallback("onOpenChangeComplete",l);let A=O.useState("floatingTreeRoot"),D=(0,et.useFloatingNodeId)(A),j=(0,et.useFloatingParentNodeId)();(0,_.useIsoLayoutEffect)(()=>{M&&!I?O.update({parent:{type:"context-menu",context:M},floatingNodeId:D,floatingParentNodeId:j}):I&&O.update({floatingNodeId:D,floatingParentNodeId:j})},[M,I,D,j,O]);let L=O.useState("open"),F=O.useState("activeTriggerElement"),U=O.useState("positionerElement"),B=O.useState("hoverEnabled"),H=O.useState("modal"),G=O.useState("disabled"),V=O.useState("lastOpenChangeReason"),z=O.useState("parent"),Y=O.useState("activeIndex"),K=O.useState("payload"),W=O.useState("floatingParentNodeId"),J=n.useRef(null),X=null!=W;O.useSyncedValues({disabled:c,modal:void 0===z.type?p:void 0,rootId:(0,em.useId)()});let{openMethod:$,triggerProps:q}=(0,ew.useOpenInteractionType)(L);(0,eF.useImplicitActiveTrigger)(O);let{forceUnmount:Q}=(0,eF.useOpenStateTransitions)(L,O,()=>{O.update({allowMouseEnter:!1,stickIfOpen:!0})}),Z=n.useRef("context-menu"!==z.type),en=(0,ee.useTimeout)();n.useEffect(()=>{if(L||(J.current=null),"context-menu"===z.type){if(!L){en.clear(),Z.current=!1;return}en.start(500,()=>{Z.current=!0})}},[en,L,z.type]),(0,ev.useScrollLock)(L&&H&&V!==m.REASONS.triggerHover&&"touch"!==$,U),(0,_.useIsoLayoutEffect)(()=>{L||B||O.set("hoverEnabled",!0)},[L,B,O]);let eo=n.useRef(!0),er=(0,ee.useTimeout)(),ei=(0,h.useStableCallback)((e,n)=>{let o=n.reason;if(L===e&&n.trigger===F&&V===o||(n.preventUnmountOnClose=()=>{O.set("preventUnmountingOnClose",!0)},e||null!=n.trigger||(n.trigger=F??void 0),u?.(e,n),n.isCanceled))return;let r={open:e,nativeEvent:n.event,reason:n.reason,nested:X};t?.emit("openchange",r);let a=n.event;if(!1===e&&a?.type==="click"&&"touch"===a.pointerType&&!eo.current)return;if(!e&&null!==Y){let e=O.context.itemDomElements.current[Y];queueMicrotask(()=>{e?.setAttribute("tabindex","-1")})}e&&o===m.REASONS.triggerFocus?(eo.current=!1,er.start(300,()=>{eo.current=!0})):(eo.current=!0,er.clear());let i=(o===m.REASONS.triggerPress||o===m.REASONS.itemPress)&&0===a.detail&&a?.isTrusted,s=!e&&(o===m.REASONS.escapeKey||null==o),l={open:e,openChangeReason:o};J.current=n.event??null;let d=n.trigger?.id??null;(d||e)&&(l.activeTriggerId=d,l.activeTriggerElement=n.trigger??null),O.update(l),"menubar"===z.type&&(o===m.REASONS.triggerFocus||o===m.REASONS.focusOut||o===m.REASONS.triggerHover||o===m.REASONS.listNavigation||o===m.REASONS.siblingOpen)?O.set("instantType","group"):i||s?O.set("instantType",i?"click":"dismiss"):O.set("instantType",void 0)}),es=n.useCallback(e=>{let t=(0,k.createChangeEventDetails)(e);return t.preventUnmountOnClose=()=>{O.set("preventUnmountingOnClose",!0)},t},[O]),eu=n.useCallback(()=>{O.setOpen(!1,es(m.REASONS.imperativeAction))},[O,es]);n.useImperativeHandle(b,()=>({unmount:Q,close:eu}),[Q,eu]),"context-menu"===z.type&&(o=z.context),n.useImperativeHandle(o?.positionerRef,()=>U,[U]),n.useImperativeHandle(o?.actionsRef,()=>({setOpen:ei}),[ei]);let el=(0,eC.useSyncedFloatingRootContext)({popupStore:O,onOpenChange:ei});t=el.context.events,n.useEffect(()=>{let e=({open:e,eventDetails:t})=>ei(e,t);return t.on("setOpen",e),()=>{t?.off("setOpen",e)}},[t,ei]);let ed=(0,eS.useDismiss)(el,{enabled:!G,bubbles:{escapeKey:S&&"menu"===z.type},outsidePress:()=>"context-menu"!==z.type||J.current?.type==="contextmenu"||Z.current,externalTree:X?A:void 0}),ec=(0,ey.useRole)(el,{role:"menu"}),ep=(0,eP.useDirection)(),ef=n.useCallback(e=>{O.select("activeIndex")!==e&&O.set("activeIndex",e)},[O]),eb=(0,eR.useListNavigation)(el,{enabled:!G,listRef:O.context.itemDomElements,activeIndex:Y,nested:void 0!==z.type,loopFocus:g,orientation:v,parentOrientation:"menubar"===z.type?z.context.orientation:void 0,rtl:"rtl"===ep,disabledIndices:eh.EMPTY_ARRAY,onNavigate:ef,openOnArrowKeyDown:"context-menu"!==z.type,externalTree:X?A:void 0,focusItemOnHover:C}),eM=n.useCallback(e=>{O.context.typingRef.current=e},[O]),eT=(0,eE.useTypeahead)(el,{listRef:O.context.itemLabels,elementsRef:O.context.itemDomElements,activeIndex:Y,resetMs:ea.TYPEAHEAD_RESET_MS,onMatch:e=>{L&&e!==Y&&O.set("activeIndex",e)},onTypingChange:eM}),{getReferenceProps:eO,getFloatingProps:ek,getItemProps:eN,getTriggerProps:eA}=(0,ex.useInteractions)([ed,ec,eb,eT]),eD=n.useMemo(()=>{let e=(0,y.mergeProps)(eO(),{onMouseMove(){O.set("allowMouseEnter",!0)}},q);return delete e.role,e},[eO,O,q]),ej=n.useMemo(()=>{let e=eA();if(!e)return e;let t=(0,y.mergeProps)(e,q);return delete t.role,delete t["aria-controls"],t},[eA,q]),eU=n.useMemo(()=>ek({onMouseMove(){O.set("allowMouseEnter",!0),"menu"===z.type&&O.set("hoverEnabled",!1)},onClick(){O.select("hoverEnabled")&&O.set("hoverEnabled",!1)},onKeyDown(e){let t=O.select("keyboardEventRelay");t&&!e.isPropagationStopped()&&t(e)}}),[ek,z.type,O]),eB=n.useMemo(()=>eN(),[eN]);O.useSyncedValues({floatingRootContext:el,activeTriggerProps:eD,inactiveTriggerProps:ej,popupProps:eU,itemProps:eB});let eH=n.useMemo(()=>({store:O,parent:T}),[O,T]),eG=(0,N.jsx)(i.Provider,{value:eH,children:"function"==typeof r?r({payload:K}):r});return void 0===z.type||"context-menu"===z.type?(0,N.jsx)(et.FloatingTree,{externalTree:A,children:eG}):eG});e.s(["MenuRoot",0,eB],516804),e.s(["MenuSubmenuRoot",0,function(e){let t=s().store,o=n.useMemo(()=>({parentMenu:t}),[t]);return(0,N.jsx)(eU.Provider,{value:o,children:(0,N.jsx)(eB,{...e})})}],641388)},136111,e=>{"use strict";var t=e.i(965652),n=e.i(362891),o=e.i(238706),r=e.i(655728);e.s(["useCompositeItem",0,function(e={}){let{highlightItemOnHover:a,highlightedIndex:i,onHighlightedIndexChange:s}=(0,o.useCompositeRootContext)(),{ref:u,index:l}=(0,r.useCompositeListItem)(e),d=i===l,c=t.useRef(null),p=(0,n.useMergedRefs)(u,c);return{compositeProps:t.useMemo(()=>({tabIndex:d?0:-1,onFocus(){s(l)},onMouseMove(){let e=c.current;if(!a||!e)return;let t=e.hasAttribute("disabled")||"true"===e.ariaDisabled;d||t||e.focus()}}),[d,s,l,a]),compositeRef:p,index:l}}])},755146,e=>{"use strict";var t,n=e.i(289721);e.i(961930);var o=e.i(68128),r=e.i(301823),a=e.i(6851),i=e.i(462053),s=e.i(784830),u=e.i(262059),l=e.i(560033),d=e.i(374083),c=e.i(476723),p=e.i(72173),f=e.i(521192),m=e.i(851663),g=e.i(378837),v=e.i(188366),h=e.i(516804),b=e.i(641388);e.i(708878);var S=e.i(462902),x=e.i(965652),R=e.i(585012),y=e.i(161476),E=e.i(102094),C=e.i(154660),M=e.i(887642),I=e.i(804849),P=e.i(954588),w=e.i(660272),T=e.i(430557),O=e.i(205995),k=e.i(422499),N=e.i(411657),A=e.i(306296),D=e.i(512677),j=e.i(682354),L=e.i(870541),F=e.i(271936),U=e.i(845756),_=e.i(581263),B=e.i(282109),H=e.i(748299),G=e.i(136111);function V(e){let{render:t,className:n,state:o=P.EMPTY_OBJECT,props:r=P.EMPTY_ARRAY,refs:a=P.EMPTY_ARRAY,metadata:i,stateAttributesMapping:s,tag:u="div",...l}=e,{compositeProps:d,compositeRef:c}=(0,G.useCompositeItem)({metadata:i});return(0,_.useRenderElement)(u,e,{state:o,ref:[...a,c],props:[d,...r,l],stateAttributesMapping:s})}var z=e.i(238706),Y=e.i(92615),K=e.i(894621),W=e.i(207516),J=e.i(586622),X=e.i(743757),$=e.i(132596),q=e.i(693354),Q=e.i(221732),Z=e.i(67077);let ee=(0,C.fastComponentRef)(function(e,t){let o,r,a,{render:i,className:s,disabled:u=!1,nativeButton:l=!0,id:d,openOnHover:c,delay:p=100,closeDelay:f=0,handle:m,payload:g,...v}=e,h=(0,F.useMenuRootContext)(!0),b=m?.store??h?.store;if(!b)throw Error((0,S.default)(85));let C=(0,W.useBaseUiId)(d),G=b.useState("isTriggerActive",C),ee=b.useState("floatingRootContext"),et=b.useState("isOpenedByTrigger",C),en=x.useRef(null),eo=(o=(0,X.useContextMenuRootContext)(!0),r=(0,F.useMenuRootContext)(!0),a=(0,$.useMenubarContext)(!0),x.useMemo(()=>a?{type:"menubar",context:a}:o&&!r?{type:"context-menu",context:o}:{type:void 0},[o,r,a])),er=(0,z.useCompositeRootContext)(!0),ea=(0,O.useFloatingTree)(),ei=x.useMemo(()=>ea??new D.FloatingTreeStore,[ea]),es=(0,O.useFloatingNodeId)(ei),eu=(0,O.useFloatingParentNodeId)(),{registerTrigger:el,isMountedByThisTrigger:ed}=(0,K.useTriggerDataForwarding)(C,en,b,{payload:g,closeDelay:f,parent:eo,floatingTreeRoot:ei,floatingNodeId:es,floatingParentNodeId:eu,keyboardEventRelay:er?.relayKeyboardEvent}),ec="menubar"===eo.type,ep=b.useState("disabled"),ef=u||ep||ec&&eo.context.disabled,{getButtonProps:em,buttonRef:eg}=(0,B.useButton)({disabled:ef,native:l});x.useEffect(()=>{et||void 0!==eo.type||(b.context.allowMouseUpTriggerRef.current=!1)},[b,et,eo.type]);let ev=x.useRef(null),eh=(0,y.useTimeout)(),eb=(0,M.useStableCallback)(e=>{if(!ev.current)return;eh.clear(),b.context.allowMouseUpTriggerRef.current=!1;let t=e.target;if((0,j.contains)(ev.current,t)||(0,j.contains)(b.select("positionerElement"),t)||t===ev.current||null!=t&&function e(t){return(0,Y.isHTMLElement)(t)&&t.hasAttribute("data-rootownerid")?t.getAttribute("data-rootownerid")??void 0:(0,Y.isLastTraversableNode)(t)?void 0:e((0,Y.getParentNode)(t))}(t)===b.select("rootId"))return;let n=(0,H.getPseudoElementBounds)(ev.current);e.clientX>=n.left-2&&e.clientX<=n.right+2&&e.clientY>=n.top-2&&e.clientY<=n.bottom+2||ei.events.emit("close",{domEvent:e,reason:J.REASONS.cancelOpen})});x.useEffect(()=>{et&&b.select("lastOpenChangeReason")===J.REASONS.triggerHover&&(0,E.ownerDocument)(ev.current).addEventListener("mouseup",eb,{once:!0})},[et,eb,b]);let eS=ec&&eo.context.hasSubmenuOpen,ex=c??eS,eR=(0,N.useHoverReferenceInteraction)(ee,{enabled:ex&&!ef&&"context-menu"!==eo.type&&(!ec||eS&&!ed),handleClose:(0,w.safePolygon)({blockPointerEvents:!ec}),mouseOnly:!0,move:!1,restMs:void 0===eo.type?p:void 0,delay:{close:f},triggerElementRef:en,externalTree:ei,isActiveTrigger:G}),ey=function(e,t){let n=(0,y.useTimeout)(),[o,r]=x.useState(!1);return(0,I.useIsoLayoutEffect)(()=>{e&&"trigger-hover"===t?(r(!0),n.start(q.PATIENT_CLICK_THRESHOLD,()=>{r(!1)})):e||(n.clear(),r(!1))},[e,t,n]),o}(et,b.select("lastOpenChangeReason")),eE=(0,T.useClick)(ee,{enabled:!ef&&"context-menu"!==eo.type,event:et&&ec?"click":"mousedown",toggle:!0,ignoreMouse:!1,stickIfOpen:void 0===eo.type&&ey}),eC=(0,k.useFocus)(ee,{enabled:!ef&&eS}),eM=function(e){let{enabled:t=!0,mouseDownAction:n,open:o}=e,r=x.useRef(!1);return x.useMemo(()=>t?{onMouseDown:e=>{("open"===n&&!o||"close"===n&&o)&&(r.current=!0,(0,E.ownerDocument)(e.currentTarget).addEventListener("click",()=>{r.current=!1},{once:!0}))},onClick:e=>{r.current&&(r.current=!1,e.preventBaseUIHandler())}}:P.EMPTY_OBJECT,[t,n,o])}({open:et,enabled:ec,mouseDownAction:"open"}),eI=(0,A.useInteractions)([eE,eC]),eP={disabled:ef,open:et},ew=b.useState("triggerProps",ed),eT=[ev,t,eg,el,en],eO=[eI.getReferenceProps(),eR??P.EMPTY_OBJECT,ew,{"aria-haspopup":"menu",id:C,onMouseDown:e=>{b.select("open")||(eh.start(200,()=>{b.context.allowMouseUpTriggerRef.current=!0}),(0,E.ownerDocument)(e.currentTarget).addEventListener("mouseup",eb,{once:!0}))}},ec?{role:"menuitem"}:{},eM,v,em],ek=x.useRef(null),eN=(0,M.useStableCallback)(e=>{R.flushSync(()=>{b.setOpen(!1,(0,Z.createChangeEventDetails)(J.REASONS.focusOut,e.nativeEvent,e.currentTarget))});let t=(0,L.getTabbableBeforeElement)(ek.current);t?.focus()}),eA=(0,M.useStableCallback)(e=>{let t=b.select("positionerElement");if(t&&(0,L.isOutsideEvent)(e,t))b.context.beforeContentFocusGuardRef.current?.focus();else{R.flushSync(()=>{b.setOpen(!1,(0,Z.createChangeEventDetails)(J.REASONS.focusOut,e.nativeEvent,e.currentTarget))});let n=(0,L.getTabbableAfterElement)(b.context.triggerFocusTargetRef.current||en.current);for(;null!==n&&(0,j.contains)(t,n);){let e=n;if((n=(0,L.getNextTabbable)(n))===e)break}n?.focus()}}),eD=(0,_.useRenderElement)("button",e,{enabled:!ec,stateAttributesMapping:U.pressableTriggerOpenStateMapping,state:eP,ref:eT,props:eO});return ec?(0,n.jsx)(V,{tag:"button",render:i,className:s,state:eP,refs:eT,props:eO,stateAttributesMapping:U.pressableTriggerOpenStateMapping}):et?(0,n.jsxs)(x.Fragment,{children:[(0,n.jsx)(Q.FocusGuard,{ref:ek,onFocus:eN},`${C}-pre-focus-guard`),(0,n.jsx)(x.Fragment,{children:eD},C),(0,n.jsx)(Q.FocusGuard,{ref:b.context.triggerFocusTargetRef,onFocus:eA},`${C}-post-focus-guard`)]}):(0,n.jsx)(x.Fragment,{children:eD},C)});var et=e.i(228559),en=e.i(203667);let eo=((t={}).popupWidth="--popup-width",t.popupHeight="--popup-height",t),er={activationDirection:e=>e?{"data-activation-direction":e}:null},ea=x.forwardRef(function(e,t){let{render:n,className:o,children:r,...a}=e,{store:i}=(0,F.useMenuRootContext)(),{side:s}=(0,et.useMenuPositionerContext)(),u=i.useState("instantType"),{children:l,state:d}=(0,en.usePopupViewport)({store:i,side:s,cssVars:eo,children:r}),c={activationDirection:d.activationDirection,transitioning:d.transitioning,instant:u};return(0,_.useRenderElement)("div",e,{state:c,ref:t,props:[a,{children:l}],stateAttributesMapping:er})});var ei=e.i(983640),es=e.i(655728),eu=e.i(398567),el=e.i(790326);let ed=x.forwardRef(function(e,t){let{render:n,className:o,label:r,id:a,nativeButton:i=!1,openOnHover:s=!0,delay:u=100,closeDelay:l=0,disabled:d=!1,...c}=e,p=(0,es.useCompositeListItem)(),f=(0,et.useMenuPositionerContext)(),{store:m}=(0,F.useMenuRootContext)(),g=(0,W.useBaseUiId)(a),v=m.useState("open"),h=m.useState("floatingRootContext"),b=m.useState("floatingTreeRoot"),R=(0,K.useTriggerRegistration)(g,m),y=x.useCallback(e=>{let t=R(e);return null!==e&&m.select("open")&&null==m.select("activeTriggerId")&&m.update({activeTriggerId:g,activeTriggerElement:e,closeDelay:l}),t},[R,l,m,g]),E=x.useRef(null),C=x.useCallback(e=>{E.current=e,m.set("activeTriggerElement",e)},[m]),M=(0,el.useMenuSubmenuRootContext)();if(!M?.parentMenu)throw Error((0,S.default)(37));m.useSyncedValue("closeDelay",l);let I=M.parentMenu,P=I.useState("itemProps"),O=I.useState("isActive",p.index),k=x.useMemo(()=>({type:"submenu-trigger",setActive(){I.set("activeIndex",p.index)}}),[I,p.index]),D=m.useState("disabled"),j=d||D,{getItemProps:L,itemRef:B}=(0,eu.useMenuItem)({closeOnClick:!1,disabled:j,highlighted:O,id:g,store:m,typingRef:I.context.typingRef,nativeButton:i,itemMetadata:k,nodeId:f?.nodeId}),H=m.useState("hoverEnabled"),G=I.useState("allowMouseEnter"),V=(0,N.useHoverReferenceInteraction)(h,{enabled:H&&s&&!j,handleClose:(0,w.safePolygon)({blockPointerEvents:!0}),mouseOnly:!0,move:!0,restMs:u,delay:G?{open:u,close:l}:0,triggerElementRef:E,externalTree:b}),z=(0,T.useClick)(h,{enabled:!j,event:"mousedown",toggle:!s,ignoreMouse:s,stickIfOpen:!1}),Y=(0,A.useInteractions)([z]),J=m.useState("triggerProps",!0);return delete J.id,(0,_.useRenderElement)("div",e,{state:{disabled:j,highlighted:O,open:v},stateAttributesMapping:U.triggerOpenStateMapping,props:[Y.getReferenceProps(),V,J,P,{tabIndex:v||O?0:-1,onBlur(){O&&I.set("activeIndex",null)}},c,L],ref:[t,p.ref,B,y,C]})});var ec=e.i(408656);class ep{constructor(){this.store=new ec.MenuStore}open(e){let t=e?this.store.context.triggerElements.getById(e):void 0;if(e&&!t)throw Error((0,S.default)(83,e));this.store.setOpen(!0,(0,Z.createChangeEventDetails)("imperative-action",void 0,t))}close(){this.store.setOpen(!1,(0,Z.createChangeEventDetails)("imperative-action",void 0,void 0))}get isOpen(){return this.store.state.open}}e.s(["Arrow",()=>o.MenuArrow,"Backdrop",()=>r.MenuBackdrop,"CheckboxItem",()=>a.MenuCheckboxItem,"CheckboxItemIndicator",()=>i.MenuCheckboxItemIndicator,"Group",()=>s.MenuGroup,"GroupLabel",()=>u.MenuGroupLabel,"Handle",0,ep,"Item",()=>l.MenuItem,"LinkItem",()=>d.MenuLinkItem,"Popup",()=>c.MenuPopup,"Portal",()=>p.MenuPortal,"Positioner",()=>f.MenuPositioner,"RadioGroup",()=>m.MenuRadioGroup,"RadioItem",()=>g.MenuRadioItem,"RadioItemIndicator",()=>v.MenuRadioItemIndicator,"Root",()=>h.MenuRoot,"Separator",()=>ei.Separator,"SubmenuRoot",()=>b.MenuSubmenuRoot,"SubmenuTrigger",0,ed,"Trigger",0,ee,"Viewport",0,ea,"createHandle",0,function(){return new ep}],143903);var ef=e.i(143903),ef=ef,em=e.i(975157),eg=e.i(776405),eg=eg;function ev({align:e="start",alignOffset:t=0,side:o="bottom",sideOffset:r=4,className:a,...i}){return(0,n.jsx)(ef.Portal,{children:(0,n.jsx)(ef.Positioner,{className:"isolate z-50 outline-none",align:e,alignOffset:t,side:o,sideOffset:r,children:(0,n.jsx)(ef.Popup,{"data-slot":"dropdown-menu-content",className:(0,em.cn)("z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95",a),...i})})})}e.i(533133),e.s(["DropdownMenu",0,function({...e}){return(0,n.jsx)(ef.Root,{"data-slot":"dropdown-menu",...e})},"DropdownMenuContent",0,ev,"DropdownMenuGroup",0,function({...e}){return(0,n.jsx)(ef.Group,{"data-slot":"dropdown-menu-group",...e})},"DropdownMenuItem",0,function({className:e,inset:t,variant:o="default",...r}){return(0,n.jsx)(ef.Item,{"data-slot":"dropdown-menu-item","data-inset":t,"data-variant":o,className:(0,em.cn)("group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive",e),...r})},"DropdownMenuLabel",0,function({className:e,inset:t,...o}){return(0,n.jsx)(ef.GroupLabel,{"data-slot":"dropdown-menu-label","data-inset":t,className:(0,em.cn)("px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7",e),...o})},"DropdownMenuSeparator",0,function({className:e,...t}){return(0,n.jsx)(ef.Separator,{"data-slot":"dropdown-menu-separator",className:(0,em.cn)("-mx-1 my-1 h-px bg-border",e),...t})},"DropdownMenuSub",0,function({...e}){return(0,n.jsx)(ef.SubmenuRoot,{"data-slot":"dropdown-menu-sub",...e})},"DropdownMenuSubContent",0,function({align:e="start",alignOffset:t=-3,side:o="right",sideOffset:r=0,className:a,...i}){return(0,n.jsx)(ev,{"data-slot":"dropdown-menu-sub-content",className:(0,em.cn)("w-auto min-w-[96px] rounded-lg bg-popover p-1 text-popover-foreground shadow-lg ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",a),align:e,alignOffset:t,side:o,sideOffset:r,...i})},"DropdownMenuSubTrigger",0,function({className:e,inset:t,children:o,...r}){return(0,n.jsxs)(ef.SubmenuTrigger,{"data-slot":"dropdown-menu-sub-trigger","data-inset":t,className:(0,em.cn)("flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",e),...r,children:[o,(0,n.jsx)(eg.default,{className:"ml-auto"})]})},"DropdownMenuTrigger",0,function({...e}){return(0,n.jsx)(ef.Trigger,{"data-slot":"dropdown-menu-trigger",...e})}],755146)},242941,e=>{"use strict";let t=(0,e.i(572989).default)("globe",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]]);e.s(["Globe",0,t],242941)},83434,e=>{"use strict";var t,n=e.i(289721),o=e.i(965652),r=e.i(585012),a=(t=function(e,n){return(t=Object.setPrototypeOf||({__proto__:[]})instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,n)},function(e,n){if("function"!=typeof n&&null!==n)throw TypeError("Class extends value "+String(n)+" is not a constructor or null");function o(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(o.prototype=n.prototype,new o)}),i="html",s=function(e,t){var n,o,r,a=null!=(n=e.ownerDocument)?n:document,s=null!=(r=null!=(o=a.defaultView)?o:a.parentWindow)?r:window;switch(t){case i:return e instanceof s.HTMLElement;case"svg":return e instanceof s.SVGElement;default:throw Error('Unrecognized element type "'.concat(t,'" for validateElementType.'))}},u=function(e,t){var n,o,r,a,u,l={};switch(e){case i:u=document.createElement(null!=(n=null==t?void 0:t.containerElement)?n:"div");break;case"svg":u=document.createElementNS("http://www.w3.org/2000/svg",null!=(o=null==t?void 0:t.containerElement)?o:"g");break;default:throw Error('Invalid element type "'.concat(e,'" for createPortalNode: must be "html" or "svg".'))}if(t&&"object"==typeof t&&t.attributes)for(var d=0,c=Object.entries(t.attributes);d<c.length;d++){var p=c[d],f=p[0],m=p[1];u.setAttribute(f,m)}var g={element:u,elementType:e,setPortalProps:function(e){l=e},getInitialPortalProps:function(){return l},mount:function(t,n){if(n!==a){if(g.unmount(),t!==r&&!s(t,e))throw Error('Invalid element type for portal: "'.concat(e,'" portalNodes must be used with ').concat(e," elements, but OutPortal is within <").concat(t.tagName,">."));t.replaceChild(g.element,n),r=t,a=n}},unmount:function(e){(!e||e===a)&&r&&a&&(r.replaceChild(a,g.element),r=void 0,a=void 0)}};return g},l=function(e){function t(t){var n=e.call(this,t)||this;return n.addPropsChannel=function(){Object.assign(n.props.node,{setPortalProps:function(e){n.setState({nodeProps:e})}})},n.state={nodeProps:n.props.node.getInitialPortalProps()},n}return a(t,e),t.prototype.componentDidMount=function(){this.addPropsChannel()},t.prototype.componentDidUpdate=function(){this.addPropsChannel()},t.prototype.render=function(){var e=this,t=this.props,n=t.children,a=t.node;return r.createPortal(o.Children.map(n,function(t){return o.isValidElement(t)?o.cloneElement(t,e.state.nodeProps):t}),a.element)},t}(o.PureComponent),d=function(e){function t(t){var n=e.call(this,t)||this;return n.placeholderNode=o.createRef(),n.passPropsThroughPortal(),n}return a(t,e),t.prototype.passPropsThroughPortal=function(){var e=Object.assign({},this.props,{node:void 0});this.props.node.setPortalProps(e)},t.prototype.componentDidMount=function(){var e=this.props.node;this.currentPortalNode=e;var t=this.placeholderNode.current,n=t.parentNode;e.mount(n,t),this.passPropsThroughPortal()},t.prototype.componentDidUpdate=function(){var e=this.props.node;this.currentPortalNode&&e!==this.currentPortalNode&&(this.currentPortalNode.unmount(this.placeholderNode.current),this.currentPortalNode.setPortalProps({}),this.currentPortalNode=e);var t=this.placeholderNode.current,n=t.parentNode;e.mount(n,t),this.passPropsThroughPortal()},t.prototype.componentWillUnmount=function(){var e=this.props.node;e.unmount(this.placeholderNode.current),e.setPortalProps({})},t.prototype.render=function(){var e=this.props.node.element.tagName,t=this.props.node.elementType===i?e.toLowerCase():e;return o.createElement(t,{ref:this.placeholderNode})},t}(o.PureComponent),c=u.bind(null,i);u.bind(null,"svg");let p=(0,e.i(19578).default)(()=>e.A(243288).then(e=>({default:e.TaskTerminal})),{loadableGenerated:{modules:[346069]},ssr:!1}),f=(0,o.createContext)(null);function m(){let e=(0,o.useContext)(f);if(!e)throw Error("useTerminalPortal must be used within TerminalPortalProvider");return e}e.s(["TerminalOutlet",0,function({taskId:e,worktreePath:t,onSessionEnd:r}){let{getPortal:a,setOnSessionEnd:i}=m(),[s,u]=(0,o.useState)(null);return((0,o.useEffect)(()=>(u(a(e,t)),()=>u(null)),[e,t,a]),(0,o.useEffect)(()=>(i(e,r??null),()=>i(e,null)),[e,r,i]),s)?(0,n.jsx)(d,{node:s.portalNode}):null},"TerminalPortalProvider",0,function({children:e}){let t=(0,o.useRef)(new Map),r=(0,o.useRef)([]),[,a]=(0,o.useState)(0),i=(0,o.useCallback)((e,n)=>{let o=t.current.get(e);if(o)return r.current=r.current.filter(t=>t!==e),r.current.push(e),o;for(;t.current.size>=3&&r.current.length>0;){let e=r.current.shift();t.current.delete(e)}let i={portalNode:c({attributes:{style:"width:100%;height:100%"}}),taskId:e,worktreePath:n,onSessionEnd:{current:null}};return t.current.set(e,i),r.current.push(e),a(e=>e+1),i},[]),s=(0,o.useCallback)(e=>{t.current.delete(e),r.current=r.current.filter(t=>t!==e),a(e=>e+1)},[]),u=(0,o.useCallback)((e,n)=>{let o=t.current.get(e);o&&(o.onSessionEnd.current=n)},[]),d=Array.from(t.current.values()).map(e=>(0,n.jsx)(l,{node:e.portalNode,children:(0,n.jsx)(p,{taskId:e.taskId,worktreePath:e.worktreePath,onSessionEnd:t=>e.onSessionEnd.current?.(t),useCanvasRenderer:!0})},e.taskId));return(0,n.jsxs)(f.Provider,{value:{getPortal:i,removePortal:s,setOnSessionEnd:u},children:[e,d]})},"useTerminalPortal",0,m],83434)}]);
|