tower-studio 0.2.45 → 0.2.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (494) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-path-routes-manifest.json +1 -0
  3. package/.next/standalone/.next/build-manifest.json +3 -3
  4. package/.next/standalone/.next/prerender-manifest.json +3 -3
  5. package/.next/standalone/.next/routes-manifest.json +8 -0
  6. package/.next/standalone/.next/server/app/_global-error/page.js +1 -1
  7. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  8. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  11. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  12. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  13. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  14. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  15. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/.next/standalone/.next/server/app/_not-found/page/react-loadable-manifest.json +3 -3
  17. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +129 -81
  18. package/.next/standalone/.next/server/app/_not-found/page.js +7 -8
  19. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/.next/server/app/api/adapters/test/route.js +2 -2
  22. package/.next/standalone/.next/server/app/api/adapters/test/route.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/api/browse-fs/route.js +1 -1
  24. package/.next/standalone/.next/server/app/api/browse-fs/route.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/api/files/assets/[projectId]/[filename]/route.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/api/git/route.js +1 -1
  27. package/.next/standalone/.next/server/app/api/git/route.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/api/internal/assets/[projectId]/[filename]/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/internal/assets/reveal/route.js.nft.json +1 -1
  30. package/.next/standalone/.next/server/app/api/internal/assistant/attachments/route.js +2 -4
  31. package/.next/standalone/.next/server/app/api/internal/assistant/attachments/route.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/api/internal/assistant/chat/route.js +2 -2
  33. package/.next/standalone/.next/server/app/api/internal/assistant/chat/route.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/api/internal/assistant/route.js +5 -4
  35. package/.next/standalone/.next/server/app/api/internal/assistant/route.js.nft.json +1 -1
  36. package/.next/standalone/.next/server/app/api/internal/assistant/sessions/route.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/api/internal/backup/import/route.js +3 -5
  38. package/.next/standalone/.next/server/app/api/internal/backup/import/route.js.nft.json +1 -1
  39. package/.next/standalone/.next/server/app/api/internal/cache/[...segments]/route.js.nft.json +1 -1
  40. package/.next/standalone/.next/server/app/api/internal/harness/ask/route.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/api/internal/harness/notify/route.js.nft.json +1 -1
  42. package/.next/standalone/.next/server/app/api/internal/harness/pending/route.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/api/internal/harness/reply/route.js +4 -4
  44. package/.next/standalone/.next/server/app/api/internal/harness/reply/route.js.nft.json +1 -1
  45. package/.next/standalone/.next/server/app/api/internal/hooks/install/route.js.nft.json +1 -1
  46. package/.next/standalone/.next/server/app/api/internal/hooks/session/route.js.nft.json +1 -1
  47. package/.next/standalone/.next/server/app/api/internal/hooks/stop/route.js +1 -1
  48. package/.next/standalone/.next/server/app/api/internal/hooks/stop/route.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/api/internal/hooks/upload/route.js +1 -1
  50. package/.next/standalone/.next/server/app/api/internal/hooks/upload/route.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/app/api/internal/monaco/[...path]/route.js.nft.json +1 -1
  52. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/buffer/route.js +1 -1
  53. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/buffer/route.js.nft.json +1 -1
  54. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/input/route.js +1 -1
  55. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/input/route.js.nft.json +1 -1
  56. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/paste-image/route.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/resume/route.js +4 -4
  58. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/resume/route.js.nft.json +1 -1
  59. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/start/route.js +4 -4
  60. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/start/route.js.nft.json +1 -1
  61. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/stop/route.js +4 -4
  62. package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/stop/route.js.nft.json +1 -1
  63. package/.next/standalone/.next/server/app/api/tasks/[taskId]/diff/route.js +1 -1
  64. package/.next/standalone/.next/server/app/api/tasks/[taskId]/diff/route.js.nft.json +1 -1
  65. package/.next/standalone/.next/server/app/api/tasks/[taskId]/diff-patch/route.js +1 -1
  66. package/.next/standalone/.next/server/app/api/tasks/[taskId]/diff-patch/route.js.nft.json +1 -1
  67. package/.next/standalone/.next/server/app/api/tasks/[taskId]/merge/route.js +5 -3
  68. package/.next/standalone/.next/server/app/api/tasks/[taskId]/merge/route.js.nft.json +1 -1
  69. package/.next/standalone/.next/server/app/harness/page/react-loadable-manifest.json +3 -3
  70. package/.next/standalone/.next/server/app/harness/page/server-reference-manifest.json +152 -104
  71. package/.next/standalone/.next/server/app/harness/page.js +7 -8
  72. package/.next/standalone/.next/server/app/harness/page.js.nft.json +1 -1
  73. package/.next/standalone/.next/server/app/harness/page_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/missions/page/react-loadable-manifest.json +3 -2
  75. package/.next/standalone/.next/server/app/missions/page/server-reference-manifest.json +246 -162
  76. package/.next/standalone/.next/server/app/missions/page.js +10 -10
  77. package/.next/standalone/.next/server/app/missions/page.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/app/missions/page_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/onboarding/page/react-loadable-manifest.json +3 -3
  80. package/.next/standalone/.next/server/app/onboarding/page/server-reference-manifest.json +129 -81
  81. package/.next/standalone/.next/server/app/onboarding/page.js +7 -8
  82. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  83. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/page/react-loadable-manifest.json +3 -3
  85. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +129 -81
  86. package/.next/standalone/.next/server/app/page.js +7 -8
  87. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  88. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  89. package/.next/standalone/.next/server/app/settings/page/react-loadable-manifest.json +3 -3
  90. package/.next/standalone/.next/server/app/settings/page/server-reference-manifest.json +225 -141
  91. package/.next/standalone/.next/server/app/settings/page.js +9 -11
  92. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  93. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page/react-loadable-manifest.json +3 -3
  95. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page/server-reference-manifest.json +258 -222
  96. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page.js +8 -9
  97. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page.js.nft.json +1 -1
  98. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page/react-loadable-manifest.json +3 -3
  100. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page/server-reference-manifest.json +231 -195
  101. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page.js +8 -9
  102. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page.js.nft.json +1 -1
  103. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page/app-paths-manifest.json +3 -0
  105. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page/build-manifest.json +18 -0
  106. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page/next-font-manifest.json +11 -0
  107. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page/react-loadable-manifest.json +18 -0
  108. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page/server-reference-manifest.json +401 -0
  109. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page.js +24 -0
  110. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page.js.nft.json +1 -0
  111. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/groups/page_client-reference-manifest.js +3 -0
  112. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page/react-loadable-manifest.json +3 -3
  113. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page/server-reference-manifest.json +216 -180
  114. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page.js +8 -9
  115. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page.js.nft.json +1 -1
  116. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page/react-loadable-manifest.json +3 -3
  118. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page/server-reference-manifest.json +243 -195
  119. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page.js +9 -11
  120. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page.js.nft.json +1 -1
  121. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page_client-reference-manifest.js +1 -1
  122. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/react-loadable-manifest.json +3 -3
  123. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/server-reference-manifest.json +129 -81
  124. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js +8 -9
  125. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js.nft.json +1 -1
  126. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  127. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page/react-loadable-manifest.json +3 -3
  128. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page/server-reference-manifest.json +215 -167
  129. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page.js +8 -9
  130. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page.js.nft.json +1 -1
  131. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page_client-reference-manifest.js +1 -1
  132. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/react-loadable-manifest.json +4 -4
  133. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/server-reference-manifest.json +269 -221
  134. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js +10 -12
  135. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js.nft.json +1 -1
  136. package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page_client-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/app/workspaces/page/react-loadable-manifest.json +3 -3
  138. package/.next/standalone/.next/server/app/workspaces/page/server-reference-manifest.json +159 -123
  139. package/.next/standalone/.next/server/app/workspaces/page.js +7 -8
  140. package/.next/standalone/.next/server/app/workspaces/page.js.nft.json +1 -1
  141. package/.next/standalone/.next/server/app/workspaces/page_client-reference-manifest.js +1 -1
  142. package/.next/standalone/.next/server/app-paths-manifest.json +1 -0
  143. package/.next/standalone/.next/server/chunks/0se9_next_dist_esm_build_templates_app-route_09ikw5j.js +5 -0
  144. package/.next/standalone/.next/server/chunks/0se9_next_dist_esm_build_templates_app-route_0eh8dj_.js +9 -5
  145. package/.next/standalone/.next/server/chunks/0se9_next_dist_esm_build_templates_app-route_0gr2wxq.js +1 -1
  146. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-1~xqo._.js +3 -0
  147. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.3n3t.._.js +3 -0
  148. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.wsvr6._.js +4 -0
  149. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0y3adwk._.js → [root-of-the-server]__0.yf1mx._.js} +2 -2
  150. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0o6i1wy._.js → [root-of-the-server]__00xe-t8._.js} +2 -2
  151. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0vh3112._.js → [root-of-the-server]__02yvm55._.js} +2 -2
  152. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__09arklv._.js → [root-of-the-server]__04-ty51._.js} +2 -2
  153. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0v98a~t._.js → [root-of-the-server]__065hi6e._.js} +2 -2
  154. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0k9rz_z._.js → [root-of-the-server]__06iuq17._.js} +2 -2
  155. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06x1zwj._.js +1 -1
  156. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06~wmlx._.js +3 -0
  157. package/.next/standalone/.next/server/chunks/[root-of-the-server]__092475e._.js +3 -0
  158. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0atap--._.js +3 -0
  159. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0c3je91._.js +3 -0
  160. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dz.knv._.js +3 -0
  161. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ehwsa1._.js +4 -0
  162. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0esywxf._.js +3 -0
  163. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fd9z.r._.js +30 -0
  164. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gcg7i.._.js +3 -0
  165. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iyp~.k._.js +2 -2
  166. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__07xsu6m._.js → [root-of-the-server]__0j7565a._.js} +2 -2
  167. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kkrbn-._.js +4 -0
  168. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0m8t3vi._.js +3 -0
  169. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nv83.p._.js +4 -0
  170. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0squ613._.js +3 -0
  171. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0u8tl88._.js +2 -2
  172. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wugb-9._.js +3 -0
  173. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yeg1kp._.js +4 -0
  174. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zchqv1._.js +43 -0
  175. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_~s0z4._.js → [root-of-the-server]__0zcy11y._.js} +2 -2
  176. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~1-i5h._.js +3 -0
  177. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~ju4-d._.js +1 -1
  178. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10qclz-._.js +3 -0
  179. package/.next/standalone/.next/server/chunks/_02hac5p._.js +25 -2
  180. package/.next/standalone/.next/server/chunks/_0_w835g._.js +4 -0
  181. package/.next/standalone/.next/server/chunks/_0je3dz2._.js +25 -2
  182. package/.next/standalone/.next/server/chunks/_0tidm8l._.js +25 -2
  183. package/.next/standalone/.next/server/chunks/_0zok2an._.js +25 -2
  184. package/.next/standalone/.next/server/chunks/src_05balzk._.js +1 -1
  185. package/.next/standalone/.next/server/chunks/src_0aygchu._.js +1 -1
  186. package/.next/standalone/.next/server/chunks/src_0gif-f5._.js +1 -1
  187. package/.next/standalone/.next/server/chunks/src_0pg9w-x._.js +3 -0
  188. package/.next/standalone/.next/server/chunks/src_0vp6.co._.js +1 -1
  189. package/.next/standalone/.next/server/chunks/src_11k6i~l._.js +1 -1
  190. package/.next/standalone/.next/server/chunks/src_actions_agent-actions_ts_10q9r5b._.js +3 -3
  191. package/.next/standalone/.next/server/chunks/src_lib_0d~1~wz._.js +1 -1
  192. package/.next/standalone/.next/server/chunks/src_lib_0ylel_1._.js +1 -1
  193. package/.next/standalone/.next/server/chunks/src_lib_ai_0xx6y51._.js +1 -1
  194. package/.next/standalone/.next/server/chunks/src_lib_ai_providers_index_ts_0.y.3vp._.js +1 -1
  195. package/.next/standalone/.next/server/chunks/src_lib_config-defaults_ts_10ayktg._.js +1 -1
  196. package/.next/standalone/.next/server/chunks/ssr/0iu._[workspaceId]_projects_[projectId]_versions_version-timeline-client_tsx_07o_kyi._.js +1 -1
  197. package/.next/standalone/.next/server/chunks/ssr/0se9_next_dist_0i5qmqd._.js +1 -1
  198. package/.next/standalone/.next/server/chunks/ssr/0se9_next_dist_esm_build_templates_app-page_04~dhws.js +4 -0
  199. package/.next/standalone/.next/server/chunks/ssr/{0ws9_lucide-react_dist_esm_icons_0r~ty--._.js → 0ws9_lucide-react_dist_esm_icons_0gv_cwy._.js} +2 -2
  200. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-geq20._.js +3 -0
  201. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__051tpij._.js → [root-of-the-server]__0.0m12b._.js} +1 -1
  202. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__096w7g2._.js → [root-of-the-server]__00qzvly._.js} +3 -3
  203. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__01bz3_g._.js +3 -0
  204. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__02~hdzx._.js +3 -0
  205. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0lau3k_._.js → [root-of-the-server]__06sew6r._.js} +3 -3
  206. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0dmjt7o._.js → [root-of-the-server]__07rk6ic._.js} +1 -1
  207. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__090y_.y._.js +3 -0
  208. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0b.ej5q._.js +1 -1
  209. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0fl0l82._.js → [root-of-the-server]__0b6fbjv._.js} +1 -1
  210. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0tb.1li._.js → [root-of-the-server]__0b6hugs._.js} +3 -3
  211. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0vi-5xg._.js → [root-of-the-server]__0br5e7w._.js} +3 -3
  212. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0bx_h2u._.js +4 -0
  213. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0dfqa5a._.js → [root-of-the-server]__0dhq_gl._.js} +1 -1
  214. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0e79g0v._.js +3 -0
  215. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0g2wrd2._.js → [root-of-the-server]__0esg88l._.js} +1 -1
  216. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h_pt4a._.js +3 -0
  217. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0ixgha6._.js → [root-of-the-server]__0hzwoy5._.js} +1 -1
  218. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0iaw1ms._.js +3 -0
  219. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0idkp76._.js +3 -0
  220. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0j4m.1s._.js +3 -0
  221. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0jymb~t._.js +1 -1
  222. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0kmonje._.js +3 -0
  223. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0i0k_zi._.js → [root-of-the-server]__0kqp70x._.js} +1 -1
  224. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0l0~scn._.js +1 -1
  225. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0lh3mlq._.js +3 -0
  226. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0~s8otw._.js → [root-of-the-server]__0m8m7vc._.js} +1 -1
  227. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0muf4wq._.js +49 -0
  228. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0dv.-zu._.js → [root-of-the-server]__0n02kfa._.js} +1 -1
  229. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0n3uc.v._.js +3 -0
  230. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0o5ohqy._.js +47 -0
  231. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0ydiu_y._.js → [root-of-the-server]__0s_q09t._.js} +1 -1
  232. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0s~4y3y._.js +1 -1
  233. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0s~ak20._.js +3 -0
  234. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ta_mpj._.js +30 -0
  235. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0t_zq~v._.js → [root-of-the-server]__0trmndk._.js} +1 -1
  236. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__08etd~v._.js → [root-of-the-server]__0u3~-.g._.js} +1 -1
  237. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0vyl8to._.js +3 -0
  238. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ws0_c1._.js +3 -0
  239. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0x7br99._.js +3 -0
  240. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0xnuz05._.js +5 -0
  241. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zsnp~d._.js +5 -0
  242. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__06s-_gx._.js → [root-of-the-server]__0~edc3d._.js} +1 -1
  243. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0~mhv4m._.js +3 -0
  244. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1013v_g._.js +47 -0
  245. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11fp64w._.js +1 -1
  246. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__123rmn-._.js +30 -0
  247. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0o9jkew._.js → [root-of-the-server]__12viys4._.js} +2 -2
  248. package/.next/standalone/.next/server/chunks/ssr/_0-5.hgb._.js +3 -0
  249. package/.next/standalone/.next/server/chunks/ssr/{_0dye20y._.js → _0-wp_zu._.js} +2 -2
  250. package/.next/standalone/.next/server/chunks/ssr/_0-~9em3._.js +1 -1
  251. package/.next/standalone/.next/server/chunks/ssr/_0..h3hk._.js +1 -1
  252. package/.next/standalone/.next/server/chunks/ssr/{_08bq4g8._.js → _00_h2nx._.js} +2 -2
  253. package/.next/standalone/.next/server/chunks/ssr/_02p-udo._.js +3 -0
  254. package/.next/standalone/.next/server/chunks/ssr/_05~lqg-._.js +4 -0
  255. package/.next/standalone/.next/server/chunks/ssr/_0771b4a._.js +47 -0
  256. package/.next/standalone/.next/server/chunks/ssr/{_078cdw~._.js → _0ak77.u._.js} +3 -3
  257. package/.next/standalone/.next/server/chunks/ssr/{_0ljrvyt._.js → _0ami9yt._.js} +2 -2
  258. package/.next/standalone/.next/server/chunks/ssr/{_12la163._.js → _0awn2mm._.js} +2 -2
  259. package/.next/standalone/.next/server/chunks/ssr/{_09rq08e._.js → _0b660g4._.js} +1 -1
  260. package/.next/standalone/.next/server/chunks/ssr/{_0~6pqk.._.js → _0czsddm._.js} +1 -1
  261. package/.next/standalone/.next/server/chunks/ssr/_0fmko25._.js +3 -0
  262. package/.next/standalone/.next/server/chunks/ssr/_0gomvsp._.js +3 -0
  263. package/.next/standalone/.next/server/chunks/ssr/_0g~p9_x._.js +3 -0
  264. package/.next/standalone/.next/server/chunks/ssr/_0hg~.4w._.js +6 -0
  265. package/.next/standalone/.next/server/chunks/ssr/_0hsuip_._.js +3 -0
  266. package/.next/standalone/.next/server/chunks/ssr/_0hx2o_8._.js +3 -0
  267. package/.next/standalone/.next/server/chunks/ssr/{_0xnn~jq._.js → _0j7m~u6._.js} +1 -1
  268. package/.next/standalone/.next/server/chunks/ssr/{_13_b8hh._.js → _0l6byg1._.js} +1 -1
  269. package/.next/standalone/.next/server/chunks/ssr/_0mmy~98._.js +3 -0
  270. package/.next/standalone/.next/server/chunks/ssr/_0nrxhfb._.js +47 -0
  271. package/.next/standalone/.next/server/chunks/ssr/_0o_c3b2._.js +3 -0
  272. package/.next/standalone/.next/server/chunks/ssr/_0os43sb._.js +1 -1
  273. package/.next/standalone/.next/server/chunks/ssr/{_0h0b46r._.js → _0p5ft59._.js} +1 -1
  274. package/.next/standalone/.next/server/chunks/ssr/_0q2pep_._.js +3 -0
  275. package/.next/standalone/.next/server/chunks/ssr/{_01fdzzv._.js → _0snv7nt._.js} +1 -1
  276. package/.next/standalone/.next/server/chunks/ssr/_0ty4xe6._.js +43 -0
  277. package/.next/standalone/.next/server/chunks/ssr/_0vkl7.h._.js +47 -0
  278. package/.next/standalone/.next/server/chunks/ssr/_0wbcp88._.js +1 -1
  279. package/.next/standalone/.next/server/chunks/ssr/_0x09t_o._.js +47 -0
  280. package/.next/standalone/.next/server/chunks/ssr/_0z5~opf._.js +3 -0
  281. package/.next/standalone/.next/server/chunks/ssr/_0zn.4bi._.js +47 -0
  282. package/.next/standalone/.next/server/chunks/ssr/_1086w4p._.js +47 -0
  283. package/.next/standalone/.next/server/chunks/ssr/{_09z-55_._.js → _10q2mbe._.js} +2 -2
  284. package/.next/standalone/.next/server/chunks/ssr/_11.knhq._.js +3 -0
  285. package/.next/standalone/.next/server/chunks/ssr/_1118hto._.js +43 -0
  286. package/.next/standalone/.next/server/chunks/ssr/{_0ytcm0j._.js → _12s8n8g._.js} +1 -1
  287. package/.next/standalone/.next/server/chunks/ssr/src_11j0qlp._.js +3 -0
  288. package/.next/standalone/.next/server/chunks/ssr/src_actions_agent-actions_ts_0~wc.sy._.js +1 -1
  289. package/.next/standalone/.next/server/chunks/ssr/src_actions_file-actions_ts_0gcvqwm._.js +1 -1
  290. package/.next/standalone/.next/server/chunks/ssr/src_app_missions_missions-client_tsx_11429lj._.js +1 -1
  291. package/.next/standalone/.next/server/chunks/ssr/src_app_onboarding_page_tsx_0xf7hpz._.js +1 -1
  292. package/.next/standalone/.next/server/chunks/ssr/src_app_settings_page_tsx_0h9v7dr._.js +1 -1
  293. package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_assets_assets-page-client_tsx_0wyzpam._.js +1 -1
  294. package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_board-page-client_tsx_0gips66._.js +1 -1
  295. package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_notes_notes-page-client_tsx_10gyo3v._.js +1 -1
  296. package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_tasks_[taskId]_task-page-client_tsx_02t7blt._.js +1 -1
  297. package/.next/standalone/.next/server/chunks/ssr/src_components_0rowjw~._.js +2 -2
  298. package/.next/standalone/.next/server/chunks/ssr/{_0bndp1~._.js → src_components_ui_popover_tsx_0a78wqo._.js} +2 -2
  299. package/.next/standalone/.next/server/chunks/ssr/{src_lib_04y-65j._.js → src_lib_04nzvfd._.js} +1 -1
  300. package/.next/standalone/.next/server/chunks/ssr/{src_lib_03xtona._.js → src_lib_0_px2pz._.js} +2 -2
  301. package/.next/standalone/.next/server/chunks/ssr/src_lib_0a.zy31._.js +3 -0
  302. package/.next/standalone/.next/server/chunks/ssr/src_lib_0b73q0a._.js +3 -0
  303. package/.next/standalone/.next/server/chunks/ssr/src_lib_0cld9rt._.js +3 -0
  304. package/.next/standalone/.next/server/chunks/ssr/{src_lib_0-x.wbd._.js → src_lib_0dbf2qa._.js} +1 -1
  305. package/.next/standalone/.next/server/chunks/ssr/src_lib_0er7rzd._.js +3 -0
  306. package/.next/standalone/.next/server/chunks/ssr/src_lib_0f0v8_~._.js +3 -0
  307. package/.next/standalone/.next/server/chunks/ssr/src_lib_0fr6fzy._.js +3 -0
  308. package/.next/standalone/.next/server/chunks/ssr/{src_lib_00p-ir2._.js → src_lib_0h2u7a0._.js} +1 -1
  309. package/.next/standalone/.next/server/chunks/ssr/src_lib_0k04rl3._.js +3 -0
  310. package/.next/standalone/.next/server/chunks/ssr/src_lib_0lpxsj~._.js +3 -0
  311. package/.next/standalone/.next/server/chunks/ssr/src_lib_0sq6aqm._.js +3 -0
  312. package/.next/standalone/.next/server/chunks/ssr/src_lib_0ui-~7g._.js +3 -0
  313. package/.next/standalone/.next/server/chunks/ssr/src_lib_0y5zzg-._.js +3 -0
  314. package/.next/standalone/.next/server/chunks/ssr/src_lib_0z-gn78._.js +3 -0
  315. package/.next/standalone/.next/server/chunks/ssr/src_lib_13c4a4g._.js +3 -0
  316. package/.next/standalone/.next/server/chunks/ssr/src_lib_pty_11~ojr2._.js +3 -0
  317. package/.next/standalone/.next/server/chunks/ssr/src_lib_pty_orphan-reaper_ts_0a0qmlo._.js +3 -0
  318. package/.next/standalone/.next/server/chunks/ssr/{_0ng0eku._.js → src_lib_schemas_ts_0ph~1ak._.js} +3 -3
  319. package/.next/standalone/.next/server/chunks/ssr/src_lib_worktree_ts_06cucy3._.js +1 -1
  320. package/.next/standalone/.next/server/functions-config-manifest.json +1 -0
  321. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  322. package/.next/standalone/.next/server/next-font-manifest.js +1 -1
  323. package/.next/standalone/.next/server/next-font-manifest.json +4 -0
  324. package/.next/standalone/.next/server/pages/500.html +1 -1
  325. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  326. package/.next/standalone/.next/server/server-reference-manifest.json +2174 -1586
  327. package/.next/standalone/.next/static/chunks/0-kkc.ibted8y.js +1 -0
  328. package/.next/standalone/.next/static/chunks/0.2y9uc38xso-.js +1 -0
  329. package/.next/standalone/.next/static/chunks/{0c4-6qdhi645s.js → 0.gedys.tq.~k.js} +1 -1
  330. package/.next/standalone/.next/static/chunks/00g58.es_hxli.js +1 -0
  331. package/.next/standalone/.next/static/chunks/00o_eiv12t~.1.js +1 -0
  332. package/.next/standalone/.next/static/chunks/01qtgj0xv1fsm.js +2 -0
  333. package/.next/standalone/.next/static/chunks/024euw7po0d0w.js +1 -0
  334. package/.next/standalone/.next/static/chunks/02v-9v~885t9c.js +1 -0
  335. package/.next/standalone/.next/static/chunks/03ct4d8znb7tp.js +1 -0
  336. package/.next/standalone/.next/static/chunks/03uix~1ru.ovv.js +1 -0
  337. package/.next/standalone/.next/static/chunks/04.2m8l~ws19v.js +1 -0
  338. package/.next/standalone/.next/static/chunks/{0bvhkgitn__gl.js → 06x7oq8_iu~9d.js} +1 -1
  339. package/.next/standalone/.next/static/chunks/07c4b1kp_85qg.js +1 -0
  340. package/.next/standalone/.next/static/chunks/07qijq9o5jccu.js +1 -0
  341. package/.next/standalone/.next/static/chunks/{09bezwcb__18t.js → 09om2gfwimh7k.js} +1 -1
  342. package/.next/standalone/.next/static/chunks/0alhq.h4~iogi.js +1 -0
  343. package/.next/standalone/.next/static/chunks/{02xqrfqu.s8-i.js → 0cf7e1scao3zk.js} +1 -1
  344. package/.next/standalone/.next/static/chunks/0ck~sr0nkabl~.js +1 -0
  345. package/.next/standalone/.next/static/chunks/0d1ok-v-u-xe~.js +1 -0
  346. package/.next/standalone/.next/static/chunks/0d9u2xspag~4h.js +5 -0
  347. package/.next/standalone/.next/static/chunks/0ftptcpntzaux.js +1 -0
  348. package/.next/standalone/.next/static/chunks/0gk~m5bwgoafi.js +1 -0
  349. package/.next/standalone/.next/static/chunks/0in_7s8n4lmfr.js +1 -0
  350. package/.next/standalone/.next/static/chunks/0ix28r65.7o_r.js +12 -0
  351. package/.next/standalone/.next/static/chunks/{0c.t.evwah_m4.js → 0j5olwb~d3~3j.js} +1 -1
  352. package/.next/standalone/.next/static/chunks/0mtrtl-jl46in.js +2 -0
  353. package/.next/standalone/.next/static/chunks/0ov_akpudbv96.js +5 -0
  354. package/.next/standalone/.next/static/chunks/0oyskd~8~j.j7.js +1 -0
  355. package/.next/standalone/.next/static/chunks/0q1872yhybt55.js +1 -0
  356. package/.next/standalone/.next/static/chunks/0seo-lerjdkbn.js +1 -0
  357. package/.next/standalone/.next/static/chunks/0t1awv68pnn-e.js +1 -0
  358. package/.next/standalone/.next/static/chunks/0wl8cpmvyhv0l.js +1 -0
  359. package/.next/standalone/.next/static/chunks/0~2l3wz-gxs2j.js +1 -0
  360. package/.next/standalone/.next/static/chunks/0~7h_a_dofg-4.js +1 -0
  361. package/.next/standalone/.next/static/chunks/11yhe31en~dvt.js +1 -0
  362. package/.next/standalone/.next/static/chunks/12-mlz2vukuga.js +1 -0
  363. package/.next/standalone/.next/static/chunks/14fch6~swodjf.css +1 -0
  364. package/.next/standalone/.next/static/chunks/15gztq9f12uhe.js +1 -0
  365. package/.next/standalone/.next/static/chunks/15ue90qe1sh-9.js +1 -0
  366. package/.next/standalone/.next/static/chunks/17z9uivez~kp3.js +1 -0
  367. package/.next/standalone/package.json +1 -2
  368. package/dist/mcp-server.cjs +1199 -4330
  369. package/package.json +1 -2
  370. package/prisma/schema.prisma +46 -5
  371. package/scripts/migrations/0006-project-knowledge.ts +58 -0
  372. package/scripts/migrations/0007-product-group.ts +67 -0
  373. package/skills/tower/SKILL.md +22 -92
  374. package/skills/tower/references/task-source.md +80 -0
  375. package/.next/standalone/.next/server/chunks/[externals]__0x_wqa7._.js +0 -3
  376. package/.next/standalone/.next/server/chunks/[root-of-the-server]__034jopu._.js +0 -4
  377. package/.next/standalone/.next/server/chunks/[root-of-the-server]__08-s.nv._.js +0 -4
  378. package/.next/standalone/.next/server/chunks/[root-of-the-server]__098.3z2._.js +0 -3
  379. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ehx6q.._.js +0 -3
  380. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iggiij._.js +0 -3
  381. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pmamzv._.js +0 -3
  382. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pzyjqf._.js +0 -20
  383. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0tplo5s._.js +0 -3
  384. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0tpzojh._.js +0 -3
  385. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xasom7._.js +0 -4
  386. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xy1t4x._.js +0 -4
  387. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0y~y6sh._.js +0 -3
  388. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10jnn26._.js +0 -3
  389. package/.next/standalone/.next/server/chunks/[root-of-the-server]__116v_bx._.js +0 -4
  390. package/.next/standalone/.next/server/chunks/[root-of-the-server]__119rbly._.js +0 -3
  391. package/.next/standalone/.next/server/chunks/_0qk_esg._.js +0 -4
  392. package/.next/standalone/.next/server/chunks/_0t31z6q._.js +0 -5
  393. package/.next/standalone/.next/server/chunks/src_0aqjfcv._.js +0 -3
  394. package/.next/standalone/.next/server/chunks/src_lib_0nw5n~t._.js +0 -3
  395. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0.q~~2p._.js +0 -3
  396. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__01zrinc._.js +0 -3
  397. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__03x8axh._.js +0 -47
  398. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__04wbr9x._.js +0 -3
  399. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__05xg05r._.js +0 -3
  400. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__06t.cx~._.js +0 -47
  401. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0__klx0._.js +0 -47
  402. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ccy_gg._.js +0 -3
  403. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0cjmeyl._.js +0 -3
  404. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0dx9sp-._.js +0 -47
  405. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0f57j8r._.js +0 -47
  406. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0j1dx6p._.js +0 -47
  407. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0kn~asi._.js +0 -47
  408. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0m.hayd._.js +0 -47
  409. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0mpjat-._.js +0 -3
  410. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0sg4fde._.js +0 -4
  411. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w24qox._.js +0 -47
  412. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0wq~4aj._.js +0 -30
  413. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0yihqy6._.js +0 -3
  414. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0z7je5_._.js +0 -5
  415. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zouyfp._.js +0 -3
  416. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1184s~q._.js +0 -3
  417. package/.next/standalone/.next/server/chunks/ssr/_0.iq8t8._.js +0 -4
  418. package/.next/standalone/.next/server/chunks/ssr/_00.myc6._.js +0 -3
  419. package/.next/standalone/.next/server/chunks/ssr/_00eymu8._.js +0 -3
  420. package/.next/standalone/.next/server/chunks/ssr/_03-we0p._.js +0 -47
  421. package/.next/standalone/.next/server/chunks/ssr/_04szgc6._.js +0 -3
  422. package/.next/standalone/.next/server/chunks/ssr/_0kd_tda._.js +0 -47
  423. package/.next/standalone/.next/server/chunks/ssr/_0ktexki._.js +0 -47
  424. package/.next/standalone/.next/server/chunks/ssr/_0lo1nei._.js +0 -6
  425. package/.next/standalone/.next/server/chunks/ssr/_0mdd702._.js +0 -3
  426. package/.next/standalone/.next/server/chunks/ssr/_0n0q6~9._.js +0 -3
  427. package/.next/standalone/.next/server/chunks/ssr/_0pab_al._.js +0 -3
  428. package/.next/standalone/.next/server/chunks/ssr/_0pg6-.y._.js +0 -3
  429. package/.next/standalone/.next/server/chunks/ssr/_0pvp63a._.js +0 -47
  430. package/.next/standalone/.next/server/chunks/ssr/_0qi4x-5._.js +0 -3
  431. package/.next/standalone/.next/server/chunks/ssr/_0qnobd-._.js +0 -43
  432. package/.next/standalone/.next/server/chunks/ssr/_0rdyrfd._.js +0 -3
  433. package/.next/standalone/.next/server/chunks/ssr/_0ts~td3._.js +0 -3
  434. package/.next/standalone/.next/server/chunks/ssr/_0y0_4zs._.js +0 -3
  435. package/.next/standalone/.next/server/chunks/ssr/_0yva1-.._.js +0 -3
  436. package/.next/standalone/.next/server/chunks/ssr/_0yz5dmq._.js +0 -47
  437. package/.next/standalone/.next/server/chunks/ssr/_11w13--._.js +0 -3
  438. package/.next/standalone/.next/server/chunks/ssr/node_modules__pnpm_09eeb85._.js +0 -3
  439. package/.next/standalone/.next/server/chunks/ssr/src_0djxlqx._.js +0 -3
  440. package/.next/standalone/.next/server/chunks/ssr/src_0eufeyj._.js +0 -3
  441. package/.next/standalone/.next/server/chunks/ssr/src_0vv366l._.js +0 -3
  442. package/.next/standalone/.next/server/chunks/ssr/src_lib_03x1i~1._.js +0 -5
  443. package/.next/standalone/.next/server/chunks/ssr/src_lib_08gthaz._.js +0 -3
  444. package/.next/standalone/.next/server/chunks/ssr/src_lib_090~6pq._.js +0 -3
  445. package/.next/standalone/.next/server/chunks/ssr/src_lib_0k8dkbn._.js +0 -3
  446. package/.next/standalone/.next/server/chunks/ssr/src_lib_0knbpxk._.js +0 -3
  447. package/.next/standalone/.next/server/chunks/ssr/src_lib_0p_iehl._.js +0 -3
  448. package/.next/standalone/.next/server/chunks/ssr/src_lib_0qve1ri._.js +0 -3
  449. package/.next/standalone/.next/server/chunks/ssr/src_lib_0s35u~4._.js +0 -3
  450. package/.next/standalone/.next/server/chunks/ssr/src_lib_0x2ui80._.js +0 -3
  451. package/.next/standalone/.next/server/chunks/ssr/src_lib_0ypc5_d._.js +0 -3
  452. package/.next/standalone/.next/server/chunks/ssr/src_lib_10jh2mz._.js +0 -3
  453. package/.next/standalone/.next/static/chunks/0-nppzqp-r.9c.js +0 -1
  454. package/.next/standalone/.next/static/chunks/0-te2tg6~a23u.js +0 -1
  455. package/.next/standalone/.next/static/chunks/0.64.6c1mh7d2.js +0 -1
  456. package/.next/standalone/.next/static/chunks/0.8n1ce9lggg4.js +0 -1
  457. package/.next/standalone/.next/static/chunks/0.nsmn6shzidu.js +0 -2
  458. package/.next/standalone/.next/static/chunks/0.zgqz~m3sjej.js +0 -1
  459. package/.next/standalone/.next/static/chunks/00.eotegra08r.js +0 -1
  460. package/.next/standalone/.next/static/chunks/01j9m895w64zn.js +0 -1
  461. package/.next/standalone/.next/static/chunks/03y272e6e9o8i.js +0 -1
  462. package/.next/standalone/.next/static/chunks/08eyd7sq064r0.js +0 -1
  463. package/.next/standalone/.next/static/chunks/09b33znj4m__c.js +0 -1
  464. package/.next/standalone/.next/static/chunks/0d0zm8viq3ol4.js +0 -12
  465. package/.next/standalone/.next/static/chunks/0dktl5t_dtxu..js +0 -1
  466. package/.next/standalone/.next/static/chunks/0e5~nzt657k92.js +0 -1
  467. package/.next/standalone/.next/static/chunks/0erwxvpb9w29_.js +0 -1
  468. package/.next/standalone/.next/static/chunks/0gf~0e3xpa0fj.js +0 -5
  469. package/.next/standalone/.next/static/chunks/0gy79dfi~lnig.js +0 -1
  470. package/.next/standalone/.next/static/chunks/0gz3xwb5_8xwv.js +0 -1
  471. package/.next/standalone/.next/static/chunks/0i75~pu.bp20..js +0 -1
  472. package/.next/standalone/.next/static/chunks/0jn_w5b9r~beu.js +0 -1
  473. package/.next/standalone/.next/static/chunks/0l59z2mf1ouxu.js +0 -1
  474. package/.next/standalone/.next/static/chunks/0m4xd-ie7j.hx.js +0 -1
  475. package/.next/standalone/.next/static/chunks/0mx9ebe6we4z0.js +0 -1
  476. package/.next/standalone/.next/static/chunks/0nsggimu5je3g.js +0 -1
  477. package/.next/standalone/.next/static/chunks/0nw8nx8kafy79.js +0 -1
  478. package/.next/standalone/.next/static/chunks/0pzjryav9pm7p.js +0 -1
  479. package/.next/standalone/.next/static/chunks/0q-rl50zskr35.js +0 -1
  480. package/.next/standalone/.next/static/chunks/0qqy2x-fsmmmx.js +0 -1
  481. package/.next/standalone/.next/static/chunks/0t59wpux0g1~l.js +0 -1
  482. package/.next/standalone/.next/static/chunks/0uezq8wiwkq8d.js +0 -1
  483. package/.next/standalone/.next/static/chunks/0vrc~7m1_cuvl.js +0 -1
  484. package/.next/standalone/.next/static/chunks/0xbh24-hxrt~m.css +0 -1
  485. package/.next/standalone/.next/static/chunks/0xkkmruo8p.l_.js +0 -1
  486. package/.next/standalone/.next/static/chunks/0xx0pe_j2kmr9.js +0 -2
  487. package/.next/standalone/.next/static/chunks/0zqjqiqmorenw.js +0 -5
  488. package/.next/standalone/.next/static/chunks/136l78utn~v08.js +0 -1
  489. package/.next/standalone/.next/static/chunks/171x9kw9wcyk4.js +0 -1
  490. package/.next/standalone/.next/static/chunks/17m4o~gdsvuo3.js +0 -1
  491. package/next.config.ts +0 -18
  492. /package/.next/standalone/.next/static/{f1860bJqnbYj-1WLMj7F- → Pf_z-PYy0CJhvcyPEi-LM}/_buildManifest.js +0 -0
  493. /package/.next/standalone/.next/static/{f1860bJqnbYj-1WLMj7F- → Pf_z-PYy0CJhvcyPEi-LM}/_clientMiddlewareManifest.js +0 -0
  494. /package/.next/standalone/.next/static/{f1860bJqnbYj-1WLMj7F- → Pf_z-PYy0CJhvcyPEi-LM}/_ssgManifest.js +0 -0
