tower-studio 0.2.46 → 0.2.47
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/build-manifest.json +3 -3
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- 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 +82 -70
- package/.next/standalone/.next/server/app/_not-found/page.js +2 -1
- 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/browse-fs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/git/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[taskId]/merge/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/harness/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/harness/page/server-reference-manifest.json +92 -80
- package/.next/standalone/.next/server/app/harness/page.js +2 -1
- package/.next/standalone/.next/server/app/harness/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/harness/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/missions/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/missions/page/server-reference-manifest.json +150 -138
- package/.next/standalone/.next/server/app/missions/page.js +5 -4
- 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 +82 -70
- package/.next/standalone/.next/server/app/onboarding/page.js +2 -1
- 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 +82 -70
- package/.next/standalone/.next/server/app/page.js +2 -1
- 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 +128 -116
- package/.next/standalone/.next/server/app/settings/page.js +4 -3
- 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 +190 -178
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page.js +3 -2
- 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 +166 -154
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page.js +3 -2
- 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/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page/server-reference-manifest.json +86 -74
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page.js +2 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page_client-reference-manifest.js +1 -1
- 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 +150 -138
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page.js +3 -2
- 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 +162 -162
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page.js +4 -3
- 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 +82 -70
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js +3 -2
- 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 +140 -140
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page.js +3 -2
- 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 +182 -170
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js +6 -5
- 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 +108 -96
- package/.next/standalone/.next/server/app/workspaces/page.js +2 -1
- 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/chunks/0se9_next_dist_esm_build_templates_app-route_0eh8dj_.js +7 -7
- 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]__0esywxf._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kkrbn-._.js +1 -1
- package/.next/standalone/.next/server/chunks/_0_w835g._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_05balzk._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_0gif-f5._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_0pg9w-x._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_0vp6.co._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_11k6i~l._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_actions_agent-actions_ts_10q9r5b._.js +3 -3
- 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/[root-of-the-server]__00qdvw7._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__07rk6ic._.js → [root-of-the-server]__0282989._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0hzwoy5._.js → [root-of-the-server]__03jikql._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0trmndk._.js → [root-of-the-server]__04dod9d._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__05tx27l._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0m8m7vc._.js → [root-of-the-server]__07ha-7q._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__07~giyb._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0bx_h2u._.js → [root-of-the-server]__0872sqe._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__090y_.y._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0b6hugs._.js → [root-of-the-server]__09qoc8v._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0.0m12b._.js → [root-of-the-server]__0bl842b._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0br5e7w._.js → [root-of-the-server]__0c81jqz._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0dh0alq._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0u3~-.g._.js → [root-of-the-server]__0fy8mj6._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0kqp70x._.js → [root-of-the-server]__0gsk~9d._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h4ltpn._.js +5 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0hx2p17._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ie8~g5._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0n02kfa._.js → [root-of-the-server]__0j1w7ro._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0esg88l._.js → [root-of-the-server]__0jxfeb6._.js} +1 -1
- 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]__00qzvly._.js → [root-of-the-server]__0mi.v4q._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__06sew6r._.js → [root-of-the-server]__0nell0t._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0odoa97._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__12viys4._.js → [root-of-the-server]__0q8o5us._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0b6fbjv._.js → [root-of-the-server]__0qjjy1r._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0rg73f.._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0t3q30a._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0tpho3f._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0dhq_gl._.js → [root-of-the-server]__0tusyj0._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0~edc3d._.js → [root-of-the-server]__0x6eyvj._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0n3uc.v._.js → [root-of-the-server]__0xftcya._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0xiiocg._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0x7br99._.js → [root-of-the-server]__0znl9us._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zsnp~d._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0~fdua7._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11fp64w._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0vyl8to._.js → [root-of-the-server]__1290yo~._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12s3kky._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0s_q09t._.js → [root-of-the-server]__136sh9u._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0-~9em3._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0.-.0zk._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0..h3hk._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0b660g4._.js → _0111pr2._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0czsddm._.js → _029yl-g._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0q2pep_._.js → _02mcoex._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_02t7f2_._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0gomvsp._.js → _04brhyt._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_1118hto._.js → _08b3kyv._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0-5.hgb._.js → _0a___34._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0ami9yt._.js → _0b4v~ls._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0bdyusg._.js +6 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0hsuip_._.js → _0c8-9m9._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0j7m~u6._.js → _0gcox_6._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0snv7nt._.js → _0gte_c4._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0g~p9_x._.js → _0hyn4md._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0l6byg1._.js → _0lqjtwo._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0noar.v._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0os43sb._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0o_c3b2._.js → _0rilhs1._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0ak77.u._.js → _0sbkase._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_00_h2nx._.js → _0t-0.1o._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0wbcp88._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0mmy~98._.js → _0w~~xn0._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0awn2mm._.js → _0xexuoi._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0xu906p._.js +4 -0
- package/.next/standalone/.next/server/chunks/ssr/_0z-z415._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0zx1ubq._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0ty4xe6._.js → _0~2k74h._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0hx2o_8._.js → _0~rpgs_._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_10a_vqn._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0p5ft59._.js → _10or.ne._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_11.knhq._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_12s8n8g._.js → _124j7aj._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_13yv8at._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_11j0qlp._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_actions_07_wts6._.js +47 -0
- package/.next/standalone/.next/server/chunks/ssr/src_actions_agent-actions_ts_0~wc.sy._.js +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_0cld9rt._.js → src_lib_0-3zx.v._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_0_px2pz._.js → src_lib_00ial55._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_0a.zy31._.js → src_lib_01-0ix1._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_0b73q0a._.js → src_lib_01d~ml9._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_04nzvfd._.js → src_lib_0278czx._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_lib_07o.0r6._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_09jpiip._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0bmg7ix._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0cb~2g1._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0fdsvpu._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0fyrfen._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_0dbf2qa._.js → src_lib_0gqe-g3._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0ixnmd0._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0lpxsj~._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0pgz5n6._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_0h2u7a0._.js → src_lib_0tq69ek._.js} +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
- 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 +1146 -1068
- package/.next/standalone/.next/static/chunks/{0oyskd~8~j.j7.js → 00agq5_c-.llc.js} +1 -1
- package/.next/standalone/.next/static/chunks/015i97g3voot2.js +2 -0
- package/.next/standalone/.next/static/chunks/{02v-9v~885t9c.js → 01wvj~s3skc-5.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0.gedys.tq.~k.js → 031br6.h-zycv.js} +1 -1
- package/.next/standalone/.next/static/chunks/{07qijq9o5jccu.js → 054ztat09k8d8.js} +1 -1
- package/.next/standalone/.next/static/chunks/07f592yv~pptf.js +1 -0
- package/.next/standalone/.next/static/chunks/{06x7oq8_iu~9d.js → 08j4ettv1zbmn.js} +1 -1
- package/.next/standalone/.next/static/chunks/{03uix~1ru.ovv.js → 08kc0~d-bpqxd.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0j5olwb~d3~3j.js → 08s_oyki61yjf.js} +1 -1
- package/.next/standalone/.next/static/chunks/09bc_~h466~tj.js +1 -0
- package/.next/standalone/.next/static/chunks/{0q1872yhybt55.js → 0_hj_1l73v-on.js} +1 -1
- package/.next/standalone/.next/static/chunks/{00o_eiv12t~.1.js → 0a54zbhpg7-ql.js} +1 -1
- package/.next/standalone/.next/static/chunks/0c2po53wqe-op.js +1 -0
- package/.next/standalone/.next/static/chunks/0clhvl~13pwv2.js +1 -0
- package/.next/standalone/.next/static/chunks/0fi1kdxrc9m~d.js +1 -0
- package/.next/standalone/.next/static/chunks/0j56_.0_wup.m.js +1 -0
- package/.next/standalone/.next/static/chunks/{17z9uivez~kp3.js → 0lokkque~1fox.js} +1 -1
- package/.next/standalone/.next/static/chunks/0m5k~sgt78d8a.js +1 -0
- package/.next/standalone/.next/static/chunks/{0d9u2xspag~4h.js → 0mzzaly9-cwhd.js} +1 -1
- package/.next/standalone/.next/static/chunks/0pg~fc3o64-u0.js +1 -0
- package/.next/standalone/.next/static/chunks/{0-kkc.ibted8y.js → 0pvc93qomwhkq.js} +1 -1
- package/.next/standalone/.next/static/chunks/0smoiulyzysrc.js +2 -0
- package/.next/standalone/.next/static/chunks/0ufatfbq87c84.js +1 -0
- package/.next/standalone/.next/static/chunks/{09om2gfwimh7k.js → 0ujznvfinjpzn.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0cf7e1scao3zk.js → 0ux~8zee88x-j.js} +1 -1
- package/.next/standalone/.next/static/chunks/0vy01_a6xhhrr.js +1 -0
- package/.next/standalone/.next/static/chunks/0xd_tk4asn0qj.js +1 -0
- package/.next/standalone/.next/static/chunks/{12-mlz2vukuga.js → 0~l470bpaoz9f.js} +1 -1
- package/.next/standalone/.next/static/chunks/118j.0w2pbdea.js +1 -0
- package/.next/standalone/.next/static/chunks/13yfli6~6o4z~.js +1 -0
- package/.next/standalone/.next/static/chunks/{0t1awv68pnn-e.js → 15rlbf5rw1dd..js} +1 -1
- package/.next/standalone/package.json +1 -1
- package/dist/mcp-server.cjs +6 -0
- package/package.json +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-geq20._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__02~hdzx._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h_pt4a._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0idkp76._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0j4m.1s._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0kmonje._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0lh3mlq._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0muf4wq._.js +0 -49
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0o5ohqy._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ta_mpj._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ws0_c1._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0~mhv4m._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1013v_g._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__123rmn-._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/_05~lqg-._.js +0 -4
- package/.next/standalone/.next/server/chunks/ssr/_0771b4a._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/_0fmko25._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0hg~.4w._.js +0 -6
- package/.next/standalone/.next/server/chunks/ssr/_0nrxhfb._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/_0vkl7.h._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/_0x09t_o._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/_0zn.4bi._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/_1086w4p._.js +0 -47
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0er7rzd._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0f0v8_~._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0fr6fzy._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0k04rl3._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0sq6aqm._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0ui-~7g._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0z-gn78._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_13c4a4g._.js +0 -3
- package/.next/standalone/.next/static/chunks/00g58.es_hxli.js +0 -1
- package/.next/standalone/.next/static/chunks/01qtgj0xv1fsm.js +0 -2
- package/.next/standalone/.next/static/chunks/024euw7po0d0w.js +0 -1
- package/.next/standalone/.next/static/chunks/03ct4d8znb7tp.js +0 -1
- package/.next/standalone/.next/static/chunks/0alhq.h4~iogi.js +0 -1
- package/.next/standalone/.next/static/chunks/0ck~sr0nkabl~.js +0 -1
- package/.next/standalone/.next/static/chunks/0d1ok-v-u-xe~.js +0 -1
- package/.next/standalone/.next/static/chunks/0ftptcpntzaux.js +0 -1
- package/.next/standalone/.next/static/chunks/0gk~m5bwgoafi.js +0 -1
- package/.next/standalone/.next/static/chunks/0in_7s8n4lmfr.js +0 -1
- package/.next/standalone/.next/static/chunks/0mtrtl-jl46in.js +0 -2
- package/.next/standalone/.next/static/chunks/0~2l3wz-gxs2j.js +0 -1
- package/.next/standalone/.next/static/chunks/0~7h_a_dofg-4.js +0 -1
- package/.next/standalone/.next/static/chunks/15gztq9f12uhe.js +0 -1
- package/.next/standalone/.next/static/chunks/15ue90qe1sh-9.js +0 -1
- /package/.next/standalone/.next/static/{Pf_z-PYy0CJhvcyPEi-LM → dFewkdixeBoRBY6Fvw11J}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{Pf_z-PYy0CJhvcyPEi-LM → dFewkdixeBoRBY6Fvw11J}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{Pf_z-PYy0CJhvcyPEi-LM → dFewkdixeBoRBY6Fvw11J}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,465536,(e,t,r)=>{var s;"u">typeof __nccwpck_require__&&(__nccwpck_require__.ab="/ROOT/node_modules/.pnpm/next@16.2.1_@babel+core@7.29.0_@playwright+test@1.58.2_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/compiled/os-browserify/"),(s={}).endianness=function(){return"LE"},s.hostname=function(){return"u">typeof location?location.hostname:""},s.loadavg=function(){return[]},s.uptime=function(){return 0},s.freemem=function(){return Number.MAX_VALUE},s.totalmem=function(){return Number.MAX_VALUE},s.cpus=function(){return[]},s.type=function(){return"Browser"},s.release=function(){return"u">typeof navigator?navigator.appVersion:""},s.networkInterfaces=s.getNetworkInterfaces=function(){return{}},s.arch=function(){return"javascript"},s.platform=function(){return"browser"},s.tmpdir=s.tmpDir=function(){return"/tmp"},s.EOL="\n",s.homedir=function(){return"/"},t.exports=s},930787,(e,t,r)=>{!function(){"use strict";var e={114:function(e){function t(e){if("string"!=typeof e)throw TypeError("Path must be a string. Received "+JSON.stringify(e))}function r(e,t){for(var r,s="",a=0,n=-1,o=0,i=0;i<=e.length;++i){if(i<e.length)r=e.charCodeAt(i);else if(47===r)break;else r=47;if(47===r){if(n===i-1||1===o);else if(n!==i-1&&2===o){if(s.length<2||2!==a||46!==s.charCodeAt(s.length-1)||46!==s.charCodeAt(s.length-2)){if(s.length>2){var l=s.lastIndexOf("/");if(l!==s.length-1){-1===l?(s="",a=0):a=(s=s.slice(0,l)).length-1-s.lastIndexOf("/"),n=i,o=0;continue}}else if(2===s.length||1===s.length){s="",a=0,n=i,o=0;continue}}t&&(s.length>0?s+="/..":s="..",a=2)}else s.length>0?s+="/"+e.slice(n+1,i):s=e.slice(n+1,i),a=i-n-1;n=i,o=0}else 46===r&&-1!==o?++o:o=-1}return s}var s={resolve:function(){for(var e,s,a="",n=!1,o=arguments.length-1;o>=-1&&!n;o--)o>=0?s=arguments[o]:(void 0===e&&(e=""),s=e),t(s),0!==s.length&&(a=s+"/"+a,n=47===s.charCodeAt(0));if(a=r(a,!n),n)if(a.length>0)return"/"+a;else return"/";return a.length>0?a:"."},normalize:function(e){if(t(e),0===e.length)return".";var s=47===e.charCodeAt(0),a=47===e.charCodeAt(e.length-1);return(0!==(e=r(e,!s)).length||s||(e="."),e.length>0&&a&&(e+="/"),s)?"/"+e:e},isAbsolute:function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},join:function(){if(0==arguments.length)return".";for(var e,r=0;r<arguments.length;++r){var a=arguments[r];t(a),a.length>0&&(void 0===e?e=a:e+="/"+a)}return void 0===e?".":s.normalize(e)},relative:function(e,r){if(t(e),t(r),e===r||(e=s.resolve(e))===(r=s.resolve(r)))return"";for(var a=1;a<e.length&&47===e.charCodeAt(a);++a);for(var n=e.length,o=n-a,i=1;i<r.length&&47===r.charCodeAt(i);++i);for(var l=r.length-i,c=o<l?o:l,d=-1,u=0;u<=c;++u){if(u===c){if(l>c){if(47===r.charCodeAt(i+u))return r.slice(i+u+1);else if(0===u)return r.slice(i+u)}else o>c&&(47===e.charCodeAt(a+u)?d=u:0===u&&(d=0));break}var m=e.charCodeAt(a+u);if(m!==r.charCodeAt(i+u))break;47===m&&(d=u)}var h="";for(u=a+d+1;u<=n;++u)(u===n||47===e.charCodeAt(u))&&(0===h.length?h+="..":h+="/..");return h.length>0?h+r.slice(i+d):(i+=d,47===r.charCodeAt(i)&&++i,r.slice(i))},_makeLong:function(e){return e},dirname:function(e){if(t(e),0===e.length)return".";for(var r=e.charCodeAt(0),s=47===r,a=-1,n=!0,o=e.length-1;o>=1;--o)if(47===(r=e.charCodeAt(o))){if(!n){a=o;break}}else n=!1;return -1===a?s?"/":".":s&&1===a?"//":e.slice(0,a)},basename:function(e,r){if(void 0!==r&&"string"!=typeof r)throw TypeError('"ext" argument must be a string');t(e);var s,a=0,n=-1,o=!0;if(void 0!==r&&r.length>0&&r.length<=e.length){if(r.length===e.length&&r===e)return"";var i=r.length-1,l=-1;for(s=e.length-1;s>=0;--s){var c=e.charCodeAt(s);if(47===c){if(!o){a=s+1;break}}else -1===l&&(o=!1,l=s+1),i>=0&&(c===r.charCodeAt(i)?-1==--i&&(n=s):(i=-1,n=l))}return a===n?n=l:-1===n&&(n=e.length),e.slice(a,n)}for(s=e.length-1;s>=0;--s)if(47===e.charCodeAt(s)){if(!o){a=s+1;break}}else -1===n&&(o=!1,n=s+1);return -1===n?"":e.slice(a,n)},extname:function(e){t(e);for(var r=-1,s=0,a=-1,n=!0,o=0,i=e.length-1;i>=0;--i){var l=e.charCodeAt(i);if(47===l){if(!n){s=i+1;break}continue}-1===a&&(n=!1,a=i+1),46===l?-1===r?r=i:1!==o&&(o=1):-1!==r&&(o=-1)}return -1===r||-1===a||0===o||1===o&&r===a-1&&r===s+1?"":e.slice(r,a)},format:function(e){var t,r;if(null===e||"object"!=typeof e)throw TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return t=e.dir||e.root,r=e.base||(e.name||"")+(e.ext||""),t?t===e.root?t+r:t+"/"+r:r},parse:function(e){t(e);var r,s={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return s;var a=e.charCodeAt(0),n=47===a;n?(s.root="/",r=1):r=0;for(var o=-1,i=0,l=-1,c=!0,d=e.length-1,u=0;d>=r;--d){if(47===(a=e.charCodeAt(d))){if(!c){i=d+1;break}continue}-1===l&&(c=!1,l=d+1),46===a?-1===o?o=d:1!==u&&(u=1):-1!==o&&(u=-1)}return -1===o||-1===l||0===u||1===u&&o===l-1&&o===i+1?-1!==l&&(0===i&&n?s.base=s.name=e.slice(1,l):s.base=s.name=e.slice(i,l)):(0===i&&n?(s.name=e.slice(1,o),s.base=e.slice(1,l)):(s.name=e.slice(i,o),s.base=e.slice(i,l)),s.ext=e.slice(o,l)),i>0?s.dir=e.slice(0,i-1):n&&(s.dir="/"),s},sep:"/",delimiter:":",win32:null,posix:null};s.posix=s,e.exports=s}},r={};function s(t){var a=r[t];if(void 0!==a)return a.exports;var n=r[t]={exports:{}},o=!0;try{e[t](n,n.exports,s),o=!1}finally{o&&delete r[t]}return n.exports}s.ab="/ROOT/node_modules/.pnpm/next@16.2.1_@babel+core@7.29.0_@playwright+test@1.58.2_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/compiled/path-browserify/",t.exports=s(114)}()},914935,e=>{"use strict";var t=e.i(289721),r=e.i(965652),s=e.i(538059),a=e.i(210702),n=e.i(487278),o=e.i(232545),i=e.i(464249),l=e.i(998626),c=e.i(911219),d=e.i(49007),u=e.i(902539),m=e.i(263938),h=e.i(645378),p=e.i(453889),x=e.i(572989);let g=(0,x.default)("gauge",[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]]);var f=e.i(468443);let j=(0,x.default)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);var b=e.i(386343),v=e.i(755146),w=e.i(337822),N=e.i(759684),y=e.i(776639),k=e.i(746798),C=e.i(519455),S=e.i(793479),T=e.i(514798);let P=(0,T.createServerReference)("4036232b529af0e5d065629d1878dc1a6e82f9ab45",T.callServer,void 0,T.findSourceMapURL,"createWorkspace"),D=(0,T.createServerReference)("60bc9436cec7b2f26cf49b181625cda9710fd3e4cc",T.callServer,void 0,T.findSourceMapURL,"updateWorkspace"),I=(0,T.createServerReference)("404f73addc943bb8455a63e7ceecb59ca89b3e445c",T.callServer,void 0,T.findSourceMapURL,"deleteWorkspace"),O=(0,T.createServerReference)("40da1ea17360e58bedf2e6bf6d1f53246b673da623",T.callServer,void 0,T.findSourceMapURL,"reorderWorkspaces");var M=e.i(242407);let $=(0,T.createServerReference)("403508781c13bf9d40b2fa51d399f5ca275af8be45",T.callServer,void 0,T.findSourceMapURL,"createLabel"),L=(0,T.createServerReference)("403629f8c3d76ad7fbefdd04b8cdbe84c9ffc95758",T.callServer,void 0,T.findSourceMapURL,"deleteLabel");var R=e.i(889620),A=e.i(533499),E=e.i(360112),B=e.i(720247),z=e.i(775712),F=e.i(67013);let W=["📋","🚀","🎯","💡","🔧","📦","🎨","📊","🔬","🌟","📝","🏗️"];function _({workspaces:e}){let n=(0,s.useRouter)(),i=(0,s.usePathname)(),{t:l}=(0,A.useI18n)(),[c,d]=(0,r.useState)(!1);(0,r.useEffect)(()=>{"true"===localStorage.getItem("sidebar-collapsed")&&d(!0)},[]);let[m,h]=(0,r.useState)(!1),[p,x]=(0,r.useState)(!1),[j,b]=(0,r.useState)(!1),[v,w]=(0,r.useState)(null),[y,S]=(0,r.useState)(""),[T,M]=(0,r.useState)(W[0]),[$,L]=(0,r.useState)(null),[F,V]=(0,r.useState)(e);(0,r.useEffect)(()=>{V(e)},[e]);let q=(0,B.useSensors)((0,B.useSensor)(B.PointerSensor,{activationConstraint:{distance:8}})),X=(0,r.useCallback)(t=>{let{active:r,over:s}=t;if(!s||r.id===s.id)return;let a=F.findIndex(e=>e.id===r.id),o=F.findIndex(e=>e.id===s.id);if(-1===a||-1===o)return;let i=(0,z.arrayMove)(F,a,o);V(i),O(i.map(e=>e.id)).then(()=>n.refresh()).catch(()=>{V(e),E.toast.error(l("sidebar.reorderError"))})},[F,e,n,l]),J=i.split("/workspaces/")[1]?.split("/")[0],Y=(0,r.useCallback)(e=>{if(J===e)return;let t=(0,R.getLastProjectId)(e);n.push(t?`/workspaces/${e}?projectId=${t}`:`/workspaces/${e}`)},[J,n]),Z=(0,r.useCallback)(()=>{d(e=>{let t=!e;return localStorage.setItem("sidebar-collapsed",String(t)),t})},[]),Q=(0,r.useCallback)(async()=>{if(!y.trim())return;let e=await P({name:y.trim(),description:T});S(""),M(W[0]),h(!1),n.refresh(),n.push(`/workspaces/${e.id}`)},[y,T,n]),ee=(0,r.useCallback)(async()=>{y.trim()&&$&&(await D($,{name:y.trim(),description:T}),S(""),x(!1),L(null),n.refresh())},[y,T,$,n]),et=(0,r.useCallback)(e=>{L(e.id),S(e.name),M(e.description&&W.includes(e.description)?e.description:W[0]),x(!0)},[]),er=(0,r.useCallback)(async(t,r)=>{if(e.length<=1)return void E.toast.error(l("sidebar.lastWorkspaceError"));if(confirm(l("sidebar.deleteConfirm",{name:r})))try{await I(t),n.refresh(),J===t&&n.push("/workspaces")}catch{E.toast.error(l("sidebar.lastWorkspaceError"))}},[J,n,l,e.length]),es=(0,r.useCallback)(e=>{w(e),b(!0)},[]),ea=e=>e.description&&W.includes(e.description)?e.description:e.name.charAt(0).toUpperCase();return c?(0,t.jsxs)("aside",{className:"flex h-screen w-14 flex-col items-center border-r border-border bg-sidebar py-3",children:[(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)("button",{onClick:Z,className:"mb-4 flex h-9 w-9 items-center justify-center rounded-lg bg-primary/10 ring-1 ring-primary/20 transition-transform hover:scale-105"}),children:(0,t.jsx)("img",{src:"/logo.png",alt:"Tower",className:"h-6 w-6 rounded"})}),(0,t.jsx)(k.TooltipContent,{side:"right",sideOffset:8,children:l("sidebar.expand")})]}),(0,t.jsx)(N.ScrollArea,{className:"flex-1 min-h-0",children:(0,t.jsxs)("div",{className:"flex flex-col items-center gap-1 px-0.5 pt-1",children:[e.map(e=>{let r=J===e.id,s=ea(e);return(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)("button",{onClick:()=>Y(e.id),className:`flex h-9 w-9 items-center justify-center rounded-lg transition-all ${r?"ring-1 ring-primary/20 text-foreground cursor-default":"text-muted-foreground hover:text-foreground cursor-pointer"}`}),children:(0,t.jsx)("span",{className:"flex h-7 w-7 items-center justify-center rounded-md bg-muted text-sm",children:W.includes(s)?s:(0,t.jsx)("span",{className:"text-xs font-semibold",children:s})})}),(0,t.jsx)(k.TooltipContent,{side:"right",sideOffset:8,children:e.name})]},e.id)}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)("button",{"data-tour":"create-workspace",onClick:()=>h(!0),className:"flex h-9 w-9 items-center justify-center rounded-lg text-muted-foreground transition-colors hover:bg-accent hover:text-foreground"}),children:(0,t.jsx)(o.Plus,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{side:"right",sideOffset:8,children:l("sidebar.newWorkspace")})]})]})}),(0,t.jsxs)("div",{className:"mt-2 flex flex-col items-center gap-1",children:[(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)("button",{onClick:()=>n.push("/missions"),className:`rounded-lg p-2 transition-colors ${"/missions"===i?"text-foreground bg-accent":"text-muted-foreground hover:bg-accent hover:text-foreground"}`}),children:(0,t.jsx)(g,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{side:"right",sideOffset:8,children:l("missions.navLabel")})]}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)("button",{onClick:()=>n.push("/harness"),className:`rounded-lg p-2 transition-colors ${"/harness"===i?"text-foreground bg-accent":"text-muted-foreground hover:bg-accent hover:text-foreground"}`}),children:(0,t.jsx)(f.BellRing,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{side:"right",sideOffset:8,children:l("harness.navLabel")})]}),(0,t.jsx)(U,{wsId:J||e[0]?.id,pathname:i,t:l,collapsed:!0})]}),(0,t.jsx)(K,{open:m,onOpenChange:h,title:l("workspace.create"),name:y,onNameChange:S,icon:T,onIconChange:M,onSubmit:Q,submitLabel:l("common.create"),nameLabel:l("workspace.name"),iconLabel:l("workspace.icon"),namePlaceholder:l("workspace.namePlaceholder"),cancelLabel:l("common.cancel")})]}):(0,t.jsxs)("aside",{className:"noise relative flex h-screen w-56 flex-col border-r border-border bg-sidebar",children:[(0,t.jsxs)("div",{className:"relative z-10 flex items-center gap-3 px-4 py-4",children:[(0,t.jsx)("img",{src:"/logo.png",alt:"Tower",className:"h-9 w-9 rounded-lg"}),(0,t.jsxs)("div",{className:"flex-1",children:[(0,t.jsx)("div",{className:"text-sm font-semibold tracking-tight text-foreground",children:"Tower"}),(0,t.jsx)("div",{className:"text-[10px] font-medium uppercase tracking-widest text-muted-foreground",children:"Studio"})]}),(0,t.jsx)(C.Button,{variant:"ghost",size:"icon-xs",onClick:Z,className:"text-muted-foreground",title:l("sidebar.collapse"),children:(0,t.jsx)(u.ChevronsLeft,{className:"h-4 w-4"})})]}),(0,t.jsxs)("div",{className:"relative z-10 flex items-center justify-between px-4 py-2",children:[(0,t.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wider text-muted-foreground",children:l("sidebar.workspace")}),(0,t.jsx)(C.Button,{variant:"ghost",size:"icon-sm",className:"text-muted-foreground","data-tour":"create-workspace",onClick:()=>{S(""),M(W[0]),h(!0)},title:l("sidebar.newWorkspace"),children:(0,t.jsx)(o.Plus,{className:"h-3.5 w-3.5"})})]}),(0,t.jsx)(N.ScrollArea,{className:"relative z-10 mt-2 flex-1 min-h-0",children:(0,t.jsx)("div",{className:"px-2 py-1",children:(0,t.jsx)(B.DndContext,{id:"workspace-sidebar",sensors:q,collisionDetection:B.closestCenter,onDragEnd:X,children:(0,t.jsx)(z.SortableContext,{items:F.map(e=>e.id),strategy:z.verticalListSortingStrategy,children:F.map(e=>(0,t.jsx)(H,{ws:e,isActive:J===e.id,icon:ea(e),disableDelete:F.length<=1,t:l,onSelect:()=>Y(e.id),onEdit:()=>et(e),onManageLabels:()=>es(e.id),onDelete:()=>er(e.id,e.name)},e.id))})})})}),(0,t.jsxs)(a.default,{href:"/missions",className:`relative z-10 flex items-center gap-2 border-t border-border px-4 py-3 text-[11px] cursor-pointer transition-colors ${"/missions"===i?"text-foreground":"text-muted-foreground hover:text-foreground"}`,children:[(0,t.jsx)(g,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:l("missions.navLabel")})]}),(0,t.jsxs)(a.default,{href:"/harness",className:`relative z-10 flex items-center gap-2 border-t border-border px-4 py-3 text-[11px] cursor-pointer transition-colors ${"/harness"===i?"text-foreground":"text-muted-foreground hover:text-foreground"}`,children:[(0,t.jsx)(f.BellRing,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:l("harness.navLabel")})]}),(0,t.jsx)(U,{wsId:J||e[0]?.id,pathname:i,t:l,collapsed:!1}),(0,t.jsx)(K,{open:m,onOpenChange:h,title:l("workspace.create"),name:y,onNameChange:S,icon:T,onIconChange:M,onSubmit:Q,submitLabel:l("common.create"),nameLabel:l("workspace.name"),iconLabel:l("workspace.icon"),namePlaceholder:l("workspace.namePlaceholder"),cancelLabel:l("common.cancel")}),(0,t.jsx)(K,{open:p,onOpenChange:e=>{x(e),e||L(null)},title:l("workspace.edit"),name:y,onNameChange:S,icon:T,onIconChange:M,onSubmit:ee,submitLabel:l("common.save"),nameLabel:l("workspace.name"),iconLabel:l("workspace.icon"),namePlaceholder:l("workspace.namePlaceholder"),cancelLabel:l("common.cancel")}),v&&(0,t.jsx)(G,{open:j,onOpenChange:e=>{b(e),e||w(null)},workspaceId:v})]})}function U({wsId:e,pathname:s,t:o,collapsed:i}){let[l,d]=(0,r.useState)(!1),u=[...e?[{href:`/workspaces/${e}/groups`,icon:c.Boxes,label:o("sidebar.groups"),active:s.includes("/groups")},null,{href:`/workspaces/${e}/notes`,icon:h.FileText,label:o("sidebar.notes"),active:s.includes("/notes")},{href:`/workspaces/${e}/assets`,icon:p.FolderOpen,label:o("sidebar.assets"),active:s.includes("/assets")},{href:`/workspaces/${e}/archive`,icon:n.Archive,label:o("sidebar.archive"),active:s.includes("/archive")},null]:[],{href:"/settings",icon:b.Settings,label:o("settings.title"),active:s.startsWith("/settings")}],m=i?(0,t.jsx)("button",{"aria-label":o("sidebar.more"),className:`rounded-lg p-2 transition-colors ${l?"text-foreground bg-accent":"text-muted-foreground hover:bg-accent hover:text-foreground"}`}):(0,t.jsx)("button",{"aria-label":o("sidebar.more"),className:"relative z-10 flex w-full items-center gap-2 border-t border-border px-4 py-3 text-[11px] text-muted-foreground cursor-pointer hover:text-foreground transition-colors"});return(0,t.jsxs)(w.Popover,{open:l,onOpenChange:d,children:[(0,t.jsxs)(w.PopoverTrigger,{openOnHover:!0,delay:120,closeDelay:250,render:m,children:[(0,t.jsx)(j,{className:i?"h-4 w-4":"h-3.5 w-3.5"}),!i&&(0,t.jsx)("span",{children:o("sidebar.more")})]}),(0,t.jsx)(w.PopoverContent,{side:"right",align:"end",sideOffset:8,className:"w-52 gap-0.5 p-1.5",children:u.map((e,r)=>null===e?(0,t.jsx)("div",{className:"my-1 h-px bg-border"},`sep-${r}`):(0,t.jsxs)(a.default,{href:e.href,onClick:()=>d(!1),className:`flex items-center gap-2.5 rounded-md px-2.5 py-2 text-sm transition-colors ${e.active?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent hover:text-foreground"}`,children:[(0,t.jsx)(e.icon,{className:"h-4 w-4 shrink-0"}),(0,t.jsx)("span",{children:e.label})]},e.href))})]})}function H({ws:e,isActive:r,icon:s,disableDelete:a,t:n,onSelect:o,onEdit:c,onManageLabels:u,onDelete:h}){var p;let x,g,f,{attributes:j,listeners:b,setNodeRef:w,transform:N,transition:y,isDragging:k}=(0,z.useSortable)({id:e.id}),C={transform:F.CSS.Transform.toString(N),transition:y,opacity:k?.4:1};return(0,t.jsxs)("div",{ref:w,style:C,...j,...b,className:`group relative flex touch-none items-center rounded-lg transition-all ${r?"bg-accent ring-1 ring-primary/15":"hover:bg-accent/60"}`,children:[(0,t.jsxs)("button",{onClick:o,className:`flex flex-1 items-center gap-2.5 px-3 py-2.5 text-left ${r?"cursor-default":"cursor-pointer"}`,children:[(0,t.jsx)("span",{className:"flex h-7 w-7 items-center justify-center rounded-md bg-muted text-sm",children:W.includes(s)?s:(0,t.jsx)("span",{className:"text-xs font-semibold text-muted-foreground",children:s})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("div",{className:`truncate text-sm font-medium ${r?"text-foreground":"text-secondary-foreground"}`,children:e.name}),(0,t.jsx)("div",{className:"text-[11px] text-muted-foreground",children:(p=e.updatedAt,g=Math.floor((x=Date.now()-new Date(p).getTime())/6e4),f=Math.floor(x/36e5),g<60?`${g}m ago`:f<24?`${f}h ago`:`${Math.floor(f/24)}d ago`)})]})]}),(0,t.jsxs)(v.DropdownMenu,{children:[(0,t.jsx)(v.DropdownMenuTrigger,{render:(0,t.jsx)("button",{className:"mr-2 rounded-md p-1 text-muted-foreground opacity-0 transition-all hover:bg-background hover:text-foreground group-hover:opacity-100",onClick:e=>e.stopPropagation()}),children:(0,t.jsx)(d.MoreHorizontal,{className:"h-3.5 w-3.5"})}),(0,t.jsxs)(v.DropdownMenuContent,{align:"start",side:"right",children:[(0,t.jsxs)(v.DropdownMenuItem,{onClick:c,children:[(0,t.jsx)(i.Pencil,{className:"mr-2 h-3.5 w-3.5"}),n("sidebar.rename")]}),(0,t.jsxs)(v.DropdownMenuItem,{onClick:u,children:[(0,t.jsx)(m.Tag,{className:"mr-2 h-3.5 w-3.5"}),n("sidebar.manageLabels")]}),(0,t.jsxs)(v.DropdownMenuItem,{className:a?"text-muted-foreground opacity-50":"text-rose-400",disabled:a,onClick:h,children:[(0,t.jsx)(l.Trash2,{className:"mr-2 h-3.5 w-3.5"}),n("sidebar.delete")]})]})]})]})}function K({open:e,onOpenChange:r,title:s,name:a,onNameChange:n,icon:o,onIconChange:i,onSubmit:l,submitLabel:c,nameLabel:d,iconLabel:u,namePlaceholder:m,cancelLabel:h}){return(0,t.jsx)(y.Dialog,{open:e,onOpenChange:r,disablePointerDismissal:!0,children:(0,t.jsxs)(y.DialogContent,{className:"sm:max-w-sm",children:[(0,t.jsx)(y.DialogHeader,{children:(0,t.jsx)(y.DialogTitle,{children:s})}),(0,t.jsxs)("div",{className:"space-y-4 py-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:d}),(0,t.jsx)(S.Input,{placeholder:m,value:a,onChange:e=>n(e.target.value),onKeyDown:e=>"Enter"===e.key&&e.preventDefault(),className:"mt-1.5"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:u}),(0,t.jsx)("div",{className:"mt-1.5 grid grid-cols-6 gap-1.5",children:W.map(e=>(0,t.jsx)("button",{onClick:()=>i(e),className:`flex h-10 w-10 items-center justify-center rounded-lg text-lg transition-all ${o===e?"bg-primary/15 ring-2 ring-primary/30 scale-110":"bg-muted hover:bg-accent"}`,children:e},e))})]})]}),(0,t.jsxs)(y.DialogFooter,{children:[(0,t.jsx)(C.Button,{variant:"outline",onClick:()=>r(!1),children:h}),(0,t.jsx)(C.Button,{onClick:l,disabled:!a.trim(),className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:c})]})]})})}let V=["#3b82f6","#ef4444","#f59e0b","#10b981","#8b5cf6","#ec4899","#06b6d4","#f97316"];function G({open:e,onOpenChange:s,workspaceId:a}){let{t:n}=(0,A.useI18n)(),[o,i]=(0,r.useState)([]),[l,c]=(0,r.useState)(""),[d,u]=(0,r.useState)(V[0]);(0,r.useEffect)(()=>{e&&(0,M.getLabelsForWorkspace)(a).then(i)},[e,a]);let m=async()=>{l.trim()&&(await $({name:l.trim(),color:d,workspaceId:a}),i(await (0,M.getLabelsForWorkspace)(a)),c(""))},h=async e=>{await L(e),i(t=>t.filter(t=>t.id!==e))};return(0,t.jsx)(y.Dialog,{open:e,onOpenChange:s,disablePointerDismissal:!0,children:(0,t.jsxs)(y.DialogContent,{className:"sm:max-w-sm",children:[(0,t.jsx)(y.DialogHeader,{children:(0,t.jsx)(y.DialogTitle,{children:n("label.manage")})}),(0,t.jsxs)("div",{className:"space-y-3 py-2",children:[o.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"h-3 w-3 rounded-full",style:{backgroundColor:e.color}}),(0,t.jsx)("span",{className:"flex-1 text-sm text-foreground",children:e.name}),e.isBuiltin?(0,t.jsx)("span",{className:"text-[10px] text-muted-foreground",children:n("label.builtin")}):(0,t.jsx)("button",{onClick:()=>h(e.id),className:"text-xs text-rose-400 hover:text-rose-300",children:n("common.delete")})]},e.id)),(0,t.jsxs)("div",{className:"border-t border-border pt-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(S.Input,{placeholder:n("label.name"),value:l,onChange:e=>c(e.target.value),onKeyDown:e=>"Enter"===e.key&&e.preventDefault(),className:"flex-1 h-8"}),(0,t.jsx)(C.Button,{size:"sm",onClick:m,disabled:!l.trim(),className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:n("label.add")})]}),(0,t.jsx)("div",{className:"mt-2 flex gap-1.5",children:V.map(e=>(0,t.jsx)("button",{onClick:()=>u(e),className:`h-5 w-5 rounded-full transition-all ${d===e?"ring-2 ring-offset-2 ring-offset-background ring-foreground/30 scale-110":""}`,style:{backgroundColor:e}},e))})]})]})]})})}e.i(508271);var q=e.i(841359),X=e.i(289813);let J=(0,X.create)(e=>({createProjectOpen:!1,importProjectOpen:!1,setCreateProjectOpen:t=>e({createProjectOpen:t}),setImportProjectOpen:t=>e({importProjectOpen:t})}));var Y=e.i(821957),Z=e.i(738690);let Q=(0,x.default)("command",[["path",{d:"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3",key:"11bfej"}]]);var ee=e.i(242941),et=e.i(989548),er=e.i(387091),es=e.i(15299);e.s([],678787),e.i(678787),e.i(708878);var ea=e.i(581263),en=e.i(462902);let eo=r.createContext(void 0);function ei(){let e=r.useContext(eo);if(void 0===e)throw Error((0,en.default)(13));return e}let el={imageLoadingStatus:()=>null},ec=r.forwardRef(function(e,s){let{className:a,render:n,...o}=e,[i,l]=r.useState("idle"),c=r.useMemo(()=>({imageLoadingStatus:i,setImageLoadingStatus:l}),[i,l]),d=(0,ea.useRenderElement)("span",e,{state:{imageLoadingStatus:i},ref:s,props:o,stateAttributesMapping:el});return(0,t.jsx)(eo.Provider,{value:c,children:d})});var ed=e.i(887642),eu=e.i(804849),em=e.i(504068),eh=e.i(809058),ep=e.i(193214),ex=e.i(954588);let eg={...el,...eh.transitionStatusMapping},ef=r.forwardRef(function(e,t){let{className:s,render:a,onLoadingStatusChange:n,referrerPolicy:o,crossOrigin:i,...l}=e,c=ei(),d=function(e,{referrerPolicy:t,crossOrigin:s}){let[a,n]=r.useState("idle");return(0,eu.useIsoLayoutEffect)(()=>{if(!e)return n("error"),ex.NOOP;let r=!0,a=new window.Image,o=e=>()=>{r&&n(e)};return n("loading"),a.onload=o("loaded"),a.onerror=o("error"),t&&(a.referrerPolicy=t),a.crossOrigin=s??null,a.src=e,()=>{r=!1}},[e,s,t]),a}(e.src,{referrerPolicy:o,crossOrigin:i}),u="loaded"===d,{mounted:m,transitionStatus:h,setMounted:p}=(0,ep.useTransitionStatus)(u),x=r.useRef(null),g=(0,ed.useStableCallback)(e=>{n?.(e),c.setImageLoadingStatus(e)});(0,eu.useIsoLayoutEffect)(()=>{"idle"!==d&&g(d)},[d,g]),(0,em.useOpenChangeComplete)({open:u,ref:x,onComplete(){u||p(!1)}});let f=(0,ea.useRenderElement)("img",e,{state:{imageLoadingStatus:d,transitionStatus:h},ref:[t,x],props:l,stateAttributesMapping:eg,enabled:m});return m?f:null});var ej=e.i(161476);let eb=r.forwardRef(function(e,t){let{className:s,render:a,delay:n,...o}=e,{imageLoadingStatus:i}=ei(),[l,c]=r.useState(void 0===n),d=(0,ej.useTimeout)();return r.useEffect(()=>(void 0!==n&&d.start(n,()=>c(!0)),d.clear),[d,n]),(0,ea.useRenderElement)("span",e,{state:{imageLoadingStatus:i},ref:t,props:o,stateAttributesMapping:el,enabled:"loaded"!==i&&l})});e.s(["Fallback",0,eb,"Image",0,ef,"Root",0,ec],129448);var ev=e.i(129448),ev=ev,ew=e.i(975157);function eN({className:e,size:r="default",...s}){return(0,t.jsx)(ev.Root,{"data-slot":"avatar","data-size":r,className:(0,ew.cn)("group/avatar relative flex size-8 shrink-0 rounded-full select-none after:absolute after:inset-0 after:rounded-full after:border after:border-border after:mix-blend-darken data-[size=lg]:size-10 data-[size=sm]:size-6 dark:after:mix-blend-lighten",e),...s})}function ey({className:e,...r}){return(0,t.jsx)(ev.Fallback,{"data-slot":"avatar-fallback",className:(0,ew.cn)("flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs",e),...r})}let ek=(0,x.default)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]]);var eC=e.i(226145);let eS=(0,x.default)("sticky-note",[["path",{d:"M21 9a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 15 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2z",key:"1dfntj"}],["path",{d:"M15 3v5a1 1 0 0 0 1 1h5",key:"6s6qgf"}]]),eT=(0,x.default)("package-2",[["path",{d:"M12 3v6",key:"1holv5"}],["path",{d:"M16.76 3a2 2 0 0 1 1.8 1.1l2.23 4.479a2 2 0 0 1 .21.891V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V9.472a2 2 0 0 1 .211-.894L5.45 4.1A2 2 0 0 1 7.24 3z",key:"187q7i"}],["path",{d:"M3.054 9.013h17.893",key:"grwhos"}]]);var eP=e.i(657153);let eD=(0,T.createServerReference)("60307d44ba04bf0330743c985bf6cc4ce0876e8b49",T.callServer,void 0,T.findSourceMapURL,"globalSearch");var eI=e.i(240095);let eO=[{id:"all",key:"search.all",icon:Z.Search},{id:"task",key:"search.task",icon:h.FileText},{id:"project",key:"search.project",icon:ek},{id:"repository",key:"search.repository",icon:eC.GitBranch},{id:"note",key:"search.note",icon:eS},{id:"asset",key:"search.asset",icon:eT}],eM=["task","project","repository","note","asset"],e$={task:"search.task",project:"search.project",repository:"search.repository",note:"search.note",asset:"search.asset"};function eL({result:e,onSelect:r}){let s=eO.find(t=>t.id===e.type)?.icon??h.FileText;return(0,t.jsxs)("button",{onClick:()=>r(e),className:"flex w-full items-center gap-3 border-b border-border/30 px-4 py-3 text-left transition-colors hover:bg-accent last:border-b-0",children:[(0,t.jsx)("div",{className:"rounded-md bg-muted p-1.5",children:(0,t.jsx)(s,{className:"h-3.5 w-3.5 text-muted-foreground"})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-foreground truncate",children:e.title}),(0,t.jsx)("div",{className:"text-xs text-muted-foreground truncate",children:e.subtitle}),e.snippet&&(0,t.jsx)("div",{className:"text-xs text-muted-foreground/70 truncate mt-0.5",children:e.snippet})]})]})}function eR({open:e,onOpenChange:a}){let n,{t:o}=(0,A.useI18n)(),i=(0,s.useRouter)(),[l,c]=(0,r.useState)(""),[d,u]=(0,r.useState)("all"),[m,h]=(0,r.useState)([]),[p,x]=(0,r.useState)(!1),[g,f]=(0,r.useState)(250),j=(0,r.useRef)(null),b=(0,r.useRef)(null);(0,r.useEffect)(()=>{e&&((0,eI.getConfigValue)("search.debounceMs",250).then(f),setTimeout(()=>j.current?.focus(),100),c(""),h([]))},[e]),(0,r.useEffect)(()=>{if(b.current&&clearTimeout(b.current),!l.trim()){h([]),x(!1);return}x(!0);let e=!1;return b.current=setTimeout(async()=>{let t=await eD(l,d);e||(h(t),x(!1))},g),()=>{b.current&&clearTimeout(b.current),e=!0}},[l,d,g]);let v=(0,r.useCallback)(e=>{i.push(e.navigateTo),a(!1)},[i,a]);return(0,t.jsx)(y.Dialog,{open:e,onOpenChange:a,children:(0,t.jsxs)(y.DialogContent,{className:"sm:max-w-lg p-0 gap-0 overflow-hidden !top-[10vh] !-translate-y-0",showCloseButton:!1,children:[(0,t.jsxs)("div",{className:"flex items-center border-b border-border px-4",children:[(0,t.jsx)(Z.Search,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("input",{ref:j,value:l,onChange:e=>c(e.target.value),placeholder:o("search.placeholder"),className:"flex-1 bg-transparent px-3 py-3.5 text-sm text-foreground placeholder-muted-foreground outline-none"}),l&&(0,t.jsx)(C.Button,{variant:"ghost",size:"icon",onClick:()=>{c(""),h([])},className:"text-muted-foreground",children:(0,t.jsx)(eP.X,{className:"h-3.5 w-3.5"})})]}),(0,t.jsx)("div",{className:"flex items-center gap-1 border-b border-border px-4 py-2",children:eO.map(e=>{let r=e.icon;return(0,t.jsxs)("button",{onClick:()=>u(e.id),className:`flex items-center gap-1.5 rounded-md px-2.5 py-1 text-xs font-medium transition-all ${d===e.id?"bg-primary/10 text-primary ring-1 ring-primary/20":"text-muted-foreground hover:bg-accent hover:text-foreground"}`,children:[(0,t.jsx)(r,{className:"h-3 w-3"}),o(e.key)]},e.id)})}),(0,t.jsxs)(N.ScrollArea,{className:"max-h-80",children:[!l.trim()&&(0,t.jsx)("div",{className:"flex items-center justify-center py-12 text-sm text-muted-foreground",children:o("search.typeToSearch")}),l.trim()&&0===m.length&&!p&&(0,t.jsx)("div",{className:"flex items-center justify-center py-12 text-sm text-muted-foreground",children:o("search.noResults")}),"all"===d&&m.length>0&&(n=m.reduce((e,t)=>((e[t.type]??=[]).push(t),e),{}),eM.filter(e=>n[e]?.length).map(e=>(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"px-4 py-1.5 text-[10px] font-semibold uppercase tracking-wider text-muted-foreground bg-muted/50",children:o(e$[e])}),n[e].map(e=>(0,t.jsx)(eL,{result:e,onSelect:v},`${e.type}-${e.id}`))]},e))),"all"!==d&&m.map(e=>(0,t.jsx)(eL,{result:e,onSelect:v},`${e.type}-${e.id}`))]})]})})}var eA=e.i(338187),eE=e.i(400355),eB=e.i(597746),ez=e.i(938499),eF=e.i(233274),eW=e.i(905455),e_=e.i(967489),eU=e.i(624687);function eH(e){return e.replace(/\.git\/?$/,"")}e.i(465536),e.i(930787);let eK=(0,T.createServerReference)("40adbba8c12c1bdb8072b324eb5ae7afff35a67271",T.callServer,void 0,T.findSourceMapURL,"resolveGitLocalPathWithSource");var eV=e.i(19919),eG=e.i(224277),eq=e.i(113184),eX=e.i(359562);function eJ({open:e,onOpenChange:s,onCreateProject:a,workspaces:n=[],defaultWorkspaceId:o}){let{t:i,locale:l}=(0,A.useI18n)(),[c,d]=(0,r.useState)(o??""),[u,m]=(0,r.useState)(""),[h,x]=(0,r.useState)(""),[g,f]=(0,r.useState)(""),[j,b]=(0,r.useState)(""),[v,w]=(0,r.useState)(""),[N,T]=(0,r.useState)(""),[P,D]=(0,r.useState)(!1),[I,O]=(0,r.useState)("empty"),[M,$]=(0,r.useState)("FRONTEND"),[L,R]=(0,r.useState)("idle"),[B,z]=(0,r.useState)(""),[F,W]=(0,r.useState)(!1),[_,U]=(0,r.useState)(!1),H=()=>{x(""),f(""),b(""),w(""),T(""),D(!1),O("empty"),$("FRONTEND"),R("idle"),z(""),W(!1),d(o??""),m("")};(0,r.useEffect)(()=>{e&&(d(o??""),m(""))},[e,o]);let K=async()=>{if(N.trim()&&!F&&"success"===L){W(!0);try{let e=await (0,eV.analyzeProjectDirectory)(N.trim(),l);b(e)}catch{E.toast.error(i("project.analyzeError"))}finally{W(!1)}}},V=async e=>{w(e),R("idle"),z("");let t=function(e){let t,r=e.match(/^git@([^:]+):(.+)$/);if(r)return{host:r[1],pathSegments:eH(r[2]).split("/").filter(Boolean)};try{t=new URL(e)}catch{return null}return{host:t.hostname,pathSegments:eH(decodeURIComponent(t.pathname)).split("/").filter(Boolean)}}(e);if(t&&t.pathSegments.length>0&&x(t.pathSegments[t.pathSegments.length-1]),!P){let{path:t,source:r}=await eK(e);T(t),O(r)}},G=async()=>{if(v.trim()&&N.trim()){R("cloning"),z("");try{let e=function(e){let t=e.trim();if(!t)return"";if(t.startsWith("git@")||t.startsWith("ssh://")||t.endsWith(".git"))return t;try{let e=new URL(t),r=e.hostname,s=decodeURIComponent(e.pathname).split("/").filter(Boolean);if("code.iflytek.com"===r){let e=[...s];"osc"===e[0]&&"_source"===e[1]&&(e=e.slice(2));let a=e.indexOf("-");if(a>0&&(e=e.slice(0,a)),0===e.length)return t;return`https://${r}/${e.join("/")}.git`}return`${e.origin}${e.pathname.replace(/\/$/,"")}.git`}catch{return t}}(v.trim()),t=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"clone",url:e,path:N.trim()})}),r=await t.json();if(!t.ok){R("error"),z(r.error||"Clone failed");return}R("success")}catch{R("error"),z("Network error")}}},q=async()=>{if(h.trim()){let e=await a?.({name:h.trim(),alias:g.trim()||void 0,description:j.trim()||void 0,gitUrl:v.trim()||void 0,localPath:N.trim()||void 0,projectType:M,workspaceId:c||void 0});if(u&&e&&"id"in e)try{await (0,eX.setProjectGroup)(e.id,u)}catch(e){E.toast.error(e instanceof Error?e.message:i("group.createError"))}H(),s(!1)}};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(y.Dialog,{open:e,onOpenChange:e=>{s(e),e||H()},disablePointerDismissal:!0,children:(0,t.jsxs)(y.DialogContent,{style:{maxWidth:"32rem"},children:[(0,t.jsx)(y.DialogHeader,{children:(0,t.jsx)(y.DialogTitle,{children:i("topbar.newProject")})}),(0,t.jsxs)("div",{className:"space-y-4 py-2",children:[n.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.workspace")}),(0,t.jsxs)(e_.Select,{value:c,onValueChange:e=>{d(e??""),m("")},children:[(0,t.jsx)(e_.SelectTrigger,{className:"mt-1.5 w-full",children:(0,t.jsx)("span",{className:"truncate",children:n.find(e=>e.id===c)?.name??i("project.workspacePlaceholder")})}),(0,t.jsx)(e_.SelectContent,{children:n.map(e=>(0,t.jsx)(e_.SelectItem,{value:e.id,children:e.name},e.id))})]})]}),c&&(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.group")}),(0,t.jsx)(eq.GroupSelect,{workspaceId:c,value:u,onChange:m})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.gitUrl")}),(0,t.jsx)("p",{className:"text-[10px] text-muted-foreground mt-0.5",children:i("project.gitUrlHint")}),(0,t.jsx)(S.Input,{placeholder:i("project.gitPlaceholder"),value:v,onChange:e=>V(e.target.value),className:"mt-1.5 font-mono text-xs"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.localPath")}),(0,t.jsx)("p",{className:"text-[10px] text-muted-foreground mt-0.5",children:i("project.localPathHint")}),(0,t.jsxs)("div",{className:"mt-1.5 flex gap-2",children:[(0,t.jsx)(S.Input,{placeholder:i("project.localPathPlaceholder"),value:N,onChange:e=>{T(e.target.value),D(!0)},className:"flex-1 min-w-0 font-mono text-xs"}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsxs)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{type:"button",variant:"outline",onClick:()=>U(!0),className:"shrink-0 gap-1.5 px-2.5 text-xs text-muted-foreground"}),children:[(0,t.jsx)(p.FolderOpen,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:i("folder.browse")})]}),(0,t.jsx)(k.TooltipContent,{children:i("folder.selectFolder")})]})]}),N.trim().startsWith("~")&&(0,t.jsxs)("p",{className:"mt-1 flex items-center gap-1 text-[11px] text-amber-400",children:[(0,t.jsx)(ez.AlertCircle,{className:"h-3 w-3"}),i("project.tildeWarning")]}),!P&&"fallback"===I&&v.trim()&&N.trim()&&(0,t.jsxs)("p",{className:"mt-1 flex items-center gap-1 text-[11px] text-muted-foreground",children:[(0,t.jsx)(ez.AlertCircle,{className:"h-3 w-3 shrink-0"}),i("project.gitPathFallbackHint")]}),v.trim()&&N.trim()&&(0,t.jsxs)("div",{className:"mt-2 flex items-center gap-2",children:[(0,t.jsxs)(C.Button,{type:"button",disabled:"cloning"===L||"success"===L,onClick:G,className:"gap-1.5 text-xs bg-emerald-500/15 text-emerald-300 ring-1 ring-emerald-500/25 hover:bg-emerald-500/25 disabled:opacity-50",children:["cloning"===L?(0,t.jsx)(eE.Loader2,{className:"h-3 w-3 animate-spin"}):"success"===L?(0,t.jsx)(eB.Check,{className:"h-3 w-3"}):(0,t.jsx)(eC.GitBranch,{className:"h-3 w-3"}),"cloning"===L?i("git.cloning"):"success"===L?i("git.cloned"):i("git.clone")]}),"error"===L&&(0,t.jsxs)("span",{className:"flex items-center gap-1 text-[11px] text-rose-400",children:[(0,t.jsx)(ez.AlertCircle,{className:"h-3 w-3"}),B]}),"success"===L&&(0,t.jsx)("span",{className:"text-[11px] text-emerald-400",children:i("git.cloneSuccess")})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.name")}),(0,t.jsx)(S.Input,{placeholder:i("project.namePlaceholder"),value:h,onChange:e=>x(e.target.value),className:"mt-1.5"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.type.label")}),(0,t.jsx)("div",{className:"mt-1.5",children:(0,t.jsx)(eW.SegmentedControl,{options:[{value:"FRONTEND",label:i("project.type.frontend")},{value:"BACKEND",label:i("project.type.backend")}],value:M,onChange:$})})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.alias")}),(0,t.jsx)(S.Input,{placeholder:i("project.aliasPlaceholder"),value:g,onChange:e=>f(e.target.value),className:"mt-1.5"})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mt-0.5",children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.description")}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsxs)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{type:"button",variant:"ghost",onClick:K,className:`h-6 gap-1 px-2 text-[11px] text-muted-foreground hover:text-foreground ${!N.trim()||F?"opacity-50":""}`}),children:[F?(0,t.jsx)(eE.Loader2,{className:"h-3 w-3 animate-spin"}):(0,t.jsx)(eF.Sparkles,{className:"h-3 w-3"}),F?i("project.analyzing"):i("project.genDesc")]}),(0,t.jsx)(k.TooltipContent,{children:N.trim()?"success"!==L?i("project.genDescNotCloned"):i("project.genDescReady"):i("project.genDescNoPath")})]})]}),(0,t.jsx)(eU.Textarea,{placeholder:i("project.descPlaceholder"),value:j,onChange:e=>b(e.target.value),rows:3,className:"mt-1.5 w-full rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder-muted-foreground outline-none transition-colors focus:border-ring focus:ring-1 focus:ring-ring resize-none max-h-[200px] overflow-y-auto"})]})]}),(0,t.jsxs)(y.DialogFooter,{children:[(0,t.jsx)(C.Button,{variant:"outline",onClick:()=>{s(!1),H()},children:i("common.cancel")}),(0,t.jsx)(C.Button,{onClick:q,disabled:!h.trim()||F,className:"bg-primary/10 text-primary ring-1 ring-primary/25 hover:bg-primary/20",children:i("common.create")})]})]})}),(0,t.jsx)(eG.FolderBrowserDialog,{open:_,onOpenChange:U,onSelect:e=>{if(T(e),D(!0),!h.trim()){let t=e.replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean).pop()??"";t&&x(t)}}})]})}var eY=e.i(579157),eZ=e.i(699375);let eQ=(0,T.createServerReference)("404b88257c253f72e32b690fbfdc864cdbe54233e3",T.callServer,void 0,T.findSourceMapURL,"resolveGitLocalPath"),e0=(0,T.createServerReference)("609c9417a5d51517e959d27ee390da88a7c0542bbc",T.callServer,void 0,T.findSourceMapURL,"migrateProjectPath"),e1=(0,T.createServerReference)("4064146185600ce222e9bc8e2316f49c9603a85346",T.callServer,void 0,T.findSourceMapURL,"checkMigrationSafety");function e2({open:e,onOpenChange:s,onCreateProject:a,workspaces:n=[],defaultWorkspaceId:o}){let{t:i,locale:l}=(0,A.useI18n)(),[c,d]=(0,r.useState)(o??""),[u,m]=(0,r.useState)(""),[h,x]=(0,r.useState)(""),[g,f]=(0,r.useState)(""),[j,b]=(0,r.useState)(""),[v,w]=(0,r.useState)(""),[N,T]=(0,r.useState)(""),[P,D]=(0,r.useState)(!1),[I,O]=(0,r.useState)("FRONTEND"),[M,$]=(0,r.useState)(!1),[L,R]=(0,r.useState)(!1),[B,z]=(0,r.useState)(""),[F,W]=(0,r.useState)(!1),[_,U]=(0,r.useState)(""),[H,K]=(0,r.useState)(""),[V,G]=(0,r.useState)(!1),[q,X]=(0,r.useState)(!1),J=()=>{x(""),f(""),b(""),w(""),T(""),O("FRONTEND"),$(!1),R(!1),z(""),W(!1),U(""),K(""),G(!1),X(!1),d(o??""),m("")};(0,r.useEffect)(()=>{e&&(d(o??""),m(""))},[e,o]);let Y=async e=>{T(e),$(!1),R(!1),z(""),U(""),K(""),G(!1),x(e.replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean).pop()??"");try{let t=await fetch(`/api/git?path=${encodeURIComponent(e)}`);if(t.ok){let e=await t.json();if(e.isGit&&e.remoteUrl){w(e.remoteUrl),$(!0);let t=e.remoteUrl.match(/\/([^/]+?)(?:\.git)?$/);t&&x(t[1])}}}catch{}},Z=(0,r.useCallback)(async e=>{if(R(e),U(""),K(""),G(!1),!e)return void z("");if(v)try{let e=await eQ(v);e&&(z(e),e===N&&G(!0))}catch{}if(N)try{let e=await fetch(`/api/git?path=${encodeURIComponent(N)}&checkWorktrees=true`);e.ok&&(await e.json()).hasWorktrees&&K(i("project.worktreeWarning"))}catch{}},[v,N]),Q=async()=>{if(N&&!q){X(!0);try{let e=await (0,eV.analyzeProjectDirectory)(N.trim(),l);b(e)}catch{E.toast.error(i("project.analyzeError"))}finally{X(!1)}}},ee=async()=>{if(!h.trim())return;let e={name:h.trim(),alias:g.trim()||void 0,description:j.trim()||void 0,gitUrl:v.trim()||void 0,localPath:N.trim()||void 0,projectType:I,workspaceId:c||void 0},t=await a?.(e);if(u&&t&&"id"in t)try{await (0,eX.setProjectGroup)(t.id,u)}catch(e){E.toast.error(e instanceof Error?e.message:i("group.createError"))}if(L&&B&&B!==N&&t&&"id"in t){W(!0),U("");try{let e=await e1(t.id);if(!e.safe)return void U(e.reason);let r=await e0(t.id,B);if(!r.success)return void U(r.error??i("project.migrateError"));E.toast.success(i("project.migrateSuccess"))}catch(t){let e=t instanceof Error?t.message:String(t);U(`${i("project.migrateError")}:${e}`);return}finally{W(!1)}}J(),s(!1)},et=!h.trim()||!N.trim()||F||q||L&&!!H;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(y.Dialog,{open:e,onOpenChange:e=>{s(e),e||J()},disablePointerDismissal:!0,children:(0,t.jsxs)(y.DialogContent,{style:{maxWidth:"32rem"},children:[(0,t.jsx)(y.DialogHeader,{children:(0,t.jsx)(y.DialogTitle,{children:i("topbar.importProject")})}),(0,t.jsxs)("div",{className:"space-y-4 py-2",children:[n.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.workspace")}),(0,t.jsxs)(e_.Select,{value:c,onValueChange:e=>{d(e??""),m("")},children:[(0,t.jsx)(e_.SelectTrigger,{className:"mt-1.5 w-full",children:(0,t.jsx)("span",{className:"truncate",children:n.find(e=>e.id===c)?.name??i("project.workspacePlaceholder")})}),(0,t.jsx)(e_.SelectContent,{children:n.map(e=>(0,t.jsx)(e_.SelectItem,{value:e.id,children:e.name},e.id))})]})]}),c&&(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.group")}),(0,t.jsx)(eq.GroupSelect,{workspaceId:c,value:u,onChange:m})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.localPath")}),(0,t.jsx)("p",{className:"text-[10px] text-muted-foreground mt-0.5",children:i("project.importHint")}),(0,t.jsxs)("div",{className:"mt-1.5 flex gap-2",children:[(0,t.jsx)(S.Input,{value:N,readOnly:!0,placeholder:i("project.localPathPlaceholder"),className:"flex-1 font-mono text-xs bg-muted/30"}),(0,t.jsxs)(C.Button,{type:"button",variant:"outline",onClick:()=>D(!0),className:"shrink-0 gap-1.5",children:[(0,t.jsx)(p.FolderOpen,{className:"h-3.5 w-3.5"}),i("folder.browse")]})]}),M&&(0,t.jsx)("p",{className:"mt-1.5 text-[11px] text-emerald-400",children:i("project.autoDetected")})]}),v&&(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.gitUrl")}),(0,t.jsx)(S.Input,{value:v,onChange:e=>w(e.target.value),className:"mt-1.5 font-mono text-xs"})]}),M&&N&&(0,t.jsxs)("div",{className:"rounded-md border border-border p-3 space-y-2",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"text-xs font-medium",children:i("project.migrate")}),(0,t.jsx)("p",{className:"text-[10px] text-muted-foreground mt-0.5",children:i("project.migrateHint")})]}),(0,t.jsx)(eZ.Switch,{checked:L,onCheckedChange:e=>Z(e)})]}),L&&(0,t.jsxs)("div",{className:"space-y-2 pt-1",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-[10px] font-medium text-muted-foreground",children:i("project.targetPath")}),(0,t.jsx)(S.Input,{value:B,onChange:e=>{z(e.target.value),G(e.target.value===N)},placeholder:"/path/to/canonical/location",className:"mt-1 font-mono text-xs"})]}),V&&(0,t.jsxs)("p",{className:"flex items-center gap-1 text-[11px] text-sky-400",children:[(0,t.jsx)(eY.Info,{className:"h-3 w-3"}),i("project.samePathInfo")]}),H&&(0,t.jsxs)("p",{className:"flex items-center gap-1 text-[11px] text-amber-400",children:[(0,t.jsx)(ez.AlertCircle,{className:"h-3 w-3"}),H]}),_&&(0,t.jsxs)("p",{className:"flex items-center gap-1 text-[11px] text-rose-400",children:[(0,t.jsx)(ez.AlertCircle,{className:"h-3 w-3"}),_]})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.name")}),(0,t.jsx)(S.Input,{placeholder:i("project.namePlaceholder"),value:h,onChange:e=>x(e.target.value),className:"mt-1.5"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.type.label")}),(0,t.jsx)("div",{className:"mt-1.5",children:(0,t.jsx)(eW.SegmentedControl,{options:[{value:"FRONTEND",label:i("project.type.frontend")},{value:"BACKEND",label:i("project.type.backend")}],value:I,onChange:O})})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.alias")}),(0,t.jsx)(S.Input,{placeholder:i("project.aliasPlaceholder"),value:g,onChange:e=>f(e.target.value),className:"mt-1.5"})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mt-0.5",children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.description")}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsxs)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{type:"button",variant:"ghost",onClick:Q,className:`h-6 gap-1 px-2 text-[11px] text-muted-foreground hover:text-foreground ${!N||q?"opacity-50":""}`}),children:[q?(0,t.jsx)(eE.Loader2,{className:"h-3 w-3 animate-spin"}):(0,t.jsx)(eF.Sparkles,{className:"h-3 w-3"}),q?i("project.analyzing"):i("project.genDesc")]}),(0,t.jsx)(k.TooltipContent,{children:N?i("project.genDescReady"):i("project.genDescNoPath")})]})]}),(0,t.jsx)(eU.Textarea,{placeholder:i("project.descPlaceholder"),value:j,onChange:e=>b(e.target.value),rows:3,className:"mt-1.5 w-full rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder-muted-foreground outline-none transition-colors focus:border-ring focus:ring-1 focus:ring-ring resize-none max-h-[200px] overflow-y-auto"})]})]}),(0,t.jsxs)(y.DialogFooter,{children:[(0,t.jsx)(C.Button,{variant:"outline",onClick:()=>{s(!1),J()},children:i("common.cancel")}),(0,t.jsx)(C.Button,{onClick:ee,disabled:et,className:"bg-primary/10 text-primary ring-1 ring-primary/25 hover:bg-primary/20",children:F?i("project.migrating"):i("common.create")})]})]})}),(0,t.jsx)(eG.FolderBrowserDialog,{open:P,onOpenChange:D,onSelect:e=>Y(e)})]})}function e5({className:e}){return(0,t.jsx)("svg",{viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",className:e,children:(0,t.jsx)("path",{d:"M12 .5C5.65.5.5 5.65.5 12.02c0 5.08 3.29 9.39 7.86 10.91.58.11.79-.25.79-.56v-2c-3.2.7-3.87-1.36-3.87-1.36-.52-1.34-1.27-1.7-1.27-1.7-1.04-.71.08-.7.08-.7 1.15.08 1.76 1.18 1.76 1.18 1.02 1.76 2.68 1.25 3.34.96.1-.74.4-1.25.72-1.54-2.56-.29-5.25-1.28-5.25-5.69 0-1.26.45-2.28 1.18-3.09-.12-.29-.51-1.46.11-3.04 0 0 .97-.31 3.18 1.18a11.1 11.1 0 0 1 5.79 0c2.2-1.49 3.18-1.18 3.18-1.18.62 1.58.23 2.75.11 3.04.74.81 1.18 1.83 1.18 3.09 0 4.42-2.69 5.4-5.25 5.69.41.36.78 1.05.78 2.12v3.14c0 .31.21.68.79.56A11.52 11.52 0 0 0 23.5 12.02C23.5 5.65 18.35.5 12 .5Z"})})}function e4({onCreateProject:e,username:a,workspaces:n,defaultWorkspaceId:i}){let{t:l,locale:c,setLocale:d}=(0,A.useI18n)(),{isOpen:u,toggleAssistant:m}=(0,eA.useAssistant)(),{resolvedTheme:h,toggleTheme:x,triggerRef:g}=function(){let{resolvedTheme:e,setTheme:t}=(0,Y.useTheme)(),s=(0,r.useRef)(null),a=(0,r.useCallback)(r=>{let s="dark"===e?"light":"dark";if("u">typeof document&&"startViewTransition"in document&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches){let e=r?.clientX??window.innerWidth/2,a=r?.clientY??0,n=Math.hypot(Math.max(e,window.innerWidth-e),Math.max(a,window.innerHeight-a));document.startViewTransition(()=>{t(s)}).ready.then(()=>{document.documentElement.animate({clipPath:[`circle(0px at ${e}px ${a}px)`,`circle(${n}px at ${e}px ${a}px)`]},{duration:400,easing:"ease-in-out",pseudoElement:"::view-transition-new(root)"})})}else t(s)},[e,t]);return{resolvedTheme:e,toggleTheme:a,triggerRef:s}}(),f=(0,s.useRouter)(),[j,w]=(0,r.useState)(!1),[N,y]=(0,r.useState)(!1),[S,T]=(0,r.useState)(!1);(0,q.useActionShortcut)("global.search",()=>w(!0));let P=J(e=>e.createProjectOpen),D=J(e=>e.importProjectOpen),I=J(e=>e.setCreateProjectOpen),O=J(e=>e.setImportProjectOpen);return(0,r.useEffect)(()=>{P&&y(!0)},[P]),(0,r.useEffect)(()=>{D&&T(!0)},[D]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("header",{className:"flex h-12 items-center justify-between border-b border-border bg-background/80 px-5 backdrop-blur-sm",children:[(0,t.jsx)("div",{className:"w-40"}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)(C.Button,{variant:"outline",onClick:()=>w(!0),className:"h-8 w-[400px] justify-start gap-2 bg-muted/50 text-muted-foreground hover:bg-muted",children:[(0,t.jsx)(Z.Search,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"flex-1 text-left",suppressHydrationWarning:!0,children:l("topbar.searchPlaceholder")}),(0,t.jsxs)("kbd",{className:"mr-1 flex items-center gap-0.5 rounded border border-border bg-background px-1.5 py-0.5 text-[10px] font-mono",children:[(0,t.jsx)(Q,{className:"h-2.5 w-2.5"}),"K"]})]}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{delay:500,render:(0,t.jsx)("button",{"data-tour":"open-assistant",onClick:m,"aria-label":l("assistant.iconLabel"),className:["cursor-pointer rounded-lg p-2 text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",u?"bg-accent text-foreground":""].join(" ")}),children:(0,t.jsx)(et.Bot,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{children:l("assistant.iconLabel")})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsxs)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{variant:"ghost",onClick:()=>d("zh"===c?"en":"zh"),className:"text-muted-foreground"}),children:[(0,t.jsx)(ee.Globe,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"text-[11px] font-semibold",children:"zh"===c?"EN":"中"})]}),(0,t.jsx)(k.TooltipContent,{children:l("settings.language")})]}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{ref:g,variant:"ghost",size:"icon",onClick:x,className:"text-muted-foreground"}),children:"dark"===h?(0,t.jsx)(er.Sun,{className:"h-4 w-4"}):(0,t.jsx)(es.Moon,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{children:l("settings.theme")})]}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{variant:"ghost",size:"icon",onClick:()=>window.open("https://github.com/jp-liu/tower","_blank","noopener,noreferrer"),className:"text-muted-foreground","aria-label":l("topbar.github")}),children:(0,t.jsx)(e5,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{children:l("topbar.github")})]}),(0,t.jsx)("div",{className:"h-4 w-px bg-border"}),(0,t.jsxs)(C.Button,{variant:"outline",className:"gap-1.5 ring-1 ring-border hover:bg-accent",onClick:()=>T(!0),children:[(0,t.jsx)(p.FolderOpen,{className:"h-3.5 w-3.5"}),l("topbar.importProject")]}),(0,t.jsxs)(C.Button,{"data-tour":"create-project",className:"gap-1.5 bg-primary/10 text-primary ring-1 ring-primary/25 hover:bg-primary/20",onClick:()=>y(!0),children:[(0,t.jsx)(o.Plus,{className:"h-3.5 w-3.5"}),l("topbar.newProject")]}),(0,t.jsxs)(v.DropdownMenu,{children:[(0,t.jsx)(v.DropdownMenuTrigger,{render:(0,t.jsxs)("button",{className:"ml-0.5 flex cursor-pointer items-center gap-1.5 rounded-lg px-2.5 py-1 transition-colors hover:bg-accent",children:[a&&(0,t.jsx)("span",{className:"max-w-[80px] truncate text-xs text-muted-foreground",children:a}),(0,t.jsx)(eN,{className:"h-7 w-7 ring-1 ring-border",children:(0,t.jsx)(ey,{className:"bg-emerald-500/20 text-emerald-400 text-[10px] font-semibold",children:a?a.trim().split(/\s+/).filter(e=>e.length>0).slice(0,2).map(e=>e[0].toUpperCase()).join(""):"U"})})]})}),(0,t.jsx)(v.DropdownMenuContent,{align:"end",sideOffset:8,className:"w-40",children:(0,t.jsxs)(v.DropdownMenuItem,{onClick:()=>f.push("/settings"),children:[(0,t.jsx)(b.Settings,{className:"mr-2 h-3.5 w-3.5"}),l("settings.title")]})})]})]})]}),(0,t.jsx)(eR,{open:j,onOpenChange:w}),(0,t.jsx)(eJ,{open:N,onOpenChange:e=>{y(e),e||I(!1)},onCreateProject:e,workspaces:n,defaultWorkspaceId:i}),(0,t.jsx)(e2,{open:S,onOpenChange:e=>{T(e),e||O(!1)},onCreateProject:e,workspaces:n,defaultWorkspaceId:i})]})}var e3=e.i(83434),e8=e.i(966001),e6=e.i(121318),e7=e.i(19578),e9=e.i(232280);let te=(0,e7.default)(()=>e.A(427768).then(e=>({default:e.AssistantChat})),{loadableGenerated:{modules:[103363]},ssr:!1});function tt({mode:e}){let{isOpen:s,closeAssistant:a,sessions:n,activeSessionId:c,createNewSession:d,switchSession:u,removeSession:m,renameSession:h}=(0,eA.useAssistant)(),{t:p}=(0,A.useI18n)(),[x,g]=(0,r.useState)(null),[f,j]=(0,r.useState)(""),b=()=>{g(null),j("")},w=n.find(e=>e.id===c),N=w?.title??p("assistant.newSession");return(0,t.jsxs)("div",{className:"sidebar"===e?"min-w-[320px] max-w-[480px] w-[30vw] shrink-0 border-r border-border flex flex-col bg-sidebar overflow-hidden":"flex flex-col h-full overflow-hidden",children:[(0,t.jsxs)("div",{className:"header-sm flex items-center px-4 gap-2 bg-sidebar",children:[(0,t.jsx)(et.Bot,{className:"h-4 w-4 text-muted-foreground shrink-0"}),(0,t.jsx)("span",{className:"text-sm font-semibold text-foreground shrink-0",children:p("assistant.title")}),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"flex-1"}),(0,t.jsxs)(v.DropdownMenu,{children:[(0,t.jsxs)(v.DropdownMenuTrigger,{className:"flex items-center gap-1 h-8 px-2 rounded-md text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-foreground max-w-[120px] truncate","aria-label":p("assistant.sessionList"),children:[(0,t.jsx)("span",{className:"truncate",children:N}),(0,t.jsx)(e9.ChevronDown,{className:"h-3 w-3 shrink-0"})]}),(0,t.jsxs)(v.DropdownMenuContent,{side:"bottom",align:"end",sideOffset:4,className:"w-[280px]",children:[0===n.length?(0,t.jsx)("div",{className:"px-2 py-4 text-xs text-muted-foreground text-center",children:p("assistant.noSessions")}):(0,t.jsx)("div",{className:"max-h-[min(440px,50vh)] overflow-y-auto",children:n.map(e=>(0,t.jsxs)(v.DropdownMenuItem,{className:"flex items-center justify-between gap-1 pr-1",onClick:()=>u(e.id),children:[(0,t.jsxs)("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[(0,t.jsx)("span",{className:"text-xs truncate",children:e.title}),(0,t.jsx)("span",{className:"text-[10px] text-muted-foreground",children:function(e){let t=Math.floor((Date.now()-new Date(e).getTime())/1e3);if(t<60)return`${t}s ago`;let r=Math.floor(t/60);if(r<60)return`${r}m ago`;let s=Math.floor(r/60);if(s<24)return`${s}h ago`;let a=Math.floor(s/24);return`${a}d ago`}(e.updatedAt)})]}),(0,t.jsx)(C.Button,{variant:"ghost",className:"h-6 w-6 p-0 shrink-0 opacity-50 hover:opacity-100",onClick:t=>{var r;t.stopPropagation(),g({id:e.id,title:r=e.title}),j(r)},"aria-label":p("assistant.renameSession"),children:(0,t.jsx)(i.Pencil,{className:"h-3 w-3"})}),(0,t.jsx)(C.Button,{variant:"ghost",className:"h-6 w-6 p-0 shrink-0 opacity-50 hover:opacity-100 hover:text-destructive",onClick:t=>{t.stopPropagation(),m(e.id)},"aria-label":p("assistant.deleteSession"),children:(0,t.jsx)(l.Trash2,{className:"h-3 w-3"})})]},e.id))}),n.length>0&&(0,t.jsx)(v.DropdownMenuSeparator,{}),(0,t.jsxs)(v.DropdownMenuItem,{onClick:d,children:[(0,t.jsx)(o.Plus,{className:"h-3 w-3 mr-1"}),(0,t.jsx)("span",{className:"text-xs",children:p("assistant.newSession")})]})]})]}),(0,t.jsx)(C.Button,{variant:"ghost",size:"icon",className:"text-muted-foreground",onClick:d,"aria-label":p("assistant.newSession"),children:(0,t.jsx)(o.Plus,{className:"h-4 w-4"})})]}),(0,t.jsx)(C.Button,{variant:"ghost",size:"icon",className:"text-muted-foreground",onClick:a,"aria-label":p("assistant.closeLabel"),children:(0,t.jsx)(eP.X,{className:"h-4 w-4"})})]}),(0,t.jsx)("div",{className:"flex-1 overflow-hidden",children:s?(0,t.jsx)(te,{}):null}),(0,t.jsx)(y.Dialog,{open:null!==x,onOpenChange:e=>{e||b()},children:(0,t.jsxs)(y.DialogContent,{children:[(0,t.jsx)(y.DialogHeader,{children:(0,t.jsx)(y.DialogTitle,{children:p("assistant.renameSessionTitle")})}),(0,t.jsx)(S.Input,{autoFocus:!0,value:f,onChange:e=>j(e.target.value),placeholder:p("assistant.renameSessionPlaceholder")}),(0,t.jsxs)(y.DialogFooter,{children:[(0,t.jsx)(C.Button,{variant:"outline",onClick:b,children:p("common.cancel")}),(0,t.jsx)(C.Button,{onClick:()=>{x&&f.trim()&&(h(x.id,f),b())},disabled:!f.trim(),children:p("common.save")})]})]})})]})}var tr=e.i(125177);function ts({onDismiss:e}){let{t:s}=(0,A.useI18n)(),[a,n]=(0,r.useState)(!1);(0,r.useEffect)(()=>{"Notification"in window&&"default"===window.Notification.permission&&n(!0)},[]);let o=async()=>{"default"!==await window.Notification.requestPermission()&&(n(!1),e?.())};return a?(0,t.jsxs)("div",{className:"fixed top-3 left-1/2 -translate-x-1/2 z-[9999] w-auto max-w-lg bg-card border rounded-lg shadow-lg px-4 py-2.5 flex items-center gap-3 animate-in fade-in slide-in-from-top-4 duration-500",children:[(0,t.jsx)(tr.Bell,{className:"h-4 w-4 shrink-0 text-primary"}),(0,t.jsx)("span",{className:"flex-1 text-sm",children:s("notification.permissionPrompt")}),(0,t.jsx)(C.Button,{size:"default",onClick:o,children:s("notification.allow")}),(0,t.jsx)(C.Button,{variant:"ghost",size:"default",onClick:()=>{n(!1),e?.()},children:s("notification.dismiss")})]}):null}var ta=e.i(729739),tn=e.i(206781);let to=[{target:"create-workspace",titleKey:"tour.step1.title",descKey:"tour.step1.desc",placement:"right"},{target:"create-project",titleKey:"tour.step2.title",descKey:"tour.step2.desc",placement:"bottom",waitForTarget:!0},{target:"open-assistant",titleKey:"tour.step3.title",descKey:"tour.step3.desc",placement:"bottom"}];function ti({onComplete:e}){let{t:s}=(0,A.useI18n)(),[a,n]=(0,r.useState)(0),[o,i]=(0,r.useState)(null),[l,c]=(0,r.useState)(!1),d=(0,r.useRef)(null),u=to[a],m=(0,r.useCallback)(async()=>{await (0,tn.setConfigValue)("onboarding.tourCompleted",!0),e()},[e]),h=(0,r.useCallback)(()=>u?document.querySelector(`[data-tour="${u.target}"]`):null,[u]),p=(0,r.useCallback)(()=>{let e=h();e?(i(e.getBoundingClientRect()),c(!0)):c(!1)},[h]);(0,r.useEffect)(()=>{p();let e=null;!l&&u?.waitForTarget&&(d.current=new MutationObserver(()=>{let t=h();t&&(i(t.getBoundingClientRect()),c(!0),d.current?.disconnect(),e&&clearTimeout(e))}),d.current.observe(document.body,{childList:!0,subtree:!0}),e=setTimeout(()=>{!h()&&(n(e=>{let t=e+1;return t<to.length?t:e}),a>=to.length-1&&m())},5e3));let t=()=>p();return window.addEventListener("resize",t),window.addEventListener("scroll",t,!0),()=>{d.current?.disconnect(),e&&clearTimeout(e),window.removeEventListener("resize",t),window.removeEventListener("scroll",t,!0)}},[a,u,h,p,l,m]),(0,r.useEffect)(()=>{let e=setInterval(p,1e3);return()=>clearInterval(e)},[p]);let x=(0,r.useCallback)(()=>{a<to.length-1?(n(e=>e+1),c(!1)):m()},[a]);return u?(0,t.jsx)(t.Fragment,{children:l&&o&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"fixed inset-0 z-[10000]",style:{background:`radial-gradient(
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,465536,(e,t,r)=>{var s;"u">typeof __nccwpck_require__&&(__nccwpck_require__.ab="/ROOT/node_modules/.pnpm/next@16.2.1_@babel+core@7.29.0_@playwright+test@1.58.2_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/compiled/os-browserify/"),(s={}).endianness=function(){return"LE"},s.hostname=function(){return"u">typeof location?location.hostname:""},s.loadavg=function(){return[]},s.uptime=function(){return 0},s.freemem=function(){return Number.MAX_VALUE},s.totalmem=function(){return Number.MAX_VALUE},s.cpus=function(){return[]},s.type=function(){return"Browser"},s.release=function(){return"u">typeof navigator?navigator.appVersion:""},s.networkInterfaces=s.getNetworkInterfaces=function(){return{}},s.arch=function(){return"javascript"},s.platform=function(){return"browser"},s.tmpdir=s.tmpDir=function(){return"/tmp"},s.EOL="\n",s.homedir=function(){return"/"},t.exports=s},930787,(e,t,r)=>{!function(){"use strict";var e={114:function(e){function t(e){if("string"!=typeof e)throw TypeError("Path must be a string. Received "+JSON.stringify(e))}function r(e,t){for(var r,s="",a=0,n=-1,o=0,i=0;i<=e.length;++i){if(i<e.length)r=e.charCodeAt(i);else if(47===r)break;else r=47;if(47===r){if(n===i-1||1===o);else if(n!==i-1&&2===o){if(s.length<2||2!==a||46!==s.charCodeAt(s.length-1)||46!==s.charCodeAt(s.length-2)){if(s.length>2){var l=s.lastIndexOf("/");if(l!==s.length-1){-1===l?(s="",a=0):a=(s=s.slice(0,l)).length-1-s.lastIndexOf("/"),n=i,o=0;continue}}else if(2===s.length||1===s.length){s="",a=0,n=i,o=0;continue}}t&&(s.length>0?s+="/..":s="..",a=2)}else s.length>0?s+="/"+e.slice(n+1,i):s=e.slice(n+1,i),a=i-n-1;n=i,o=0}else 46===r&&-1!==o?++o:o=-1}return s}var s={resolve:function(){for(var e,s,a="",n=!1,o=arguments.length-1;o>=-1&&!n;o--)o>=0?s=arguments[o]:(void 0===e&&(e=""),s=e),t(s),0!==s.length&&(a=s+"/"+a,n=47===s.charCodeAt(0));if(a=r(a,!n),n)if(a.length>0)return"/"+a;else return"/";return a.length>0?a:"."},normalize:function(e){if(t(e),0===e.length)return".";var s=47===e.charCodeAt(0),a=47===e.charCodeAt(e.length-1);return(0!==(e=r(e,!s)).length||s||(e="."),e.length>0&&a&&(e+="/"),s)?"/"+e:e},isAbsolute:function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},join:function(){if(0==arguments.length)return".";for(var e,r=0;r<arguments.length;++r){var a=arguments[r];t(a),a.length>0&&(void 0===e?e=a:e+="/"+a)}return void 0===e?".":s.normalize(e)},relative:function(e,r){if(t(e),t(r),e===r||(e=s.resolve(e))===(r=s.resolve(r)))return"";for(var a=1;a<e.length&&47===e.charCodeAt(a);++a);for(var n=e.length,o=n-a,i=1;i<r.length&&47===r.charCodeAt(i);++i);for(var l=r.length-i,c=o<l?o:l,d=-1,u=0;u<=c;++u){if(u===c){if(l>c){if(47===r.charCodeAt(i+u))return r.slice(i+u+1);else if(0===u)return r.slice(i+u)}else o>c&&(47===e.charCodeAt(a+u)?d=u:0===u&&(d=0));break}var m=e.charCodeAt(a+u);if(m!==r.charCodeAt(i+u))break;47===m&&(d=u)}var h="";for(u=a+d+1;u<=n;++u)(u===n||47===e.charCodeAt(u))&&(0===h.length?h+="..":h+="/..");return h.length>0?h+r.slice(i+d):(i+=d,47===r.charCodeAt(i)&&++i,r.slice(i))},_makeLong:function(e){return e},dirname:function(e){if(t(e),0===e.length)return".";for(var r=e.charCodeAt(0),s=47===r,a=-1,n=!0,o=e.length-1;o>=1;--o)if(47===(r=e.charCodeAt(o))){if(!n){a=o;break}}else n=!1;return -1===a?s?"/":".":s&&1===a?"//":e.slice(0,a)},basename:function(e,r){if(void 0!==r&&"string"!=typeof r)throw TypeError('"ext" argument must be a string');t(e);var s,a=0,n=-1,o=!0;if(void 0!==r&&r.length>0&&r.length<=e.length){if(r.length===e.length&&r===e)return"";var i=r.length-1,l=-1;for(s=e.length-1;s>=0;--s){var c=e.charCodeAt(s);if(47===c){if(!o){a=s+1;break}}else -1===l&&(o=!1,l=s+1),i>=0&&(c===r.charCodeAt(i)?-1==--i&&(n=s):(i=-1,n=l))}return a===n?n=l:-1===n&&(n=e.length),e.slice(a,n)}for(s=e.length-1;s>=0;--s)if(47===e.charCodeAt(s)){if(!o){a=s+1;break}}else -1===n&&(o=!1,n=s+1);return -1===n?"":e.slice(a,n)},extname:function(e){t(e);for(var r=-1,s=0,a=-1,n=!0,o=0,i=e.length-1;i>=0;--i){var l=e.charCodeAt(i);if(47===l){if(!n){s=i+1;break}continue}-1===a&&(n=!1,a=i+1),46===l?-1===r?r=i:1!==o&&(o=1):-1!==r&&(o=-1)}return -1===r||-1===a||0===o||1===o&&r===a-1&&r===s+1?"":e.slice(r,a)},format:function(e){var t,r;if(null===e||"object"!=typeof e)throw TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return t=e.dir||e.root,r=e.base||(e.name||"")+(e.ext||""),t?t===e.root?t+r:t+"/"+r:r},parse:function(e){t(e);var r,s={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return s;var a=e.charCodeAt(0),n=47===a;n?(s.root="/",r=1):r=0;for(var o=-1,i=0,l=-1,c=!0,d=e.length-1,u=0;d>=r;--d){if(47===(a=e.charCodeAt(d))){if(!c){i=d+1;break}continue}-1===l&&(c=!1,l=d+1),46===a?-1===o?o=d:1!==u&&(u=1):-1!==o&&(u=-1)}return -1===o||-1===l||0===u||1===u&&o===l-1&&o===i+1?-1!==l&&(0===i&&n?s.base=s.name=e.slice(1,l):s.base=s.name=e.slice(i,l)):(0===i&&n?(s.name=e.slice(1,o),s.base=e.slice(1,l)):(s.name=e.slice(i,o),s.base=e.slice(i,l)),s.ext=e.slice(o,l)),i>0?s.dir=e.slice(0,i-1):n&&(s.dir="/"),s},sep:"/",delimiter:":",win32:null,posix:null};s.posix=s,e.exports=s}},r={};function s(t){var a=r[t];if(void 0!==a)return a.exports;var n=r[t]={exports:{}},o=!0;try{e[t](n,n.exports,s),o=!1}finally{o&&delete r[t]}return n.exports}s.ab="/ROOT/node_modules/.pnpm/next@16.2.1_@babel+core@7.29.0_@playwright+test@1.58.2_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/compiled/path-browserify/",t.exports=s(114)}()},914935,e=>{"use strict";var t=e.i(289721),r=e.i(965652),s=e.i(538059),a=e.i(210702),n=e.i(487278),o=e.i(232545),i=e.i(464249),l=e.i(998626),c=e.i(911219),d=e.i(49007),u=e.i(902539),m=e.i(263938),h=e.i(645378),p=e.i(453889),x=e.i(572989);let g=(0,x.default)("gauge",[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]]);var f=e.i(468443);let j=(0,x.default)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);var b=e.i(386343),v=e.i(755146),w=e.i(337822),N=e.i(759684),y=e.i(776639),k=e.i(746798),C=e.i(519455),S=e.i(793479),T=e.i(514798);let P=(0,T.createServerReference)("40f1e601320b4b90d15cada0795af8373777f5ae7e",T.callServer,void 0,T.findSourceMapURL,"createWorkspace"),D=(0,T.createServerReference)("6021f728b947809f3764db1dcdeb0c25f933a3a0c5",T.callServer,void 0,T.findSourceMapURL,"updateWorkspace"),I=(0,T.createServerReference)("40b2454e5a6e7279a521ca122e07c0cd09921f168e",T.callServer,void 0,T.findSourceMapURL,"deleteWorkspace"),O=(0,T.createServerReference)("408dfa4996a800c25f14c60104920161daea7bfa95",T.callServer,void 0,T.findSourceMapURL,"reorderWorkspaces");var M=e.i(334023);let $=(0,T.createServerReference)("40d067b565f43c671ffdfc1085c9b0d4e9e8ecea72",T.callServer,void 0,T.findSourceMapURL,"createLabel"),L=(0,T.createServerReference)("4080b7c93be76dae986f6275ea896a09088e9822ba",T.callServer,void 0,T.findSourceMapURL,"deleteLabel");var R=e.i(889620),A=e.i(533499),E=e.i(360112),B=e.i(720247),z=e.i(775712),F=e.i(67013);let W=["📋","🚀","🎯","💡","🔧","📦","🎨","📊","🔬","🌟","📝","🏗️"];function _({workspaces:e}){let n=(0,s.useRouter)(),i=(0,s.usePathname)(),{t:l}=(0,A.useI18n)(),[c,d]=(0,r.useState)(!1);(0,r.useEffect)(()=>{"true"===localStorage.getItem("sidebar-collapsed")&&d(!0)},[]);let[m,h]=(0,r.useState)(!1),[p,x]=(0,r.useState)(!1),[j,b]=(0,r.useState)(!1),[v,w]=(0,r.useState)(null),[y,S]=(0,r.useState)(""),[T,M]=(0,r.useState)(W[0]),[$,L]=(0,r.useState)(null),[F,V]=(0,r.useState)(e);(0,r.useEffect)(()=>{V(e)},[e]);let q=(0,B.useSensors)((0,B.useSensor)(B.PointerSensor,{activationConstraint:{distance:8}})),X=(0,r.useCallback)(t=>{let{active:r,over:s}=t;if(!s||r.id===s.id)return;let a=F.findIndex(e=>e.id===r.id),o=F.findIndex(e=>e.id===s.id);if(-1===a||-1===o)return;let i=(0,z.arrayMove)(F,a,o);V(i),O(i.map(e=>e.id)).then(()=>n.refresh()).catch(()=>{V(e),E.toast.error(l("sidebar.reorderError"))})},[F,e,n,l]),J=i.split("/workspaces/")[1]?.split("/")[0],Y=(0,r.useCallback)(e=>{if(J===e)return;let t=(0,R.getLastProjectId)(e);n.push(t?`/workspaces/${e}?projectId=${t}`:`/workspaces/${e}`)},[J,n]),Z=(0,r.useCallback)(()=>{d(e=>{let t=!e;return localStorage.setItem("sidebar-collapsed",String(t)),t})},[]),Q=(0,r.useCallback)(async()=>{if(!y.trim())return;let e=await P({name:y.trim(),description:T});S(""),M(W[0]),h(!1),n.refresh(),n.push(`/workspaces/${e.id}`)},[y,T,n]),ee=(0,r.useCallback)(async()=>{y.trim()&&$&&(await D($,{name:y.trim(),description:T}),S(""),x(!1),L(null),n.refresh())},[y,T,$,n]),et=(0,r.useCallback)(e=>{L(e.id),S(e.name),M(e.description&&W.includes(e.description)?e.description:W[0]),x(!0)},[]),er=(0,r.useCallback)(async(t,r)=>{if(e.length<=1)return void E.toast.error(l("sidebar.lastWorkspaceError"));if(confirm(l("sidebar.deleteConfirm",{name:r})))try{await I(t),n.refresh(),J===t&&n.push("/workspaces")}catch{E.toast.error(l("sidebar.lastWorkspaceError"))}},[J,n,l,e.length]),es=(0,r.useCallback)(e=>{w(e),b(!0)},[]),ea=e=>e.description&&W.includes(e.description)?e.description:e.name.charAt(0).toUpperCase();return c?(0,t.jsxs)("aside",{className:"flex h-screen w-14 flex-col items-center border-r border-border bg-sidebar py-3",children:[(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)("button",{onClick:Z,className:"mb-4 flex h-9 w-9 items-center justify-center rounded-lg bg-primary/10 ring-1 ring-primary/20 transition-transform hover:scale-105"}),children:(0,t.jsx)("img",{src:"/logo.png",alt:"Tower",className:"h-6 w-6 rounded"})}),(0,t.jsx)(k.TooltipContent,{side:"right",sideOffset:8,children:l("sidebar.expand")})]}),(0,t.jsx)(N.ScrollArea,{className:"flex-1 min-h-0",children:(0,t.jsxs)("div",{className:"flex flex-col items-center gap-1 px-0.5 pt-1",children:[e.map(e=>{let r=J===e.id,s=ea(e);return(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)("button",{onClick:()=>Y(e.id),className:`flex h-9 w-9 items-center justify-center rounded-lg transition-all ${r?"ring-1 ring-primary/20 text-foreground cursor-default":"text-muted-foreground hover:text-foreground cursor-pointer"}`}),children:(0,t.jsx)("span",{className:"flex h-7 w-7 items-center justify-center rounded-md bg-muted text-sm",children:W.includes(s)?s:(0,t.jsx)("span",{className:"text-xs font-semibold",children:s})})}),(0,t.jsx)(k.TooltipContent,{side:"right",sideOffset:8,children:e.name})]},e.id)}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)("button",{"data-tour":"create-workspace",onClick:()=>h(!0),className:"flex h-9 w-9 items-center justify-center rounded-lg text-muted-foreground transition-colors hover:bg-accent hover:text-foreground"}),children:(0,t.jsx)(o.Plus,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{side:"right",sideOffset:8,children:l("sidebar.newWorkspace")})]})]})}),(0,t.jsxs)("div",{className:"mt-2 flex flex-col items-center gap-1",children:[(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)("button",{onClick:()=>n.push("/missions"),className:`rounded-lg p-2 transition-colors ${"/missions"===i?"text-foreground bg-accent":"text-muted-foreground hover:bg-accent hover:text-foreground"}`}),children:(0,t.jsx)(g,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{side:"right",sideOffset:8,children:l("missions.navLabel")})]}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)("button",{onClick:()=>n.push("/harness"),className:`rounded-lg p-2 transition-colors ${"/harness"===i?"text-foreground bg-accent":"text-muted-foreground hover:bg-accent hover:text-foreground"}`}),children:(0,t.jsx)(f.BellRing,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{side:"right",sideOffset:8,children:l("harness.navLabel")})]}),(0,t.jsx)(U,{wsId:J||e[0]?.id,pathname:i,t:l,collapsed:!0})]}),(0,t.jsx)(K,{open:m,onOpenChange:h,title:l("workspace.create"),name:y,onNameChange:S,icon:T,onIconChange:M,onSubmit:Q,submitLabel:l("common.create"),nameLabel:l("workspace.name"),iconLabel:l("workspace.icon"),namePlaceholder:l("workspace.namePlaceholder"),cancelLabel:l("common.cancel")})]}):(0,t.jsxs)("aside",{className:"noise relative flex h-screen w-56 flex-col border-r border-border bg-sidebar",children:[(0,t.jsxs)("div",{className:"relative z-10 flex items-center gap-3 px-4 py-4",children:[(0,t.jsx)("img",{src:"/logo.png",alt:"Tower",className:"h-9 w-9 rounded-lg"}),(0,t.jsxs)("div",{className:"flex-1",children:[(0,t.jsx)("div",{className:"text-sm font-semibold tracking-tight text-foreground",children:"Tower"}),(0,t.jsx)("div",{className:"text-[10px] font-medium uppercase tracking-widest text-muted-foreground",children:"Studio"})]}),(0,t.jsx)(C.Button,{variant:"ghost",size:"icon-xs",onClick:Z,className:"text-muted-foreground",title:l("sidebar.collapse"),children:(0,t.jsx)(u.ChevronsLeft,{className:"h-4 w-4"})})]}),(0,t.jsxs)("div",{className:"relative z-10 flex items-center justify-between px-4 py-2",children:[(0,t.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wider text-muted-foreground",children:l("sidebar.workspace")}),(0,t.jsx)(C.Button,{variant:"ghost",size:"icon-sm",className:"text-muted-foreground","data-tour":"create-workspace",onClick:()=>{S(""),M(W[0]),h(!0)},title:l("sidebar.newWorkspace"),children:(0,t.jsx)(o.Plus,{className:"h-3.5 w-3.5"})})]}),(0,t.jsx)(N.ScrollArea,{className:"relative z-10 mt-2 flex-1 min-h-0",children:(0,t.jsx)("div",{className:"px-2 py-1",children:(0,t.jsx)(B.DndContext,{id:"workspace-sidebar",sensors:q,collisionDetection:B.closestCenter,onDragEnd:X,children:(0,t.jsx)(z.SortableContext,{items:F.map(e=>e.id),strategy:z.verticalListSortingStrategy,children:F.map(e=>(0,t.jsx)(H,{ws:e,isActive:J===e.id,icon:ea(e),disableDelete:F.length<=1,t:l,onSelect:()=>Y(e.id),onEdit:()=>et(e),onManageLabels:()=>es(e.id),onDelete:()=>er(e.id,e.name)},e.id))})})})}),(0,t.jsxs)(a.default,{href:"/missions",className:`relative z-10 flex items-center gap-2 border-t border-border px-4 py-3 text-[11px] cursor-pointer transition-colors ${"/missions"===i?"text-foreground":"text-muted-foreground hover:text-foreground"}`,children:[(0,t.jsx)(g,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:l("missions.navLabel")})]}),(0,t.jsxs)(a.default,{href:"/harness",className:`relative z-10 flex items-center gap-2 border-t border-border px-4 py-3 text-[11px] cursor-pointer transition-colors ${"/harness"===i?"text-foreground":"text-muted-foreground hover:text-foreground"}`,children:[(0,t.jsx)(f.BellRing,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:l("harness.navLabel")})]}),(0,t.jsx)(U,{wsId:J||e[0]?.id,pathname:i,t:l,collapsed:!1}),(0,t.jsx)(K,{open:m,onOpenChange:h,title:l("workspace.create"),name:y,onNameChange:S,icon:T,onIconChange:M,onSubmit:Q,submitLabel:l("common.create"),nameLabel:l("workspace.name"),iconLabel:l("workspace.icon"),namePlaceholder:l("workspace.namePlaceholder"),cancelLabel:l("common.cancel")}),(0,t.jsx)(K,{open:p,onOpenChange:e=>{x(e),e||L(null)},title:l("workspace.edit"),name:y,onNameChange:S,icon:T,onIconChange:M,onSubmit:ee,submitLabel:l("common.save"),nameLabel:l("workspace.name"),iconLabel:l("workspace.icon"),namePlaceholder:l("workspace.namePlaceholder"),cancelLabel:l("common.cancel")}),v&&(0,t.jsx)(G,{open:j,onOpenChange:e=>{b(e),e||w(null)},workspaceId:v})]})}function U({wsId:e,pathname:s,t:o,collapsed:i}){let[l,d]=(0,r.useState)(!1),u=[...e?[{href:`/workspaces/${e}/groups`,icon:c.Boxes,label:o("sidebar.groups"),active:s.includes("/groups")},null,{href:`/workspaces/${e}/notes`,icon:h.FileText,label:o("sidebar.notes"),active:s.includes("/notes")},{href:`/workspaces/${e}/assets`,icon:p.FolderOpen,label:o("sidebar.assets"),active:s.includes("/assets")},{href:`/workspaces/${e}/archive`,icon:n.Archive,label:o("sidebar.archive"),active:s.includes("/archive")},null]:[],{href:"/settings",icon:b.Settings,label:o("settings.title"),active:s.startsWith("/settings")}],m=i?(0,t.jsx)("button",{"aria-label":o("sidebar.more"),className:`rounded-lg p-2 transition-colors ${l?"text-foreground bg-accent":"text-muted-foreground hover:bg-accent hover:text-foreground"}`}):(0,t.jsx)("button",{"aria-label":o("sidebar.more"),className:"relative z-10 flex w-full items-center gap-2 border-t border-border px-4 py-3 text-[11px] text-muted-foreground cursor-pointer hover:text-foreground transition-colors"});return(0,t.jsxs)(w.Popover,{open:l,onOpenChange:d,children:[(0,t.jsxs)(w.PopoverTrigger,{openOnHover:!0,delay:120,closeDelay:250,render:m,children:[(0,t.jsx)(j,{className:i?"h-4 w-4":"h-3.5 w-3.5"}),!i&&(0,t.jsx)("span",{children:o("sidebar.more")})]}),(0,t.jsx)(w.PopoverContent,{side:"right",align:"end",sideOffset:8,className:"w-52 gap-0.5 p-1.5",children:u.map((e,r)=>null===e?(0,t.jsx)("div",{className:"my-1 h-px bg-border"},`sep-${r}`):(0,t.jsxs)(a.default,{href:e.href,onClick:()=>d(!1),className:`flex items-center gap-2.5 rounded-md px-2.5 py-2 text-sm transition-colors ${e.active?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent hover:text-foreground"}`,children:[(0,t.jsx)(e.icon,{className:"h-4 w-4 shrink-0"}),(0,t.jsx)("span",{children:e.label})]},e.href))})]})}function H({ws:e,isActive:r,icon:s,disableDelete:a,t:n,onSelect:o,onEdit:c,onManageLabels:u,onDelete:h}){var p;let x,g,f,{attributes:j,listeners:b,setNodeRef:w,transform:N,transition:y,isDragging:k}=(0,z.useSortable)({id:e.id}),C={transform:F.CSS.Transform.toString(N),transition:y,opacity:k?.4:1};return(0,t.jsxs)("div",{ref:w,style:C,...j,...b,className:`group relative flex touch-none items-center rounded-lg transition-all ${r?"bg-accent ring-1 ring-primary/15":"hover:bg-accent/60"}`,children:[(0,t.jsxs)("button",{onClick:o,className:`flex flex-1 items-center gap-2.5 px-3 py-2.5 text-left ${r?"cursor-default":"cursor-pointer"}`,children:[(0,t.jsx)("span",{className:"flex h-7 w-7 items-center justify-center rounded-md bg-muted text-sm",children:W.includes(s)?s:(0,t.jsx)("span",{className:"text-xs font-semibold text-muted-foreground",children:s})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("div",{className:`truncate text-sm font-medium ${r?"text-foreground":"text-secondary-foreground"}`,children:e.name}),(0,t.jsx)("div",{className:"text-[11px] text-muted-foreground",children:(p=e.updatedAt,g=Math.floor((x=Date.now()-new Date(p).getTime())/6e4),f=Math.floor(x/36e5),g<60?`${g}m ago`:f<24?`${f}h ago`:`${Math.floor(f/24)}d ago`)})]})]}),(0,t.jsxs)(v.DropdownMenu,{children:[(0,t.jsx)(v.DropdownMenuTrigger,{render:(0,t.jsx)("button",{className:"mr-2 rounded-md p-1 text-muted-foreground opacity-0 transition-all hover:bg-background hover:text-foreground group-hover:opacity-100",onClick:e=>e.stopPropagation()}),children:(0,t.jsx)(d.MoreHorizontal,{className:"h-3.5 w-3.5"})}),(0,t.jsxs)(v.DropdownMenuContent,{align:"start",side:"right",children:[(0,t.jsxs)(v.DropdownMenuItem,{onClick:c,children:[(0,t.jsx)(i.Pencil,{className:"mr-2 h-3.5 w-3.5"}),n("sidebar.rename")]}),(0,t.jsxs)(v.DropdownMenuItem,{onClick:u,children:[(0,t.jsx)(m.Tag,{className:"mr-2 h-3.5 w-3.5"}),n("sidebar.manageLabels")]}),(0,t.jsxs)(v.DropdownMenuItem,{className:a?"text-muted-foreground opacity-50":"text-rose-400",disabled:a,onClick:h,children:[(0,t.jsx)(l.Trash2,{className:"mr-2 h-3.5 w-3.5"}),n("sidebar.delete")]})]})]})]})}function K({open:e,onOpenChange:r,title:s,name:a,onNameChange:n,icon:o,onIconChange:i,onSubmit:l,submitLabel:c,nameLabel:d,iconLabel:u,namePlaceholder:m,cancelLabel:h}){return(0,t.jsx)(y.Dialog,{open:e,onOpenChange:r,disablePointerDismissal:!0,children:(0,t.jsxs)(y.DialogContent,{className:"sm:max-w-sm",children:[(0,t.jsx)(y.DialogHeader,{children:(0,t.jsx)(y.DialogTitle,{children:s})}),(0,t.jsxs)("div",{className:"space-y-4 py-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:d}),(0,t.jsx)(S.Input,{placeholder:m,value:a,onChange:e=>n(e.target.value),onKeyDown:e=>"Enter"===e.key&&e.preventDefault(),className:"mt-1.5"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:u}),(0,t.jsx)("div",{className:"mt-1.5 grid grid-cols-6 gap-1.5",children:W.map(e=>(0,t.jsx)("button",{onClick:()=>i(e),className:`flex h-10 w-10 items-center justify-center rounded-lg text-lg transition-all ${o===e?"bg-primary/15 ring-2 ring-primary/30 scale-110":"bg-muted hover:bg-accent"}`,children:e},e))})]})]}),(0,t.jsxs)(y.DialogFooter,{children:[(0,t.jsx)(C.Button,{variant:"outline",onClick:()=>r(!1),children:h}),(0,t.jsx)(C.Button,{onClick:l,disabled:!a.trim(),className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:c})]})]})})}let V=["#3b82f6","#ef4444","#f59e0b","#10b981","#8b5cf6","#ec4899","#06b6d4","#f97316"];function G({open:e,onOpenChange:s,workspaceId:a}){let{t:n}=(0,A.useI18n)(),[o,i]=(0,r.useState)([]),[l,c]=(0,r.useState)(""),[d,u]=(0,r.useState)(V[0]);(0,r.useEffect)(()=>{e&&(0,M.getLabelsForWorkspace)(a).then(i)},[e,a]);let m=async()=>{l.trim()&&(await $({name:l.trim(),color:d,workspaceId:a}),i(await (0,M.getLabelsForWorkspace)(a)),c(""))},h=async e=>{await L(e),i(t=>t.filter(t=>t.id!==e))};return(0,t.jsx)(y.Dialog,{open:e,onOpenChange:s,disablePointerDismissal:!0,children:(0,t.jsxs)(y.DialogContent,{className:"sm:max-w-sm",children:[(0,t.jsx)(y.DialogHeader,{children:(0,t.jsx)(y.DialogTitle,{children:n("label.manage")})}),(0,t.jsxs)("div",{className:"space-y-3 py-2",children:[o.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"h-3 w-3 rounded-full",style:{backgroundColor:e.color}}),(0,t.jsx)("span",{className:"flex-1 text-sm text-foreground",children:e.name}),e.isBuiltin?(0,t.jsx)("span",{className:"text-[10px] text-muted-foreground",children:n("label.builtin")}):(0,t.jsx)("button",{onClick:()=>h(e.id),className:"text-xs text-rose-400 hover:text-rose-300",children:n("common.delete")})]},e.id)),(0,t.jsxs)("div",{className:"border-t border-border pt-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(S.Input,{placeholder:n("label.name"),value:l,onChange:e=>c(e.target.value),onKeyDown:e=>"Enter"===e.key&&e.preventDefault(),className:"flex-1 h-8"}),(0,t.jsx)(C.Button,{size:"sm",onClick:m,disabled:!l.trim(),className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:n("label.add")})]}),(0,t.jsx)("div",{className:"mt-2 flex gap-1.5",children:V.map(e=>(0,t.jsx)("button",{onClick:()=>u(e),className:`h-5 w-5 rounded-full transition-all ${d===e?"ring-2 ring-offset-2 ring-offset-background ring-foreground/30 scale-110":""}`,style:{backgroundColor:e}},e))})]})]})]})})}e.i(508271);var q=e.i(841359),X=e.i(289813);let J=(0,X.create)(e=>({createProjectOpen:!1,importProjectOpen:!1,setCreateProjectOpen:t=>e({createProjectOpen:t}),setImportProjectOpen:t=>e({importProjectOpen:t})}));var Y=e.i(821957),Z=e.i(738690);let Q=(0,x.default)("command",[["path",{d:"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3",key:"11bfej"}]]);var ee=e.i(242941),et=e.i(989548),er=e.i(387091),es=e.i(15299);e.s([],678787),e.i(678787),e.i(708878);var ea=e.i(581263),en=e.i(462902);let eo=r.createContext(void 0);function ei(){let e=r.useContext(eo);if(void 0===e)throw Error((0,en.default)(13));return e}let el={imageLoadingStatus:()=>null},ec=r.forwardRef(function(e,s){let{className:a,render:n,...o}=e,[i,l]=r.useState("idle"),c=r.useMemo(()=>({imageLoadingStatus:i,setImageLoadingStatus:l}),[i,l]),d=(0,ea.useRenderElement)("span",e,{state:{imageLoadingStatus:i},ref:s,props:o,stateAttributesMapping:el});return(0,t.jsx)(eo.Provider,{value:c,children:d})});var ed=e.i(887642),eu=e.i(804849),em=e.i(504068),eh=e.i(809058),ep=e.i(193214),ex=e.i(954588);let eg={...el,...eh.transitionStatusMapping},ef=r.forwardRef(function(e,t){let{className:s,render:a,onLoadingStatusChange:n,referrerPolicy:o,crossOrigin:i,...l}=e,c=ei(),d=function(e,{referrerPolicy:t,crossOrigin:s}){let[a,n]=r.useState("idle");return(0,eu.useIsoLayoutEffect)(()=>{if(!e)return n("error"),ex.NOOP;let r=!0,a=new window.Image,o=e=>()=>{r&&n(e)};return n("loading"),a.onload=o("loaded"),a.onerror=o("error"),t&&(a.referrerPolicy=t),a.crossOrigin=s??null,a.src=e,()=>{r=!1}},[e,s,t]),a}(e.src,{referrerPolicy:o,crossOrigin:i}),u="loaded"===d,{mounted:m,transitionStatus:h,setMounted:p}=(0,ep.useTransitionStatus)(u),x=r.useRef(null),g=(0,ed.useStableCallback)(e=>{n?.(e),c.setImageLoadingStatus(e)});(0,eu.useIsoLayoutEffect)(()=>{"idle"!==d&&g(d)},[d,g]),(0,em.useOpenChangeComplete)({open:u,ref:x,onComplete(){u||p(!1)}});let f=(0,ea.useRenderElement)("img",e,{state:{imageLoadingStatus:d,transitionStatus:h},ref:[t,x],props:l,stateAttributesMapping:eg,enabled:m});return m?f:null});var ej=e.i(161476);let eb=r.forwardRef(function(e,t){let{className:s,render:a,delay:n,...o}=e,{imageLoadingStatus:i}=ei(),[l,c]=r.useState(void 0===n),d=(0,ej.useTimeout)();return r.useEffect(()=>(void 0!==n&&d.start(n,()=>c(!0)),d.clear),[d,n]),(0,ea.useRenderElement)("span",e,{state:{imageLoadingStatus:i},ref:t,props:o,stateAttributesMapping:el,enabled:"loaded"!==i&&l})});e.s(["Fallback",0,eb,"Image",0,ef,"Root",0,ec],129448);var ev=e.i(129448),ev=ev,ew=e.i(975157);function eN({className:e,size:r="default",...s}){return(0,t.jsx)(ev.Root,{"data-slot":"avatar","data-size":r,className:(0,ew.cn)("group/avatar relative flex size-8 shrink-0 rounded-full select-none after:absolute after:inset-0 after:rounded-full after:border after:border-border after:mix-blend-darken data-[size=lg]:size-10 data-[size=sm]:size-6 dark:after:mix-blend-lighten",e),...s})}function ey({className:e,...r}){return(0,t.jsx)(ev.Fallback,{"data-slot":"avatar-fallback",className:(0,ew.cn)("flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs",e),...r})}let ek=(0,x.default)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]]);var eC=e.i(226145);let eS=(0,x.default)("sticky-note",[["path",{d:"M21 9a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 15 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2z",key:"1dfntj"}],["path",{d:"M15 3v5a1 1 0 0 0 1 1h5",key:"6s6qgf"}]]),eT=(0,x.default)("package-2",[["path",{d:"M12 3v6",key:"1holv5"}],["path",{d:"M16.76 3a2 2 0 0 1 1.8 1.1l2.23 4.479a2 2 0 0 1 .21.891V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V9.472a2 2 0 0 1 .211-.894L5.45 4.1A2 2 0 0 1 7.24 3z",key:"187q7i"}],["path",{d:"M3.054 9.013h17.893",key:"grwhos"}]]);var eP=e.i(657153);let eD=(0,T.createServerReference)("60142d3511951329d3e470987027ec7fc4e43f8477",T.callServer,void 0,T.findSourceMapURL,"globalSearch");var eI=e.i(972977);let eO=[{id:"all",key:"search.all",icon:Z.Search},{id:"task",key:"search.task",icon:h.FileText},{id:"project",key:"search.project",icon:ek},{id:"repository",key:"search.repository",icon:eC.GitBranch},{id:"note",key:"search.note",icon:eS},{id:"asset",key:"search.asset",icon:eT}],eM=["task","project","repository","note","asset"],e$={task:"search.task",project:"search.project",repository:"search.repository",note:"search.note",asset:"search.asset"};function eL({result:e,onSelect:r}){let s=eO.find(t=>t.id===e.type)?.icon??h.FileText;return(0,t.jsxs)("button",{onClick:()=>r(e),className:"flex w-full items-center gap-3 border-b border-border/30 px-4 py-3 text-left transition-colors hover:bg-accent last:border-b-0",children:[(0,t.jsx)("div",{className:"rounded-md bg-muted p-1.5",children:(0,t.jsx)(s,{className:"h-3.5 w-3.5 text-muted-foreground"})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-foreground truncate",children:e.title}),(0,t.jsx)("div",{className:"text-xs text-muted-foreground truncate",children:e.subtitle}),e.snippet&&(0,t.jsx)("div",{className:"text-xs text-muted-foreground/70 truncate mt-0.5",children:e.snippet})]})]})}function eR({open:e,onOpenChange:a}){let n,{t:o}=(0,A.useI18n)(),i=(0,s.useRouter)(),[l,c]=(0,r.useState)(""),[d,u]=(0,r.useState)("all"),[m,h]=(0,r.useState)([]),[p,x]=(0,r.useState)(!1),[g,f]=(0,r.useState)(250),j=(0,r.useRef)(null),b=(0,r.useRef)(null);(0,r.useEffect)(()=>{e&&((0,eI.getConfigValue)("search.debounceMs",250).then(f),setTimeout(()=>j.current?.focus(),100),c(""),h([]))},[e]),(0,r.useEffect)(()=>{if(b.current&&clearTimeout(b.current),!l.trim()){h([]),x(!1);return}x(!0);let e=!1;return b.current=setTimeout(async()=>{let t=await eD(l,d);e||(h(t),x(!1))},g),()=>{b.current&&clearTimeout(b.current),e=!0}},[l,d,g]);let v=(0,r.useCallback)(e=>{i.push(e.navigateTo),a(!1)},[i,a]);return(0,t.jsx)(y.Dialog,{open:e,onOpenChange:a,children:(0,t.jsxs)(y.DialogContent,{className:"sm:max-w-lg p-0 gap-0 overflow-hidden !top-[10vh] !-translate-y-0",showCloseButton:!1,children:[(0,t.jsxs)("div",{className:"flex items-center border-b border-border px-4",children:[(0,t.jsx)(Z.Search,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("input",{ref:j,value:l,onChange:e=>c(e.target.value),placeholder:o("search.placeholder"),className:"flex-1 bg-transparent px-3 py-3.5 text-sm text-foreground placeholder-muted-foreground outline-none"}),l&&(0,t.jsx)(C.Button,{variant:"ghost",size:"icon",onClick:()=>{c(""),h([])},className:"text-muted-foreground",children:(0,t.jsx)(eP.X,{className:"h-3.5 w-3.5"})})]}),(0,t.jsx)("div",{className:"flex items-center gap-1 border-b border-border px-4 py-2",children:eO.map(e=>{let r=e.icon;return(0,t.jsxs)("button",{onClick:()=>u(e.id),className:`flex items-center gap-1.5 rounded-md px-2.5 py-1 text-xs font-medium transition-all ${d===e.id?"bg-primary/10 text-primary ring-1 ring-primary/20":"text-muted-foreground hover:bg-accent hover:text-foreground"}`,children:[(0,t.jsx)(r,{className:"h-3 w-3"}),o(e.key)]},e.id)})}),(0,t.jsxs)(N.ScrollArea,{className:"max-h-80",children:[!l.trim()&&(0,t.jsx)("div",{className:"flex items-center justify-center py-12 text-sm text-muted-foreground",children:o("search.typeToSearch")}),l.trim()&&0===m.length&&!p&&(0,t.jsx)("div",{className:"flex items-center justify-center py-12 text-sm text-muted-foreground",children:o("search.noResults")}),"all"===d&&m.length>0&&(n=m.reduce((e,t)=>((e[t.type]??=[]).push(t),e),{}),eM.filter(e=>n[e]?.length).map(e=>(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"px-4 py-1.5 text-[10px] font-semibold uppercase tracking-wider text-muted-foreground bg-muted/50",children:o(e$[e])}),n[e].map(e=>(0,t.jsx)(eL,{result:e,onSelect:v},`${e.type}-${e.id}`))]},e))),"all"!==d&&m.map(e=>(0,t.jsx)(eL,{result:e,onSelect:v},`${e.type}-${e.id}`))]})]})})}var eA=e.i(338187),eE=e.i(400355),eB=e.i(597746),ez=e.i(938499),eF=e.i(233274),eW=e.i(905455),e_=e.i(967489),eU=e.i(624687);function eH(e){return e.replace(/\.git\/?$/,"")}e.i(465536),e.i(930787);let eK=(0,T.createServerReference)("4069cb12fc0a4402d5562cdb8d9ff6471eee7db186",T.callServer,void 0,T.findSourceMapURL,"resolveGitLocalPathWithSource");var eV=e.i(168367),eG=e.i(224277),eq=e.i(113184),eX=e.i(307739);function eJ({open:e,onOpenChange:s,onCreateProject:a,workspaces:n=[],defaultWorkspaceId:o}){let{t:i,locale:l}=(0,A.useI18n)(),[c,d]=(0,r.useState)(o??""),[u,m]=(0,r.useState)(""),[h,x]=(0,r.useState)(""),[g,f]=(0,r.useState)(""),[j,b]=(0,r.useState)(""),[v,w]=(0,r.useState)(""),[N,T]=(0,r.useState)(""),[P,D]=(0,r.useState)(!1),[I,O]=(0,r.useState)("empty"),[M,$]=(0,r.useState)("FRONTEND"),[L,R]=(0,r.useState)("idle"),[B,z]=(0,r.useState)(""),[F,W]=(0,r.useState)(!1),[_,U]=(0,r.useState)(!1),H=()=>{x(""),f(""),b(""),w(""),T(""),D(!1),O("empty"),$("FRONTEND"),R("idle"),z(""),W(!1),d(o??""),m("")};(0,r.useEffect)(()=>{e&&(d(o??""),m(""))},[e,o]);let K=async()=>{if(N.trim()&&!F&&"success"===L){W(!0);try{let e=await (0,eV.analyzeProjectDirectory)(N.trim(),l);b(e)}catch{E.toast.error(i("project.analyzeError"))}finally{W(!1)}}},V=async e=>{w(e),R("idle"),z("");let t=function(e){let t,r=e.match(/^git@([^:]+):(.+)$/);if(r)return{host:r[1],pathSegments:eH(r[2]).split("/").filter(Boolean)};try{t=new URL(e)}catch{return null}return{host:t.hostname,pathSegments:eH(decodeURIComponent(t.pathname)).split("/").filter(Boolean)}}(e);if(t&&t.pathSegments.length>0&&x(t.pathSegments[t.pathSegments.length-1]),!P){let{path:t,source:r}=await eK(e);T(t),O(r)}},G=async()=>{if(v.trim()&&N.trim()){R("cloning"),z("");try{let e=function(e){let t=e.trim();if(!t)return"";if(t.startsWith("git@")||t.startsWith("ssh://")||t.endsWith(".git"))return t;try{let e=new URL(t),r=e.hostname,s=decodeURIComponent(e.pathname).split("/").filter(Boolean);if("code.iflytek.com"===r){let e=[...s];"osc"===e[0]&&"_source"===e[1]&&(e=e.slice(2));let a=e.indexOf("-");if(a>0&&(e=e.slice(0,a)),0===e.length)return t;return`https://${r}/${e.join("/")}.git`}return`${e.origin}${e.pathname.replace(/\/$/,"")}.git`}catch{return t}}(v.trim()),t=await fetch("/api/git",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"clone",url:e,path:N.trim()})}),r=await t.json();if(!t.ok){R("error"),z(r.error||"Clone failed");return}R("success")}catch{R("error"),z("Network error")}}},q=async()=>{if(h.trim()){let e=await a?.({name:h.trim(),alias:g.trim()||void 0,description:j.trim()||void 0,gitUrl:v.trim()||void 0,localPath:N.trim()||void 0,projectType:M,workspaceId:c||void 0});if(u&&e&&"id"in e)try{await (0,eX.setProjectGroup)(e.id,u)}catch(e){E.toast.error(e instanceof Error?e.message:i("group.createError"))}H(),s(!1)}};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(y.Dialog,{open:e,onOpenChange:e=>{s(e),e||H()},disablePointerDismissal:!0,children:(0,t.jsxs)(y.DialogContent,{style:{maxWidth:"32rem"},children:[(0,t.jsx)(y.DialogHeader,{children:(0,t.jsx)(y.DialogTitle,{children:i("topbar.newProject")})}),(0,t.jsxs)("div",{className:"space-y-4 py-2",children:[n.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.workspace")}),(0,t.jsxs)(e_.Select,{value:c,onValueChange:e=>{d(e??""),m("")},children:[(0,t.jsx)(e_.SelectTrigger,{className:"mt-1.5 w-full",children:(0,t.jsx)("span",{className:"truncate",children:n.find(e=>e.id===c)?.name??i("project.workspacePlaceholder")})}),(0,t.jsx)(e_.SelectContent,{children:n.map(e=>(0,t.jsx)(e_.SelectItem,{value:e.id,children:e.name},e.id))})]})]}),c&&(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.group")}),(0,t.jsx)(eq.GroupSelect,{workspaceId:c,value:u,onChange:m})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.gitUrl")}),(0,t.jsx)("p",{className:"text-[10px] text-muted-foreground mt-0.5",children:i("project.gitUrlHint")}),(0,t.jsx)(S.Input,{placeholder:i("project.gitPlaceholder"),value:v,onChange:e=>V(e.target.value),className:"mt-1.5 font-mono text-xs"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.localPath")}),(0,t.jsx)("p",{className:"text-[10px] text-muted-foreground mt-0.5",children:i("project.localPathHint")}),(0,t.jsxs)("div",{className:"mt-1.5 flex gap-2",children:[(0,t.jsx)(S.Input,{placeholder:i("project.localPathPlaceholder"),value:N,onChange:e=>{T(e.target.value),D(!0)},className:"flex-1 min-w-0 font-mono text-xs"}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsxs)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{type:"button",variant:"outline",onClick:()=>U(!0),className:"shrink-0 gap-1.5 px-2.5 text-xs text-muted-foreground"}),children:[(0,t.jsx)(p.FolderOpen,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:i("folder.browse")})]}),(0,t.jsx)(k.TooltipContent,{children:i("folder.selectFolder")})]})]}),N.trim().startsWith("~")&&(0,t.jsxs)("p",{className:"mt-1 flex items-center gap-1 text-[11px] text-amber-400",children:[(0,t.jsx)(ez.AlertCircle,{className:"h-3 w-3"}),i("project.tildeWarning")]}),!P&&"fallback"===I&&v.trim()&&N.trim()&&(0,t.jsxs)("p",{className:"mt-1 flex items-center gap-1 text-[11px] text-muted-foreground",children:[(0,t.jsx)(ez.AlertCircle,{className:"h-3 w-3 shrink-0"}),i("project.gitPathFallbackHint")]}),v.trim()&&N.trim()&&(0,t.jsxs)("div",{className:"mt-2 flex items-center gap-2",children:[(0,t.jsxs)(C.Button,{type:"button",disabled:"cloning"===L||"success"===L,onClick:G,className:"gap-1.5 text-xs bg-emerald-500/15 text-emerald-300 ring-1 ring-emerald-500/25 hover:bg-emerald-500/25 disabled:opacity-50",children:["cloning"===L?(0,t.jsx)(eE.Loader2,{className:"h-3 w-3 animate-spin"}):"success"===L?(0,t.jsx)(eB.Check,{className:"h-3 w-3"}):(0,t.jsx)(eC.GitBranch,{className:"h-3 w-3"}),"cloning"===L?i("git.cloning"):"success"===L?i("git.cloned"):i("git.clone")]}),"error"===L&&(0,t.jsxs)("span",{className:"flex items-center gap-1 text-[11px] text-rose-400",children:[(0,t.jsx)(ez.AlertCircle,{className:"h-3 w-3"}),B]}),"success"===L&&(0,t.jsx)("span",{className:"text-[11px] text-emerald-400",children:i("git.cloneSuccess")})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.name")}),(0,t.jsx)(S.Input,{placeholder:i("project.namePlaceholder"),value:h,onChange:e=>x(e.target.value),className:"mt-1.5"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.type.label")}),(0,t.jsx)("div",{className:"mt-1.5",children:(0,t.jsx)(eW.SegmentedControl,{options:[{value:"FRONTEND",label:i("project.type.frontend")},{value:"BACKEND",label:i("project.type.backend")}],value:M,onChange:$})})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.alias")}),(0,t.jsx)(S.Input,{placeholder:i("project.aliasPlaceholder"),value:g,onChange:e=>f(e.target.value),className:"mt-1.5"})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mt-0.5",children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.description")}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsxs)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{type:"button",variant:"ghost",onClick:K,className:`h-6 gap-1 px-2 text-[11px] text-muted-foreground hover:text-foreground ${!N.trim()||F?"opacity-50":""}`}),children:[F?(0,t.jsx)(eE.Loader2,{className:"h-3 w-3 animate-spin"}):(0,t.jsx)(eF.Sparkles,{className:"h-3 w-3"}),F?i("project.analyzing"):i("project.genDesc")]}),(0,t.jsx)(k.TooltipContent,{children:N.trim()?"success"!==L?i("project.genDescNotCloned"):i("project.genDescReady"):i("project.genDescNoPath")})]})]}),(0,t.jsx)(eU.Textarea,{placeholder:i("project.descPlaceholder"),value:j,onChange:e=>b(e.target.value),rows:3,className:"mt-1.5 w-full rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder-muted-foreground outline-none transition-colors focus:border-ring focus:ring-1 focus:ring-ring resize-none max-h-[200px] overflow-y-auto"})]})]}),(0,t.jsxs)(y.DialogFooter,{children:[(0,t.jsx)(C.Button,{variant:"outline",onClick:()=>{s(!1),H()},children:i("common.cancel")}),(0,t.jsx)(C.Button,{onClick:q,disabled:!h.trim()||F,className:"bg-primary/10 text-primary ring-1 ring-primary/25 hover:bg-primary/20",children:i("common.create")})]})]})}),(0,t.jsx)(eG.FolderBrowserDialog,{open:_,onOpenChange:U,onSelect:e=>{if(T(e),D(!0),!h.trim()){let t=e.replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean).pop()??"";t&&x(t)}}})]})}var eY=e.i(579157),eZ=e.i(699375);let eQ=(0,T.createServerReference)("40c81ae66fb2ac3dd2e0eaeb48b9679649a1db7316",T.callServer,void 0,T.findSourceMapURL,"resolveGitLocalPath"),e0=(0,T.createServerReference)("6001484b600fdf5a61d003498751d8a8d6d8c8bd73",T.callServer,void 0,T.findSourceMapURL,"migrateProjectPath"),e1=(0,T.createServerReference)("40754cf5b6c66131775e7b7110bda058637e4154fc",T.callServer,void 0,T.findSourceMapURL,"checkMigrationSafety");function e2({open:e,onOpenChange:s,onCreateProject:a,workspaces:n=[],defaultWorkspaceId:o}){let{t:i,locale:l}=(0,A.useI18n)(),[c,d]=(0,r.useState)(o??""),[u,m]=(0,r.useState)(""),[h,x]=(0,r.useState)(""),[g,f]=(0,r.useState)(""),[j,b]=(0,r.useState)(""),[v,w]=(0,r.useState)(""),[N,T]=(0,r.useState)(""),[P,D]=(0,r.useState)(!1),[I,O]=(0,r.useState)("FRONTEND"),[M,$]=(0,r.useState)(!1),[L,R]=(0,r.useState)(!1),[B,z]=(0,r.useState)(""),[F,W]=(0,r.useState)(!1),[_,U]=(0,r.useState)(""),[H,K]=(0,r.useState)(""),[V,G]=(0,r.useState)(!1),[q,X]=(0,r.useState)(!1),J=()=>{x(""),f(""),b(""),w(""),T(""),O("FRONTEND"),$(!1),R(!1),z(""),W(!1),U(""),K(""),G(!1),X(!1),d(o??""),m("")};(0,r.useEffect)(()=>{e&&(d(o??""),m(""))},[e,o]);let Y=async e=>{T(e),$(!1),R(!1),z(""),U(""),K(""),G(!1),x(e.replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean).pop()??"");try{let t=await fetch(`/api/git?path=${encodeURIComponent(e)}`);if(t.ok){let e=await t.json();if(e.isGit&&e.remoteUrl){w(e.remoteUrl),$(!0);let t=e.remoteUrl.match(/\/([^/]+?)(?:\.git)?$/);t&&x(t[1])}}}catch{}},Z=(0,r.useCallback)(async e=>{if(R(e),U(""),K(""),G(!1),!e)return void z("");if(v)try{let e=await eQ(v);e&&(z(e),e===N&&G(!0))}catch{}if(N)try{let e=await fetch(`/api/git?path=${encodeURIComponent(N)}&checkWorktrees=true`);e.ok&&(await e.json()).hasWorktrees&&K(i("project.worktreeWarning"))}catch{}},[v,N]),Q=async()=>{if(N&&!q){X(!0);try{let e=await (0,eV.analyzeProjectDirectory)(N.trim(),l);b(e)}catch{E.toast.error(i("project.analyzeError"))}finally{X(!1)}}},ee=async()=>{if(!h.trim())return;let e={name:h.trim(),alias:g.trim()||void 0,description:j.trim()||void 0,gitUrl:v.trim()||void 0,localPath:N.trim()||void 0,projectType:I,workspaceId:c||void 0},t=await a?.(e);if(u&&t&&"id"in t)try{await (0,eX.setProjectGroup)(t.id,u)}catch(e){E.toast.error(e instanceof Error?e.message:i("group.createError"))}if(L&&B&&B!==N&&t&&"id"in t){W(!0),U("");try{let e=await e1(t.id);if(!e.safe)return void U(e.reason);let r=await e0(t.id,B);if(!r.success)return void U(r.error??i("project.migrateError"));E.toast.success(i("project.migrateSuccess"))}catch(t){let e=t instanceof Error?t.message:String(t);U(`${i("project.migrateError")}:${e}`);return}finally{W(!1)}}J(),s(!1)},et=!h.trim()||!N.trim()||F||q||L&&!!H;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(y.Dialog,{open:e,onOpenChange:e=>{s(e),e||J()},disablePointerDismissal:!0,children:(0,t.jsxs)(y.DialogContent,{style:{maxWidth:"32rem"},children:[(0,t.jsx)(y.DialogHeader,{children:(0,t.jsx)(y.DialogTitle,{children:i("topbar.importProject")})}),(0,t.jsxs)("div",{className:"space-y-4 py-2",children:[n.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.workspace")}),(0,t.jsxs)(e_.Select,{value:c,onValueChange:e=>{d(e??""),m("")},children:[(0,t.jsx)(e_.SelectTrigger,{className:"mt-1.5 w-full",children:(0,t.jsx)("span",{className:"truncate",children:n.find(e=>e.id===c)?.name??i("project.workspacePlaceholder")})}),(0,t.jsx)(e_.SelectContent,{children:n.map(e=>(0,t.jsx)(e_.SelectItem,{value:e.id,children:e.name},e.id))})]})]}),c&&(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.group")}),(0,t.jsx)(eq.GroupSelect,{workspaceId:c,value:u,onChange:m})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.localPath")}),(0,t.jsx)("p",{className:"text-[10px] text-muted-foreground mt-0.5",children:i("project.importHint")}),(0,t.jsxs)("div",{className:"mt-1.5 flex gap-2",children:[(0,t.jsx)(S.Input,{value:N,readOnly:!0,placeholder:i("project.localPathPlaceholder"),className:"flex-1 font-mono text-xs bg-muted/30"}),(0,t.jsxs)(C.Button,{type:"button",variant:"outline",onClick:()=>D(!0),className:"shrink-0 gap-1.5",children:[(0,t.jsx)(p.FolderOpen,{className:"h-3.5 w-3.5"}),i("folder.browse")]})]}),M&&(0,t.jsx)("p",{className:"mt-1.5 text-[11px] text-emerald-400",children:i("project.autoDetected")})]}),v&&(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.gitUrl")}),(0,t.jsx)(S.Input,{value:v,onChange:e=>w(e.target.value),className:"mt-1.5 font-mono text-xs"})]}),M&&N&&(0,t.jsxs)("div",{className:"rounded-md border border-border p-3 space-y-2",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"text-xs font-medium",children:i("project.migrate")}),(0,t.jsx)("p",{className:"text-[10px] text-muted-foreground mt-0.5",children:i("project.migrateHint")})]}),(0,t.jsx)(eZ.Switch,{checked:L,onCheckedChange:e=>Z(e)})]}),L&&(0,t.jsxs)("div",{className:"space-y-2 pt-1",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-[10px] font-medium text-muted-foreground",children:i("project.targetPath")}),(0,t.jsx)(S.Input,{value:B,onChange:e=>{z(e.target.value),G(e.target.value===N)},placeholder:"/path/to/canonical/location",className:"mt-1 font-mono text-xs"})]}),V&&(0,t.jsxs)("p",{className:"flex items-center gap-1 text-[11px] text-sky-400",children:[(0,t.jsx)(eY.Info,{className:"h-3 w-3"}),i("project.samePathInfo")]}),H&&(0,t.jsxs)("p",{className:"flex items-center gap-1 text-[11px] text-amber-400",children:[(0,t.jsx)(ez.AlertCircle,{className:"h-3 w-3"}),H]}),_&&(0,t.jsxs)("p",{className:"flex items-center gap-1 text-[11px] text-rose-400",children:[(0,t.jsx)(ez.AlertCircle,{className:"h-3 w-3"}),_]})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.name")}),(0,t.jsx)(S.Input,{placeholder:i("project.namePlaceholder"),value:h,onChange:e=>x(e.target.value),className:"mt-1.5"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.type.label")}),(0,t.jsx)("div",{className:"mt-1.5",children:(0,t.jsx)(eW.SegmentedControl,{options:[{value:"FRONTEND",label:i("project.type.frontend")},{value:"BACKEND",label:i("project.type.backend")}],value:I,onChange:O})})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.alias")}),(0,t.jsx)(S.Input,{placeholder:i("project.aliasPlaceholder"),value:g,onChange:e=>f(e.target.value),className:"mt-1.5"})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mt-0.5",children:[(0,t.jsx)("label",{className:"text-xs font-medium text-muted-foreground",children:i("project.description")}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsxs)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{type:"button",variant:"ghost",onClick:Q,className:`h-6 gap-1 px-2 text-[11px] text-muted-foreground hover:text-foreground ${!N||q?"opacity-50":""}`}),children:[q?(0,t.jsx)(eE.Loader2,{className:"h-3 w-3 animate-spin"}):(0,t.jsx)(eF.Sparkles,{className:"h-3 w-3"}),q?i("project.analyzing"):i("project.genDesc")]}),(0,t.jsx)(k.TooltipContent,{children:N?i("project.genDescReady"):i("project.genDescNoPath")})]})]}),(0,t.jsx)(eU.Textarea,{placeholder:i("project.descPlaceholder"),value:j,onChange:e=>b(e.target.value),rows:3,className:"mt-1.5 w-full rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder-muted-foreground outline-none transition-colors focus:border-ring focus:ring-1 focus:ring-ring resize-none max-h-[200px] overflow-y-auto"})]})]}),(0,t.jsxs)(y.DialogFooter,{children:[(0,t.jsx)(C.Button,{variant:"outline",onClick:()=>{s(!1),J()},children:i("common.cancel")}),(0,t.jsx)(C.Button,{onClick:ee,disabled:et,className:"bg-primary/10 text-primary ring-1 ring-primary/25 hover:bg-primary/20",children:F?i("project.migrating"):i("common.create")})]})]})}),(0,t.jsx)(eG.FolderBrowserDialog,{open:P,onOpenChange:D,onSelect:e=>Y(e)})]})}function e5({className:e}){return(0,t.jsx)("svg",{viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",className:e,children:(0,t.jsx)("path",{d:"M12 .5C5.65.5.5 5.65.5 12.02c0 5.08 3.29 9.39 7.86 10.91.58.11.79-.25.79-.56v-2c-3.2.7-3.87-1.36-3.87-1.36-.52-1.34-1.27-1.7-1.27-1.7-1.04-.71.08-.7.08-.7 1.15.08 1.76 1.18 1.76 1.18 1.02 1.76 2.68 1.25 3.34.96.1-.74.4-1.25.72-1.54-2.56-.29-5.25-1.28-5.25-5.69 0-1.26.45-2.28 1.18-3.09-.12-.29-.51-1.46.11-3.04 0 0 .97-.31 3.18 1.18a11.1 11.1 0 0 1 5.79 0c2.2-1.49 3.18-1.18 3.18-1.18.62 1.58.23 2.75.11 3.04.74.81 1.18 1.83 1.18 3.09 0 4.42-2.69 5.4-5.25 5.69.41.36.78 1.05.78 2.12v3.14c0 .31.21.68.79.56A11.52 11.52 0 0 0 23.5 12.02C23.5 5.65 18.35.5 12 .5Z"})})}function e4({onCreateProject:e,username:a,workspaces:n,defaultWorkspaceId:i}){let{t:l,locale:c,setLocale:d}=(0,A.useI18n)(),{isOpen:u,toggleAssistant:m}=(0,eA.useAssistant)(),{resolvedTheme:h,toggleTheme:x,triggerRef:g}=function(){let{resolvedTheme:e,setTheme:t}=(0,Y.useTheme)(),s=(0,r.useRef)(null),a=(0,r.useCallback)(r=>{let s="dark"===e?"light":"dark";if("u">typeof document&&"startViewTransition"in document&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches){let e=r?.clientX??window.innerWidth/2,a=r?.clientY??0,n=Math.hypot(Math.max(e,window.innerWidth-e),Math.max(a,window.innerHeight-a));document.startViewTransition(()=>{t(s)}).ready.then(()=>{document.documentElement.animate({clipPath:[`circle(0px at ${e}px ${a}px)`,`circle(${n}px at ${e}px ${a}px)`]},{duration:400,easing:"ease-in-out",pseudoElement:"::view-transition-new(root)"})})}else t(s)},[e,t]);return{resolvedTheme:e,toggleTheme:a,triggerRef:s}}(),f=(0,s.useRouter)(),[j,w]=(0,r.useState)(!1),[N,y]=(0,r.useState)(!1),[S,T]=(0,r.useState)(!1);(0,q.useActionShortcut)("global.search",()=>w(!0));let P=J(e=>e.createProjectOpen),D=J(e=>e.importProjectOpen),I=J(e=>e.setCreateProjectOpen),O=J(e=>e.setImportProjectOpen);return(0,r.useEffect)(()=>{P&&y(!0)},[P]),(0,r.useEffect)(()=>{D&&T(!0)},[D]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("header",{className:"flex h-12 items-center justify-between border-b border-border bg-background/80 px-5 backdrop-blur-sm",children:[(0,t.jsx)("div",{className:"w-40"}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)(C.Button,{variant:"outline",onClick:()=>w(!0),className:"h-8 w-[400px] justify-start gap-2 bg-muted/50 text-muted-foreground hover:bg-muted",children:[(0,t.jsx)(Z.Search,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"flex-1 text-left",suppressHydrationWarning:!0,children:l("topbar.searchPlaceholder")}),(0,t.jsxs)("kbd",{className:"mr-1 flex items-center gap-0.5 rounded border border-border bg-background px-1.5 py-0.5 text-[10px] font-mono",children:[(0,t.jsx)(Q,{className:"h-2.5 w-2.5"}),"K"]})]}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{delay:500,render:(0,t.jsx)("button",{"data-tour":"open-assistant",onClick:m,"aria-label":l("assistant.iconLabel"),className:["cursor-pointer rounded-lg p-2 text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",u?"bg-accent text-foreground":""].join(" ")}),children:(0,t.jsx)(et.Bot,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{children:l("assistant.iconLabel")})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsxs)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{variant:"ghost",onClick:()=>d("zh"===c?"en":"zh"),className:"text-muted-foreground"}),children:[(0,t.jsx)(ee.Globe,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"text-[11px] font-semibold",children:"zh"===c?"EN":"中"})]}),(0,t.jsx)(k.TooltipContent,{children:l("settings.language")})]}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{ref:g,variant:"ghost",size:"icon",onClick:x,className:"text-muted-foreground"}),children:"dark"===h?(0,t.jsx)(er.Sun,{className:"h-4 w-4"}):(0,t.jsx)(es.Moon,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{children:l("settings.theme")})]}),(0,t.jsxs)(k.Tooltip,{children:[(0,t.jsx)(k.TooltipTrigger,{render:(0,t.jsx)(C.Button,{variant:"ghost",size:"icon",onClick:()=>window.open("https://github.com/jp-liu/tower","_blank","noopener,noreferrer"),className:"text-muted-foreground","aria-label":l("topbar.github")}),children:(0,t.jsx)(e5,{className:"h-4 w-4"})}),(0,t.jsx)(k.TooltipContent,{children:l("topbar.github")})]}),(0,t.jsx)("div",{className:"h-4 w-px bg-border"}),(0,t.jsxs)(C.Button,{variant:"outline",className:"gap-1.5 ring-1 ring-border hover:bg-accent",onClick:()=>T(!0),children:[(0,t.jsx)(p.FolderOpen,{className:"h-3.5 w-3.5"}),l("topbar.importProject")]}),(0,t.jsxs)(C.Button,{"data-tour":"create-project",className:"gap-1.5 bg-primary/10 text-primary ring-1 ring-primary/25 hover:bg-primary/20",onClick:()=>y(!0),children:[(0,t.jsx)(o.Plus,{className:"h-3.5 w-3.5"}),l("topbar.newProject")]}),(0,t.jsxs)(v.DropdownMenu,{children:[(0,t.jsx)(v.DropdownMenuTrigger,{render:(0,t.jsxs)("button",{className:"ml-0.5 flex cursor-pointer items-center gap-1.5 rounded-lg px-2.5 py-1 transition-colors hover:bg-accent",children:[a&&(0,t.jsx)("span",{className:"max-w-[80px] truncate text-xs text-muted-foreground",children:a}),(0,t.jsx)(eN,{className:"h-7 w-7 ring-1 ring-border",children:(0,t.jsx)(ey,{className:"bg-emerald-500/20 text-emerald-400 text-[10px] font-semibold",children:a?a.trim().split(/\s+/).filter(e=>e.length>0).slice(0,2).map(e=>e[0].toUpperCase()).join(""):"U"})})]})}),(0,t.jsx)(v.DropdownMenuContent,{align:"end",sideOffset:8,className:"w-40",children:(0,t.jsxs)(v.DropdownMenuItem,{onClick:()=>f.push("/settings"),children:[(0,t.jsx)(b.Settings,{className:"mr-2 h-3.5 w-3.5"}),l("settings.title")]})})]})]})]}),(0,t.jsx)(eR,{open:j,onOpenChange:w}),(0,t.jsx)(eJ,{open:N,onOpenChange:e=>{y(e),e||I(!1)},onCreateProject:e,workspaces:n,defaultWorkspaceId:i}),(0,t.jsx)(e2,{open:S,onOpenChange:e=>{T(e),e||O(!1)},onCreateProject:e,workspaces:n,defaultWorkspaceId:i})]})}var e3=e.i(83434),e8=e.i(966001),e6=e.i(964092),e7=e.i(19578),e9=e.i(232280);let te=(0,e7.default)(()=>e.A(427768).then(e=>({default:e.AssistantChat})),{loadableGenerated:{modules:[103363]},ssr:!1});function tt({mode:e}){let{isOpen:s,closeAssistant:a,sessions:n,activeSessionId:c,createNewSession:d,switchSession:u,removeSession:m,renameSession:h}=(0,eA.useAssistant)(),{t:p}=(0,A.useI18n)(),[x,g]=(0,r.useState)(null),[f,j]=(0,r.useState)(""),b=()=>{g(null),j("")},w=n.find(e=>e.id===c),N=w?.title??p("assistant.newSession");return(0,t.jsxs)("div",{className:"sidebar"===e?"min-w-[320px] max-w-[480px] w-[30vw] shrink-0 border-r border-border flex flex-col bg-sidebar overflow-hidden":"flex flex-col h-full overflow-hidden",children:[(0,t.jsxs)("div",{className:"header-sm flex items-center px-4 gap-2 bg-sidebar",children:[(0,t.jsx)(et.Bot,{className:"h-4 w-4 text-muted-foreground shrink-0"}),(0,t.jsx)("span",{className:"text-sm font-semibold text-foreground shrink-0",children:p("assistant.title")}),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"flex-1"}),(0,t.jsxs)(v.DropdownMenu,{children:[(0,t.jsxs)(v.DropdownMenuTrigger,{className:"flex items-center gap-1 h-8 px-2 rounded-md text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-foreground max-w-[120px] truncate","aria-label":p("assistant.sessionList"),children:[(0,t.jsx)("span",{className:"truncate",children:N}),(0,t.jsx)(e9.ChevronDown,{className:"h-3 w-3 shrink-0"})]}),(0,t.jsxs)(v.DropdownMenuContent,{side:"bottom",align:"end",sideOffset:4,className:"w-[280px]",children:[0===n.length?(0,t.jsx)("div",{className:"px-2 py-4 text-xs text-muted-foreground text-center",children:p("assistant.noSessions")}):(0,t.jsx)("div",{className:"max-h-[min(440px,50vh)] overflow-y-auto",children:n.map(e=>(0,t.jsxs)(v.DropdownMenuItem,{className:"flex items-center justify-between gap-1 pr-1",onClick:()=>u(e.id),children:[(0,t.jsxs)("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[(0,t.jsx)("span",{className:"text-xs truncate",children:e.title}),(0,t.jsx)("span",{className:"text-[10px] text-muted-foreground",children:function(e){let t=Math.floor((Date.now()-new Date(e).getTime())/1e3);if(t<60)return`${t}s ago`;let r=Math.floor(t/60);if(r<60)return`${r}m ago`;let s=Math.floor(r/60);if(s<24)return`${s}h ago`;let a=Math.floor(s/24);return`${a}d ago`}(e.updatedAt)})]}),(0,t.jsx)(C.Button,{variant:"ghost",className:"h-6 w-6 p-0 shrink-0 opacity-50 hover:opacity-100",onClick:t=>{var r;t.stopPropagation(),g({id:e.id,title:r=e.title}),j(r)},"aria-label":p("assistant.renameSession"),children:(0,t.jsx)(i.Pencil,{className:"h-3 w-3"})}),(0,t.jsx)(C.Button,{variant:"ghost",className:"h-6 w-6 p-0 shrink-0 opacity-50 hover:opacity-100 hover:text-destructive",onClick:t=>{t.stopPropagation(),m(e.id)},"aria-label":p("assistant.deleteSession"),children:(0,t.jsx)(l.Trash2,{className:"h-3 w-3"})})]},e.id))}),n.length>0&&(0,t.jsx)(v.DropdownMenuSeparator,{}),(0,t.jsxs)(v.DropdownMenuItem,{onClick:d,children:[(0,t.jsx)(o.Plus,{className:"h-3 w-3 mr-1"}),(0,t.jsx)("span",{className:"text-xs",children:p("assistant.newSession")})]})]})]}),(0,t.jsx)(C.Button,{variant:"ghost",size:"icon",className:"text-muted-foreground",onClick:d,"aria-label":p("assistant.newSession"),children:(0,t.jsx)(o.Plus,{className:"h-4 w-4"})})]}),(0,t.jsx)(C.Button,{variant:"ghost",size:"icon",className:"text-muted-foreground",onClick:a,"aria-label":p("assistant.closeLabel"),children:(0,t.jsx)(eP.X,{className:"h-4 w-4"})})]}),(0,t.jsx)("div",{className:"flex-1 overflow-hidden",children:s?(0,t.jsx)(te,{}):null}),(0,t.jsx)(y.Dialog,{open:null!==x,onOpenChange:e=>{e||b()},children:(0,t.jsxs)(y.DialogContent,{children:[(0,t.jsx)(y.DialogHeader,{children:(0,t.jsx)(y.DialogTitle,{children:p("assistant.renameSessionTitle")})}),(0,t.jsx)(S.Input,{autoFocus:!0,value:f,onChange:e=>j(e.target.value),placeholder:p("assistant.renameSessionPlaceholder")}),(0,t.jsxs)(y.DialogFooter,{children:[(0,t.jsx)(C.Button,{variant:"outline",onClick:b,children:p("common.cancel")}),(0,t.jsx)(C.Button,{onClick:()=>{x&&f.trim()&&(h(x.id,f),b())},disabled:!f.trim(),children:p("common.save")})]})]})})]})}var tr=e.i(125177);function ts({onDismiss:e}){let{t:s}=(0,A.useI18n)(),[a,n]=(0,r.useState)(!1);(0,r.useEffect)(()=>{"Notification"in window&&"default"===window.Notification.permission&&n(!0)},[]);let o=async()=>{"default"!==await window.Notification.requestPermission()&&(n(!1),e?.())};return a?(0,t.jsxs)("div",{className:"fixed top-3 left-1/2 -translate-x-1/2 z-[9999] w-auto max-w-lg bg-card border rounded-lg shadow-lg px-4 py-2.5 flex items-center gap-3 animate-in fade-in slide-in-from-top-4 duration-500",children:[(0,t.jsx)(tr.Bell,{className:"h-4 w-4 shrink-0 text-primary"}),(0,t.jsx)("span",{className:"flex-1 text-sm",children:s("notification.permissionPrompt")}),(0,t.jsx)(C.Button,{size:"default",onClick:o,children:s("notification.allow")}),(0,t.jsx)(C.Button,{variant:"ghost",size:"default",onClick:()=>{n(!1),e?.()},children:s("notification.dismiss")})]}):null}var ta=e.i(639709),tn=e.i(657535);let to=[{target:"create-workspace",titleKey:"tour.step1.title",descKey:"tour.step1.desc",placement:"right"},{target:"create-project",titleKey:"tour.step2.title",descKey:"tour.step2.desc",placement:"bottom",waitForTarget:!0},{target:"open-assistant",titleKey:"tour.step3.title",descKey:"tour.step3.desc",placement:"bottom"}];function ti({onComplete:e}){let{t:s}=(0,A.useI18n)(),[a,n]=(0,r.useState)(0),[o,i]=(0,r.useState)(null),[l,c]=(0,r.useState)(!1),d=(0,r.useRef)(null),u=to[a],m=(0,r.useCallback)(async()=>{await (0,tn.setConfigValue)("onboarding.tourCompleted",!0),e()},[e]),h=(0,r.useCallback)(()=>u?document.querySelector(`[data-tour="${u.target}"]`):null,[u]),p=(0,r.useCallback)(()=>{let e=h();e?(i(e.getBoundingClientRect()),c(!0)):c(!1)},[h]);(0,r.useEffect)(()=>{p();let e=null;!l&&u?.waitForTarget&&(d.current=new MutationObserver(()=>{let t=h();t&&(i(t.getBoundingClientRect()),c(!0),d.current?.disconnect(),e&&clearTimeout(e))}),d.current.observe(document.body,{childList:!0,subtree:!0}),e=setTimeout(()=>{!h()&&(n(e=>{let t=e+1;return t<to.length?t:e}),a>=to.length-1&&m())},5e3));let t=()=>p();return window.addEventListener("resize",t),window.addEventListener("scroll",t,!0),()=>{d.current?.disconnect(),e&&clearTimeout(e),window.removeEventListener("resize",t),window.removeEventListener("scroll",t,!0)}},[a,u,h,p,l,m]),(0,r.useEffect)(()=>{let e=setInterval(p,1e3);return()=>clearInterval(e)},[p]);let x=(0,r.useCallback)(()=>{a<to.length-1?(n(e=>e+1),c(!1)):m()},[a]);return u?(0,t.jsx)(t.Fragment,{children:l&&o&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"fixed inset-0 z-[10000]",style:{background:`radial-gradient(
|
|
2
2
|
ellipse at ${o.left+o.width/2}px ${o.top+o.height/2}px,
|
|
3
3
|
transparent ${Math.max(o.width,o.height)}px,
|
|
4
4
|
rgba(0,0,0,0.6) ${Math.max(o.width,o.height)+30}px
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,882651,960995,181209,e=>{"use strict";var t=e.i(59737);e.s(["CheckCircle2",()=>t.default],882651);let s=(0,e.i(572989).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["default",0,s],960995),e.s(["XCircle",0,s],181209)},236967,e=>{"use strict";var t=e.i(289721),s=e.i(210702),a=e.i(538059),r=e.i(259846),i=e.i(645378),n=e.i(453889),l=e.i(487278),o=e.i(911219),c=e.i(533499);let d=[{key:"notes",icon:i.FileText},{key:"assets",icon:n.FolderOpen},{key:"archive",icon:l.Archive},{key:"groups",icon:o.Boxes}];e.s(["SubPageNav",0,function({workspaceId:e}){let{t:i}=(0,c.useI18n)(),n=(0,a.usePathname)(),l=d.find(e=>n.includes(`/${e.key}`))?.key;return(0,t.jsxs)("div",{className:"header-sm flex items-center gap-1 px-4",children:[(0,t.jsxs)(s.default,{href:`/workspaces/${e}`,className:"mr-2 inline-flex h-8 items-center gap-1.5 rounded-md px-2 text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:[(0,t.jsx)(r.ArrowLeft,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:i("archive.backToBoard")})]}),(0,t.jsx)("span",{className:"mr-2 h-4 w-px bg-border"}),d.map(a=>{let r=a.icon,n=l===a.key;return(0,t.jsxs)(s.default,{href:`/workspaces/${e}/${a.key}`,className:`inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs font-medium transition-colors ${n?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent/50 hover:text-foreground"}`,children:[(0,t.jsx)(r,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:i(`sidebar.${a.key}`)})]},a.key)})]})}])},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)},980376,82183,e=>{"use strict";var t=e.i(289721),s=e.i(225061),a=e.i(975157),r=e.i(519455),i=e.i(670123);function n({...e}){return(0,t.jsx)(s.Dialog.Portal,{"data-slot":"sheet-portal",...e})}function l({className:e,...r}){return(0,t.jsx)(s.Dialog.Backdrop,{"data-slot":"sheet-overlay",className:(0,a.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),...r})}e.s(["Sheet",0,function({...e}){return(0,t.jsx)(s.Dialog.Root,{"data-slot":"sheet",...e})},"SheetContent",0,function({className:e,children:o,side:c="right",showCloseButton:d=!0,...x}){return(0,t.jsxs)(n,{children:[(0,t.jsx)(l,{}),(0,t.jsxs)(s.Dialog.Popup,{"data-slot":"sheet-content","data-side":c,className:(0,a.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),...x,children:[o,d&&(0,t.jsxs)(s.Dialog.Close,{"data-slot":"sheet-close",render:(0,t.jsx)(r.Button,{variant:"ghost",className:"absolute top-3 right-3",size:"icon-sm"}),children:[(0,t.jsx)(i.XIcon,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})},"SheetDescription",0,function({className:e,...r}){return(0,t.jsx)(s.Dialog.Description,{"data-slot":"sheet-description",className:(0,a.cn)("text-sm text-muted-foreground",e),...r})},"SheetHeader",0,function({className:e,...s}){return(0,t.jsx)("div",{"data-slot":"sheet-header",className:(0,a.cn)("flex flex-col gap-0.5 p-4",e),...s})},"SheetTitle",0,function({className:e,...r}){return(0,t.jsx)(s.Dialog.Title,{"data-slot":"sheet-title",className:(0,a.cn)("font-heading text-base font-medium text-foreground",e),...r})}],980376);var o=e.i(514798);let c=(0,o.createServerReference)("40ad76444bdce5a0f73e5fd0d5a73d883dcdf75708",o.callServer,void 0,o.findSourceMapURL,"getTaskOverview");e.s(["getTaskOverview",0,c],82183)},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)},605005,e=>{"use strict";var t=e.i(289721),s=e.i(965652),a=e.i(980376),r=e.i(759684),i=e.i(487486),n=e.i(519455),l=e.i(533499),o=e.i(569634),c=e.i(82183),d=e.i(334023),x=e.i(706429),m=e.i(108131),u=e.i(690027),h=e.i(415601),p=e.i(405367),g=e.i(744798),f=e.i(997025),j=e.i(235357),b=e.i(144640),v=e.i(937304),y=e.i(685149),N=e.i(606393),k=e.i(875840),w=e.i(245697),C=e.i(12659),S=e.i(736061),D=e.i(460707),T=e.i(567860),I=e.i(645378),P=e.i(867533),A=e.i(297338),$=e.i(453889);function F({added:e,removed:s}){let{t:a}=(0,l.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:a("diff.filesChanged",{count:String(e+s)})}),e>0&&(0,t.jsxs)("span",{className:"text-green-500",children:["+",e]}),s>0&&(0,t.jsxs)("span",{className:"text-red-500",children:["-",s]})]})}var O=e.i(35967),B=e.i(360112);let E=/\.(txt|md|json)$/i;function M({text:e}){let{t:a}=(0,l.useI18n)(),[r,i]=(0,s.useState)(!1),[n,o]=(0,s.useState)(!1),c=(0,s.useRef)(null);return(0,s.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 ${r?"":"line-clamp-5"}`,children:e}),n&&(0,t.jsx)("button",{type:"button",onClick:()=>i(e=>!e),className:"mt-1 text-xs font-medium text-sky-600 hover:underline dark:text-sky-400",children:a(r?"taskDrawer.collapseDescription":"taskDrawer.expandDescription")})]})}e.s(["TaskOverviewDrawer",0,function({open:e,onOpenChange:z,taskId:L,hideEnvActions:R=!1}){let{t:U}=(0,l.useI18n)(),[H,V]=(0,s.useState)(null),[_,K]=(0,s.useTransition)(),[X,q]=(0,s.useState)(!1),[G,J]=(0,s.useState)([]),[W,Y]=(0,s.useState)([]),[Q,Z]=(0,s.useState)(null),[ee,et]=(0,s.useState)([]),[es,ea]=(0,s.useState)(null);(0,s.useEffect)(()=>{if(!L||!e){V(null),Y([]),et([]);return}(0,x.getTaskNotes)(L).then(e=>Y(e.map(e=>({id:e.id,title:e.title,content:e.content,category:e.category})))).catch(()=>Y([])),(0,m.getTaskAssets)(L).then(e=>et(e.map(e=>({id:e.id,filename:e.filename,path:e.path,mimeType:e.mimeType,size:e.size})))).catch(()=>et([])),K(async()=>{let e=await (0,c.getTaskOverview)(L);e&&(V(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([])))})},[L,e]);let er=H?y.BOARD_COLUMNS.find(e=>e.id===H.status):null,ei=H?y.PRIORITY_CONFIG[H.priority]:null,en=H?.executions?.[0]??null,el=(()=>{if(en?.worktreePath)return en.worktreePath;let e=H?.project?.localPath;return e?H?.subPath?`${e}/${H.subPath}`:e:null})(),eo=(()=>{let e=en?.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,v.isImageAsset)(e.filename,e.mimeType)||E.test(e.filename),ed=e=>{ec(e)?ea(e):B.toast.info(U("assets.previewNotSupported"))},ex=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(()=>({}));B.toast.error(e.error||U("git.openInFileManagerFailed"))}}catch{B.toast.error(U("git.openInFileManagerFailed"))}},em=es?(0,v.isImageAsset)(es.filename,es.mimeType)?"image":E.test(es.filename)?"text":null:null,eu=ee.filter(e=>(0,v.isImageAsset)(e.filename,e.mimeType)).map(e=>({id:e.id,url:(0,v.localPathToApiUrl)(e.path),filename:e.filename})),eh=es?eu.findIndex(e=>e.id===es.id):-1,ep=async e=>{if(H?.project)try{let{autoStart:t,...s}=e;await (0,o.createTask)({...s,projectId:H.project.id}),B.toast.success(U("taskDrawer.duplicateSuccess")),q(!1),z(!1)}catch{B.toast.error(U("taskDrawer.duplicateFailed"))}};return(0,t.jsxs)(a.Sheet,{open:e,onOpenChange:z,children:[(0,t.jsxs)(a.SheetContent,{side:"right",className:"w-[380px] sm:max-w-[380px] p-0",children:[(0,t.jsxs)(a.SheetHeader,{className:"px-4 pt-4 pb-3 border-b border-border",children:[(0,t.jsx)(a.SheetTitle,{className:"text-base font-semibold leading-tight pr-8",children:H?.title??""}),(0,t.jsx)(a.SheetDescription,{className:"sr-only",children:U("taskDrawer.title")}),H&&(0,t.jsxs)("div",{className:"flex items-center gap-2 mt-2",children:[er&&(0,t.jsxs)(i.Badge,{variant:"secondary",className:"text-xs",children:[(0,t.jsx)("span",{className:`inline-block w-2 h-2 rounded-full mr-1.5 ${er.color}`}),er.label]}),ei&&(0,t.jsx)(i.Badge,{variant:"secondary",className:`text-xs ${ei.color}`,children:ei.label}),H.version&&(0,t.jsx)(O.TaskVersionTag,{number:H.version.number,name:H.version.name,showName:!0})]})]}),(0,t.jsx)(r.ScrollArea,{className:"flex-1 h-[calc(100%-80px)]",children:_&&!H?(0,t.jsx)("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:U("assets.loading")}):H?(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:U("taskDrawer.description")}),H.description?(0,t.jsx)(M,{text:H.description},H.id):(0,t.jsx)("p",{className:"text-sm text-foreground whitespace-pre-wrap",children:U("taskDrawer.noDescription")})]}),H.labels.length>0&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5",children:U("taskDrawer.labels")}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:H.labels.map(e=>(0,t.jsx)(i.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)(N.Calendar,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:U("taskDrawer.createdAt")}),(0,t.jsx)("span",{className:"text-foreground",children:new Date(H.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)(w.Package,{className:"h-3.5 w-3.5"}),U("taskDrawer.resources"),(0,t.jsx)("span",{className:"text-foreground",children:H._count.assets})]}),ee.length>0?(0,t.jsx)("div",{className:"space-y-1.5",children:ee.map(e=>{var s;let a=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)(A.Paperclip,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,t.jsx)("button",{type:"button",onClick:()=>ed(e),disabled:!a,className:`min-w-0 flex-1 truncate text-left text-sm ${a?"cursor-pointer hover:underline":"cursor-default"}`,title:a?U("assets.preview"):e.filename,children:e.filename}),(0,t.jsx)("span",{className:"shrink-0 text-[10px] text-muted-foreground",children:(s=e.size)?s<1024?`${s} B`:s<1048576?`${(s/1024).toFixed(1)} KB`:`${(s/1024/1024).toFixed(1)} MB`:""}),(0,t.jsxs)("div",{className:"flex items-center gap-0.5",children:[a&&(0,t.jsx)(n.Button,{variant:"ghost",size:"icon-xs",onClick:()=>ed(e),className:"shrink-0 text-muted-foreground hover:bg-accent",title:U("assets.preview"),children:(0,t.jsx)(P.Eye,{className:"h-3 w-3"})}),(0,t.jsx)(n.Button,{variant:"ghost",size:"icon-xs",onClick:()=>ex(e),className:"shrink-0 text-muted-foreground hover:bg-accent",title:U("assets.revealInFinder"),children:(0,t.jsx)($.FolderOpen,{className:"h-3 w-3"})})]})]},e.id)})}):(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:U("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)(I.FileText,{className:"h-3.5 w-3.5"}),U("taskDrawer.notes")]}),W.length>0?(0,t.jsx)("div",{className:"space-y-1.5",children:W.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:U("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:U("taskDrawer.noNotes")})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5",children:U("taskDrawer.fileChanges")}),eo?(0,t.jsx)(F,{added:eo.added,removed:eo.removed}):(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:U("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"}),U("taskDrawer.lastExecution")]}),en?(0,t.jsxs)("div",{className:"rounded-md border border-border p-2.5 text-sm",children:[(0,t.jsx)(i.Badge,{variant:"secondary",className:"text-xs mb-1.5",children:en.status}),en.summary&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-4",children:en.summary.slice(0,200)})]}):(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:U("taskDrawer.noExecution")})]}),el&&!R&&(0,t.jsxs)("section",{className:"flex flex-col",children:[(0,t.jsxs)(n.Button,{variant:"ghost",className:"w-full h-8 justify-start gap-2 px-2 text-xs text-muted-foreground",onClick:async()=>{try{await (0,u.openInFileManager)(el)}catch(e){console.error("openInFileManager failed:",e),B.toast.error(U("git.openInFileManagerFailed"))}},children:[(0,t.jsx)(S.FolderSearch,{className:"h-3.5 w-3.5 shrink-0"}),U("git.openInFileManager")]}),(0,t.jsxs)(n.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)(el)}catch(e){console.error("openInEditor failed:",e),B.toast.error(U("git.openInEditorFailed"))}},children:[(0,t.jsx)(D.Code,{className:"h-3.5 w-3.5 shrink-0"}),U("git.openInEditor")]}),(0,t.jsxs)(n.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)(el)}catch(e){console.error("openInTerminal failed:",e),B.toast.error(U("git.openInTerminalFailed"))}},children:[(0,t.jsx)(T.Terminal,{className:"h-3.5 w-3.5 shrink-0"}),U("git.openInTerminal")]})]}),(0,t.jsx)("section",{children:(0,t.jsxs)(n.Button,{variant:"default",className:"w-full",onClick:()=>{H&&q(!0)},disabled:!H,children:[(0,t.jsx)(k.Copy,{className:"h-4 w-4"}),U("taskDrawer.duplicate")]})})]}):null})]}),H?.project&&(0,t.jsx)(g.CreateTaskDialog,{open:X,onOpenChange:q,onSubmit:ep,labels:G,projectType:H.project.type,projectLocalPath:H.project.localPath,prefillFromTask:{title:H.title,description:H.description,priority:H.priority,subPath:H.subPath,labelIds:H.labels.map(e=>e.label.id),baseBranch:H.baseBranch}}),(0,t.jsx)(f.NotePreviewDialog,{note:Q,open:null!==Q,onOpenChange:e=>{e||Z(null)}}),(0,t.jsx)(j.ImageLightbox,{imageUrl:"image"===em&&eh>=0?eu[eh].url:null,filename:"image"===em&&eh>=0?eu[eh].filename:"",open:"image"===em,onOpenChange:e=>{e||ea(null)},assets:eu.map(({url:e,filename:t})=>({url:e,filename:t})),currentIndex:eh>=0?eh:void 0,onIndexChange:e=>{let t=eu[e];if(!t)return;let s=ee.find(e=>e.id===t.id);s&&ea(s)}}),(0,t.jsx)(b.TextPreviewDialog,{url:"text"===em&&es?(0,v.localPathToApiUrl)(es.path):null,filename:es?.filename??"",open:"text"===em,onOpenChange:e=>{e||ea(null)}})]})}],605005)},107830,e=>{"use strict";var t=e.i(289721),s=e.i(965652),a=e.i(487278),r=e.i(882651),i=e.i(181209),n=e.i(400355),l=e.i(738690),o=e.i(967489),c=e.i(533499),d=e.i(236967),x=e.i(514798);let m=(0,x.createServerReference)("40d46be9dfeb0450476c6e2f82c2c19e997ef9cdfc",x.callServer,void 0,x.findSourceMapURL,"getArchivedTasks");var u=e.i(605005),h=e.i(35967);function p(e){return new Date(e).toLocaleDateString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})}function g({priority:e}){return(0,t.jsx)("span",{className:`inline-block h-1.5 w-1.5 rounded-full ${{LOW:"bg-slate-400",MEDIUM:"bg-amber-400",HIGH:"bg-orange-500",CRITICAL:"bg-rose-500"}[e]??"bg-slate-400"}`})}e.s(["ArchivePageClient",0,function({allWorkspaces:e,initialWorkspaceId:x,initialProjectId:f,initialTasks:j}){let b,{t:v}=(0,c.useI18n)(),[y,N]=(0,s.useTransition)(),[k,w]=(0,s.useState)(x),[C,S]=(0,s.useState)(f),[D,T]=(0,s.useState)(j),[I,P]=(0,s.useState)(null),[A,$]=(0,s.useState)(""),F=e.find(e=>e.id===k),O=F?.projects??[],B=A.trim().toLowerCase(),E=B?D.filter(e=>e.title.toLowerCase().includes(B)):D,M=(0,s.useCallback)(e=>{e?N(async()=>{T(await m(e))}):T([])},[N]);return(0,t.jsxs)("div",{className:"flex h-full flex-col overflow-hidden",children:[(0,t.jsx)(d.SubPageNav,{workspaceId:k}),(0,t.jsxs)("div",{className:"header-sm flex items-center gap-3 px-6 py-2",children:[(0,t.jsxs)(o.Select,{value:k,onValueChange:t=>t&&(t=>{if(t===k)return;w(t);let s=e.find(e=>e.id===t),a=s?.projects[0]??null;S(a?.id??null),M(a?.id??null)})(t),children:[(0,t.jsx)(o.SelectTrigger,{className:"h-8 w-auto min-w-[120px]",children:(0,t.jsx)("span",{className:"truncate",children:F?.name??k})}),(0,t.jsx)(o.SelectContent,{children:e.map(e=>(0,t.jsx)(o.SelectItem,{value:e.id,children:e.name},e.id))})]}),O.length>0&&(0,t.jsxs)(o.Select,{value:C??"",onValueChange:e=>e&&void(e!==C&&(S(e),M(e))),children:[(0,t.jsx)(o.SelectTrigger,{className:"h-8 w-auto min-w-[140px]",children:(0,t.jsx)("span",{className:"truncate",children:(b=O.find(e=>e.id===C))?b.alias?`${b.name} (${b.alias})`:b.name:""})}),(0,t.jsx)(o.SelectContent,{children:O.map(e=>(0,t.jsxs)(o.SelectItem,{value:e.id,children:[e.name,e.alias?` (${e.alias})`:""]},e.id))})]}),(0,t.jsxs)("div",{className:"relative ml-auto",children:[(0,t.jsx)(l.Search,{className:"pointer-events-none absolute left-2.5 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-muted-foreground"}),(0,t.jsx)("input",{type:"text",value:A,onChange:e=>$(e.target.value),placeholder:v("archive.searchPlaceholder"),className:"h-8 w-48 rounded-md border border-border bg-background pl-8 pr-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring"})]}),(0,t.jsxs)("span",{className:"rounded-full bg-muted px-2.5 py-0.5 text-[11px] text-muted-foreground",children:[E.length," ",v("archive.tasksCount")]})]}),(0,t.jsx)("div",{className:"flex-1 overflow-auto px-6 py-4",children:(0,t.jsxs)("div",{className:`relative ${y?"opacity-40 pointer-events-none":""} transition-opacity`,children:[y&&(0,t.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center",children:(0,t.jsx)(n.Loader2,{className:"size-5 animate-spin text-muted-foreground"})}),0===E.length?(0,t.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 py-16 text-center",children:[(0,t.jsx)(a.Archive,{className:"h-10 w-10 text-muted-foreground/30"}),(0,t.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:B?v("archive.noSearchResults"):v("archive.noTasks")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground/60",children:B?v("archive.noSearchResultsDesc"):v("archive.noTasksDesc")})]}):(0,t.jsx)("div",{className:"space-y-2",children:E.map(e=>{let s="DONE"===e.status,a=e.executions[0];return(0,t.jsx)("div",{role:"button",tabIndex:0,onClick:()=>P(e.id),onKeyDown:t=>{("Enter"===t.key||" "===t.key)&&(t.preventDefault(),P(e.id))},className:"group cursor-pointer rounded-lg border border-border bg-card px-4 py-3 transition-colors hover:border-border/80 hover:bg-accent/30 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background",children:(0,t.jsxs)("div",{className:"flex items-start gap-3",children:[(0,t.jsx)("div",{className:"mt-0.5 shrink-0",children:s?(0,t.jsx)(r.CheckCircle2,{className:"h-4 w-4 text-emerald-500"}):(0,t.jsx)(i.XCircle,{className:"h-4 w-4 text-rose-500"})}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(g,{priority:e.priority}),(0,t.jsx)("span",{className:"truncate text-sm font-medium text-foreground",children:e.title}),(0,t.jsx)("span",{className:`ml-1 shrink-0 rounded-full px-2 py-0.5 text-[10px] font-medium ${s?"bg-emerald-500/10 text-emerald-400 ring-1 ring-emerald-500/20":"bg-rose-500/10 text-rose-400 ring-1 ring-rose-500/20"}`,children:s?v("archive.status.done"):v("archive.status.cancelled")}),e.version&&(0,t.jsx)(h.TaskVersionTag,{number:e.version.number,name:e.version.name,showName:!0,className:"shrink-0"})]}),e.labels.length>0&&(0,t.jsx)("div",{className:"mt-1.5 flex flex-wrap gap-1",children:e.labels.map(e=>(0,t.jsx)("span",{className:"rounded-full px-1.5 py-0.5 text-[10px] font-medium",style:{backgroundColor:`${e.label.color}20`,color:e.label.color,outline:`1px solid ${e.label.color}40`},children:e.label.name},e.label.id))}),(0,t.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-3 text-[11px] text-muted-foreground",children:[(0,t.jsxs)("span",{children:[v("archive.createdAt"),": ",p(e.createdAt)]}),(0,t.jsxs)("span",{children:[s?v("archive.completedAt"):v("archive.cancelledAt"),": ",p(e.updatedAt)]}),a&&(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[v("archive.lastExecution"),":"," ",(0,t.jsx)("span",{className:`rounded px-1 py-0.5 font-mono text-[10px] ${"COMPLETED"===a.status?"bg-emerald-500/10 text-emerald-400":"FAILED"===a.status?"bg-rose-500/10 text-rose-400":"bg-amber-500/10 text-amber-400"}`,children:a.status})]})]})]})]})},e.id)})})]})}),(0,t.jsx)(u.TaskOverviewDrawer,{open:!!I,onOpenChange:e=>{e||P(null)},taskId:I,hideEnvActions:!0})]})}],107830)},244455,e=>{e.v(t=>Promise.all(["static/chunks/075e-zs_kgc_g.js"].map(t=>e.l(t))).then(()=>t(629495)))},800307,e=>{e.v(t=>Promise.all(["static/chunks/0zm4fvu.lntrp.js"].map(t=>e.l(t))).then(()=>t(267483)))}]);
|