tower-studio 0.2.20 → 0.2.22

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.
Files changed (208) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +3 -3
  3. package/.next/standalone/.next/prerender-manifest.json +3 -3
  4. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  5. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  6. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  7. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/.next/standalone/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -1
  12. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +25 -25
  13. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  14. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/.next/server/app/api/adapters/test/route.js.nft.json +1 -1
  16. package/.next/standalone/.next/server/app/api/browse-fs/route.js.nft.json +1 -1
  17. package/.next/standalone/.next/server/app/api/files/assets/[projectId]/[filename]/route.js.nft.json +1 -1
  18. package/.next/standalone/.next/server/app/api/git/route.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/api/internal/assets/[projectId]/[filename]/route.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/api/internal/assets/reveal/route.js.nft.json +1 -1
  21. package/.next/standalone/.next/server/app/api/internal/assistant/attachments/route.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/api/internal/assistant/chat/route.js +3 -2
  23. package/.next/standalone/.next/server/app/api/internal/assistant/chat/route.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/api/internal/assistant/sessions/route.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/api/internal/backup/import/route.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/api/internal/cache/[...segments]/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/internal/hooks/upload/route.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/api/internal/monaco/[...path]/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/start/route.js.nft.json +1 -1
  30. package/.next/standalone/.next/server/app/api/tasks/[taskId]/diff/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/api/tasks/[taskId]/merge/route.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/missions/page/react-loadable-manifest.json +1 -1
  33. package/.next/standalone/.next/server/app/missions/page/server-reference-manifest.json +63 -63
  34. package/.next/standalone/.next/server/app/missions/page.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/missions/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/onboarding/page/react-loadable-manifest.json +1 -1
  37. package/.next/standalone/.next/server/app/onboarding/page/server-reference-manifest.json +25 -25
  38. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  39. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  40. package/.next/standalone/.next/server/app/page/react-loadable-manifest.json +1 -1
  41. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +25 -25
  42. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/settings/page/react-loadable-manifest.json +1 -1
  45. package/.next/standalone/.next/server/app/settings/page/server-reference-manifest.json +106 -82
  46. package/.next/standalone/.next/server/app/settings/page.js +2 -2
  47. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  48. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page/react-loadable-manifest.json +1 -1
  50. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page/server-reference-manifest.json +84 -84
  51. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page.js.nft.json +1 -1
  52. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page/react-loadable-manifest.json +1 -1
  54. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page/server-reference-manifest.json +78 -78
  55. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page.js.nft.json +1 -1
  56. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page_client-reference-manifest.js +1 -1
  57. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page/react-loadable-manifest.json +1 -1
  58. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page/server-reference-manifest.json +57 -57
  59. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page.js.nft.json +1 -1
  60. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page_client-reference-manifest.js +1 -1
  61. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page/react-loadable-manifest.json +1 -1
  62. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page/server-reference-manifest.json +59 -59
  63. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page.js.nft.json +1 -1
  64. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/react-loadable-manifest.json +1 -1
  66. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/server-reference-manifest.json +25 -25
  67. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js.nft.json +1 -1
  68. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page/react-loadable-manifest.json +1 -1
  70. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page/server-reference-manifest.json +64 -64
  71. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page.js.nft.json +1 -1
  72. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/react-loadable-manifest.json +2 -2
  74. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/server-reference-manifest.json +72 -72
  75. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js.nft.json +1 -1
  76. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/workspaces/page/react-loadable-manifest.json +1 -1
  78. package/.next/standalone/.next/server/app/workspaces/page/server-reference-manifest.json +43 -43
  79. package/.next/standalone/.next/server/app/workspaces/page.js.nft.json +1 -1
  80. package/.next/standalone/.next/server/app/workspaces/page_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/chunks/0se9_next_dist_esm_build_templates_app-route_0eh8dj_.js +12 -0
  82. package/.next/standalone/.next/server/chunks/0se9_next_dist_esm_build_templates_app-route_0hrprmi.js +1 -1
  83. package/.next/standalone/.next/server/chunks/[root-of-the-server]__03j20vp._.js +1 -1
  84. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05se6yk._.js +2 -2
  85. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05~g1fm._.js +1 -1
  86. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06m1r8x._.js +2 -2
  87. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_6swdz._.js +1 -1
  88. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0hc9vir._.js +1 -1
  89. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iyp~.k._.js +10 -2
  90. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o3iihg._.js +3 -0
  91. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ogh_qu._.js +10 -2
  92. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0otyifi._.js +1 -1
  93. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q.piu~._.js +10 -2
  94. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qdvear._.js +1 -1
  95. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0umocfj._.js +1 -1
  96. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wuzc5o._.js +1 -1
  97. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xot7fu._.js +1 -1
  98. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0z-k6vg._.js +1 -1
  99. package/.next/standalone/.next/server/chunks/src_0bkvm8c._.js +1 -1
  100. package/.next/standalone/.next/server/chunks/src_lib_ai_0xx6y51._.js +1 -1
  101. package/.next/standalone/.next/server/chunks/ssr/0iu._[workspaceId]_projects_[projectId]_versions_version-timeline-client_tsx_07o_kyi._.js +1 -1
  102. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__02-6df-._.js +3 -3
  103. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0th0_fo._.js → [root-of-the-server]__03e009u._.js} +4 -4
  104. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0e_-mj-._.js +3 -3
  105. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0fzkdjl._.js +3 -3
  106. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0f72pl_._.js → [root-of-the-server]__0i~v.f0._.js} +2 -2
  107. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0jymb~t._.js +1 -1
  108. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0l1.bgv._.js +3 -0
  109. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0pu-v0l._.js +3 -3
  110. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ty1ao1._.js +1 -1
  111. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0um1ugs._.js +3 -3
  112. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0.hrt0s._.js → [root-of-the-server]__0vrp4wc._.js} +1 -1
  113. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__08mkpqd._.js → [root-of-the-server]__0x2jop0._.js} +2 -2
  114. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0z7je5_._.js +1 -1
  115. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__134_xv.._.js +1 -1
  116. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__13vgkq5._.js +3 -3
  117. package/.next/standalone/.next/server/chunks/ssr/{_0es22_y._.js → _00xgezz._.js} +2 -2
  118. package/.next/standalone/.next/server/chunks/ssr/{_0z-mopi._.js → _01xe7~b._.js} +2 -2
  119. package/.next/standalone/.next/server/chunks/ssr/{_12e_1hd._.js → _02o-w3k._.js} +2 -2
  120. package/.next/standalone/.next/server/chunks/ssr/_0564air._.js +4 -0
  121. package/.next/standalone/.next/server/chunks/ssr/{_0rqf5w7._.js → _05xdaz3._.js} +1 -1
  122. package/.next/standalone/.next/server/chunks/ssr/_060_9cj._.js +3 -0
  123. package/.next/standalone/.next/server/chunks/ssr/{_0unw1fq._.js → _070t_mh._.js} +3 -3
  124. package/.next/standalone/.next/server/chunks/ssr/{_0-zk1xq._.js → _075_.cb._.js} +2 -2
  125. package/.next/standalone/.next/server/chunks/ssr/{_0_2c7e0._.js → _07ca~8h._.js} +2 -2
  126. package/.next/standalone/.next/server/chunks/ssr/{_10sx3n7._.js → _084ifnn._.js} +3 -3
  127. package/.next/standalone/.next/server/chunks/ssr/_08z-g~5._.js +3 -3
  128. package/.next/standalone/.next/server/chunks/ssr/_0_vjay8._.js +3 -3
  129. package/.next/standalone/.next/server/chunks/ssr/_0cj9a7y._.js +1 -1
  130. package/.next/standalone/.next/server/chunks/ssr/_0jg.s-g._.js +1 -1
  131. package/.next/standalone/.next/server/chunks/ssr/_0ncltnn._.js +3 -0
  132. package/.next/standalone/.next/server/chunks/ssr/{_0ln8vj0._.js → _0qq3k6g._.js} +3 -3
  133. package/.next/standalone/.next/server/chunks/ssr/_0r6gweb._.js +3 -3
  134. package/.next/standalone/.next/server/chunks/ssr/_0rdyrfd._.js +1 -1
  135. package/.next/standalone/.next/server/chunks/ssr/_0rt8jf_._.js +3 -3
  136. package/.next/standalone/.next/server/chunks/ssr/_0ueyys5._.js +1 -1
  137. package/.next/standalone/.next/server/chunks/ssr/_0uuzh5m._.js +3 -3
  138. package/.next/standalone/.next/server/chunks/ssr/{_0nzwk2y._.js → _0z58pqh._.js} +3 -3
  139. package/.next/standalone/.next/server/chunks/ssr/{_0mqxe~e._.js → _0zbuayb._.js} +2 -2
  140. package/.next/standalone/.next/server/chunks/ssr/_0~aon4t._.js +3 -3
  141. package/.next/standalone/.next/server/chunks/ssr/{_07~q7qs._.js → _13dksil._.js} +2 -2
  142. package/.next/standalone/.next/server/chunks/ssr/src_075s.rk._.js +1 -1
  143. package/.next/standalone/.next/server/chunks/ssr/src_0djxlqx._.js +1 -1
  144. package/.next/standalone/.next/server/chunks/ssr/src_0eufeyj._.js +1 -1
  145. package/.next/standalone/.next/server/chunks/ssr/src_actions_agent-actions_ts_0~wc.sy._.js +1 -1
  146. package/.next/standalone/.next/server/chunks/ssr/src_actions_file-actions_ts_0gcvqwm._.js +1 -1
  147. package/.next/standalone/.next/server/chunks/ssr/src_app_missions_missions-client_tsx_11429lj._.js +1 -1
  148. package/.next/standalone/.next/server/chunks/ssr/src_app_onboarding_page_tsx_0xf7hpz._.js +1 -1
  149. package/.next/standalone/.next/server/chunks/ssr/src_app_settings_page_tsx_0h9v7dr._.js +1 -1
  150. package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_assets_assets-page-client_tsx_0wyzpam._.js +1 -1
  151. package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_board-page-client_tsx_0gips66._.js +1 -1
  152. package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_tasks_[taskId]_task-page-client_tsx_02t7blt._.js +1 -1
  153. package/.next/standalone/.next/server/chunks/ssr/{src_lib_0153vha._.js → src_lib_0.aklj3._.js} +1 -1
  154. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  155. package/.next/standalone/.next/server/pages/500.html +1 -1
  156. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  157. package/.next/standalone/.next/server/server-reference-manifest.json +302 -278
  158. package/.next/standalone/.next/static/chunks/{08q54xdtb58sp.js → 0.onfoo7t4w-m.js} +1 -1
  159. package/.next/standalone/.next/static/chunks/0132~w09sg8ej.js +1 -0
  160. package/.next/standalone/.next/static/chunks/015m584n.xxu~.js +1 -0
  161. package/.next/standalone/.next/static/chunks/{1157qwl1lq-uv.js → 01fk6.8bw14.7.js} +1 -1
  162. package/.next/standalone/.next/static/chunks/{0wzn4nbo56gf3.js → 01vvdks5yzk7x.js} +1 -1
  163. package/.next/standalone/.next/static/chunks/{15nh9t21_9u6i.js → 030g1-s.qdj2n.js} +1 -1
  164. package/.next/standalone/.next/static/chunks/{0bxz4rml4iaob.js → 07ucj-4sybtq9.js} +1 -1
  165. package/.next/standalone/.next/static/chunks/{0m90vde-l0h1a.js → 08vuh22p.47~b.js} +2 -2
  166. package/.next/standalone/.next/static/chunks/0_t-j983f5f0p.js +1 -0
  167. package/.next/standalone/.next/static/chunks/{0yje2relcvr6r.js → 0cn44krrztr-n.js} +1 -1
  168. package/.next/standalone/.next/static/chunks/{163o-5kdc6me5.js → 0feyhaj64gfd~.js} +1 -1
  169. package/.next/standalone/.next/static/chunks/0hf2igz3z1v.5.js +1 -0
  170. package/.next/standalone/.next/static/chunks/0htnxzje.8d3f.js +5 -0
  171. package/.next/standalone/.next/static/chunks/0lq9lfznfhl-6.js +1 -0
  172. package/.next/standalone/.next/static/chunks/0plqjpgas0ygu.js +1 -0
  173. package/.next/standalone/.next/static/chunks/0t92fwd6kv5j_.js +5 -0
  174. package/.next/standalone/.next/static/chunks/0tfc~d_oxesgk.js +5 -0
  175. package/.next/standalone/.next/static/chunks/{0mqdumoz_frlg.js → 0w1jry5z5w5~5.js} +1 -1
  176. package/.next/standalone/.next/static/chunks/0x3tiuoe.l18z.js +1 -0
  177. package/.next/standalone/.next/static/chunks/{11~-fm76bj3r4.js → 0y8ywrftfsnux.js} +1 -1
  178. package/.next/standalone/.next/static/chunks/11jg-t_iw_8i6.js +1 -0
  179. package/.next/standalone/.next/static/chunks/{0-93a_ovah-e0.js → 11x05y67gti4v.js} +1 -1
  180. package/.next/standalone/.next/static/chunks/11yv2zlsl_i7z.js +1 -0
  181. package/.next/standalone/.next/static/chunks/{0odb2p6e7-8n8.js → 13z_8s26xa~p1.js} +1 -1
  182. package/.next/standalone/.next/static/chunks/{0m2o51rtidmxh.js → 15.pdp8xgoni1.js} +1 -1
  183. package/.next/standalone/.next/static/chunks/15vogvewouq8e.js +1 -0
  184. package/.next/standalone/package.json +1 -1
  185. package/dist/mcp-server.cjs +19 -5
  186. package/package.json +1 -1
  187. package/skills/tower/SKILL.md +9 -0
  188. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o3ggen._.js +0 -12
  189. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ntdmyn._.js +0 -3
  190. package/.next/standalone/.next/server/chunks/ssr/_09b8zgw._.js +0 -4
  191. package/.next/standalone/.next/server/chunks/ssr/_0fhds8v._.js +0 -3
  192. package/.next/standalone/.next/server/chunks/ssr/_0tua.9p._.js +0 -3
  193. package/.next/standalone/.next/static/chunks/0.rw..0v.8a1-.js +0 -5
  194. package/.next/standalone/.next/static/chunks/08rokhw7bg_zn.js +0 -1
  195. package/.next/standalone/.next/static/chunks/0gh2r0ji~m34y.js +0 -1
  196. package/.next/standalone/.next/static/chunks/0j157xr-bax~d.js +0 -1
  197. package/.next/standalone/.next/static/chunks/0t0.k0pugrmxt.js +0 -1
  198. package/.next/standalone/.next/static/chunks/0vykez3mijj6f.js +0 -1
  199. package/.next/standalone/.next/static/chunks/0xrhj92idqx72.js +0 -5
  200. package/.next/standalone/.next/static/chunks/0yj4qfp~pk5na.js +0 -1
  201. package/.next/standalone/.next/static/chunks/0zk-aoc.g8t8h.js +0 -1
  202. package/.next/standalone/.next/static/chunks/0~7zlta-boej_.js +0 -1
  203. package/.next/standalone/.next/static/chunks/13wlh1lxhudv~.js +0 -1
  204. package/.next/standalone/.next/static/chunks/16pnb9m-vqs75.js +0 -5
  205. package/.next/standalone/.next/static/chunks/18aqm8uawnpl3.js +0 -1
  206. /package/.next/standalone/.next/static/{QK0JGDY3UZSvD1SQgyL-w → hA1HHDvQi_vSYi568JXho}/_buildManifest.js +0 -0
  207. /package/.next/standalone/.next/static/{QK0JGDY3UZSvD1SQgyL-w → hA1HHDvQi_vSYi568JXho}/_clientMiddlewareManifest.js +0 -0
  208. /package/.next/standalone/.next/static/{QK0JGDY3UZSvD1SQgyL-w → hA1HHDvQi_vSYi568JXho}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,254826,309735,e=>{"use strict";var t=e.i(990216);e.s([],254826),e.s(["Streamdown",()=>t.C],309735)},236967,e=>{"use strict";var t=e.i(289721),a=e.i(210702),s=e.i(538059),r=e.i(259846),l=e.i(645378),n=e.i(453889),i=e.i(487278),o=e.i(533499);let c=[{key:"notes",icon:l.FileText},{key:"assets",icon:n.FolderOpen},{key:"archive",icon:i.Archive}];e.s(["SubPageNav",0,function({workspaceId:e}){let{t:l}=(0,o.useI18n)(),n=(0,s.usePathname)(),i=c.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)(a.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:l("archive.backToBoard")})]}),(0,t.jsx)("span",{className:"mr-2 h-4 w-px bg-border"}),c.map(s=>{let r=s.icon,n=i===s.key;return(0,t.jsxs)(a.default,{href:`/workspaces/${e}/${s.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:l(`sidebar.${s.key}`)})]},s.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)},259846,e=>{"use strict";let t=(0,e.i(572989).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],259846)},685149,e=>{"use strict";e.s(["BOARD_COLUMNS",0,[{id:"TODO",label:"To Do",color:"bg-slate-400"},{id:"IN_PROGRESS",label:"In Progress",color:"bg-amber-400"},{id:"IN_REVIEW",label:"In Review",color:"bg-sky-400"},{id:"DONE",label:"Done",color:"bg-emerald-400"},{id:"CANCELLED",label:"Cancelled",color:"bg-rose-400"}],"NOTE_CATEGORIES_PRESET",0,["账号","环境","需求","备忘"],"PRIORITY_CONFIG",0,{LOW:{label:"低",color:"bg-slate-500/20 text-slate-300 border border-slate-500/30"},MEDIUM:{label:"中",color:"bg-amber-500/20 text-amber-300 border border-amber-500/30"},HIGH:{label:"高",color:"bg-orange-500/20 text-orange-300 border border-orange-500/30"},CRITICAL:{label:"紧急",color:"bg-rose-500/20 text-rose-300 border border-rose-500/30"}},"TOWER_LABEL_NAME",0,"Tower"])},567860,e=>{"use strict";let t=(0,e.i(572989).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",0,t],567860)},786508,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("403d1df8a142d93b5320c6f253ba669b1176f03d16",t.callServer,void 0,t.findSourceMapURL,"openInTerminal");e.s(["openInTerminal",0,a])},453930,977998,12659,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("4010962b6e3809e9ec6adcc5e4727e5afa521b684c",t.callServer,void 0,t.findSourceMapURL,"openInFileManager");e.s(["openInFileManager",0,a],453930);let s=(0,t.createServerReference)("40ffbf43f53a51dbec34e07f44c777d2eac35a0385",t.callServer,void 0,t.findSourceMapURL,"openInEditor");e.s(["openInEditor",0,s],977998);let r=(0,e.i(572989).default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["PlayCircle",0,r],12659)},736061,460707,e=>{"use strict";var t=e.i(572989);let a=(0,t.default)("folder-search",[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]]);e.s(["FolderSearch",0,a],736061);let s=(0,t.default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);e.s(["Code",0,s],460707)},35967,e=>{"use strict";var t=e.i(289721);let a=(0,e.i(572989).default)("milestone",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M12 3v3",key:"1n5kay"}],["path",{d:"M18.172 6a2 2 0 0 1 1.414.586l2.06 2.06a1.207 1.207 0 0 1 0 1.708l-2.06 2.06a2 2 0 0 1-1.414.586H4a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1z",key:"8gz4t4"}]]);var s=e.i(533499);let r=["bg-sky-500/20 text-sky-300 border border-sky-500/30","bg-amber-500/20 text-amber-300 border border-amber-500/30","bg-violet-500/20 text-violet-300 border border-violet-500/30","bg-emerald-500/20 text-emerald-300 border border-emerald-500/30","bg-rose-500/20 text-rose-300 border border-rose-500/30","bg-cyan-500/20 text-cyan-300 border border-cyan-500/30","bg-indigo-500/20 text-indigo-300 border border-indigo-500/30"];function l(e){return r[function(e){let t=0;for(let a=0;a<e.length;a++)t=31*t+e.charCodeAt(a)>>>0;return t}(e)%r.length]}let n={PLANNED:"bg-slate-500/20 text-slate-300 border border-slate-500/30",ACTIVE:"bg-emerald-500/20 text-emerald-300 border border-emerald-500/30",RELEASED:"bg-zinc-500/20 text-zinc-400 border border-zinc-500/30"};e.s(["TaskVersionTag",0,function({number:e,name:s,showName:r=!1,className:l="",title:n}){return(0,t.jsxs)("span",{className:`inline-flex items-center gap-1 rounded-md border border-border bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground ${l}`,title:n??(s?`${e} \xb7 ${s}`:e),children:[(0,t.jsx)(a,{className:"h-2.5 w-2.5 shrink-0"}),(0,t.jsx)("span",{className:"font-mono",children:e}),r&&s?(0,t.jsx)("span",{className:"max-w-[140px] truncate",children:s}):null]})},"VersionStatusBadge",0,function({status:e}){let{t:a}=(0,s.useI18n)();return(0,t.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${n[e]}`,children:a(`version.status.${e}`)})},"VersionTypeBadge",0,function({name:e}){let{t:a}=(0,s.useI18n)();return e?(0,t.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${l(e)}`,children:e}):(0,t.jsx)("span",{className:"inline-flex items-center rounded-full border border-border bg-muted/40 px-2 py-0.5 text-xs font-medium text-muted-foreground",children:a("version.type.uncategorized")})},"typeBadgeColor",0,l],35967)},980376,822305,e=>{"use strict";var t=e.i(289721),a=e.i(225061),s=e.i(975157),r=e.i(519455),l=e.i(670123);function n({...e}){return(0,t.jsx)(a.Dialog.Portal,{"data-slot":"sheet-portal",...e})}function i({className:e,...r}){return(0,t.jsx)(a.Dialog.Backdrop,{"data-slot":"sheet-overlay",className:(0,s.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)(a.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)(i,{}),(0,t.jsxs)(a.Dialog.Popup,{"data-slot":"sheet-content","data-side":c,className:(0,s.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)(a.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)(l.XIcon,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})},"SheetDescription",0,function({className:e,...r}){return(0,t.jsx)(a.Dialog.Description,{"data-slot":"sheet-description",className:(0,s.cn)("text-sm text-muted-foreground",e),...r})},"SheetHeader",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"sheet-header",className:(0,s.cn)("flex flex-col gap-0.5 p-4",e),...a})},"SheetTitle",0,function({className:e,...r}){return(0,t.jsx)(a.Dialog.Title,{"data-slot":"sheet-title",className:(0,s.cn)("font-heading text-base font-medium text-foreground",e),...r})}],980376);var o=e.i(514798);let c=(0,o.createServerReference)("405fce19efb2cf0b35a9d14b1a7c8a55c28ea204f4",o.callServer,void 0,o.findSourceMapURL,"getTaskOverview");e.s(["getTaskOverview",0,c],822305)},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),a=e.i(965652),s=e.i(980376),r=e.i(759684),l=e.i(487486),n=e.i(519455),i=e.i(533499),o=e.i(938123),c=e.i(822305),d=e.i(74908),x=e.i(453930),u=e.i(977998),m=e.i(786508),h=e.i(744798),p=e.i(685149),f=e.i(606393),g=e.i(875840),b=e.i(245697),j=e.i(12659),v=e.i(736061),y=e.i(460707),k=e.i(567860);function w({added:e,removed:a}){let{t:s}=(0,i.useI18n)();return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-gray-500",children:[(0,t.jsx)("span",{children:s("diff.filesChanged",{count:String(e+a)})}),e>0&&(0,t.jsxs)("span",{className:"text-green-500",children:["+",e]}),a>0&&(0,t.jsxs)("span",{className:"text-red-500",children:["-",a]})]})}var N=e.i(35967),C=e.i(360112);e.s(["TaskOverviewDrawer",0,function({open:e,onOpenChange:S,taskId:I}){let{t:T}=(0,i.useI18n)(),[P,D]=(0,a.useState)(null),[E,M]=(0,a.useTransition)(),[$,A]=(0,a.useState)(!1),[R,L]=(0,a.useState)([]);(0,a.useEffect)(()=>{I&&e?M(async()=>{let e=await (0,c.getTaskOverview)(I);e&&(D(e),e.project?.workspaceId&&(0,d.getLabelsForWorkspace)(e.project.workspaceId).then(e=>{L(e.map(e=>({id:e.id,name:e.name,color:e.color,isBuiltin:e.isBuiltin})))}).catch(()=>L([])))}):D(null)},[I,e]);let O=P?p.BOARD_COLUMNS.find(e=>e.id===P.status):null,B=P?p.PRIORITY_CONFIG[P.priority]:null,F=P?.executions?.[0]??null,z=(()=>{if(F?.worktreePath)return F.worktreePath;let e=P?.project?.localPath;return e?P?.subPath?`${e}/${P.subPath}`:e:null})(),U=(()=>{let e=F?.gitStats;if(!e)return null;try{let t=JSON.parse(e);return{added:t.insertions??0,removed:t.deletions??0}}catch{return null}})(),_=async e=>{if(P?.project)try{let{autoStart:t,...a}=e;await (0,o.createTask)({...a,projectId:P.project.id}),C.toast.success(T("taskDrawer.duplicateSuccess")),A(!1),S(!1)}catch{C.toast.error(T("taskDrawer.duplicateFailed"))}};return(0,t.jsxs)(s.Sheet,{open:e,onOpenChange:S,children:[(0,t.jsxs)(s.SheetContent,{side:"right",className:"w-[380px] sm:max-w-[380px] p-0",children:[(0,t.jsxs)(s.SheetHeader,{className:"px-4 pt-4 pb-3 border-b border-border",children:[(0,t.jsx)(s.SheetTitle,{className:"text-base font-semibold leading-tight pr-8",children:P?.title??""}),(0,t.jsx)(s.SheetDescription,{className:"sr-only",children:T("taskDrawer.title")}),P&&(0,t.jsxs)("div",{className:"flex items-center gap-2 mt-2",children:[O&&(0,t.jsxs)(l.Badge,{variant:"secondary",className:"text-xs",children:[(0,t.jsx)("span",{className:`inline-block w-2 h-2 rounded-full mr-1.5 ${O.color}`}),O.label]}),B&&(0,t.jsx)(l.Badge,{variant:"secondary",className:`text-xs ${B.color}`,children:B.label}),P.version&&(0,t.jsx)(N.TaskVersionTag,{number:P.version.number,name:P.version.name,showName:!0})]})]}),(0,t.jsx)(r.ScrollArea,{className:"flex-1 h-[calc(100%-80px)]",children:E&&!P?(0,t.jsx)("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:T("assets.loading")}):P?(0,t.jsxs)("div",{className:"p-4 space-y-4",children:[(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1",children:T("taskDrawer.description")}),(0,t.jsx)("p",{className:"text-sm text-foreground whitespace-pre-wrap",children:P.description||T("taskDrawer.noDescription")})]}),P.labels.length>0&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5",children:T("taskDrawer.labels")}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:P.labels.map(e=>(0,t.jsx)(l.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)(f.Calendar,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:T("taskDrawer.createdAt")}),(0,t.jsx)("span",{className:"text-foreground",children:new Date(P.createdAt).toLocaleDateString()})]}),(0,t.jsxs)("section",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(b.Package,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:T("taskDrawer.resources")}),(0,t.jsx)("span",{className:"text-foreground",children:P._count.assets})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5",children:T("taskDrawer.fileChanges")}),U?(0,t.jsx)(w,{added:U.added,removed:U.removed}):(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:T("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)(j.PlayCircle,{className:"h-3.5 w-3.5"}),T("taskDrawer.lastExecution")]}),F?(0,t.jsxs)("div",{className:"rounded-md border border-border p-2.5 text-sm",children:[(0,t.jsx)(l.Badge,{variant:"secondary",className:"text-xs mb-1.5",children:F.status}),F.summary&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-4",children:F.summary.slice(0,200)})]}):(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:T("taskDrawer.noExecution")})]}),z&&(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,x.openInFileManager)(z)}catch(e){console.error("openInFileManager failed:",e),C.toast.error(T("git.openInFileManagerFailed"))}},children:[(0,t.jsx)(v.FolderSearch,{className:"h-3.5 w-3.5 shrink-0"}),T("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,u.openInEditor)(z)}catch(e){console.error("openInEditor failed:",e),C.toast.error(T("git.openInEditorFailed"))}},children:[(0,t.jsx)(y.Code,{className:"h-3.5 w-3.5 shrink-0"}),T("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,m.openInTerminal)(z)}catch(e){console.error("openInTerminal failed:",e),C.toast.error(T("git.openInTerminalFailed"))}},children:[(0,t.jsx)(k.Terminal,{className:"h-3.5 w-3.5 shrink-0"}),T("git.openInTerminal")]})]}),(0,t.jsx)("section",{children:(0,t.jsxs)(n.Button,{variant:"default",className:"w-full",onClick:()=>{P&&A(!0)},disabled:!P,children:[(0,t.jsx)(g.Copy,{className:"h-4 w-4"}),T("taskDrawer.duplicate")]})})]}):null})]}),P?.project&&(0,t.jsx)(h.CreateTaskDialog,{open:$,onOpenChange:A,onSubmit:_,labels:R,projectType:P.project.type,projectLocalPath:P.project.localPath,prefillFromTask:{title:P.title,description:P.description,priority:P.priority,subPath:P.subPath,labelIds:P.labels.map(e=>e.label.id),baseBranch:P.baseBranch}})]})}],605005)},368490,e=>{"use strict";var t=e.i(776405);e.s(["ChevronRight",()=>t.default])},922541,e=>{"use strict";let t=(0,e.i(572989).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);e.s(["RotateCcw",0,t],922541)},912505,e=>{"use strict";var t=e.i(289721),a=e.i(975157);e.s(["EmptyState",0,function({icon:e,title:s,description:r,action:l,className:n}){return(0,t.jsxs)("div",{className:(0,a.cn)("flex h-48 flex-col items-center justify-center gap-2 text-center",n),children:[e&&(0,t.jsx)(e,{className:"h-10 w-10 text-muted-foreground/40"}),(0,t.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:s}),r&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground/60",children:r}),l&&(0,t.jsx)("div",{className:"mt-2",children:l})]})}])},867533,e=>{"use strict";let t=(0,e.i(572989).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);e.s(["Eye",0,t],867533)},631675,e=>{"use strict";let t=(0,e.i(572989).default)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);e.s(["Upload",0,t],631675)},19671,e=>{"use strict";let t=(0,e.i(572989).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);e.s(["ChevronLeft",0,t],19671)},956618,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("4030e0a6ba413da21e5c3cccc4c2b0f1b66b5cf3c1",t.callServer,void 0,t.findSourceMapURL,"deleteAsset");e.s(["deleteAsset",0,a])},937304,e=>{"use strict";let t=new Set(["png","jpg","jpeg","gif","webp","svg","bmp","ico","avif","apng"]);e.s(["isImageAsset",0,function(e,a){if(a?.startsWith("image/"))return!0;let s=e.split(".").pop()?.toLowerCase();return!!s&&t.has(s)},"localPathToApiUrl",0,function(e){let t=e.match(/(?:^|\/)(?:storage|data)\/assets\/([^/]+)\/([^/]+)$/);return t?`/api/files/assets/${t[1]}/${t[2]}`:e}])},292905,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("40148a3c61c20a929892408577354f07dd4d0f0c23",t.callServer,void 0,t.findSourceMapURL,"uploadAsset");e.s(["uploadAsset",0,a])},235357,144640,e=>{"use strict";var t=e.i(289721),a=e.i(965652),s=e.i(585012),r=e.i(657153),l=e.i(19671),n=e.i(368490),i=e.i(902539);let o=(0,e.i(572989).default)("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]);var c=e.i(922541),d=e.i(533499);function x({children:e,onClick:a,title:s,disabled:r,...l}){return(0,t.jsx)("button",{type:"button",onClick:e=>{e.stopPropagation(),r||a()},title:s,disabled:r,className:"inline-flex h-8 w-8 items-center justify-center rounded-md text-white/80 hover:bg-white/15 hover:text-white disabled:opacity-30 disabled:hover:bg-transparent disabled:hover:text-white/80 transition-colors",...l,children:e})}e.s(["ImageLightbox",0,function({imageUrl:e,filename:u,open:m,onOpenChange:h,assets:p,currentIndex:f,onIndexChange:g}){let{t:b}=(0,d.useI18n)(),[j,v]=(0,a.useState)(1),[y,k]=(0,a.useState)({x:0,y:0}),[w,N]=(0,a.useState)(!1),C=(0,a.useRef)(null),[S,I]=(0,a.useState)(!1),T=!!p&&p.length>1&&"number"==typeof f&&!!g,P=T&&f>0,D=T&&f<p.length-1,E=T?p.length:0,M=E>0?Math.ceil(E/10):0,$=T?Math.floor(f/10):0,A=10*$,R=Math.min(A+10,E),L=M>1,O=T&&$>0,B=T&&$<M-1;(0,a.useEffect)(()=>{I(!0)},[]),(0,a.useEffect)(()=>{v(1),k({x:0,y:0})},[e]),(0,a.useEffect)(()=>{if(!m)return;let e=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=e}},[m]);let F=(0,a.useCallback)(()=>h(!1),[h]),z=(0,a.useCallback)(()=>{T&&P&&g(f-1)},[T,P,g,f]),U=(0,a.useCallback)(()=>{T&&D&&g(f+1)},[T,D,g,f]),_=(0,a.useCallback)(()=>{T&&O&&g(($-1)*10)},[T,O,g,$]),V=(0,a.useCallback)(()=>{T&&B&&g(Math.min(($+1)*10,E-1))},[T,B,g,$,E]),H=(0,a.useCallback)(()=>{v(e=>Math.min(8,1.25*e))},[]),G=(0,a.useCallback)(()=>{v(e=>{let t=Math.max(.1,e/1.25);return t<=1&&k({x:0,y:0}),t})},[]),W=(0,a.useCallback)(()=>{v(1),k({x:0,y:0})},[]);(0,a.useEffect)(()=>{if(!m)return;let e=e=>{switch(e.key){case"Escape":e.preventDefault(),F();break;case"ArrowLeft":T&&(e.preventDefault(),z());break;case"ArrowRight":T&&(e.preventDefault(),U());break;case"+":case"=":e.preventDefault(),H();break;case"-":case"_":e.preventDefault(),G();break;case"0":e.preventDefault(),W()}};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[m,T,F,z,U,H,G,W]);let X=(0,a.useRef)(!1),Y=()=>{w&&N(!1),C.current=null},q=w?"cursor-grabbing":"cursor-grab";if(!m||!S)return null;let J=(0,t.jsxs)("div",{className:"fixed inset-0 z-[100] bg-black/70 dark:bg-black/40 backdrop-blur-md",role:"dialog","aria-modal":"true","aria-label":b("assets.lightbox.zoomFit"),children:[(0,t.jsxs)("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 max-w-[80vw] truncate rounded-md bg-black/40 px-3 py-1 text-xs text-white/80 backdrop-blur-sm pointer-events-none",children:[u,T?` \xb7 ${f+1} / ${p.length}`:""]}),(0,t.jsx)("div",{className:`absolute inset-0 flex items-center justify-center overflow-hidden select-none ${q}`,onClick:e=>{e.target===e.currentTarget&&F()},onWheel:e=>{e.preventDefault();let t=-e.deltaY>0?1.25:.8;v(e=>{let a=Math.min(8,Math.max(.1,e*t));return a<=1&&k({x:0,y:0}),a})},children:e&&(0,t.jsx)("img",{src:e,alt:u,onClick:e=>{e.stopPropagation(),X.current&&(X.current=!1)},onPointerDown:e=>{0===e.button&&(e.stopPropagation(),X.current=!1,e.target.setPointerCapture?.(e.pointerId),C.current={x:e.clientX,y:e.clientY,panX:y.x,panY:y.y},N(!0))},onPointerMove:e=>{if(!C.current)return;let t=e.clientX-C.current.x,a=e.clientY-C.current.y;Math.abs(t)+Math.abs(a)>5&&(X.current=!0),w&&k({x:C.current.panX+t,y:C.current.panY+a})},onPointerUp:Y,onPointerLeave:Y,onPointerCancel:Y,className:"max-h-[88vh] max-w-[92vw] object-contain pointer-events-auto",style:{transform:`translate3d(${y.x}px, ${y.y}px, 0) scale(${j})`,transformOrigin:"center center",transition:w?"none":"transform 120ms ease-out",willChange:w?"transform":"auto"},draggable:!1})}),(0,t.jsxs)("div",{className:"absolute bottom-4 left-1/2 -translate-x-1/2 z-10 flex flex-col items-center gap-2 max-w-[92vw]",onClick:e=>e.stopPropagation(),children:[T&&(0,t.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-black/50 px-1.5 py-1.5 backdrop-blur-md ring-1 ring-white/10 max-w-[92vw]",children:[L&&(0,t.jsx)(x,{onClick:_,title:`${b("assets.lightbox.prev")} (-10)`,"aria-label":`${b("assets.lightbox.prev")} (-10)`,disabled:!O,children:(0,t.jsx)(i.ChevronsLeft,{className:"h-4 w-4"})}),(0,t.jsx)(x,{onClick:z,title:b("assets.lightbox.prev"),"aria-label":b("assets.lightbox.prev"),disabled:!P,children:(0,t.jsx)(l.ChevronLeft,{className:"h-4 w-4"})}),(0,t.jsx)("div",{className:"flex items-center gap-1.5",children:p.slice(A,R).map((e,a)=>{let s=A+a,r=s===f;return(0,t.jsx)("button",{type:"button",onClick:e=>{e.stopPropagation(),r||g(s)},title:e.filename,className:`shrink-0 h-12 w-12 overflow-hidden rounded-md transition-all ${r?"ring-2 ring-white opacity-100 scale-105":"opacity-60 hover:opacity-100 ring-1 ring-white/20"}`,children:(0,t.jsx)("img",{src:e.url,alt:e.filename,className:"h-full w-full object-cover",loading:"lazy",draggable:!1})},e.url+s)})}),(0,t.jsx)(x,{onClick:U,title:b("assets.lightbox.next"),"aria-label":b("assets.lightbox.next"),disabled:!D,children:(0,t.jsx)(n.ChevronRight,{className:"h-4 w-4"})}),L&&(0,t.jsx)(x,{onClick:V,title:`${b("assets.lightbox.next")} (+10)`,"aria-label":`${b("assets.lightbox.next")} (+10)`,disabled:!B,children:(0,t.jsx)(o,{className:"h-4 w-4"})})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-black/50 px-2 py-1.5 backdrop-blur-md ring-1 ring-white/10",children:[(0,t.jsxs)("span",{className:"px-2 text-xs text-white/80 tabular-nums select-none min-w-12 text-center",children:[Math.round(100*j),"%"]}),(0,t.jsx)(x,{onClick:W,title:b("assets.lightbox.reset"),"aria-label":b("assets.lightbox.reset"),disabled:1===j&&0===y.x&&0===y.y,children:(0,t.jsx)(c.RotateCcw,{className:"h-4 w-4"})}),(0,t.jsx)("div",{className:"mx-1 h-5 w-px bg-white/20"}),(0,t.jsx)(x,{onClick:F,title:b("assets.lightbox.close"),"aria-label":b("assets.lightbox.close"),children:(0,t.jsx)(r.X,{className:"h-4 w-4"})})]})]})]});return(0,s.createPortal)(J,document.body)}],235357);var u=e.i(400355);e.i(254826);var m=e.i(309735),h=e.i(776639);e.s(["TextPreviewDialog",0,function({url:e,filename:s,open:r,onOpenChange:l}){let{t:n}=(0,d.useI18n)(),[i,o]=(0,a.useState)(null),[c,x]=(0,a.useState)(!1),[p,f]=(0,a.useState)(null);(0,a.useEffect)(()=>{if(!r||!e){o(null),f(null);return}let t=!1;return x(!0),f(null),o(null),fetch(e).then(e=>{let t=e.headers.get("content-length");if(t&&parseInt(t,10)>1048576)throw Error("FILE_TOO_LARGE");return e.text()}).then(e=>{if(e.length>1048576)throw Error("FILE_TOO_LARGE");t||(o(e),x(!1))}).catch(e=>{t||(e instanceof Error&&"FILE_TOO_LARGE"===e.message?f(n("assets.fileTooLarge")):f(n("assets.previewError")),x(!1))}),()=>{t=!0}},[r,e,n]);let g=s.split(".").pop()?.toLowerCase();return(0,t.jsx)(h.Dialog,{open:r,onOpenChange:l,children:(0,t.jsxs)(h.DialogContent,{className:"w-[min(960px,92vw)] max-w-none sm:max-w-none h-[85vh] max-h-[85vh] flex flex-col p-0 gap-0",children:[(0,t.jsx)("h3",{className:"text-sm font-medium truncate px-5 py-3 border-b border-border/50",children:s}),(0,t.jsx)("div",{className:"flex-1 overflow-auto px-5 py-4",children:(()=>{if(c)return(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 gap-2",children:[(0,t.jsx)(u.Loader2,{className:"size-5 animate-spin text-muted-foreground"}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:n("assets.loadingPreview")})]});if(p)return(0,t.jsx)("p",{className:"text-sm text-destructive",children:p});if(null===i)return null;if("md"===g)return(0,t.jsx)("div",{className:"text-sm leading-relaxed",children:(0,t.jsx)(m.Streamdown,{children:i})});if("json"===g){let e;try{e=JSON.stringify(JSON.parse(i),null,2)}catch{e=i}return(0,t.jsx)("pre",{className:"font-mono text-xs whitespace-pre-wrap text-foreground",children:e})}return(0,t.jsx)("pre",{className:"font-mono text-sm whitespace-pre-wrap text-foreground",children:i})})()})]})})}],144640)},734525,e=>{"use strict";var t=e.i(289721),a=e.i(965652),s=e.i(400355),r=e.i(236967),l=e.i(533499),n=e.i(956618),i=e.i(514798);let o=(0,i.createServerReference)("402f05aa462da8f160889bed3f8924cb393e01f94f",i.callServer,void 0,i.findSourceMapURL,"getProjectAssets");var c=e.i(453889),d=e.i(912505),x=e.i(645378),u=e.i(867533),m=e.i(998626),h=e.i(519455),p=e.i(937304);function f({asset:e,onPreview:a,onReveal:s,onDelete:r,onTaskClick:n}){var i;let{t:o}=(0,l.useI18n)(),d=(0,p.localPathToApiUrl)(e.path),g=(0,p.isImageAsset)(e.filename,e.mimeType);return(0,t.jsxs)("div",{className:"flex items-center gap-4 rounded-lg border border-border bg-card px-4 py-3 transition-colors hover:bg-accent/20",children:[(0,t.jsx)(h.Button,{variant:"ghost",onClick:()=>a(e),className:"flex-shrink-0 cursor-pointer p-0 h-auto",children:g?(0,t.jsx)("img",{src:d,alt:e.filename,className:"h-12 w-12 rounded object-cover border border-border"}):(0,t.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded border border-border bg-muted",children:(0,t.jsx)(x.FileText,{className:"h-6 w-6 text-muted-foreground"})})}),(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)("p",{className:"truncate text-sm font-medium text-foreground",children:e.filename}),e.taskTitle&&e.taskId&&(0,t.jsx)(h.Button,{variant:"ghost",onClick:t=>{t.stopPropagation(),n?.(e.taskId)},className:"flex-shrink-0 bg-blue-500/10 text-blue-600 dark:text-blue-400 text-xs px-1.5 py-0.5 rounded cursor-pointer hover:bg-blue-500/20 transition-colors h-auto",children:e.taskTitle.length>20?`[任务: ${e.taskTitle.slice(0,20)}...]`:`[任务: ${e.taskTitle}]`})]}),e.description&&(0,t.jsx)("p",{className:"mt-0.5 text-xs text-muted-foreground truncate",children:e.description}),(0,t.jsxs)("div",{className:"mt-0.5 flex items-center gap-3 text-xs text-muted-foreground",children:[(0,t.jsx)("span",{children:null===(i=e.size)?"-":i<1024?`${i} B`:i<1048576?`${(i/1024).toFixed(1)} KB`:i<0x40000000?`${(i/1048576).toFixed(1)} MB`:`${(i/0x40000000).toFixed(1)} GB`}),(0,t.jsx)("span",{children:new Date(e.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 flex-shrink-0",children:[(0,t.jsx)(h.Button,{variant:"ghost",size:"icon",onClick:()=>a(e),className:"text-muted-foreground","aria-label":o("assets.preview"),children:(0,t.jsx)(u.Eye,{className:"h-4 w-4"})}),(0,t.jsx)(h.Button,{variant:"ghost",size:"icon",onClick:()=>s(e),className:"text-muted-foreground","aria-label":o("assets.revealInFinder"),children:(0,t.jsx)(c.FolderOpen,{className:"h-4 w-4"})}),(0,t.jsx)(h.Button,{variant:"ghost",size:"icon",onClick:()=>r(e.id),className:"text-muted-foreground hover:text-rose-400","aria-label":o("assets.delete"),children:(0,t.jsx)(m.Trash2,{className:"h-4 w-4"})})]})]})}function g({assets:e,onPreview:a,onReveal:s,onDelete:r,onTaskClick:n}){let{t:i}=(0,l.useI18n)();return 0===e.length?(0,t.jsx)(d.EmptyState,{icon:c.FolderOpen,title:i("assets.empty"),description:i("assets.emptyHint")}):(0,t.jsx)("div",{className:"flex flex-col gap-3",children:e.map(e=>(0,t.jsx)(f,{asset:e,onPreview:a,onReveal:s,onDelete:r,onTaskClick:n},e.id))})}var b=e.i(631675),j=e.i(657153),v=e.i(292905),y=e.i(624687),k=e.i(280027);function w({allWorkspaces:e,initialWsId:s,initialProjectId:r,onUploaded:n}){let i,{t:o}=(0,l.useI18n)(),c=(0,a.useRef)(null),[d,x]=(0,a.useState)(!1),[u,m]=(0,a.useState)(!1),[p,f]=(0,a.useState)(null),[g,N]=(0,a.useState)(s),[C,S]=(0,a.useState)(r),[I,T]=(0,a.useState)(""),P=e.find(e=>e.id===g),D=P?.projects??[],E=()=>{x(!1),f(null),c.current&&(c.current.value="")},M=async()=>{if(p&&C){m(!0);try{let e=new FormData;e.append("file",p),e.append("projectId",C),e.append("description",I.trim()),await (0,v.uploadAsset)(e),n(C),E()}finally{m(!1)}}};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(h.Button,{onClick:()=>{N(s),S(r),f(null),T(""),x(!0)},className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:[(0,t.jsx)(b.Upload,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:o("assets.upload")})]}),d&&(0,t.jsxs)("div",{className:"fixed inset-0 z-50 flex items-center justify-center",children:[(0,t.jsx)("div",{className:"absolute inset-0 bg-black/50",onClick:E}),(0,t.jsxs)("div",{className:"relative w-full max-w-md rounded-lg border border-border bg-card p-6 shadow-lg",children:[(0,t.jsx)(h.Button,{variant:"ghost",size:"icon-xs",onClick:E,className:"absolute right-3 top-3 text-muted-foreground",children:(0,t.jsx)(j.X,{className:"h-4 w-4"})}),(0,t.jsx)("h3",{className:"text-sm font-semibold text-foreground mb-4",children:o("assets.uploadTitle")}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground w-16 shrink-0",children:o("assets.workspace")}),(0,t.jsxs)(k.Select,{value:g,onValueChange:t=>{var a;let s;return N(a=t??""),s=e.find(e=>e.id===a),void S(s?.projects[0]?.id??null)},children:[(0,t.jsx)(k.SelectTrigger,{className:"flex-1 text-xs",children:(0,t.jsx)("span",{className:"truncate",children:P?.name??g})}),(0,t.jsx)(k.SelectContent,{children:e.map(e=>(0,t.jsx)(k.SelectItem,{value:e.id,children:e.name},e.id))})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground w-16 shrink-0",children:o("assets.project")}),D.length>0?(0,t.jsxs)(k.Select,{value:C??"",onValueChange:e=>S(e??""),children:[(0,t.jsx)(k.SelectTrigger,{className:"flex-1 text-xs",children:(0,t.jsx)("span",{className:"truncate",children:(i=D.find(e=>e.id===C))?i.alias?`${i.name} (${i.alias})`:i.name:C})}),(0,t.jsx)(k.SelectContent,{children:D.map(e=>{let a=e.alias?`${e.name} (${e.alias})`:e.name;return(0,t.jsx)(k.SelectItem,{value:e.id,children:a},e.id)})})]}):(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:o("assets.noProject")})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground w-16 shrink-0",children:o("assets.file")}),(0,t.jsx)("input",{type:"file",ref:c,onChange:e=>{f(e.target.files?.[0]??null)},className:"hidden"}),(0,t.jsx)(h.Button,{variant:"outline",onClick:()=>{c.current?.click()},className:"flex-1 border-dashed bg-background px-3 py-2 text-xs text-muted-foreground hover:border-primary/50 hover:text-foreground transition-colors text-left justify-start",children:p?p.name:o("assets.selectFile")})]}),(0,t.jsxs)("div",{className:"flex items-start gap-3",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground w-16 shrink-0 pt-1.5",children:o("assets.description")}),(0,t.jsx)(y.Textarea,{value:I,onChange:e=>T(e.target.value),placeholder:o("assets.descriptionPlaceholder"),className:"flex-1 rounded-md border border-border bg-background px-3 py-2 text-xs text-foreground focus:outline-none focus:ring-1 focus:ring-ring resize-none h-20"})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 justify-end mt-6",children:[(0,t.jsx)(h.Button,{variant:"outline",onClick:E,children:o("notes.cancel")}),(0,t.jsx)(h.Button,{onClick:M,disabled:!p||!C||!I.trim()||u,className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:o(u?"assets.uploading":"assets.upload")})]})]})]})]})}var N=e.i(235357),C=e.i(144640),S=e.i(605005),I=e.i(360112);e.s(["AssetsPageClient",0,function({allWorkspaces:e,initialWorkspaceId:i,initialProjectId:c,initialAssets:d}){let x,{t:u}=(0,l.useI18n)(),[m,h]=(0,a.useTransition)(),[f,b]=(0,a.useState)(i),[j,v]=(0,a.useState)(c),[y,T]=(0,a.useState)(d),[P,D]=(0,a.useState)(null),E=e.find(e=>e.id===f),M=E?.projects??[],$=(0,a.useCallback)(e=>{e?h(async()=>{T(await o(e))}):T([])},[h]),[A,R]=(0,a.useState)(null),L=A?(0,p.isImageAsset)(A.filename,A.mimeType)?"image":/\.(txt|md|json)$/i.test(A.filename)?"text":null:null,O=y.filter(e=>(0,p.isImageAsset)(e.filename,e.mimeType)).map(e=>({id:e.id,url:(0,p.localPathToApiUrl)(e.path),filename:e.filename})),B=A?O.findIndex(e=>e.id===A.id):-1,F=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(()=>({}));I.toast.error(e.error||"Failed to reveal file")}}catch{I.toast.error("Failed to reveal file")}},z=async e=>{let t=y.find(t=>t.id===e);confirm(u("assets.deleteConfirm",{filename:t?.filename??e}))&&(await (0,n.deleteAsset)(e),$(j))};return(0,t.jsxs)("div",{className:"flex h-full flex-col overflow-hidden",children:[(0,t.jsx)(r.SubPageNav,{workspaceId:f}),(0,t.jsxs)("div",{className:"header-sm flex items-center gap-3 px-6 py-2",children:[(0,t.jsxs)(k.Select,{value:f,onValueChange:t=>t&&(t=>{if(t===f)return;b(t);let a=e.find(e=>e.id===t),s=a?.projects[0]??null;v(s?.id??null),$(s?.id??null)})(t),children:[(0,t.jsx)(k.SelectTrigger,{className:"h-8 w-auto min-w-[120px]",children:(0,t.jsx)("span",{className:"truncate",children:e.find(e=>e.id===f)?.name??f})}),(0,t.jsx)(k.SelectContent,{children:e.map(e=>(0,t.jsx)(k.SelectItem,{value:e.id,children:e.name},e.id))})]}),M.length>0&&(0,t.jsxs)(k.Select,{value:j??"",onValueChange:e=>e&&void(e!==j&&(v(e),$(e))),children:[(0,t.jsx)(k.SelectTrigger,{className:"h-8 w-auto min-w-[140px]",children:(0,t.jsx)("span",{className:"truncate",children:(x=M.find(e=>e.id===j))?x.alias?`${x.name} (${x.alias})`:x.name:""})}),(0,t.jsx)(k.SelectContent,{children:M.map(e=>(0,t.jsxs)(k.SelectItem,{value:e.id,children:[e.name,e.alias?` (${e.alias})`:""]},e.id))})]}),(0,t.jsx)("div",{className:"ml-auto",children:(0,t.jsx)(w,{allWorkspaces:e,initialWsId:f,initialProjectId:j,onUploaded:e=>{e===j&&$(j)}})})]}),(0,t.jsx)("div",{className:"flex-1 overflow-auto px-6 py-4",children:(0,t.jsxs)("div",{className:`relative ${m?"opacity-40 pointer-events-none":""} transition-opacity`,children:[m&&(0,t.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center",children:(0,t.jsx)(s.Loader2,{className:"size-5 animate-spin text-muted-foreground"})}),0===M.length?(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center gap-2 py-16 text-center",children:[(0,t.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:u("assets.noProject")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground/60",children:u("assets.noProjectHint")})]}):(0,t.jsx)(g,{assets:y.map(e=>({...e,taskId:e.task?.id??null,taskTitle:e.task?.title??null})),onPreview:e=>{let t=(0,p.isImageAsset)(e.filename,e.mimeType),a=/\.(txt|md|json)$/i.test(e.filename);(t||a)&&R(e)},onReveal:F,onDelete:z,onTaskClick:D})]})}),(0,t.jsx)(N.ImageLightbox,{imageUrl:"image"===L&&B>=0?O[B].url:null,filename:"image"===L&&B>=0?O[B].filename:"",open:"image"===L,onOpenChange:e=>{e||R(null)},assets:O.map(({url:e,filename:t})=>({url:e,filename:t})),currentIndex:B>=0?B:void 0,onIndexChange:e=>{let t=O[e];if(!t)return;let a=y.find(e=>e.id===t.id);a&&R({...a,taskId:a.task?.id??null,taskTitle:a.task?.title??null})}}),(0,t.jsx)(C.TextPreviewDialog,{url:"text"===L&&A?(0,p.localPathToApiUrl)(A.path):null,filename:A?.filename??"",open:"text"===L,onOpenChange:e=>{e||R(null)}}),(0,t.jsx)(S.TaskOverviewDrawer,{open:!!P,onOpenChange:e=>{e||D(null)},taskId:P})]})}],734525)},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)))}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,254826,309735,e=>{"use strict";var t=e.i(990216);e.s([],254826),e.s(["Streamdown",()=>t.C],309735)},236967,e=>{"use strict";var t=e.i(289721),a=e.i(210702),s=e.i(538059),r=e.i(259846),l=e.i(645378),n=e.i(453889),i=e.i(487278),o=e.i(533499);let d=[{key:"notes",icon:l.FileText},{key:"assets",icon:n.FolderOpen},{key:"archive",icon:i.Archive}];e.s(["SubPageNav",0,function({workspaceId:e}){let{t:l}=(0,o.useI18n)(),n=(0,s.usePathname)(),i=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)(a.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:l("archive.backToBoard")})]}),(0,t.jsx)("span",{className:"mr-2 h-4 w-px bg-border"}),d.map(s=>{let r=s.icon,n=i===s.key;return(0,t.jsxs)(a.default,{href:`/workspaces/${e}/${s.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:l(`sidebar.${s.key}`)})]},s.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)},259846,e=>{"use strict";let t=(0,e.i(572989).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],259846)},685149,e=>{"use strict";e.s(["BOARD_COLUMNS",0,[{id:"TODO",label:"To Do",color:"bg-slate-400"},{id:"IN_PROGRESS",label:"In Progress",color:"bg-amber-400"},{id:"IN_REVIEW",label:"In Review",color:"bg-sky-400"},{id:"DONE",label:"Done",color:"bg-emerald-400"},{id:"CANCELLED",label:"Cancelled",color:"bg-rose-400"}],"NOTE_CATEGORIES_PRESET",0,["账号","环境","需求","备忘"],"PRIORITY_CONFIG",0,{LOW:{label:"低",color:"bg-slate-500/20 text-slate-300 border border-slate-500/30"},MEDIUM:{label:"中",color:"bg-amber-500/20 text-amber-300 border border-amber-500/30"},HIGH:{label:"高",color:"bg-orange-500/20 text-orange-300 border border-orange-500/30"},CRITICAL:{label:"紧急",color:"bg-rose-500/20 text-rose-300 border border-rose-500/30"}},"TOWER_LABEL_NAME",0,"Tower"])},567860,e=>{"use strict";let t=(0,e.i(572989).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",0,t],567860)},237901,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("4020ababc64e3e20322cc4d4ce3b9df48673dd84b8",t.callServer,void 0,t.findSourceMapURL,"openInTerminal");e.s(["openInTerminal",0,a])},752631,438199,12659,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("4030dd133cb98fa4b7caefd8a1dde6142fda3f0c0f",t.callServer,void 0,t.findSourceMapURL,"openInFileManager");e.s(["openInFileManager",0,a],752631);let s=(0,t.createServerReference)("4088280847d384971b8146a405a4b8b423a0137c21",t.callServer,void 0,t.findSourceMapURL,"openInEditor");e.s(["openInEditor",0,s],438199);let r=(0,e.i(572989).default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["PlayCircle",0,r],12659)},736061,460707,e=>{"use strict";var t=e.i(572989);let a=(0,t.default)("folder-search",[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]]);e.s(["FolderSearch",0,a],736061);let s=(0,t.default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);e.s(["Code",0,s],460707)},35967,e=>{"use strict";var t=e.i(289721);let a=(0,e.i(572989).default)("milestone",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M12 3v3",key:"1n5kay"}],["path",{d:"M18.172 6a2 2 0 0 1 1.414.586l2.06 2.06a1.207 1.207 0 0 1 0 1.708l-2.06 2.06a2 2 0 0 1-1.414.586H4a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1z",key:"8gz4t4"}]]);var s=e.i(533499);let r=["bg-sky-500/20 text-sky-300 border border-sky-500/30","bg-amber-500/20 text-amber-300 border border-amber-500/30","bg-violet-500/20 text-violet-300 border border-violet-500/30","bg-emerald-500/20 text-emerald-300 border border-emerald-500/30","bg-rose-500/20 text-rose-300 border border-rose-500/30","bg-cyan-500/20 text-cyan-300 border border-cyan-500/30","bg-indigo-500/20 text-indigo-300 border border-indigo-500/30"];function l(e){return r[function(e){let t=0;for(let a=0;a<e.length;a++)t=31*t+e.charCodeAt(a)>>>0;return t}(e)%r.length]}let n={PLANNED:"bg-slate-500/20 text-slate-300 border border-slate-500/30",ACTIVE:"bg-emerald-500/20 text-emerald-300 border border-emerald-500/30",RELEASED:"bg-zinc-500/20 text-zinc-400 border border-zinc-500/30"};e.s(["TaskVersionTag",0,function({number:e,name:s,showName:r=!1,className:l="",title:n}){return(0,t.jsxs)("span",{className:`inline-flex items-center gap-1 rounded-md border border-border bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground ${l}`,title:n??(s?`${e} \xb7 ${s}`:e),children:[(0,t.jsx)(a,{className:"h-2.5 w-2.5 shrink-0"}),(0,t.jsx)("span",{className:"font-mono",children:e}),r&&s?(0,t.jsx)("span",{className:"max-w-[140px] truncate",children:s}):null]})},"VersionStatusBadge",0,function({status:e}){let{t:a}=(0,s.useI18n)();return(0,t.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${n[e]}`,children:a(`version.status.${e}`)})},"VersionTypeBadge",0,function({name:e}){let{t:a}=(0,s.useI18n)();return e?(0,t.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${l(e)}`,children:e}):(0,t.jsx)("span",{className:"inline-flex items-center rounded-full border border-border bg-muted/40 px-2 py-0.5 text-xs font-medium text-muted-foreground",children:a("version.type.uncategorized")})},"typeBadgeColor",0,l],35967)},980376,230200,e=>{"use strict";var t=e.i(289721),a=e.i(225061),s=e.i(975157),r=e.i(519455),l=e.i(670123);function n({...e}){return(0,t.jsx)(a.Dialog.Portal,{"data-slot":"sheet-portal",...e})}function i({className:e,...r}){return(0,t.jsx)(a.Dialog.Backdrop,{"data-slot":"sheet-overlay",className:(0,s.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)(a.Dialog.Root,{"data-slot":"sheet",...e})},"SheetContent",0,function({className:e,children:o,side:d="right",showCloseButton:c=!0,...x}){return(0,t.jsxs)(n,{children:[(0,t.jsx)(i,{}),(0,t.jsxs)(a.Dialog.Popup,{"data-slot":"sheet-content","data-side":d,className:(0,s.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,c&&(0,t.jsxs)(a.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)(l.XIcon,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})},"SheetDescription",0,function({className:e,...r}){return(0,t.jsx)(a.Dialog.Description,{"data-slot":"sheet-description",className:(0,s.cn)("text-sm text-muted-foreground",e),...r})},"SheetHeader",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"sheet-header",className:(0,s.cn)("flex flex-col gap-0.5 p-4",e),...a})},"SheetTitle",0,function({className:e,...r}){return(0,t.jsx)(a.Dialog.Title,{"data-slot":"sheet-title",className:(0,s.cn)("font-heading text-base font-medium text-foreground",e),...r})}],980376);var o=e.i(514798);let d=(0,o.createServerReference)("40e67a1efce5df4810568fbfa10e6c5d914bea56ea",o.callServer,void 0,o.findSourceMapURL,"getTaskOverview");e.s(["getTaskOverview",0,d],230200)},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),a=e.i(965652),s=e.i(980376),r=e.i(759684),l=e.i(487486),n=e.i(519455),i=e.i(533499),o=e.i(110996),d=e.i(230200),c=e.i(85596),x=e.i(752631),u=e.i(438199),m=e.i(237901),h=e.i(744798),p=e.i(685149),f=e.i(606393),g=e.i(875840),b=e.i(245697),j=e.i(12659),v=e.i(736061),y=e.i(460707),k=e.i(567860);function w({added:e,removed:a}){let{t:s}=(0,i.useI18n)();return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-gray-500",children:[(0,t.jsx)("span",{children:s("diff.filesChanged",{count:String(e+a)})}),e>0&&(0,t.jsxs)("span",{className:"text-green-500",children:["+",e]}),a>0&&(0,t.jsxs)("span",{className:"text-red-500",children:["-",a]})]})}var N=e.i(35967),C=e.i(360112);e.s(["TaskOverviewDrawer",0,function({open:e,onOpenChange:S,taskId:I}){let{t:T}=(0,i.useI18n)(),[P,D]=(0,a.useState)(null),[E,M]=(0,a.useTransition)(),[$,A]=(0,a.useState)(!1),[R,L]=(0,a.useState)([]);(0,a.useEffect)(()=>{I&&e?M(async()=>{let e=await (0,d.getTaskOverview)(I);e&&(D(e),e.project?.workspaceId&&(0,c.getLabelsForWorkspace)(e.project.workspaceId).then(e=>{L(e.map(e=>({id:e.id,name:e.name,color:e.color,isBuiltin:e.isBuiltin})))}).catch(()=>L([])))}):D(null)},[I,e]);let O=P?p.BOARD_COLUMNS.find(e=>e.id===P.status):null,B=P?p.PRIORITY_CONFIG[P.priority]:null,F=P?.executions?.[0]??null,z=(()=>{if(F?.worktreePath)return F.worktreePath;let e=P?.project?.localPath;return e?P?.subPath?`${e}/${P.subPath}`:e:null})(),U=(()=>{let e=F?.gitStats;if(!e)return null;try{let t=JSON.parse(e);return{added:t.insertions??0,removed:t.deletions??0}}catch{return null}})(),_=async e=>{if(P?.project)try{let{autoStart:t,...a}=e;await (0,o.createTask)({...a,projectId:P.project.id}),C.toast.success(T("taskDrawer.duplicateSuccess")),A(!1),S(!1)}catch{C.toast.error(T("taskDrawer.duplicateFailed"))}};return(0,t.jsxs)(s.Sheet,{open:e,onOpenChange:S,children:[(0,t.jsxs)(s.SheetContent,{side:"right",className:"w-[380px] sm:max-w-[380px] p-0",children:[(0,t.jsxs)(s.SheetHeader,{className:"px-4 pt-4 pb-3 border-b border-border",children:[(0,t.jsx)(s.SheetTitle,{className:"text-base font-semibold leading-tight pr-8",children:P?.title??""}),(0,t.jsx)(s.SheetDescription,{className:"sr-only",children:T("taskDrawer.title")}),P&&(0,t.jsxs)("div",{className:"flex items-center gap-2 mt-2",children:[O&&(0,t.jsxs)(l.Badge,{variant:"secondary",className:"text-xs",children:[(0,t.jsx)("span",{className:`inline-block w-2 h-2 rounded-full mr-1.5 ${O.color}`}),O.label]}),B&&(0,t.jsx)(l.Badge,{variant:"secondary",className:`text-xs ${B.color}`,children:B.label}),P.version&&(0,t.jsx)(N.TaskVersionTag,{number:P.version.number,name:P.version.name,showName:!0})]})]}),(0,t.jsx)(r.ScrollArea,{className:"flex-1 h-[calc(100%-80px)]",children:E&&!P?(0,t.jsx)("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:T("assets.loading")}):P?(0,t.jsxs)("div",{className:"p-4 space-y-4",children:[(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1",children:T("taskDrawer.description")}),(0,t.jsx)("p",{className:"text-sm text-foreground whitespace-pre-wrap",children:P.description||T("taskDrawer.noDescription")})]}),P.labels.length>0&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5",children:T("taskDrawer.labels")}),(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:P.labels.map(e=>(0,t.jsx)(l.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)(f.Calendar,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:T("taskDrawer.createdAt")}),(0,t.jsx)("span",{className:"text-foreground",children:new Date(P.createdAt).toLocaleDateString()})]}),(0,t.jsxs)("section",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(b.Package,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:T("taskDrawer.resources")}),(0,t.jsx)("span",{className:"text-foreground",children:P._count.assets})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h4",{className:"text-xs font-medium text-muted-foreground mb-1.5",children:T("taskDrawer.fileChanges")}),U?(0,t.jsx)(w,{added:U.added,removed:U.removed}):(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:T("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)(j.PlayCircle,{className:"h-3.5 w-3.5"}),T("taskDrawer.lastExecution")]}),F?(0,t.jsxs)("div",{className:"rounded-md border border-border p-2.5 text-sm",children:[(0,t.jsx)(l.Badge,{variant:"secondary",className:"text-xs mb-1.5",children:F.status}),F.summary&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-4",children:F.summary.slice(0,200)})]}):(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:T("taskDrawer.noExecution")})]}),z&&(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,x.openInFileManager)(z)}catch(e){console.error("openInFileManager failed:",e),C.toast.error(T("git.openInFileManagerFailed"))}},children:[(0,t.jsx)(v.FolderSearch,{className:"h-3.5 w-3.5 shrink-0"}),T("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,u.openInEditor)(z)}catch(e){console.error("openInEditor failed:",e),C.toast.error(T("git.openInEditorFailed"))}},children:[(0,t.jsx)(y.Code,{className:"h-3.5 w-3.5 shrink-0"}),T("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,m.openInTerminal)(z)}catch(e){console.error("openInTerminal failed:",e),C.toast.error(T("git.openInTerminalFailed"))}},children:[(0,t.jsx)(k.Terminal,{className:"h-3.5 w-3.5 shrink-0"}),T("git.openInTerminal")]})]}),(0,t.jsx)("section",{children:(0,t.jsxs)(n.Button,{variant:"default",className:"w-full",onClick:()=>{P&&A(!0)},disabled:!P,children:[(0,t.jsx)(g.Copy,{className:"h-4 w-4"}),T("taskDrawer.duplicate")]})})]}):null})]}),P?.project&&(0,t.jsx)(h.CreateTaskDialog,{open:$,onOpenChange:A,onSubmit:_,labels:R,projectType:P.project.type,projectLocalPath:P.project.localPath,prefillFromTask:{title:P.title,description:P.description,priority:P.priority,subPath:P.subPath,labelIds:P.labels.map(e=>e.label.id),baseBranch:P.baseBranch}})]})}],605005)},368490,e=>{"use strict";var t=e.i(776405);e.s(["ChevronRight",()=>t.default])},922541,e=>{"use strict";let t=(0,e.i(572989).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);e.s(["RotateCcw",0,t],922541)},912505,e=>{"use strict";var t=e.i(289721),a=e.i(975157);e.s(["EmptyState",0,function({icon:e,title:s,description:r,action:l,className:n}){return(0,t.jsxs)("div",{className:(0,a.cn)("flex h-48 flex-col items-center justify-center gap-2 text-center",n),children:[e&&(0,t.jsx)(e,{className:"h-10 w-10 text-muted-foreground/40"}),(0,t.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:s}),r&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground/60",children:r}),l&&(0,t.jsx)("div",{className:"mt-2",children:l})]})}])},867533,e=>{"use strict";let t=(0,e.i(572989).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);e.s(["Eye",0,t],867533)},631675,e=>{"use strict";let t=(0,e.i(572989).default)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);e.s(["Upload",0,t],631675)},19671,e=>{"use strict";let t=(0,e.i(572989).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);e.s(["ChevronLeft",0,t],19671)},696489,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("40fc63ea8357dcb0e8d51747af978d1f126bee6c20",t.callServer,void 0,t.findSourceMapURL,"deleteAsset");e.s(["deleteAsset",0,a])},937304,e=>{"use strict";let t=new Set(["png","jpg","jpeg","gif","webp","svg","bmp","ico","avif","apng"]);e.s(["isImageAsset",0,function(e,a){if(a?.startsWith("image/"))return!0;let s=e.split(".").pop()?.toLowerCase();return!!s&&t.has(s)},"localPathToApiUrl",0,function(e){let t=e.match(/(?:^|\/)(?:storage|data)\/assets\/([^/]+)\/([^/]+)$/);return t?`/api/files/assets/${t[1]}/${t[2]}`:e}])},858085,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("40b3cdb6d80f5f8674ef081bea85af85d8e90833f7",t.callServer,void 0,t.findSourceMapURL,"uploadAsset");e.s(["uploadAsset",0,a])},235357,144640,e=>{"use strict";var t=e.i(289721),a=e.i(965652),s=e.i(585012),r=e.i(657153),l=e.i(19671),n=e.i(368490),i=e.i(902539);let o=(0,e.i(572989).default)("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]);var d=e.i(922541),c=e.i(533499);function x({children:e,onClick:a,title:s,disabled:r,...l}){return(0,t.jsx)("button",{type:"button",onClick:e=>{e.stopPropagation(),r||a()},title:s,disabled:r,className:"inline-flex h-8 w-8 items-center justify-center rounded-md text-white/80 hover:bg-white/15 hover:text-white disabled:opacity-30 disabled:hover:bg-transparent disabled:hover:text-white/80 transition-colors",...l,children:e})}e.s(["ImageLightbox",0,function({imageUrl:e,filename:u,open:m,onOpenChange:h,assets:p,currentIndex:f,onIndexChange:g}){let{t:b}=(0,c.useI18n)(),[j,v]=(0,a.useState)(1),[y,k]=(0,a.useState)({x:0,y:0}),[w,N]=(0,a.useState)(!1),C=(0,a.useRef)(null),[S,I]=(0,a.useState)(!1),T=!!p&&p.length>1&&"number"==typeof f&&!!g,P=T&&f>0,D=T&&f<p.length-1,E=T?p.length:0,M=E>0?Math.ceil(E/10):0,$=T?Math.floor(f/10):0,A=10*$,R=Math.min(A+10,E),L=M>1,O=T&&$>0,B=T&&$<M-1;(0,a.useEffect)(()=>{I(!0)},[]),(0,a.useEffect)(()=>{v(1),k({x:0,y:0})},[e]),(0,a.useEffect)(()=>{if(!m)return;let e=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=e}},[m]);let F=(0,a.useCallback)(()=>h(!1),[h]),z=(0,a.useCallback)(()=>{T&&P&&g(f-1)},[T,P,g,f]),U=(0,a.useCallback)(()=>{T&&D&&g(f+1)},[T,D,g,f]),_=(0,a.useCallback)(()=>{T&&O&&g(($-1)*10)},[T,O,g,$]),V=(0,a.useCallback)(()=>{T&&B&&g(Math.min(($+1)*10,E-1))},[T,B,g,$,E]),H=(0,a.useCallback)(()=>{v(e=>Math.min(8,1.25*e))},[]),G=(0,a.useCallback)(()=>{v(e=>{let t=Math.max(.1,e/1.25);return t<=1&&k({x:0,y:0}),t})},[]),W=(0,a.useCallback)(()=>{v(1),k({x:0,y:0})},[]);(0,a.useEffect)(()=>{if(!m)return;let e=e=>{switch(e.key){case"Escape":e.preventDefault(),F();break;case"ArrowLeft":T&&(e.preventDefault(),z());break;case"ArrowRight":T&&(e.preventDefault(),U());break;case"+":case"=":e.preventDefault(),H();break;case"-":case"_":e.preventDefault(),G();break;case"0":e.preventDefault(),W()}};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[m,T,F,z,U,H,G,W]);let X=(0,a.useRef)(!1),Y=()=>{w&&N(!1),C.current=null},q=w?"cursor-grabbing":"cursor-grab";if(!m||!S)return null;let J=(0,t.jsxs)("div",{className:"fixed inset-0 z-[100] bg-black/70 dark:bg-black/40 backdrop-blur-md",role:"dialog","aria-modal":"true","aria-label":b("assets.lightbox.zoomFit"),children:[(0,t.jsxs)("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 max-w-[80vw] truncate rounded-md bg-black/40 px-3 py-1 text-xs text-white/80 backdrop-blur-sm pointer-events-none",children:[u,T?` \xb7 ${f+1} / ${p.length}`:""]}),(0,t.jsx)("div",{className:`absolute inset-0 flex items-center justify-center overflow-hidden select-none ${q}`,onClick:e=>{e.target===e.currentTarget&&F()},onWheel:e=>{e.preventDefault();let t=-e.deltaY>0?1.25:.8;v(e=>{let a=Math.min(8,Math.max(.1,e*t));return a<=1&&k({x:0,y:0}),a})},children:e&&(0,t.jsx)("img",{src:e,alt:u,onClick:e=>{e.stopPropagation(),X.current&&(X.current=!1)},onPointerDown:e=>{0===e.button&&(e.stopPropagation(),X.current=!1,e.target.setPointerCapture?.(e.pointerId),C.current={x:e.clientX,y:e.clientY,panX:y.x,panY:y.y},N(!0))},onPointerMove:e=>{if(!C.current)return;let t=e.clientX-C.current.x,a=e.clientY-C.current.y;Math.abs(t)+Math.abs(a)>5&&(X.current=!0),w&&k({x:C.current.panX+t,y:C.current.panY+a})},onPointerUp:Y,onPointerLeave:Y,onPointerCancel:Y,className:"max-h-[88vh] max-w-[92vw] object-contain pointer-events-auto",style:{transform:`translate3d(${y.x}px, ${y.y}px, 0) scale(${j})`,transformOrigin:"center center",transition:w?"none":"transform 120ms ease-out",willChange:w?"transform":"auto"},draggable:!1})}),(0,t.jsxs)("div",{className:"absolute bottom-4 left-1/2 -translate-x-1/2 z-10 flex flex-col items-center gap-2 max-w-[92vw]",onClick:e=>e.stopPropagation(),children:[T&&(0,t.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-black/50 px-1.5 py-1.5 backdrop-blur-md ring-1 ring-white/10 max-w-[92vw]",children:[L&&(0,t.jsx)(x,{onClick:_,title:`${b("assets.lightbox.prev")} (-10)`,"aria-label":`${b("assets.lightbox.prev")} (-10)`,disabled:!O,children:(0,t.jsx)(i.ChevronsLeft,{className:"h-4 w-4"})}),(0,t.jsx)(x,{onClick:z,title:b("assets.lightbox.prev"),"aria-label":b("assets.lightbox.prev"),disabled:!P,children:(0,t.jsx)(l.ChevronLeft,{className:"h-4 w-4"})}),(0,t.jsx)("div",{className:"flex items-center gap-1.5",children:p.slice(A,R).map((e,a)=>{let s=A+a,r=s===f;return(0,t.jsx)("button",{type:"button",onClick:e=>{e.stopPropagation(),r||g(s)},title:e.filename,className:`shrink-0 h-12 w-12 overflow-hidden rounded-md transition-all ${r?"ring-2 ring-white opacity-100 scale-105":"opacity-60 hover:opacity-100 ring-1 ring-white/20"}`,children:(0,t.jsx)("img",{src:e.url,alt:e.filename,className:"h-full w-full object-cover",loading:"lazy",draggable:!1})},e.url+s)})}),(0,t.jsx)(x,{onClick:U,title:b("assets.lightbox.next"),"aria-label":b("assets.lightbox.next"),disabled:!D,children:(0,t.jsx)(n.ChevronRight,{className:"h-4 w-4"})}),L&&(0,t.jsx)(x,{onClick:V,title:`${b("assets.lightbox.next")} (+10)`,"aria-label":`${b("assets.lightbox.next")} (+10)`,disabled:!B,children:(0,t.jsx)(o,{className:"h-4 w-4"})})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-black/50 px-2 py-1.5 backdrop-blur-md ring-1 ring-white/10",children:[(0,t.jsxs)("span",{className:"px-2 text-xs text-white/80 tabular-nums select-none min-w-12 text-center",children:[Math.round(100*j),"%"]}),(0,t.jsx)(x,{onClick:W,title:b("assets.lightbox.reset"),"aria-label":b("assets.lightbox.reset"),disabled:1===j&&0===y.x&&0===y.y,children:(0,t.jsx)(d.RotateCcw,{className:"h-4 w-4"})}),(0,t.jsx)("div",{className:"mx-1 h-5 w-px bg-white/20"}),(0,t.jsx)(x,{onClick:F,title:b("assets.lightbox.close"),"aria-label":b("assets.lightbox.close"),children:(0,t.jsx)(r.X,{className:"h-4 w-4"})})]})]})]});return(0,s.createPortal)(J,document.body)}],235357);var u=e.i(400355);e.i(254826);var m=e.i(309735),h=e.i(776639);e.s(["TextPreviewDialog",0,function({url:e,filename:s,open:r,onOpenChange:l}){let{t:n}=(0,c.useI18n)(),[i,o]=(0,a.useState)(null),[d,x]=(0,a.useState)(!1),[p,f]=(0,a.useState)(null);(0,a.useEffect)(()=>{if(!r||!e){o(null),f(null);return}let t=!1;return x(!0),f(null),o(null),fetch(e).then(e=>{let t=e.headers.get("content-length");if(t&&parseInt(t,10)>1048576)throw Error("FILE_TOO_LARGE");return e.text()}).then(e=>{if(e.length>1048576)throw Error("FILE_TOO_LARGE");t||(o(e),x(!1))}).catch(e=>{t||(e instanceof Error&&"FILE_TOO_LARGE"===e.message?f(n("assets.fileTooLarge")):f(n("assets.previewError")),x(!1))}),()=>{t=!0}},[r,e,n]);let g=s.split(".").pop()?.toLowerCase();return(0,t.jsx)(h.Dialog,{open:r,onOpenChange:l,children:(0,t.jsxs)(h.DialogContent,{className:"w-[min(960px,92vw)] max-w-none sm:max-w-none h-[85vh] max-h-[85vh] flex flex-col p-0 gap-0",children:[(0,t.jsx)("h3",{className:"text-sm font-medium truncate px-5 py-3 border-b border-border/50",children:s}),(0,t.jsx)("div",{className:"flex-1 overflow-auto px-5 py-4",children:(()=>{if(d)return(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 gap-2",children:[(0,t.jsx)(u.Loader2,{className:"size-5 animate-spin text-muted-foreground"}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:n("assets.loadingPreview")})]});if(p)return(0,t.jsx)("p",{className:"text-sm text-destructive",children:p});if(null===i)return null;if("md"===g)return(0,t.jsx)("div",{className:"text-sm leading-relaxed",children:(0,t.jsx)(m.Streamdown,{children:i})});if("json"===g){let e;try{e=JSON.stringify(JSON.parse(i),null,2)}catch{e=i}return(0,t.jsx)("pre",{className:"font-mono text-xs whitespace-pre-wrap text-foreground",children:e})}return(0,t.jsx)("pre",{className:"font-mono text-sm whitespace-pre-wrap text-foreground",children:i})})()})]})})}],144640)},734525,e=>{"use strict";var t=e.i(289721),a=e.i(965652),s=e.i(400355),r=e.i(236967),l=e.i(533499),n=e.i(696489),i=e.i(514798);let o=(0,i.createServerReference)("40e3fcd92a20ff5eef6dce6309a51250e3292aa9eb",i.callServer,void 0,i.findSourceMapURL,"getProjectAssets");var d=e.i(453889),c=e.i(912505),x=e.i(645378),u=e.i(867533),m=e.i(998626),h=e.i(519455),p=e.i(937304);function f({asset:e,onPreview:a,onReveal:s,onDelete:r,onTaskClick:n}){var i;let{t:o}=(0,l.useI18n)(),c=(0,p.localPathToApiUrl)(e.path),g=(0,p.isImageAsset)(e.filename,e.mimeType);return(0,t.jsxs)("div",{className:"flex items-center gap-4 rounded-lg border border-border bg-card px-4 py-3 transition-colors hover:bg-accent/20",children:[(0,t.jsx)(h.Button,{variant:"ghost",onClick:()=>a(e),className:"flex-shrink-0 cursor-pointer p-0 h-auto",children:g?(0,t.jsx)("img",{src:c,alt:e.filename,className:"h-12 w-12 rounded object-cover border border-border"}):(0,t.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded border border-border bg-muted",children:(0,t.jsx)(x.FileText,{className:"h-6 w-6 text-muted-foreground"})})}),(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)("p",{className:"truncate text-sm font-medium text-foreground",children:e.filename}),e.taskTitle&&e.taskId&&(0,t.jsx)(h.Button,{variant:"ghost",onClick:t=>{t.stopPropagation(),n?.(e.taskId)},className:"flex-shrink-0 bg-blue-500/10 text-blue-600 dark:text-blue-400 text-xs px-1.5 py-0.5 rounded cursor-pointer hover:bg-blue-500/20 transition-colors h-auto",children:e.taskTitle.length>20?`[任务: ${e.taskTitle.slice(0,20)}...]`:`[任务: ${e.taskTitle}]`})]}),e.description&&(0,t.jsx)("p",{className:"mt-0.5 text-xs text-muted-foreground truncate",children:e.description}),(0,t.jsxs)("div",{className:"mt-0.5 flex items-center gap-3 text-xs text-muted-foreground",children:[(0,t.jsx)("span",{children:null===(i=e.size)?"-":i<1024?`${i} B`:i<1048576?`${(i/1024).toFixed(1)} KB`:i<0x40000000?`${(i/1048576).toFixed(1)} MB`:`${(i/0x40000000).toFixed(1)} GB`}),(0,t.jsx)("span",{children:new Date(e.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 flex-shrink-0",children:[(0,t.jsx)(h.Button,{variant:"ghost",size:"icon",onClick:()=>a(e),className:"text-muted-foreground","aria-label":o("assets.preview"),children:(0,t.jsx)(u.Eye,{className:"h-4 w-4"})}),(0,t.jsx)(h.Button,{variant:"ghost",size:"icon",onClick:()=>s(e),className:"text-muted-foreground","aria-label":o("assets.revealInFinder"),children:(0,t.jsx)(d.FolderOpen,{className:"h-4 w-4"})}),(0,t.jsx)(h.Button,{variant:"ghost",size:"icon",onClick:()=>r(e.id),className:"text-muted-foreground hover:text-rose-400","aria-label":o("assets.delete"),children:(0,t.jsx)(m.Trash2,{className:"h-4 w-4"})})]})]})}function g({assets:e,onPreview:a,onReveal:s,onDelete:r,onTaskClick:n}){let{t:i}=(0,l.useI18n)();return 0===e.length?(0,t.jsx)(c.EmptyState,{icon:d.FolderOpen,title:i("assets.empty"),description:i("assets.emptyHint")}):(0,t.jsx)("div",{className:"flex flex-col gap-3",children:e.map(e=>(0,t.jsx)(f,{asset:e,onPreview:a,onReveal:s,onDelete:r,onTaskClick:n},e.id))})}var b=e.i(631675),j=e.i(657153),v=e.i(858085),y=e.i(624687),k=e.i(280027);function w({allWorkspaces:e,initialWsId:s,initialProjectId:r,onUploaded:n}){let i,{t:o}=(0,l.useI18n)(),d=(0,a.useRef)(null),[c,x]=(0,a.useState)(!1),[u,m]=(0,a.useState)(!1),[p,f]=(0,a.useState)(null),[g,N]=(0,a.useState)(s),[C,S]=(0,a.useState)(r),[I,T]=(0,a.useState)(""),P=e.find(e=>e.id===g),D=P?.projects??[],E=()=>{x(!1),f(null),d.current&&(d.current.value="")},M=async()=>{if(p&&C){m(!0);try{let e=new FormData;e.append("file",p),e.append("projectId",C),e.append("description",I.trim()),await (0,v.uploadAsset)(e),n(C),E()}finally{m(!1)}}};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(h.Button,{onClick:()=>{N(s),S(r),f(null),T(""),x(!0)},className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:[(0,t.jsx)(b.Upload,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{children:o("assets.upload")})]}),c&&(0,t.jsxs)("div",{className:"fixed inset-0 z-50 flex items-center justify-center",children:[(0,t.jsx)("div",{className:"absolute inset-0 bg-black/50",onClick:E}),(0,t.jsxs)("div",{className:"relative w-full max-w-md rounded-lg border border-border bg-card p-6 shadow-lg",children:[(0,t.jsx)(h.Button,{variant:"ghost",size:"icon-xs",onClick:E,className:"absolute right-3 top-3 text-muted-foreground",children:(0,t.jsx)(j.X,{className:"h-4 w-4"})}),(0,t.jsx)("h3",{className:"text-sm font-semibold text-foreground mb-4",children:o("assets.uploadTitle")}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground w-16 shrink-0",children:o("assets.workspace")}),(0,t.jsxs)(k.Select,{value:g,onValueChange:t=>{var a;let s;return N(a=t??""),s=e.find(e=>e.id===a),void S(s?.projects[0]?.id??null)},children:[(0,t.jsx)(k.SelectTrigger,{className:"flex-1 text-xs",children:(0,t.jsx)("span",{className:"truncate",children:P?.name??g})}),(0,t.jsx)(k.SelectContent,{children:e.map(e=>(0,t.jsx)(k.SelectItem,{value:e.id,children:e.name},e.id))})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground w-16 shrink-0",children:o("assets.project")}),D.length>0?(0,t.jsxs)(k.Select,{value:C??"",onValueChange:e=>S(e??""),children:[(0,t.jsx)(k.SelectTrigger,{className:"flex-1 text-xs",children:(0,t.jsx)("span",{className:"truncate",children:(i=D.find(e=>e.id===C))?i.alias?`${i.name} (${i.alias})`:i.name:C})}),(0,t.jsx)(k.SelectContent,{children:D.map(e=>{let a=e.alias?`${e.name} (${e.alias})`:e.name;return(0,t.jsx)(k.SelectItem,{value:e.id,children:a},e.id)})})]}):(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:o("assets.noProject")})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground w-16 shrink-0",children:o("assets.file")}),(0,t.jsx)("input",{type:"file",ref:d,onChange:e=>{f(e.target.files?.[0]??null)},className:"hidden"}),(0,t.jsx)(h.Button,{variant:"outline",onClick:()=>{d.current?.click()},className:"flex-1 border-dashed bg-background px-3 py-2 text-xs text-muted-foreground hover:border-primary/50 hover:text-foreground transition-colors text-left justify-start",children:p?p.name:o("assets.selectFile")})]}),(0,t.jsxs)("div",{className:"flex items-start gap-3",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground w-16 shrink-0 pt-1.5",children:o("assets.description")}),(0,t.jsx)(y.Textarea,{value:I,onChange:e=>T(e.target.value),placeholder:o("assets.descriptionPlaceholder"),className:"flex-1 rounded-md border border-border bg-background px-3 py-2 text-xs text-foreground focus:outline-none focus:ring-1 focus:ring-ring resize-none h-20"})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 justify-end mt-6",children:[(0,t.jsx)(h.Button,{variant:"outline",onClick:E,children:o("notes.cancel")}),(0,t.jsx)(h.Button,{onClick:M,disabled:!p||!C||!I.trim()||u,className:"bg-primary/10 text-primary ring-1 ring-primary/20 hover:bg-primary/15",children:o(u?"assets.uploading":"assets.upload")})]})]})]})]})}var N=e.i(235357),C=e.i(144640),S=e.i(605005),I=e.i(360112);e.s(["AssetsPageClient",0,function({allWorkspaces:e,initialWorkspaceId:i,initialProjectId:d,initialAssets:c}){let x,{t:u}=(0,l.useI18n)(),[m,h]=(0,a.useTransition)(),[f,b]=(0,a.useState)(i),[j,v]=(0,a.useState)(d),[y,T]=(0,a.useState)(c),[P,D]=(0,a.useState)(null),E=e.find(e=>e.id===f),M=E?.projects??[],$=(0,a.useCallback)(e=>{e?h(async()=>{T(await o(e))}):T([])},[h]),[A,R]=(0,a.useState)(null),L=A?(0,p.isImageAsset)(A.filename,A.mimeType)?"image":/\.(txt|md|json)$/i.test(A.filename)?"text":null:null,O=y.filter(e=>(0,p.isImageAsset)(e.filename,e.mimeType)).map(e=>({id:e.id,url:(0,p.localPathToApiUrl)(e.path),filename:e.filename})),B=A?O.findIndex(e=>e.id===A.id):-1,F=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(()=>({}));I.toast.error(e.error||"Failed to reveal file")}}catch{I.toast.error("Failed to reveal file")}},z=async e=>{let t=y.find(t=>t.id===e);confirm(u("assets.deleteConfirm",{filename:t?.filename??e}))&&(await (0,n.deleteAsset)(e),$(j))};return(0,t.jsxs)("div",{className:"flex h-full flex-col overflow-hidden",children:[(0,t.jsx)(r.SubPageNav,{workspaceId:f}),(0,t.jsxs)("div",{className:"header-sm flex items-center gap-3 px-6 py-2",children:[(0,t.jsxs)(k.Select,{value:f,onValueChange:t=>t&&(t=>{if(t===f)return;b(t);let a=e.find(e=>e.id===t),s=a?.projects[0]??null;v(s?.id??null),$(s?.id??null)})(t),children:[(0,t.jsx)(k.SelectTrigger,{className:"h-8 w-auto min-w-[120px]",children:(0,t.jsx)("span",{className:"truncate",children:e.find(e=>e.id===f)?.name??f})}),(0,t.jsx)(k.SelectContent,{children:e.map(e=>(0,t.jsx)(k.SelectItem,{value:e.id,children:e.name},e.id))})]}),M.length>0&&(0,t.jsxs)(k.Select,{value:j??"",onValueChange:e=>e&&void(e!==j&&(v(e),$(e))),children:[(0,t.jsx)(k.SelectTrigger,{className:"h-8 w-auto min-w-[140px]",children:(0,t.jsx)("span",{className:"truncate",children:(x=M.find(e=>e.id===j))?x.alias?`${x.name} (${x.alias})`:x.name:""})}),(0,t.jsx)(k.SelectContent,{children:M.map(e=>(0,t.jsxs)(k.SelectItem,{value:e.id,children:[e.name,e.alias?` (${e.alias})`:""]},e.id))})]}),(0,t.jsx)("div",{className:"ml-auto",children:(0,t.jsx)(w,{allWorkspaces:e,initialWsId:f,initialProjectId:j,onUploaded:e=>{e===j&&$(j)}})})]}),(0,t.jsx)("div",{className:"flex-1 overflow-auto px-6 py-4",children:(0,t.jsxs)("div",{className:`relative ${m?"opacity-40 pointer-events-none":""} transition-opacity`,children:[m&&(0,t.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center",children:(0,t.jsx)(s.Loader2,{className:"size-5 animate-spin text-muted-foreground"})}),0===M.length?(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center gap-2 py-16 text-center",children:[(0,t.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:u("assets.noProject")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground/60",children:u("assets.noProjectHint")})]}):(0,t.jsx)(g,{assets:y.map(e=>({...e,taskId:e.task?.id??null,taskTitle:e.task?.title??null})),onPreview:e=>{let t=(0,p.isImageAsset)(e.filename,e.mimeType),a=/\.(txt|md|json)$/i.test(e.filename);(t||a)&&R(e)},onReveal:F,onDelete:z,onTaskClick:D})]})}),(0,t.jsx)(N.ImageLightbox,{imageUrl:"image"===L&&B>=0?O[B].url:null,filename:"image"===L&&B>=0?O[B].filename:"",open:"image"===L,onOpenChange:e=>{e||R(null)},assets:O.map(({url:e,filename:t})=>({url:e,filename:t})),currentIndex:B>=0?B:void 0,onIndexChange:e=>{let t=O[e];if(!t)return;let a=y.find(e=>e.id===t.id);a&&R({...a,taskId:a.task?.id??null,taskTitle:a.task?.title??null})}}),(0,t.jsx)(C.TextPreviewDialog,{url:"text"===L&&A?(0,p.localPathToApiUrl)(A.path):null,filename:A?.filename??"",open:"text"===L,onOpenChange:e=>{e||R(null)}}),(0,t.jsx)(S.TaskOverviewDrawer,{open:!!P,onOpenChange:e=>{e||D(null)},taskId:P})]})}],734525)},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)))}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,245697,e=>{"use strict";let t=(0,e.i(572989).default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);e.s(["Package",0,t],245697)},922541,e=>{"use strict";let t=(0,e.i(572989).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);e.s(["RotateCcw",0,t],922541)},631675,e=>{"use strict";let t=(0,e.i(572989).default)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);e.s(["Upload",0,t],631675)},301348,181209,e=>{"use strict";var t=e.i(59737);e.s(["CheckCircle2",()=>t.default],301348);let a=(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(["XCircle",0,a],181209)},475958,e=>{"use strict";let t=(0,e.i(572989).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",0,t],475958)},719329,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("40ceddd66888c984655eae0ed43100f49a0619a5ba",t.callServer,void 0,t.findSourceMapURL,"getPrompts");e.s(["getPrompts",0,a])},759686,e=>{"use strict";var t=e.i(567098);e.s(["AlertTriangle",()=>t.default])},991838,e=>{"use strict";var t=e.i(965652),a=e.i(770303);e.s(["useExtension",0,function(e){let s=(0,t.useContext)(a.ExtensionContext);if(!s)throw Error("useExtension must be used inside <ExtensionProvider>");return{status:s.statusMap[e],loading:s.loading,isInstalling:s.installing.has(e),install:()=>s.install(e),uninstall:()=>s.uninstall(e),refresh:()=>s.refresh(e)}}])}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,245697,e=>{"use strict";let t=(0,e.i(572989).default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);e.s(["Package",0,t],245697)},922541,e=>{"use strict";let t=(0,e.i(572989).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);e.s(["RotateCcw",0,t],922541)},631675,e=>{"use strict";let t=(0,e.i(572989).default)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);e.s(["Upload",0,t],631675)},301348,181209,e=>{"use strict";var t=e.i(59737);e.s(["CheckCircle2",()=>t.default],301348);let a=(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(["XCircle",0,a],181209)},475958,e=>{"use strict";let t=(0,e.i(572989).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",0,t],475958)},208459,e=>{"use strict";var t=e.i(514798);let a=(0,t.createServerReference)("40dc648b47596c85b24f147201b9a1b3859147337a",t.callServer,void 0,t.findSourceMapURL,"getPrompts");e.s(["getPrompts",0,a])},759686,e=>{"use strict";var t=e.i(567098);e.s(["AlertTriangle",()=>t.default])},991838,e=>{"use strict";var t=e.i(965652),a=e.i(770303);e.s(["useExtension",0,function(e){let s=(0,t.useContext)(a.ExtensionContext);if(!s)throw Error("useExtension must be used inside <ExtensionProvider>");return{status:s.statusMap[e],loading:s.loading,isInstalling:s.installing.has(e),install:()=>s.install(e),uninstall:()=>s.uninstall(e),refresh:()=>s.refresh(e)}}])}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,69466,e=>{"use strict";e.s([],386333),e.i(386333),e.i(173438),e.i(195719),e.i(717846),e.i(199941),e.i(528152),e.i(757824),e.i(241607),e.i(966494),e.i(448911),e.i(102404);var i=e.i(514798);let r=(0,i.createServerReference)("604bab1d97be03c881acda381e226abd8cc348b74b",i.callServer,void 0,i.findSourceMapURL,"revealInFinder");e.s(["revealInFinder",0,r],69466)}]);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tower-studio",