@@ -0,0 +1,3 @@
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"))},573242,a=>{"use strict";var b=a.i(648717);a.s(["Search",()=>b.default])},577565,a=>{"use strict";let b=(0,a.i(711796).default)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]);a.s(["GitBranch",0,b],577565)},427756,(a,b,c)=>{"use strict";let d;Object.defineProperty(c,"__esModule",{value:!0});var e={getAssetToken:function(){return i},getAssetTokenQuery:function(){return j},getDeploymentId:function(){return g},getDeploymentIdQuery:function(){return h}};for(var f in e)Object.defineProperty(c,f,{enumerable:!0,get:e[f]});function g(){return d}function h(a=!1){return d?`${a?"&":"?"}dpl=${d}`:""}function i(){return!1}function j(a=!1){return""}d=void 0},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)},365065,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40a4ee923ff0b325baafa490ce673265b4bf3061a2",b.callServer,void 0,b.findSourceMapURL,"getLabelsForWorkspace");a.s(["getLabelsForWorkspace",0,c])},273364,a=>{"use strict";let b=(0,a.i(711796).default)("boxes",[["path",{d:"M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z",key:"lc1i9w"}],["path",{d:"m7 16.5-4.74-2.85",key:"1o9zyk"}],["path",{d:"m7 16.5 5-3",key:"va8pkn"}],["path",{d:"M7 16.5v5.17",key:"jnp8gn"}],["path",{d:"M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z",key:"8zsnat"}],["path",{d:"m17 16.5-5-3",key:"8arw3v"}],["path",{d:"m17 16.5 4.74-2.85",key:"8rfmw"}],["path",{d:"M17 16.5v5.17",key:"k6z78m"}],["path",{d:"M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z",key:"1xygjf"}],["path",{d:"M12 8 7.26 5.15",key:"1vbdud"}],["path",{d:"m12 8 4.74-2.85",key:"3rx089"}],["path",{d:"M12 13.5V8",key:"1io7kd"}]]);a.s(["Boxes",0,b],273364)},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)},347872,a=>{"use strict";var b=a.i(728778),c=a.i(374637),d=c,e=a.i(986099);let f="html",g=(a,b)=>{var c,d;let e,g,h,i={};switch(a){case f:h=document.createElement(null!=(c=null==b?void 0:b.containerElement)?c:"div");break;case"svg":h=document.createElementNS("http://www.w3.org/2000/svg",null!=(d=null==b?void 0:b.containerElement)?d:"g");break;default:throw Error(`Invalid element type "${a}" for createPortalNode: must be "html" or "svg".`)}if(b&&"object"==typeof b&&b.attributes)for(let[a,c]of Object.entries(b.attributes))h.setAttribute(a,c);let j={element:h,elementType:a,setPortalProps:a=>{i=a},getInitialPortalProps:()=>i,mount:(b,c)=>{if(c!==g){if(j.unmount(),b!==e&&!((a,b)=>{var c,d,e;let g=null!=(c=a.ownerDocument)?c:document,h=null!=(e=null!=(d=g.defaultView)?d:g.parentWindow)?e:window;switch(b){case f:return a instanceof h.HTMLElement;case"svg":return a instanceof h.SVGElement;default:throw Error(`Unrecognized element type "${b}" for validateElementType.`)}})(b,a))throw Error(`Invalid element type for portal: "${a}" portalNodes must be used with ${a} elements, but OutPortal is within <${b.tagName}>.`);b.replaceChild(j.element,c),e=b,g=c}},unmount:a=>{(!a||a===g)&&e&&g&&(e.replaceChild(g,j.element),e=void 0,g=void 0)}};return j};class h extends d.PureComponent{constructor(a){super(a),this.addPropsChannel=()=>{Object.assign(this.props.node,{setPortalProps:a=>{this.setState({nodeProps:a})}})},this.state={nodeProps:this.props.node.getInitialPortalProps()}}componentDidMount(){this.addPropsChannel()}componentDidUpdate(){this.addPropsChannel()}render(){let{children:a,node:b}=this.props;return e.createPortal(d.Children.map(a,a=>d.isValidElement(a)?d.cloneElement(a,this.state.nodeProps):a),b.element)}}class i extends d.PureComponent{constructor(a){super(a),this.placeholderNode=d.createRef(),this.passPropsThroughPortal()}passPropsThroughPortal(){let a=Object.assign({},this.props,{node:void 0});this.props.node.setPortalProps(a)}componentDidMount(){let a=this.props.node;this.currentPortalNode=a;let b=this.placeholderNode.current,c=b.parentNode;a.mount(c,b),this.passPropsThroughPortal()}componentDidUpdate(){let a=this.props.node;this.currentPortalNode&&a!==this.currentPortalNode&&(this.currentPortalNode.unmount(this.placeholderNode.current),this.currentPortalNode.setPortalProps({}),this.currentPortalNode=a);let b=this.placeholderNode.current,c=b.parentNode;a.mount(c,b),this.passPropsThroughPortal()}componentWillUnmount(){let a=this.props.node;a.unmount(this.placeholderNode.current),a.setPortalProps({})}render(){let a=this.props.node.element.tagName,b=this.props.node.elementType===f?a.toLowerCase():a;return d.createElement(b,{ref:this.placeholderNode})}}let j=g.bind(null,f);g.bind(null,"svg");let k=(0,a.i(969032).default)(async()=>{},{loadableGenerated:{modules:[346069]},ssr:!1}),l=(0,c.createContext)(null);function m(){let a=(0,c.useContext)(l);if(!a)throw Error("useTerminalPortal must be used within TerminalPortalProvider");return a}a.s(["TerminalOutlet",0,function({taskId:a,worktreePath:d,onSessionEnd:e,onReady:f}){let{getPortal:g,setOnSessionEnd:h,setOnReady:j}=m(),[k,l]=(0,c.useState)(null),n=(0,c.useRef)(f);return((0,c.useEffect)(()=>{n.current=f}),(0,c.useEffect)(()=>{let b=g(a,d);return b.mountCount++,l(b),()=>{b.mountCount--,l(null)}},[a,d,g]),(0,c.useEffect)(()=>(h(a,e??null),()=>h(a,null)),[a,e,h]),(0,c.useEffect)(()=>(j(a,a=>n.current?.(a)),()=>{n.current?.(null),j(a,null)}),[a,j]),k)?(0,b.jsx)(i,{node:k.portalNode}):null},"TerminalPortalProvider",0,function({children:a}){let d=(0,c.useRef)(new Map),e=(0,c.useRef)([]),[,f]=(0,c.useState)(0),g=(0,c.useCallback)((a,b)=>{let c=d.current.get(a);if(c)return e.current=e.current.filter(b=>b!==a),e.current.push(a),c;if(d.current.size>=12)for(let a of[...e.current]){if(d.current.size<12)break;let b=d.current.get(a);b&&!(b.mountCount>0)&&(d.current.delete(a),e.current=e.current.filter(b=>b!==a),console.warn(`[terminal-portal] evicted idle terminal ${a} (over 12 cap) — its history will replay from the WS buffer on next view`))}let g={portalNode:j({attributes:{style:"width:100%;height:100%"}}),taskId:a,worktreePath:b,onSessionEnd:{current:null},onReady:{current:null},controls:null,mountCount:0};return d.current.set(a,g),e.current.push(a),f(a=>a+1),g},[]),i=(0,c.useCallback)(a=>{d.current.delete(a),e.current=e.current.filter(b=>b!==a),f(a=>a+1)},[]),m=(0,c.useCallback)((a,b)=>{let c=d.current.get(a);c&&(c.onSessionEnd.current=b)},[]),n=(0,c.useCallback)((a,b)=>{let c=d.current.get(a);c&&(c.onReady.current=b,b&&c.controls&&b(c.controls))},[]),o=Array.from(d.current.values()).map(a=>(0,b.jsx)(h,{node:a.portalNode,children:(0,b.jsx)(k,{taskId:a.taskId,worktreePath:a.worktreePath,onSessionEnd:b=>a.onSessionEnd.current?.(b),onReady:b=>{a.controls=b,a.onReady.current?.(b)},useCanvasRenderer:!0})},a.taskId));return(0,b.jsxs)(l.Provider,{value:{getPortal:g,removePortal:i,setOnSessionEnd:m,setOnReady:n},children:[a,o]})},"useTerminalPortal",0,m],347872)},442620,a=>{"use strict";var b=a.i(688905);a.s(["ChevronDown",()=>b.default])},952420,a=>{"use strict";let b=(0,a.i(711796).default)("bell-ring",[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M22 8c0-2.3-.8-4.3-2-6",key:"5bb3ad"}],["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"}],["path",{d:"M4 2C2.8 3.7 2 5.7 2 8",key:"tap9e0"}]]);a.s(["BellRing",0,b],952420)},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)},295411,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("60abd5e499bef8cd1d081b74113f0e817026a864e7",b.callServer,void 0,b.findSourceMapURL,"getConfigValue");a.s(["getConfigValue",0,c])},976268,a=>{"use strict";let b=(0,a.i(711796).default)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);a.s(["default",0,b])},506913,a=>{"use strict";var b=a.i(976268);a.s(["Info",()=>b.default])},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)},718799,a=>{"use strict";var b=a.i(728778),c=a.i(374637);a.i(423993);var d=a.i(424764),e=a.i(368114);function f({children:a}){return(0,b.jsx)("kbd",{className:(0,e.cn)("inline-flex min-w-[1.5rem] items-center justify-center rounded-md","border border-border bg-muted px-1.5 py-0.5","text-[11px] font-medium leading-none text-foreground","shadow-[inset_0_-1px_0_var(--border)]"),children:a})}a.s(["KeyCombo",0,function({keys:a}){let e=(0,d.compactKeyList)(a);return(0,b.jsx)("span",{className:"inline-flex flex-wrap items-center gap-1.5",children:e.map((a,e)=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1",children:[e>0&&(0,b.jsx)("span",{className:"text-[11px] text-muted-foreground/40",children:"/"}),(0,d.renderComboTokens)(a).map((a,d)=>(0,b.jsxs)(c.Fragment,{children:[d>0&&(0,b.jsx)("span",{className:"text-[10px] text-muted-foreground/60",children:"+"}),(0,b.jsx)(f,{children:a})]},d))]},`${a}-${e}`))})}])},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)},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])},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)("4036f95ed5dc32f339eacad6c635ee66f9e026db46",d.callServer,void 0,d.findSourceMapURL,"checkExtension");var f=a.i(435443);let g=(0,d.createServerReference)("40b59a54ce49a5ad9953b31159f64bfd2ee911e145",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)},595999,996317,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)("00106d4fcb4d66916535f592a22f2432e998f5c560",h.callServer,void 0,h.findSourceMapURL,"getActualWsPort");a.s(["getActualWsPort",0,i],996317)},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(163692),y=a.i(303722),z=a.i(622047),A=a.i(100737),B=a.i(706092);let C=d.forwardRef(function(a,b){let{checked:o,className:q,defaultChecked:r,"aria-labelledby":C,id:D,inputRef:E,name:F,nativeButton:G=!1,onCheckedChange:H,readOnly:I=!1,required:J=!1,disabled:K=!1,render:L,uncheckedValue:M,value:N,...O}=a,{clearErrors:P}=(0,v.useFormContext)(),{state:Q,setTouched:R,setDirty:S,validityData:T,setFilled:U,setFocused:V,shouldValidateOnChange:W,validationMode:X,disabled:Y,name:Z,validation:$}=(0,u.useFieldRootContext)(),{labelId:_}=(0,w.useLabelableContext)(),aa=Y||K,ab=Z??F,ac=(0,f.useStableCallback)(H),ad=d.useRef(null),ae=(0,g.useMergedRefs)(ad,E,$.inputRef),af=d.useRef(null),ag=(0,m.useBaseUiId)(),ah=(0,y.useLabelableId)({id:D,implicit:!1,controlRef:af}),ai=G?void 0:ah,[aj,ak]=(0,e.useControlled)({controlled:o,default:!!r,name:"Switch",state:"checked"});(0,t.useField)({id:ag,commit:$.commit,value:aj,controlRef:af,name:ab,getValue:()=>aj}),(0,h.useIsoLayoutEffect)(()=>{ad.current&&U(ad.current.checked)},[ad,U]),(0,B.useValueChanged)(aj,()=>{P(ab),S(aj!==T.initialValue),U(aj),W()?$.commit(aj):$.commit(aj,!0)});let{getButtonProps:al,buttonRef:am}=(0,n.useButton)({disabled:aa,native:G}),an=(0,x.useAriaLabelledBy)(C,_,ad,!G,ai),ao=d.useMemo(()=>(0,l.mergeProps)({checked:aj,disabled:aa,id:ai,name:ab,required:J,style:ab?i.visuallyHiddenInput:i.visuallyHidden,tabIndex:-1,type:"checkbox","aria-hidden":!0,ref:ae,onChange(a){if(a.nativeEvent.defaultPrevented)return;let b=a.target.checked,c=(0,z.createChangeEventDetails)(A.REASONS.none,a.nativeEvent);ac?.(b,c),c.isCanceled||ak(b)},onFocus(){af.current?.focus()}},$.getInputValidationProps,void 0!==N?{value:N}:j.EMPTY_OBJECT),[aj,aa,ae,ai,ab,ac,J,ak,$,N]),ap=d.useMemo(()=>({...Q,checked:aj,disabled:aa,readOnly:I,required:J}),[Q,aj,aa,I,J]),aq=(0,k.useRenderElement)("span",a,{state:ap,ref:[b,af,am],props:[{id:G?ah:ag,role:"switch","aria-checked":aj,"aria-readonly":I||void 0,"aria-required":J||void 0,"aria-labelledby":an,onFocus(){aa||V(!0)},onBlur(){let a=ad.current;a&&!aa&&(R(!0),V(!1),"onBlur"===X&&$.commit(a.checked))},onClick(a){I||aa||(a.preventDefault(),ad.current?.dispatchEvent(new PointerEvent("click",{bubbles:!0,shiftKey:a.shiftKey,ctrlKey:a.ctrlKey,altKey:a.altKey,metaKey:a.metaKey})))}},$.getValidationProps,O,al],stateAttributesMapping:s});return(0,c.jsxs)(p.Provider,{value:ap,children:[aq,!aj&&ab&&void 0!==M&&(0,c.jsx)("input",{type:"hidden",name:ab,value:M}),(0,c.jsx)("input",{...ao})]})}),D=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,C,"Thumb",0,D],88348);var E=a.i(88348),E=E,F=a.i(368114);a.s(["Switch",0,function({className:a,size:b="default",...d}){return(0,c.jsx)(E.Root,{"data-slot":"switch","data-size":b,className:(0,F.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)(E.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__0x7br99._.js.map
@@ -0,0 +1,5 @@
1
+ module.exports=[980738,(a,b,c)=>{b.exports=a.x("node-pty-c710df912a232c01",()=>require("node-pty-c710df912a232c01"))},42847,a=>{"use strict";var b=a.i(980738),c=a.i(163812);class d{taskId;_pty;killed=!1;disconnectTimer=null;_buffer="";static BUFFER_MAX=51200;_onData;_exitListeners=[];_idleTimer=null;_idleThresholdMs;_onIdle;_idleFired=!1;constructor(a,e,f,g,h,i,j,k,l){this.taskId=a,this._onData=h,this._onIdle=k??null,this._idleThresholdMs=Math.max(l??18e4,18e4);const m={...(0,c.stripClaudeNestingEnv)((0,c.ensurePathInEnv)(process.env)),TERM:"xterm-color",...j};try{this._pty=b.spawn(e,f,{name:"xterm-color",cols:80,rows:24,cwd:g,env:m})}catch(a){throw console.error(`[pty] spawn failed: command="${e}", cwd="${g}", PATH="${m.PATH?.slice(0,200)}"`),a}this._pty.onData(a=>{this._buffer+=a,this._buffer.length>d.BUFFER_MAX&&(this._buffer=this._buffer.slice(this._buffer.length-d.BUFFER_MAX)),this._resetIdleTimer(),this._onData(a)}),this._pty.onExit(({exitCode:a,signal:b})=>{for(let c of(this.killed=!0,this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null),i(a,b),this._exitListeners))c(a)}),this._resetIdleTimer()}_resetIdleTimer(){this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null),null===this._onIdle||this.killed||this._idleFired||(this._idleTimer=setTimeout(()=>{this._idleFired=!0,this._onIdle?.()},this._idleThresholdMs))}setDataListener(a){this._onData=a}setExitListener(a){this._exitListeners=[a]}write(a){this.killed||(this._resetIdleTimer(),this._pty.write(a))}resize(a,b){this.killed||this._pty.resize(a,b)}getBuffer(){return this._buffer}get isIdle(){return this._idleFired}get pid(){return this._pty.pid}kill(a){if(!this.killed){this.killed=!0,this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null);try{this._pty.kill(a)}catch{}}}forceKill(){try{this._pty.kill("SIGKILL")}catch{}this.killed=!0}killTree(a=3e3){if(this.killed)return;this.killed=!0,this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null);let b=this._pty.pid;try{process.kill(-b,"SIGTERM")}catch{try{this._pty.kill()}catch{}return}let c=setTimeout(()=>{try{process.kill(-b,"SIGKILL")}catch{}},a);c.unref?.()}}a.s(["PtySession",0,d])},312369,a=>{"use strict";var b=a.i(761469);async function c(a,c){let d=await b.db.systemConfig.findUnique({where:{key:a}});if(!d)return c;try{return JSON.parse(d.value)}catch{return c}}a.s(["readConfigValue",0,c])},22700,a=>{"use strict";var b=a.i(42847);let c=/\x1b\[[0-9;]*m/g,d=/(https?:\/\/[^\s]+)/;class e{preset;port;timeoutMs;onReady;onTimeout;ready;timeoutTimer;probeTimer;pendingExtractedUrl;constructor(a,b,c,d,e){this.preset=a,this.port=b,this.timeoutMs=c,this.onReady=d,this.onTimeout=e,this.ready=!1,this.timeoutTimer=null,this.probeTimer=null,this.pendingExtractedUrl=null}start(){this.timeoutTimer=setTimeout(()=>{this.ready||this.onTimeout()},this.timeoutMs),this.probeTimer=setInterval(()=>{this.ready||this.probe()},500)}feedLine(a){if(!this.ready){if(this.preset?.urlExtractRegex){var b,e;let f,g=(b=a,e=this.preset.urlExtractRegex,f=b.replace(c,"").match(e??d),f?.[1]??null);g&&(this.pendingExtractedUrl=g)}this.preset?.readyRegex?.test(a)&&this.emitReady(this.pendingExtractedUrl)}}stop(){this.timeoutTimer&&(clearTimeout(this.timeoutTimer),this.timeoutTimer=null),this.probeTimer&&(clearInterval(this.probeTimer),this.probeTimer=null)}async probe(){try{let a=new AbortController,b=setTimeout(()=>a.abort(),200),c=await fetch(`http://localhost:${this.port}/`,{method:"HEAD",signal:a.signal});clearTimeout(b),c.status>=200&&c.status<400&&this.emitReady(this.pendingExtractedUrl)}catch{}}emitReady(a){this.ready||(this.ready=!0,this.stop(),this.onReady(a))}}class f{opts;status;pty;ringBuffer;currentUrl;startedAt;readyAt;errorMessage;installed;readyWatcher;cancelRequested;pendingAutoStart;outputListeners;stateListeners;subscribers;internalListenerSeq;constructor(a){this.opts=a,this.status="stopped",this.pty=null,this.ringBuffer=[],this.currentUrl=null,this.startedAt=null,this.readyAt=null,this.errorMessage=null,this.installed=null,this.readyWatcher=null,this.cancelRequested=!1,this.pendingAutoStart=!1,this.outputListeners=new Map,this.stateListeners=new Map,this.subscribers=new Map,this.internalListenerSeq=0}get key(){return this.opts.key}get activeSubscriberCount(){return this.subscribers.size}get subscriberTaskIds(){return new Set([...this.subscribers.values()].map(a=>a.taskId))}get isEvictable(){return null===this.pty&&("stopped"===this.status||"error"===this.status)&&0===this.subscribers.size&&!this.pendingAutoStart}getBuffer(){return[...this.ringBuffer]}getState(){return{key:this.opts.key,status:this.status,url:this.currentUrl,port:this.opts.port,startedAt:this.startedAt,readyAt:this.readyAt,errorMessage:this.errorMessage,installed:this.installed,activeSubscribers:this.activeSubscriberCount,subscriberTaskIds:[...this.subscriberTaskIds]}}subscribe(a,b,c,d){return this.subscribers.set(a,{taskId:b}),this.stateListeners.set(a,c),this.outputListeners.set(a,d),()=>{this.subscribers.delete(a),this.stateListeners.delete(a),this.outputListeners.delete(a),this.broadcastState()}}async run(){if("installing"===this.status)return{started:!1,error:"Install in progress"};if("running"===this.status||"starting"===this.status)return{started:!0};this.cancelRequested=!1,this.errorMessage=null,this.status="starting",this.startedAt=Date.now(),this.broadcastState();try{this.pty=this.createPty(this.opts.command,this.opts.args,this.opts.cwd)}catch(a){return this.status="error",this.errorMessage=`Failed to spawn: ${String(a)}`,this.broadcastState(),{started:!1,error:this.errorMessage}}return this.readyWatcher=new e(this.opts.preset,this.opts.port,this.opts.preset?.startTimeoutMs??6e4,a=>this.handleReady(a),()=>this.handleTimeout()),this.readyWatcher.start(),{started:!0}}async install(a){if("stopped"!==this.status&&"error"!==this.status)return{ok:!1,error:`Cannot install while ${this.status}`};this.cancelRequested=!1,this.errorMessage=null,this.status="installing",this.pendingAutoStart=a.autoStartAfter??!1,this.broadcastState();try{this.pty=this.createPty(a.installCommand,a.installArgs,a.installCwd??this.opts.cwd)}catch(a){return this.status="error",this.errorMessage=`Failed to spawn install: ${String(a)}`,this.broadcastState(),{ok:!1,error:this.errorMessage}}return{ok:!0}}stop(){if(("installing"===this.status||"starting"===this.status||"running"===this.status)&&(this.cancelRequested=!0),this.readyWatcher&&(this.readyWatcher.stop(),this.readyWatcher=null),!this.pty||this.pty.killed){this.injectLog("Stopped."),this.status="stopped",this.pendingAutoStart=!1,this.broadcastState();return}this.injectLog("Stopping (SIGTERM)..."),this.status="stopping",this.broadcastState();try{this.pty.killTree()}catch{}}injectLog(a){let b=`[preview] ${a}`;this.pushBuffer(b);let c=`\r
2
+ ${b}\r
3
+ `;for(let a of this.outputListeners.values())try{a(c)}catch{}}pushBuffer(a){this.ringBuffer.push(a),this.ringBuffer.length>5e3&&this.ringBuffer.splice(0,this.ringBuffer.length-5e3)}createPty(a,c,d){let e=new b.PtySession(this.opts.key,a,c,d,a=>this.handlePtyData(a),a=>this.handlePtyExit(a),this.opts.envOverrides,void 0,void 0);try{e.resize(200,50)}catch{}return e}handlePtyData(a){for(let b of a.split(/\r?\n/))0!==b.length&&(this.pushBuffer(b),this.readyWatcher&&this.readyWatcher.feedLine(b));for(let b of this.outputListeners.values())try{b(a)}catch{}}handlePtyExit(a){let b=this.cancelRequested,c="installing"===this.status;this.pty=null,this.readyWatcher&&(this.readyWatcher.stop(),this.readyWatcher=null),b?(this.injectLog(`Stopped (exit code ${a}).`),this.status="stopped",this.pendingAutoStart=!1):0===a&&c?(this.installed=!0,this.status="stopped",this.pendingAutoStart&&(this.pendingAutoStart=!1,setTimeout(()=>void this.run(),0))):0!==a?(this.injectLog(`Exited with code ${a}.`),this.status="error",this.errorMessage=`Process exited with code ${a}`,this.pendingAutoStart=!1):(this.injectLog("Exited."),this.status="stopped"),this.broadcastState()}handleReady(a){this.currentUrl=a??`http://localhost:${this.opts.port}/`,this.status="running",this.readyAt=Date.now(),this.broadcastState()}handleTimeout(){this.status="error",this.errorMessage=`Start timeout (${this.opts.preset?.startTimeoutMs??6e4}ms). See logs.`,this.readyWatcher&&(this.readyWatcher.stop(),this.readyWatcher=null),this.broadcastState()}onStateChange(a){this.stateListeners.set(`__internal-${this.internalListenerSeq++}`,a)}broadcastState(){let a=this.getState();for(let b of this.stateListeners.values())try{b(a)}catch{}}}let g=globalThis.__previewSessions??=new Map;function h(a){let b=g.get(a);if(b){try{b.stop()}catch{}g.delete(a)}}function i(){for(let a of[...g.keys()])h(a)}if(globalThis.__previewSignalHandlersRegistered||(process.on("SIGTERM",i),process.on("SIGINT",i),process.on("SIGHUP",i),globalThis.__previewSignalHandlersRegistered=!0),"phase-production-build"!==process.env.NEXT_PHASE&&!globalThis.__previewSweepStarted){globalThis.__previewSweepStarted=!0;let a=new Map,b=setInterval(()=>{let b=Date.now();for(let c of function(a,b,c){let d=[];for(let{key:e,evictable:f}of a){if(!f){b.delete(e);continue}let a=b.get(e);if(void 0===a){b.set(e,c);continue}c-a>=3e5&&d.push(e)}return d}([...g].map(([a,b])=>({key:a,evictable:b.isEvictable})),a,b))h(c),a.delete(c)},6e4);b.unref?.()}a.s(["getOrCreatePreviewSession",0,function(a,b){let c=g.get(a);return c||(c=new f({...b,key:a}),g.set(a,c)),c},"getPreviewSession",0,function(a){return g.get(a)}],22700)},328521,a=>{"use strict";var b=a.i(874533),c=a.i(912714),d=a.i(750227);let e=(0,a.i(319997).getSignalDir)(),f="pid-",g=["claude","claude-code","codex"];function h(a){return(0,d.join)(e,`${f}${a}`)}async function i(a,b){try{await (0,c.mkdir)(e,{recursive:!0,mode:448}),await (0,c.writeFile)(h(a),String(b),{mode:384})}catch{}}async function j(a){try{await (0,c.unlink)(h(a))}catch{}}async function k(){let a;try{a=await (0,c.readdir)(e)}catch{return 0}let h=0;for(let i of a){let a;if(!i.startsWith(f))continue;let j=(0,d.join)(e,i);try{a=parseInt((await (0,c.readFile)(j,"utf-8")).trim(),10)}catch{continue}if((await (0,c.unlink)(j).catch(()=>{}),Number.isInteger(a)&&!(a<=1)&&function(a){try{return process.kill(a,0),!0}catch(a){return a?.code==="EPERM"}}(a)&&"win32"!==process.platform)&&function(a){try{let c=(0,b.execFileSync)("ps",["-p",String(a),"-o","command="],{encoding:"utf-8",timeout:3e3}).trim();if(!c)return!1;return g.some(a=>c.includes(a))}catch{return!1}}(a))try{process.kill(-a,"SIGKILL"),h++}catch{}}return h}a.s(["clearSessionPid",0,j,"reapOrphanedProcesses",0,k,"recordSessionPid",0,i])},962620,a=>{"use strict";var b=a.i(42847),c=a.i(163812),d=a.i(328521);let e=globalThis;e.__ptySessions||(e.__ptySessions=new Map);let f=e.__ptySessions;function g(a){let b=f.get(a);if(b)return f.delete(a),b.disconnectTimer&&(clearTimeout(b.disconnectTimer),b.disconnectTimer=null),b.killTree(),b}function h(a){g(a)&&(0,d.clearSessionPid)(a)}function i(){for(let a of f.keys())h(a)}let j=globalThis;"phase-production-build"===process.env.NEXT_PHASE||j.__ptySignalHandlersRegistered||(j.__ptySignalHandlersRegistered=!0,process.once("SIGTERM",()=>{console.error("[session-store] SIGTERM received — cleaning up PTY sessions"),i()}),process.once("SIGINT",()=>{console.error("[session-store] SIGINT received — cleaning up PTY sessions"),i()})),a.s(["createSession",0,function(a,e,h,i,j,k,l,m,n){g(a);let{command:o,args:p}=(0,c.resolveSpawnTargetSync)(e,h),q=new b.PtySession(a,o,p,i,j,k,l,m,n);return f.set(a,q),(0,d.recordSessionPid)(a,q.pid),q},"destroyAllSessions",0,i,"destroySession",0,h,"getSession",0,function(a){return f.get(a)}])},433541,a=>a.a(async(b,c)=>{try{let b=await a.y("ws-4df7fc762dfa9a52");a.n(b),c()}catch(a){c(a)}},!0),504446,(a,b,c)=>{b.exports=a.x("net",()=>require("net"))},353602,a=>{"use strict";let b=[/\x1b\[[<=>?]?[0-9;]*c/g,/\x1b\[\??[0-9;]*n/g,/\x1b\[\??[0-9;]*\$p/g,/\x1b\[>[0-9;]*q/g,/\x1b\[(?:1[1345689]|2[01])(?:;[0-9]+)*t/g,/\x1b\][0-9;]*;\?(?:\x07|\x1b\\)/g,/\x1bP[$+]q[\s\S]*?\x1b\\/g];a.s(["stripDeviceQueries",0,function(a){if(!a)return a;let c=a;for(let a of b)c=c.replace(a,"");return c}])},559991,a=>{"use strict";a.s(["ASSISTANT_SESSION_KEY",0,"__assistant__"])},117738,a=>{"use strict";let b="__preview__";a.s(["PREVIEW_TASK_ID",0,b,"parsePreviewWsParams",0,function(a){if(a.get("taskId")!==b)return null;let c=a.get("role"),d=a.get("previewKey");if("state"!==c&&"terminal"!==c||!d)return null;let e=a.get("connectionId")??Math.random().toString(36).slice(2);return{role:c,previewKey:decodeURIComponent(d),connectionId:e,taskId:a.get("clientTaskId")}}])},823615,a=>a.a(async(b,c)=>{try{var d=a.i(433541),e=a.i(962620),f=a.i(353602),g=a.i(312369),h=a.i(559991),i=a.i(22700),j=a.i(117738),k=b([d]);[d]=k.then?(await k)():k;let q=new Map;function l(){return r.__notificationClients||(r.__notificationClients=new Set),r.__notificationClients}function m(a){l().add(a)}function n(a){l().delete(a)}let r=globalThis;async function o(){var b;if(r.__wss){let a=r.__wss;r.__wss=void 0,await new Promise(b=>{a.close(()=>b()),setTimeout(b,1e3)})}let c=parseInt(process.env.PORT||"3000",10),f=await (0,g.readConfigValue)("terminal.wsPort",c+1),k=f;for(let c=0;c<10&&await (b=k,new Promise(c=>{let{createServer:d}=a.r(504446),e=d();e.once("error",()=>c(!0)),e.once("listening",()=>{e.close(()=>c(!1))}),e.listen(b,"127.0.0.1")}));c++){if(9===c)return void console.error(`[ws-server] No free port found after trying ${f}–${k} — skipping startup`);console.error(`[ws-server] Port ${k} in use, trying ${k+1}...`),k++}let l=new d.WebSocketServer({port:k,host:"127.0.0.1",perMessageDeflate:!1});r.__wss=l,r.__wsPort=k,k!==f?console.error(`[ws-server] WebSocket server listening on port ${k} (preferred ${f} was occupied)`):console.error(`[ws-server] WebSocket server listening on port ${k}`);let o=()=>{l.close(),r.__wss=void 0,r.__wsPort=void 0};process.once("SIGINT",o),process.once("SIGTERM",o),l.on("connection",(a,b)=>{let c,f=b.headers.origin??"";if(!(c=parseInt(process.env.PORT||"3000",10),new Set([`http://localhost:${c}`,`http://127.0.0.1:${c}`])).has(f)){console.error(`[ws-server] Rejected origin: ${f||"(none)"}`),a.close(1008,"Forbidden");return}let g=new URL(b.url??"/",`http://localhost:${k}`),l=g.searchParams.get("taskId");if(!l)return void a.close(1008,"Missing taskId");let o=(0,j.parsePreviewWsParams)(g.searchParams);if(o){let b=(0,i.getPreviewSession)(o.previewKey),c=null,e=null;function r(){if(b){if(e=b.subscribe(o.connectionId,o.taskId??"unknown",c=>{if("state"===o.role)try{a.send(JSON.stringify({type:"state",previewKey:b.key,state:c}))}catch{}},b=>{if("terminal"===o.role)try{a.send(b)}catch{}}),"terminal"===o.role){let c=b.getBuffer();if(c.length>0)try{a.send(c.join("\n")+"\n")}catch{}}if("state"===o.role)try{a.send(JSON.stringify({type:"state",previewKey:b.key,state:b.getState()}))}catch{}}}if(b)r();else{let e=0;c=setInterval(()=>{e+=500,(b=(0,i.getPreviewSession)(o.previewKey))?(clearInterval(c),c=null,r()):(e>=3e4||a.readyState!==d.WebSocket.OPEN)&&(clearInterval(c),c=null,a.readyState===d.WebSocket.OPEN&&a.close(1008,"No preview session created within timeout."))},500)}a.on("close",()=>{c&&(clearInterval(c),c=null),e&&(e(),e=null)}),a.on("error",()=>{c&&(clearInterval(c),c=null),e&&(e(),e=null)});return}if("__notifications__"===l){m(a),a.on("close",()=>n(a)),a.on("error",()=>n(a));return}console.error(`[ws-server] Connection for task ${l}`);let s=(0,e.getSession)(l),t=null;if(s)p(s,a,l),console.error(`[ws-server] Attached to existing session for task ${l}`);else{console.error(`[ws-server] No session for task ${l} — polling...`);let b=0;t=setInterval(()=>{b+=500,(s=(0,e.getSession)(l))?(clearInterval(t),t=null,p(s,a,l),console.error(`[ws-server] Session appeared for task ${l} after ${b}ms`)):(b>=3e4||a.readyState!==d.WebSocket.OPEN)&&(clearInterval(t),t=null,a.readyState===d.WebSocket.OPEN&&a.close(1008,"No PTY session created within timeout."))},500)}a.on("message",a=>{if(!s)return;let b=a.toString();if(b.startsWith("{"))try{let a=JSON.parse(b);if("resize"===a.type&&"number"==typeof a.cols&&"number"==typeof a.rows)return void s.resize(a.cols,a.rows)}catch{}s.write(b)}),a.on("close",()=>{a._batcher?.flush();let b=q.get(l);if(!b?.has(a)||(b.delete(a),console.error(`[ws-server] WS disconnected for task ${l} (${b.size} remaining)`),b.size>0))return;q.delete(l);let c=(0,e.getSession)(l);if(!c)return;if(c.setDataListener(()=>{}),l===h.ASSISTANT_SESSION_KEY){console.error("[ws-server] Assistant session disconnected — destroying immediately"),(0,e.destroySession)(l);return}let d=c.killed?3e5:72e5;c.disconnectTimer=setTimeout(()=>{console.error(`[ws-server] Keepalive expired for task ${l}`),(0,e.destroySession)(l)},d)}),a.on("error",b=>{console.error(`[ws-server] WS error for task ${l}:`,b.message),t&&(clearInterval(t),t=null);let c=q.get(l);if(!c?.has(a)||(c.delete(a),c.size>0))return;q.delete(l);let d=(0,e.getSession)(l);d&&!d.killed&&d.setDataListener(()=>{})})})}function p(a,b,c){var e;let g,h;a.disconnectTimer&&(clearTimeout(a.disconnectTimer),a.disconnectTimer=null);let i=q.get(c);i||(i=new Set,q.set(c,i)),i.add(b);let j=(e=b,g="",h=null,{send:a=>{g+=a,h||(h=setTimeout(()=>{h=null,e.readyState===d.WebSocket.OPEN&&e.bufferedAmount<65536&&e.send(g),g=""},8))},flush:()=>{h&&(clearTimeout(h),h=null),g&&e.readyState===d.WebSocket.OPEN&&e.bufferedAmount<65536&&e.send(g),g=""}});b._batcher=j;let k=i;a.setDataListener(a=>{for(let b of k){let c=b._batcher;c?c.send(a):b.readyState===d.WebSocket.OPEN&&b.send(a)}});let l=a.getBuffer();if(l&&b.readyState===d.WebSocket.OPEN){let a=(0,f.stripDeviceQueries)(l);a.length!==l.length&&console.error(`[ws-server] Stripped ${l.length-a.length} bytes of device-query sequences from replay for task ${c} (prevents phantom PTY input on reconnect)`),b.send(a)}a.setExitListener(a=>{let b=function(a){if(null==a)return 4255;let b=Number(a);if(!Number.isFinite(b))return 4255;let c=4e3+(b>=0&&b<256?0|b:b>>>0&255);return c<1e3||c>4999?4255:c}(a);for(let a of k)a.readyState===d.WebSocket.OPEN&&a.close(b,"session_end")})}a.s(["addNotificationClient",0,m,"broadcastNotification",0,function(a){let b=JSON.stringify(a);for(let a of l())a.readyState===d.WebSocket.OPEN&&a.send(b)},"getActiveWsPort",0,function(){return r.__wsPort??null},"removeNotificationClient",0,n,"startWsServer",0,o]),c()}catch(a){c(a)}},!1),640545,a=>a.a(async(b,c)=>{try{var d=a.i(823615);a.i(117738);var e=b([d]);[d]=e.then?(await e)():e,a.s(["broadcastNotification",()=>d.broadcastNotification,"getActiveWsPort",()=>d.getActiveWsPort]),c()}catch(a){c(a)}},!1)];
4
+
5
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0xnuz05._.js.map
@@ -0,0 +1,5 @@
1
+ module.exports=[510095,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(797225).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/node_modules/.pnpm/lucide-react@1.6.0_react@19.2.4/node_modules/lucide-react/dist/esm/Icon.js <module evaluation> from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/lucide-react@1.6.0_react@19.2.4/node_modules/lucide-react/dist/esm/Icon.js <module evaluation>","default")},857188,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(797225).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/node_modules/.pnpm/lucide-react@1.6.0_react@19.2.4/node_modules/lucide-react/dist/esm/Icon.js from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/node_modules/.pnpm/lucide-react@1.6.0_react@19.2.4/node_modules/lucide-react/dist/esm/Icon.js","default")},400413,a=>{"use strict";a.i(510095);var b=a.i(857188);a.n(b)},743698,(a,b,c)=>{b.exports=a.x("node:https",()=>require("node:https"))},188646,(a,b,c)=>{b.exports=a.x("node:stream/promises",()=>require("node:stream/promises"))},563736,304162,744992,a=>{"use strict";var b=a.i(815429),c=a.i(942372);let d=a=>{let b=a.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,b,c)=>c?c.toUpperCase():b.toLowerCase());return b.charAt(0).toUpperCase()+b.slice(1)};var e=a.i(400413);let f=(a,b)=>{let f=(0,c.forwardRef)(({className:f,...g},h)=>(0,c.createElement)(e.default,{ref:h,iconNode:b,className:((...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim())(`lucide-${d(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,f),...g}));return f.displayName=d(a),f},g=f("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);var h=a.i(233405),i=a.i(522734),j=a.i(446786),k=a.i(814747);async function l(){try{let{rgPath:b}=await a.A(640417);if(b&&(0,i.existsSync)(b))return b}catch{}return null}a.s(["resolveBundledRgPath",0,l],304162);var m=a.i(163812);async function n(a){try{var b,c;let{stdout:d}=await (b=["--version"],c={timeout:3e3},new Promise((d,e)=>{(0,h.execFile)(a,b,c,(a,b)=>{a?e(a):d({stdout:String(b??"")})})}));return d.split("\n")[0]?.replace(/^ripgrep\s+/,"").split(" ")[0]||void 0}catch{return}}async function o(){let a=await l();if(a){let b=await n(a);return{installed:!0,path:a,version:b}}let b=function(){let a=(0,m.isWindows)()?"where":"which";try{let b=(0,h.execFileSync)(a,["rg"],{encoding:"utf-8",timeout:3e3,stdio:["ignore","pipe","ignore"]}),c=b.split(/\r?\n/)[0]?.trim();if(c&&(0,i.existsSync)(c))return c}catch{}for(let a of function(){let a=j.default.homedir();switch(process.platform){case"darwin":return["/opt/homebrew/bin/rg","/usr/local/bin/rg","/opt/local/bin/rg",k.default.join(a,".cargo/bin/rg")];case"linux":return["/usr/bin/rg","/usr/local/bin/rg","/snap/bin/rg",k.default.join(a,".local/bin/rg"),k.default.join(a,".cargo/bin/rg")];case"win32":{let b=process.env.LOCALAPPDATA??"",c=process.env.ProgramFiles??"C:\\Program Files",d=process.env.USERPROFILE??a;return[k.default.join(b,"Microsoft","WinGet","Links","rg.exe"),k.default.join(d,"scoop","shims","rg.exe"),k.default.join(b,"Programs","scoop","shims","rg.exe"),"C:\\ProgramData\\chocolatey\\bin\\rg.exe",k.default.join(c,"ripgrep","rg.exe")]}default:return[]}}())if((0,i.existsSync)(a))return a;return null}();if(b){let a=await n(b);return{installed:!0,path:b,version:a}}return{installed:!1}}async function p(){return{success:!1,error:"ripgrep is a native binary and must be installed via your OS package manager. See the install commands below or open the official site."}}let q=f("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"}]]);var r=a.i(319997),s=a.i(902157),t=a.i(912714),u=a.i(750227),v=a.i(743698),w=a.i(188646),x=a.i(427699),y=a.i(687769),z=a.i(81111),A=a.i(899871),B=a.i(449719),C=a.i(500874),D=a.i(406461),E=a.i(57328),F=a.i(666680),G=Object.defineProperty,H="object"==typeof process&&process?process:{stdout:null,stderr:null},I=a=>!!a&&"object"==typeof a&&(a instanceof as||a instanceof z.default||J(a)||K(a)),J=a=>!!a&&"object"==typeof a&&a instanceof y.EventEmitter&&"function"==typeof a.pipe&&a.pipe!==z.default.Writable.prototype.pipe,K=a=>!!a&&"object"==typeof a&&a instanceof y.EventEmitter&&"function"==typeof a.write&&"function"==typeof a.end,L=Symbol("EOF"),M=Symbol("maybeEmitEnd"),N=Symbol("emittedEnd"),O=Symbol("emittingEnd"),P=Symbol("emittedError"),Q=Symbol("closed"),R=Symbol("read"),S=Symbol("flush"),T=Symbol("flushChunk"),U=Symbol("encoding"),V=Symbol("decoder"),W=Symbol("flowing"),X=Symbol("paused"),Y=Symbol("resume"),Z=Symbol("buffer"),$=Symbol("pipes"),_=Symbol("bufferLength"),aa=Symbol("bufferPush"),ab=Symbol("bufferShift"),ac=Symbol("objectMode"),ad=Symbol("destroyed"),ae=Symbol("error"),af=Symbol("emitData"),ag=Symbol("emitEnd"),ah=Symbol("emitEnd2"),ai=Symbol("async"),aj=Symbol("abort"),ak=Symbol("aborted"),al=Symbol("signal"),am=Symbol("dataListeners"),an=Symbol("discarded"),ao=a=>Promise.resolve().then(a),ap=a=>a(),aq=class{src;dest;opts;ondrain;constructor(a,b,c){this.src=a,this.dest=b,this.opts=c,this.ondrain=()=>a[Y](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(a){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},ar=class extends aq{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(a,b,c){super(a,b,c),this.proxyErrors=a=>this.dest.emit("error",a),a.on("error",this.proxyErrors)}},as=class extends y.EventEmitter{[W]=!1;[X]=!1;[$]=[];[Z]=[];[ac];[U];[ai];[V];[L]=!1;[N]=!1;[O]=!1;[Q]=!1;[P]=null;[_]=0;[ad]=!1;[al];[ak]=!1;[am]=0;[an]=!1;writable=!0;readable=!0;constructor(...a){let b=a[0]||{};if(super(),b.objectMode&&"string"==typeof b.encoding)throw TypeError("Encoding and objectMode may not be used together");(a=>!!a.objectMode)(b)?(this[ac]=!0,this[U]=null):(a=>!a.objectMode&&!!a.encoding&&"buffer"!==a.encoding)(b)?(this[U]=b.encoding,this[ac]=!1):(this[ac]=!1,this[U]=null),this[ai]=!!b.async,this[V]=this[U]?new A.StringDecoder(this[U]):null,b&&!0===b.debugExposeBuffer&&Object.defineProperty(this,"buffer",{get:()=>this[Z]}),b&&!0===b.debugExposePipes&&Object.defineProperty(this,"pipes",{get:()=>this[$]});let{signal:c}=b;c&&(this[al]=c,c.aborted?this[aj]():c.addEventListener("abort",()=>this[aj]()))}get bufferLength(){return this[_]}get encoding(){return this[U]}set encoding(a){throw Error("Encoding must be set at instantiation time")}setEncoding(a){throw Error("Encoding must be set at instantiation time")}get objectMode(){return this[ac]}set objectMode(a){throw Error("objectMode must be set at instantiation time")}get async(){return this[ai]}set async(a){this[ai]=this[ai]||!!a}[aj](){this[ak]=!0,this.emit("abort",this[al]?.reason),this.destroy(this[al]?.reason)}get aborted(){return this[ak]}set aborted(a){}write(a,b,c){if(this[ak])return!1;if(this[L])throw Error("write after end");if(this[ad])return this.emit("error",Object.assign(Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;"function"==typeof b&&(c=b,b="utf8"),b||(b="utf8");let d=this[ai]?ao:ap;if(!this[ac]&&!Buffer.isBuffer(a)){let b;if(b=a,!Buffer.isBuffer(b)&&ArrayBuffer.isView(b))a=Buffer.from(a.buffer,a.byteOffset,a.byteLength);else{let b;if((b=a)instanceof ArrayBuffer||b&&"object"==typeof b&&b.constructor&&"ArrayBuffer"===b.constructor.name&&b.byteLength>=0)a=Buffer.from(a);else if("string"!=typeof a)throw Error("Non-contiguous data written to non-objectMode stream")}}return this[ac]?(this[W]&&0!==this[_]&&this[S](!0),this[W]?this.emit("data",a):this[aa](a)):a.length&&("string"==typeof a&&(b!==this[U]||this[V]?.lastNeed)&&(a=Buffer.from(a,b)),Buffer.isBuffer(a)&&this[U]&&(a=this[V].write(a)),this[W]&&0!==this[_]&&this[S](!0),this[W]?this.emit("data",a):this[aa](a)),0!==this[_]&&this.emit("readable"),c&&d(c),this[W]}read(a){if(this[ad])return null;if(this[an]=!1,0===this[_]||0===a||a&&a>this[_])return this[M](),null;this[ac]&&(a=null),this[Z].length>1&&!this[ac]&&(this[Z]=[this[U]?this[Z].join(""):Buffer.concat(this[Z],this[_])]);let b=this[R](a||null,this[Z][0]);return this[M](),b}[R](a,b){if(this[ac])this[ab]();else{let c=b;a===c.length||null===a?this[ab]():("string"==typeof c?(this[Z][0]=c.slice(a),b=c.slice(0,a)):(this[Z][0]=c.subarray(a),b=c.subarray(0,a)),this[_]-=a)}return this.emit("data",b),this[Z].length||this[L]||this.emit("drain"),b}end(a,b,c){return"function"==typeof a&&(c=a,a=void 0),"function"==typeof b&&(c=b,b="utf8"),void 0!==a&&this.write(a,b),c&&this.once("end",c),this[L]=!0,this.writable=!1,(this[W]||!this[X])&&this[M](),this}[Y](){this[ad]||(this[am]||this[$].length||(this[an]=!0),this[X]=!1,this[W]=!0,this.emit("resume"),this[Z].length?this[S]():this[L]?this[M]():this.emit("drain"))}resume(){return this[Y]()}pause(){this[W]=!1,this[X]=!0,this[an]=!1}get destroyed(){return this[ad]}get flowing(){return this[W]}get paused(){return this[X]}[aa](a){this[ac]?this[_]+=1:this[_]+=a.length,this[Z].push(a)}[ab](){return this[ac]?this[_]-=1:this[_]-=this[Z][0].length,this[Z].shift()}[S](a=!1){do;while(this[T](this[ab]())&&this[Z].length)a||this[Z].length||this[L]||this.emit("drain")}[T](a){return this.emit("data",a),this[W]}pipe(a,b){if(this[ad])return a;this[an]=!1;let c=this[N];return b=b||{},a===H.stdout||a===H.stderr?b.end=!1:b.end=!1!==b.end,b.proxyErrors=!!b.proxyErrors,c?b.end&&a.end():(this[$].push(b.proxyErrors?new ar(this,a,b):new aq(this,a,b)),this[ai]?ao(()=>this[Y]()):this[Y]()),a}unpipe(a){let b=this[$].find(b=>b.dest===a);b&&(1===this[$].length?(this[W]&&0===this[am]&&(this[W]=!1),this[$]=[]):this[$].splice(this[$].indexOf(b),1),b.unpipe())}addListener(a,b){return this.on(a,b)}on(a,b){let c=super.on(a,b);if("data"===a)this[an]=!1,this[am]++,this[$].length||this[W]||this[Y]();else if("readable"===a&&0!==this[_])super.emit("readable");else("end"===a||"finish"===a||"prefinish"===a)&&this[N]?(super.emit(a),this.removeAllListeners(a)):"error"===a&&this[P]&&(this[ai]?ao(()=>b.call(this,this[P])):b.call(this,this[P]));return c}removeListener(a,b){return this.off(a,b)}off(a,b){let c=super.off(a,b);return"data"===a&&(this[am]=this.listeners("data").length,0!==this[am]||this[an]||this[$].length||(this[W]=!1)),c}removeAllListeners(a){let b=super.removeAllListeners(a);return("data"===a||void 0===a)&&(this[am]=0,this[an]||this[$].length||(this[W]=!1)),b}get emittedEnd(){return this[N]}[M](){this[O]||this[N]||this[ad]||0!==this[Z].length||!this[L]||(this[O]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Q]&&this.emit("close"),this[O]=!1)}emit(a,...b){let c=b[0];if("error"!==a&&"close"!==a&&a!==ad&&this[ad])return!1;if("data"===a)return(!!this[ac]||!!c)&&(this[ai]?(ao(()=>this[af](c)),!0):this[af](c));if("end"===a)return this[ag]();if("close"===a){if(this[Q]=!0,!this[N]&&!this[ad])return!1;let a=super.emit("close");return this.removeAllListeners("close"),a}if("error"===a){this[P]=c,super.emit(ae,c);let a=(!this[al]||!!this.listeners("error").length)&&super.emit("error",c);return this[M](),a}if("resume"===a){let a=super.emit("resume");return this[M](),a}if("finish"===a||"prefinish"===a){let b=super.emit(a);return this.removeAllListeners(a),b}let d=super.emit(a,...b);return this[M](),d}[af](a){for(let b of this[$])!1===b.dest.write(a)&&this.pause();let b=!this[an]&&super.emit("data",a);return this[M](),b}[ag](){return!this[N]&&(this[N]=!0,this.readable=!1,this[ai]?(ao(()=>this[ah]()),!0):this[ah]())}[ah](){if(this[V]){let a=this[V].end();if(a){for(let b of this[$])b.dest.write(a);this[an]||super.emit("data",a)}}for(let a of this[$])a.end();let a=super.emit("end");return this.removeAllListeners("end"),a}async collect(){let a=Object.assign([],{dataLength:0});this[ac]||(a.dataLength=0);let b=this.promise();return this.on("data",b=>{a.push(b),this[ac]||(a.dataLength+=b.length)}),await b,a}async concat(){if(this[ac])throw Error("cannot concat in objectMode");let a=await this.collect();return this[U]?a.join(""):Buffer.concat(a,a.dataLength)}async promise(){return new Promise((a,b)=>{this.on(ad,()=>b(Error("stream destroyed"))),this.on("error",a=>b(a)),this.on("end",()=>a())})}[Symbol.asyncIterator](){this[an]=!1;let a=!1,b=async()=>(this.pause(),a=!0,{value:void 0,done:!0});return{next:()=>{if(a)return b();let c=this.read();if(null!==c)return Promise.resolve({done:!1,value:c});if(this[L])return b();let d,e,f=a=>{this.off("data",g),this.off("end",h),this.off(ad,i),b(),e(a)},g=a=>{this.off("error",f),this.off("end",h),this.off(ad,i),this.pause(),d({value:a,done:!!this[L]})},h=()=>{this.off("error",f),this.off("data",g),this.off(ad,i),b(),d({done:!0,value:void 0})},i=()=>f(Error("stream destroyed"));return new Promise((a,b)=>{e=b,d=a,this.once(ad,i),this.once("error",f),this.once("end",h),this.once("data",g)})},throw:b,return:b,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[an]=!1;let a=!1,b=()=>(this.pause(),this.off(ae,b),this.off(ad,b),this.off("end",b),a=!0,{done:!0,value:void 0}),c=()=>{if(a)return b();let c=this.read();return null===c?b():{done:!1,value:c}};return this.once("end",b),this.once(ae,b),this.once(ad,b),{next:c,throw:b,return:b,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(a){return this[ad]||(this[ad]=!0,this[an]=!0,this[Z].length=0,this[_]=0,"function"!=typeof this.close||this[Q]||this.close()),a?this.emit("error",a):this.emit(ad),this}static get isStream(){return I}},at=i.default.writev,au=Symbol("_autoClose"),av=Symbol("_close"),aw=Symbol("_ended"),ax=Symbol("_fd"),ay=Symbol("_finished"),az=Symbol("_flags"),aA=Symbol("_flush"),aB=Symbol("_handleChunk"),aC=Symbol("_makeBuf"),aD=Symbol("_mode"),aE=Symbol("_needDrain"),aF=Symbol("_onerror"),aG=Symbol("_onopen"),aH=Symbol("_onread"),aI=Symbol("_onwrite"),aJ=Symbol("_open"),aK=Symbol("_path"),aL=Symbol("_pos"),aM=Symbol("_queue"),aN=Symbol("_read"),aO=Symbol("_readSize"),aP=Symbol("_reading"),aQ=Symbol("_remain"),aR=Symbol("_size"),aS=Symbol("_write"),aT=Symbol("_writing"),aU=Symbol("_defaultFlag"),aV=Symbol("_errored"),aW=class extends as{[aV]=!1;[ax];[aK];[aO];[aP]=!1;[aR];[aQ];[au];constructor(a,b){if(super(b=b||{}),this.readable=!0,this.writable=!1,"string"!=typeof a)throw TypeError("path must be a string");this[aV]=!1,this[ax]="number"==typeof b.fd?b.fd:void 0,this[aK]=a,this[aO]=b.readSize||0x1000000,this[aP]=!1,this[aR]="number"==typeof b.size?b.size:1/0,this[aQ]=this[aR],this[au]="boolean"!=typeof b.autoClose||b.autoClose,"number"==typeof this[ax]?this[aN]():this[aJ]()}get fd(){return this[ax]}get path(){return this[aK]}write(){throw TypeError("this is a readable stream")}end(){throw TypeError("this is a readable stream")}[aJ](){i.default.open(this[aK],"r",(a,b)=>this[aG](a,b))}[aG](a,b){a?this[aF](a):(this[ax]=b,this.emit("open",b),this[aN]())}[aC](){return Buffer.allocUnsafe(Math.min(this[aO],this[aQ]))}[aN](){if(!this[aP]){this[aP]=!0;let a=this[aC]();if(0===a.length)return process.nextTick(()=>this[aH](null,0,a));i.default.read(this[ax],a,0,a.length,null,(a,b,c)=>this[aH](a,b,c))}}[aH](a,b,c){this[aP]=!1,a?this[aF](a):this[aB](b,c)&&this[aN]()}[av](){if(this[au]&&"number"==typeof this[ax]){let a=this[ax];this[ax]=void 0,i.default.close(a,a=>a?this.emit("error",a):this.emit("close"))}}[aF](a){this[aP]=!0,this[av](),this.emit("error",a)}[aB](a,b){let c=!1;return this[aQ]-=a,a>0&&(c=super.write(a<b.length?b.subarray(0,a):b)),(0===a||this[aQ]<=0)&&(c=!1,this[av](),super.end()),c}emit(a,...b){switch(a){case"prefinish":case"finish":return!1;case"drain":return"number"==typeof this[ax]&&this[aN](),!1;case"error":return!this[aV]&&(this[aV]=!0,super.emit(a,...b));default:return super.emit(a,...b)}}},aX=class extends aW{[aJ](){let a=!0;try{this[aG](null,i.default.openSync(this[aK],"r")),a=!1}finally{a&&this[av]()}}[aN](){let a=!0;try{if(!this[aP]){for(this[aP]=!0;;){let a=this[aC](),b=0===a.length?0:i.default.readSync(this[ax],a,0,a.length,null);if(!this[aB](b,a))break}this[aP]=!1}a=!1}finally{a&&this[av]()}}[av](){if(this[au]&&"number"==typeof this[ax]){let a=this[ax];this[ax]=void 0,i.default.closeSync(a),this.emit("close")}}},aY=class extends x.default{readable=!1;writable=!0;[aV]=!1;[aT]=!1;[aw]=!1;[aM]=[];[aE]=!1;[aK];[aD];[au];[ax];[aU];[az];[ay]=!1;[aL];constructor(a,b){super(b=b||{}),this[aK]=a,this[ax]="number"==typeof b.fd?b.fd:void 0,this[aD]=void 0===b.mode?438:b.mode,this[aL]="number"==typeof b.start?b.start:void 0,this[au]="boolean"!=typeof b.autoClose||b.autoClose;let c=void 0!==this[aL]?"r+":"w";this[aU]=void 0===b.flags,this[az]=void 0===b.flags?c:b.flags,void 0===this[ax]&&this[aJ]()}emit(a,...b){if("error"===a){if(this[aV])return!1;this[aV]=!0}return super.emit(a,...b)}get fd(){return this[ax]}get path(){return this[aK]}[aF](a){this[av](),this[aT]=!0,this.emit("error",a)}[aJ](){i.default.open(this[aK],this[az],this[aD],(a,b)=>this[aG](a,b))}[aG](a,b){this[aU]&&"r+"===this[az]&&a&&"ENOENT"===a.code?(this[az]="w",this[aJ]()):a?this[aF](a):(this[ax]=b,this.emit("open",b),this[aT]||this[aA]())}end(a,b){return a&&this.write(a,b),this[aw]=!0,this[aT]||this[aM].length||"number"!=typeof this[ax]||this[aI](null,0),this}write(a,b){return"string"==typeof a&&(a=Buffer.from(a,b)),this[aw]?(this.emit("error",Error("write() after end()")),!1):void 0===this[ax]||this[aT]||this[aM].length?(this[aM].push(a),this[aE]=!0,!1):(this[aT]=!0,this[aS](a),!0)}[aS](a){i.default.write(this[ax],a,0,a.length,this[aL],(a,b)=>this[aI](a,b))}[aI](a,b){a?this[aF](a):(void 0!==this[aL]&&"number"==typeof b&&(this[aL]+=b),this[aM].length?this[aA]():(this[aT]=!1,this[aw]&&!this[ay]?(this[ay]=!0,this[av](),this.emit("finish")):this[aE]&&(this[aE]=!1,this.emit("drain"))))}[aA](){if(0===this[aM].length)this[aw]&&this[aI](null,0);else if(1===this[aM].length)this[aS](this[aM].pop());else{let a=this[aM];this[aM]=[],at(this[ax],a,this[aL],(a,b)=>this[aI](a,b))}}[av](){if(this[au]&&"number"==typeof this[ax]){let a=this[ax];this[ax]=void 0,i.default.close(a,a=>a?this.emit("error",a):this.emit("close"))}}},aZ=class extends aY{[aJ](){let a;if(this[aU]&&"r+"===this[az])try{a=i.default.openSync(this[aK],this[az],this[aD])}catch(a){if(a?.code==="ENOENT")return this[az]="w",this[aJ]();throw a}else a=i.default.openSync(this[aK],this[az],this[aD]);this[aG](null,a)}[av](){if(this[au]&&"number"==typeof this[ax]){let a=this[ax];this[ax]=void 0,i.default.closeSync(a),this.emit("close")}}[aS](a){let b=!0;try{this[aI](null,i.default.writeSync(this[ax],a,0,a.length,this[aL])),b=!1}finally{if(b)try{this[av]()}catch{}}}},a$=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"],["onentry","onReadEntry"]]),a_=a=>a$.get(a)||a,a0=(a={})=>{if(!a)return{};let b={};for(let[c,d]of Object.entries(a))b[a_(c)]=d;return void 0===b.chmod&&!1===b.noChmod&&(b.chmod=!0),delete b.noChmod,b},a1=(a,b,c,d,e)=>Object.assign((f=[],g,h)=>{Array.isArray(f)&&(g=f,f={}),"function"==typeof g&&(h=g,g=void 0),g=g?Array.from(g):[];let i=a0(f);if(e?.(i,g),i.sync&&i.file){if("function"==typeof h)throw TypeError("callback not supported for sync tar functions");return a(i,g)}if(i.sync||!i.file)if(!i.sync||i.file){if(!i.sync&&!i.file){if("function"==typeof h)throw TypeError("callback only supported with file option");return d(i,g)}}else{if("function"==typeof h)throw TypeError("callback not supported for sync tar functions");return c(i,g)}else{let a=b(i,g);return h?a.then(()=>h(),h):a}throw Error("impossible options??")},{syncFile:a,asyncFile:b,syncNoFile:c,asyncNoFile:d,validate:e}),a2=D.default.constants||{ZLIB_VERNUM:4736},a3=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},a2)),a4=C.Buffer.concat,a5=Object.getOwnPropertyDescriptor(C.Buffer,"concat"),a6=a=>a,a7=a5?.writable===!0||a5?.set!==void 0?a=>{C.Buffer.concat=a?a6:a4}:a=>{},a8=Symbol("_superWrite"),a9=class extends Error{code;errno;constructor(a,b){super("zlib: "+a.message,{cause:a}),this.code=a.code,this.errno=a.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+a.message,Error.captureStackTrace(this,b??this.constructor)}get name(){return"ZlibError"}},ba=Symbol("flushFlag"),bb=class extends as{#a=!1;#b=!1;#c;#d;#e;#f;#g;get sawError(){return this.#a}get handle(){return this.#f}get flushFlag(){return this.#c}constructor(a,b){if(!a||"object"!=typeof a)throw TypeError("invalid options for ZlibBase constructor");if(super(a),this.#c=a.flush??0,this.#d=a.finishFlush??0,this.#e=a.fullFlushFlag??0,"function"!=typeof D[b])throw TypeError("Compression method not supported: "+b);try{this.#f=new D[b](a)}catch(a){throw new a9(a,this.constructor)}this.#g=a=>{this.#a||(this.#a=!0,this.close(),this.emit("error",a))},this.#f?.on("error",a=>this.#g(new a9(a))),this.once("end",()=>this.close)}close(){this.#f&&(this.#f.close(),this.#f=void 0,this.emit("close"))}reset(){if(!this.#a)return(0,B.default)(this.#f,"zlib binding closed"),this.#f.reset?.()}flush(a){this.ended||("number"!=typeof a&&(a=this.#e),this.write(Object.assign(C.Buffer.alloc(0),{[ba]:a})))}end(a,b,c){return"function"==typeof a&&(c=a,b=void 0,a=void 0),"function"==typeof b&&(c=b,b=void 0),a&&(b?this.write(a,b):this.write(a)),this.flush(this.#d),this.#b=!0,super.end(c)}get ended(){return this.#b}[a8](a){return super.write(a)}write(a,b,c){let d,e;if("function"==typeof b&&(c=b,b="utf8"),"string"==typeof a&&(a=C.Buffer.from(a,b)),this.#a)return;(0,B.default)(this.#f,"zlib binding closed");let f=this.#f._handle,g=f.close;f.close=()=>{};let h=this.#f.close;this.#f.close=()=>{},a7(!0);try{let b="number"==typeof a[ba]?a[ba]:this.#c;d=this.#f._processChunk(a,b),a7(!1)}catch(a){a7(!1),this.#g(new a9(a,this.write))}finally{this.#f&&(this.#f._handle=f,f.close=g,this.#f.close=h,this.#f.removeAllListeners("error"))}if(this.#f&&this.#f.on("error",a=>this.#g(new a9(a,this.write))),d)if(Array.isArray(d)&&d.length>0){let a=d[0];e=this[a8](C.Buffer.from(a));for(let a=1;a<d.length;a++)e=this[a8](d[a])}else e=this[a8](C.Buffer.from(d));return c&&c(),e}},bc=class extends bb{#a;#b;constructor(a,b){(a=a||{}).flush=a.flush||a3.Z_NO_FLUSH,a.finishFlush=a.finishFlush||a3.Z_FINISH,a.fullFlushFlag=a3.Z_FULL_FLUSH,super(a,b),this.#a=a.level,this.#b=a.strategy}params(a,b){if(!this.sawError){if(!this.handle)throw Error("cannot switch params when binding is closed");if(!this.handle.params)throw Error("not supported in this implementation");if(this.#a!==a||this.#b!==b){this.flush(a3.Z_SYNC_FLUSH),(0,B.default)(this.handle,"zlib binding closed");let c=this.handle.flush;this.handle.flush=(a,b)=>{"function"==typeof a&&(b=a,a=this.flushFlag),this.flush(a),b?.()};try{this.handle.params(a,b)}finally{this.handle.flush=c}this.handle&&(this.#a=a,this.#b=b)}}}},bd=class extends bc{#a;constructor(a){super(a,"Gzip"),this.#a=a&&!!a.portable}[a8](a){return this.#a&&(this.#a=!1,a[9]=255),super[a8](a)}},be=class extends bc{constructor(a){super(a,"Unzip")}},bf=class extends bb{constructor(a,b){(a=a||{}).flush=a.flush||a3.BROTLI_OPERATION_PROCESS,a.finishFlush=a.finishFlush||a3.BROTLI_OPERATION_FINISH,a.fullFlushFlag=a3.BROTLI_OPERATION_FLUSH,super(a,b)}},bg=class extends bf{constructor(a){super(a,"BrotliCompress")}},bh=class extends bf{constructor(a){super(a,"BrotliDecompress")}},bi=class extends bb{constructor(a,b){(a=a||{}).flush=a.flush||a3.ZSTD_e_continue,a.finishFlush=a.finishFlush||a3.ZSTD_e_end,a.fullFlushFlag=a3.ZSTD_e_flush,super(a,b)}},bj=class extends bi{constructor(a){super(a,"ZstdCompress")}},bk=class extends bi{constructor(a){super(a,"ZstdDecompress")}},bl=a=>(255^a)&255,bm=a=>(255^a)+1&255,bn={},bo={code:()=>bt,isCode:()=>bq,isName:()=>br,name:()=>bs};for(var bp in bo)G(bn,bp,{get:bo[bp],enumerable:!0});var bq=a=>bs.has(a),br=a=>bt.has(a),bs=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]),bt=new Map(Array.from(bs).map(a=>[a[1],a[0]])),bu=class{cksumValid=!1;needPax=!1;nullBlock=!1;block;path;mode;uid;gid;size;cksum;#a="Unsupported";linkpath;uname;gname;devmaj=0;devmin=0;atime;ctime;mtime;charset;comment;constructor(a,b=0,c,d){Buffer.isBuffer(a)?this.decode(a,b||0,c,d):a&&this.#b(a)}decode(a,b,c,d){if(b||(b=0),!a||!(a.length>=b+512))throw Error("need 512 bytes for header");this.path=c?.path??bw(a,b,100),this.mode=c?.mode??d?.mode??bz(a,b+100,8),this.uid=c?.uid??d?.uid??bz(a,b+108,8),this.gid=c?.gid??d?.gid??bz(a,b+116,8),this.size=c?.size??d?.size??bz(a,b+124,12),this.mtime=c?.mtime??d?.mtime??bx(a,b+136,12),this.cksum=bz(a,b+148,12),d&&this.#b(d,!0),c&&this.#b(c);let e=bw(a,b+156,1);if(bq(e)&&(this.#a=e||"0"),"0"===this.#a&&"/"===this.path.slice(-1)&&(this.#a="5"),"5"===this.#a&&(this.size=0),this.linkpath=bw(a,b+157,100),"ustar\x0000"===a.subarray(b+257,b+265).toString())if(this.uname=c?.uname??d?.uname??bw(a,b+265,32),this.gname=c?.gname??d?.gname??bw(a,b+297,32),this.devmaj=c?.devmaj??d?.devmaj??bz(a,b+329,8)??0,this.devmin=c?.devmin??d?.devmin??bz(a,b+337,8)??0,0!==a[b+475]){let c=bw(a,b+345,155);this.path=c+"/"+this.path}else{let e=bw(a,b+345,130);e&&(this.path=e+"/"+this.path),this.atime=c?.atime??d?.atime??bx(a,b+476,12),this.ctime=c?.ctime??d?.ctime??bx(a,b+488,12)}let f=256;for(let c=b;c<b+148;c++)f+=a[c];for(let c=b+156;c<b+512;c++)f+=a[c];this.cksumValid=f===this.cksum,void 0===this.cksum&&256===f&&(this.nullBlock=!0)}#b(a,b=!1){Object.assign(this,Object.fromEntries(Object.entries(a).filter(([a,c])=>!(null==c||"path"===a&&b||"linkpath"===a&&b||"global"===a))))}encode(a,b=0){if(a||(a=this.block=Buffer.alloc(512)),"Unsupported"===this.#a&&(this.#a="0"),!(a.length>=b+512))throw Error("need 512 bytes for header");let c=this.ctime||this.atime?130:155,d=bv(this.path||"",c),e=d[0],f=d[1];this.needPax=!!d[2],this.needPax=bI(a,b,100,e)||this.needPax,this.needPax=bC(a,b+100,8,this.mode)||this.needPax,this.needPax=bC(a,b+108,8,this.uid)||this.needPax,this.needPax=bC(a,b+116,8,this.gid)||this.needPax,this.needPax=bC(a,b+124,12,this.size)||this.needPax,this.needPax=bG(a,b+136,12,this.mtime)||this.needPax,a[b+156]=Number(this.#a.codePointAt(0)),this.needPax=bI(a,b+157,100,this.linkpath)||this.needPax,a.write("ustar\x0000",b+257,8),this.needPax=bI(a,b+265,32,this.uname)||this.needPax,this.needPax=bI(a,b+297,32,this.gname)||this.needPax,this.needPax=bC(a,b+329,8,this.devmaj)||this.needPax,this.needPax=bC(a,b+337,8,this.devmin)||this.needPax,this.needPax=bI(a,b+345,c,f)||this.needPax,0!==a[b+475]?this.needPax=bI(a,b+345,155,f)||this.needPax:(this.needPax=bI(a,b+345,130,f)||this.needPax,this.needPax=bG(a,b+476,12,this.atime)||this.needPax,this.needPax=bG(a,b+488,12,this.ctime)||this.needPax);let g=256;for(let c=b;c<b+148;c++)g+=a[c];for(let c=b+156;c<b+512;c++)g+=a[c];return this.cksum=g,bC(a,b+148,8,this.cksum),this.cksumValid=!0,this.needPax}get type(){return"Unsupported"===this.#a?this.#a:bs.get(this.#a)}get typeKey(){return this.#a}set type(a){let b=String(bt.get(a));if(bq(b)||"Unsupported"===b)this.#a=b;else if(bq(a))this.#a=a;else throw TypeError("invalid entry type: "+a)}},bv=(a,b)=>{let c=a,d="",e,f=u.posix.parse(a).root||".";if(100>Buffer.byteLength(c))e=[c,d,!1];else{d=u.posix.dirname(c),c=u.posix.basename(c);do 100>=Buffer.byteLength(c)&&Buffer.byteLength(d)<=b?e=[c,d,!1]:Buffer.byteLength(c)>100&&Buffer.byteLength(d)<=b?e=[c.slice(0,99),d,!0]:(c=u.posix.join(u.posix.basename(d),c),d=u.posix.dirname(d));while(d!==f&&void 0===e)e||(e=[a.slice(0,99),"",!0])}return e},bw=(a,b,c)=>a.subarray(b,b+c).toString("utf8").replace(/\0.*/,""),bx=(a,b,c)=>by(bz(a,b,c)),by=a=>void 0===a?void 0:new Date(1e3*a),bz=(a,b,c)=>128&Number(a[b])?(a=>{let b=a[0],c=128===b?(a=>{for(var b=a.length,c=0,d=b-1;d>-1;d--){var e=Number(a[d]);0!==e&&(c+=e*Math.pow(256,b-d-1))}return c})(a.subarray(1,a.length)):255===b?(a=>{for(var b=a.length,c=0,d=!1,e=b-1;e>-1;e--){var f,g=Number(a[e]);d?f=bl(g):0===g?f=g:(d=!0,f=bm(g)),0!==f&&(c-=f*Math.pow(256,b-e-1))}return c})(a):null;if(null===c)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(c))throw Error("parsed number outside of javascript safe integer range");return c})(a.subarray(b,b+c)):bA(a,b,c),bA=(a,b,c)=>{let d;return isNaN(d=parseInt(a.subarray(b,b+c).toString("utf8").replace(/\0.*$/,"").trim(),8))?void 0:d},bB={12:0x1ffffffff,8:2097151},bC=(a,b,c,d)=>void 0!==d&&(d>bB[c]||d<0?(((a,b)=>{if(Number.isSafeInteger(a))a<0?((a,b)=>{b[0]=255;var c=!1;a*=-1;for(var d=b.length;d>1;d--){var e=255&a;a=Math.floor(a/256),c?b[d-1]=bl(e):0===e?b[d-1]=0:(c=!0,b[d-1]=bm(e))}})(a,b):((a,b)=>{b[0]=128;for(var c=b.length;c>1;c--)b[c-1]=255&a,a=Math.floor(a/256)})(a,b);else throw Error("cannot encode number outside of javascript safe integer range")})(d,a.subarray(b,b+c)),!0):(bD(a,b,c,d),!1)),bD=(a,b,c,d)=>a.write(bE(d,c),b,c,"ascii"),bE=(a,b)=>bF(Math.floor(a).toString(8),b),bF=(a,b)=>(a.length===b-1?a:Array(b-a.length-1).join("0")+a+" ")+"\0",bG=(a,b,c,d)=>void 0!==d&&bC(a,b,c,d.getTime()/1e3),bH=Array(156).join("\0"),bI=(a,b,c,d)=>void 0!==d&&(a.write(d+bH,b,c,"utf8"),d.length!==Buffer.byteLength(d)||d.length>c),bJ=class a{atime;mtime;ctime;charset;comment;gid;uid;gname;uname;linkpath;dev;ino;nlink;path;size;mode;global;constructor(a,b=!1){this.atime=a.atime,this.charset=a.charset,this.comment=a.comment,this.ctime=a.ctime,this.dev=a.dev,this.gid=a.gid,this.global=b,this.gname=a.gname,this.ino=a.ino,this.linkpath=a.linkpath,this.mtime=a.mtime,this.nlink=a.nlink,this.path=a.path,this.size=a.size,this.uid=a.uid,this.uname=a.uname}encode(){let a=this.encodeBody();if(""===a)return Buffer.allocUnsafe(0);let b=Buffer.byteLength(a),c=512*Math.ceil(1+b/512),d=Buffer.allocUnsafe(c);for(let a=0;a<512;a++)d[a]=0;new bu({path:("PaxHeader/"+(0,u.basename)(this.path??"")).slice(0,99),mode:this.mode||420,uid:this.uid,gid:this.gid,size:b,mtime:this.mtime,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime,ctime:this.ctime}).encode(d),d.write(a,512,b,"utf8");for(let a=b+512;a<d.length;a++)d[a]=0;return d}encodeBody(){return this.encodeField("path")+this.encodeField("ctime")+this.encodeField("atime")+this.encodeField("dev")+this.encodeField("ino")+this.encodeField("nlink")+this.encodeField("charset")+this.encodeField("comment")+this.encodeField("gid")+this.encodeField("gname")+this.encodeField("linkpath")+this.encodeField("mtime")+this.encodeField("size")+this.encodeField("uid")+this.encodeField("uname")}encodeField(a){if(void 0===this[a])return"";let b=this[a],c=" "+("dev"===a||"ino"===a||"nlink"===a?"SCHILY.":"")+a+"="+(b instanceof Date?b.getTime()/1e3:b)+`
2
+ `,d=Buffer.byteLength(c),e=Math.floor(Math.log(d)/Math.log(10))+1;return d+e>=Math.pow(10,e)&&(e+=1),e+d+c}static parse(b,c,d=!1){return new a(bK(bL(b),c),d)}},bK=(a,b)=>b?Object.assign({},b,a):a,bL=a=>a.replace(/\n$/,"").split(`
3
+ `).reduce(bM,Object.create(null)),bM=(a,b)=>{let c=parseInt(b,10);if(c!==Buffer.byteLength(b)+1)return a;let d=(b=b.slice((c+" ").length)).split("="),e=d.shift();if(!e)return a;let f=e.replace(/^SCHILY\.(dev|ino|nlink)/,"$1"),g=d.join("=");return a[f]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(f)?new Date(1e3*Number(g)):/^[0-9]+$/.test(g)?+g:g,a},bN="win32"!==(process.env.TESTING_TAR_FAKE_PLATFORM||process.platform)?a=>a:a=>a&&a.replaceAll(/\\/g,"/"),bO=class extends as{extended;globalExtended;header;startBlockSize;blockRemain;remain;type;meta=!1;ignore=!1;path;mode;uid;gid;uname;gname;size=0;mtime;atime;ctime;linkpath;dev;ino;nlink;invalid=!1;absolute;unsupported=!1;constructor(a,b,c){switch(super({}),this.pause(),this.extended=b,this.globalExtended=c,this.header=a,this.remain=a.size??0,this.startBlockSize=512*Math.ceil(this.remain/512),this.blockRemain=this.startBlockSize,this.type=a.type,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}if(!a.path)throw Error("no path provided for tar.ReadEntry");this.path=bN(a.path),this.mode=a.mode,this.mode&&(this.mode=4095&this.mode),this.uid=a.uid,this.gid=a.gid,this.uname=a.uname,this.gname=a.gname,this.size=this.remain,this.mtime=a.mtime,this.atime=a.atime,this.ctime=a.ctime,this.linkpath=a.linkpath?bN(a.linkpath):void 0,this.uname=a.uname,this.gname=a.gname,b&&this.#a(b),c&&this.#a(c,!0)}write(a){let b=a.length;if(b>this.blockRemain)throw Error("writing more to entry than is appropriate");let c=this.remain,d=this.blockRemain;return this.remain=Math.max(0,c-b),this.blockRemain=Math.max(0,d-b),!!this.ignore||(c>=b?super.write(a):super.write(a.subarray(0,c)))}#a(a,b=!1){a.path&&(a.path=bN(a.path)),a.linkpath&&(a.linkpath=bN(a.linkpath)),Object.assign(this,Object.fromEntries(Object.entries(a).filter(([a,c])=>!(null==c||"path"===a&&b))))}},bP=(a,b,c,d={})=>{a.file&&(d.file=a.file),a.cwd&&(d.cwd=a.cwd),d.code=c instanceof Error&&c.code||b,d.tarCode=b,a.strict||!1===d.recoverable?c instanceof Error?a.emit("error",Object.assign(c,d)):a.emit("error",Object.assign(Error(`${b}: ${c}`),d)):(c instanceof Error&&(d=Object.assign(c,d),c=c.message),a.emit("warn",b,c,d))},bQ=Buffer.from([31,139]),bR=Buffer.from([40,181,47,253]),bS=Math.max(bQ.length,bR.length),bT=Symbol("state"),bU=Symbol("writeEntry"),bV=Symbol("readEntry"),bW=Symbol("nextEntry"),bX=Symbol("processEntry"),bY=Symbol("extendedHeader"),bZ=Symbol("globalExtendedHeader"),b$=Symbol("meta"),b_=Symbol("emitMeta"),b0=Symbol("buffer"),b1=Symbol("queue"),b2=Symbol("ended"),b3=Symbol("emittedEnd"),b4=Symbol("emit"),b5=Symbol("unzip"),b6=Symbol("consumeChunk"),b7=Symbol("consumeChunkSub"),b8=Symbol("consumeBody"),b9=Symbol("consumeMeta"),ca=Symbol("consumeHeader"),cb=Symbol("consuming"),cc=Symbol("bufferConcat"),cd=Symbol("maybeEnd"),ce=Symbol("writing"),cf=Symbol("aborted"),cg=Symbol("onDone"),ch=Symbol("sawValidEntry"),ci=Symbol("sawNullBlock"),cj=Symbol("sawEOF"),ck=Symbol("closeStream"),cl=()=>!0,cm=class extends x.EventEmitter{file;strict;maxMetaEntrySize;filter;brotli;zstd;writable=!0;readable=!1;[b1]=[];[b0];[bV];[bU];[bT]="begin";[b$]="";[bY];[bZ];[b2]=!1;[b5];[cf]=!1;[ch];[ci]=!1;[cj]=!1;[ce]=!1;[cb]=!1;[b3]=!1;constructor(a={}){super(),this.file=a.file||"",this.on(cg,()=>{("begin"===this[bT]||!1===this[ch])&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),a.ondone?this.on(cg,a.ondone):this.on(cg,()=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")}),this.strict=!!a.strict,this.maxMetaEntrySize=a.maxMetaEntrySize||1048576,this.filter="function"==typeof a.filter?a.filter:cl;let b=a.file&&(a.file.endsWith(".tar.br")||a.file.endsWith(".tbr"));this.brotli=a.gzip||a.zstd||void 0===a.brotli?!!b&&void 0:a.brotli;let c=a.file&&(a.file.endsWith(".tar.zst")||a.file.endsWith(".tzst"));this.zstd=a.gzip||a.brotli||void 0===a.zstd?!!c||void 0:a.zstd,this.on("end",()=>this[ck]()),"function"==typeof a.onwarn&&this.on("warn",a.onwarn),"function"==typeof a.onReadEntry&&this.on("entry",a.onReadEntry)}warn(a,b,c={}){bP(this,a,b,c)}[ca](a,b){let c;void 0===this[ch]&&(this[ch]=!1);try{c=new bu(a,b,this[bY],this[bZ])}catch(a){return this.warn("TAR_ENTRY_INVALID",a)}if(c.nullBlock)this[ci]?(this[cj]=!0,"begin"===this[bT]&&(this[bT]="header"),this[b4]("eof")):(this[ci]=!0,this[b4]("nullBlock"));else if(this[ci]=!1,c.cksumValid)if(c.path){let a=c.type;if(/^(Symbolic)?Link$/.test(a)&&!c.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:c});else if(/^(Symbolic)?Link$/.test(a)||/^(Global)?ExtendedHeader$/.test(a)||!c.linkpath){let a=this[bU]=new bO(c,this[bY],this[bZ]);if(!this[ch])if(a.remain){let b=()=>{a.invalid||(this[ch]=!0)};a.on("end",b)}else this[ch]=!0;a.meta?a.size>this.maxMetaEntrySize?(a.ignore=!0,this[b4]("ignoredEntry",a),this[bT]="ignore",a.resume()):a.size>0&&(this[b$]="",a.on("data",a=>this[b$]+=a),this[bT]="meta"):(this[bY]=void 0,a.ignore=a.ignore||!this.filter(a.path,a),a.ignore?(this[b4]("ignoredEntry",a),this[bT]=a.remain?"ignore":"header",a.resume()):(a.remain?this[bT]="body":(this[bT]="header",a.end()),this[bV]?this[b1].push(a):(this[b1].push(a),this[bW]())))}else this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:c})}else this.warn("TAR_ENTRY_INVALID","path is required",{header:c});else this.warn("TAR_ENTRY_INVALID","checksum failure",{header:c})}[ck](){queueMicrotask(()=>this.emit("close"))}[bX](a){let b=!0;if(a)if(Array.isArray(a)){let[b,...c]=a;this.emit(b,...c)}else this[bV]=a,this.emit("entry",a),a.emittedEnd||(a.on("end",()=>this[bW]()),b=!1);else this[bV]=void 0,b=!1;return b}[bW](){do;while(this[bX](this[b1].shift()))if(0===this[b1].length){let a=this[bV];!a||a.flowing||a.size===a.remain?this[ce]||this.emit("drain"):a.once("drain",()=>this.emit("drain"))}}[b8](a,b){let c=this[bU];if(!c)throw Error("attempt to consume body without entry??");let d=c.blockRemain??0,e=d>=a.length&&0===b?a:a.subarray(b,b+d);return c.write(e),c.blockRemain||(this[bT]="header",this[bU]=void 0,c.end()),e.length}[b9](a,b){let c=this[bU],d=this[b8](a,b);return!this[bU]&&c&&this[b_](c),d}[b4](a,b,c){0!==this[b1].length||this[bV]?this[b1].push([a,b,c]):this.emit(a,b,c)}[b_](a){switch(this[b4]("meta",this[b$]),a.type){case"ExtendedHeader":case"OldExtendedHeader":this[bY]=bJ.parse(this[b$],this[bY],!1);break;case"GlobalExtendedHeader":this[bZ]=bJ.parse(this[b$],this[bZ],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":{let a=this[bY]??Object.create(null);this[bY]=a,a.path=this[b$].replace(/\0.*/,"");break}case"NextFileHasLongLinkpath":{let a=this[bY]||Object.create(null);this[bY]=a,a.linkpath=this[b$].replace(/\0.*/,"");break}default:throw Error("unknown meta: "+a.type)}}abort(a){this[cf]=!0,this.emit("abort",a),this.warn("TAR_ABORT",a,{recoverable:!1})}write(a,b,c){if("function"==typeof b&&(c=b,b=void 0),"string"==typeof a&&(a=Buffer.from(a,"string"==typeof b?b:"utf8")),this[cf])return c?.(),!1;if((void 0===this[b5]||void 0===this.brotli&&!1===this[b5])&&a){if(this[b0]&&(a=Buffer.concat([this[b0],a]),this[b0]=void 0),a.length<bS)return this[b0]=a,c?.(),!0;for(let b=0;void 0===this[b5]&&b<bQ.length;b++)a[b]!==bQ[b]&&(this[b5]=!1);let b=!1;if(!1===this[b5]&&!1!==this.zstd){b=!0;for(let c=0;c<bR.length;c++)if(a[c]!==bR[c]){b=!1;break}}let d=void 0===this.brotli&&!b;if(!1===this[b5]&&d)if(a.length<512)if(!this[b2])return this[b0]=a,c?.(),!0;else this.brotli=!0;else try{new bu(a.subarray(0,512)),this.brotli=!1}catch{this.brotli=!0}if(void 0===this[b5]||!1===this[b5]&&(this.brotli||b)){let d=this[b2];this[b2]=!1,this[b5]=void 0===this[b5]?new be({}):b?new bk({}):new bh({}),this[b5].on("data",a=>this[b6](a)),this[b5].on("error",a=>this.abort(a)),this[b5].on("end",()=>{this[b2]=!0,this[b6]()}),this[ce]=!0;let e=!!this[b5][d?"end":"write"](a);return this[ce]=!1,c?.(),e}}this[ce]=!0,this[b5]?this[b5].write(a):this[b6](a),this[ce]=!1;let d=!(this[b1].length>0)&&(!this[bV]||this[bV].flowing);return d||0!==this[b1].length||this[bV]?.once("drain",()=>this.emit("drain")),c?.(),d}[cc](a){a&&!this[cf]&&(this[b0]=this[b0]?Buffer.concat([this[b0],a]):a)}[cd](){if(this[b2]&&!this[b3]&&!this[cf]&&!this[cb]){this[b3]=!0;let a=this[bU];if(a&&a.blockRemain){let b=this[b0]?this[b0].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${a.blockRemain} more bytes, only ${b} available)`,{entry:a}),this[b0]&&a.write(this[b0]),a.end()}this[b4](cg)}}[b6](a){if(this[cb]&&a)this[cc](a);else if(a||this[b0]){if(a){if(this[cb]=!0,this[b0]){this[cc](a);let b=this[b0];this[b0]=void 0,this[b7](b)}else this[b7](a);for(;this[b0]&&this[b0]?.length>=512&&!this[cf]&&!this[cj];){let a=this[b0];this[b0]=void 0,this[b7](a)}this[cb]=!1}}else this[cd]();(!this[b0]||this[b2])&&this[cd]()}[b7](a){let b=0,c=a.length;for(;b+512<=c&&!this[cf]&&!this[cj];)switch(this[bT]){case"begin":case"header":this[ca](a,b),b+=512;break;case"ignore":case"body":b+=this[b8](a,b);break;case"meta":b+=this[b9](a,b);break;default:throw Error("invalid state: "+this[bT])}b<c&&(this[b0]=this[b0]?Buffer.concat([a.subarray(b),this[b0]]):a.subarray(b))}end(a,b,c){return"function"==typeof a&&(c=a,b=void 0,a=void 0),"function"==typeof b&&(c=b,b=void 0),"string"==typeof a&&(a=Buffer.from(a,b)),c&&this.once("finish",c),this[cf]||(this[b5]?(a&&this[b5].write(a),this[b5].end()):(this[b2]=!0,(void 0===this.brotli||void 0===this.zstd)&&(a=a||Buffer.alloc(0)),a&&this.write(a),this[cd]())),this}},cn=a=>{let b=a.length-1,c=-1;for(;b>-1&&"/"===a.charAt(b);)c=b,b--;return -1===c?a:a.slice(0,c)},co=(a,b)=>{let c=new Map(b.map(a=>[cn(a),!0])),d=a.filter,e=(a,b="")=>{let d=b||(0,k.parse)(a).root||".",f;if(a===d)f=!1;else{let b=c.get(a);f=void 0!==b?b:e((0,k.dirname)(a),d)}return c.set(a,f),f};a.filter=d?(a,b)=>d(a,b)&&e(cn(a)):a=>e(cn(a))},cp=a1(a=>{let b=new cm(a),c=a.file,d;try{d=s.default.openSync(c,"r");let e=s.default.fstatSync(d),f=a.maxReadSize||0x1000000;if(e.size<f){let a=Buffer.allocUnsafe(e.size),c=s.default.readSync(d,a,0,e.size,0);b.end(c===a.byteLength?a:a.subarray(0,c))}else{let a=0,c=Buffer.allocUnsafe(f);for(;a<e.size;){let e=s.default.readSync(d,c,0,f,a);if(0===e)break;a+=e,b.write(c.subarray(0,e))}b.end()}}finally{if("number"==typeof d)try{s.default.closeSync(d)}catch{}}},(a,b)=>{let c=new cm(a),d=a.maxReadSize||0x1000000,e=a.file;return new Promise((a,b)=>{c.on("error",b),c.on("end",a),s.default.stat(e,(a,f)=>{if(a)b(a);else{let a=new aW(e,{readSize:d,size:f.size});a.on("error",b),a.pipe(c)}})})},a=>new cm(a),a=>new cm(a),(a,b)=>{let c;b?.length&&co(a,b),a.noResume||(c=a.onReadEntry,a.onReadEntry=c?a=>{c(a),a.resume()}:a=>a.resume())}),cq=(a,b,c)=>(a&=4095,c&&(a=(384|a)&-19),b&&(256&a&&(a|=64),32&a&&(a|=8),4&a&&(a|=1)),a),{isAbsolute:cr,parse:cs}=u.win32,ct=a=>{let b="",c=cs(a);for(;cr(a)||c.root;){let d="/"===a.charAt(0)&&"//?/"!==a.slice(0,4)?"/":c.root;a=a.slice(d.length),b+=d,c=cs(a)}return[b,a]},cu=["|","<",">","?",":"],cv=cu.map(a=>String.fromCodePoint(61440+Number(a.codePointAt(0)))),cw=new Map(cu.map((a,b)=>[a,cv[b]])),cx=new Map(cv.map((a,b)=>[a,cu[b]])),cy=a=>cu.reduce((a,b)=>a.split(b).join(cw.get(b)),a),cz=(a,b)=>b?(a=bN(a).replace(/^\.(\/|$)/,""),cn(b)+"/"+a):bN(a),cA=Symbol("process"),cB=Symbol("file"),cC=Symbol("directory"),cD=Symbol("symlink"),cE=Symbol("hardlink"),cF=Symbol("header"),cG=Symbol("read"),cH=Symbol("lstat"),cI=Symbol("onlstat"),cJ=Symbol("onread"),cK=Symbol("onreadlink"),cL=Symbol("openfile"),cM=Symbol("onopenfile"),cN=Symbol("close"),cO=Symbol("mode"),cP=Symbol("awaitDrain"),cQ=Symbol("ondrain"),cR=Symbol("prefix"),cS=class extends as{path;portable;myuid=process.getuid&&process.getuid()||0;myuser=process.env.USER||"";maxReadSize;linkCache;statCache;preservePaths;cwd;strict;mtime;noPax;noMtime;prefix;fd;blockLen=0;blockRemain=0;buf;pos=0;remain=0;length=0;offset=0;win32;absolute;header;type;linkpath;stat;onWriteEntry;#a=!1;constructor(a,b={}){let c=a0(b);super(),this.path=bN(a),this.portable=!!c.portable,this.maxReadSize=c.maxReadSize||0x1000000,this.linkCache=c.linkCache||new Map,this.statCache=c.statCache||new Map,this.preservePaths=!!c.preservePaths,this.cwd=bN(c.cwd||process.cwd()),this.strict=!!c.strict,this.noPax=!!c.noPax,this.noMtime=!!c.noMtime,this.mtime=c.mtime,this.prefix=c.prefix?bN(c.prefix):void 0,this.onWriteEntry=c.onWriteEntry,"function"==typeof c.onwarn&&this.on("warn",c.onwarn);let d=!1;if(!this.preservePaths){let[a,b]=ct(this.path);a&&"string"==typeof b&&(this.path=b,d=a)}this.win32=!!c.win32||"win32"===process.platform,this.win32&&(this.path=(a=>cv.reduce((a,b)=>a.split(b).join(cx.get(b)),a))(this.path.replaceAll(/\\/g,"/")),a=a.replaceAll(/\\/g,"/")),this.absolute=bN(c.absolute||k.default.resolve(this.cwd,a)),""===this.path&&(this.path="./"),d&&this.warn("TAR_ENTRY_INFO",`stripping ${d} from absolute path`,{entry:this,path:d+this.path});let e=this.statCache.get(this.absolute);e?this[cI](e):this[cH]()}warn(a,b,c={}){return bP(this,a,b,c)}emit(a,...b){return"error"===a&&(this.#a=!0),super.emit(a,...b)}[cH](){i.default.lstat(this.absolute,(a,b)=>{if(a)return this.emit("error",a);this[cI](b)})}[cI](a){this.statCache.set(this.absolute,a),this.stat=a,a.isFile()||(a.size=0),this.type=cV(a),this.emit("stat",a),this[cA]()}[cA](){switch(this.type){case"File":return this[cB]();case"Directory":return this[cC]();case"SymbolicLink":return this[cD]();default:return this.end()}}[cO](a){return cq(a,"Directory"===this.type,this.portable)}[cR](a){return cz(a,this.prefix)}[cF](){if(!this.stat)throw Error("cannot write header before stat");"Directory"===this.type&&this.portable&&(this.noMtime=!0),this.onWriteEntry?.(this),this.header=new bu({path:this[cR](this.path),linkpath:"Link"===this.type&&void 0!==this.linkpath?this[cR](this.linkpath):this.linkpath,mode:this[cO](this.stat.mode),uid:this.portable?void 0:this.stat.uid,gid:this.portable?void 0:this.stat.gid,size:this.stat.size,mtime:this.noMtime?void 0:this.mtime||this.stat.mtime,type:"Unsupported"===this.type?void 0:this.type,uname:this.portable?void 0:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?void 0:this.stat.atime,ctime:this.portable?void 0:this.stat.ctime}),this.header.encode()&&!this.noPax&&super.write(new bJ({atime:this.portable?void 0:this.header.atime,ctime:this.portable?void 0:this.header.ctime,gid:this.portable?void 0:this.header.gid,mtime:this.noMtime?void 0:this.mtime||this.header.mtime,path:this[cR](this.path),linkpath:"Link"===this.type&&void 0!==this.linkpath?this[cR](this.linkpath):this.linkpath,size:this.header.size,uid:this.portable?void 0:this.header.uid,uname:this.portable?void 0:this.header.uname,dev:this.portable?void 0:this.stat.dev,ino:this.portable?void 0:this.stat.ino,nlink:this.portable?void 0:this.stat.nlink}).encode());let a=this.header?.block;if(!a)throw Error("failed to encode header");super.write(a)}[cC](){if(!this.stat)throw Error("cannot create directory entry without stat");"/"!==this.path.slice(-1)&&(this.path+="/"),this.stat.size=0,this[cF](),this.end()}[cD](){i.default.readlink(this.absolute,(a,b)=>{if(a)return this.emit("error",a);this[cK](b)})}[cK](a){this.linkpath=bN(a),this[cF](),this.end()}[cE](a){if(!this.stat)throw Error("cannot create link entry without stat");this.type="Link",this.linkpath=bN(k.default.relative(this.cwd,a)),this.stat.size=0,this[cF](),this.end()}[cB](){if(!this.stat)throw Error("cannot create file entry without stat");if(this.stat.nlink>1){let a=`${this.stat.dev}:${this.stat.ino}`,b=this.linkCache.get(a);if(b?.indexOf(this.cwd)===0)return this[cE](b);this.linkCache.set(a,this.absolute)}if(this[cF](),0===this.stat.size)return this.end();this[cL]()}[cL](){i.default.open(this.absolute,"r",(a,b)=>{if(a)return this.emit("error",a);this[cM](b)})}[cM](a){if(this.fd=a,this.#a)return this[cN]();if(!this.stat)throw Error("should stat before calling onopenfile");this.blockLen=512*Math.ceil(this.stat.size/512),this.blockRemain=this.blockLen;let b=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(b),this.offset=0,this.pos=0,this.remain=this.stat.size,this.length=this.buf.length,this[cG]()}[cG](){let{fd:a,buf:b,offset:c,length:d,pos:e}=this;if(void 0===a||void 0===b)throw Error("cannot read file without first opening");i.default.read(a,b,c,d,e,(a,b)=>{if(a)return this[cN](()=>this.emit("error",a));this[cJ](b)})}[cN](a=()=>{}){void 0!==this.fd&&i.default.close(this.fd,a)}[cJ](a){if(a<=0&&this.remain>0){let a=Object.assign(Error("encountered unexpected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[cN](()=>this.emit("error",a))}if(a>this.remain){let a=Object.assign(Error("did not encounter expected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[cN](()=>this.emit("error",a))}if(!this.buf)throw Error("should have created buffer prior to reading");if(a===this.remain)for(let b=a;b<this.length&&a<this.blockRemain;b++)this.buf[b+this.offset]=0,a++,this.remain++;let b=0===this.offset&&a===this.buf.length?this.buf:this.buf.subarray(this.offset,this.offset+a);this.write(b)?this[cQ]():this[cP](()=>this[cQ]())}[cP](a){this.once("drain",a)}write(a,b,c){if("function"==typeof b&&(c=b,b=void 0),"string"==typeof a&&(a=Buffer.from(a,"string"==typeof b?b:"utf8")),this.blockRemain<a.length){let a=Object.assign(Error("writing more data than expected"),{path:this.absolute});return this.emit("error",a)}return this.remain-=a.length,this.blockRemain-=a.length,this.pos+=a.length,this.offset+=a.length,super.write(a,null,c)}[cQ](){if(!this.remain)return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),this[cN](a=>a?this.emit("error",a):this.end());if(!this.buf)throw Error("buffer lost somehow in ONDRAIN");this.offset>=this.length&&(this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length)),this.offset=0),this.length=this.buf.length-this.offset,this[cG]()}},cT=class extends cS{sync=!0;[cH](){this[cI](i.default.lstatSync(this.absolute))}[cD](){this[cK](i.default.readlinkSync(this.absolute))}[cL](){this[cM](i.default.openSync(this.absolute,"r"))}[cG](){let a=!0;try{let{fd:b,buf:c,offset:d,length:e,pos:f}=this;if(void 0===b||void 0===c)throw Error("fd and buf must be set in READ method");let g=i.default.readSync(b,c,d,e,f);this[cJ](g),a=!1}finally{if(a)try{this[cN](()=>{})}catch{}}}[cP](a){a()}[cN](a=()=>{}){void 0!==this.fd&&i.default.closeSync(this.fd),a()}},cU=class extends as{blockLen=0;blockRemain=0;buf=0;pos=0;remain=0;length=0;preservePaths;portable;strict;noPax;noMtime;readEntry;type;prefix;path;mode;uid;gid;uname;gname;header;mtime;atime;ctime;linkpath;size;onWriteEntry;warn(a,b,c={}){return bP(this,a,b,c)}constructor(a,b={}){let c=a0(b);super(),this.preservePaths=!!c.preservePaths,this.portable=!!c.portable,this.strict=!!c.strict,this.noPax=!!c.noPax,this.noMtime=!!c.noMtime,this.onWriteEntry=c.onWriteEntry,this.readEntry=a;let{type:d}=a;if("Unsupported"===d)throw Error("writing entry that should be ignored");this.type=d,"Directory"===this.type&&this.portable&&(this.noMtime=!0),this.prefix=c.prefix,this.path=bN(a.path),this.mode=void 0!==a.mode?this[cO](a.mode):void 0,this.uid=this.portable?void 0:a.uid,this.gid=this.portable?void 0:a.gid,this.uname=this.portable?void 0:a.uname,this.gname=this.portable?void 0:a.gname,this.size=a.size,this.mtime=this.noMtime?void 0:c.mtime||a.mtime,this.atime=this.portable?void 0:a.atime,this.ctime=this.portable?void 0:a.ctime,this.linkpath=void 0!==a.linkpath?bN(a.linkpath):void 0,"function"==typeof c.onwarn&&this.on("warn",c.onwarn);let e=!1;if(!this.preservePaths){let[a,b]=ct(this.path);a&&"string"==typeof b&&(this.path=b,e=a)}this.remain=a.size,this.blockRemain=a.startBlockSize,this.onWriteEntry?.(this),this.header=new bu({path:this[cR](this.path),linkpath:"Link"===this.type&&void 0!==this.linkpath?this[cR](this.linkpath):this.linkpath,mode:this.mode,uid:this.portable?void 0:this.uid,gid:this.portable?void 0:this.gid,size:this.size,mtime:this.noMtime?void 0:this.mtime,type:this.type,uname:this.portable?void 0:this.uname,atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime}),e&&this.warn("TAR_ENTRY_INFO",`stripping ${e} from absolute path`,{entry:this,path:e+this.path}),this.header.encode()&&!this.noPax&&super.write(new bJ({atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime,gid:this.portable?void 0:this.gid,mtime:this.noMtime?void 0:this.mtime,path:this[cR](this.path),linkpath:"Link"===this.type&&void 0!==this.linkpath?this[cR](this.linkpath):this.linkpath,size:this.size,uid:this.portable?void 0:this.uid,uname:this.portable?void 0:this.uname,dev:this.portable?void 0:this.readEntry.dev,ino:this.portable?void 0:this.readEntry.ino,nlink:this.portable?void 0:this.readEntry.nlink}).encode());let f=this.header?.block;if(!f)throw Error("failed to encode header");super.write(f),a.pipe(this)}[cR](a){return cz(a,this.prefix)}[cO](a){return cq(a,"Directory"===this.type,this.portable)}write(a,b,c){"function"==typeof b&&(c=b,b=void 0),"string"==typeof a&&(a=Buffer.from(a,"string"==typeof b?b:"utf8"));let d=a.length;if(d>this.blockRemain)throw Error("writing more to entry than is appropriate");return this.blockRemain-=d,super.write(a,c)}end(a,b,c){return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),"function"==typeof a&&(c=a,b=void 0,a=void 0),"function"==typeof b&&(c=b,b=void 0),"string"==typeof a&&(a=Buffer.from(a,b??"utf8")),c&&this.once("finish",c),a?super.end(a,c):super.end(c),this}},cV=a=>a.isFile()?"File":a.isDirectory()?"Directory":a.isSymbolicLink()?"SymbolicLink":"Unsupported",cW=class a{tail;head;length=0;static create(b=[]){return new a(b)}constructor(a=[]){for(let b of a)this.push(b)}*[Symbol.iterator](){for(let a=this.head;a;a=a.next)yield a.value}removeNode(a){if(a.list!==this)throw Error("removing node which does not belong to this list");let b=a.next,c=a.prev;return b&&(b.prev=c),c&&(c.next=b),a===this.head&&(this.head=b),a===this.tail&&(this.tail=c),this.length--,a.next=void 0,a.prev=void 0,a.list=void 0,b}unshiftNode(a){if(a===this.head)return;a.list&&a.list.removeNode(a);let b=this.head;a.list=this,a.next=b,b&&(b.prev=a),this.head=a,this.tail||(this.tail=a),this.length++}pushNode(a){if(a===this.tail)return;a.list&&a.list.removeNode(a);let b=this.tail;a.list=this,a.prev=b,b&&(b.next=a),this.tail=a,this.head||(this.head=a),this.length++}push(...a){for(let c=0,d=a.length;c<d;c++){var b;b=this,b.tail=new cX(a[c],b.tail,void 0,b),b.head||(b.head=b.tail),b.length++}return this.length}unshift(...a){for(var b,c=0,d=a.length;c<d;c++){b=this,b.head=new cX(a[c],void 0,b.head,b),b.tail||(b.tail=b.head),b.length++}return this.length}pop(){if(!this.tail)return;let a=this.tail.value,b=this.tail;return this.tail=this.tail.prev,this.tail?this.tail.next=void 0:this.head=void 0,b.list=void 0,this.length--,a}shift(){if(!this.head)return;let a=this.head.value,b=this.head;return this.head=this.head.next,this.head?this.head.prev=void 0:this.tail=void 0,b.list=void 0,this.length--,a}forEach(a,b){b=b||this;for(let c=this.head,d=0;c;d++)a.call(b,c.value,d,this),c=c.next}forEachReverse(a,b){b=b||this;for(let c=this.tail,d=this.length-1;c;d--)a.call(b,c.value,d,this),c=c.prev}get(a){let b=0,c=this.head;for(;c&&b<a;b++)c=c.next;if(b===a&&c)return c.value}getReverse(a){let b=0,c=this.tail;for(;c&&b<a;b++)c=c.prev;if(b===a&&c)return c.value}map(b,c){c=c||this;let d=new a;for(let a=this.head;a;)d.push(b.call(c,a.value,this)),a=a.next;return d}mapReverse(b,c){c=c||this;var d=new a;for(let a=this.tail;a;)d.push(b.call(c,a.value,this)),a=a.prev;return d}reduce(a,b){let c,d=this.head;if(arguments.length>1)c=b;else if(this.head)d=this.head.next,c=this.head.value;else throw TypeError("Reduce of empty list with no initial value");for(var e=0;d;e++)c=a(c,d.value,e),d=d.next;return c}reduceReverse(a,b){let c,d=this.tail;if(arguments.length>1)c=b;else if(this.tail)d=this.tail.prev,c=this.tail.value;else throw TypeError("Reduce of empty list with no initial value");for(let b=this.length-1;d;b--)c=a(c,d.value,b),d=d.prev;return c}toArray(){let a=Array(this.length);for(let b=0,c=this.head;c;b++)a[b]=c.value,c=c.next;return a}toArrayReverse(){let a=Array(this.length);for(let b=0,c=this.tail;c;b++)a[b]=c.value,c=c.prev;return a}slice(b=0,c=this.length){c<0&&(c+=this.length),b<0&&(b+=this.length);let d=new a;if(c<b||c<0)return d;b<0&&(b=0),c>this.length&&(c=this.length);let e=this.head,f=0;for(f=0;e&&f<b;f++)e=e.next;for(;e&&f<c;f++,e=e.next)d.push(e.value);return d}sliceReverse(b=0,c=this.length){c<0&&(c+=this.length),b<0&&(b+=this.length);let d=new a;if(c<b||c<0)return d;b<0&&(b=0),c>this.length&&(c=this.length);let e=this.length,f=this.tail;for(;f&&e>c;e--)f=f.prev;for(;f&&e>b;e--,f=f.prev)d.push(f.value);return d}splice(a,b=0,...c){a>this.length&&(a=this.length-1),a<0&&(a=this.length+a);let d=this.head;for(let b=0;d&&b<a;b++)d=d.next;let e=[];for(let a=0;d&&a<b;a++)e.push(d.value),d=this.removeNode(d);for(let a of(d?d!==this.tail&&(d=d.prev):d=this.tail,c))d=function(a,b,c){let d=b?b.next:a.head,e=new cX(c,b,d,a);return void 0===e.next&&(a.tail=e),void 0===e.prev&&(a.head=e),a.length++,e}(this,d,a);return e}reverse(){let a=this.head,b=this.tail;for(let b=a;b;b=b.prev){let a=b.prev;b.prev=b.next,b.next=a}return this.head=b,this.tail=a,this}},cX=class{list;next;prev;value;constructor(a,b,c,d){this.list=d,this.value=a,b?(b.next=this,this.prev=b):this.prev=void 0,c?(c.prev=this,this.next=c):this.next=void 0}},cY=class{path;absolute;entry;stat;readdir;pending=!1;ignore=!1;piped=!1;constructor(a,b){this.path=a||"./",this.absolute=b}},cZ=Buffer.alloc(1024),c$=Symbol("onStat"),c_=Symbol("ended"),c0=Symbol("queue"),c1=Symbol("current"),c2=Symbol("process"),c3=Symbol("processing"),c4=Symbol("processJob"),c5=Symbol("jobs"),c6=Symbol("jobDone"),c7=Symbol("addFSEntry"),c8=Symbol("addTarEntry"),c9=Symbol("stat"),da=Symbol("readdir"),db=Symbol("onreaddir"),dc=Symbol("pipe"),dd=Symbol("entry"),de=Symbol("entryOpt"),df=Symbol("writeEntryClass"),dg=Symbol("write"),dh=Symbol("ondrain"),di=class extends as{sync=!1;opt;cwd;maxReadSize;preservePaths;strict;noPax;prefix;linkCache;statCache;file;portable;zip;readdirCache;noDirRecurse;follow;noMtime;mtime;filter;jobs;[df];onWriteEntry;[c0];[c5]=0;[c3]=!1;[c_]=!1;constructor(a={}){if(super(),this.opt=a,this.file=a.file||"",this.cwd=a.cwd||process.cwd(),this.maxReadSize=a.maxReadSize,this.preservePaths=!!a.preservePaths,this.strict=!!a.strict,this.noPax=!!a.noPax,this.prefix=bN(a.prefix||""),this.linkCache=a.linkCache||new Map,this.statCache=a.statCache||new Map,this.readdirCache=a.readdirCache||new Map,this.onWriteEntry=a.onWriteEntry,this[df]=cS,"function"==typeof a.onwarn&&this.on("warn",a.onwarn),this.portable=!!a.portable,a.gzip||a.brotli||a.zstd){if(+!!a.gzip+ +!!a.brotli+ +!!a.zstd>1)throw TypeError("gzip, brotli, zstd are mutually exclusive");if(a.gzip&&("object"!=typeof a.gzip&&(a.gzip={}),this.portable&&(a.gzip.portable=!0),this.zip=new bd(a.gzip)),a.brotli&&("object"!=typeof a.brotli&&(a.brotli={}),this.zip=new bg(a.brotli)),a.zstd&&("object"!=typeof a.zstd&&(a.zstd={}),this.zip=new bj(a.zstd)),!this.zip)throw Error("impossible");let b=this.zip;b.on("data",a=>super.write(a)),b.on("end",()=>super.end()),b.on("drain",()=>this[dh]()),this.on("resume",()=>b.resume())}else this.on("drain",this[dh]);this.noDirRecurse=!!a.noDirRecurse,this.follow=!!a.follow,this.noMtime=!!a.noMtime,a.mtime&&(this.mtime=a.mtime),this.filter="function"==typeof a.filter?a.filter:()=>!0,this[c0]=new cW,this[c5]=0,this.jobs=Number(a.jobs)||4,this[c3]=!1,this[c_]=!1}[dg](a){return super.write(a)}add(a){return this.write(a),this}end(a,b,c){return"function"==typeof a&&(c=a,a=void 0),"function"==typeof b&&(c=b,b=void 0),a&&this.add(a),this[c_]=!0,this[c2](),c&&c(),this}write(a){if(this[c_])throw Error("write after end");return a instanceof bO?this[c8](a):this[c7](a),this.flowing}[c8](a){let b=bN(k.default.resolve(this.cwd,a.path));if(this.filter(a.path,a)){let c=new cY(a.path,b);c.entry=new cU(a,this[de](c)),c.entry.on("end",()=>this[c6](c)),this[c5]+=1,this[c0].push(c)}else a.resume();this[c2]()}[c7](a){let b=bN(k.default.resolve(this.cwd,a));this[c0].push(new cY(a,b)),this[c2]()}[c9](a){a.pending=!0,this[c5]+=1;let b=this.follow?"stat":"lstat";i.default[b](a.absolute,(b,c)=>{a.pending=!1,this[c5]-=1,b?this.emit("error",b):this[c$](a,c)})}[c$](a,b){this.statCache.set(a.absolute,b),a.stat=b,this.filter(a.path,b)?b.isFile()&&b.nlink>1&&a===this[c1]&&!this.linkCache.get(`${b.dev}:${b.ino}`)&&!this.sync&&this[c4](a):a.ignore=!0,this[c2]()}[da](a){a.pending=!0,this[c5]+=1,i.default.readdir(a.absolute,(b,c)=>{if(a.pending=!1,this[c5]-=1,b)return this.emit("error",b);this[db](a,c)})}[db](a,b){this.readdirCache.set(a.absolute,b),a.readdir=b,this[c2]()}[c2](){if(!this[c3]){this[c3]=!0;for(let a=this[c0].head;a&&this[c5]<this.jobs;a=a.next)if(this[c4](a.value),a.value.ignore){let b=a.next;this[c0].removeNode(a),a.next=b}this[c3]=!1,this[c_]&&0===this[c0].length&&0===this[c5]&&(this.zip?this.zip.end(cZ):(super.write(cZ),super.end()))}}get[c1](){return this[c0]&&this[c0].head&&this[c0].head.value}[c6](a){this[c0].shift(),this[c5]-=1,this[c2]()}[c4](a){if(!a.pending){if(a.entry){a!==this[c1]||a.piped||this[dc](a);return}if(!a.stat){let b=this.statCache.get(a.absolute);b?this[c$](a,b):this[c9](a)}if(a.stat&&!a.ignore){if(!this.noDirRecurse&&a.stat.isDirectory()&&!a.readdir){let b=this.readdirCache.get(a.absolute);if(b?this[db](a,b):this[da](a),!a.readdir)return}if(a.entry=this[dd](a),!a.entry){a.ignore=!0;return}a!==this[c1]||a.piped||this[dc](a)}}}[de](a){return{onwarn:(a,b,c)=>this.warn(a,b,c),noPax:this.noPax,cwd:this.cwd,absolute:a.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime,prefix:this.prefix,onWriteEntry:this.onWriteEntry}}[dd](a){this[c5]+=1;try{return new this[df](a.path,this[de](a)).on("end",()=>this[c6](a)).on("error",a=>this.emit("error",a))}catch(a){this.emit("error",a)}}[dh](){this[c1]&&this[c1].entry&&this[c1].entry.resume()}[dc](a){a.piped=!0,a.readdir&&a.readdir.forEach(b=>{let c=a.path,d="./"===c?"":c.replace(/\/*$/,"/");this[c7](d+b)});let b=a.entry,c=this.zip;if(!b)throw Error("cannot pipe without source");c?b.on("data",a=>{c.write(a)||b.pause()}):b.on("data",a=>{super.write(a)||b.pause()})}pause(){return this.zip&&this.zip.pause(),super.pause()}warn(a,b,c={}){bP(this,a,b,c)}},dj=class extends di{sync=!0;constructor(a){super(a),this[df]=cT}pause(){}resume(){}[c9](a){let b=this.follow?"statSync":"lstatSync";this[c$](a,i.default[b](a.absolute))}[da](a){this[db](a,i.default.readdirSync(a.absolute))}[dc](a){let b=a.entry,c=this.zip;if(a.readdir&&a.readdir.forEach(b=>{let c=a.path,d="./"===c?"":c.replace(/\/*$/,"/");this[c7](d+b)}),!b)throw Error("Cannot pipe without source");c?b.on("data",a=>{c.write(a)}):b.on("data",a=>{super[dg](a)})}},dk=(a,b)=>{b.forEach(b=>{"@"===b.charAt(0)?cp({file:u.default.resolve(a.cwd,b.slice(1)),sync:!0,noResume:!0,onReadEntry:b=>a.add(b)}):a.add(b)}),a.end()},dl=async(a,b)=>{for(let c of b)"@"===c.charAt(0)?await cp({file:u.default.resolve(String(a.cwd),c.slice(1)),noResume:!0,onReadEntry:b=>{a.add(b)}}):a.add(c);a.end()},dm=a1((a,b)=>{let c=new dj(a),d=new aZ(a.file,{mode:a.mode||438});c.pipe(d),dk(c,b)},(a,b)=>{let c=new di(a),d=new aY(a.file,{mode:a.mode||438});c.pipe(d);let e=new Promise((a,b)=>{d.on("error",b),d.on("close",a),c.on("error",b)});return dl(c,b).catch(a=>c.emit("error",a)),e},(a,b)=>{let c=new dj(a);return dk(c,b),c},(a,b)=>{let c=new di(a);return dl(c,b).catch(a=>c.emit("error",a)),c},(a,b)=>{if(!b?.length)throw TypeError("no paths specified to add to archive")}),dn="win32"===(process.env.__FAKE_PLATFORM__||process.platform),{O_CREAT:dp,O_NOFOLLOW:dq,O_TRUNC:dr,O_WRONLY:ds}=i.default.constants,dt=Number(process.env.__FAKE_FS_O_FILENAME__)||i.default.constants.UV_FS_O_FILEMAP||0,du=dt|dr|dp|ds,dv=dn||"number"!=typeof dq?null:dq|dr|dp|ds,dw=null!==dv?()=>dv:dn&&dt?a=>a<524288?du:"w":()=>"w",dx=(a,b,c)=>{try{return s.default.lchownSync(a,b,c)}catch(a){if(a?.code!=="ENOENT")throw a}},dy=(a,b,c,d)=>{s.default.lchown(a,b,c,a=>{d(a&&a?.code!=="ENOENT"?a:null)})},dz=(a,b,c,d,e)=>{b.isDirectory()?dA(u.default.resolve(a,b.name),c,d,f=>{if(f)return e(f);dy(u.default.resolve(a,b.name),c,d,e)}):dy(u.default.resolve(a,b.name),c,d,e)},dA=(a,b,c,d)=>{s.default.readdir(a,{withFileTypes:!0},(e,f)=>{if(e){if("ENOENT"===e.code)return d();if("ENOTDIR"!==e.code&&"ENOTSUP"!==e.code)return d(e)}if(e||!f.length)return dy(a,b,c,d);let g=f.length,h=null,i=e=>{if(!h){if(e)return d(h=e);if(0==--g)return dy(a,b,c,d)}};for(let d of f)dz(a,d,b,c,i)})},dB=(a,b,c,d)=>{b.isDirectory()&&dC(u.default.resolve(a,b.name),c,d),dx(u.default.resolve(a,b.name),c,d)},dC=(a,b,c)=>{let d;try{d=s.default.readdirSync(a,{withFileTypes:!0})}catch(d){if(d?.code==="ENOENT")return;if(d?.code==="ENOTDIR"||d?.code==="ENOTSUP")return dx(a,b,c);throw d}for(let e of d)dB(a,e,b,c);return dx(a,b,c)},dD=class extends Error{path;code;syscall="chdir";constructor(a,b){super(`${b}: Cannot cd into '${a}'`),this.path=a,this.code=b}get name(){return"CwdError"}},dE=class extends Error{path;symlink;syscall="symlink";code="TAR_SYMLINK_ERROR";constructor(a,b){super("TAR_SYMLINK_ERROR: Cannot extract through symbolic link"),this.symlink=a,this.path=b}get name(){return"SymlinkError"}},dF=(a,b,c,d,e,f,g)=>{if(0===b.length)return g(null,f);let h=b.shift(),i=bN(u.default.resolve(a+"/"+h));s.default.mkdir(i,c,dG(i,b,c,d,e,f,g))},dG=(a,b,c,d,e,f,g)=>h=>{h?s.default.lstat(a,(i,j)=>{if(i)i.path=i.path&&bN(i.path),g(i);else if(j.isDirectory())dF(a,b,c,d,e,f,g);else if(d)s.default.unlink(a,h=>{if(h)return g(h);s.default.mkdir(a,c,dG(a,b,c,d,e,f,g))});else{if(j.isSymbolicLink())return g(new dE(a,a+"/"+b.join("/")));g(h)}}):(f=f||a,dF(a,b,c,d,e,f,g))},dH=Object.create(null),dI=new Set,dJ="win32"===(process.env.TESTING_TAR_FAKE_PLATFORM||process.platform),dK=class{#a=new Map;#b=new Map;#c=new Set;reserve(a,b){let c=new Set((a=dJ?["win32 parallelization disabled"]:a.map(a=>cn((0,u.join)((a=>{dI.has(a)?dI.delete(a):dH[a]=a.normalize("NFD").toLocaleLowerCase("en").toLocaleUpperCase("en"),dI.add(a);let b=dH[a],c=dI.size-1e4;if(c>1e3){for(let a of dI)if(dI.delete(a),delete dH[a],--c<=0)break}return b})(a))))).map(a=>a.split("/").slice(0,-1).reduce((a,b)=>{let c=a.at(-1);return void 0!==c&&(b=(0,u.join)(c,b)),a.push(b||"/"),a},[])).reduce((a,b)=>a.concat(b)));for(let d of(this.#b.set(b,{dirs:c,paths:a}),a)){let a=this.#a.get(d);a?a.push(b):this.#a.set(d,[b])}for(let a of c){let c=this.#a.get(a);if(c){let a=c.at(-1);a instanceof Set?a.add(b):c.push(new Set([b]))}else this.#a.set(a,[new Set([b])])}return this.#e(b)}#d(a){let b=this.#b.get(a);if(!b)throw Error("function does not have any path reservations");return{paths:b.paths.map(a=>this.#a.get(a)),dirs:[...b.dirs].map(a=>this.#a.get(a))}}check(a){let{paths:b,dirs:c}=this.#d(a);return b.every(b=>b&&b[0]===a)&&c.every(b=>b&&b[0]instanceof Set&&b[0].has(a))}#e(a){return!this.#c.has(a)&&!!this.check(a)&&(this.#c.add(a),a(()=>this.#f(a)),!0)}#f(a){if(!this.#c.has(a))return!1;let b=this.#b.get(a);if(!b)throw Error("invalid reservation");let{paths:c,dirs:d}=b,e=new Set;for(let b of c){let c=this.#a.get(b);if(!c||c?.[0]!==a)continue;let d=c[1];if(!d){this.#a.delete(b);continue}if(c.shift(),"function"==typeof d)e.add(d);else for(let a of d)e.add(a)}for(let b of d){let c=this.#a.get(b),d=c?.[0];if(!(!c||!(d instanceof Set)))if(1===d.size&&1===c.length){this.#a.delete(b);continue}else if(1===d.size){c.shift();let a=c[0];"function"==typeof a&&e.add(a)}else d.delete(a)}return this.#c.delete(a),e.forEach(a=>this.#e(a)),!0}},dL=Symbol("onEntry"),dM=Symbol("checkFs"),dN=Symbol("checkFs2"),dO=Symbol("isReusable"),dP=Symbol("makeFs"),dQ=Symbol("file"),dR=Symbol("directory"),dS=Symbol("link"),dT=Symbol("symlink"),dU=Symbol("hardlink"),dV=Symbol("ensureNoSymlink"),dW=Symbol("unsupported"),dX=Symbol("checkPath"),dY=Symbol("stripAbsolutePath"),dZ=Symbol("mkdir"),d$=Symbol("onError"),d_=Symbol("pending"),d0=Symbol("pend"),d1=Symbol("unpend"),d2=Symbol("ended"),d3=Symbol("maybeClose"),d4=Symbol("skip"),d5=Symbol("doChown"),d6=Symbol("uid"),d7=Symbol("gid"),d8=Symbol("checkedCwd"),d9="win32"===(process.env.TESTING_TAR_FAKE_PLATFORM||process.platform),ea=(a,b,c)=>void 0!==a&&a===a>>>0?a:void 0!==b&&b===b>>>0?b:c,eb=class extends cm{[d2]=!1;[d8]=!1;[d_]=0;reservations=new dK;transform;writable=!0;readable=!1;uid;gid;setOwner;preserveOwner;processGid;processUid;maxDepth;forceChown;win32;newer;keep;noMtime;preservePaths;unlink;cwd;strip;processUmask;umask;dmode;fmode;chmod;constructor(a={}){if(a.ondone=()=>{this[d2]=!0,this[d3]()},super(a),this.transform=a.transform,this.chmod=!!a.chmod,"number"==typeof a.uid||"number"==typeof a.gid){if("number"!=typeof a.uid||"number"!=typeof a.gid)throw TypeError("cannot set owner without number uid and gid");if(a.preserveOwner)throw TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=a.uid,this.gid=a.gid,this.setOwner=!0}else this.uid=void 0,this.gid=void 0,this.setOwner=!1;this.preserveOwner=void 0===a.preserveOwner&&"number"!=typeof a.uid?!!(process.getuid&&0===process.getuid()):!!a.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():void 0,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():void 0,this.maxDepth="number"==typeof a.maxDepth?a.maxDepth:1024,this.forceChown=!0===a.forceChown,this.win32=!!a.win32||d9,this.newer=!!a.newer,this.keep=!!a.keep,this.noMtime=!!a.noMtime,this.preservePaths=!!a.preservePaths,this.unlink=!!a.unlink,this.cwd=bN(u.default.resolve(a.cwd||process.cwd())),this.strip=Number(a.strip)||0,this.processUmask=this.chmod?"number"==typeof a.processUmask?a.processUmask:process.umask():0,this.umask="number"==typeof a.umask?a.umask:this.processUmask,this.dmode=a.dmode||511&~this.umask,this.fmode=a.fmode||438&~this.umask,this.on("entry",a=>this[dL](a))}warn(a,b,c={}){return("TAR_BAD_ARCHIVE"===a||"TAR_ABORT"===a)&&(c.recoverable=!1),super.warn(a,b,c)}[d3](){this[d2]&&0===this[d_]&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"))}[dY](a,b){let c=a[b],{type:d}=a;if(!c||this.preservePaths)return!0;let[e,f]=ct(c),g=f.replaceAll(/\\/g,"/").split("/");if(g.includes("..")||d9&&/^[a-z]:\.\.$/i.test(g[0]??"")){if("path"===b||"Link"===d)return this.warn("TAR_ENTRY_ERROR",`${b} contains '..'`,{entry:a,[b]:c}),!1;let e=u.default.posix.dirname(a.path),f=u.default.posix.normalize(u.default.posix.join(e,g.join("/")));if(f.startsWith("../")||".."===f)return this.warn("TAR_ENTRY_ERROR",`${b} escapes extraction directory`,{entry:a,[b]:c}),!1}return e&&(a[b]=String(f),this.warn("TAR_ENTRY_INFO",`stripping ${e} from absolute ${b}`,{entry:a,[b]:c})),!0}[dX](a){let b=bN(a.path),c=b.split("/");if(this.strip){if(c.length<this.strip)return!1;if("Link"===a.type){let b=bN(String(a.linkpath)).split("/");if(!(b.length>=this.strip))return!1;a.linkpath=b.slice(this.strip).join("/")}c.splice(0,this.strip),a.path=c.join("/")}if(isFinite(this.maxDepth)&&c.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:a,path:b,depth:c.length,maxDepth:this.maxDepth}),!1;if(!this[dY](a,"path")||!this[dY](a,"linkpath"))return!1;if(a.absolute=u.default.isAbsolute(a.path)?bN(u.default.resolve(a.path)):bN(u.default.resolve(this.cwd,a.path)),!this.preservePaths&&"string"==typeof a.absolute&&0!==a.absolute.indexOf(this.cwd+"/")&&a.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:a,path:bN(a.path),resolvedPath:a.absolute,cwd:this.cwd}),!1;if(a.absolute===this.cwd&&"Directory"!==a.type&&"GNUDumpDir"!==a.type)return!1;if(this.win32){let{root:b}=u.default.win32.parse(String(a.absolute));a.absolute=b+cy(String(a.absolute).slice(b.length));let{root:c}=u.default.win32.parse(a.path);a.path=c+cy(a.path.slice(c.length))}return!0}[dL](a){if(!this[dX](a))return a.resume();switch(E.default.equal(typeof a.absolute,"string"),a.type){case"Directory":case"GNUDumpDir":a.mode&&(a.mode=448|a.mode);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[dM](a);default:return this[dW](a)}}[d$](a,b){"CwdError"===a.name?this.emit("error",a):(this.warn("TAR_ENTRY_ERROR",a,{entry:b}),this[d1](),b.resume())}[dZ](a,b,c){((a,b,c)=>{a=bN(a);let d=b.umask??18,e=448|b.mode,f=(e&d)!=0,g=b.uid,h=b.gid,i="number"==typeof g&&"number"==typeof h&&(g!==b.processUid||h!==b.processGid),j=b.preserve,k=b.unlink,l=bN(b.cwd),m=(b,d)=>{b?c(b):d&&i?dA(d,g,h,a=>m(a)):f?s.default.chmod(a,e,c):c()};if(a===l){var n;return n=a,s.default.stat(n,(a,b)=>{(a||!b.isDirectory())&&(a=new dD(n,a?.code||"ENOTDIR")),m(a)})}if(j)return t.default.mkdir(a,{mode:e,recursive:!0}).then(a=>m(null,a??void 0),m);let o=bN(u.default.relative(l,a)).split("/");dF(l,o,e,k,l,void 0,m)})(bN(a),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:b},c)}[d5](a){return this.forceChown||this.preserveOwner&&("number"==typeof a.uid&&a.uid!==this.processUid||"number"==typeof a.gid&&a.gid!==this.processGid)||"number"==typeof this.uid&&this.uid!==this.processUid||"number"==typeof this.gid&&this.gid!==this.processGid}[d6](a){return ea(this.uid,a.uid,this.processUid)}[d7](a){return ea(this.gid,a.gid,this.processGid)}[dQ](a,b){let c="number"==typeof a.mode?4095&a.mode:this.fmode,d=new aY(String(a.absolute),{flags:dw(a.size),mode:c,autoClose:!1});d.on("error",c=>{d.fd&&s.default.close(d.fd,()=>{}),d.write=()=>!0,this[d$](c,a),b()});let e=1,f=c=>{if(c){d.fd&&s.default.close(d.fd,()=>{}),this[d$](c,a),b();return}0==--e&&void 0!==d.fd&&s.default.close(d.fd,c=>{c?this[d$](c,a):this[d1](),b()})};d.on("finish",()=>{let b=String(a.absolute),c=d.fd;if("number"==typeof c&&a.mtime&&!this.noMtime){e++;let d=a.atime||new Date,g=a.mtime;s.default.futimes(c,d,g,a=>a?s.default.utimes(b,d,g,b=>f(b&&a)):f())}if("number"==typeof c&&this[d5](a)){e++;let d=this[d6](a),g=this[d7](a);"number"==typeof d&&"number"==typeof g&&s.default.fchown(c,d,g,a=>a?s.default.chown(b,d,g,b=>f(b&&a)):f())}f()});let g=this.transform&&this.transform(a)||a;g!==a&&(g.on("error",c=>{this[d$](c,a),b()}),a.pipe(g)),g.pipe(d)}[dR](a,b){let c="number"==typeof a.mode?4095&a.mode:this.dmode;this[dZ](String(a.absolute),c,c=>{if(c){this[d$](c,a),b();return}let d=1,e=()=>{0==--d&&(b(),this[d1](),a.resume())};a.mtime&&!this.noMtime&&(d++,s.default.utimes(String(a.absolute),a.atime||new Date,a.mtime,e)),this[d5](a)&&(d++,s.default.chown(String(a.absolute),Number(this[d6](a)),Number(this[d7](a)),e)),e()})}[dW](a){a.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${a.type}`,{entry:a}),a.resume()}[dT](a,b){let c=bN(u.default.relative(this.cwd,u.default.resolve(u.default.dirname(String(a.absolute)),String(a.linkpath)))).split("/");this[dV](a,this.cwd,c,()=>this[dS](a,String(a.linkpath),"symlink",b),c=>{this[d$](c,a),b()})}[dU](a,b){let c=bN(u.default.resolve(this.cwd,String(a.linkpath))),d=bN(String(a.linkpath)).split("/");this[dV](a,this.cwd,d,()=>this[dS](a,c,"link",b),c=>{this[d$](c,a),b()})}[dV](a,b,c,d,e){let f=c.shift();if(this.preservePaths||void 0===f)return d();let g=u.default.resolve(b,f);s.default.lstat(g,(b,f)=>b?d():f?.isSymbolicLink()?e(new dE(g,u.default.resolve(g,c.join("/")))):void this[dV](a,g,c,d,e))}[d0](){this[d_]++}[d1](){this[d_]--,this[d3]()}[d4](a){this[d1](),a.resume()}[dO](a,b){return"File"===a.type&&!this.unlink&&b.isFile()&&b.nlink<=1&&!d9}[dM](a){this[d0]();let b=[a.path];a.linkpath&&b.push(a.linkpath),this.reservations.reserve(b,b=>this[dN](a,b))}[dN](a,b){let c=a=>{b(a)},d=()=>{this[dZ](this.cwd,this.dmode,b=>{if(b){this[d$](b,a),c();return}this[d8]=!0,e()})},e=()=>{if(a.absolute!==this.cwd){let b=bN(u.default.dirname(String(a.absolute)));if(b!==this.cwd)return this[dZ](b,this.dmode,b=>{if(b){this[d$](b,a),c();return}f()})}f()},f=()=>{s.default.lstat(String(a.absolute),(b,d)=>{if(d&&(this.keep||this.newer&&d.mtime>(a.mtime??d.mtime))){this[d4](a),c();return}if(b||this[dO](a,d))return this[dP](null,a,c);if(d.isDirectory()){if("Directory"===a.type){let b=this.chmod&&a.mode&&(4095&d.mode)!==a.mode,e=b=>this[dP](b??null,a,c);return b?s.default.chmod(String(a.absolute),Number(a.mode),e):e()}if(a.absolute!==this.cwd)return s.default.rmdir(String(a.absolute),b=>this[dP](b??null,a,c))}if(a.absolute===this.cwd)return this[dP](null,a,c);((a,b)=>{if(!d9)return s.default.unlink(a,b);let c=a+".DELETE."+(0,F.randomBytes)(16).toString("hex");s.default.rename(a,c,a=>{if(a)return b(a);s.default.unlink(c,b)})})(String(a.absolute),b=>this[dP](b??null,a,c))})};this[d8]?e():d()}[dP](a,b,c){if(a){this[d$](a,b),c();return}switch(b.type){case"File":case"OldFile":case"ContiguousFile":return this[dQ](b,c);case"Link":return this[dU](b,c);case"SymbolicLink":return this[dT](b,c);case"Directory":case"GNUDumpDir":return this[dR](b,c)}}[dS](a,b,c,d){s.default[c](b,String(a.absolute),b=>{b?this[d$](b,a):(this[d1](),a.resume()),d()})}},ec=a=>{try{return[null,a()]}catch(a){return[a,null]}},ed=class extends eb{sync=!0;[dP](a,b){return super[dP](a,b,()=>{})}[dM](a){if(!this[d8]){let b=this[dZ](this.cwd,this.dmode);if(b)return this[d$](b,a);this[d8]=!0}if(a.absolute!==this.cwd){let b=bN(u.default.dirname(String(a.absolute)));if(b!==this.cwd){let c=this[dZ](b,this.dmode);if(c)return this[d$](c,a)}}let[b,c]=ec(()=>s.default.lstatSync(String(a.absolute)));if(c&&(this.keep||this.newer&&c.mtime>(a.mtime??c.mtime)))return this[d4](a);if(b||this[dO](a,c))return this[dP](null,a);if(c.isDirectory()){if("Directory"===a.type){let[b]=this.chmod&&a.mode&&(4095&c.mode)!==a.mode?ec(()=>{s.default.chmodSync(String(a.absolute),Number(a.mode))}):[];return this[dP](b,a)}let[b]=ec(()=>s.default.rmdirSync(String(a.absolute)));this[dP](b,a)}let[d]=a.absolute===this.cwd?[]:ec(()=>(a=>{if(!d9)return s.default.unlinkSync(a);let b=a+".DELETE."+(0,F.randomBytes)(16).toString("hex");s.default.renameSync(a,b),s.default.unlinkSync(b)})(String(a.absolute)));this[dP](d,a)}[dQ](a,b){let c="number"==typeof a.mode?4095&a.mode:this.fmode,d=c=>{let d;try{s.default.closeSync(e)}catch(a){d=a}(c||d)&&this[d$](c||d,a),b()},e;try{e=s.default.openSync(String(a.absolute),dw(a.size),c)}catch(a){return d(a)}let f=this.transform&&this.transform(a)||a;f!==a&&(f.on("error",b=>this[d$](b,a)),a.pipe(f)),f.on("data",a=>{try{s.default.writeSync(e,a,0,a.length)}catch(a){d(a)}}),f.on("end",()=>{let b=null;if(a.mtime&&!this.noMtime){let c=a.atime||new Date,d=a.mtime;try{s.default.futimesSync(e,c,d)}catch(e){try{s.default.utimesSync(String(a.absolute),c,d)}catch{b=e}}}if(this[d5](a)){let c=this[d6](a),d=this[d7](a);try{s.default.fchownSync(e,Number(c),Number(d))}catch(e){try{s.default.chownSync(String(a.absolute),Number(c),Number(d))}catch{b=b||e}}}d(b)})}[dR](a,b){let c="number"==typeof a.mode?4095&a.mode:this.dmode,d=this[dZ](String(a.absolute),c);if(d){this[d$](d,a),b();return}if(a.mtime&&!this.noMtime)try{s.default.utimesSync(String(a.absolute),a.atime||new Date,a.mtime)}catch{}if(this[d5](a))try{s.default.chownSync(String(a.absolute),Number(this[d6](a)),Number(this[d7](a)))}catch{}b(),a.resume()}[dZ](a,b){try{return((a,b)=>{a=bN(a);let c=b.umask??18,d=448|b.mode,e=(d&c)!=0,f=b.uid,g=b.gid,h="number"==typeof f&&"number"==typeof g&&(f!==b.processUid||g!==b.processGid),i=b.preserve,j=b.unlink,k=bN(b.cwd),l=b=>{b&&h&&dC(b,f,g),e&&s.default.chmodSync(a,d)};if(a===k)return(a=>{let b=!1,c;try{b=s.default.statSync(a).isDirectory()}catch(a){c=a?.code}finally{if(!b)throw new dD(a,c??"ENOTDIR")}})(k),l();if(i)return l(s.default.mkdirSync(a,{mode:d,recursive:!0})??void 0);let m=bN(u.default.relative(k,a)).split("/"),n;for(let a=m.shift(),b=k;a&&(b+="/"+a);a=m.shift()){b=bN(u.default.resolve(b));try{s.default.mkdirSync(b,d),n=n||b}catch{let a=s.default.lstatSync(b);if(a.isDirectory())continue;if(j){s.default.unlinkSync(b),s.default.mkdirSync(b,d),n=n||b;continue}if(a.isSymbolicLink())return new dE(b,b+"/"+m.join("/"))}}return l(n)})(bN(a),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:b})}catch(a){return a}}[dV](a,b,c,d,e){if(this.preservePaths||0===c.length)return d();let f=b;for(let a of c){f=u.default.resolve(f,a);let[g,h]=ec(()=>s.default.lstatSync(f));if(g)return d();if(h.isSymbolicLink())return e(new dE(f,u.default.resolve(b,c.join("/"))))}d()}[dS](a,b,c,d){let e=`${c}Sync`;try{s.default[e](b,String(a.absolute)),d(),a.resume()}catch(b){return this[d$](b,a)}}},ee=a1(a=>{let b=new ed(a),c=a.file,d=s.default.statSync(c);new aX(c,{readSize:a.maxReadSize||0x1000000,size:d.size}).pipe(b)},(a,b)=>{let c=new eb(a),d=a.maxReadSize||0x1000000,e=a.file;return new Promise((a,b)=>{c.on("error",b),c.on("close",a),s.default.stat(e,(a,f)=>{if(a)b(a);else{let a=new aW(e,{readSize:d,size:f.size});a.on("error",b),a.pipe(c)}})})},a=>new ed(a),a=>new eb(a),(a,b)=>{b?.length&&co(a,b)}),ef=(a,b)=>{b.forEach(b=>{"@"===b.charAt(0)?cp({file:u.default.resolve(a.cwd,b.slice(1)),sync:!0,noResume:!0,onReadEntry:b=>a.add(b)}):a.add(b)}),a.end()},eg=async(a,b)=>{for(let c of b)"@"===c.charAt(0)?await cp({file:u.default.resolve(String(a.cwd),c.slice(1)),noResume:!0,onReadEntry:b=>a.add(b)}):a.add(c);a.end()},eh=a1((a,b)=>{let c=new dj(a),d=!0,e,f;try{var g,h,i,j,k;let l;try{e=s.default.openSync(a.file,"r+")}catch(b){if(b?.code==="ENOENT")e=s.default.openSync(a.file,"w+");else throw b}let m=s.default.fstatSync(e),n=Buffer.alloc(512);a:for(f=0;f<m.size;f+=512){for(let a=0,b=0;a<512;a+=b){if(b=s.default.readSync(e,n,a,n.length-a,f+a),0===f&&31===n[0]&&139===n[1])throw Error("cannot append to compressed archives");if(!b)break a}let b=new bu(n);if(!b.cksumValid)break;let c=512*Math.ceil((b.size||0)/512);if(f+c+512>m.size)break;f+=c,a.mtimeCache&&b.mtime&&a.mtimeCache.set(String(b.path),b.mtime)}d=!1,g=a,h=c,i=f,j=e,k=b,l=new aZ(g.file,{fd:j,start:i}),h.pipe(l),ef(h,k)}finally{if(d)try{s.default.closeSync(e)}catch{}}},(a,b)=>{b=Array.from(b);let c=new di(a);return new Promise((d,e)=>{c.on("error",e);let f="r+",g=(h,i)=>h&&"ENOENT"===h.code&&"r+"===f?(f="w+",s.default.open(a.file,f,g)):h||!i?e(h):void s.default.fstat(i,(f,g)=>{if(f)return s.default.close(i,()=>e(f));((b,c,d)=>{let e=(a,c)=>{a?s.default.close(b,b=>d(a)):d(null,c)},f=0;if(0===c)return e(null,0);let g=0,h=Buffer.alloc(512),i=(d,j)=>{if(d||void 0===j)return e(d);if((g+=j)<512&&j)return s.default.read(b,h,g,h.length-g,f+g,i);if(0===f&&31===h[0]&&139===h[1])return e(Error("cannot append to compressed archives"));if(g<512)return e(null,f);let k=new bu(h);if(!k.cksumValid)return e(null,f);let l=512*Math.ceil((k.size??0)/512);if(f+l+512>c||(f+=l+512)>=c)return e(null,f);a.mtimeCache&&k.mtime&&a.mtimeCache.set(String(k.path),k.mtime),g=0,s.default.read(b,h,0,512,f,i)};s.default.read(b,h,0,512,f,i)})(i,g.size,(f,g)=>{if(f)return e(f);let h=new aY(a.file,{fd:i,start:g});c.pipe(h),h.on("error",e),h.on("close",d),eg(c,b)})});s.default.open(a.file,f,g)})},()=>{throw TypeError("file is required")},()=>{throw TypeError("file is required")},(a,b)=>{if(!a.file)throw TypeError("file is required");if(a.gzip||a.brotli||a.zstd||a.file.endsWith(".br")||a.file.endsWith(".tbr"))throw TypeError("cannot append to compressed archives");if(!b?.length)throw TypeError("no paths specified to add/replace")});a1(eh.syncFile,eh.asyncFile,eh.syncNoFile,eh.asyncNoFile,(a,b=[])=>{eh.validate?.(a,b),ei(a)});var ei=a=>{let b=a.filter;a.mtimeCache||(a.mtimeCache=new Map),a.filter=b?(c,d)=>b(c,d)&&!((a.mtimeCache?.get(c)??d.mtime??0)>(d.mtime??0)):(b,c)=>!((a.mtimeCache?.get(b)??c.mtime??0)>(c.mtime??0))};async function ej(a,b,c,d={}){let e=d.registry??"https://registry.npmmirror.com",f=a.startsWith("@")?a.split("/")[1]:a,g=`${e}/${a}/-/${f}-${b}.tgz`;await (0,t.mkdir)(u.default.dirname(c),{recursive:!0});let h=await (0,t.mkdtemp)(u.default.join(u.default.dirname(c),".tower-ext-")),i=u.default.join(h,"pkg.tgz");try{var j,k,l;await (j=g,k=i,l=d.timeoutMs??6e4,new Promise((a,b)=>{let c=(0,s.createWriteStream)(k),d=!1,e=e=>{d||(d=!0,c.close(),e?b(e):a())},f=0,g=a=>{let b=v.default.get(a,b=>{let d=b.statusCode??0;if(d>=300&&d<400&&b.headers.location){if(++f>5){e(Error(`Too many redirects fetching ${j}`)),b.resume();return}b.resume(),g(new URL(b.headers.location,a).toString());return}if(d<200||d>=300){e(Error(`HTTP ${d} fetching ${j}`)),b.resume();return}(0,w.pipeline)(b,c).then(()=>e()).catch(e)});b.setTimeout(l,()=>{b.destroy(Error(`Timed out after ${l}ms fetching ${j}`))}),b.on("error",e)};g(j)}));let a=u.default.join(h,"extracted");await (0,t.mkdir)(a,{recursive:!0}),await ee({file:i,cwd:a,strip:1});let b=await (0,t.stat)(a).catch(()=>null);if(!b||!b.isDirectory())throw Error(`Tarball extracted but ${a} is not a directory`);(0,s.existsSync)(c)&&await (0,t.rm)(c,{recursive:!0,force:!0}),await (0,t.rename)(a,c)}finally{await (0,t.rm)(h,{recursive:!0,force:!0}).catch(()=>{})}}a.s(["create",0,dm,"extract",0,ee,"x",0,ee],744992);let ek="0.55.1",el=k.default.join((0,r.getExtensionsDir)(),"monaco"),em=k.default.join(el,"package.json"),en=k.default.join(el,"min","vs","loader.js"),eo=[{id:"rg",name:"代码搜索 (ripgrep)",description:"基于 rg 的全文代码搜索",icon:g,sizeMB:5,homepageUrl:"https://github.com/BurntSushi/ripgrep#installation",manualInstall:!0,check:o,install:p},{id:"monaco",name:"代码编辑器 (Monaco)",description:"VS Code 同款 Web 编辑器",icon:q,sizeMB:15,homepageUrl:"https://microsoft.github.io/monaco-editor/",check:async function a(){let a;if(!(0,i.existsSync)(em)||!(0,i.existsSync)(en))return{installed:!1};try{a=JSON.parse((0,i.readFileSync)(em,"utf-8")).version}catch{}return{installed:!0,path:el,version:a}},install:async function a(){try{if(await ej("monaco-editor",ek,el),!(0,i.existsSync)(en))return{success:!1,error:`Download succeeded but ${en} is missing — the tarball layout may have changed`};return{success:!0,message:`Installed monaco-editor@${ek} to ${el}`}}catch(a){return{success:!1,error:a.message}}},uninstall:async function a(){try{return(0,i.existsSync)(el)&&(0,i.rmSync)(el,{recursive:!0,force:!0}),{success:!0,message:"Removed monaco-editor"}}catch(a){return{success:!1,error:a.message}}}}];function ep(a){return eo.find(b=>b.id===a)??null}async function eq(a){let b=ep(a);return b?b.check():{installed:!1,error:`unknown extension: ${a}`}}async function er(a){let b=ep(a);return b?b.install():{success:!1,error:`unknown extension: ${a}`}}async function es(a){let b=ep(a);return b?b.uninstall?b.uninstall():{success:!1,error:`extension ${a} does not support uninstall`}:{success:!1,error:`unknown extension: ${a}`}}async function et(){return Object.fromEntries(await Promise.all(eo.map(async a=>[a.id,await a.check()])))}(0,a.i(630048).ensureServerEntryExports)([eq,er,es,et]),(0,b.registerServerReference)(eq,"4036f95ed5dc32f339eacad6c635ee66f9e026db46",null),(0,b.registerServerReference)(er,"406b9ebf02d3183f04e594426f6a5ebe41a65dee0d",null),(0,b.registerServerReference)(es,"40b59a54ce49a5ad9953b31159f64bfd2ee911e145",null),(0,b.registerServerReference)(et,"00abe22e017185b0aac474fd740ae59ad8cbff33a3",null),a.s(["checkExtension",0,eq,"installExtension",0,er,"listAllExtensionStatus",0,et,"uninstallExtension",0,es],563736)}];
4
+
5
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0zsnp~d._.js.map
@@ -27,4 +27,4 @@ Rules:
27
27
  - insights array can be empty if nothing notable
28
28
  - Keep each insight concise (1-2 sentences)`,h=await c(g,b);if(!h)return null;try{let a=h,b=a.match(/\{[\s\S]*\}/);b&&(a=b[0]);let c=JSON.parse(a);if("string"!=typeof c.summary||"boolean"!=typeof c.shouldCreateNote)return console.error("[generateDreamingInsight] Invalid response structure"),null;return c}catch(a){return console.error("[generateDreamingInsight] JSON parse failed:",a.message),null}}a.s(["aiQuery",0,c,"generateDreamingInsight",0,e,"generateSummaryFromLog",0,d])},268548,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]_node_util_0xr.y7p._.js"].map(b=>a.l(b))).then(()=>b(812057)))},534777,a=>{a.v(a=>Promise.resolve().then(()=>a(224361)))},719041,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]__0ti8vng._.js","server/chunks/ssr/07-d_@anthropic-ai_claude-agent-sdk_sdk_mjs_0myippv._.js"].map(b=>a.l(b))).then(()=>b(845454)))}];
29
29
 
30
- //# sourceMappingURL=%5Broot-of-the-server%5D__06s-_gx._.js.map
30
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0~edc3d._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},913284,761818,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(["default",0,c],761818),a.s(["XCircle",0,c],468862)},865011,a=>{"use strict";var b=a.i(728778),c=a.i(634910),d=a.i(553798),e=a.i(269280),f=a.i(350739),g=a.i(347165),h=a.i(607219),i=a.i(273364),j=a.i(951192);let k=[{key:"notes",icon:f.FileText},{key:"assets",icon:g.FolderOpen},{key:"archive",icon:h.Archive},{key:"groups",icon:i.Boxes}];a.s(["SubPageNav",0,function({workspaceId:a}){let{t:f}=(0,j.useI18n)(),g=(0,d.usePathname)(),h=k.find(a=>g.includes(`/${a.key}`))?.key;return(0,b.jsxs)("div",{className:"header-sm flex items-center gap-1 px-4",children:[(0,b.jsxs)(c.default,{href:`/workspaces/${a}`,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,b.jsx)(e.ArrowLeft,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{children:f("archive.backToBoard")})]}),(0,b.jsx)("span",{className:"mr-2 h-4 w-px bg-border"}),k.map(d=>{let e=d.icon,g=h===d.key;return(0,b.jsxs)(c.default,{href:`/workspaces/${a}/${d.key}`,className:`inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs font-medium transition-colors ${g?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent/50 hover:text-foreground"}`,children:[(0,b.jsx)(e,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{children:f(`sidebar.${d.key}`)})]},d.key)})]})}])},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)},161664,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],161664)},816282,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("404c5f6bb80cc0d10b604e5640d83816a765fc59f3",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)},267540,123089,165614,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("408215e48e1a623e4bbb685a78e3a3ada2ed9a5e8a",b.callServer,void 0,b.findSourceMapURL,"openInFileManager");a.s(["openInFileManager",0,c],267540);let d=(0,b.createServerReference)("40a305711044d42074dc8b719a62360ee159d7fe96",b.callServer,void 0,b.findSourceMapURL,"openInEditor");a.s(["openInEditor",0,d],123089);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)},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)},264589,a=>{"use strict";let b=(0,a.i(711796).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"}]]);a.s(["Package",0,b],264589)},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)},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)},10390,a=>{"use strict";var b=a.i(421992);a.s(["ChevronRight",()=>b.default])},912868,a=>{"use strict";let b=(0,a.i(711796).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);a.s(["ChevronLeft",0,b],912868)},111699,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("4075ec4df24bd89711034f15cca9eb240df9f3f473",b.callServer,void 0,b.findSourceMapURL,"getConfigValues");a.s(["getConfigValues",0,c])},412783,22761,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["Label",0,function({className:a,...d}){return(0,b.jsx)("label",{"data-slot":"label",className:(0,c.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...d})}],412783);let d=(0,a.i(711796).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",0,d],22761)},149234,a=>{"use strict";var b=a.i(728778),c=a.i(374637),d=a.i(607219),e=a.i(913284),f=a.i(468862),g=a.i(704494),h=a.i(573242),i=a.i(580701),j=a.i(951192),k=a.i(865011),l=a.i(780410);let m=(0,l.createServerReference)("402ad17793fc99949e1a4d611602a7fc06c5ad0fb5",l.callServer,void 0,l.findSourceMapURL,"getArchivedTasks");var n=a.i(972420),o=a.i(551578);function p(a){return new Date(a).toLocaleDateString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})}function q({priority:a}){return(0,b.jsx)("span",{className:`inline-block h-1.5 w-1.5 rounded-full ${{LOW:"bg-slate-400",MEDIUM:"bg-amber-400",HIGH:"bg-orange-500",CRITICAL:"bg-rose-500"}[a]??"bg-slate-400"}`})}a.s(["ArchivePageClient",0,function({allWorkspaces:a,initialWorkspaceId:l,initialProjectId:r,initialTasks:s}){let t,{t:u}=(0,j.useI18n)(),[v,w]=(0,c.useTransition)(),[x,y]=(0,c.useState)(l),[z,A]=(0,c.useState)(r),[B,C]=(0,c.useState)(s),[D,E]=(0,c.useState)(null),[F,G]=(0,c.useState)(""),H=a.find(a=>a.id===x),I=H?.projects??[],J=F.trim().toLowerCase(),K=J?B.filter(a=>a.title.toLowerCase().includes(J)):B,L=(0,c.useCallback)(a=>{a?w(async()=>{C(await m(a))}):C([])},[w]);return(0,b.jsxs)("div",{className:"flex h-full flex-col overflow-hidden",children:[(0,b.jsx)(k.SubPageNav,{workspaceId:x}),(0,b.jsxs)("div",{className:"header-sm flex items-center gap-3 px-6 py-2",children:[(0,b.jsxs)(i.Select,{value:x,onValueChange:b=>b&&(b=>{if(b===x)return;y(b);let c=a.find(a=>a.id===b),d=c?.projects[0]??null;A(d?.id??null),L(d?.id??null)})(b),children:[(0,b.jsx)(i.SelectTrigger,{className:"h-8 w-auto min-w-[120px]",children:(0,b.jsx)("span",{className:"truncate",children:H?.name??x})}),(0,b.jsx)(i.SelectContent,{children:a.map(a=>(0,b.jsx)(i.SelectItem,{value:a.id,children:a.name},a.id))})]}),I.length>0&&(0,b.jsxs)(i.Select,{value:z??"",onValueChange:a=>a&&void(a!==z&&(A(a),L(a))),children:[(0,b.jsx)(i.SelectTrigger,{className:"h-8 w-auto min-w-[140px]",children:(0,b.jsx)("span",{className:"truncate",children:(t=I.find(a=>a.id===z))?t.alias?`${t.name} (${t.alias})`:t.name:""})}),(0,b.jsx)(i.SelectContent,{children:I.map(a=>(0,b.jsxs)(i.SelectItem,{value:a.id,children:[a.name,a.alias?` (${a.alias})`:""]},a.id))})]}),(0,b.jsxs)("div",{className:"relative ml-auto",children:[(0,b.jsx)(h.Search,{className:"pointer-events-none absolute left-2.5 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-muted-foreground"}),(0,b.jsx)("input",{type:"text",value:F,onChange:a=>G(a.target.value),placeholder:u("archive.searchPlaceholder"),className:"h-8 w-48 rounded-md border border-border bg-background pl-8 pr-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring"})]}),(0,b.jsxs)("span",{className:"rounded-full bg-muted px-2.5 py-0.5 text-[11px] text-muted-foreground",children:[K.length," ",u("archive.tasksCount")]})]}),(0,b.jsx)("div",{className:"flex-1 overflow-auto px-6 py-4",children:(0,b.jsxs)("div",{className:`relative ${v?"opacity-40 pointer-events-none":""} transition-opacity`,children:[v&&(0,b.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center",children:(0,b.jsx)(g.Loader2,{className:"size-5 animate-spin text-muted-foreground"})}),0===K.length?(0,b.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 py-16 text-center",children:[(0,b.jsx)(d.Archive,{className:"h-10 w-10 text-muted-foreground/30"}),(0,b.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:J?u("archive.noSearchResults"):u("archive.noTasks")}),(0,b.jsx)("p",{className:"text-xs text-muted-foreground/60",children:J?u("archive.noSearchResultsDesc"):u("archive.noTasksDesc")})]}):(0,b.jsx)("div",{className:"space-y-2",children:K.map(a=>{let c="DONE"===a.status,d=a.executions[0];return(0,b.jsx)("div",{role:"button",tabIndex:0,onClick:()=>E(a.id),onKeyDown:b=>{("Enter"===b.key||" "===b.key)&&(b.preventDefault(),E(a.id))},className:"group cursor-pointer rounded-lg border border-border bg-card px-4 py-3 transition-colors hover:border-border/80 hover:bg-accent/30 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background",children:(0,b.jsxs)("div",{className:"flex items-start gap-3",children:[(0,b.jsx)("div",{className:"mt-0.5 shrink-0",children:c?(0,b.jsx)(e.CheckCircle2,{className:"h-4 w-4 text-emerald-500"}):(0,b.jsx)(f.XCircle,{className:"h-4 w-4 text-rose-500"})}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(q,{priority:a.priority}),(0,b.jsx)("span",{className:"truncate text-sm font-medium text-foreground",children:a.title}),(0,b.jsx)("span",{className:`ml-1 shrink-0 rounded-full px-2 py-0.5 text-[10px] font-medium ${c?"bg-emerald-500/10 text-emerald-400 ring-1 ring-emerald-500/20":"bg-rose-500/10 text-rose-400 ring-1 ring-rose-500/20"}`,children:c?u("archive.status.done"):u("archive.status.cancelled")}),a.version&&(0,b.jsx)(o.TaskVersionTag,{number:a.version.number,name:a.version.name,showName:!0,className:"shrink-0"})]}),a.labels.length>0&&(0,b.jsx)("div",{className:"mt-1.5 flex flex-wrap gap-1",children:a.labels.map(a=>(0,b.jsx)("span",{className:"rounded-full px-1.5 py-0.5 text-[10px] font-medium",style:{backgroundColor:`${a.label.color}20`,color:a.label.color,outline:`1px solid ${a.label.color}40`},children:a.label.name},a.label.id))}),(0,b.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-3 text-[11px] text-muted-foreground",children:[(0,b.jsxs)("span",{children:[u("archive.createdAt"),": ",p(a.createdAt)]}),(0,b.jsxs)("span",{children:[c?u("archive.completedAt"):u("archive.cancelledAt"),": ",p(a.updatedAt)]}),d&&(0,b.jsxs)("span",{className:"flex items-center gap-1",children:[u("archive.lastExecution"),":"," ",(0,b.jsx)("span",{className:`rounded px-1 py-0.5 font-mono text-[10px] ${"COMPLETED"===d.status?"bg-emerald-500/10 text-emerald-400":"FAILED"===d.status?"bg-rose-500/10 text-rose-400":"bg-amber-500/10 text-amber-400"}`,children:d.status})]})]})]})]})},a.id)})})]})}),(0,b.jsx)(n.TaskOverviewDrawer,{open:!!D,onOpenChange:a=>{a||E(null)},taskId:D,hideEnvActions:!0})]})}],149234)},574046,a=>{a.v(b=>Promise.all(["server/chunks/ssr/04y0_streamdown_dist_highlighted-body-OFNGDK62_0dm8t_v.js"].map(b=>a.l(b))).then(()=>b(514138)))},170967,a=>{a.v(b=>Promise.all(["server/chunks/ssr/04y0_streamdown_dist_mermaid-GHXKKRXX_0oxtju0.js"].map(b=>a.l(b))).then(()=>b(729004)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0~mhv4m._.js.map
@@ -0,0 +1,47 @@
1
+ module.exports=[491890,a=>{"use strict";var b=a.i(815429),c=a.i(761469),d=a.i(188139),e=a.i(933919);async function f(a){return c.db.productGroup.findMany({where:{workspaceId:a},orderBy:{name:"asc"},include:{projects:{select:{id:!0,name:!0,alias:!0},orderBy:{createdAt:"asc"}}}})}async function g(a){let b=a.name.trim();if(!b)throw Error("分组名称不能为空");if(!a.workspaceId)throw Error("缺少工作区");try{let e=await c.db.productGroup.create({data:{name:b,description:a.description?.trim()||null,workspaceId:a.workspaceId}});return(0,d.revalidatePath)("/workspaces"),e}catch(a){if(a instanceof e.Prisma.PrismaClientKnownRequestError&&"P2002"===a.code)throw Error(`分组「${b}」在该工作区已存在`);throw a}}async function h(a,b){let f={};if(void 0!==b.name){let a=b.name.trim();if(!a)throw Error("分组名称不能为空");f.name=a}void 0!==b.description&&(f.description=b.description?.trim()||null);try{let b=await c.db.productGroup.update({where:{id:a},data:f});return(0,d.revalidatePath)("/workspaces"),b}catch(a){if(a instanceof e.Prisma.PrismaClientKnownRequestError){if("P2002"===a.code)throw Error("同工作区已有同名分组");if("P2025"===a.code)throw Error("分组不存在")}throw a}}async function i(a){try{await c.db.$transaction([c.db.project.updateMany({where:{groupId:a},data:{groupId:null}}),c.db.productGroup.delete({where:{id:a}})]),(0,d.revalidatePath)("/workspaces")}catch(a){if(a instanceof e.Prisma.PrismaClientKnownRequestError&&"P2025"===a.code)throw Error("分组不存在");throw a}}async function j(a,b){if(b){let[d,e]=await Promise.all([c.db.project.findUnique({where:{id:a},select:{workspaceId:!0}}),c.db.productGroup.findUnique({where:{id:b},select:{workspaceId:!0}})]);if(!d)throw Error("项目不存在");if(!e)throw Error("分组不存在");if(e.workspaceId!==d.workspaceId)throw Error("分组与项目不在同一工作区,不能跨区分组")}try{let e=await c.db.project.update({where:{id:a},data:{groupId:b}});return(0,d.revalidatePath)("/workspaces"),e}catch(a){if(a instanceof e.Prisma.PrismaClientKnownRequestError&&"P2025"===a.code)throw Error("项目不存在");throw a}}(0,a.i(630048).ensureServerEntryExports)([f,g,h,i,j]),(0,b.registerServerReference)(f,"40ff151b677eeaf0636f04e8d87327f4046c314c92",null),(0,b.registerServerReference)(g,"40e3cf8e78797104c14a8e7539e4e904ca54efa90c",null),(0,b.registerServerReference)(h,"609ab0a0753de43d84bbace4355456cf5a948698d4",null),(0,b.registerServerReference)(i,"409ed0c82178d1e7f500225d0089b30cd36284f589",null),(0,b.registerServerReference)(j,"609f47ef812de3d5f05ec0e95d0b9bc0490c684bdc",null),a.s(["createProductGroup",0,g,"deleteProductGroup",0,i,"getProductGroups",0,f,"setProjectGroup",0,j,"updateProductGroup",0,h])},396904,101844,a=>{"use strict";var b=a.i(815429),c=a.i(761469);function d(a,b){return{id:a.note_id,type:"note",title:a.title,subtitle:`${a.workspace_name} / ${a.project_name}`,navigateTo:`/workspaces/${a.workspaceId}/notes?projectId=${a.projectId}`,snippet:a.content?a.content.slice(0,b):void 0}}async function e(a,b="task",f){if(!a.trim())return[];let g=a.trim(),{resultLimit:h,allModeCap:i,snippetLength:j}=f;if("all"===b){let[a,b,c,d,h]=await Promise.allSettled([e(g,"task",f),e(g,"project",f),e(g,"repository",f),e(g,"note",f),e(g,"asset",f)]),j=a=>"fulfilled"===a.status?a.value.slice(0,i):[];return[...j(a),...j(b),...j(c),...j(d),...j(h)]}if("task"===b)return(await c.db.task.findMany({where:{OR:[{title:{contains:g}},{description:{contains:g}}]},include:{project:{include:{workspace:!0}}},take:h,orderBy:{updatedAt:"desc"}})).map(a=>{let b="DONE"===a.status||"CANCELLED"===a.status,c=a.project.workspaceId;return{id:a.id,type:"task",title:a.title,subtitle:`${a.project.workspace.name} / ${a.project.name}`,navigateTo:b?`/workspaces/${c}/archive?projectId=${a.projectId}`:`/workspaces/${c}?projectId=${a.projectId}`}});if("project"===b)return(await c.db.project.findMany({where:{OR:[{name:{contains:g}},{alias:{contains:g}},{description:{contains:g}}]},include:{workspace:!0},take:h,orderBy:{updatedAt:"desc"}})).map(a=>({id:a.id,type:"project",title:a.alias?`${a.name} (${a.alias})`:a.name,subtitle:a.workspace.name,navigateTo:`/workspaces/${a.workspaceId}?projectId=${a.id}`}));if("repository"===b)return(await c.db.repository.findMany({where:{OR:[{name:{contains:g}},{path:{contains:g}}]},include:{project:{include:{workspace:!0}}},take:h})).map(a=>({id:a.id,type:"repository",title:a.name,subtitle:`${a.project.workspace.name} / ${a.project.name} \xb7 ${a.branch}`,navigateTo:`/workspaces/${a.project.workspaceId}?projectId=${a.projectId}`}));if("note"===b){if(g.length<3)return(await c.db.$queryRawUnsafe(`SELECT n.id as note_id, n.title, n.content,
2
+ n."projectId", p."workspaceId", p.name as project_name, w.name as workspace_name
3
+ FROM "ProjectNote" n
4
+ JOIN "Project" p ON p.id = n."projectId"
5
+ JOIN "Workspace" w ON w.id = p."workspaceId"
6
+ WHERE n.title LIKE ? OR n.content LIKE ?
7
+ LIMIT ?`,`%${g}%`,`%${g}%`,h)).map(a=>d(a,j));try{return(await c.db.$queryRawUnsafe(`SELECT f.note_id, f.title, f.content,
8
+ n."projectId", p."workspaceId", p.name as project_name, w.name as workspace_name
9
+ FROM notes_fts f
10
+ JOIN "ProjectNote" n ON n.id = f.note_id
11
+ JOIN "Project" p ON p.id = n."projectId"
12
+ JOIN "Workspace" w ON w.id = p."workspaceId"
13
+ WHERE f.notes_fts MATCH ?
14
+ ORDER BY rank
15
+ LIMIT ?`,g,h)).map(a=>d(a,j))}catch{return(await c.db.$queryRawUnsafe(`SELECT n.id as note_id, n.title, n.content,
16
+ n."projectId", p."workspaceId", p.name as project_name, w.name as workspace_name
17
+ FROM "ProjectNote" n
18
+ JOIN "Project" p ON p.id = n."projectId"
19
+ JOIN "Workspace" w ON w.id = p."workspaceId"
20
+ WHERE n.title LIKE ? OR n.content LIKE ?
21
+ LIMIT ?`,`%${g}%`,`%${g}%`,h)).map(a=>d(a,j))}}return"asset"===b?(await c.db.projectAsset.findMany({where:{OR:[{filename:{contains:g}},{description:{contains:g}}]},include:{project:{include:{workspace:!0}}},take:h,orderBy:{createdAt:"desc"}})).map(a=>({id:a.id,type:"asset",title:a.filename,subtitle:`${a.project.workspace.name} / ${a.project.name}`,navigateTo:`/workspaces/${a.project.workspaceId}/assets?projectId=${a.projectId}`,snippet:a.description||void 0})):[]}var f=a.i(980999),g=a.i(630048);async function h(a,b="task"){let c=await (0,f.getConfigValues)(["search.resultLimit","search.allModeCap","search.snippetLength"]);return e(a,b,{resultLimit:c["search.resultLimit"]??20,allModeCap:c["search.allModeCap"]??5,snippetLength:c["search.snippetLength"]??80})}(0,g.ensureServerEntryExports)([h]),(0,b.registerServerReference)(h,"60307d44ba04bf0330743c985bf6cc4ce0876e8b49",null),a.s(["globalSearch",0,h],396904);var i=a.i(924868),j=a.i(522734),k=a.i(814747),l=a.i(188139);async function m(b){if(!b||"string"!=typeof b)return{safe:!1,reason:"无效的项目 ID"};let d=await c.db.project.findUnique({where:{id:b}});if(!d||!d.localPath)return{safe:!1,reason:"项目不存在或未设置本地路径"};if((await c.db.taskExecution.findMany({where:{task:{projectId:b},status:"RUNNING"},select:{id:!0}})).length>0)return{safe:!1,reason:"该项目有正在运行的任务执行,请先停止所有执行"};let e=await c.db.task.findMany({where:{projectId:b},select:{id:!0}}),{getSession:f}=await a.A(98813);for(let a of e)if(void 0!==f(a.id))return{safe:!1,reason:"该项目有活跃的终端会话,请先关闭"};let g=k.default.join(d.localPath,".worktrees");if((0,j.existsSync)(g))try{if((await (0,i.readdir)(g)).length>0)return{safe:!1,reason:"该项目有活跃的 Git Worktree,请先清理"}}catch{}return{safe:!0}}async function n(b,d){if(!b||"string"!=typeof b)return{success:!1,error:"无效的项目 ID"};if(!d||"string"!=typeof d||!k.default.isAbsolute(d))return{success:!1,error:"目标路径必须是非空的绝对路径"};let e=await c.db.project.findUnique({where:{id:b}});if(!e||!e.localPath)return{success:!1,error:"项目不存在或未设置本地路径"};let f=e.localPath;if(d===f)return{success:!1,error:"源路径和目标路径相同"};if((await c.db.taskExecution.findMany({where:{task:{projectId:b},status:"RUNNING"},select:{id:!0}})).length>0)return{success:!1,error:"该项目有正在运行的任务执行,请先停止所有执行"};let g=await c.db.task.findMany({where:{projectId:b},select:{id:!0}}),{getSession:h}=await a.A(98813);for(let a of g)if(void 0!==h(a.id))return{success:!1,error:"该项目有活跃的终端会话,请先关闭"};let m=k.default.join(f,".worktrees");if((0,j.existsSync)(m))try{if((await (0,i.readdir)(m)).length>0)return{success:!1,error:"该项目有活跃的 Git Worktree,请先清理"}}catch{}if((0,j.existsSync)(d))try{if((await (0,i.readdir)(d)).length>0)return{success:!1,error:"目标路径已存在且不为空"}}catch{return{success:!1,error:"目标路径已存在且不为空"}}let n=k.default.dirname(d);try{await (0,i.mkdir)(n,{recursive:!0})}catch(a){if("EACCES"===a.code||"EPERM"===a.code)return{success:!1,error:`无权限创建父目录 ${n} — 请检查 Git 路径映射规则的模板是否漏了 "~/" 前缀`};if("EROFS"===a.code)return{success:!1,error:`父目录所在文件系统只读:${n}`};return{success:!1,error:`创建父目录失败:${a.message||a.code||"未知错误"}`}}try{await (0,i.rename)(f,d)}catch(a){if("EXDEV"===a.code)return{success:!1,error:"源路径和目标路径不在同一文件系统,不支持跨设备迁移"};if("EACCES"===a.code||"EPERM"===a.code)return{success:!1,error:`无权限移动到 ${d}`};return{success:!1,error:a.message||"文件系统操作失败"}}return await c.db.project.update({where:{id:b},data:{localPath:d}}),(0,l.revalidatePath)("/workspaces"),{success:!0}}let o=`分析这个项目目录,生成一段简短的 Markdown 项目描述。
22
+
23
+ 读取 package.json、README.md 等关键文件,然后概括:
24
+
25
+ **技术栈:** 一句话列出主要语言、框架、关键库
26
+ **定位:** 一句话说明项目是什么
27
+ **核心模块:** 2-3 个关键模块,每个一句话
28
+
29
+ 要求:
30
+ - 总字数不超过 500 字
31
+ - 用简洁的 Markdown(加粗标签 + 短句),不要用 ## 大标题和表格
32
+ - 不要罗列每个文件/目录,只说关键信息
33
+ - 中文输出`,p=`Analyze this project directory and generate a brief Markdown project description.
34
+
35
+ Read package.json, README.md and other key files, then summarize:
36
+
37
+ **Tech Stack:** One sentence listing primary languages, frameworks, and key libraries
38
+ **Overview:** One sentence describing what this project is
39
+ **Core Modules:** 2-3 key modules, one sentence each
40
+
41
+ Requirements:
42
+ - Keep it under 1000 words
43
+ - Use concise Markdown (bold labels + short sentences), no ## headings or tables
44
+ - Don't list every file/directory, only key information
45
+ - Output in English`;async function q(b,c="zh"){if(!b||"string"!=typeof b)throw Error("无效的本地路径");if(b.startsWith("~"))throw Error("不支持 ~ 别名,请提供绝对路径");if(!k.default.isAbsolute(b))throw Error("本地路径必须为绝对路径");let{aiQuery:d}=await a.A(752453),e=await d("en"===c?p:o,b,{maxTurns:10,tools:["Read","Glob"],allowedTools:["Read","Glob"]});if(!e)throw Error("AI 分析未返回结果");return e.length>2e3?e.slice(0,2e3).trimEnd()+"\n\n...":e}(0,g.ensureServerEntryExports)([m,n,q]),(0,b.registerServerReference)(m,"4064146185600ce222e9bc8e2316f49c9603a85346",null),(0,b.registerServerReference)(n,"609c9417a5d51517e959d27ee390da88a7c0542bbc",null),(0,b.registerServerReference)(q,"6036f5d613735f83ba2f8cc49ca9b64fd1c0c0beab",null),a.s(["analyzeProjectDirectory",0,q,"checkMigrationSafety",0,m,"migrateProjectPath",0,n],101844)},333500,a=>{"use strict";var b=a.i(815429),c=a.i(188139),d=a.i(625636);async function e(a="pending"){return(await (0,d.listHarnessMessages)({view:a})).map(a=>({id:a.id,taskId:a.taskId,taskTitle:a.task?.title??"",kind:a.kind,content:a.content,state:a.state,replyText:a.replyText,repliedAt:a.repliedAt?a.repliedAt.toISOString():null,createdAt:a.createdAt.toISOString()}))}async function f(a,b){let d=process.env.PORT??"3000";try{let e=await fetch(`http://localhost:${d}/api/internal/harness/reply`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({taskId:a,text:b})}),f=await e.json().catch(()=>({}));if((0,c.revalidatePath)("/harness"),!e.ok)return{ok:!1,error:f.error??"reply failed"};return{ok:!0,mode:f.mode,injected:f.injected}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async function g(b){let c=b.dest?.trim();if(!c)return{ok:!1,output:"缺少测试目的地"};let{getTowerDir:d}=await a.A(371711),{resolveCommandPathSync:e}=await a.A(889618),{execFile:f}=await a.A(482848),{promisify:g}=await a.A(268548),h=g(f),i=b.downstream?`通过「${b.downstream}」`:"",j=`这是一次通知渠道连通性测试。请用「${b.gateway}」网关${i},给「${c}」发送一条测试消息:「✅ Tower 通知渠道测试,收到请忽略」。收件人「${c}」可能是名称而非 id(如某个人名或群名)—— 若不是现成 id,先用对应平台的 MCP 工具按名称查找该群/人拿到 id,再发送。只做这一件事。发送成功只回复 SENT,失败只回复 FAILED 加简短原因。`,k=process.env.CLAUDE_CODE_PATH||e("claude");try{let{stdout:a}=await h(k,["--print",j,"--permission-mode","bypassPermissions"],{cwd:d(),timeout:12e4,maxBuffer:1048576,env:process.env}),b=(a||"").trim();return{ok:/\bSENT\b/i.test(b)&&!/\bFAIL/i.test(b),output:b||"(无输出)"}}catch(a){return{ok:!1,output:(a.stdout||a.stderr||a.message||String(a)).trim().slice(0,2e3)}}}async function h(a){let b=await (0,d.ignoreAsk)(a);return(0,c.revalidatePath)("/harness"),{ok:b}}async function i(a){return await (0,d.dismissMessage)(a),(0,c.revalidatePath)("/harness"),{ok:!0}}(0,a.i(630048).ensureServerEntryExports)([e,f,g,h,i]),(0,b.registerServerReference)(e,"40eb2e17b12a4365beee5c57c9b5534f3ef6558a2d",null),(0,b.registerServerReference)(f,"60446c5198ebeed1273c32fd2cc0e5c3704123f6e5",null),(0,b.registerServerReference)(g,"40dc9fc2c9c0b69d14fc779a0bb51b34232d5f18d5",null),(0,b.registerServerReference)(h,"405ffc4d2a36ada45d8f20a5c110910625bba0ffeb",null),(0,b.registerServerReference)(i,"40d082281edf0f7744acdbecc71cddd73868edd2a8",null),a.s(["dismissHarnessMessage",0,i,"getHarnessMessages",0,e,"ignoreHarnessAsk",0,h,"replyHarnessAsk",0,f,"testHarnessTarget",0,g])},925886,a=>{"use strict";var b=a.i(815429),c=a.i(761469),d=a.i(188139);async function e(a){return c.db.agentPrompt.findMany({where:a?{OR:[{workspaceId:a},{workspaceId:null}]}:{},orderBy:[{isDefault:"desc"},{name:"asc"}]})}async function f(a){return c.db.agentPrompt.findUnique({where:{id:a}})}async function g(a){if(a.content.length>1e5)throw Error("Prompt content exceeds maximum length of 100000 characters");let b=await c.db.agentPrompt.create({data:a});return(0,d.revalidatePath)("/workspaces"),(0,d.revalidatePath)("/settings"),b}async function h(a,b){if(void 0!==b.content&&b.content.length>1e5)throw Error("Prompt content exceeds maximum length of 100000 characters");let e=await c.db.agentPrompt.update({where:{id:a},data:b});return(0,d.revalidatePath)("/workspaces"),(0,d.revalidatePath)("/settings"),e}async function i(a){await c.db.agentPrompt.delete({where:{id:a}}),(0,d.revalidatePath)("/workspaces"),(0,d.revalidatePath)("/settings")}async function j(a,b){let e=await c.db.$transaction(async c=>(await c.agentPrompt.updateMany({where:b?{workspaceId:b,isDefault:!0}:{isDefault:!0},data:{isDefault:!1}}),c.agentPrompt.update({where:{id:a},data:{isDefault:!0}})));return(0,d.revalidatePath)("/workspaces"),(0,d.revalidatePath)("/settings"),e}(0,a.i(630048).ensureServerEntryExports)([e,f,g,h,i,j]),(0,b.registerServerReference)(e,"404cffeebf9cd5b11929ed56c5dbcb3e79b820450e",null),(0,b.registerServerReference)(f,"4095cdaa3938b40c0ea0a88b6eb9f0bcfc7c31aa37",null),(0,b.registerServerReference)(g,"40e19466379d9cfbf66fdbf7fcc53b5b163b8ff584",null),(0,b.registerServerReference)(h,"609e6d93185ca81f068f317bfa22b1a7fe0845458e",null),(0,b.registerServerReference)(i,"40f8a1d8e3cecafa1c8b48ae6239f0bdcedae2a59f",null),(0,b.registerServerReference)(j,"60419f442541ca1e5356a8b7b4b672f72e79d4c100",null),a.s(["createPrompt",0,g,"deletePrompt",0,i,"getPrompts",0,e,"updatePrompt",0,h])},76052,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_13c4a4g._.js"].map(b=>a.l(b))).then(()=>b(492067)))},98813,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[root-of-the-server]__0e79g0v._.js"].map(b=>a.l(b))).then(()=>b(962620)))},507502,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_worktree_ts_06cucy3._.js"].map(b=>a.l(b))).then(()=>b(845427)))},752453,a=>{a.v(b=>Promise.all(["server/chunks/ssr/_0b660g4._.js"].map(b=>a.l(b))).then(()=>b(897667)))},482848,a=>{a.v(a=>Promise.resolve().then(()=>a(874533)))},268548,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]_node_util_0xr.y7p._.js"].map(b=>a.l(b))).then(()=>b(812057)))},144264,a=>{a.v(a=>Promise.resolve().then(()=>a(233405)))},534777,a=>{a.v(a=>Promise.resolve().then(()=>a(224361)))},889618,a=>{a.v(a=>Promise.resolve().then(()=>a(163812)))},195404,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_fts_ts_01m1thq._.js"].map(b=>a.l(b))).then(()=>b(835032)))},371711,a=>{a.v(a=>Promise.resolve().then(()=>a(319997)))}];
46
+
47
+ //# sourceMappingURL=%5Broot-of-the-server%5D__1013v_g._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[427699,(a,b,c)=>{b.exports=a.x("events",()=>require("events"))},687769,(a,b,c)=>{b.exports=a.x("node:events",()=>require("node:events"))},81111,(a,b,c)=>{b.exports=a.x("node:stream",()=>require("node:stream"))},899871,(a,b,c)=>{b.exports=a.x("node:string_decoder",()=>require("node:string_decoder"))},449719,(a,b,c)=>{b.exports=a.x("assert",()=>require("assert"))},500874,(a,b,c)=>{b.exports=a.x("buffer",()=>require("buffer"))},406461,(a,b,c)=>{b.exports=a.x("zlib",()=>require("zlib"))},57328,(a,b,c)=>{b.exports=a.x("node:assert",()=>require("node:assert"))},4634,a=>{"use strict";var b=a.i(815429),c=a.i(761469),d=a.i(188139),e=a.i(26683),f=a.i(630048);let g=["onboarding.completed","onboarding.lastStep","onboarding.username"];async function h(){let a=await c.db.systemConfig.findMany({where:{key:{in:[...g]}}}),b={};for(let c of a)try{b[c.key]=JSON.parse(c.value)}catch{b[c.key]=null}let d=!0===b["onboarding.completed"],e=b["onboarding.lastStep"],f=b["onboarding.username"];return{isFirstRun:!d,isCompleted:d,lastStep:"number"==typeof e?e:0,username:"string"==typeof f&&f.length>0?f:null}}async function i(a){await c.db.systemConfig.upsert({where:{key:"onboarding.lastStep"},create:{key:"onboarding.lastStep",value:JSON.stringify(a)},update:{value:JSON.stringify(a)}}),(0,d.revalidatePath)("/","layout")}async function j(a,b=4){if(await c.db.systemConfig.upsert({where:{key:"onboarding.completed"},create:{key:"onboarding.completed",value:"true"},update:{value:"true"}}),await c.db.systemConfig.upsert({where:{key:"onboarding.lastStep"},create:{key:"onboarding.lastStep",value:String(b)},update:{value:String(b)}}),void 0!==a){let b=a.trim().slice(0,64).replace(/[\r\n]/g," ");b.length>0&&await c.db.systemConfig.upsert({where:{key:"onboarding.username"},create:{key:"onboarding.username",value:JSON.stringify(b)},update:{value:JSON.stringify(b)}})}(0,d.revalidatePath)("/","layout")}async function k(a,b){await c.db.systemConfig.upsert({where:{key:"onboarding.extensions.requested"},create:{key:"onboarding.extensions.requested",value:JSON.stringify(a)},update:{value:JSON.stringify(a)}}),await c.db.systemConfig.upsert({where:{key:"onboarding.extensions.completed"},create:{key:"onboarding.extensions.completed",value:JSON.stringify(b)},update:{value:JSON.stringify(b)}}),(0,d.revalidatePath)("/","layout")}async function l(b){try{e.logger.create("task-completion").info("Task completion event dispatched",{taskId:b.taskId,taskTitle:b.taskTitle,status:b.status,executionId:b.executionId});let{broadcastNotification:c}=await a.A(904454);c({...b,type:"completion"}),(async()=>{try{let{db:c}=await a.A(3571),{recordHarnessMessage:d}=await a.A(64314),e=await c.task.findUnique({where:{id:b.taskId},select:{unattended:!0}});if(!e?.unattended)return;let f="COMPLETED"===b.status;await d({taskId:b.taskId,executionId:b.executionId,kind:f?"done":"failed",content:f?"任务已完成,进入待审阅。":"任务执行失败,请查看终端。"})}catch{}})()}catch{}}(0,f.ensureServerEntryExports)([h,i,j,k,l]),(0,b.registerServerReference)(h,"0018fbdd66aba52ffae0eea94c547cdac80082d648",null),(0,b.registerServerReference)(i,"4043130a1d362ee33ae88de0ed751aa1fbfa0fb132",null),(0,b.registerServerReference)(j,"602e0b75d87a1db34c3ffadaf61190e40e67bb0a42",null),(0,b.registerServerReference)(k,"603480184e60c27214a54381387436ff640e52b1b6",null),(0,b.registerServerReference)(l,"40a9ab396e79818e2ea0459b4f4c315855196db134",null),a.s(["completeOnboarding",0,j,"dispatchTaskCompletionEvent",0,l,"getOnboardingStatus",0,h,"setOnboardingExtensions",0,k,"setOnboardingProgress",0,i])},904454,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[root-of-the-server]__0mpjat-._.js","server/chunks/ssr/src_lib_03x1i~1._.js"].map(b=>a.l(b))).then(()=>b(640545)))},3571,a=>{a.v(a=>Promise.resolve().then(()=>a(761469)))},64314,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_harness_harness-message_ts_0_3ygf9._.js"].map(b=>a.l(b))).then(()=>b(625636)))},640417,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]_@vscode_ripgrep_0m7itqb._.js"].map(b=>a.l(b))).then(()=>b(942094)))}];
1
+ module.exports=[427699,(a,b,c)=>{b.exports=a.x("events",()=>require("events"))},687769,(a,b,c)=>{b.exports=a.x("node:events",()=>require("node:events"))},81111,(a,b,c)=>{b.exports=a.x("node:stream",()=>require("node:stream"))},899871,(a,b,c)=>{b.exports=a.x("node:string_decoder",()=>require("node:string_decoder"))},449719,(a,b,c)=>{b.exports=a.x("assert",()=>require("assert"))},500874,(a,b,c)=>{b.exports=a.x("buffer",()=>require("buffer"))},406461,(a,b,c)=>{b.exports=a.x("zlib",()=>require("zlib"))},57328,(a,b,c)=>{b.exports=a.x("node:assert",()=>require("node:assert"))},4634,a=>{"use strict";var b=a.i(815429),c=a.i(761469),d=a.i(188139),e=a.i(26683),f=a.i(630048);let g=["onboarding.completed","onboarding.lastStep","onboarding.username"];async function h(){let a=await c.db.systemConfig.findMany({where:{key:{in:[...g]}}}),b={};for(let c of a)try{b[c.key]=JSON.parse(c.value)}catch{b[c.key]=null}let d=!0===b["onboarding.completed"],e=b["onboarding.lastStep"],f=b["onboarding.username"];return{isFirstRun:!d,isCompleted:d,lastStep:"number"==typeof e?e:0,username:"string"==typeof f&&f.length>0?f:null}}async function i(a){await c.db.systemConfig.upsert({where:{key:"onboarding.lastStep"},create:{key:"onboarding.lastStep",value:JSON.stringify(a)},update:{value:JSON.stringify(a)}}),(0,d.revalidatePath)("/","layout")}async function j(a,b=4){if(await c.db.systemConfig.upsert({where:{key:"onboarding.completed"},create:{key:"onboarding.completed",value:"true"},update:{value:"true"}}),await c.db.systemConfig.upsert({where:{key:"onboarding.lastStep"},create:{key:"onboarding.lastStep",value:String(b)},update:{value:String(b)}}),void 0!==a){let b=a.trim().slice(0,64).replace(/[\r\n]/g," ");b.length>0&&await c.db.systemConfig.upsert({where:{key:"onboarding.username"},create:{key:"onboarding.username",value:JSON.stringify(b)},update:{value:JSON.stringify(b)}})}(0,d.revalidatePath)("/","layout")}async function k(a,b){await c.db.systemConfig.upsert({where:{key:"onboarding.extensions.requested"},create:{key:"onboarding.extensions.requested",value:JSON.stringify(a)},update:{value:JSON.stringify(a)}}),await c.db.systemConfig.upsert({where:{key:"onboarding.extensions.completed"},create:{key:"onboarding.extensions.completed",value:JSON.stringify(b)},update:{value:JSON.stringify(b)}}),(0,d.revalidatePath)("/","layout")}async function l(b){try{e.logger.create("task-completion").info("Task completion event dispatched",{taskId:b.taskId,taskTitle:b.taskTitle,status:b.status,executionId:b.executionId});let{broadcastNotification:c}=await a.A(904454);c({...b,type:"completion"}),(async()=>{try{let{db:c}=await a.A(3571),{recordHarnessMessage:d}=await a.A(64314),e=await c.task.findUnique({where:{id:b.taskId},select:{unattended:!0}});if(!e?.unattended)return;let f="COMPLETED"===b.status;await d({taskId:b.taskId,executionId:b.executionId,kind:f?"done":"failed",content:f?"任务已完成,进入待审阅。":"任务执行失败,请查看终端。"})}catch{}})()}catch{}}(0,f.ensureServerEntryExports)([h,i,j,k,l]),(0,b.registerServerReference)(h,"001de1e475f046aa339c23ec372c92b714d1f9a6f5",null),(0,b.registerServerReference)(i,"40107191906b7bd9007e9c955d43addd4eb4a5a687",null),(0,b.registerServerReference)(j,"603aca60338da224813e09368e73f008feefa9a4fe",null),(0,b.registerServerReference)(k,"60d98f261d5da4342103e4c5be854bfdc7b172158c",null),(0,b.registerServerReference)(l,"4047d8634587ecb96fe8459ea07f040d7d207f1c96",null),a.s(["completeOnboarding",0,j,"dispatchTaskCompletionEvent",0,l,"getOnboardingStatus",0,h,"setOnboardingExtensions",0,k,"setOnboardingProgress",0,i])},904454,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[root-of-the-server]__0xnuz05._.js"].map(b=>a.l(b))).then(()=>b(640545)))},3571,a=>{a.v(a=>Promise.resolve().then(()=>a(761469)))},64314,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_harness_harness-message_ts_0_3ygf9._.js"].map(b=>a.l(b))).then(()=>b(625636)))},640417,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]_@vscode_ripgrep_0m7itqb._.js"].map(b=>a.l(b))).then(()=>b(942094)))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__11fp64w._.js.map
@@ -0,0 +1,30 @@
1
+ module.exports=[52350,562278,a=>{"use strict";var b=a.i(902157),c=a.i(660526),d=a.i(750227),e=a.i(163812);function f(){return process.env.TOWER_PACKAGE_ROOT||process.cwd()}a.s(["getPackageRoot",0,f],562278);let g=["sonnet","opus","haiku","claude-sonnet-4-6","claude-opus-4-6","claude-haiku-4-5-20251001"];a.s(["ClaudeCliAdapter",0,class{buildSpawnArgs(a){let b=["--dangerously-skip-permissions"];a.extraArgs?.length&&b.push(...a.extraArgs),a.resumeSessionId?b.push("--resume",a.resumeSessionId):a.continueLatest?b.push("--continue"):a.prompt&&b.push(a.prompt);let c={...a.envOverrides??{}};return{command:this.resolveCommand(),args:b,env:c}}buildEnvOverrides(a){let b={TOWER_TASK_ID:a.taskId,TOWER_TASK_TITLE:a.taskTitle,TOWER_STARTED_AT:new Date().toISOString(),TOWER_API_URL:a.apiUrl};return a.callbackUrl&&(b.CALLBACK_URL=a.callbackUrl),b}async installHooks(a){try{let a=this.readSettings(),b=a.hooks??{},c=f().replace(/\\/g,"/"),e=d.join(c,"scripts","tower-session-start-hook.js").replace(/\\/g,"/"),g=d.join(c,"scripts","tower-post-tool-hook.js").replace(/\\/g,"/"),h=d.join(c,"scripts","tower-stop-hook.js").replace(/\\/g,"/"),i=!1;return i=this.upsertHook(b,"SessionStart","session-start-hook.js",{hooks:[{command:`node "${e}"`,timeout:5,type:"command"}]})||i,i=this.upsertHook(b,"PostToolUse","post-tool-hook.js",{hooks:[{command:`node "${g}"`,timeout:10,type:"command"}],matcher:"Write|Edit|MultiEdit"})||i,(i=this.upsertHook(b,"Stop","stop-hook.js",{hooks:[{command:`node "${h}"`,timeout:5,type:"command"}]})||i)&&(a.hooks=b,this.writeSettings(a)),{ok:!0,method:"file",detail:this.getSettingsPath()}}catch(a){return{ok:!1,method:"file",detail:this.getSettingsPath(),error:a instanceof Error?a.message:String(a)}}}async repairHookPaths(){try{let a=this.readSettings(),b=a.hooks??{},c=f().replace(/\\/g,"/"),e=!1;for(let[a,f,g]of[["SessionStart","session-start-hook.js","tower-session-start-hook.js"],["PostToolUse","post-tool-hook.js","tower-post-tool-hook.js"],["Stop","stop-hook.js","tower-stop-hook.js"]]){let h=this.getHookArray(b,a),i=h.findIndex(a=>a?.hooks?.some?.(a=>a.command?.includes(f)));if(i<0)continue;let j=d.join(c,"scripts",g).replace(/\\/g,"/"),k=`node "${j}"`,l=h[i]?.hooks?.[0];l&&l.command!==k&&(l.command=k,b[a]=h,e=!0)}e&&(a.hooks=b,this.writeSettings(a))}catch{}}upsertHook(a,b,c,d){let e=this.getHookArray(a,b),f=d?.hooks?.[0]?.command,g=e.findIndex(a=>a?.hooks?.some?.(a=>a.command?.includes(c)));if(g>=0){if(e[g]?.hooks?.[0]?.command===f)return!1;e.splice(g,1)}return e.push(d),a[b]=e,!0}async uninstallHooks(){try{let a=this.readSettings(),b=a.hooks??{},c=["session-start-hook.js","post-tool-hook.js","stop-hook.js"];for(let a of["SessionStart","PostToolUse","Stop"]){let d=this.getHookArray(b,a);b[a]=d.filter(a=>!a.hooks?.some(a=>c.some(b=>a.command?.includes(b))))}return a.hooks=b,this.writeSettings(a),{ok:!0,method:"file",detail:this.getSettingsPath()}}catch(a){return{ok:!1,method:"file",detail:this.getSettingsPath(),error:a instanceof Error?a.message:String(a)}}}async isHooksInstalled(){let a=this.readSettings().hooks??{},b=this.getHookArray(a,"PostToolUse");return this.hasHook(b,"post-tool-hook.js")}async installMcp(a,b={}){let c=b.scope??"user",d={command:a.command,args:a.args};a.env&&Object.keys(a.env).length>0&&(d.env=a.env);let e=this.resolveCommand(),f=["mcp","add-json","-s",c,a.name,JSON.stringify(d)];try{return await this.runCli(e,["mcp","remove","-s",c,a.name],b.cwd).catch(()=>{}),await this.runCli(e,f,b.cwd),{ok:!0,method:"cli",detail:`${e} ${f.join(" ")}`}}catch(a){return{ok:!1,method:"cli",detail:`${e} ${f.join(" ")}`,error:a instanceof Error?a.message:String(a)}}}async uninstallMcp(a,b={}){let c=b.scope??"user",d=this.resolveCommand(),e=["mcp","remove","-s",c,a];try{return await this.runCli(d,e,b.cwd),{ok:!0,method:"cli",detail:`${d} ${e.join(" ")}`}}catch(a){return{ok:!1,method:"cli",detail:`${d} ${e.join(" ")}`,error:a instanceof Error?a.message:String(a)}}}async isMcpInstalled(a,b={}){let c=this.resolveCommand();try{return await this.runCli(c,["mcp","get",a],b.cwd,5e3),!0}catch{return!1}}async installSkill(a,c){let f=d.join(this.getConfigDir(),"skills",a);try{if(!b.existsSync(c))return{ok:!1,method:"symlink",detail:f,error:`Source skill dir does not exist: ${c}`};b.mkdirSync(d.dirname(f),{recursive:!0});let a=await b.promises.lstat(f).catch(()=>null);if(a)if(!(a.isSymbolicLink()||(0,e.isWindows)()&&a.isDirectory()))return{ok:!1,method:"symlink",detail:f,error:`Refusing to overwrite non-symlink at ${f}`};else try{let a=await b.promises.readlink(f);if(d.resolve(a)===d.resolve(c))return{ok:!0,method:"symlink",detail:`${f} → ${c} (already)`};await b.promises.unlink(f)}catch{if(!a.isSymbolicLink())return{ok:!1,method:"symlink",detail:f,error:`Refusing to overwrite non-symlink at ${f}`}}let g=(0,e.isWindows)()?"junction":"dir";return await b.promises.symlink(c,f,g),{ok:!0,method:"symlink",detail:`${f} → ${c}`}}catch(a){return{ok:!1,method:"symlink",detail:f,error:a instanceof Error?a.message:String(a)}}}async uninstallSkill(a){let c=d.join(this.getConfigDir(),"skills",a);try{let a=await b.promises.lstat(c).catch(()=>null);if(!a)return{ok:!0,method:"symlink",detail:`${c} (already absent)`};if(!a.isSymbolicLink())return{ok:!1,method:"symlink",detail:c,error:`Refusing to remove non-symlink at ${c}`};return await b.promises.unlink(c),{ok:!0,method:"symlink",detail:c}}catch(a){return{ok:!1,method:"symlink",detail:c,error:a instanceof Error?a.message:String(a)}}}async isSkillInstalled(a,c){let e=d.join(this.getConfigDir(),"skills",a);try{if(!(await b.promises.lstat(e)).isSymbolicLink())return!1;if(!c)return!0;let a=await b.promises.readlink(e),f=d.isAbsolute(a)?a:d.resolve(d.dirname(e),a);return d.resolve(f)===d.resolve(c)}catch{return!1}}async runCli(b,c,d,e=1e4){let{execFile:f}=await a.A(482848),{promisify:g}=await a.A(268548),h=g(f),{stdout:i}=await h(b,c,{cwd:d,timeout:e});return i}async isAvailable(){return null!==await this.getVersion()}async getVersion(){try{let{execFile:b}=await a.A(144264),{promisify:c}=await a.A(534777),{resolveSpawnTarget:d}=await a.A(889618),e=c(b),f=await d(this.resolveCommand(),["--version"]),{stdout:g}=await e(f.command,f.args,{timeout:5e3});return g.trim()||null}catch{return null}}async getModels(){return g}getConfigDir(){return d.join(c.homedir(),".claude")}getSettingsPath(){return d.join(this.getConfigDir(),"settings.json")}getSessionsDir(){return d.join(this.getConfigDir(),"projects")}getApiKeyInfo(){return{envVar:"ANTHROPIC_API_KEY",required:!1}}buildHelloProbeArgs(a){return{command:this.resolveCommand(),args:["--print",a,"--output-format","stream-json","--verbose"]}}resolveCommand(){if(process.env.CLAUDE_CODE_PATH)return process.env.CLAUDE_CODE_PATH;if((0,e.isWindows)()){let a=(0,e.resolveCommandPathSync)("claude-code");if("claude-code"!==a)return a}return(0,e.resolveCommandPathSync)("claude")}readSettings(){try{return JSON.parse(b.readFileSync(this.getSettingsPath(),"utf-8"))}catch{return{}}}writeSettings(a){let c=this.getConfigDir();b.existsSync(c)||b.mkdirSync(c,{recursive:!0}),b.writeFileSync(this.getSettingsPath(),JSON.stringify(a,null,2),"utf-8")}getHookArray(a,b){let c=a[b];return Array.isArray(c)?c:[]}hasHook(a,b){return a.some(a=>a.hooks?.some(a=>a.command?.includes(b)))}}],52350)},897667,a=>{"use strict";let b=new(a.i(52350)).ClaudeCliAdapter;async function c(d,e,f={}){let g="";try{let{query:c}=await a.A(719041),h=b.resolveCommand();for await(let a of c({prompt:d,options:{tools:f.tools??[],allowedTools:f.allowedTools??[],maxTurns:f.maxTurns??1,cwd:e,pathToClaudeCodeExecutable:h,sessionPersistence:!1}}))if("assistant"===a.type){let b=a.message.content.filter(a=>"text"===a.type);g+=b.map(a=>a.text??"").join("")}else if("result"===a.type){let b="string"==typeof a.result?a.result:"";b&&!g&&(g=b)}return g.trim()||null}catch(a){if(a.message?.includes("maximum number of turns")&&g.trim())return g.trim();return console.error("[aiQuery] Failed:",a.message,a.stack?.slice(0,300)),null}}async function d(a,b){let d=`以下是一次AI编程助手的终端会话记录。请用一句简短的中文总结这次会话做了什么(不超过50字,只回答总结内容,不要加引号或前缀):
2
+
3
+ \`\`\`
4
+ ${a.slice(-5e3)}
5
+ \`\`\``,e=await c(d,b);return e&&e.replace(/^[#*\->"'\s]+/,"").trim()||null}async function e(a,b,d){let e=a.slice(-8e3),f=d?`
6
+ Session summary: ${d}`:"",g=`You are analyzing a completed AI coding session. Extract reusable insights.
7
+ ${f}
8
+
9
+ Terminal log (last 8000 chars):
10
+ \`\`\`
11
+ ${e}
12
+ \`\`\`
13
+
14
+ Respond ONLY with valid JSON matching this schema (no markdown, no explanation):
15
+ {
16
+ "summary": "one-sentence summary of what was accomplished",
17
+ "insights": [
18
+ { "type": "pattern|pitfall|decision|tool|reference", "content": "description" }
19
+ ],
20
+ "shouldCreateNote": true/false,
21
+ "noteTitle": "short title for the note (only if shouldCreateNote is true)"
22
+ }
23
+
24
+ Rules:
25
+ - Set shouldCreateNote=true ONLY if there are genuinely reusable insights (architectural decisions, non-obvious pitfalls, useful patterns, important tool discoveries)
26
+ - Trivial sessions (simple formatting, single-line edits, routine commits) should have shouldCreateNote=false
27
+ - insights array can be empty if nothing notable
28
+ - Keep each insight concise (1-2 sentences)`,h=await c(g,b);if(!h)return null;try{let a=h,b=a.match(/\{[\s\S]*\}/);b&&(a=b[0]);let c=JSON.parse(a);if("string"!=typeof c.summary||"boolean"!=typeof c.shouldCreateNote)return console.error("[generateDreamingInsight] Invalid response structure"),null;return c}catch(a){return console.error("[generateDreamingInsight] JSON parse failed:",a.message),null}}a.s(["aiQuery",0,c,"generateDreamingInsight",0,e,"generateSummaryFromLog",0,d])},482848,a=>{a.v(a=>Promise.resolve().then(()=>a(874533)))},268548,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]_node_util_0xr.y7p._.js"].map(b=>a.l(b))).then(()=>b(812057)))},144264,a=>{a.v(a=>Promise.resolve().then(()=>a(233405)))},534777,a=>{a.v(a=>Promise.resolve().then(()=>a(224361)))},889618,a=>{a.v(a=>Promise.resolve().then(()=>a(163812)))},719041,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]__0ti8vng._.js","server/chunks/ssr/07-d_@anthropic-ai_claude-agent-sdk_sdk_mjs_0myippv._.js"].map(b=>a.l(b))).then(()=>b(845454)))}];
29
+
30
+ //# sourceMappingURL=%5Broot-of-the-server%5D__123rmn-._.js.map