3
- "version": "0.2.20",
3
+ "version": "0.2.22",
4
4
  "description": "AI Task Orchestration Platform — Kanban + Terminal + Code Editor + MCP",
5
5
  "bin": {
6
6
  "tower": "bin/tower.mjs"
@@ -49509,21 +49509,35 @@ function getTowerDir() {
49509
49509
  }
49510
49510
  return _dir;
49511
49511
  }
49512
+ function getDefaultStorageDir() {
49513
+ return (0, import_node_path.join)(getTowerDir(), "storage");
49514
+ }
49515
+ function getStoragePointerFile() {
49516
+ return (0, import_node_path.join)(getTowerDir(), "storage-location");
49517
+ }
49518
+ function readStoragePointer() {
49519
+ try {
49520
+ const p2 = (0, import_node_fs.readFileSync)(getStoragePointerFile(), "utf-8").trim();
49521
+ return p2.length > 0 ? p2 : null;
49522
+ } catch {
49523
+ return null;
49524
+ }
49525
+ }
49512
49526
  function getStorageDir() {
49513
- const dir = (0, import_node_path.join)(getTowerDir(), "storage");
49527
+ const override = process.env.TOWER_STORAGE_DIR || readStoragePointer();
49528
+ const dir = override && override.length > 0 ? override : getDefaultStorageDir();
49514
49529
  if (!(0, import_node_fs.existsSync)(dir)) (0, import_node_fs.mkdirSync)(dir, { recursive: true });
49515
49530
  return dir;
49516
49531
  }
49517
49532
 
49518
49533
  // src/lib/file-utils.ts
49519
- var DATA_ROOT = getStorageDir();
49520
49534
  function assertWithinDataRoot(resolved) {
49521
- if (!resolved.startsWith(DATA_ROOT + path.sep)) {
49535
+ if (!resolved.startsWith(getStorageDir() + path.sep)) {
49522
49536
  throw new Error("Path traversal detected");
49523
49537
  }
49524
49538
  }
49525
49539
  function getAssetsDir(projectId) {
49526
- const dir = path.join(DATA_ROOT, "assets", projectId);
49540
+ const dir = path.join(getStorageDir(), "assets", projectId);
49527
49541
  assertWithinDataRoot(dir);
49528
49542
  return dir;
49529
49543
  }
@@ -49533,7 +49547,7 @@ function ensureAssetsDir(projectId) {
49533
49547
  return dir;
49534
49548
  }
49535
49549
  function getAssistantCacheRoot() {
49536
- const dir = path.join(DATA_ROOT, "cache", "assistant");
49550
+ const dir = path.join(getStorageDir(), "cache", "assistant");
49537
49551
  assertWithinDataRoot(dir);
49538
49552
  return dir;
49539
49553
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tower-studio",
3
- "version": "0.2.20",
3
+ "version": "0.2.22",
4
4
  "description": "AI Task Orchestration Platform — Kanban + Terminal + Code Editor + MCP",
5
5
  "bin": {
6
6
  "tower": "bin/tower.mjs"
@@ -42,6 +42,15 @@ Use Tower tools when the user wants to:
42
42
 
43
43
  ---
44
44
 
45
+ ## Acting vs. announcing (read first)
46
+
47
+ Once you have enough information, **call the tool in the same turn**. Do not
48
+ reply with only "I'll create it now" / "立即创建" / "好的,马上处理" and then end
49
+ your turn without emitting the tool call — that does nothing and forces the user
50
+ to keep asking. If information is missing, ask a **specific** question instead of
51
+ vaguely promising to act. If the user prods you ("did you create it?", "创建了吗"),
52
+ it means your previous turn produced no tool call — issue the tool call now.
53
+
45
54
  ## Scenarios
46
55
 
47
56
  ### "Show me my workspaces" / "List projects"
@@ -1,12 +0,0 @@
1
- module.exports=[933919,(e,t,r)=>{t.exports=e.x("@prisma/client-9249dd53ac5b6a44",()=>require("@prisma/client-9249dd53ac5b6a44"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},843793,e=>{"use strict";var t=e.i(933919);let r=globalThis.prisma??new t.PrismaClient({log:[]});process.on("SIGTERM",()=>{r.$disconnect().catch(()=>{})}),process.on("SIGINT",()=>{r.$disconnect().catch(()=>{})}),e.s(["db",0,r])},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},198840,e=>{"use strict";var t=e.i(855104);let r=["localhost","127.0.0.1","[::1]"],n=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]),s=/^c[a-z0-9]{20,30}$/;e.s(["requireLocalhost",0,function(e){let s=e.headers.get("x-forwarded-for");if(s&&!s.split(",").map(e=>e.trim()).every(e=>n.has(e)))return t.NextResponse.json({error:"Forbidden"},{status:403});let a=e.headers.get("host")??"";return r.some(e=>a.startsWith(e))?null:t.NextResponse.json({error:"Forbidden"},{status:403})},"validateProjectId",0,function(e){return s.test(e)?null:t.NextResponse.json({error:"Invalid projectId format"},{status:400})},"validateTaskId",0,function(e){return s.test(e)?null:t.NextResponse.json({error:"Invalid taskId format"},{status:400})}])},192520,e=>{"use strict";let t;var r=e.i(750227),n=e.i(660526),s=e.i(902157);function a(){return t||(t=process.env.TOWER_DATA_DIR||(0,r.join)((0,n.homedir)(),".tower"),(0,s.existsSync)(t)||(0,s.mkdirSync)(t,{recursive:!0})),t}e.s(["getAssistantDir",0,function(){let e=(0,r.join)(a(),"assistant");return(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e},"getBackupsDir",0,function(){let e=(0,r.join)(a(),"backups");return(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e},"getExtensionsDir",0,function(){let e=(0,r.join)(a(),"extensions");return(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e},"getStorageDir",0,function(){let e=(0,r.join)(a(),"storage");return(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e},"getTowerDbPath",0,function(){let e;return(0,r.join)((e=(0,r.join)(a(),"database"),(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e),"tower.db")},"getTowerDir",0,a])},341291,e=>{"use strict";var t=e.i(666680),r=e.i(902157),n=e.i(750227);let s=(0,e.i(192520).getStorageDir)();function a(e){if(!e.startsWith(s+n.sep))throw Error("Path traversal detected")}let o=new Set(["image","screenshot","img","photo","picture","clipboard","paste","untitled"]);e.s(["buildCacheFilename",0,function(e,r){let s=n.basename(e,n.extname(e)),a=t.randomUUID().replace(/-/g,"").slice(0,8),i=s.toLowerCase();if(!s||o.has(i)||/^screenshot[\s_\-]/i.test(s))return`tower_image-${a}${r}`;let l=s.replace(/[^\p{L}\p{N}]/gu,"_").replace(/_+/g,"_").replace(/^_+|_+$/g,"");return`${l||"file"}-${a}${r}`},"ensureAssetsDir",0,function(e){let t,o=(a(t=n.join(s,"assets",e)),t);return r.mkdirSync(o,{recursive:!0}),o},"getAssistantCacheDir",0,function(e="images"){let t=new Date,o=`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}`,i=n.join(s,"cache","assistant",o,e);return a(i),r.mkdirSync(i,{recursive:!0}),i},"getAssistantCacheRoot",0,function(){let e=n.join(s,"cache","assistant");return a(e),e}])},634712,e=>{"use strict";let t=["jpg","jpeg","png","gif","webp"],r=["md","txt","json","csv"],n=[...t,...r].join("|"),s=RegExp(`^\\d{4}-\\d{2}/(images|files)/[^/]+\\.(${n})$`,"i");function a(e){let n=e.replace(/^\./,"").toLowerCase();return t.includes(n)?"image":r.includes(n)?"text":null}[...t.map(e=>`.${e}`),...r.map(e=>`.${e}`),"image/*"].join(","),e.s(["ALLOWED_TEXT_EXTS",0,r,"ATTACHMENT_SUBPATH_RE",0,s,"MAX_ATTACHMENTS",0,10,"classifyAttachmentExt",0,a,"classifyAttachmentSubPath",0,function(e){if(!s.test(e))return null;let t=e.lastIndexOf(".");return t<0?null:a(e.slice(t+1))}])},617424,e=>{"use strict";var t=e.i(765876),r=e.i(675896),n=e.i(959160),s=e.i(97944),a=e.i(86757),o=e.i(204144),i=e.i(273436),l=e.i(743641),c=e.i(813766),u=e.i(840884),d=e.i(498814),p=e.i(780006),h=e.i(544432),m=e.i(772005),x=e.i(450223),f=e.i(193695);e.i(628400);var g=e.i(800071),v=e.i(198840),y=e.i(902157),_=e.i(750227),R=e.i(634712),w=e.i(341291),T=e.i(472129),A=e.i(769310),E=e.i(843793),S=e.i(173215);let C=new T.ClaudeCliAdapter;async function b(t){let r,n=(0,v.requireLocalhost)(t);if(n)return n;try{r=await t.json()}catch{return new Response(JSON.stringify({error:"Invalid JSON body"}),{status:400,headers:{"Content-Type":"application/json"}})}let s=Array.isArray(r.attachmentFilenames)?r.attachmentFilenames.filter(e=>"string"==typeof e&&R.ATTACHMENT_SUBPATH_RE.test(e)).slice(0,R.MAX_ATTACHMENTS):[];if(!r.message?.trim()&&0===s.length)return new Response(JSON.stringify({error:"Message or attachments required"}),{status:400,headers:{"Content-Type":"application/json"}});let a=new ReadableStream({async start(t){let n=new TextEncoder;function a(e){t.enqueue(n.encode(`data: ${JSON.stringify(e)}
2
-
3
- `))}try{let{query:t}=await e.A(145135),n=(0,A.resolveSdkExecutable)(C.resolveCommand()),{ensureTowerDir:o}=await e.A(979764),i=o(),l=s.length>0,c={tools:l?["Read"]:[],allowedTools:[`mcp__${(0,S.getTowerMcpName)()}__*`,"Read"],permissionMode:"bypassPermissions",allowDangerouslySkipPermissions:!0,includePartialMessages:!0,cwd:i,pathToClaudeCodeExecutable:n};r.sessionId&&(c.resume=r.sessionId);let u="";if(!r.sessionId){let e=await E.db.systemConfig.findUnique({where:{key:"onboarding.username"}});try{let t=e?JSON.parse(e.value):null;"string"==typeof t&&t.length>0&&(u=`[Context: The user's name is ${t}.]
4
-
5
- `)}catch{}}let d=`${u}/tower ${r.message}`,p=l?function(e,t,r){if(0===t.length)return e;let n=t.slice(0,R.MAX_ATTACHMENTS),s=_.resolve(r),a=[];for(let e of n){if(!R.ATTACHMENT_SUBPATH_RE.test(e))continue;let t=(0,R.classifyAttachmentSubPath)(e);if(!t)continue;let n=_.resolve(r,e);n.startsWith(s+_.sep)&&y.existsSync(n)&&a.push({kind:t,absPath:n})}if(0===a.length)return e;let o=a.map(e=>`- [${"image"===e.kind?"Image":"Text"}] ${e.absPath}`).join("\n");return`${e}
6
-
7
- ---
8
- The user has attached the following file(s). Use the Read tool to view them:
9
- ${o}`}(d,s,(0,w.getAssistantCacheRoot)()):d;for await(let e of t({prompt:p,options:c}))switch(e.type){case"assistant":{let t=e.message.content.filter(e=>"text"===e.type).map(e=>e.text??"").join(""),r=e.message.content.filter(e=>"tool_use"===e.type);for(let n of(t&&a({type:"text",content:t,sessionId:e.session_id}),r))a({type:"tool_use",content:n.name??"unknown",toolInput:n.input,sessionId:e.session_id});break}case"result":e.subtype?.includes("error")&&a({type:"error",content:e.error??"Execution error"}),a({type:"done",sessionId:e.session_id});break;case"system":"tool_result"===e.subtype&&a({type:"tool_result",content:e.tool_name??"tool",toolOutput:e.content??""});break;case"stream_event":{let t=e.event;"content_block_delta"===t.type&&t.delta?.type==="text_delta"&&t.delta.text?a({type:"text_delta",content:t.delta.text,sessionId:e.session_id}):"content_block_start"===t.type&&t.content_block?.type==="tool_use"&&a({type:"tool_start",content:t.content_block.name??"tool",sessionId:e.session_id})}}}catch(t){let e=t instanceof Error?t.message:String(t);console.error("[assistant-chat] ERROR:",e,t instanceof Error&&t.stack?`
10
- ${t.stack}`:""),a({type:"error",content:`Assistant encountered an error: ${e}`})}finally{a({type:"done"}),t.close()}}});return new Response(a,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}e.s(["POST",0,b,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],323612);var k=e.i(323612);let j=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/internal/assistant/chat/route",pathname:"/api/internal/assistant/chat",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/internal/assistant/chat/route.ts",nextConfigOutput:"standalone",userland:k}),{workAsyncStorage:P,workUnitAsyncStorage:N,serverHooks:I}=j;async function q(e,t,n){n.requestMeta&&(0,s.setRequestMeta)(e,n.requestMeta),j.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/internal/assistant/chat/route";v=v.replace(/\/index$/,"")||"/";let y=await j.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:_,params:R,nextConfig:w,parsedUrl:T,isDraftMode:A,prerenderManifest:E,routerServerContext:S,isOnDemandRevalidate:C,revalidateOnlyGenerated:b,resolvedPathname:k,clientReferenceManifest:P,serverActionsManifest:N}=y,I=(0,i.normalizeAppPath)(v),q=!!(E.dynamicRoutes[I]||E.routes[k]),$=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,T,!1):t.end("This page could not be found"),null);if(q&&!A){let e=!!E.routes[k],t=E.dynamicRoutes[I];if(t&&!1===t.fallback&&!e){if(w.adapterPath)return await $();throw new f.NoFallbackError}}let O=null;!q||j.isDev||A||(O="/index"===(O=k)?"/":O);let M=!0===j.isDev||!q,D=q&&!M;N&&P&&(0,o.setManifestsSingleton)({page:v,clientReferenceManifest:P,serverActionsManifest:N});let H=e.method||"GET",U=(0,a.getTracer)(),F=U.getActiveScopeSpan(),L=!!(null==S?void 0:S.isWrappedByNextServer),B=!!(0,s.getRequestMeta)(e,"minimalMode"),K=(0,s.getRequestMeta)(e,"incrementalCache")||await j.getIncrementalCache(e,w,E,B);null==K||K.resetRequestCache(),globalThis.__incrementalCache=K;let W={params:R,previewProps:E.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:M,incrementalCache:K,cacheLifeProfiles:w.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,s)=>j.onRequestError(e,t,n,s,S)},sharedContext:{buildId:_}},X=new l.NodeNextRequest(e),G=new l.NodeNextResponse(t),J=c.NextRequestAdapter.fromNodeNextRequest(X,(0,c.signalFromNodeResponse)(t));try{let s,o=async e=>j.handle(J,W).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${H} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",n),s.updateName(t))}else e.updateName(`${H} ${v}`)}),i=async s=>{var a,i;let l=async({previousCacheEntry:r})=>{try{if(!B&&C&&b&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(s);e.fetchMetrics=W.renderOpts.fetchMetrics;let i=W.renderOpts.pendingWaitUntil;i&&n.waitUntil&&(n.waitUntil(i),i=void 0);let l=W.renderOpts.collectedTags;if(!q)return await (0,p.sendResponse)(X,G,a,W.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[x.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,n=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:W.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await j.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:C})},!1,S),t}},c=await j.handleResponse({req:e,nextConfig:w,cacheKey:O,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:b,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:B});if(!q)return null;if((null==c||null==(a=c.value)?void 0:a.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(i=c.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});B||t.setHeader("x-nextjs-cache",C?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,h.fromNodeOutgoingHttpHeaders)(c.value.headers);return B&&q||u.delete(x.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,m.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(X,G,new Response(c.value.body,{headers:u,status:c.value.status||200})),null};L&&F?await i(F):(s=U.getActiveScopeSpan(),await U.withPropagatedContext(e.headers,()=>U.trace(u.BaseServerSpan.handleRequest,{spanName:`${H} ${v}`,kind:a.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},i),void 0,!L))}catch(t){if(t instanceof f.NoFallbackError||await j.onRequestError(e,t,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:C})},!1,S),q)throw t;return await (0,p.sendResponse)(X,G,new Response(null,{status:500})),null}}e.s(["handler",0,q,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:P,workUnitAsyncStorage:N})},"routeModule",0,j,"serverHooks",0,I,"workAsyncStorage",0,P,"workUnitAsyncStorage",0,N],617424)},482848,e=>{e.v(e=>Promise.resolve().then(()=>e(874533)))},268548,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_node_util_0xr.y7p._.js"].map(t=>e.l(t))).then(()=>t(812057)))},144264,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_child_process_0pwkpv9._.js"].map(t=>e.l(t))).then(()=>t(233405)))},534777,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_util_0wtvqkc._.js"].map(t=>e.l(t))).then(()=>t(224361)))},200628,e=>{e.v(e=>Promise.resolve().then(()=>e(769310)))},145135,e=>{e.v(t=>Promise.all(["server/chunks/[externals]__0m5smhl._.js","server/chunks/07-d_@anthropic-ai_claude-agent-sdk_sdk_mjs_0.721uk._.js"].map(t=>e.l(t))).then(()=>t(217040)))},979764,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__0iyp~.k._.js"].map(t=>e.l(t))).then(()=>t(471552)))}];
11
-
12
- //# sourceMappingURL=%5Broot-of-the-server%5D__0o3ggen._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[814747,(a,b,c)=>{b.exports=a.x("path",()=>require("path"))},446786,(a,b,c)=>{b.exports=a.x("os",()=>require("os"))},918622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},120635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},43285,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/dynamic-access-async-storage.external.js",()=>require("next/dist/server/app-render/dynamic-access-async-storage.external.js"))},586744,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("4035e735b1b22894193be485cb6a9524a54a795c4a",b.callServer,void 0,b.findSourceMapURL,"getLabelsForWorkspace");a.s(["getLabelsForWorkspace",0,c])},463652,(a,b,c)=>{"use strict";c._=function(a){return a&&a.__esModule?a:{default:a}}},923266,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"BailoutToCSR",{enumerable:!0,get:function(){return e}});let d=a.r(306150);function e({reason:a,children:b}){throw Object.defineProperty(new d.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},846982,(a,b,c)=>{"use strict";function d(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"encodeURIPath",{enumerable:!0,get:function(){return d}})},943814,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"PreloadChunks",{enumerable:!0,get:function(){return i}});let d=a.r(728778),e=a.r(986099),f=a.r(556704),g=a.r(846982),h=a.r(427756);function i({moduleIds:a}){let b=f.workAsyncStorage.getStore();if(void 0===b)return null;let c=[];if(b.reactLoadableManifest&&a){let d=b.reactLoadableManifest;for(let b of a){if(!d[b])continue;let a=d[b].files;c.push(...a)}}if(0===c.length)return null;let j=(0,h.getAssetTokenQuery)();return(0,d.jsx)(d.Fragment,{children:c.map(a=>{let c=`${b.assetPrefix}/_next/${(0,g.encodeURIPath)(a)}${j}`;return a.endsWith(".css")?(0,d.jsx)("link",{precedence:"dynamic",href:c,rel:"stylesheet",as:"style",nonce:b.nonce},a):((0,e.preload)(c,{as:"script",fetchPriority:"low",nonce:b.nonce}),null)})})}},451358,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return j}});let d=a.r(728778),e=a.r(374637),f=a.r(923266),g=a.r(943814);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},969032,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return e}});let d=a.r(463652)._(a.r(451358));function e(a,b){let c={};"function"==typeof a&&(c.loader=a);let e={...c,...b};return(0,d.default)({...e,modules:e.loadableGenerated?.modules})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},342796,(a,b,c)=>{"use strict";b.exports=a.r(918622)},374637,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored["react-ssr"].React},728778,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored["react-ssr"].ReactJsxRuntime},986099,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored["react-ssr"].ReactDOM},499636,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored["react-ssr"].ReactServerDOMTurbopackClient},838928,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored.contexts.AppRouterContext},806795,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored.contexts.HooksClientContext},257172,(a,b,c)=>{"use strict";b.exports=a.r(342796).vendored.contexts.ServerInsertedHtml},499425,a=>{"use strict";a.s(["mergeClasses",0,(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim()])},748939,539153,a=>{"use strict";a.s(["default",0,{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}],748939),a.s(["hasA11yProp",0,a=>{for(let b in a)if(b.startsWith("aria-")||"role"===b||"title"===b)return!0;return!1}],539153)},392223,a=>{"use strict";var b=a.i(374637),c=a.i(748939),d=a.i(539153),e=a.i(499425);let f=(0,b.createContext)({}),g=(0,b.forwardRef)(({color:a,size:g,strokeWidth:h,absoluteStrokeWidth:i,className:j="",children:k,iconNode:l,...m},n)=>{let{size:o=24,strokeWidth:p=2,absoluteStrokeWidth:q=!1,color:r="currentColor",className:s=""}=(0,b.useContext)(f)??{},t=i??q?24*Number(h??p)/Number(g??o):h??p;return(0,b.createElement)("svg",{ref:n,...c.default,width:g??o??c.default.width,height:g??o??c.default.height,stroke:a??r,strokeWidth:t,className:(0,e.mergeClasses)("lucide",s,j),...!k&&!(0,d.hasA11yProp)(m)&&{"aria-hidden":"true"},...m},[...l.map(([a,c])=>(0,b.createElement)(a,c)),...Array.isArray(k)?k:[k]])});a.s(["default",0,g],392223)},403988,(a,b,c)=>{"use strict";function d(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(d=function(a){return a?c:b})(a)}c._=function(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=d(b);if(c&&c.has(a))return c.get(a);var e={__proto__:null},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in a)if("default"!==g&&Object.prototype.hasOwnProperty.call(a,g)){var h=f?Object.getOwnPropertyDescriptor(a,g):null;h&&(h.get||h.set)?Object.defineProperty(e,g,h):e[g]=a[g]}return e.default=a,c&&c.set(a,e),e}},884864,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d,e,f={ACTION_HMR_REFRESH:function(){return l},ACTION_NAVIGATE:function(){return i},ACTION_REFRESH:function(){return h},ACTION_RESTORE:function(){return j},ACTION_SERVER_ACTION:function(){return m},ACTION_SERVER_PATCH:function(){return k},PrefetchKind:function(){return n},ScrollBehavior:function(){return o}};for(var g in f)Object.defineProperty(c,g,{enumerable:!0,get:f[g]});let h="refresh",i="navigate",j="restore",k="server-patch",l="hmr-refresh",m="server-action";var n=((d={}).AUTO="auto",d.FULL="full",d),o=((e={})[e.Default=0]="Default",e[e.NoScroll=1]="NoScroll",e);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},66417,(a,b,c)=>{"use strict";function d(a){return null!==a&&"object"==typeof a&&"then"in a&&"function"==typeof a.then}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"isThenable",{enumerable:!0,get:function(){return d}})},239624,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={dispatchAppRouterAction:function(){return i},dispatchGestureState:function(){return j},refreshOnInstantNavigationUnlock:function(){return h},useActionQueue:function(){return k}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(403988)._(a.r(374637)),g=a.r(66417);a.r(884864);function h(){}function i(a){!0;throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0})}function j(a){!0;throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0})}function k(a){let[b,c]=f.default.useState(a.state),[d,e]=(0,f.useOptimistic)(b),h=(0,f.useMemo)(()=>d,[d]);return(0,g.isThenable)(h)?(0,f.use)(h):h}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},998029,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"callServer",{enumerable:!0,get:function(){return g}});let d=a.r(374637),e=a.r(884864),f=a.r(239624);async function g(a,b){return new Promise((c,g)=>{(0,d.startTransition)(()=>{(0,f.dispatchAppRouterAction)({type:e.ACTION_SERVER_ACTION,actionId:a,actionArgs:b,resolve:c,reject:g})})})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},186592,(a,b,c)=>{"use strict";let d;Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"findSourceMapURL",{enumerable:!0,get:function(){return d}});("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},780410,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={callServer:function(){return f.callServer},createServerReference:function(){return h.createServerReference},findSourceMapURL:function(){return g.findSourceMapURL}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(998029),g=a.r(186592),h=a.r(499636)},668556,a=>{"use strict";var b=a.i(862306),c=a.i(374637);let d=c.createContext(void 0);a.s(["useToolbarRootContext",0,function(a){let e=c.useContext(d);if(void 0===e&&!a)throw Error((0,b.default)(69));return e}])},607219,a=>{"use strict";let b=(0,a.i(711796).default)("archive",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]]);a.s(["Archive",0,b],607219)},350739,a=>{"use strict";let b=(0,a.i(711796).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);a.s(["FileText",0,b],350739)},429246,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["Textarea",0,function({className:a,...d}){return(0,b.jsx)("textarea",{"data-slot":"textarea",className:(0,c.cn)("flex field-sizing-content min-h-16 w-full min-w-0 rounded-lg border border-input bg-transparent px-2.5 py-2 text-base transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",a),...d})}])},975231,a=>{"use strict";let b=(0,a.i(711796).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);a.s(["Trash2",0,b],975231)},774881,a=>{"use strict";let b=(0,a.i(711796).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);a.s(["Plus",0,b],774881)},690251,a=>{"use strict";let b=(0,a.i(711796).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);a.s(["Pencil",0,b],690251)},595999,1479,a=>{"use strict";var b=a.i(728778),c=a.i(374637),d=a.i(616335),e=a.i(192369),f=a.i(699570);class g extends c.Component{constructor(a){super(a),this.state={hasError:!1,error:null}}static getDerivedStateFromError(a){return{hasError:!0,error:a}}componentDidCatch(a,b){console.error("[ErrorBoundary]",a,b)}render(){return this.state.hasError?this.props.fallback?this.props.fallback:(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 p-8 text-center",children:[(0,b.jsx)(d.AlertCircle,{className:"h-8 w-8 text-destructive"}),(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"text-sm font-medium text-foreground",children:"Something went wrong"}),(0,b.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:this.state.error?.message??"An unexpected error occurred"})]}),(0,b.jsxs)(f.Button,{variant:"outline",onClick:()=>this.setState({hasError:!1,error:null}),children:[(0,b.jsx)(e.RefreshCw,{className:"mr-2 h-3.5 w-3.5"}),"Retry"]})]}):this.props.children}}a.s(["ErrorBoundary",0,g],595999);var h=a.i(780410);let i=(0,h.createServerReference)("00fbc689cb0a02219ea14de9ae0e6a836b6ccd9815",h.callServer,void 0,h.findSourceMapURL,"getActualWsPort");a.s(["getActualWsPort",0,i],1479)},940271,a=>{"use strict";var b=a.i(374637),c=(a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=["light","dark"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c="class"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d),i.classList.add(f&&f[b]?f[b]:b)):i.setAttribute(a,b)}),c=b,h&&j.includes(c)&&(i.style.colorScheme=c)}if(d)k(d);else try{let a=localStorage.getItem(b)||c,d=g&&"system"===a?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":a;k(d)}catch(a){}},d=["light","dark"],e="(prefers-color-scheme: dark)",f=b.createContext(void 0),g={setTheme:a=>{},themes:[]},h=["light","dark"],i=({forcedTheme:a,disableTransitionOnChange:c=!1,enableSystem:g=!0,enableColorScheme:i=!0,storageKey:n="theme",themes:o=h,defaultTheme:p=g?"system":"light",attribute:q="data-theme",value:r,children:s,nonce:t,scriptProps:u})=>{let[v,w]=b.useState(()=>k(n,p)),[x,y]=b.useState(()=>"system"===v?m():v),z=r?Object.values(r):o,A=b.useCallback(a=>{let b=a;if(!b)return;"system"===a&&g&&(b=m());let e=r?r[b]:b,f=c?l(t):null,h=document.documentElement,j=a=>{"class"===a?(h.classList.remove(...z),e&&h.classList.add(e)):a.startsWith("data-")&&(e?h.setAttribute(a,e):h.removeAttribute(a))};if(Array.isArray(q)?q.forEach(j):j(q),i){let a=d.includes(p)?p:null,c=d.includes(b)?b:a;h.style.colorScheme=c}null==f||f()},[t]),B=b.useCallback(a=>{let b="function"==typeof a?a(v):a;w(b);try{localStorage.setItem(n,b)}catch(a){}},[v]),C=b.useCallback(b=>{y(m(b)),"system"===v&&g&&!a&&A("system")},[v,a]);b.useEffect(()=>{let a=window.matchMedia(e);return a.addListener(C),C(a),()=>a.removeListener(C)},[C]),b.useEffect(()=>{let a=a=>{a.key===n&&(a.newValue?w(a.newValue):B(p))};return window.addEventListener("storage",a),()=>window.removeEventListener("storage",a)},[B]),b.useEffect(()=>{A(null!=a?a:v)},[a,v]);let D=b.useMemo(()=>({theme:v,setTheme:B,forcedTheme:a,resolvedTheme:"system"===v?x:v,themes:g?[...o,"system"]:o,systemTheme:g?x:void 0}),[v,B,a,x,g,o]);return b.createElement(f.Provider,{value:D},b.createElement(j,{forcedTheme:a,storageKey:n,attribute:q,enableSystem:g,enableColorScheme:i,defaultTheme:p,value:r,themes:o,nonce:t,scriptProps:u}),s)},j=b.memo(({forcedTheme:a,storageKey:d,attribute:e,enableSystem:f,enableColorScheme:g,defaultTheme:h,value:i,themes:j,nonce:k,scriptProps:l})=>{let m=JSON.stringify([e,d,h,a,j,i,f,g]).slice(1,-1);return b.createElement("script",{...l,suppressHydrationWarning:!0,nonce:k,dangerouslySetInnerHTML:{__html:`(${c.toString()})(${m})`}})}),k=(a,b)=>{},l=a=>{let b=document.createElement("style");return a&&b.setAttribute("nonce",a),b.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(b),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(b)},1)}},m=a=>(a||(a=window.matchMedia(e)),a.matches?"dark":"light");a.s(["ThemeProvider",0,a=>b.useContext(f)?b.createElement(b.Fragment,null,a.children):b.createElement(i,{...a}),"useTheme",0,()=>{var a;return null!=(a=b.useContext(f))?a:g}])},43312,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("408c8af808f6135a2406e34f132c3d198b9be882e3",b.callServer,void 0,b.findSourceMapURL,"installExtension");a.s(["installExtension",0,c])},191117,a=>{"use strict";let b=(0,a.i(711796).default)("file-code",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}]]);a.s(["FileCode",0,b],191117)},953093,a=>{"use strict";var b=a.i(573242),c=a.i(191117);let d={rg:{id:"rg",name:"代码搜索 (ripgrep)",description:"基于 rg 的全文代码搜索",icon:b.Search,sizeMB:5,homepageUrl:"https://github.com/BurntSushi/ripgrep#installation",manualInstall:!0},monaco:{id:"monaco",name:"代码编辑器 (Monaco)",description:"VS Code 同款 Web 编辑器",icon:c.FileCode,sizeMB:15,homepageUrl:"https://microsoft.github.io/monaco-editor/"}},e=[d.rg,d.monaco];a.s(["listExtensionMetadata",0,function(){return e}])},80021,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("6036b3b4879c62e8bbc7f6ec5b55c8eb61b230d299",b.callServer,void 0,b.findSourceMapURL,"setConfigValue");a.s(["setConfigValue",0,c])},761052,86354,a=>{"use strict";var b=a.i(711796);let c=(0,b.default)("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);a.s(["Sun",0,c],761052);let d=(0,b.default)("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]);a.s(["Moon",0,d],86354)},884664,a=>{"use strict";let b=(0,a.i(711796).default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);a.s(["default",0,b])},54384,a=>{"use strict";var b=a.i(758349);a.s(["X",()=>b.default])},573242,a=>{"use strict";var b=a.i(648717);a.s(["Search",()=>b.default])},146758,745539,a=>{"use strict";let b=(0,a.i(711796).default)("folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);a.s(["Folder",0,b],146758);var c=a.i(219551);a.s(["ChevronUp",()=>c.default],745539)},192369,a=>{"use strict";let b=(0,a.i(711796).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);a.s(["RefreshCw",0,b],192369)},622945,a=>{"use strict";let b=(0,a.i(711796).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);a.s(["default",0,b])},87309,a=>{"use strict";var b=a.i(728778),c=a.i(374637),d=a.i(780410);let e=(0,d.createServerReference)("4008d181ffbd4615d32b560bd561eab2a62538ea7f",d.callServer,void 0,d.findSourceMapURL,"checkExtension");var f=a.i(43312);let g=(0,d.createServerReference)("40cd2b5cf265781af5b411618c378f7ba29ac89115",d.callServer,void 0,d.findSourceMapURL,"uninstallExtension");var h=a.i(953093);let i={installed:!1},j=(0,c.createContext)(null);a.s(["ExtensionContext",0,j,"ExtensionProvider",0,function({children:a,initialStatus:d}){let[k,l]=(0,c.useState)(()=>d??Object.fromEntries((0,h.listExtensionMetadata)().map(a=>[a.id,i]))),[m,n]=(0,c.useState)(new Set),o=(0,c.useRef)(new Set),p=(0,c.useCallback)(async a=>{let b=await e(a);l(c=>({...c,[a]:b}))},[]),q=(0,c.useCallback)(async a=>{if(o.current.has(a))return{success:!1,error:"install already in progress"};o.current.add(a),n(b=>{let c=new Set(b);return c.add(a),c});try{let b=await (0,f.installExtension)(a);return b.success&&await p(a),b}finally{o.current.delete(a),n(b=>{let c=new Set(b);return c.delete(a),c})}},[p]),r=(0,c.useCallback)(async a=>{if(o.current.has(a))return{success:!1,error:"operation already in progress"};o.current.add(a),n(b=>{let c=new Set(b);return c.add(a),c});try{let b=await g(a);return b.success&&await p(a),b}finally{o.current.delete(a),n(b=>{let c=new Set(b);return c.delete(a),c})}},[p]),s=(0,c.useMemo)(()=>({statusMap:k,loading:!1,installing:m,refresh:p,install:q,uninstall:r}),[k,m,p,q,r]);return(0,b.jsx)(j.Provider,{value:s,children:a})}],87309)},369289,a=>{"use strict";let b=(0,a.i(711796).default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Settings",0,b],369289)},437492,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("601eafdd454c31272bbc215e55a26b5c6618f49b7b",b.callServer,void 0,b.findSourceMapURL,"getConfigValue");a.s(["getConfigValue",0,c])},190076,a=>{"use strict";let b=(0,a.i(711796).default)("bell",[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]]);a.s(["Bell",0,b],190076)},563658,a=>{"use strict";var b,c=a.i(728778);a.s([],725980),a.i(725980);var d=a.i(374637),e=a.i(327104),f=a.i(74686),g=a.i(140988),h=a.i(830067),i=a.i(420074),j=a.i(535011),k=a.i(213200),l=a.i(475295),m=a.i(366752),n=a.i(19926),o=a.i(862306);let p=d.createContext(void 0);var q=a.i(258802);let r=((b={}).checked="data-checked",b.unchecked="data-unchecked",b.disabled="data-disabled",b.readonly="data-readonly",b.required="data-required",b.valid="data-valid",b.invalid="data-invalid",b.touched="data-touched",b.dirty="data-dirty",b.filled="data-filled",b.focused="data-focused",b),s={...q.fieldValidityMapping,checked:a=>a?{[r.checked]:""}:{[r.unchecked]:""}};var t=a.i(233619),u=a.i(166388),v=a.i(77469),w=a.i(584395),x=a.i(303722),y=a.i(622047),z=a.i(100737),A=a.i(706092);let B=d.forwardRef(function(a,b){let{checked:o,className:q,defaultChecked:r,"aria-labelledby":B,id:C,inputRef:D,name:E,nativeButton:F=!1,onCheckedChange:G,readOnly:H=!1,required:I=!1,disabled:J=!1,render:K,uncheckedValue:L,value:M,...N}=a,{clearErrors:O}=(0,v.useFormContext)(),{state:P,setTouched:Q,setDirty:R,validityData:S,setFilled:T,setFocused:U,shouldValidateOnChange:V,validationMode:W,disabled:X,name:Y,validation:Z}=(0,u.useFieldRootContext)(),{labelId:$}=(0,w.useLabelableContext)(),_=X||J,aa=Y??E,ab=(0,f.useStableCallback)(G),ac=d.useRef(null),ad=(0,g.useMergedRefs)(ac,D,Z.inputRef),ae=d.useRef(null),af=(0,m.useBaseUiId)(),ag=(0,x.useLabelableId)({id:C,implicit:!1,controlRef:ae}),ah=F?void 0:ag,[ai,aj]=(0,e.useControlled)({controlled:o,default:!!r,name:"Switch",state:"checked"});(0,t.useField)({id:af,commit:Z.commit,value:ai,controlRef:ae,name:aa,getValue:()=>ai}),(0,h.useIsoLayoutEffect)(()=>{ac.current&&T(ac.current.checked)},[ac,T]),(0,A.useValueChanged)(ai,()=>{O(aa),R(ai!==S.initialValue),T(ai),V()?Z.commit(ai):Z.commit(ai,!0)});let{getButtonProps:ak,buttonRef:al}=(0,n.useButton)({disabled:_,native:F}),am=function(a,b,c,e=!0,f){let[g,i]=d.useState(),j=(0,m.useBaseUiId)(f?`${f}-label`:void 0),k=a??b??g;return(0,h.useIsoLayoutEffect)(()=>{let d=a||b||!e?void 0:function(a,b){let c=function(a){if(!a)return;let b=a.parentElement;if(b&&"LABEL"===b.tagName)return b;let c=a.id;if(c){let b=a.nextElementSibling;if(b&&b.htmlFor===c)return b}let d=a.labels;return d&&d[0]}(a);if(c)return!c.id&&b&&(c.id=b),c.id||void 0}(c.current,j);g!==d&&i(d)}),k}(B,$,ac,!F,ah),an=d.useMemo(()=>(0,l.mergeProps)({checked:ai,disabled:_,id:ah,name:aa,required:I,style:aa?i.visuallyHiddenInput:i.visuallyHidden,tabIndex:-1,type:"checkbox","aria-hidden":!0,ref:ad,onChange(a){if(a.nativeEvent.defaultPrevented)return;let b=a.target.checked,c=(0,y.createChangeEventDetails)(z.REASONS.none,a.nativeEvent);ab?.(b,c),c.isCanceled||aj(b)},onFocus(){ae.current?.focus()}},Z.getInputValidationProps,void 0!==M?{value:M}:j.EMPTY_OBJECT),[ai,_,ad,ah,aa,ab,I,aj,Z,M]),ao=d.useMemo(()=>({...P,checked:ai,disabled:_,readOnly:H,required:I}),[P,ai,_,H,I]),ap=(0,k.useRenderElement)("span",a,{state:ao,ref:[b,ae,al],props:[{id:F?ag:af,role:"switch","aria-checked":ai,"aria-readonly":H||void 0,"aria-required":I||void 0,"aria-labelledby":am,onFocus(){_||U(!0)},onBlur(){let a=ac.current;a&&!_&&(Q(!0),U(!1),"onBlur"===W&&Z.commit(a.checked))},onClick(a){H||_||(a.preventDefault(),ac.current?.dispatchEvent(new PointerEvent("click",{bubbles:!0,shiftKey:a.shiftKey,ctrlKey:a.ctrlKey,altKey:a.altKey,metaKey:a.metaKey})))}},Z.getValidationProps,N,ak],stateAttributesMapping:s});return(0,c.jsxs)(p.Provider,{value:ao,children:[ap,!ai&&aa&&void 0!==L&&(0,c.jsx)("input",{type:"hidden",name:aa,value:L}),(0,c.jsx)("input",{...an})]})}),C=d.forwardRef(function(a,b){let{render:c,className:e,...f}=a,{state:g}=(0,u.useFieldRootContext)(),h=function(){let a=d.useContext(p);if(void 0===a)throw Error((0,o.default)(63));return a}(),i={...g,...h};return(0,k.useRenderElement)("span",a,{state:i,ref:b,stateAttributesMapping:s,props:f})});a.s(["Root",0,B,"Thumb",0,C],88348);var D=a.i(88348),D=D,E=a.i(368114);a.s(["Switch",0,function({className:a,size:b="default",...d}){return(0,c.jsx)(D.Root,{"data-slot":"switch","data-size":b,className:(0,E.cn)("peer group/switch relative inline-flex shrink-0 items-center rounded-full border border-transparent transition-all outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-[size=default]:h-[18.4px] data-[size=default]:w-[32px] data-[size=sm]:h-[14px] data-[size=sm]:w-[24px] dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-primary data-unchecked:bg-input dark:data-unchecked:bg-input/80 data-disabled:cursor-not-allowed data-disabled:opacity-50",a),...d,children:(0,c.jsx)(D.Thumb,{"data-slot":"switch-thumb",className:"pointer-events-none block rounded-full bg-background ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] dark:data-checked:bg-primary-foreground group-data-[size=default]/switch:data-unchecked:translate-x-0 group-data-[size=sm]/switch:data-unchecked:translate-x-0 dark:data-unchecked:bg-foreground"})})}],563658)},881107,a=>{"use strict";let b=(0,a.i(711796).default)("tag",[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]]);a.s(["Tag",0,b],881107)}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0ntdmyn._.js.map
@@ -1,4 +0,0 @@
1
- module.exports=[862014,223355,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40dfacb6aee2291195a9eab672bc75dc55195ff2d7",b.callServer,void 0,b.findSourceMapURL,"stopPtyExecution");a.s(["stopPtyExecution",0,c],862014);let d=(0,b.createServerReference)("60e55417f50b83c2d492f329e40df9e60928ded9c5",b.callServer,void 0,b.findSourceMapURL,"resumePtyExecution");a.s(["resumePtyExecution",0,d],223355)},10390,a=>{"use strict";var b=a.i(421992);a.s(["ChevronRight",()=>b.default])},747798,a=>{"use strict";let b=(0,a.i(711796).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);a.s(["RotateCcw",0,b],747798)},579834,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["EmptyState",0,function({icon:a,title:d,description:e,action:f,className:g}){return(0,b.jsxs)("div",{className:(0,c.cn)("flex h-48 flex-col items-center justify-center gap-2 text-center",g),children:[a&&(0,b.jsx)(a,{className:"h-10 w-10 text-muted-foreground/40"}),(0,b.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:d}),e&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground/60",children:e}),f&&(0,b.jsx)("div",{className:"mt-2",children:f})]})}])},509405,a=>{"use strict";let b=(0,a.i(711796).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],509405)},913284,468862,a=>{"use strict";var b=a.i(884664);a.s(["CheckCircle2",()=>b.default],913284);let c=(0,a.i(711796).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"}]]);a.s(["XCircle",0,c],468862)},811344,a=>{"use strict";var b=a.i(622945);a.s(["AlertTriangle",()=>b.default])},830416,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40ceddd66888c984655eae0ed43100f49a0619a5ba",b.callServer,void 0,b.findSourceMapURL,"getPrompts");a.s(["getPrompts",0,c])},627141,a=>{"use strict";var b=a.i(374637),c=a.i(87309);a.s(["useExtension",0,function(a){let d=(0,b.useContext)(c.ExtensionContext);if(!d)throw Error("useExtension must be used inside <ExtensionProvider>");return{status:d.statusMap[a],loading:d.loading,isInstalling:d.installing.has(a),install:()=>d.install(a),uninstall:()=>d.uninstall(a),refresh:()=>d.refresh(a)}}])},394856,665323,910957,813777,185300,317825,834978,213169,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("60bbd8753bc6268f91aa205ea252e0351085730010",b.callServer,void 0,b.findSourceMapURL,"listDirectory");a.s(["listDirectory",0,c],394856);let d=(0,b.createServerReference)("7029b6103fbe1968d1b0b082cb167f3ab63f85c8e7",b.callServer,void 0,b.findSourceMapURL,"getGitStatus");a.s(["getGitStatus",0,d],665323);let e=(0,b.createServerReference)("60344dd1b5883fdcbb9749212b58be6080c2c42203",b.callServer,void 0,b.findSourceMapURL,"createFile");a.s(["createFile",0,e],910957);let f=(0,b.createServerReference)("606a06462e3af7c74e864a909697d27731d8a87c3e",b.callServer,void 0,b.findSourceMapURL,"createDirectory");a.s(["createDirectory",0,f],813777);let g=(0,b.createServerReference)("70844b4abe5d25a413fabd3ed6eb5bb190e85af571",b.callServer,void 0,b.findSourceMapURL,"renameEntry");a.s(["renameEntry",0,g],185300);let h=(0,b.createServerReference)("604f8b75f2decd2a7a20f763e673a814b5d5e2690c",b.callServer,void 0,b.findSourceMapURL,"deleteEntry");a.s(["deleteEntry",0,h],317825);let i=(0,b.createServerReference)("408704e627541daf4d05ef43afd2013438020e75bd",b.callServer,void 0,b.findSourceMapURL,"listAllFiles");a.s(["listAllFiles",0,i],834978);let j=(0,b.createServerReference)("60a0f6bffb9b672f3a31436519d972b643f5f14ce4",b.callServer,void 0,b.findSourceMapURL,"readFileContent");a.s(["readFileContent",0,j],213169)},404551,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("706acbe6de26d9f94132b725fbb4d7d8daf29f5942",b.callServer,void 0,b.findSourceMapURL,"writeFileContent");a.s(["writeFileContent",0,c])},165616,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("60d1aea68a0ace3983882744394cabff7f08178d13",b.callServer,void 0,b.findSourceMapURL,"readFileContentForce");a.s(["readFileContentForce",0,c])},786304,a=>{"use strict";var b=a.i(475295),c=a.i(213200),d=a.i(142261),e=a.i(368114);let f=(0,d.cva)("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline"}},defaultVariants:{variant:"default"}});a.s(["Badge",0,function({className:a,variant:d="default",render:g,...h}){var i;return i={defaultTagName:"span",props:(0,b.mergeProps)({className:(0,e.cn)(f({variant:d}),a)},h),render:g,state:{slot:"badge",variant:d}},(0,c.useRenderElement)(i.defaultTagName??"div",i,i)}],786304)},204847,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("403d1df8a142d93b5320c6f253ba669b1176f03d16",b.callServer,void 0,b.findSourceMapURL,"openInTerminal");a.s(["openInTerminal",0,c])},269280,a=>{"use strict";let b=(0,a.i(711796).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",0,b],269280)},648512,a=>{"use strict";let b=(0,a.i(711796).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",0,b],648512)},625892,939859,a=>{"use strict";var b=a.i(711796);let c=(0,b.default)("folder-search",[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]]);a.s(["FolderSearch",0,c],625892);let d=(0,b.default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);a.s(["Code",0,d],939859)},551578,a=>{"use strict";var b=a.i(728778);let c=(0,a.i(711796).default)("milestone",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M12 3v3",key:"1n5kay"}],["path",{d:"M18.172 6a2 2 0 0 1 1.414.586l2.06 2.06a1.207 1.207 0 0 1 0 1.708l-2.06 2.06a2 2 0 0 1-1.414.586H4a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1z",key:"8gz4t4"}]]);var d=a.i(951192);let e=["bg-sky-500/20 text-sky-300 border border-sky-500/30","bg-amber-500/20 text-amber-300 border border-amber-500/30","bg-violet-500/20 text-violet-300 border border-violet-500/30","bg-emerald-500/20 text-emerald-300 border border-emerald-500/30","bg-rose-500/20 text-rose-300 border border-rose-500/30","bg-cyan-500/20 text-cyan-300 border border-cyan-500/30","bg-indigo-500/20 text-indigo-300 border border-indigo-500/30"];function f(a){return e[function(a){let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)>>>0;return b}(a)%e.length]}let g={PLANNED:"bg-slate-500/20 text-slate-300 border border-slate-500/30",ACTIVE:"bg-emerald-500/20 text-emerald-300 border border-emerald-500/30",RELEASED:"bg-zinc-500/20 text-zinc-400 border border-zinc-500/30"};a.s(["TaskVersionTag",0,function({number:a,name:d,showName:e=!1,className:f="",title:g}){return(0,b.jsxs)("span",{className:`inline-flex items-center gap-1 rounded-md border border-border bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground ${f}`,title:g??(d?`${a} \xb7 ${d}`:a),children:[(0,b.jsx)(c,{className:"h-2.5 w-2.5 shrink-0"}),(0,b.jsx)("span",{className:"font-mono",children:a}),e&&d?(0,b.jsx)("span",{className:"max-w-[140px] truncate",children:d}):null]})},"VersionStatusBadge",0,function({status:a}){let{t:c}=(0,d.useI18n)();return(0,b.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${g[a]}`,children:c(`version.status.${a}`)})},"VersionTypeBadge",0,function({name:a}){let{t:c}=(0,d.useI18n)();return a?(0,b.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${f(a)}`,children:a}):(0,b.jsx)("span",{className:"inline-flex items-center rounded-full border border-border bg-muted/40 px-2 py-0.5 text-xs font-medium text-muted-foreground",children:c("version.type.uncategorized")})},"typeBadgeColor",0,f],551578)},528277,707582,165614,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("4010962b6e3809e9ec6adcc5e4727e5afa521b684c",b.callServer,void 0,b.findSourceMapURL,"openInFileManager");a.s(["openInFileManager",0,c],528277);let d=(0,b.createServerReference)("40ffbf43f53a51dbec34e07f44c777d2eac35a0385",b.callServer,void 0,b.findSourceMapURL,"openInEditor");a.s(["openInEditor",0,d],707582);let e=(0,a.i(711796).default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);a.s(["PlayCircle",0,e],165614)},394869,a=>{"use strict";let b=(0,a.i(711796).default)("git-compare",[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M13 6h3a2 2 0 0 1 2 2v7",key:"1yeb86"}],["path",{d:"M11 18H8a2 2 0 0 1-2-2V9",key:"19pyzm"}]]);a.s(["GitCompare",0,b],394869)},207339,a=>{"use strict";let b=(0,a.i(711796).default)("git-commit-horizontal",[["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12",key:"1dyftd"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12",key:"oup4p8"}]]);a.s(["GitCommitHorizontal",0,b],207339)},945513,(a,b,c)=>{b.exports=a=>{if(!a||"string"!=typeof a||a.match(/^\s+$/))return[];let b=a.split(`
2
- `);if(0===b.length)return[];let c=[],d=null,e=null,g=0,i=0,j=null,k=a=>{let[b,e]=f(a)??[];d={chunks:[],deletions:0,additions:0,from:b,to:e},c.push(d)},l=()=>{(!d||d.chunks.length)&&k()},m=a=>{if(!e)return;let[b]=e.changes.slice(-1);e.changes.push({type:b.type,[b.type]:!0,ln1:b.ln1,ln2:b.ln2,ln:b.ln,content:a})},n=[[/^diff\s/,k],[/^new file mode (\d+)$/,(a,b)=>{l(),d.new=!0,d.newMode=b[1],d.from="/dev/null"}],[/^deleted file mode (\d+)$/,(a,b)=>{l(),d.deleted=!0,d.oldMode=b[1],d.to="/dev/null"}],[/^old mode (\d+)$/,(a,b)=>{l(),d.oldMode=b[1]}],[/^new mode (\d+)$/,(a,b)=>{l(),d.newMode=b[1]}],[/^index\s[\da-zA-Z]+\.\.[\da-zA-Z]+(\s(\d+))?$/,(a,b)=>{l(),d.index=a.split(" ").slice(1),b[1]&&(d.oldMode=d.newMode=b[1].trim())}],[/^---\s/,a=>{l(),d.from=h(a)}],[/^\+\+\+\s/,a=>{l(),d.to=h(a)}],[/^@@\s+-(\d+),?(\d+)?\s+\+(\d+),?(\d+)?\s@@/,(a,b)=>{d||k(a);let[c,f,h,l]=b.slice(1);g=+c,i=+h,e={content:a,changes:[],oldStart:+c,oldLines:+(f||1),newStart:+h,newLines:+(l||1)},j={oldLines:+(f||1),newLines:+(l||1)},d.chunks.push(e)}],[/^\$/,m]],o=[[/^\$/,m],[/^-/,a=>{e&&(e.changes.push({type:"del",del:!0,ln:g++,content:a}),d.deletions++,j.oldLines--)}],[/^\+/,a=>{e&&(e.changes.push({type:"add",add:!0,ln:i++,content:a}),d.additions++,j.newLines--)}],[/^\s*/,a=>{e?.changes.push({type:"normal",normal:!0,ln1:g++,ln2:i++,content:a}),j.oldLines--,j.newLines--}]],p=a=>{j?(a=>{for(let[b,c]of o){let d=a.match(b);if(d){c(a,d);break}}0===j.oldLines&&0===j.newLines&&(j=null)})(a):(a=>{for(let[b,c]of n){let d=a.match(b);if(d){c(a,d);break}}})(a)};for(let a of b)p(a);return c};let d=/(a|i|w|c|o|1|2)\/.*(?=["']? ["']?(b|i|w|c|o|1|2)\/)|(b|i|w|c|o|1|2)\/.*$/g,e=/^(a|b|i|w|c|o|1|2)\//,f=a=>a?.match(d)?.map(a=>a.replace(e,"").replace(/("|')$/,"")),g=/^\\?['"]|\\?['"]$/g,h=a=>{let b=i(a,"-+").trim();return(b=k(b)).replace(g,"").replace(e,"")},i=(a,b)=>{if(a=m(a),!b&&String.prototype.trimLeft)return a.trimLeft();let c=l(b);return a.replace(RegExp(`^${c}+`),"")},j=/\t.*|\d{4}-\d\d-\d\d\s\d\d:\d\d:\d\d(.\d+)?\s(\+|-)\d\d\d\d/,k=a=>{let b=j.exec(a);return b&&(a=a.substring(0,b.index).trim()),a},l=a=>null==a?"\\s":a instanceof RegExp?a.source:`[${m(a).replace(/([.*+?^=!:${}()|[\]/\\])/g,"\\$1")}]`,m=a=>`${a??""}`},514872,a=>{"use strict";var b=a.i(945513);function c(a){return a.replace(/\r\n/g,"\n")}a.s(["normalizeLF",0,c,"parseUnifiedDiff",0,function(a){return(0,b.default)(c(a))}])},742231,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_actions_file-actions_ts_0gcvqwm._.js"].map(b=>a.l(b))).then(()=>b(610024)))},672257,a=>{a.v(b=>Promise.all(["server/chunks/ssr/0pb0_@monaco-editor_react_dist_index_mjs_0dkxa~o._.js"].map(b=>a.l(b))).then(()=>b(566310)))}];
3
-
4
- //# sourceMappingURL=_09b8zgw._.js.map