purplemux 0.1.18 → 0.1.20

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 (574) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +100 -89
  3. package/.next/standalone/.next/prerender-manifest.json +3 -3
  4. package/.next/standalone/.next/required-server-files.json +2 -1
  5. package/.next/standalone/.next/routes-manifest.json +25 -7
  6. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02.9a5j._.js +3 -0
  7. package/.next/standalone/.next/server/chunks/[root-of-the-server]__038erb-._.js +3 -0
  8. package/.next/standalone/.next/server/chunks/[root-of-the-server]__03l15.f._.js +3 -0
  9. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__01tlivs._.js → [root-of-the-server]__045g9-a._.js} +1 -1
  10. package/.next/standalone/.next/server/chunks/[root-of-the-server]__045vzzi._.js +3 -0
  11. package/.next/standalone/.next/server/chunks/[root-of-the-server]__04cr_m8._.js +3 -0
  12. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0.784vy._.js → [root-of-the-server]__04o.cbq._.js} +2 -2
  13. package/.next/standalone/.next/server/chunks/[root-of-the-server]__04x_1t5._.js +3 -0
  14. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05ij_ys._.js +42 -0
  15. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07gfnob._.js +3 -0
  16. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07xijrd._.js +3 -0
  17. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09gkm_6._.js +3 -0
  18. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0auutl5._.js +5 -0
  19. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cjfc~l._.js +3 -0
  20. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dr444i._.js +3 -0
  21. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__10qmoea._.js → [root-of-the-server]__0ef59mr._.js} +1 -1
  22. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gaqt4q._.js +3 -0
  23. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0~7dxd-._.js → [root-of-the-server]__0hzysmw._.js} +1 -1
  24. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iqf2xr._.js +1 -1
  25. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0001gmm._.js → [root-of-the-server]__0jbkb-k._.js} +2 -2
  26. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l~_wd0._.js +1 -1
  27. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0m4quth._.js +30 -0
  28. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mm5n3z._.js +1 -1
  29. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ovn6yp._.js +3 -0
  30. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0xecpwx._.js → [root-of-the-server]__0pv48rv._.js} +1 -1
  31. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__12ssdyv._.js → [root-of-the-server]__0qda0wx._.js} +1 -1
  32. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t1c-6w._.js +3 -0
  33. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vi8p6v._.js +3 -0
  34. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0w3m-oz._.js +3 -0
  35. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yx8n48._.js +30 -0
  36. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0zgk2hc._.js → [root-of-the-server]__0zjping._.js} +1 -1
  37. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12ksl6n._.js +42 -0
  38. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12nr~pb._.js +3 -0
  39. package/.next/standalone/.next/server/chunks/{_0zmpqeq._.js → _0.hbe-v._.js} +1 -1
  40. package/.next/standalone/.next/server/chunks/{_11sa9x9._.js → _04pfden._.js} +1 -1
  41. package/.next/standalone/.next/server/chunks/{_0neu42m._.js → _05otee~._.js} +1 -1
  42. package/.next/standalone/.next/server/chunks/{_0xm0bgi._.js → _06vitke._.js} +1 -1
  43. package/.next/standalone/.next/server/chunks/{_0ku6yh6._.js → _0_1vqqb._.js} +1 -1
  44. package/.next/standalone/.next/server/chunks/{_05q-qaa._.js → _0c63jma._.js} +1 -1
  45. package/.next/standalone/.next/server/chunks/{_0w~-6v5._.js → _0d415er._.js} +1 -1
  46. package/.next/standalone/.next/server/chunks/{_0~n369~._.js → _0mnwbyo._.js} +1 -1
  47. package/.next/standalone/.next/server/chunks/{_0-8af08._.js → _0out7wm._.js} +1 -1
  48. package/.next/standalone/.next/server/chunks/{_0ajpg~n._.js → _0st-_d~._.js} +1 -1
  49. package/.next/standalone/.next/server/chunks/{_126~1m~._.js → _0tumyht._.js} +1 -1
  50. package/.next/standalone/.next/server/chunks/{_101zqtw._.js → _0uxocm.._.js} +1 -1
  51. package/.next/standalone/.next/server/chunks/{_00vo~3m._.js → _0xd1ivw._.js} +1 -1
  52. package/.next/standalone/.next/server/chunks/{_0p2ysf8._.js → _0xmsr59._.js} +1 -1
  53. package/.next/standalone/.next/server/chunks/{_00momox._.js → _1368r9s._.js} +1 -1
  54. package/.next/standalone/.next/server/chunks/src_lib_session-parser_ts_0~rhicw._.js +1 -1
  55. package/.next/standalone/.next/server/chunks/src_lib_status-manager_ts_003hlhy._.js +1 -1
  56. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-e2yqy._.js +3 -0
  57. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__07i-oza._.js +3 -0
  58. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0c0bz7t._.js +3 -0
  59. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0hwcydd._.js +3 -0
  60. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0vwkkwh._.js +3 -0
  61. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0xtl4e9._.js +3 -0
  62. package/.next/standalone/.next/server/chunks/ssr/{_0~pljsk._.js → _0-67bvb._.js} +2 -2
  63. package/.next/standalone/.next/server/chunks/ssr/_0-xx2s1._.js +1 -1
  64. package/.next/standalone/.next/server/chunks/ssr/_02nf4d7._.js +3 -0
  65. package/.next/standalone/.next/server/chunks/ssr/{_0752.iv._.js → _05ba4k1._.js} +2 -2
  66. package/.next/standalone/.next/server/chunks/ssr/{_0iok2zk._.js → _05bq96_._.js} +2 -2
  67. package/.next/standalone/.next/server/chunks/ssr/_05dcjwi._.js +3 -0
  68. package/.next/standalone/.next/server/chunks/ssr/_06.nllk._.js +3 -0
  69. package/.next/standalone/.next/server/chunks/ssr/_06wnz.b._.js +7 -0
  70. package/.next/standalone/.next/server/chunks/ssr/_06yggfn._.js +3 -0
  71. package/.next/standalone/.next/server/chunks/ssr/_07jud1p._.js +14 -14
  72. package/.next/standalone/.next/server/chunks/ssr/{_0a4k87n._.js → _0_mc3i2._.js} +2 -2
  73. package/.next/standalone/.next/server/chunks/ssr/_0_soefg._.js +3 -0
  74. package/.next/standalone/.next/server/chunks/ssr/_0al4.z9._.js +3 -0
  75. package/.next/standalone/.next/server/chunks/ssr/_0b~zgl1._.js +3 -0
  76. package/.next/standalone/.next/server/chunks/ssr/_0c0hpua._.js +3 -0
  77. package/.next/standalone/.next/server/chunks/ssr/{_09q3qj.._.js → _0fuovbm._.js} +2 -2
  78. package/.next/standalone/.next/server/chunks/ssr/{_0dy.s7v._.js → _0g258pg._.js} +2 -2
  79. package/.next/standalone/.next/server/chunks/ssr/_0hqzsa8._.js +3 -0
  80. package/.next/standalone/.next/server/chunks/ssr/{_12_v.c0._.js → _0h~fc23._.js} +2 -2
  81. package/.next/standalone/.next/server/chunks/ssr/_0js4l3t._.js +1 -1
  82. package/.next/standalone/.next/server/chunks/ssr/_0k9ybcl._.js +3 -0
  83. package/.next/standalone/.next/server/chunks/ssr/{_0_nsc2m._.js → _0kjoxb9._.js} +2 -2
  84. package/.next/standalone/.next/server/chunks/ssr/_0kno-5w._.js +3 -0
  85. package/.next/standalone/.next/server/chunks/ssr/_0lhf6qf._.js +3 -0
  86. package/.next/standalone/.next/server/chunks/ssr/_0nkeoiw._.js +3 -0
  87. package/.next/standalone/.next/server/chunks/ssr/_0ob2rr-._.js +3 -0
  88. package/.next/standalone/.next/server/chunks/ssr/_0p-v0d3._.js +7 -0
  89. package/.next/standalone/.next/server/chunks/ssr/_0pp3e5j._.js +14 -14
  90. package/.next/standalone/.next/server/chunks/ssr/_0qejycp._.js +3 -0
  91. package/.next/standalone/.next/server/chunks/ssr/_0quk21n._.js +3 -0
  92. package/.next/standalone/.next/server/chunks/ssr/_0qy269j._.js +3 -0
  93. package/.next/standalone/.next/server/chunks/ssr/_0si9.17._.js +3 -0
  94. package/.next/standalone/.next/server/chunks/ssr/_0sm8slq._.js +3 -0
  95. package/.next/standalone/.next/server/chunks/ssr/_0svke5s._.js +3 -0
  96. package/.next/standalone/.next/server/chunks/ssr/_10s2f96._.js +3 -0
  97. package/.next/standalone/.next/server/chunks/ssr/{_0nmhw96._.js → _11wj.a4._.js} +1 -1
  98. package/.next/standalone/.next/server/chunks/ssr/_124p60s._.js +3 -0
  99. package/.next/standalone/.next/server/chunks/ssr/messages_005j2ko._.js +3 -0
  100. package/.next/standalone/.next/server/chunks/ssr/messages_127a4ox._.js +3 -0
  101. package/.next/standalone/.next/server/chunks/ssr/messages_de_settings_json_[json]_cjs_0ksu4_w._.js +1 -1
  102. package/.next/standalone/.next/server/chunks/ssr/messages_de_shortcuts_json_[json]_cjs_0awzl91._.js +3 -0
  103. package/.next/standalone/.next/server/chunks/ssr/messages_de_terminal_json_[json]_cjs_05jirtw._.js +1 -1
  104. package/.next/standalone/.next/server/chunks/ssr/messages_en_settings_json_[json]_cjs_0qwl-zt._.js +1 -1
  105. package/.next/standalone/.next/server/chunks/ssr/messages_en_shortcuts_json_[json]_cjs_13ifnoh._.js +3 -0
  106. package/.next/standalone/.next/server/chunks/ssr/messages_en_terminal_json_[json]_cjs_0~ls3g-._.js +1 -1
  107. package/.next/standalone/.next/server/chunks/ssr/messages_es_settings_json_[json]_cjs_0ce_kv6._.js +1 -1
  108. package/.next/standalone/.next/server/chunks/ssr/messages_es_shortcuts_json_[json]_cjs_0fm09tk._.js +3 -0
  109. package/.next/standalone/.next/server/chunks/ssr/messages_es_terminal_json_[json]_cjs_04g2b1_._.js +1 -1
  110. package/.next/standalone/.next/server/chunks/ssr/messages_fr_settings_json_[json]_cjs_0h_6lba._.js +1 -1
  111. package/.next/standalone/.next/server/chunks/ssr/messages_fr_shortcuts_json_[json]_cjs_0t~urhq._.js +3 -0
  112. package/.next/standalone/.next/server/chunks/ssr/messages_fr_terminal_json_[json]_cjs_0uhakya._.js +1 -1
  113. package/.next/standalone/.next/server/chunks/ssr/messages_ja_settings_json_[json]_cjs_0pg~fls._.js +1 -1
  114. package/.next/standalone/.next/server/chunks/ssr/messages_ja_shortcuts_json_[json]_cjs_13gfs3d._.js +3 -0
  115. package/.next/standalone/.next/server/chunks/ssr/messages_ja_terminal_json_[json]_cjs_0776z4f._.js +1 -1
  116. package/.next/standalone/.next/server/chunks/ssr/messages_ko_settings_json_[json]_cjs_07xpfc8._.js +1 -1
  117. package/.next/standalone/.next/server/chunks/ssr/messages_ko_shortcuts_json_[json]_cjs_0jxs0.y._.js +3 -0
  118. package/.next/standalone/.next/server/chunks/ssr/messages_ko_terminal_json_[json]_cjs_06611.3._.js +1 -1
  119. package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_settings_json_[json]_cjs_0frspzp._.js +1 -1
  120. package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_shortcuts_json_[json]_cjs_01yw7y_._.js +3 -0
  121. package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_terminal_json_[json]_cjs_034yyg9._.js +1 -1
  122. package/.next/standalone/.next/server/chunks/ssr/messages_ru_settings_json_[json]_cjs_08ex00.._.js +1 -1
  123. package/.next/standalone/.next/server/chunks/ssr/messages_ru_shortcuts_json_[json]_cjs_0x7uqk_._.js +3 -0
  124. package/.next/standalone/.next/server/chunks/ssr/messages_ru_terminal_json_[json]_cjs_0emk8~n._.js +1 -1
  125. package/.next/standalone/.next/server/chunks/ssr/messages_tr_settings_json_[json]_cjs_0piu0da._.js +1 -1
  126. package/.next/standalone/.next/server/chunks/ssr/messages_tr_shortcuts_json_[json]_cjs_0fitzbv._.js +3 -0
  127. package/.next/standalone/.next/server/chunks/ssr/messages_tr_terminal_json_[json]_cjs_0xpix8g._.js +1 -1
  128. package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_settings_json_[json]_cjs_0uazwgy._.js +1 -1
  129. package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_shortcuts_json_[json]_cjs_0oxxgqw._.js +3 -0
  130. package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_terminal_json_[json]_cjs_12vwl8a._.js +1 -1
  131. package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_settings_json_[json]_cjs_09u0c5l._.js +1 -1
  132. package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_shortcuts_json_[json]_cjs_0h1.248._.js +3 -0
  133. package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_terminal_json_[json]_cjs_0spg5z5._.js +1 -1
  134. package/.next/standalone/.next/server/chunks/ssr/{src_components_050iun1._.js → src_components_04vn0dm._.js} +2 -2
  135. package/.next/standalone/.next/server/chunks/ssr/{src_components_06ro3iz._.js → src_components_0gsv3ly._.js} +2 -2
  136. package/.next/standalone/.next/server/chunks/ssr/{src_components_0cdt5do._.js → src_components_0iq~ool._.js} +2 -2
  137. package/.next/standalone/.next/server/chunks/ssr/{src_components_0~czrqf._.js → src_components_10v_9d0._.js} +2 -2
  138. package/.next/standalone/.next/server/chunks/ssr/src_components_features_mobile_mobile-terminal-page_tsx_02chzch._.js +1 -1
  139. package/.next/standalone/.next/server/chunks/ssr/src_components_features_shortcuts_cheat-sheet-dialog_tsx_0i2pbva._.js +3 -0
  140. package/.next/standalone/.next/server/chunks/ssr/src_components_features_workspace_settings-dialog_tsx_05v~y7d._.js +3 -0
  141. package/.next/standalone/.next/server/chunks/ssr/src_components_features_workspace_terminal-page_tsx_0wuq-jl._.js +3 -0
  142. package/.next/standalone/.next/server/chunks/ssr/src_hooks_use-browser-title_ts_0bw6.cb._.js +1 -1
  143. package/.next/standalone/.next/server/chunks/ssr/src_hooks_use-workspace-store_ts_0h40e5c._.js +3 -0
  144. package/.next/standalone/.next/server/chunks/ssr/src_lib_load-messages_ts_11e7h4~._.js +1 -1
  145. package/.next/standalone/.next/server/chunks/ssr/src_lib_require-auth_ts_0lybmh2._.js +1 -1
  146. package/.next/standalone/.next/server/middleware-build-manifest.js +100 -89
  147. package/.next/standalone/.next/server/pages/_app/build-manifest.json +7 -7
  148. package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
  149. package/.next/standalone/.next/server/pages/_app.js +5 -4
  150. package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
  151. package/.next/standalone/.next/server/pages/_document.js +3 -2
  152. package/.next/standalone/.next/server/pages/_document.js.nft.json +1 -1
  153. package/.next/standalone/.next/server/pages/_error.js +9 -7
  154. package/.next/standalone/.next/server/pages/_error.js.nft.json +1 -1
  155. package/.next/standalone/.next/server/pages/api/auth/preflight.js +1 -1
  156. package/.next/standalone/.next/server/pages/api/auth/preflight.js.nft.json +1 -1
  157. package/.next/standalone/.next/server/pages/api/check-claude.js +1 -2
  158. package/.next/standalone/.next/server/pages/api/check-claude.js.nft.json +1 -1
  159. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/result.js +3 -3
  160. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/result.js.nft.json +1 -1
  161. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/send.js +3 -3
  162. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/send.js.nft.json +1 -1
  163. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/status.js +3 -3
  164. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/status.js.nft.json +1 -1
  165. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId].js +3 -3
  166. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId].js.nft.json +1 -1
  167. package/.next/standalone/.next/server/pages/api/cli/tabs.js +3 -3
  168. package/.next/standalone/.next/server/pages/api/cli/tabs.js.nft.json +1 -1
  169. package/.next/standalone/.next/server/pages/api/cli/workspaces.js +2 -2
  170. package/.next/standalone/.next/server/pages/api/cli/workspaces.js.nft.json +1 -1
  171. package/.next/standalone/.next/server/pages/api/git/branch.js +1 -1
  172. package/.next/standalone/.next/server/pages/api/git/branch.js.nft.json +1 -1
  173. package/.next/standalone/.next/server/pages/api/git/status.js +1 -1
  174. package/.next/standalone/.next/server/pages/api/git/status.js.nft.json +1 -1
  175. package/.next/standalone/.next/server/pages/api/keybindings/pages-manifest.json +3 -0
  176. package/.next/standalone/.next/server/pages/api/keybindings.js +5 -0
  177. package/.next/standalone/.next/server/pages/api/keybindings.js.map +5 -0
  178. package/.next/standalone/.next/server/pages/api/keybindings.js.nft.json +1 -0
  179. package/.next/standalone/.next/server/pages/api/layout/cwd.js +1 -1
  180. package/.next/standalone/.next/server/pages/api/layout/cwd.js.nft.json +1 -1
  181. package/.next/standalone/.next/server/pages/api/layout/diff.js +1 -1
  182. package/.next/standalone/.next/server/pages/api/layout/diff.js.nft.json +1 -1
  183. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId]/move.js +3 -3
  184. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId]/move.js.nft.json +1 -1
  185. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js +5 -5
  186. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js.nft.json +1 -1
  187. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/order.js +3 -3
  188. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/order.js.nft.json +1 -1
  189. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js +6 -6
  190. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js.nft.json +1 -1
  191. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId].js +3 -3
  192. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId].js.nft.json +1 -1
  193. package/.next/standalone/.next/server/pages/api/layout/pane.js +3 -3
  194. package/.next/standalone/.next/server/pages/api/layout/pane.js.nft.json +1 -1
  195. package/.next/standalone/.next/server/pages/api/layout.js +3 -3
  196. package/.next/standalone/.next/server/pages/api/layout.js.nft.json +1 -1
  197. package/.next/standalone/.next/server/pages/api/message-history.js +2 -2
  198. package/.next/standalone/.next/server/pages/api/message-history.js.nft.json +1 -1
  199. package/.next/standalone/.next/server/pages/api/preflight/runtime.js +1 -1
  200. package/.next/standalone/.next/server/pages/api/preflight/runtime.js.nft.json +1 -1
  201. package/.next/standalone/.next/server/pages/api/push/vapid-key.js +1 -1
  202. package/.next/standalone/.next/server/pages/api/push/vapid-key.js.nft.json +1 -1
  203. package/.next/standalone/.next/server/pages/api/stats/daily-report/cache.js +1 -1
  204. package/.next/standalone/.next/server/pages/api/stats/daily-report/cache.js.nft.json +1 -1
  205. package/.next/standalone/.next/server/pages/api/stats/daily-report/generate.js +1 -1
  206. package/.next/standalone/.next/server/pages/api/stats/daily-report/generate.js.nft.json +1 -1
  207. package/.next/standalone/.next/server/pages/api/stats/daily-report/list.js +2 -2
  208. package/.next/standalone/.next/server/pages/api/stats/daily-report/list.js.nft.json +1 -1
  209. package/.next/standalone/.next/server/pages/api/stats/projects.js +1 -1
  210. package/.next/standalone/.next/server/pages/api/stats/projects.js.nft.json +1 -1
  211. package/.next/standalone/.next/server/pages/api/stats/sessions.js +2 -2
  212. package/.next/standalone/.next/server/pages/api/stats/sessions.js.nft.json +1 -1
  213. package/.next/standalone/.next/server/pages/api/stats/uptime.js +2 -2
  214. package/.next/standalone/.next/server/pages/api/stats/uptime.js.nft.json +1 -1
  215. package/.next/standalone/.next/server/pages/api/status/hook.js +5 -5
  216. package/.next/standalone/.next/server/pages/api/status/hook.js.nft.json +1 -1
  217. package/.next/standalone/.next/server/pages/api/status/statusline.js +1 -1
  218. package/.next/standalone/.next/server/pages/api/status/statusline.js.nft.json +1 -1
  219. package/.next/standalone/.next/server/pages/api/system/tmux-sessions.js +1 -1
  220. package/.next/standalone/.next/server/pages/api/system/tmux-sessions.js.nft.json +1 -1
  221. package/.next/standalone/.next/server/pages/api/timeline/sessions.js +1 -2
  222. package/.next/standalone/.next/server/pages/api/timeline/sessions.js.nft.json +1 -1
  223. package/.next/standalone/.next/server/pages/api/tmux/capture.js +1 -1
  224. package/.next/standalone/.next/server/pages/api/tmux/capture.js.nft.json +1 -1
  225. package/.next/standalone/.next/server/pages/api/tmux/info.js +1 -1
  226. package/.next/standalone/.next/server/pages/api/tmux/info.js.nft.json +1 -1
  227. package/.next/standalone/.next/server/pages/api/tmux/permission-options.js +1 -1
  228. package/.next/standalone/.next/server/pages/api/tmux/permission-options.js.nft.json +1 -1
  229. package/.next/standalone/.next/server/pages/api/tmux/plan-options.js +1 -1
  230. package/.next/standalone/.next/server/pages/api/tmux/plan-options.js.nft.json +1 -1
  231. package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js +6 -6
  232. package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js.nft.json +1 -1
  233. package/.next/standalone/.next/server/pages/api/tmux/reset.js +5 -5
  234. package/.next/standalone/.next/server/pages/api/tmux/reset.js.nft.json +1 -1
  235. package/.next/standalone/.next/server/pages/api/tmux/send-input.js +1 -1
  236. package/.next/standalone/.next/server/pages/api/tmux/send-input.js.nft.json +1 -1
  237. package/.next/standalone/.next/server/pages/api/upload-image/pages-manifest.json +3 -0
  238. package/.next/standalone/.next/server/pages/api/upload-image.js +5 -0
  239. package/.next/standalone/.next/server/pages/api/upload-image.js.map +5 -0
  240. package/.next/standalone/.next/server/pages/api/upload-image.js.nft.json +1 -0
  241. package/.next/standalone/.next/server/pages/api/uploads/cleanup/pages-manifest.json +3 -0
  242. package/.next/standalone/.next/server/pages/api/uploads/cleanup.js +5 -0
  243. package/.next/standalone/.next/server/pages/api/uploads/cleanup.js.map +5 -0
  244. package/.next/standalone/.next/server/pages/api/uploads/cleanup.js.nft.json +1 -0
  245. package/.next/standalone/.next/server/pages/api/workspace/[workspaceId].js +3 -3
  246. package/.next/standalone/.next/server/pages/api/workspace/[workspaceId].js.nft.json +1 -1
  247. package/.next/standalone/.next/server/pages/api/workspace/active.js +3 -3
  248. package/.next/standalone/.next/server/pages/api/workspace/active.js.nft.json +1 -1
  249. package/.next/standalone/.next/server/pages/api/workspace/reorder.js +3 -3
  250. package/.next/standalone/.next/server/pages/api/workspace/reorder.js.nft.json +1 -1
  251. package/.next/standalone/.next/server/pages/api/workspace/validate.js +3 -3
  252. package/.next/standalone/.next/server/pages/api/workspace/validate.js.nft.json +1 -1
  253. package/.next/standalone/.next/server/pages/api/workspace.js +4 -4
  254. package/.next/standalone/.next/server/pages/api/workspace.js.nft.json +1 -1
  255. package/.next/standalone/.next/server/pages/de/404.html +1 -1
  256. package/.next/standalone/.next/server/pages/de/500.html +1 -1
  257. package/.next/standalone/.next/server/pages/en/404.html +1 -1
  258. package/.next/standalone/.next/server/pages/en/500.html +1 -1
  259. package/.next/standalone/.next/server/pages/es/404.html +1 -1
  260. package/.next/standalone/.next/server/pages/es/500.html +1 -1
  261. package/.next/standalone/.next/server/pages/fr/404.html +1 -1
  262. package/.next/standalone/.next/server/pages/fr/500.html +1 -1
  263. package/.next/standalone/.next/server/pages/index/build-manifest.json +18 -16
  264. package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
  265. package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +22 -16
  266. package/.next/standalone/.next/server/pages/index.js +22 -17
  267. package/.next/standalone/.next/server/pages/index.js.nft.json +1 -1
  268. package/.next/standalone/.next/server/pages/ja/404.html +1 -1
  269. package/.next/standalone/.next/server/pages/ja/500.html +1 -1
  270. package/.next/standalone/.next/server/pages/ko/404.html +1 -1
  271. package/.next/standalone/.next/server/pages/ko/500.html +1 -1
  272. package/.next/standalone/.next/server/pages/login/build-manifest.json +10 -8
  273. package/.next/standalone/.next/server/pages/login/client-build-manifest.json +1 -1
  274. package/.next/standalone/.next/server/pages/login.js +15 -12
  275. package/.next/standalone/.next/server/pages/login.js.nft.json +1 -1
  276. package/.next/standalone/.next/server/pages/pt-BR/404.html +1 -1
  277. package/.next/standalone/.next/server/pages/pt-BR/500.html +1 -1
  278. package/.next/standalone/.next/server/pages/reports/build-manifest.json +19 -17
  279. package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
  280. package/.next/standalone/.next/server/pages/reports/react-loadable-manifest.json +10 -4
  281. package/.next/standalone/.next/server/pages/reports.js +24 -19
  282. package/.next/standalone/.next/server/pages/reports.js.nft.json +1 -1
  283. package/.next/standalone/.next/server/pages/reset.js +10 -8
  284. package/.next/standalone/.next/server/pages/reset.js.nft.json +1 -1
  285. package/.next/standalone/.next/server/pages/ru/404.html +1 -1
  286. package/.next/standalone/.next/server/pages/ru/500.html +1 -1
  287. package/.next/standalone/.next/server/pages/stats/build-manifest.json +19 -17
  288. package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
  289. package/.next/standalone/.next/server/pages/stats/react-loadable-manifest.json +22 -16
  290. package/.next/standalone/.next/server/pages/stats.js +21 -16
  291. package/.next/standalone/.next/server/pages/stats.js.nft.json +1 -1
  292. package/.next/standalone/.next/server/pages/tools-required/build-manifest.json +6 -5
  293. package/.next/standalone/.next/server/pages/tools-required/client-build-manifest.json +1 -1
  294. package/.next/standalone/.next/server/pages/tools-required.js +11 -9
  295. package/.next/standalone/.next/server/pages/tools-required.js.nft.json +1 -1
  296. package/.next/standalone/.next/server/pages/tr/404.html +1 -1
  297. package/.next/standalone/.next/server/pages/tr/500.html +1 -1
  298. package/.next/standalone/.next/server/pages/webview/build-manifest.json +18 -16
  299. package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
  300. package/.next/standalone/.next/server/pages/webview/react-loadable-manifest.json +10 -4
  301. package/.next/standalone/.next/server/pages/webview.js +23 -18
  302. package/.next/standalone/.next/server/pages/webview.js.nft.json +1 -1
  303. package/.next/standalone/.next/server/pages/zh-CN/404.html +1 -1
  304. package/.next/standalone/.next/server/pages/zh-CN/500.html +1 -1
  305. package/.next/standalone/.next/server/pages/zh-TW/404.html +1 -1
  306. package/.next/standalone/.next/server/pages/zh-TW/500.html +1 -1
  307. package/.next/standalone/.next/server/pages-manifest.json +3 -0
  308. package/.next/standalone/.next/static/{OBuQPM-YIw3qyEE3jhL3e → alzE4lzjvmajgX38HbmSM}/_buildManifest.js +9 -6
  309. package/.next/standalone/.next/static/chunks/0.me5n9dvrgga.js +1 -0
  310. package/.next/standalone/.next/static/chunks/0.znxwgo-re2m.js +1 -0
  311. package/.next/standalone/.next/static/chunks/00po874-gyx-o.js +1 -0
  312. package/.next/standalone/.next/static/chunks/01ywqysr6im5~.js +5 -0
  313. package/.next/standalone/.next/static/chunks/02sddtrvf-s.a.js +1 -0
  314. package/.next/standalone/.next/static/chunks/{16r01~tnxag_s.js → 0312riii_sl_1.js} +1 -1
  315. package/.next/standalone/.next/static/chunks/0331gs5dsjhca.js +1 -0
  316. package/.next/standalone/.next/static/chunks/033y.3ip0s_.f.js +1 -0
  317. package/.next/standalone/.next/static/chunks/03lm_kpi.uwr8.js +1 -0
  318. package/.next/standalone/.next/static/chunks/04_s.sj1oagqr.js +9 -0
  319. package/.next/standalone/.next/static/chunks/06l0fwm1g0pcv.js +1 -0
  320. package/.next/standalone/.next/static/chunks/06~0v3h-9qr-b.js +1 -0
  321. package/.next/standalone/.next/static/chunks/{0bw-pbfc7gjj-.js → 07rq~qv9ldwo~.js} +1 -1
  322. package/.next/standalone/.next/static/chunks/08f708~_7uy_i.js +1 -0
  323. package/.next/standalone/.next/static/chunks/08ukqrup7vvqb.js +1 -0
  324. package/.next/standalone/.next/static/chunks/090~7qs-9.j-_.js +1 -0
  325. package/.next/standalone/.next/static/chunks/09ntfl7b8vh1y.js +1 -0
  326. package/.next/standalone/.next/static/chunks/09pnudzhjr5dd.js +1 -0
  327. package/.next/standalone/.next/static/chunks/{0-.bjg02rlusb.js → 0_67ozmvnvz16.js} +1 -1
  328. package/.next/standalone/.next/static/chunks/{0k_nltnm_hxkh.js → 0_7qn_xpf-6l~.js} +6 -5
  329. package/.next/standalone/.next/static/chunks/0_e._d67udkpn.js +1 -0
  330. package/.next/standalone/.next/static/chunks/0_jwsge8j.0r_.js +1 -0
  331. package/.next/standalone/.next/static/chunks/0_nr91n2-npr6.js +1 -0
  332. package/.next/standalone/.next/static/chunks/0af.3khnmptnl.js +1 -0
  333. package/.next/standalone/.next/static/chunks/0afll97o4hu39.js +1 -0
  334. package/.next/standalone/.next/static/chunks/0aloyzq~9vtx2.js +1 -0
  335. package/.next/standalone/.next/static/chunks/0b.80wy8lilvw.js +1 -0
  336. package/.next/standalone/.next/static/chunks/0celh22a.~-u6.js +1 -0
  337. package/.next/standalone/.next/static/chunks/0csdpkqhylnfo.js +12 -0
  338. package/.next/standalone/.next/static/chunks/0cvx059r5hgj1.js +1 -0
  339. package/.next/standalone/.next/static/chunks/0d4vi6-ju6lha.js +1 -0
  340. package/.next/standalone/.next/static/chunks/0da0otp~vxk80.js +1 -0
  341. package/.next/standalone/.next/static/chunks/0daflfjkvkh-d.js +1 -0
  342. package/.next/standalone/.next/static/chunks/0diujbo1qkcle.css +1 -0
  343. package/.next/standalone/.next/static/chunks/0dj6bvhgmy0ix.js +1 -0
  344. package/.next/standalone/.next/static/chunks/0dp178b-0_ltl.js +1 -0
  345. package/.next/standalone/.next/static/chunks/{0cw4g.u_994_o.js → 0e_dripuuq.ua.js} +1 -1
  346. package/.next/standalone/.next/static/chunks/0efkrks2gm27v.js +1 -0
  347. package/.next/standalone/.next/static/chunks/0ejb3270~-0rq.js +23 -0
  348. package/.next/standalone/.next/static/chunks/0ep6reedai0y6.js +1 -0
  349. package/.next/standalone/.next/static/chunks/0f_z4khxs7yjc.js +23 -0
  350. package/.next/standalone/.next/static/chunks/0g4bo9.cx7l5~.js +5 -0
  351. package/.next/standalone/.next/static/chunks/0g75uxlckkscf.js +1 -0
  352. package/.next/standalone/.next/static/chunks/0gn-f6_m696k0.js +1 -0
  353. package/.next/standalone/.next/static/chunks/0h7n~i8gk~-a2.js +1 -0
  354. package/.next/standalone/.next/static/chunks/0h_vfy~qxk1_6.js +1 -0
  355. package/.next/standalone/.next/static/chunks/0i2xpsma-u7z1.js +1 -0
  356. package/.next/standalone/.next/static/chunks/0j-sp91q54-i~.js +5 -0
  357. package/.next/standalone/.next/static/chunks/0j.bb896cs98k.js +1 -0
  358. package/.next/standalone/.next/static/chunks/0jj7ska-q4zmb.js +1 -0
  359. package/.next/standalone/.next/static/chunks/0kebzqtn4norb.js +1 -0
  360. package/.next/standalone/.next/static/chunks/0keuo8t4.n_2p.js +23 -0
  361. package/.next/standalone/.next/static/chunks/0kxpt2u94mb~7.js +1 -0
  362. package/.next/standalone/.next/static/chunks/0mculjdr1zqc2.js +1 -0
  363. package/.next/standalone/.next/static/chunks/0ng68zj-fjm.w.js +1 -0
  364. package/.next/standalone/.next/static/chunks/0nsq-sayv38ks.js +1 -0
  365. package/.next/standalone/.next/static/chunks/0oj36.r5qgu_7.js +1 -0
  366. package/.next/standalone/.next/static/chunks/{12p86cqbuh4nj.js → 0pxbg4s8a4y54.js} +14 -14
  367. package/.next/standalone/.next/static/chunks/0qg_-6sttk4px.js +1 -0
  368. package/.next/standalone/.next/static/chunks/0ro78lxc~ndn_.js +1 -0
  369. package/.next/standalone/.next/static/chunks/0rr7vbxqscvhw.js +1 -0
  370. package/.next/standalone/.next/static/chunks/0s8imclb5deef.js +1 -0
  371. package/.next/standalone/.next/static/chunks/0sj1hijbxwqzi.js +1 -0
  372. package/.next/standalone/.next/static/chunks/0suuptk6vxdav.js +1 -0
  373. package/.next/standalone/.next/static/chunks/0tn20mwenf_vn.js +5 -0
  374. package/.next/standalone/.next/static/chunks/0turlr93lvkg8.js +1 -0
  375. package/.next/standalone/.next/static/chunks/0u.snf3d~5nvq.js +1 -0
  376. package/.next/standalone/.next/static/chunks/0v.l~.~v98c2c.js +1 -0
  377. package/.next/standalone/.next/static/chunks/0vrlsk_eqnj7q.js +1 -0
  378. package/.next/standalone/.next/static/chunks/0vw93vbkgsb1a.js +1 -0
  379. package/.next/standalone/.next/static/chunks/0wu~4k-l8otuy.js +1 -0
  380. package/.next/standalone/.next/static/chunks/0x4khblf0c7-p.js +1 -0
  381. package/.next/standalone/.next/static/chunks/{13fs6gs1qz2s5.js → 0x7cvsf..ezd..js} +1 -1
  382. package/.next/standalone/.next/static/chunks/0xg4b8o3r2_x_.js +1 -0
  383. package/.next/standalone/.next/static/chunks/0yb~gw6ukzdmo.js +1 -0
  384. package/.next/standalone/.next/static/chunks/0yg3hj1g~k1ip.js +1 -0
  385. package/.next/standalone/.next/static/chunks/0zzlz_qu90xvc.js +1 -0
  386. package/.next/standalone/.next/static/chunks/0~c6h8j7ut2ca.js +1 -0
  387. package/.next/standalone/.next/static/chunks/{0y1iobvr7xv~m.js → 105.cpxealiud.js} +1 -1
  388. package/.next/standalone/.next/static/chunks/10_.6nqmex9_b.js +1 -0
  389. package/.next/standalone/.next/static/chunks/10lxwa2o0tc5k.js +24 -0
  390. package/.next/standalone/.next/static/chunks/11o~gvctqri3d.js +1 -0
  391. package/.next/standalone/.next/static/chunks/{01ko1azbrv5kj.js → 11tnyk0iystp1.js} +14 -14
  392. package/.next/standalone/.next/static/chunks/11~2xi5w6y1nk.js +1 -0
  393. package/.next/standalone/.next/static/chunks/1235zq5em7nh2.js +16 -0
  394. package/.next/standalone/.next/static/chunks/{0ay.h74rl2t2c.js → 135rnnu.-sh80.js} +1 -1
  395. package/.next/standalone/.next/static/chunks/14-_f1cy_w-6r.js +1 -0
  396. package/.next/standalone/.next/static/chunks/14xlpbx6dj_4i.js +1 -0
  397. package/.next/standalone/.next/static/chunks/15m4y6otktj8z.js +1 -0
  398. package/.next/standalone/.next/static/chunks/16sj-6qd_avio.js +1 -0
  399. package/.next/standalone/.next/static/chunks/179c688fnh5pq.js +1 -0
  400. package/.next/standalone/.next/static/chunks/17ebdp-_o5o30.js +1 -0
  401. package/.next/standalone/.next/static/chunks/17fzeqm4m_x67.js +1 -0
  402. package/.next/standalone/.next/static/chunks/17t9npt546df3.js +5 -0
  403. package/.next/standalone/.next/static/chunks/17zyurj6s6ttv.js +1 -0
  404. package/.next/standalone/.next/static/chunks/{turbopack-0cczrwv.x0k9m.js → turbopack-03ko~~o8060kk.js} +1 -1
  405. package/.next/standalone/.next/static/chunks/turbopack-0au9jjcv_8-gl.js +1 -0
  406. package/.next/standalone/.next/static/chunks/turbopack-0j8f95~sdgk0f.js +1 -0
  407. package/.next/standalone/.next/static/chunks/turbopack-0k.5aa0_xv2hq.js +1 -0
  408. package/.next/standalone/.next/static/chunks/turbopack-10i7-8dwtjopc.js +1 -0
  409. package/.next/standalone/.next/static/chunks/turbopack-10s9u~-t8fle..js +1 -0
  410. package/.next/standalone/.next/static/chunks/turbopack-17jfs~k3adxwc.js +1 -0
  411. package/.next/standalone/messages/de/settings.json +31 -3
  412. package/.next/standalone/messages/de/shortcuts.json +26 -0
  413. package/.next/standalone/messages/de/terminal.json +7 -2
  414. package/.next/standalone/messages/en/settings.json +31 -3
  415. package/.next/standalone/messages/en/shortcuts.json +26 -0
  416. package/.next/standalone/messages/en/terminal.json +7 -2
  417. package/.next/standalone/messages/es/settings.json +31 -3
  418. package/.next/standalone/messages/es/shortcuts.json +26 -0
  419. package/.next/standalone/messages/es/terminal.json +7 -2
  420. package/.next/standalone/messages/fr/settings.json +31 -3
  421. package/.next/standalone/messages/fr/shortcuts.json +26 -0
  422. package/.next/standalone/messages/fr/terminal.json +7 -2
  423. package/.next/standalone/messages/ja/settings.json +31 -3
  424. package/.next/standalone/messages/ja/shortcuts.json +26 -0
  425. package/.next/standalone/messages/ja/terminal.json +7 -2
  426. package/.next/standalone/messages/ko/settings.json +31 -3
  427. package/.next/standalone/messages/ko/shortcuts.json +26 -0
  428. package/.next/standalone/messages/ko/terminal.json +7 -2
  429. package/.next/standalone/messages/pt-BR/settings.json +31 -3
  430. package/.next/standalone/messages/pt-BR/shortcuts.json +26 -0
  431. package/.next/standalone/messages/pt-BR/terminal.json +7 -2
  432. package/.next/standalone/messages/ru/settings.json +31 -3
  433. package/.next/standalone/messages/ru/shortcuts.json +26 -0
  434. package/.next/standalone/messages/ru/terminal.json +7 -2
  435. package/.next/standalone/messages/tr/settings.json +31 -3
  436. package/.next/standalone/messages/tr/shortcuts.json +26 -0
  437. package/.next/standalone/messages/tr/terminal.json +7 -2
  438. package/.next/standalone/messages/zh-CN/settings.json +31 -3
  439. package/.next/standalone/messages/zh-CN/shortcuts.json +26 -0
  440. package/.next/standalone/messages/zh-CN/terminal.json +7 -2
  441. package/.next/standalone/messages/zh-TW/settings.json +31 -3
  442. package/.next/standalone/messages/zh-TW/shortcuts.json +26 -0
  443. package/.next/standalone/messages/zh-TW/terminal.json +7 -2
  444. package/.next/standalone/package.json +3 -1
  445. package/.next/standalone/server.js +1 -1
  446. package/.next/standalone/src/config/tmux.conf +25 -0
  447. package/bin/purplemux.js +8 -0
  448. package/dist/server.js +260 -380
  449. package/package.json +3 -1
  450. package/src/config/tmux.conf +25 -0
  451. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-ptdqu._.js +0 -3
  452. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.lni9v._.js +0 -30
  453. package/.next/standalone/.next/server/chunks/[root-of-the-server]__004og4w._.js +0 -3
  454. package/.next/standalone/.next/server/chunks/[root-of-the-server]__01rrvm4._.js +0 -3
  455. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02s0k73._.js +0 -3
  456. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bhgbyi._.js +0 -3
  457. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bp6s15._.js +0 -3
  458. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kszkmt._.js +0 -3
  459. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0n.b1bb._.js +0 -5
  460. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0n26.bn._.js +0 -3
  461. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0n43wjx._.js +0 -3
  462. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o3y7mk._.js +0 -3
  463. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o4dvc-._.js +0 -42
  464. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x3g4-y._.js +0 -30
  465. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~hbxss._.js +0 -3
  466. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~s0sta._.js +0 -3
  467. package/.next/standalone/.next/server/chunks/[root-of-the-server]__11b3od9._.js +0 -3
  468. package/.next/standalone/.next/server/chunks/[root-of-the-server]__11mo3f-._.js +0 -3
  469. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0gflbky.js +0 -3
  470. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0qhmds_.js +0 -3
  471. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0.s1szp._.js +0 -3
  472. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__01908na._.js +0 -3
  473. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__105byrd._.js +0 -3
  474. package/.next/standalone/.next/server/chunks/ssr/_0--40df._.js +0 -3
  475. package/.next/standalone/.next/server/chunks/ssr/_02.wi7p._.js +0 -3
  476. package/.next/standalone/.next/server/chunks/ssr/_031i5qz._.js +0 -3
  477. package/.next/standalone/.next/server/chunks/ssr/_03axaof._.js +0 -7
  478. package/.next/standalone/.next/server/chunks/ssr/_05.rvpr._.js +0 -3
  479. package/.next/standalone/.next/server/chunks/ssr/_06.1-fg._.js +0 -3
  480. package/.next/standalone/.next/server/chunks/ssr/_07qqsce._.js +0 -3
  481. package/.next/standalone/.next/server/chunks/ssr/_0_a1yaa._.js +0 -3
  482. package/.next/standalone/.next/server/chunks/ssr/_0camkxl._.js +0 -3
  483. package/.next/standalone/.next/server/chunks/ssr/_0i209pm._.js +0 -3
  484. package/.next/standalone/.next/server/chunks/ssr/_0l7oq7a._.js +0 -3
  485. package/.next/standalone/.next/server/chunks/ssr/_0liqujj._.js +0 -3
  486. package/.next/standalone/.next/server/chunks/ssr/_0p_8.mt._.js +0 -3
  487. package/.next/standalone/.next/server/chunks/ssr/_0qlt~jv._.js +0 -3
  488. package/.next/standalone/.next/server/chunks/ssr/_0sfa_96._.js +0 -3
  489. package/.next/standalone/.next/server/chunks/ssr/_0sl6ozx._.js +0 -3
  490. package/.next/standalone/.next/server/chunks/ssr/_0u0bdru._.js +0 -3
  491. package/.next/standalone/.next/server/chunks/ssr/_0x2-u_i._.js +0 -7
  492. package/.next/standalone/.next/server/chunks/ssr/_11ohur0._.js +0 -3
  493. package/.next/standalone/.next/server/chunks/ssr/messages_050l8pl._.js +0 -3
  494. package/.next/standalone/.next/server/chunks/ssr/messages_0bp57z3._.js +0 -3
  495. package/.next/standalone/.next/server/chunks/ssr/src_components_features_terminal_settings-dialog_tsx_10r3wh~._.js +0 -3
  496. package/.next/standalone/.next/server/chunks/ssr/src_components_features_terminal_terminal-page_tsx_0o~2bsa._.js +0 -3
  497. package/.next/standalone/.next/static/chunks/0-sxrfxgcu1ce.js +0 -1
  498. package/.next/standalone/.next/static/chunks/0.wij9w6vcwhg.js +0 -1
  499. package/.next/standalone/.next/static/chunks/00x-ygjkfbgnz.js +0 -1
  500. package/.next/standalone/.next/static/chunks/017dlbj6das8g.js +0 -1
  501. package/.next/standalone/.next/static/chunks/0401hdgf~vj4v.js +0 -1
  502. package/.next/standalone/.next/static/chunks/04_yg9ypn8qiz.js +0 -1
  503. package/.next/standalone/.next/static/chunks/059hm.5_8_lbf.js +0 -1
  504. package/.next/standalone/.next/static/chunks/06qo9c6zmfuby.js +0 -1
  505. package/.next/standalone/.next/static/chunks/06wc2umsaus4g.js +0 -1
  506. package/.next/standalone/.next/static/chunks/07_03q7-x8r9_.js +0 -1
  507. package/.next/standalone/.next/static/chunks/089ckl4bgs~6a.js +0 -1
  508. package/.next/standalone/.next/static/chunks/08gm7yw4lvhcp.js +0 -5
  509. package/.next/standalone/.next/static/chunks/09j2n1dl5w7kw.js +0 -1
  510. package/.next/standalone/.next/static/chunks/0_pxg-qxp1ay6.js +0 -1
  511. package/.next/standalone/.next/static/chunks/0abvchxh9j._1.js +0 -1
  512. package/.next/standalone/.next/static/chunks/0acaolvighqxm.js +0 -1
  513. package/.next/standalone/.next/static/chunks/0b64-twwftp.b.js +0 -1
  514. package/.next/standalone/.next/static/chunks/0bhxzcuc0ztva.js +0 -1
  515. package/.next/standalone/.next/static/chunks/0c3gfuc02qr00.js +0 -1
  516. package/.next/standalone/.next/static/chunks/0c9gde-yuo26q.js +0 -14
  517. package/.next/standalone/.next/static/chunks/0d7et_73ufx.t.js +0 -1
  518. package/.next/standalone/.next/static/chunks/0ds79k_04k7_v.js +0 -1
  519. package/.next/standalone/.next/static/chunks/0eeq4-fcb9~bd.js +0 -1
  520. package/.next/standalone/.next/static/chunks/0f4xf8w_wwlb5.js +0 -5
  521. package/.next/standalone/.next/static/chunks/0fungak7h7t_u.js +0 -1
  522. package/.next/standalone/.next/static/chunks/0fx~fwx.8d70..js +0 -12
  523. package/.next/standalone/.next/static/chunks/0g1jj1418404y.js +0 -21
  524. package/.next/standalone/.next/static/chunks/0gx~s_r.d1ncl.js +0 -1
  525. package/.next/standalone/.next/static/chunks/0hrc-naqx2l7..js +0 -9
  526. package/.next/standalone/.next/static/chunks/0ipghjeq.1yru.js +0 -1
  527. package/.next/standalone/.next/static/chunks/0jkyto637lhqd.js +0 -1
  528. package/.next/standalone/.next/static/chunks/0jpvbtekyubts.js +0 -1
  529. package/.next/standalone/.next/static/chunks/0kf8xkvr3218u.js +0 -1
  530. package/.next/standalone/.next/static/chunks/0ki_toswb6bjm.js +0 -1
  531. package/.next/standalone/.next/static/chunks/0kv4vcveacgn2.js +0 -1
  532. package/.next/standalone/.next/static/chunks/0ld-oc3qt3ev4.js +0 -5
  533. package/.next/standalone/.next/static/chunks/0lmfp9-i.ti-c.js +0 -1
  534. package/.next/standalone/.next/static/chunks/0m48g63ds532~.js +0 -1
  535. package/.next/standalone/.next/static/chunks/0n8c-7mx87.qs.js +0 -5
  536. package/.next/standalone/.next/static/chunks/0o7vp7rng47dj.js +0 -1
  537. package/.next/standalone/.next/static/chunks/0oa6n2st2h3y4.js +0 -21
  538. package/.next/standalone/.next/static/chunks/0pcl8j6_bcbiz.js +0 -1
  539. package/.next/standalone/.next/static/chunks/0q_k2q4jnitzb.js +0 -1
  540. package/.next/standalone/.next/static/chunks/0sby0kfs4r39m.js +0 -1
  541. package/.next/standalone/.next/static/chunks/0so7joqaux87c.js +0 -1
  542. package/.next/standalone/.next/static/chunks/0spethd2aw0eb.js +0 -1
  543. package/.next/standalone/.next/static/chunks/0ss3x6ho-tonn.js +0 -1
  544. package/.next/standalone/.next/static/chunks/0t17ien5d5lgr.js +0 -1
  545. package/.next/standalone/.next/static/chunks/0tn0snc61desh.js +0 -1
  546. package/.next/standalone/.next/static/chunks/0uv39b2s2.yzt.js +0 -1
  547. package/.next/standalone/.next/static/chunks/0uxhf0if8bv~8.js +0 -1
  548. package/.next/standalone/.next/static/chunks/0vqgpok3.-wjn.js +0 -1
  549. package/.next/standalone/.next/static/chunks/0w6vr6.gl_5lb.js +0 -1
  550. package/.next/standalone/.next/static/chunks/0x-x4o1fkpw-g.js +0 -5
  551. package/.next/standalone/.next/static/chunks/0xlk42gw40hbr.js +0 -1
  552. package/.next/standalone/.next/static/chunks/0zupfedd~y64z.js +0 -1
  553. package/.next/standalone/.next/static/chunks/11267j.1xw4gl.js +0 -1
  554. package/.next/standalone/.next/static/chunks/119sqy0vy5gzx.js +0 -22
  555. package/.next/standalone/.next/static/chunks/12.uhnc724hct.js +0 -1
  556. package/.next/standalone/.next/static/chunks/12b241h6qp3ve.js +0 -1
  557. package/.next/standalone/.next/static/chunks/12jwdr.-.hy1i.js +0 -1
  558. package/.next/standalone/.next/static/chunks/13xp_-k99aus8.js +0 -1
  559. package/.next/standalone/.next/static/chunks/154d~13n-o1ax.js +0 -21
  560. package/.next/standalone/.next/static/chunks/159m0lekrl6ka.js +0 -1
  561. package/.next/standalone/.next/static/chunks/15rw76n0-15~j.js +0 -1
  562. package/.next/standalone/.next/static/chunks/15t0xpa.o8iz_.js +0 -1
  563. package/.next/standalone/.next/static/chunks/16l~ncr0z2zwu.js +0 -1
  564. package/.next/standalone/.next/static/chunks/16p_jlonhj_cn.js +0 -1
  565. package/.next/standalone/.next/static/chunks/17bn35muvbncj.css +0 -1
  566. package/.next/standalone/.next/static/chunks/18c3gq5yg2j0j.js +0 -1
  567. package/.next/standalone/.next/static/chunks/turbopack-0-~0otu~wqqdf.js +0 -1
  568. package/.next/standalone/.next/static/chunks/turbopack-0fxquogjhy86o.js +0 -1
  569. package/.next/standalone/.next/static/chunks/turbopack-0lzon3xbib3ww.js +0 -1
  570. package/.next/standalone/.next/static/chunks/turbopack-0ynenqgdbu55u.js +0 -1
  571. package/.next/standalone/.next/static/chunks/turbopack-11vxxrzwm.se_.js +0 -1
  572. package/.next/standalone/.next/static/chunks/turbopack-16fhr1wncw41u.js +0 -1
  573. /package/.next/standalone/.next/static/{OBuQPM-YIw3qyEE3jhL3e → alzE4lzjvmajgX38HbmSM}/_clientMiddlewareManifest.js +0 -0
  574. /package/.next/standalone/.next/static/{OBuQPM-YIw3qyEE3jhL3e → alzE4lzjvmajgX38HbmSM}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- OBuQPM-YIw3qyEE3jhL3e
1
+ alzE4lzjvmajgX38HbmSM
@@ -1,37 +1,39 @@
1
1
  {
2
2
  "pages": {
3
3
  "/": [
4
- "static/chunks/06qo9c6zmfuby.js",
5
- "static/chunks/0y1iobvr7xv~m.js",
6
- "static/chunks/06wc2umsaus4g.js",
7
- "static/chunks/0o7vp7rng47dj.js",
8
- "static/chunks/0abvchxh9j._1.js",
9
- "static/chunks/14_wa..vd6~2y.js",
10
- "static/chunks/0-sxrfxgcu1ce.js",
11
- "static/chunks/15aj3kd.p7zw6.js",
12
- "static/chunks/0q_k2q4jnitzb.js",
13
- "static/chunks/059hm.5_8_lbf.js",
4
+ "static/chunks/17zyurj6s6ttv.js",
5
+ "static/chunks/0ro78lxc~ndn_.js",
6
+ "static/chunks/105.cpxealiud.js",
7
+ "static/chunks/0.znxwgo-re2m.js",
8
+ "static/chunks/14-_f1cy_w-6r.js",
14
9
  "static/chunks/0ml5~2ty-rbv_.js",
15
- "static/chunks/13xp_-k99aus8.js",
16
- "static/chunks/0hrc-naqx2l7..js",
10
+ "static/chunks/135rnnu.-sh80.js",
11
+ "static/chunks/15aj3kd.p7zw6.js",
12
+ "static/chunks/0vw93vbkgsb1a.js",
13
+ "static/chunks/07rq~qv9ldwo~.js",
14
+ "static/chunks/179c688fnh5pq.js",
15
+ "static/chunks/04_s.sj1oagqr.js",
16
+ "static/chunks/0i2xpsma-u7z1.js",
17
+ "static/chunks/0yi.kp2rt4-nc.js",
17
18
  "static/chunks/00yfl7agnve...js",
18
- "static/chunks/0c3gfuc02qr00.js",
19
+ "static/chunks/0efkrks2gm27v.js",
20
+ "static/chunks/14_wa..vd6~2y.js",
19
21
  "static/chunks/0wlz6--vu7adu.js",
20
- "static/chunks/0bw-pbfc7gjj-.js",
21
- "static/chunks/0yi.kp2rt4-nc.js",
22
- "static/chunks/turbopack-0-~0otu~wqqdf.js"
22
+ "static/chunks/03lm_kpi.uwr8.js",
23
+ "static/chunks/0_nr91n2-npr6.js",
24
+ "static/chunks/turbopack-17jfs~k3adxwc.js"
23
25
  ],
24
26
  "/_app": [
25
- "static/chunks/0uxhf0if8bv~8.js",
26
- "static/chunks/159m0lekrl6ka.js",
27
- "static/chunks/00x-ygjkfbgnz.js",
28
- "static/chunks/00yfl7agnve...js",
27
+ "static/chunks/0turlr93lvkg8.js",
28
+ "static/chunks/0j.bb896cs98k.js",
29
+ "static/chunks/135rnnu.-sh80.js",
29
30
  "static/chunks/0yi.kp2rt4-nc.js",
30
- "static/chunks/0ds79k_04k7_v.js",
31
31
  "static/chunks/14_wa..vd6~2y.js",
32
- "static/chunks/17bn35muvbncj.css",
32
+ "static/chunks/00yfl7agnve...js",
33
+ "static/chunks/0xg4b8o3r2_x_.js",
34
+ "static/chunks/0diujbo1qkcle.css",
33
35
  "static/chunks/0z3gpm0o.mwwy.css",
34
- "static/chunks/turbopack-0cczrwv.x0k9m.js"
36
+ "static/chunks/turbopack-03ko~~o8060kk.js"
35
37
  ],
36
38
  "/_error": [
37
39
  "static/chunks/0~o730huopa91.js",
@@ -40,40 +42,44 @@
40
42
  "static/chunks/turbopack-0vqdj~g~ggw3x.js"
41
43
  ],
42
44
  "/login": [
45
+ "static/chunks/0d4vi6-ju6lha.js",
46
+ "static/chunks/135rnnu.-sh80.js",
47
+ "static/chunks/08ukqrup7vvqb.js",
48
+ "static/chunks/0daflfjkvkh-d.js",
43
49
  "static/chunks/15aj3kd.p7zw6.js",
44
- "static/chunks/14_wa..vd6~2y.js",
45
- "static/chunks/0spethd2aw0eb.js",
46
- "static/chunks/0pb15t~lqcp4y.js",
47
- "static/chunks/0xlk42gw40hbr.js",
48
- "static/chunks/12p86cqbuh4nj.js",
49
- "static/chunks/0zupfedd~y64z.js",
50
+ "static/chunks/0jj7ska-q4zmb.js",
50
51
  "static/chunks/00yfl7agnve...js",
51
52
  "static/chunks/0yi.kp2rt4-nc.js",
52
53
  "static/chunks/0xas4ca5n6mzi.js",
53
- "static/chunks/0w6vr6.gl_5lb.js",
54
- "static/chunks/turbopack-0fxquogjhy86o.js"
54
+ "static/chunks/14xlpbx6dj_4i.js",
55
+ "static/chunks/14_wa..vd6~2y.js",
56
+ "static/chunks/0pxbg4s8a4y54.js",
57
+ "static/chunks/0pb15t~lqcp4y.js",
58
+ "static/chunks/turbopack-0au9jjcv_8-gl.js"
55
59
  ],
56
60
  "/reports": [
57
- "static/chunks/0-.bjg02rlusb.js",
58
- "static/chunks/0b64-twwftp.b.js",
59
- "static/chunks/0ay.h74rl2t2c.js",
60
- "static/chunks/0o7vp7rng47dj.js",
61
- "static/chunks/0c3gfuc02qr00.js",
62
- "static/chunks/0abvchxh9j._1.js",
63
- "static/chunks/0bw-pbfc7gjj-.js",
64
- "static/chunks/14_wa..vd6~2y.js",
65
- "static/chunks/0kv4vcveacgn2.js",
66
- "static/chunks/15rw76n0-15~j.js",
67
- "static/chunks/00yfl7agnve...js",
61
+ "static/chunks/0_67ozmvnvz16.js",
62
+ "static/chunks/0ro78lxc~ndn_.js",
63
+ "static/chunks/15aj3kd.p7zw6.js",
64
+ "static/chunks/14-_f1cy_w-6r.js",
65
+ "static/chunks/0kebzqtn4norb.js",
66
+ "static/chunks/179c688fnh5pq.js",
68
67
  "static/chunks/0wlz6--vu7adu.js",
69
- "static/chunks/0yi.kp2rt4-nc.js",
68
+ "static/chunks/135rnnu.-sh80.js",
69
+ "static/chunks/0.znxwgo-re2m.js",
70
+ "static/chunks/07rq~qv9ldwo~.js",
71
+ "static/chunks/0efkrks2gm27v.js",
70
72
  "static/chunks/031unywm42_xs.js",
71
- "static/chunks/0hrc-naqx2l7..js",
72
- "static/chunks/13xp_-k99aus8.js",
73
- "static/chunks/0-sxrfxgcu1ce.js",
73
+ "static/chunks/04_s.sj1oagqr.js",
74
74
  "static/chunks/0ml5~2ty-rbv_.js",
75
- "static/chunks/15aj3kd.p7zw6.js",
76
- "static/chunks/turbopack-0ynenqgdbu55u.js"
75
+ "static/chunks/0_nr91n2-npr6.js",
76
+ "static/chunks/033y.3ip0s_.f.js",
77
+ "static/chunks/14_wa..vd6~2y.js",
78
+ "static/chunks/00yfl7agnve...js",
79
+ "static/chunks/0vw93vbkgsb1a.js",
80
+ "static/chunks/0yi.kp2rt4-nc.js",
81
+ "static/chunks/0sj1hijbxwqzi.js",
82
+ "static/chunks/turbopack-10s9u~-t8fle..js"
77
83
  ],
78
84
  "/reset": [
79
85
  "static/chunks/0_sdw~kzk-at0.js",
@@ -84,65 +90,70 @@
84
90
  "static/chunks/turbopack-0tl7oxj3760qz.js"
85
91
  ],
86
92
  "/stats": [
87
- "static/chunks/0cw4g.u_994_o.js",
88
- "static/chunks/0gx~s_r.d1ncl.js",
89
- "static/chunks/0-sxrfxgcu1ce.js",
90
- "static/chunks/0ay.h74rl2t2c.js",
93
+ "static/chunks/0e_dripuuq.ua.js",
94
+ "static/chunks/0ro78lxc~ndn_.js",
95
+ "static/chunks/0x4khblf0c7-p.js",
96
+ "static/chunks/0.znxwgo-re2m.js",
97
+ "static/chunks/14-_f1cy_w-6r.js",
98
+ "static/chunks/07rq~qv9ldwo~.js",
99
+ "static/chunks/135rnnu.-sh80.js",
100
+ "static/chunks/14_wa..vd6~2y.js",
101
+ "static/chunks/0vw93vbkgsb1a.js",
102
+ "static/chunks/0wlz6--vu7adu.js",
103
+ "static/chunks/179c688fnh5pq.js",
104
+ "static/chunks/0_nr91n2-npr6.js",
105
+ "static/chunks/0ml5~2ty-rbv_.js",
106
+ "static/chunks/02sddtrvf-s.a.js",
91
107
  "static/chunks/15aj3kd.p7zw6.js",
92
- "static/chunks/00yfl7agnve...js",
93
- "static/chunks/0abvchxh9j._1.js",
94
- "static/chunks/0kv4vcveacgn2.js",
95
- "static/chunks/0o7vp7rng47dj.js",
96
- "static/chunks/0c3gfuc02qr00.js",
97
- "static/chunks/13xp_-k99aus8.js",
98
- "static/chunks/0hrc-naqx2l7..js",
99
108
  "static/chunks/0yi.kp2rt4-nc.js",
100
- "static/chunks/09j2n1dl5w7kw.js",
101
- "static/chunks/0ml5~2ty-rbv_.js",
102
- "static/chunks/0wlz6--vu7adu.js",
103
- "static/chunks/14_wa..vd6~2y.js",
104
- "static/chunks/0bw-pbfc7gjj-.js",
105
- "static/chunks/turbopack-16fhr1wncw41u.js"
109
+ "static/chunks/0efkrks2gm27v.js",
110
+ "static/chunks/04_s.sj1oagqr.js",
111
+ "static/chunks/0zzlz_qu90xvc.js",
112
+ "static/chunks/00yfl7agnve...js",
113
+ "static/chunks/turbopack-0j8f95~sdgk0f.js"
106
114
  ],
107
115
  "/tools-required": [
108
- "static/chunks/0kf8xkvr3218u.js",
116
+ "static/chunks/0dp178b-0_ltl.js",
109
117
  "static/chunks/15aj3kd.p7zw6.js",
110
- "static/chunks/0_pxg-qxp1ay6.js",
118
+ "static/chunks/00yfl7agnve...js",
111
119
  "static/chunks/14_wa..vd6~2y.js",
120
+ "static/chunks/0afll97o4hu39.js",
112
121
  "static/chunks/0yi.kp2rt4-nc.js",
113
- "static/chunks/12p86cqbuh4nj.js",
122
+ "static/chunks/0pxbg4s8a4y54.js",
114
123
  "static/chunks/11wdicoufd516.js",
115
- "static/chunks/00yfl7agnve...js",
116
- "static/chunks/turbopack-0lzon3xbib3ww.js"
124
+ "static/chunks/0af.3khnmptnl.js",
125
+ "static/chunks/turbopack-0k.5aa0_xv2hq.js"
117
126
  ],
118
127
  "/webview": [
119
- "static/chunks/12b241h6qp3ve.js",
120
- "static/chunks/0fungak7h7t_u.js",
121
- "static/chunks/0ay.h74rl2t2c.js",
122
- "static/chunks/0o7vp7rng47dj.js",
123
- "static/chunks/0c3gfuc02qr00.js",
124
- "static/chunks/059hm.5_8_lbf.js",
125
- "static/chunks/0-sxrfxgcu1ce.js",
128
+ "static/chunks/0h7n~i8gk~-a2.js",
129
+ "static/chunks/0ro78lxc~ndn_.js",
130
+ "static/chunks/135rnnu.-sh80.js",
131
+ "static/chunks/14-_f1cy_w-6r.js",
132
+ "static/chunks/0h_vfy~qxk1_6.js",
133
+ "static/chunks/07rq~qv9ldwo~.js",
126
134
  "static/chunks/14_wa..vd6~2y.js",
127
- "static/chunks/0kv4vcveacgn2.js",
128
- "static/chunks/0wlz6--vu7adu.js",
135
+ "static/chunks/0.znxwgo-re2m.js",
136
+ "static/chunks/0vw93vbkgsb1a.js",
137
+ "static/chunks/15aj3kd.p7zw6.js",
138
+ "static/chunks/0i2xpsma-u7z1.js",
129
139
  "static/chunks/00yfl7agnve...js",
130
- "static/chunks/0yi.kp2rt4-nc.js",
131
- "static/chunks/13xp_-k99aus8.js",
132
- "static/chunks/0hrc-naqx2l7..js",
133
- "static/chunks/0abvchxh9j._1.js",
140
+ "static/chunks/0wlz6--vu7adu.js",
141
+ "static/chunks/04_s.sj1oagqr.js",
134
142
  "static/chunks/0ml5~2ty-rbv_.js",
135
- "static/chunks/15aj3kd.p7zw6.js",
136
- "static/chunks/0bw-pbfc7gjj-.js",
137
- "static/chunks/turbopack-11vxxrzwm.se_.js"
143
+ "static/chunks/0_nr91n2-npr6.js",
144
+ "static/chunks/0efkrks2gm27v.js",
145
+ "static/chunks/0yi.kp2rt4-nc.js",
146
+ "static/chunks/0zzlz_qu90xvc.js",
147
+ "static/chunks/179c688fnh5pq.js",
148
+ "static/chunks/turbopack-10i7-8dwtjopc.js"
138
149
  ]
139
150
  },
140
151
  "devFiles": [],
141
152
  "polyfillFiles": [],
142
153
  "lowPriorityFiles": [
143
- "static/OBuQPM-YIw3qyEE3jhL3e/_buildManifest.js",
144
- "static/OBuQPM-YIw3qyEE3jhL3e/_ssgManifest.js",
145
- "static/OBuQPM-YIw3qyEE3jhL3e/_clientMiddlewareManifest.js"
154
+ "static/alzE4lzjvmajgX38HbmSM/_buildManifest.js",
155
+ "static/alzE4lzjvmajgX38HbmSM/_ssgManifest.js",
156
+ "static/alzE4lzjvmajgX38HbmSM/_clientMiddlewareManifest.js"
146
157
  ],
147
158
  "rootMainFiles": []
148
159
  }
@@ -3,9 +3,9 @@
3
3
  "routes": {},
4
4
  "dynamicRoutes": {},
5
5
  "preview": {
6
- "previewModeId": "f4a037663b54e0769678779dd5976ac3",
7
- "previewModeSigningKey": "eef350f043c91911a21753ba7fa77434dfc8bc548e780efe3adcc378f39f3b16",
8
- "previewModeEncryptionKey": "b0dc9979257bb6770d00bd7dad50e6bd40e25f8e418c3a6f5e052a9e95b2d370"
6
+ "previewModeId": "c5fbf7bf37e8b31c0223428b1ff8770f",
7
+ "previewModeSigningKey": "21c3f60a6d8907e7822210e926ee68640d371a56c9e9be60f02e223e28981ddc",
8
+ "previewModeEncryptionKey": "8f3119a62a0aa7491a4d9109bfe7e5a6287b588c564bc1c8745ec857dcf71fc9"
9
9
  },
10
10
  "notFoundRoutes": []
11
11
  }
@@ -2,7 +2,7 @@
2
2
  "version": 1,
3
3
  "config": {
4
4
  "env": {
5
- "NEXT_PUBLIC_COMMIT_HASH": "1676b09"
5
+ "NEXT_PUBLIC_COMMIT_HASH": "f7177bf"
6
6
  },
7
7
  "webpack": null,
8
8
  "typescript": {
@@ -240,6 +240,7 @@
240
240
  "turbopackInferModuleSideEffects": true,
241
241
  "turbopackPluginRuntimeStrategy": "childProcesses",
242
242
  "optimizePackageImports": [
243
+ "react-icons",
243
244
  "lucide-react",
244
245
  "date-fns",
245
246
  "lodash-es",
@@ -196,6 +196,12 @@
196
196
  "routeKeys": {},
197
197
  "namedRegex": "^/api/health(?:/)?$"
198
198
  },
199
+ {
200
+ "page": "/api/keybindings",
201
+ "regex": "^/api/keybindings(?:/)?$",
202
+ "routeKeys": {},
203
+ "namedRegex": "^/api/keybindings(?:/)?$"
204
+ },
199
205
  {
200
206
  "page": "/api/layout",
201
207
  "regex": "^/api/layout(?:/)?$",
@@ -418,6 +424,18 @@
418
424
  "routeKeys": {},
419
425
  "namedRegex": "^/api/tmux/send\\-input(?:/)?$"
420
426
  },
427
+ {
428
+ "page": "/api/upload-image",
429
+ "regex": "^/api/upload\\-image(?:/)?$",
430
+ "routeKeys": {},
431
+ "namedRegex": "^/api/upload\\-image(?:/)?$"
432
+ },
433
+ {
434
+ "page": "/api/uploads/cleanup",
435
+ "regex": "^/api/uploads/cleanup(?:/)?$",
436
+ "routeKeys": {},
437
+ "namedRegex": "^/api/uploads/cleanup(?:/)?$"
438
+ },
421
439
  {
422
440
  "page": "/api/workspace",
423
441
  "regex": "^/api/workspace(?:/)?$",
@@ -482,31 +500,31 @@
482
500
  "dataRoutes": [
483
501
  {
484
502
  "page": "/",
485
- "dataRouteRegex": "^/_next/data/OBuQPM\\-YIw3qyEE3jhL3e/index\\.json$"
503
+ "dataRouteRegex": "^/_next/data/alzE4lzjvmajgX38HbmSM/index\\.json$"
486
504
  },
487
505
  {
488
506
  "page": "/login",
489
- "dataRouteRegex": "^/_next/data/OBuQPM\\-YIw3qyEE3jhL3e/login\\.json$"
507
+ "dataRouteRegex": "^/_next/data/alzE4lzjvmajgX38HbmSM/login\\.json$"
490
508
  },
491
509
  {
492
510
  "page": "/reports",
493
- "dataRouteRegex": "^/_next/data/OBuQPM\\-YIw3qyEE3jhL3e/reports\\.json$"
511
+ "dataRouteRegex": "^/_next/data/alzE4lzjvmajgX38HbmSM/reports\\.json$"
494
512
  },
495
513
  {
496
514
  "page": "/reset",
497
- "dataRouteRegex": "^/_next/data/OBuQPM\\-YIw3qyEE3jhL3e/reset\\.json$"
515
+ "dataRouteRegex": "^/_next/data/alzE4lzjvmajgX38HbmSM/reset\\.json$"
498
516
  },
499
517
  {
500
518
  "page": "/stats",
501
- "dataRouteRegex": "^/_next/data/OBuQPM\\-YIw3qyEE3jhL3e/stats\\.json$"
519
+ "dataRouteRegex": "^/_next/data/alzE4lzjvmajgX38HbmSM/stats\\.json$"
502
520
  },
503
521
  {
504
522
  "page": "/tools-required",
505
- "dataRouteRegex": "^/_next/data/OBuQPM\\-YIw3qyEE3jhL3e/tools-required\\.json$"
523
+ "dataRouteRegex": "^/_next/data/alzE4lzjvmajgX38HbmSM/tools-required\\.json$"
506
524
  },
507
525
  {
508
526
  "page": "/webview",
509
- "dataRouteRegex": "^/_next/data/OBuQPM\\-YIw3qyEE3jhL3e/webview\\.json$"
527
+ "dataRouteRegex": "^/_next/data/alzE4lzjvmajgX38HbmSM/webview\\.json$"
510
528
  }
511
529
  ],
512
530
  "i18n": {
@@ -0,0 +1,3 @@
1
+ module.exports=[224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},597789,965898,e=>{"use strict";let t=process.env.__PMUX_PRISTINE_ENV,r=Object.freeze(t?JSON.parse(t):{...process.env});t||(process.env.__PMUX_PRISTINE_ENV=JSON.stringify(r)),e.s(["PRISTINE_ENV",0,r],965898);let i=new Set(["HOME","USER","LOGNAME","SHELL","PATH","TERM","COLORTERM","LANG","TMPDIR","SSH_AUTH_SOCK","SSH_CONNECTION","SSH_TTY","DISPLAY","WAYLAND_DISPLAY","XDG_RUNTIME_DIR","TZ"]),a=["LC_"],n=e=>i.has(e)||a.some(t=>e.startsWith(t)),l={TERM:"xterm-256color",COLORTERM:"truecolor"},s=()=>{let e={};for(let[t,i]of Object.entries(r))void 0!==i&&n(t)&&(e[t]=i);return{...e,...l}},o=e=>`'${e.replace(/'/g,"'\\''")}'`,u=()=>r.SHELL||"/bin/bash";e.s(["buildShellEnv",0,()=>s(),"buildShellLaunchCommand",0,()=>{let e=Object.entries(s()).map(([e,t])=>`${e}=${o(t)}`).join(" ");return`env -i TMUX="$TMUX" TMUX_PANE="$TMUX_PANE" ${e} ${o(u())} -l`},"defaultShell",0,u],597789)},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),i=e.i(446786);let a=r.default.join(i.default.homedir(),".purplemux","logs"),n=process.env.LOG_LEVEL||"info",l=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,i]=r.split("=").map(e=>e.trim());e&&i&&(t[e]=i)}return t})(process.env.LOG_LEVELS),s=["trace","debug","info","warn","error","fatal"],o=globalThis;if(!o.__ptRootLogger){let e=[n,...Object.values(l)].reduce((e,t)=>s.indexOf(t)<s.indexOf(e)?t:e,"fatal");o.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(a,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let u=o.__ptRootLogger;e.s(["createLogger",0,e=>{let t=u.child({module:e});return t.level=l[e]??n,t}])},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},504446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},755004,(e,t,r)=>{t.exports=e.x("tls",()=>require("tls"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},666126,e=>{"use strict";e.i(478319);var t=e.i(220951);(0,e.i(25146).createLogger)("sync");let r=globalThis;r.__ptSyncClients||(r.__ptSyncClients=new Set);let i=r.__ptSyncClients;e.s(["broadcastSync",0,e=>{let r=JSON.stringify(e);for(let e of i)e.readyState===t.WebSocket.OPEN&&e.bufferedAmount<1048576&&e.send(r)}])},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},713915,e=>{"use strict";var t=e.i(233405),r=e.i(924868),i=e.i(446786),a=e.i(814747),n=e.i(224361),l=e.i(597789),s=e.i(965898);let o=(0,n.promisify)(t.execFile),u=null,d=null,c=async()=>{let e=i.default.userInfo().shell||(0,l.defaultShell)();try{let{stdout:t}=await o(e,["-ilc",'echo -n "$PATH"'],{timeout:5e3,env:{...(0,l.buildShellEnv)(),SHELL:e,DISABLE_AUTO_UPDATE:"true",ZSH_TMUX_AUTOSTARTED:"true"}});return t.toString().trim()}catch{return s.PRISTINE_ENV.PATH||""}},p=async()=>u||(d||(d=c().then(e=>(u=e,d=null,e))),d),f=async(e,t,r)=>{try{let i=await p(),{stdout:a}=await o(e,t,{timeout:5e3,env:{...process.env,PATH:i}});return{installed:!0,version:r(a)}}catch{return{installed:!1,version:null}}},h=e=>e.trim().match(/(\d+\.\d+[\d.]*)/)?.[1]??null,g=[a.default.join(i.default.homedir(),".local","bin")],m=async()=>{for(let e of g)try{return await (0,r.access)(a.default.join(e,"claude")),e}catch{}return null},y=e=>e.installed&&null!==e.version&&parseFloat(e.version)>=2.9,S=async()=>{u=await c();let[e,t,n]=await Promise.all([f("tmux",["-V"],h),f("git",["--version"],h),f("claude",["--version"],h)]),l=(y(e)&&t.installed&&n.installed,n.installed?null:await m()),s=!1;if(n.installed||l)try{await (0,r.access)(a.default.join(i.default.homedir(),".claude")),s=!0}catch{}return{tmux:{...e,compatible:y(e)},git:t,claude:{...n,binaryPath:l,loggedIn:s}}},x=null,v=null,_=null,w=null,E=async()=>_&&Date.now()-_.checkedAt<1e3?_.result:w||(w=S().then(e=>(_={result:e,checkedAt:Date.now()},w=null,e)).catch(e=>{throw w=null,e})),T=async()=>{u=await c();let[e,t,r]=await Promise.all([f("tmux",["-V"],h),f("git",["--version"],h),f("claude",["--version"],h)]);return{tmux:{...e,compatible:y(e)},git:t,claude:r}},P=async()=>x&&Date.now()-x.checkedAt<3e4?x.result:v||(v=T().then(e=>(x={result:e,checkedAt:Date.now()},v=null,e)).catch(e=>{throw v=null,e}));e.s(["getCachedPreflightStatus",0,E,"getCachedRuntimePreflight",0,P,"getShellPath",0,p,"invalidateRuntimeCache",0,()=>{x=null,v=null}])},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),i=e.i(814747),a=e.i(446786);let n=i.default.join(a.default.homedir(),".purplemux","cli-token"),l=globalThis;e.s(["verifyCliToken",0,e=>{let a=e.headers["x-pmux-token"];var s="string"==typeof a?a:void 0;if(!s)return!1;let o=(()=>{if(l.__ptCliToken)return l.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(n,"utf-8").trim()||null}catch{return null}})();if(e)return l.__ptCliToken=e,e;let a=(0,t.randomBytes)(32).toString("hex");l.__ptCliToken=a;try{r.default.mkdirSync(i.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,a,{mode:384})}catch{}return a})();return s.length===o.length&&(0,t.timingSafeEqual)(Buffer.from(s),Buffer.from(o))}])},845994,e=>{"use strict";var t=e.i(924868),r=e.i(814747),i=e.i(446786),a=e.i(254799),n=e.i(666126);(0,e.i(25146).createLogger)("config");let l=r.default.join(i.default.homedir(),".purplemux"),s=r.default.join(l,"config.json"),o=globalThis;o.__ptConfigLock||(o.__ptConfigLock=Promise.resolve());let u=async e=>{let t,r=new Promise(e=>{t=e}),i=o.__ptConfigLock;o.__ptConfigLock=r,await i;try{return await e()}finally{t()}},d=()=>({updatedAt:new Date().toISOString()}),c=async()=>{try{let e=await t.default.readFile(s,"utf-8");return JSON.parse(e)}catch{return null}},p=async e=>{let{updatedAt:r,...i}=e,a=JSON.stringify(i);if(o.__ptConfigContentCache===a)return;e.updatedAt=new Date().toISOString();let l=s+".tmp";try{await t.default.writeFile(l,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(l,s)}catch(e){throw await t.default.unlink(l).catch(()=>{}),e}o.__ptConfigContentCache=a,(0,n.broadcastSync)({type:"config"})},f="scrypt:",h=e=>"string"==typeof e&&e.startsWith(f),g=async e=>{let t=a.default.randomBytes(16),r=await new Promise((r,i)=>{a.default.scrypt(e,t,64,(e,t)=>{e?i(e):r(t)})});return`${f}${t.toString("hex")}:${r.toString("hex")}`},m=async(e,t)=>{if(!h(t))return!1;let[,r,i]=t.split(":"),n=Buffer.from(r,"hex"),l=Buffer.from(i,"hex"),s=await new Promise((t,r)=>{a.default.scrypt(e,n,l.length,(e,i)=>{e?r(e):t(i)})});return a.default.timingSafeEqual(s,l)},y=async()=>await c()??d(),S=async e=>u(async()=>{let t=await c()??d();Object.assign(t,e),await p(t)}),x=async()=>{let e=await c();return!h(e?.authPassword)},v=async()=>{let e=await c();return e?.dangerouslySkipPermissions??!1};e.s(["generateSecret",0,()=>a.default.randomBytes(32).toString("hex"),"getConfig",0,y,"getDangerouslySkipPermissions",0,v,"hashPassword",0,g,"needsSetup",0,x,"updateConfig",0,S,"verifyPassword",0,m])},284345,e=>{"use strict";var t=e.i(926747),r=e.i(190406),i=e.i(244898),a=e.i(262950),n=e.i(713915),l=e.i(845994),s=e.i(772601),o=e.i(871911);let u=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});if(!await (0,l.needsSetup)()&&!((0,o.verifyCliToken)(e)||await (0,s.verifyRequestSession)(e.headers.cookie)))return t.status(401).json({error:"Unauthorized"});let r=await (0,n.getCachedPreflightStatus)();return t.status(200).json(r)};e.s(["default",0,u],16083);var d=e.i(16083),c=e.i(7031),p=e.i(181927),f=e.i(846432);let h=(0,a.hoist)(d,"default"),g=(0,a.hoist)(d,"config"),m=new i.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/auth/preflight",pathname:"/api/auth/preflight",bundlePath:"",filename:""},userland:d,distDir:".next",relativeProjectDir:""});async function y(e,r,i){i.requestMeta&&(0,f.setRequestMeta)(e,i.requestMeta),m.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/auth/preflight";a=a.replace(/\/index$/,"")||"/";let n=await m.prepare(e,r,{srcPage:a});if(!n){r.statusCode=400,r.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve());return}let{query:l,params:s,prerenderManifest:o,routerServerContext:u}=n;try{let t,i=e.method||"GET",n=(0,c.getTracer)(),d=n.getActiveScopeSpan(),f=!!(null==u?void 0:u.isWrappedByNextServer),h=m.instrumentationOnRequestError.bind(m),g=async d=>m.render(e,r,{query:{...l,...s},params:s,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:m.isDev,page:"/api/auth/preflight",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>h(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=n.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let l=e.get("next.route");if(l){let e=`${i} ${l}`;d.setAttributes({"next.route":l,"http.route":l,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",l),t.updateName(e))}else d.updateName(`${i} ${a}`)});f&&d?await g(d):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(p.BaseServerSpan.handleRequest,{spanName:`${i} ${a}`,kind:c.SpanKind.SERVER,attributes:{"http.method":i,"http.target":e.url}},g),void 0,!f))}catch(e){if(m.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==i.waitUntil||i.waitUntil.call(i,Promise.resolve())}}e.s(["config",0,g,"default",0,h,"handler",0,y],284345)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__02.9a5j._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),a=e.i(446786);let i=r.default.join(a.default.homedir(),".purplemux","logs"),o=process.env.LOG_LEVEL||"info",n=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,a]=r.split("=").map(e=>e.trim());e&&a&&(t[e]=a)}return t})(process.env.LOG_LEVELS),s=["trace","debug","info","warn","error","fatal"],l=globalThis;if(!l.__ptRootLogger){let e=[o,...Object.values(n)].reduce((e,t)=>s.indexOf(t)<s.indexOf(e)?t:e,"fatal");l.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(i,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let d=l.__ptRootLogger;e.s(["createLogger",0,e=>{let t=d.child({module:e});return t.level=n[e]??o,t}])},105265,e=>{"use strict";var t=e.i(924868),r=e.i(814747),a=e.i(446786),i=e.i(254799);let o=r.default.join(a.default.homedir(),".purplemux"),n=r.default.join(o,"uploads"),s=864e5,l={"image/png":"png","image/jpeg":"jpg","image/gif":"gif","image/webp":"webp"},d=e=>{if(!e)return"unknown";let t=e.replace(/[^a-zA-Z0-9_-]/g,"");return t.length>0?t.slice(0,64):"unknown"},u=e=>e in l,p=async({data:e,mime:a,originalName:o,wsId:s,tabId:p})=>{let c,f,m,g;if(!u(a))throw Error(`Unsupported image type: ${a}`);if(e.length>0xa00000)throw Error("Image exceeds 10485760 bytes");let h=r.default.join(n,d(s),d(p));await t.default.mkdir(h,{recursive:!0});let y=(c=l[a],f=Date.now(),m=(0,i.randomBytes)(4).toString("hex"),g=(o?r.default.parse(o).name:"image").replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,40)||"image",`${f}-${m}-${g}.${c}`),w=r.default.join(h,y);return await t.default.writeFile(w,e,{mode:384}),{path:w,filename:y}},c=async e=>{try{let r=await t.default.stat(e);return await t.default.unlink(e),r.size}catch{return 0}},f=async e=>{try{let r=await t.default.readdir(e);0===r.length&&e!==n&&await t.default.rmdir(e)}catch{}},m=async e=>{let a,i={deleted:0,freedBytes:0};try{a=await t.default.readdir(n)}catch{return i}for(let o of a){let a,s=r.default.join(n,o);try{a=await t.default.readdir(s)}catch{continue}for(let o of a){let a,n=r.default.join(s,o);try{a=await t.default.readdir(n)}catch{continue}for(let o of a){let a=r.default.join(n,o);try{let r=await t.default.stat(a);if(!r.isFile())continue;await e(a,r.mtimeMs,r.size)&&(i.deleted+=1,i.freedBytes+=r.size)}catch{}}await f(n)}await f(s)}return i},g=async(e=s)=>{let t=Date.now()-e;return m(async(e,r)=>r<t&&await c(e)>0)},h=async()=>m(async e=>await c(e)>0);e.s(["MAX_BYTES",0,0xa00000,"cleanupAllUploads",0,h,"cleanupExpiredUploads",0,g,"isValidMime",0,u,"saveImage",0,p])},284615,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),o=e.i(105265);let n=(0,e.i(25146).createLogger)("uploads"),s=e=>Array.isArray(e)?e[0]:e,l=async(e,t)=>{let r;if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});let a=s(e.headers["content-type"])?.split(";")[0]?.trim()??"";if(!(0,o.isValidMime)(a))return t.status(400).json({error:"Unsupported image type"});try{r=await new Promise((t,r)=>{let a=[],i=0;e.on("data",t=>{if((i+=t.length)>o.MAX_BYTES){r(Error("payload too large")),e.destroy();return}a.push(t)}),e.on("end",()=>t(Buffer.concat(a))),e.on("error",r)})}catch(r){let e=r instanceof Error?r.message:"failed to read body";if("payload too large"===e)return t.status(413).json({error:"Image exceeds 10MB"});return t.status(400).json({error:e})}if(0===r.length)return t.status(400).json({error:"Empty body"});let i=s(e.headers["x-pmux-ws-id"]),l=s(e.headers["x-pmux-tab-id"]),d=s(e.headers["x-pmux-filename"]);try{let e=await (0,o.saveImage)({data:r,mime:a,originalName:d?decodeURIComponent(d):void 0,wsId:i,tabId:l});return t.status(200).json({path:e.path,filename:e.filename})}catch(e){return n.error(`upload-image failed: ${e instanceof Error?e.message:e}`),t.status(500).json({error:"Failed to save image"})}};e.s(["config",0,{api:{bodyParser:!1,sizeLimit:"12mb"}},"default",0,l],897874);var d=e.i(897874),u=e.i(7031),p=e.i(181927),c=e.i(846432);let f=(0,i.hoist)(d,"default"),m=(0,i.hoist)(d,"config"),g=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/upload-image",pathname:"/api/upload-image",bundlePath:"",filename:""},userland:d,distDir:".next",relativeProjectDir:""});async function h(e,r,a){a.requestMeta&&(0,c.setRequestMeta)(e,a.requestMeta),g.isDev&&(0,c.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/upload-image";i=i.replace(/\/index$/,"")||"/";let o=await g.prepare(e,r,{srcPage:i});if(!o){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:n,params:s,prerenderManifest:l,routerServerContext:d}=o;try{let t,a=e.method||"GET",o=(0,u.getTracer)(),c=o.getActiveScopeSpan(),f=!!(null==d?void 0:d.isWrappedByNextServer),m=g.instrumentationOnRequestError.bind(g),h=async u=>g.render(e,r,{query:{...n,...s},params:s,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:g.isDev,page:"/api/upload-image",internalRevalidate:null==d?void 0:d.revalidate,onError:(...t)=>m(e,...t)}).finally(()=>{if(!u)return;u.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=o.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=e.get("next.route");if(n){let e=`${a} ${n}`;u.setAttributes({"next.route":n,"http.route":n,"next.span_name":e}),u.updateName(e),t&&t!==u&&(t.setAttribute("http.route",n),t.updateName(e))}else u.updateName(`${a} ${i}`)});f&&c?await h(c):(t=o.getActiveScopeSpan(),await o.withPropagatedContext(e.headers,()=>o.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:u.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},h),void 0,!f))}catch(e){if(g.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,m,"default",0,f,"handler",0,h],284615)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__038erb-._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},504446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},755004,(e,t,r)=>{t.exports=e.x("tls",()=>require("tls"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},597789,965898,e=>{"use strict";let t=process.env.__PMUX_PRISTINE_ENV,r=Object.freeze(t?JSON.parse(t):{...process.env});t||(process.env.__PMUX_PRISTINE_ENV=JSON.stringify(r)),e.s(["PRISTINE_ENV",0,r],965898);let a=new Set(["HOME","USER","LOGNAME","SHELL","PATH","TERM","COLORTERM","LANG","TMPDIR","SSH_AUTH_SOCK","SSH_CONNECTION","SSH_TTY","DISPLAY","WAYLAND_DISPLAY","XDG_RUNTIME_DIR","TZ"]),n=["LC_"],s=e=>a.has(e)||n.some(t=>e.startsWith(t)),i={TERM:"xterm-256color",COLORTERM:"truecolor"},l=()=>{let e={};for(let[t,a]of Object.entries(r))void 0!==a&&s(t)&&(e[t]=a);return{...e,...i}},o=e=>`'${e.replace(/'/g,"'\\''")}'`,u=()=>r.SHELL||"/bin/bash";e.s(["buildShellEnv",0,()=>l(),"buildShellLaunchCommand",0,()=>{let e=Object.entries(l()).map(([e,t])=>`${e}=${o(t)}`).join(" ");return`env -i TMUX="$TMUX" TMUX_PANE="$TMUX_PANE" ${e} ${o(u())} -l`},"defaultShell",0,u],597789)},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),a=e.i(446786);let n=r.default.join(a.default.homedir(),".purplemux","logs"),s=process.env.LOG_LEVEL||"info",i=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,a]=r.split("=").map(e=>e.trim());e&&a&&(t[e]=a)}return t})(process.env.LOG_LEVELS),l=["trace","debug","info","warn","error","fatal"],o=globalThis;if(!o.__ptRootLogger){let e=[s,...Object.values(i)].reduce((e,t)=>l.indexOf(t)<l.indexOf(e)?t:e,"fatal");o.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(n,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let u=o.__ptRootLogger;e.s(["createLogger",0,e=>{let t=u.child({module:e});return t.level=i[e]??s,t}])},44014,e=>{"use strict";let t,r;var a=e.i(666680);e.s(["nanoid",0,function(e=21){var n;n=e|=0,!t||t.length<n?(t=Buffer.allocUnsafe(128*n),a.webcrypto.getRandomValues(t),r=0):r+n>t.length&&(a.webcrypto.getRandomValues(t),r=0),r+=n;let s="";for(let a=r-e;a<r;a++)s+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63&t[a]];return s}],44014)},459015,544538,e=>{"use strict";var t=e.i(233405),r=e.i(924868),a=e.i(224361),n=e.i(814747),s=e.i(44014),i=e.i(965898),l=e.i(597789),o=e.i(25146);process.platform;let u="linux"===process.platform;e.s(["isLinux",0,u],544538);let p=(0,o.createLogger)("terminal"),c=(0,a.promisify)(t.execFile),d="purple",m=n.default.join(process.env.__PMUX_APP_DIR_UNPACKED||process.env.__PMUX_APP_DIR||process.cwd(),"src","config","tmux.conf"),f=async()=>{try{let{stdout:e}=await c("tmux",["-L",d,"ls","-F","#{session_name}"],{timeout:5e3});return e.trim().split("\n").map(e=>e.trim()).filter(e=>e.startsWith("pt-"))}catch{return[]}},h=async(e,t,r,a)=>{let n=(0,l.buildShellLaunchCommand)();await c("tmux",["-u","-L",d,"-f",m,"new-session","-d","-s",e,"-x",String(t),"-y",String(r),n],{timeout:5e3,cwd:a||i.PRISTINE_ENV.HOME||"/"}),await P(),p.debug(`tmux session created: ${e} (cols: ${t}, rows: ${r})`)},w=e=>new Promise(t=>setTimeout(t,e)),y=async e=>{if(!await x(e))return;p.debug(`killSession start: ${e}`);let t=await L(e);if(t)try{p.debug(`SIGTERM → process group ${t}: ${e}`),process.kill(-t,"SIGTERM")}catch{}try{await c("tmux",["-L",d,"kill-session","-t",e],{timeout:5e3})}catch{}for(let t=0;t<5;t++){if(!await x(e))return void p.debug(`killSession done (SIGTERM): ${e}`);await w(200)}if(p.warn(`session survived SIGTERM, escalating to SIGKILL: ${e}`),t)try{p.debug(`SIGKILL → process group ${t}: ${e}`),process.kill(-t,"SIGKILL")}catch{}try{await c("tmux",["-L",d,"kill-session","-t",e],{timeout:5e3})}catch{}for(let t=0;t<3;t++){if(!await x(e))return void p.debug(`killSession done (SIGKILL): ${e}`);await w(200)}p.warn(`tmux session still alive after kill: ${e}`)},x=async e=>{try{return await c("tmux",["-L",d,"has-session","-t",e],{timeout:5e3}),!0}catch{return!1}},g=async()=>{},S=async()=>{await g();let e=await f();e.length>0&&e.forEach(e=>{p.debug(`existing tmux session found: ${e}`)})},_=async e=>{if(u)try{return await r.default.readlink(`/proc/${e}/cwd`)}catch{return null}try{let{stdout:t}=await c("lsof",["-a","-p",String(e),"-d","cwd","-Fn"],{timeout:5e3}),r=t.split("\n").find(e=>e.startsWith("n/"));return r?r.slice(1):null}catch{return null}},v=async e=>{let t=await L(e);if(t){let e=await _(t);if(e)return e}try{let{stdout:t}=await c("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_current_path}"],{timeout:5e3});return t.trim()||null}catch{return null}},L=async e=>{try{let{stdout:t}=await c("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_pid}"],{timeout:5e3}),r=parseInt(t.trim(),10);return Number.isNaN(r)?null:r}catch{return null}},P=async()=>{try{await c("tmux",["-L",d,"source-file",m],{timeout:5e3})}catch{}},E=async e=>{try{let{stdout:t}=await c("tmux",["-L",d,"list-panes","-t",e,"-F","#{pane_current_command}"],{timeout:5e3});return t.trim()||null}catch{return null}},b=async()=>{try{let{stdout:e}=await c("tmux",["-L",d,"list-panes","-a","-F","#{session_name} #{pane_current_command} #{pane_current_path} #{pane_pid} #{window_activity}"],{timeout:5e3}),t=new Map;for(let r of e.trim().split("\n")){if(!r)continue;let[e,a,n,s,i]=r.split(" ");if(e&&a){let r=parseInt(s,10),l=parseInt(i,10);t.set(e,{command:a,path:n||"",pid:Number.isNaN(r)?0:r,windowActivity:Number.isNaN(l)?0:l})}}return t}catch{return new Map}},N=new Set(["bash","zsh","fish","sh","dash"]),I=async e=>{try{let{stdout:t}=await c("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_title}"],{timeout:5e3});return t.trim()||null}catch{return null}},T=async e=>{await c("tmux",["-L",d,"copy-mode","-q","-t",e],{timeout:5e3}).catch(()=>{})},R=async(e,t)=>{await T(e),await c("tmux",["-L",d,"send-keys","-t",e,t,"Enter"],{timeout:5e3})},$=async(e,t)=>{await T(e),await c("tmux",["-L",d,"send-keys","-t",e,t],{timeout:5e3})},M=async(e,t)=>{await T(e),await c("tmux",["-L",d,"send-keys","-t",e,"-l",`\x1b[200~${t}\x1b[201~`],{timeout:5e3}),await c("tmux",["-L",d,"send-keys","-t",e,"Enter"],{timeout:5e3}),await new Promise(e=>setTimeout(e,600)),await c("tmux",["-L",d,"send-keys","-t",e,"Enter"],{timeout:5e3})},q=async e=>{try{let{stdout:t}=await c("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_current_path} #{pane_current_command} #{pane_pid} #{pane_width} #{pane_height} #{session_created}"],{timeout:5e3}),[r,a,n,s,i,l]=t.trim().split(" ");return{cwd:r||null,command:a||null,pid:n&&parseInt(n,10)||null,width:s&&parseInt(s,10)||null,height:i&&parseInt(i,10)||null,sessionCreated:l&&parseInt(l,10)||null}}catch{return{cwd:null,command:null,pid:null,width:null,height:null,sessionCreated:null}}},C=new Set(["node","python","python3","ruby","perl","deno","bun"]),A=async()=>{try{await c("tmux",["-L",d,"kill-server"],{timeout:5e3}),p.debug("tmux server killed")}catch{}},k=async e=>{try{let{stdout:t}=await c("tmux",["-L",d,"capture-pane","-p","-t",e],{timeout:5e3});return t}catch{return null}},j=async(e,t)=>{try{let{stdout:r}=await c("tmux",["-L",d,"capture-pane","-p","-S",`-${t}`,"-t",e],{timeout:5e3});return r}catch{return null}},O=async e=>{if(u){let t=[];return await Promise.all(e.map(async e=>{try{for(let a of(await r.default.readFile(`/proc/${e}/task/${e}/children`,"utf-8")).trim().split(/\s+/)){let e=parseInt(a,10);Number.isNaN(e)||t.push(e)}}catch{}})),t}try{let{stdout:t}=await c("pgrep",["-P",e.join(",")],{timeout:5e3});return t.trim().split("\n").map(e=>parseInt(e,10)).filter(e=>!Number.isNaN(e))}catch{return[]}},D=async e=>{let t=[],r=[e];for(;r.length>0;){let e=await O(r);if(0===e.length)break;t.push(...e),r=e}return t},H=async e=>{try{let t=new Set(e),{stdout:r}=await c("ss",["-tlnp"],{timeout:5e3}),a=new Set;for(let e of r.split("\n")){let r=e.match(/pid=(\d+)/g);if(!r||!r.some(e=>t.has(parseInt(e.replace("pid=",""),10))))continue;let n=e.match(/:(\d+)\s/);n&&a.add(parseInt(n[1],10))}return[...a].sort((e,t)=>e-t)}catch{return[]}},U=async e=>{let t=await D(e);if(0===t.length)return[];if(u)return H(t);try{let{stdout:e}=await c("lsof",["-a","-p",t.join(","),"-i","-sTCP:LISTEN","-P","-Fn"],{timeout:5e3}),r=new Set;for(let t of e.split("\n"))if(t.startsWith("n")){let e=t.match(/:(\d+)$/);e&&r.add(parseInt(e[1],10))}return[...r].sort((e,t)=>e-t)}catch{return[]}},G=async e=>{let t=await L(e);if(!t)return null;try{let{stdout:e}=await c("pgrep",["-n","-P",String(t)],{timeout:5e3}),r=e.trim();if(!r)return null;let{stdout:a}=await c("ps",["-o","args=","-p",r],{timeout:5e3}),s=a.trim();if(!s)return null;let i=s.split(/\s+/);if(0===i.length)return s;if(i[0]=n.default.basename(i[0]),C.has(i[0])&&i.length>1){let e=n.default.basename(i[1]).replace(/\.(c|m)?js$/,"");i.splice(0,2,e)}return i.join(" ")}catch{return null}};e.s(["SAFE_SHELLS",0,N,"applyConfig",0,P,"capturePaneContent",0,k,"capturePaneContentWithHistory",0,j,"createSession",0,h,"defaultSessionName",0,()=>`pt-${(0,s.nanoid)(6)}-${(0,s.nanoid)(6)}-${(0,s.nanoid)(6)}`,"exitCopyMode",0,T,"getAllPanesInfo",0,b,"getLastCommand",0,G,"getListeningPorts",0,U,"getPaneCurrentCommand",0,E,"getPaneDetailInfo",0,q,"getPaneTitle",0,I,"getSessionCwd",0,v,"getSessionPanePid",0,L,"hasSession",0,x,"killServer",0,A,"killSession",0,y,"listSessions",0,f,"scanSessions",0,S,"sendBracketedPaste",0,M,"sendKeys",0,R,"sendRawKeys",0,$,"workspaceSessionName",0,(e,t,r)=>`pt-${e}-${t}-${r}`],459015)},175609,(e,t,r)=>{t.exports=e.x("node-pty-592e8dc6192cfd06",()=>require("node-pty-592e8dc6192cfd06"))},971780,e=>{"use strict";var t=e.i(459015);e.i(478319),e.i(220951),e.i(175609),e.i(597789),e.i(965898),new TextEncoder,new TextDecoder,(0,e.i(25146).createLogger)("terminal"),new TextDecoder;let r=globalThis,a=r.__purplemux_terminal_connections??=new Map;r.__purplemux_terminal_output_ts??=new Map;let n=(e,t,r)=>{for(let n of a.values())if(n.sessionName===e&&!n.cleaned)return void n.pty.resize(t,r)},s=e=>new Promise(t=>setTimeout(t,e)),i=async(e,r,i)=>{let l=(e=>{for(let t of a.values())if(t.sessionName===e&&!t.cleaned)return{cols:t.currentCols,rows:t.currentRows};return null})(e);if(l&&l.cols>50)return(0,t.capturePaneContentWithHistory)(e,50);let o=(e=>{for(let t of a.values())if(t.sessionName===e&&!t.cleaned){if(t.capturePaused)return null;return t.capturePaused=!0,{cols:t.currentCols,rows:t.currentRows}}return null})(e);if(!o)return(0,t.capturePaneContent)(e);try{n(e,r,i),await s(300);let a=await (0,t.capturePaneContent)(e);return n(e,o.cols,o.rows),await s(300),a}finally{(e=>{for(let t of a.values())if(t.sessionName===e&&!t.cleaned){if(!t.capturePaused)return;t.capturePaused=!1;return}})(e)}};e.s(["capturePaneAtWidth",0,i],971780)},8372,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),n=e.i(262950),s=e.i(459015),i=e.i(971780);let l=(0,e.i(25146).createLogger)("tmux"),o=/^\s*(?:[❯›>]\s+)?(?:\d+\.\s+)?(.+)$/,u=["Yes,","Yes ","No,","No ","Tell Claude"],p=e=>/^\s+\S/.test(e)||/^\s*[❯›>]/.test(e),c=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});let r=e.query.session;if(!r)return t.status(400).json({error:"session parameter required"});if(!await (0,s.hasSession)(r))return t.status(404).json({error:"Session not found"});try{let e=await (0,i.capturePaneAtWidth)(r,120,50);if(!e)return t.status(200).json({options:[]});let a=(e=>{let t=e.split("\n"),r=[],a=!1;for(let e of t){if(!e.trim()||!p(e)){if(a)break;continue}let t=e.match(o);if(!t)continue;let n=t[1].trim();if(a)if(u.some(e=>n.startsWith(e)))r.push(n);else break;else u.some(e=>n.startsWith(e))&&(r.push(n),a=!0)}return r})(e);return t.status(200).json({options:a})}catch(e){return l.error(`plan-options query failed: ${e instanceof Error?e.message:e}`),t.status(500).json({error:"Terminal capture failed"})}};e.s(["default",0,c],875757);var d=e.i(875757),m=e.i(7031),f=e.i(181927),h=e.i(846432);let w=(0,n.hoist)(d,"default"),y=(0,n.hoist)(d,"config"),x=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/tmux/plan-options",pathname:"/api/tmux/plan-options",bundlePath:"",filename:""},userland:d,distDir:".next",relativeProjectDir:""});async function g(e,r,a){a.requestMeta&&(0,h.setRequestMeta)(e,a.requestMeta),x.isDev&&(0,h.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let n="/api/tmux/plan-options";n=n.replace(/\/index$/,"")||"/";let s=await x.prepare(e,r,{srcPage:n});if(!s){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:i,params:l,prerenderManifest:o,routerServerContext:u}=s;try{let t,a=e.method||"GET",s=(0,m.getTracer)(),p=s.getActiveScopeSpan(),c=!!(null==u?void 0:u.isWrappedByNextServer),d=x.instrumentationOnRequestError.bind(x),h=async p=>x.render(e,r,{query:{...i,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:x.isDev,page:"/api/tmux/plan-options",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>d(e,...t)}).finally(()=>{if(!p)return;p.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=s.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==f.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=e.get("next.route");if(i){let e=`${a} ${i}`;p.setAttributes({"next.route":i,"http.route":i,"next.span_name":e}),p.updateName(e),t&&t!==p&&(t.setAttribute("http.route",i),t.updateName(e))}else p.updateName(`${a} ${n}`)});c&&p?await h(p):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(f.BaseServerSpan.handleRequest,{spanName:`${a} ${n}`,kind:m.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},h),void 0,!c))}catch(e){if(x.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,y,"default",0,w,"handler",0,g],8372)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__03l15.f._.js.map
@@ -1,3 +1,3 @@
1
1
  module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let n=a.default.join(i.default.homedir(),".purplemux","cli-token"),s=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var o="string"==typeof i?i:void 0;if(!o)return!1;let l=(()=>{if(s.__ptCliToken)return s.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(n,"utf-8").trim()||null}catch{return null}})();if(e)return s.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");s.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,i,{mode:384})}catch{}return i})();return o.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(o),Buffer.from(l))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429);let i=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let n=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(n.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},n=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null};e.s(["findTab",0,i,"resolveFirstPaneId",0,n])},802873,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),n=e.i(871911),s=e.i(200523),o=e.i(459015);let l=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});if(!(0,n.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let r=e.query.tabId,a="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!a)return t.status(400).json({error:"workspaceId is required"});let{content:i}=e.body;if(!i)return t.status(400).json({error:"content is required"});let l=await (0,s.findTab)(a,r);return l?await (0,o.hasSession)(l.tab.sessionName)?(await (0,o.sendBracketedPaste)(l.tab.sessionName,i),t.status(200).json({status:"sent"})):t.status(409).json({error:"Tab session is not running"}):t.status(404).json({error:"Tab not found"})};e.s(["default",0,l],197672);var u=e.i(197672),d=e.i(7031),p=e.i(181927),c=e.i(846432);let f=(0,i.hoist)(u,"default"),v=(0,i.hoist)(u,"config"),h=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/[tabId]/send",pathname:"/api/cli/tabs/[tabId]/send",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function m(e,r,a){a.requestMeta&&(0,c.setRequestMeta)(e,a.requestMeta),h.isDev&&(0,c.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/[tabId]/send";i=i.replace(/\/index$/,"")||"/";let n=await h.prepare(e,r,{srcPage:i});if(!n){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:o,prerenderManifest:l,routerServerContext:u}=n;try{let t,a=e.method||"GET",n=(0,d.getTracer)(),c=n.getActiveScopeSpan(),f=!!(null==u?void 0:u.isWrappedByNextServer),v=h.instrumentationOnRequestError.bind(h),m=async d=>h.render(e,r,{query:{...s,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:h.isDev,page:"/api/cli/tabs/[tabId]/send",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>v(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=n.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=e.get("next.route");if(s){let e=`${a} ${s}`;d.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",s),t.updateName(e))}else d.updateName(`${a} ${i}`)});f&&c?await m(c):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:d.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},m),void 0,!f))}catch(e){if(h.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,v,"default",0,f,"handler",0,m],802873)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_tab-title_ts_0onatvs._.js"].map(t=>e.l(t))).then(()=>t(785128)))}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__01tlivs._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__045g9-a._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[270406,(e,t,a)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,a)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,a)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,a)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},889215,e=>{"use strict";var t=e.i(926747),a=e.i(190406),r=e.i(244898),i=e.i(262950),l=e.i(924868),s=e.i(814747),o=e.i(446786);let n=s.default.join(o.default.homedir(),".purplemux"),p=s.default.join(n,"keybindings.json"),d={overrides:{}},u=e=>{if(!e||"object"!=typeof e)return d;let t=e.overrides;if(!t||"object"!=typeof t)return d;let a={};for(let[e,r]of Object.entries(t))"string"==typeof e&&(null===r||"string"==typeof r)&&(a[e]=r);return{overrides:a}},c=async()=>{try{let e=await l.default.readFile(p,"utf-8");return u(JSON.parse(e))}catch{return d}},f=async e=>{await l.default.mkdir(n,{recursive:!0}),await l.default.writeFile(p,JSON.stringify(u(e),null,2),{encoding:"utf-8",mode:384})},y=async(e,t)=>{let a=await c();return a.overrides[e]=t,await f(a),a},h=async e=>{let t=await c();return delete t.overrides[e],await f(t),t},w=async()=>(await f(d),d),g="u">typeof navigator&&/Mac|iPhone|iPad|iPod/.test(navigator.platform??navigator.userAgent),m=g?"meta":"ctrl",b=g?"meta+ctrl+shift":"ctrl+alt+shift",v=e=>Array.from({length:9},(t,a)=>`${e}+${a+1}`).join(", "),$={"workspace.new":{id:"workspace.new",label:"New workspace",category:"workspace",defaultKey:`${m}+n`,display:{mac:"⌘N",other:"Ctrl+N"}},"workspace.rename":{id:"workspace.rename",label:"Rename workspace",category:"workspace",defaultKey:`${m}+shift+r`,display:{mac:"⌘⇧R",other:"Ctrl+Shift+R"}},"workspace.switch":{id:"workspace.switch",label:"Switch to workspace 1–9",category:"workspace",defaultKey:v(m),display:{mac:"⌘1 – ⌘9",other:"Ctrl+1 – Ctrl+9"},editable:!1},"tab.new":{id:"tab.new",label:"New tab",category:"tab",defaultKey:`${m}+t`,display:{mac:"⌘T",other:"Ctrl+T"}},"tab.close":{id:"tab.close",label:"Close tab",category:"tab",defaultKey:`${m}+w`,display:{mac:"⌘W",other:"Ctrl+W"}},"tab.prev":{id:"tab.prev",label:"Previous tab",category:"tab",defaultKey:`${m}+shift+BracketLeft`,display:{mac:"⌘⇧[",other:"Ctrl+Shift+["}},"tab.next":{id:"tab.next",label:"Next tab",category:"tab",defaultKey:`${m}+shift+BracketRight`,display:{mac:"⌘⇧]",other:"Ctrl+Shift+]"}},"tab.goto":{id:"tab.goto",label:"Go to tab 1–9",category:"tab",defaultKey:v(g?"ctrl":"alt"),display:{mac:"⌃1 – ⌃9",other:"Alt+1 – Alt+9"},editable:!1},"pane.split_right":{id:"pane.split_right",label:"Split pane right",category:"pane",defaultKey:`${m}+d`,display:{mac:"⌘D",other:"Ctrl+D"}},"pane.split_down":{id:"pane.split_down",label:"Split pane down",category:"pane",defaultKey:`${m}+shift+d`,display:{mac:"⌘⇧D",other:"Ctrl+Shift+D"}},"pane.focus_left":{id:"pane.focus_left",label:"Focus left pane",category:"pane",defaultKey:`${m}+alt+ArrowLeft`,display:{mac:"⌘⌥←",other:"Ctrl+Alt+←"}},"pane.focus_right":{id:"pane.focus_right",label:"Focus right pane",category:"pane",defaultKey:`${m}+alt+ArrowRight`,display:{mac:"⌘⌥→",other:"Ctrl+Alt+→"}},"pane.focus_up":{id:"pane.focus_up",label:"Focus upper pane",category:"pane",defaultKey:`${m}+alt+ArrowUp`,display:{mac:"⌘⌥↑",other:"Ctrl+Alt+↑"}},"pane.focus_down":{id:"pane.focus_down",label:"Focus lower pane",category:"pane",defaultKey:`${m}+alt+ArrowDown`,display:{mac:"⌘⌥↓",other:"Ctrl+Alt+↓"}},"pane.clear_screen":{id:"pane.clear_screen",label:"Clear screen",category:"pane",defaultKey:`${m}+k`,display:{mac:"⌘K",other:"Ctrl+K"}},"pane.resize_left":{id:"pane.resize_left",label:"Resize pane left",category:"pane",defaultKey:`${b}+ArrowLeft`,display:{mac:"⌘⌃⇧←",other:"Ctrl+Alt+Shift+←"}},"pane.resize_right":{id:"pane.resize_right",label:"Resize pane right",category:"pane",defaultKey:`${b}+ArrowRight`,display:{mac:"⌘⌃⇧→",other:"Ctrl+Alt+Shift+→"}},"pane.resize_up":{id:"pane.resize_up",label:"Resize pane up",category:"pane",defaultKey:`${b}+ArrowUp`,display:{mac:"⌘⌃⇧↑",other:"Ctrl+Alt+Shift+↑"}},"pane.resize_down":{id:"pane.resize_down",label:"Resize pane down",category:"pane",defaultKey:`${b}+ArrowDown`,display:{mac:"⌘⌃⇧↓",other:"Ctrl+Alt+Shift+↓"}},"pane.equalize":{id:"pane.equalize",label:"Equalize splits",category:"pane",defaultKey:`${m}+alt+Equal`,display:{mac:"⌘⌥=",other:"Ctrl+Alt+="}},"panel.focus_input":{id:"panel.focus_input",label:"Focus Claude input",category:"panel",defaultKey:`${m}+i`,display:{mac:"⌘I",other:"Ctrl+I"}},"view.toggle_sidebar":{id:"view.toggle_sidebar",label:"Toggle sidebar",category:"view",defaultKey:`${m}+b`,display:{mac:"⌘B",other:"Ctrl+B"}},"view.notes":{id:"view.notes",label:"Notes",category:"view",defaultKey:`${m}+shift+e`,display:{mac:"⌘⇧E",other:"Ctrl+Shift+E"}},"view.stats":{id:"view.stats",label:"Stats",category:"view",defaultKey:`${m}+shift+u`,display:{mac:"⌘⇧U",other:"Ctrl+Shift+U"}},"app.settings":{id:"app.settings",label:"Settings",category:"app",defaultKey:`${m}+comma`,display:{mac:"⌘,",other:"Ctrl+,"}},"app.new_window":{id:"app.new_window",label:"New window",category:"app",defaultKey:`${m}+shift+n`,display:{mac:"⌘⇧N",other:"Ctrl+Shift+N"}}},C=e=>e.split(",").map(e=>e.trim()).filter(Boolean),S=e=>{let t=e.split("+").map(e=>e.trim()).filter(Boolean);if(0===t.length)return null;let a=!1,r=!1,i=!1,l=!1,s=null;for(let e of t){let t=e.toLowerCase();"meta"===t||"cmd"===t||"super"===t?a=!0:"ctrl"===t||"control"===t?r=!0:"alt"===t||"opt"===t||"option"===t?i=!0:"shift"===t?l=!0:s=/^[a-z]$/.test(t)?`Key${t.toUpperCase()}`:/^[0-9]$/.test(t)?`Digit${t}`:"comma"===t?"Comma":"period"===t?"Period":"slash"===t?"Slash":"equal"===t?"Equal":"minus"===t?"Minus":"space"===t?"Space":"enter"===t||"return"===t?"Enter":"escape"===t||"esc"===t?"Escape":"tab"===t?"Tab":"backspace"===t?"Backspace":e}if(!s)return null;let o=[];return a&&o.push("meta"),r&&o.push("ctrl"),i&&o.push("alt"),l&&o.push("shift"),o.push(s),o.join("+")},A={},K=new Set,_=new Map,k=new Map;for(let e of(_.clear(),k.clear(),K=new Set,Object.values($))){let t=A[e.id],a=void 0!==t?t:e.defaultKey;if(_.set(e.id,a),!a)continue;let r=new Set;for(let e of C(a)){let t=S(e);t&&(r.add(t),K.add(t))}k.set(e.id,r)}let x=e=>Object.prototype.hasOwnProperty.call($,e),E=async(e,t)=>{if("GET"===e.method){let e=await c();return t.status(200).json(e)}if("PATCH"===e.method){let{id:a,key:r}=e.body??{};if("string"!=typeof a||!a||!x(a))return t.status(400).json({error:"unknown action id"});if(null!==r&&"string"!=typeof r)return t.status(400).json({error:"key must be string or null"});let i=await y(a,r);return t.status(200).json(i)}if("DELETE"===e.method){let{id:a}=e.query;if("string"==typeof a&&a){if(!x(a))return t.status(400).json({error:"unknown action id"});let e=await h(a);return t.status(200).json(e)}let r=await w();return t.status(200).json(r)}return t.setHeader("Allow","GET, PATCH, DELETE"),t.status(405).json({error:"Method not allowed"})};e.s(["default",0,E],684930);var R=e.i(684930),j=e.i(7031),q=e.i(181927),P=e.i(846432);let N=(0,i.hoist)(R,"default"),z=(0,i.hoist)(R,"config"),D=new r.PagesAPIRouteModule({definition:{kind:a.RouteKind.PAGES_API,page:"/api/keybindings",pathname:"/api/keybindings",bundlePath:"",filename:""},userland:R,distDir:".next",relativeProjectDir:""});async function T(e,a,r){r.requestMeta&&(0,P.setRequestMeta)(e,r.requestMeta),D.isDev&&(0,P.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/keybindings";i=i.replace(/\/index$/,"")||"/";let l=await D.prepare(e,a,{srcPage:i});if(!l){a.statusCode=400,a.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve());return}let{query:s,params:o,prerenderManifest:n,routerServerContext:p}=l;try{let t,r=e.method||"GET",l=(0,j.getTracer)(),d=l.getActiveScopeSpan(),u=!!(null==p?void 0:p.isWrappedByNextServer),c=D.instrumentationOnRequestError.bind(D),f=async d=>D.render(e,a,{query:{...s,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:n.preview,propagateError:!1,dev:D.isDev,page:"/api/keybindings",internalRevalidate:null==p?void 0:p.revalidate,onError:(...t)=>c(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":a.statusCode,"next.rsc":!1});let e=l.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==q.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=e.get("next.route");if(s){let e=`${r} ${s}`;d.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",s),t.updateName(e))}else d.updateName(`${r} ${i}`)});u&&d?await f(d):(t=l.getActiveScopeSpan(),await l.withPropagatedContext(e.headers,()=>l.trace(q.BaseServerSpan.handleRequest,{spanName:`${r} ${i}`,kind:j.SpanKind.SERVER,attributes:{"http.method":r,"http.target":e.url}},f),void 0,!u))}catch(e){if(D.isDev)throw e;(0,t.sendError)(a,500,"Internal Server Error")}finally{null==r.waitUntil||r.waitUntil.call(r,Promise.resolve())}}e.s(["config",0,z,"default",0,N,"handler",0,T],889215)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__045vzzi._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},597789,965898,e=>{"use strict";let t=process.env.__PMUX_PRISTINE_ENV,r=Object.freeze(t?JSON.parse(t):{...process.env});t||(process.env.__PMUX_PRISTINE_ENV=JSON.stringify(r)),e.s(["PRISTINE_ENV",0,r],965898);let a=new Set(["HOME","USER","LOGNAME","SHELL","PATH","TERM","COLORTERM","LANG","TMPDIR","SSH_AUTH_SOCK","SSH_CONNECTION","SSH_TTY","DISPLAY","WAYLAND_DISPLAY","XDG_RUNTIME_DIR","TZ"]),n=["LC_"],i=e=>a.has(e)||n.some(t=>e.startsWith(t)),s={TERM:"xterm-256color",COLORTERM:"truecolor"},l=()=>{let e={};for(let[t,a]of Object.entries(r))void 0!==a&&i(t)&&(e[t]=a);return{...e,...s}},o=e=>`'${e.replace(/'/g,"'\\''")}'`,u=()=>r.SHELL||"/bin/bash";e.s(["buildShellEnv",0,()=>l(),"buildShellLaunchCommand",0,()=>{let e=Object.entries(l()).map(([e,t])=>`${e}=${o(t)}`).join(" ");return`env -i TMUX="$TMUX" TMUX_PANE="$TMUX_PANE" ${e} ${o(u())} -l`},"defaultShell",0,u],597789)},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),a=e.i(446786);let n=r.default.join(a.default.homedir(),".purplemux","logs"),i=process.env.LOG_LEVEL||"info",s=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,a]=r.split("=").map(e=>e.trim());e&&a&&(t[e]=a)}return t})(process.env.LOG_LEVELS),l=["trace","debug","info","warn","error","fatal"],o=globalThis;if(!o.__ptRootLogger){let e=[i,...Object.values(s)].reduce((e,t)=>l.indexOf(t)<l.indexOf(e)?t:e,"fatal");o.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(n,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let u=o.__ptRootLogger;e.s(["createLogger",0,e=>{let t=u.child({module:e});return t.level=s[e]??i,t}])},44014,e=>{"use strict";let t,r;var a=e.i(666680);e.s(["nanoid",0,function(e=21){var n;n=e|=0,!t||t.length<n?(t=Buffer.allocUnsafe(128*n),a.webcrypto.getRandomValues(t),r=0):r+n>t.length&&(a.webcrypto.getRandomValues(t),r=0),r+=n;let i="";for(let a=r-e;a<r;a++)i+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63&t[a]];return i}],44014)},459015,544538,e=>{"use strict";var t=e.i(233405),r=e.i(924868),a=e.i(224361),n=e.i(814747),i=e.i(44014),s=e.i(965898),l=e.i(597789),o=e.i(25146);process.platform;let u="linux"===process.platform;e.s(["isLinux",0,u],544538);let p=(0,o.createLogger)("terminal"),c=(0,a.promisify)(t.execFile),d="purple",m=n.default.join(process.env.__PMUX_APP_DIR_UNPACKED||process.env.__PMUX_APP_DIR||process.cwd(),"src","config","tmux.conf"),h=async()=>{try{let{stdout:e}=await c("tmux",["-L",d,"ls","-F","#{session_name}"],{timeout:5e3});return e.trim().split("\n").map(e=>e.trim()).filter(e=>e.startsWith("pt-"))}catch{return[]}},f=async(e,t,r,a)=>{let n=(0,l.buildShellLaunchCommand)();await c("tmux",["-u","-L",d,"-f",m,"new-session","-d","-s",e,"-x",String(t),"-y",String(r),n],{timeout:5e3,cwd:a||s.PRISTINE_ENV.HOME||"/"}),await E(),p.debug(`tmux session created: ${e} (cols: ${t}, rows: ${r})`)},y=e=>new Promise(t=>setTimeout(t,e)),w=async e=>{if(!await g(e))return;p.debug(`killSession start: ${e}`);let t=await v(e);if(t)try{p.debug(`SIGTERM → process group ${t}: ${e}`),process.kill(-t,"SIGTERM")}catch{}try{await c("tmux",["-L",d,"kill-session","-t",e],{timeout:5e3})}catch{}for(let t=0;t<5;t++){if(!await g(e))return void p.debug(`killSession done (SIGTERM): ${e}`);await y(200)}if(p.warn(`session survived SIGTERM, escalating to SIGKILL: ${e}`),t)try{p.debug(`SIGKILL → process group ${t}: ${e}`),process.kill(-t,"SIGKILL")}catch{}try{await c("tmux",["-L",d,"kill-session","-t",e],{timeout:5e3})}catch{}for(let t=0;t<3;t++){if(!await g(e))return void p.debug(`killSession done (SIGKILL): ${e}`);await y(200)}p.warn(`tmux session still alive after kill: ${e}`)},g=async e=>{try{return await c("tmux",["-L",d,"has-session","-t",e],{timeout:5e3}),!0}catch{return!1}},S=async()=>{},x=async()=>{await S();let e=await h();e.length>0&&e.forEach(e=>{p.debug(`existing tmux session found: ${e}`)})},_=async e=>{if(u)try{return await r.default.readlink(`/proc/${e}/cwd`)}catch{return null}try{let{stdout:t}=await c("lsof",["-a","-p",String(e),"-d","cwd","-Fn"],{timeout:5e3}),r=t.split("\n").find(e=>e.startsWith("n/"));return r?r.slice(1):null}catch{return null}},L=async e=>{let t=await v(e);if(t){let e=await _(t);if(e)return e}try{let{stdout:t}=await c("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_current_path}"],{timeout:5e3});return t.trim()||null}catch{return null}},v=async e=>{try{let{stdout:t}=await c("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_pid}"],{timeout:5e3}),r=parseInt(t.trim(),10);return Number.isNaN(r)?null:r}catch{return null}},E=async()=>{try{await c("tmux",["-L",d,"source-file",m],{timeout:5e3})}catch{}},P=async e=>{try{let{stdout:t}=await c("tmux",["-L",d,"list-panes","-t",e,"-F","#{pane_current_command}"],{timeout:5e3});return t.trim()||null}catch{return null}},I=async()=>{try{let{stdout:e}=await c("tmux",["-L",d,"list-panes","-a","-F","#{session_name} #{pane_current_command} #{pane_current_path} #{pane_pid} #{window_activity}"],{timeout:5e3}),t=new Map;for(let r of e.trim().split("\n")){if(!r)continue;let[e,a,n,i,s]=r.split(" ");if(e&&a){let r=parseInt(i,10),l=parseInt(s,10);t.set(e,{command:a,path:n||"",pid:Number.isNaN(r)?0:r,windowActivity:Number.isNaN(l)?0:l})}}return t}catch{return new Map}},b=new Set(["bash","zsh","fish","sh","dash"]),N=async e=>{try{let{stdout:t}=await c("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_title}"],{timeout:5e3});return t.trim()||null}catch{return null}},R=async e=>{await c("tmux",["-L",d,"copy-mode","-q","-t",e],{timeout:5e3}).catch(()=>{})},$=async(e,t)=>{await R(e),await c("tmux",["-L",d,"send-keys","-t",e,t,"Enter"],{timeout:5e3})},T=async(e,t)=>{await R(e),await c("tmux",["-L",d,"send-keys","-t",e,t],{timeout:5e3})},M=async(e,t)=>{await R(e),await c("tmux",["-L",d,"send-keys","-t",e,"-l",`\x1b[200~${t}\x1b[201~`],{timeout:5e3}),await c("tmux",["-L",d,"send-keys","-t",e,"Enter"],{timeout:5e3}),await new Promise(e=>setTimeout(e,600)),await c("tmux",["-L",d,"send-keys","-t",e,"Enter"],{timeout:5e3})},k=async e=>{try{let{stdout:t}=await c("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_current_path} #{pane_current_command} #{pane_pid} #{pane_width} #{pane_height} #{session_created}"],{timeout:5e3}),[r,a,n,i,s,l]=t.trim().split(" ");return{cwd:r||null,command:a||null,pid:n&&parseInt(n,10)||null,width:i&&parseInt(i,10)||null,height:s&&parseInt(s,10)||null,sessionCreated:l&&parseInt(l,10)||null}}catch{return{cwd:null,command:null,pid:null,width:null,height:null,sessionCreated:null}}},A=new Set(["node","python","python3","ruby","perl","deno","bun"]),C=async()=>{try{await c("tmux",["-L",d,"kill-server"],{timeout:5e3}),p.debug("tmux server killed")}catch{}},O=async e=>{try{let{stdout:t}=await c("tmux",["-L",d,"capture-pane","-p","-t",e],{timeout:5e3});return t}catch{return null}},q=async(e,t)=>{try{let{stdout:r}=await c("tmux",["-L",d,"capture-pane","-p","-S",`-${t}`,"-t",e],{timeout:5e3});return r}catch{return null}},j=async e=>{if(u){let t=[];return await Promise.all(e.map(async e=>{try{for(let a of(await r.default.readFile(`/proc/${e}/task/${e}/children`,"utf-8")).trim().split(/\s+/)){let e=parseInt(a,10);Number.isNaN(e)||t.push(e)}}catch{}})),t}try{let{stdout:t}=await c("pgrep",["-P",e.join(",")],{timeout:5e3});return t.trim().split("\n").map(e=>parseInt(e,10)).filter(e=>!Number.isNaN(e))}catch{return[]}},U=async e=>{let t=[],r=[e];for(;r.length>0;){let e=await j(r);if(0===e.length)break;t.push(...e),r=e}return t},H=async e=>{try{let t=new Set(e),{stdout:r}=await c("ss",["-tlnp"],{timeout:5e3}),a=new Set;for(let e of r.split("\n")){let r=e.match(/pid=(\d+)/g);if(!r||!r.some(e=>t.has(parseInt(e.replace("pid=",""),10))))continue;let n=e.match(/:(\d+)\s/);n&&a.add(parseInt(n[1],10))}return[...a].sort((e,t)=>e-t)}catch{return[]}},D=async e=>{let t=await U(e);if(0===t.length)return[];if(u)return H(t);try{let{stdout:e}=await c("lsof",["-a","-p",t.join(","),"-i","-sTCP:LISTEN","-P","-Fn"],{timeout:5e3}),r=new Set;for(let t of e.split("\n"))if(t.startsWith("n")){let e=t.match(/:(\d+)$/);e&&r.add(parseInt(e[1],10))}return[...r].sort((e,t)=>e-t)}catch{return[]}},G=async e=>{let t=await v(e);if(!t)return null;try{let{stdout:e}=await c("pgrep",["-n","-P",String(t)],{timeout:5e3}),r=e.trim();if(!r)return null;let{stdout:a}=await c("ps",["-o","args=","-p",r],{timeout:5e3}),i=a.trim();if(!i)return null;let s=i.split(/\s+/);if(0===s.length)return i;if(s[0]=n.default.basename(s[0]),A.has(s[0])&&s.length>1){let e=n.default.basename(s[1]).replace(/\.(c|m)?js$/,"");s.splice(0,2,e)}return s.join(" ")}catch{return null}};e.s(["SAFE_SHELLS",0,b,"applyConfig",0,E,"capturePaneContent",0,O,"capturePaneContentWithHistory",0,q,"createSession",0,f,"defaultSessionName",0,()=>`pt-${(0,i.nanoid)(6)}-${(0,i.nanoid)(6)}-${(0,i.nanoid)(6)}`,"exitCopyMode",0,R,"getAllPanesInfo",0,I,"getLastCommand",0,G,"getListeningPorts",0,D,"getPaneCurrentCommand",0,P,"getPaneDetailInfo",0,k,"getPaneTitle",0,N,"getSessionCwd",0,L,"getSessionPanePid",0,v,"hasSession",0,g,"killServer",0,C,"killSession",0,w,"listSessions",0,h,"scanSessions",0,x,"sendBracketedPaste",0,M,"sendKeys",0,$,"sendRawKeys",0,T,"workspaceSessionName",0,(e,t,r)=>`pt-${e}-${t}-${r}`],459015)},360190,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),n=e.i(262950),i=e.i(459015);let s=(0,e.i(25146).createLogger)("tmux"),l=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});let{session:r,input:a}=e.body;if(!r||!a)return t.status(400).json({error:"session and input parameters required"});if(!await (0,i.hasSession)(r))return t.status(404).json({error:"Session not found"});try{return await (0,i.sendRawKeys)(r,a),t.status(200).json({ok:!0})}catch(e){return s.error(`send-input failed: ${e instanceof Error?e.message:e}`),t.status(500).json({error:"Failed to send input"})}};e.s(["default",0,l],943074);var o=e.i(943074),u=e.i(7031),p=e.i(181927),c=e.i(846432);let d=(0,n.hoist)(o,"default"),m=(0,n.hoist)(o,"config"),h=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/tmux/send-input",pathname:"/api/tmux/send-input",bundlePath:"",filename:""},userland:o,distDir:".next",relativeProjectDir:""});async function f(e,r,a){a.requestMeta&&(0,c.setRequestMeta)(e,a.requestMeta),h.isDev&&(0,c.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let n="/api/tmux/send-input";n=n.replace(/\/index$/,"")||"/";let i=await h.prepare(e,r,{srcPage:n});if(!i){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:l,prerenderManifest:o,routerServerContext:d}=i;try{let t,a=e.method||"GET",i=(0,u.getTracer)(),c=i.getActiveScopeSpan(),m=!!(null==d?void 0:d.isWrappedByNextServer),f=h.instrumentationOnRequestError.bind(h),y=async u=>h.render(e,r,{query:{...s,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:h.isDev,page:"/api/tmux/send-input",internalRevalidate:null==d?void 0:d.revalidate,onError:(...t)=>f(e,...t)}).finally(()=>{if(!u)return;u.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=i.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=e.get("next.route");if(s){let e=`${a} ${s}`;u.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),u.updateName(e),t&&t!==u&&(t.setAttribute("http.route",s),t.updateName(e))}else u.updateName(`${a} ${n}`)});m&&c?await y(c):(t=i.getActiveScopeSpan(),await i.withPropagatedContext(e.headers,()=>i.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${n}`,kind:u.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},y),void 0,!m))}catch(e){if(h.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,m,"default",0,d,"handler",0,f],360190)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__04cr_m8._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),i=e.i(446786);let a=r.default.join(i.default.homedir(),".purplemux","logs"),s=process.env.LOG_LEVEL||"info",o=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,i]=r.split("=").map(e=>e.trim());e&&i&&(t[e]=i)}return t})(process.env.LOG_LEVELS),l=["trace","debug","info","warn","error","fatal"],n=globalThis;if(!n.__ptRootLogger){let e=[s,...Object.values(o)].reduce((e,t)=>l.indexOf(t)<l.indexOf(e)?t:e,"fatal");n.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(a,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let p=n.__ptRootLogger;e.s(["createLogger",0,e=>{let t=p.child({module:e});return t.level=o[e]??s,t}])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},504446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},755004,(e,t,r)=>{t.exports=e.x("tls",()=>require("tls"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},206892,e=>{"use strict";var t=e.i(926747),r=e.i(190406),i=e.i(244898),a=e.i(262950),s=e.i(228448);let o=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});let r=await (0,s.getVAPIDKeys)();return t.status(200).json({publicKey:r.publicKey})};e.s(["default",0,o],24648);var l=e.i(24648),n=e.i(7031),p=e.i(181927),u=e.i(846432);let d=(0,a.hoist)(l,"default"),x=(0,a.hoist)(l,"config"),c=new i.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/push/vapid-key",pathname:"/api/push/vapid-key",bundlePath:"",filename:""},userland:l,distDir:".next",relativeProjectDir:""});async function m(e,r,i){i.requestMeta&&(0,u.setRequestMeta)(e,i.requestMeta),c.isDev&&(0,u.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/push/vapid-key";a=a.replace(/\/index$/,"")||"/";let s=await c.prepare(e,r,{srcPage:a});if(!s){r.statusCode=400,r.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve());return}let{query:o,params:l,prerenderManifest:d,routerServerContext:x}=s;try{let t,i=e.method||"GET",s=(0,n.getTracer)(),u=s.getActiveScopeSpan(),m=!!(null==x?void 0:x.isWrappedByNextServer),f=c.instrumentationOnRequestError.bind(c),h=async n=>c.render(e,r,{query:{...o,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:d.preview,propagateError:!1,dev:c.isDev,page:"/api/push/vapid-key",internalRevalidate:null==x?void 0:x.revalidate,onError:(...t)=>f(e,...t)}).finally(()=>{if(!n)return;n.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=s.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let o=e.get("next.route");if(o){let e=`${i} ${o}`;n.setAttributes({"next.route":o,"http.route":o,"next.span_name":e}),n.updateName(e),t&&t!==n&&(t.setAttribute("http.route",o),t.updateName(e))}else n.updateName(`${i} ${a}`)});m&&u?await h(u):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(p.BaseServerSpan.handleRequest,{spanName:`${i} ${a}`,kind:n.SpanKind.SERVER,attributes:{"http.method":i,"http.target":e.url}},h),void 0,!m))}catch(e){if(c.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==i.waitUntil||i.waitUntil.call(i,Promise.resolve())}}e.s(["config",0,x,"default",0,d,"handler",0,m],206892)}];
1
+ module.exports=[130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},504446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},755004,(e,t,r)=>{t.exports=e.x("tls",()=>require("tls"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),i=e.i(446786);let a=r.default.join(i.default.homedir(),".purplemux","logs"),s=process.env.LOG_LEVEL||"info",o=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,i]=r.split("=").map(e=>e.trim());e&&i&&(t[e]=i)}return t})(process.env.LOG_LEVELS),l=["trace","debug","info","warn","error","fatal"],n=globalThis;if(!n.__ptRootLogger){let e=[s,...Object.values(o)].reduce((e,t)=>l.indexOf(t)<l.indexOf(e)?t:e,"fatal");n.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(a,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let p=n.__ptRootLogger;e.s(["createLogger",0,e=>{let t=p.child({module:e});return t.level=o[e]??s,t}])},206892,e=>{"use strict";var t=e.i(926747),r=e.i(190406),i=e.i(244898),a=e.i(262950),s=e.i(228448);let o=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});let r=await (0,s.getVAPIDKeys)();return t.status(200).json({publicKey:r.publicKey})};e.s(["default",0,o],24648);var l=e.i(24648),n=e.i(7031),p=e.i(181927),u=e.i(846432);let d=(0,a.hoist)(l,"default"),x=(0,a.hoist)(l,"config"),c=new i.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/push/vapid-key",pathname:"/api/push/vapid-key",bundlePath:"",filename:""},userland:l,distDir:".next",relativeProjectDir:""});async function m(e,r,i){i.requestMeta&&(0,u.setRequestMeta)(e,i.requestMeta),c.isDev&&(0,u.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/push/vapid-key";a=a.replace(/\/index$/,"")||"/";let s=await c.prepare(e,r,{srcPage:a});if(!s){r.statusCode=400,r.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve());return}let{query:o,params:l,prerenderManifest:d,routerServerContext:x}=s;try{let t,i=e.method||"GET",s=(0,n.getTracer)(),u=s.getActiveScopeSpan(),m=!!(null==x?void 0:x.isWrappedByNextServer),f=c.instrumentationOnRequestError.bind(c),h=async n=>c.render(e,r,{query:{...o,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:d.preview,propagateError:!1,dev:c.isDev,page:"/api/push/vapid-key",internalRevalidate:null==x?void 0:x.revalidate,onError:(...t)=>f(e,...t)}).finally(()=>{if(!n)return;n.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=s.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let o=e.get("next.route");if(o){let e=`${i} ${o}`;n.setAttributes({"next.route":o,"http.route":o,"next.span_name":e}),n.updateName(e),t&&t!==n&&(t.setAttribute("http.route",o),t.updateName(e))}else n.updateName(`${i} ${a}`)});m&&u?await h(u):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(p.BaseServerSpan.handleRequest,{spanName:`${i} ${a}`,kind:n.SpanKind.SERVER,attributes:{"http.method":i,"http.target":e.url}},h),void 0,!m))}catch(e){if(c.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==i.waitUntil||i.waitUntil.call(i,Promise.resolve())}}e.s(["config",0,x,"default",0,d,"handler",0,m],206892)}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0.784vy._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__04o.cbq._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},597789,965898,e=>{"use strict";let t=process.env.__PMUX_PRISTINE_ENV,r=Object.freeze(t?JSON.parse(t):{...process.env});t||(process.env.__PMUX_PRISTINE_ENV=JSON.stringify(r)),e.s(["PRISTINE_ENV",0,r],965898);let a=new Set(["HOME","USER","LOGNAME","SHELL","PATH","TERM","COLORTERM","LANG","TMPDIR","SSH_AUTH_SOCK","SSH_CONNECTION","SSH_TTY","DISPLAY","WAYLAND_DISPLAY","XDG_RUNTIME_DIR","TZ"]),i=["LC_"],l=e=>a.has(e)||i.some(t=>e.startsWith(t)),n={TERM:"xterm-256color",COLORTERM:"truecolor"},s=()=>{let e={};for(let[t,a]of Object.entries(r))void 0!==a&&l(t)&&(e[t]=a);return{...e,...n}},u=e=>`'${e.replace(/'/g,"'\\''")}'`,o=()=>r.SHELL||"/bin/bash";e.s(["buildShellEnv",0,()=>s(),"buildShellLaunchCommand",0,()=>{let e=Object.entries(s()).map(([e,t])=>`${e}=${u(t)}`).join(" ");return`env -i TMUX="$TMUX" TMUX_PANE="$TMUX_PANE" ${e} ${u(o())} -l`},"defaultShell",0,o],597789)},713915,e=>{"use strict";var t=e.i(233405),r=e.i(924868),a=e.i(446786),i=e.i(814747),l=e.i(224361),n=e.i(597789),s=e.i(965898);let u=(0,l.promisify)(t.execFile),o=null,d=null,c=async()=>{let e=a.default.userInfo().shell||(0,n.defaultShell)();try{let{stdout:t}=await u(e,["-ilc",'echo -n "$PATH"'],{timeout:5e3,env:{...(0,n.buildShellEnv)(),SHELL:e,DISABLE_AUTO_UPDATE:"true",ZSH_TMUX_AUTOSTARTED:"true"}});return t.toString().trim()}catch{return s.PRISTINE_ENV.PATH||""}},p=async()=>o||(d||(d=c().then(e=>(o=e,d=null,e))),d),h=async(e,t,r)=>{try{let a=await p(),{stdout:i}=await u(e,t,{timeout:5e3,env:{...process.env,PATH:a}});return{installed:!0,version:r(i)}}catch{return{installed:!1,version:null}}},m=e=>e.trim().match(/(\d+\.\d+[\d.]*)/)?.[1]??null,v=[i.default.join(a.default.homedir(),".local","bin")],S=async()=>{for(let e of v)try{return await (0,r.access)(i.default.join(e,"claude")),e}catch{}return null},f=e=>e.installed&&null!==e.version&&parseFloat(e.version)>=2.9,E=async()=>{o=await c();let[e,t,l]=await Promise.all([h("tmux",["-V"],m),h("git",["--version"],m),h("claude",["--version"],m)]),n=(f(e)&&t.installed&&l.installed,l.installed?null:await S()),s=!1;if(l.installed||n)try{await (0,r.access)(i.default.join(a.default.homedir(),".claude")),s=!0}catch{}return{tmux:{...e,compatible:f(e)},git:t,claude:{...l,binaryPath:n,loggedIn:s}}},g=null,P=null,T=null,w=null,x=async()=>T&&Date.now()-T.checkedAt<1e3?T.result:w||(w=E().then(e=>(T={result:e,checkedAt:Date.now()},w=null,e)).catch(e=>{throw w=null,e})),R=async()=>{o=await c();let[e,t,r]=await Promise.all([h("tmux",["-V"],m),h("git",["--version"],m),h("claude",["--version"],m)]);return{tmux:{...e,compatible:f(e)},git:t,claude:r}},A=async()=>g&&Date.now()-g.checkedAt<3e4?g.result:P||(P=R().then(e=>(g={result:e,checkedAt:Date.now()},P=null,e)).catch(e=>{throw P=null,e}));e.s(["getCachedPreflightStatus",0,x,"getCachedRuntimePreflight",0,A,"getShellPath",0,p,"invalidateRuntimeCache",0,()=>{g=null,P=null}])},193367,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),l=e.i(713915);let n=async(e,t)=>{if("GET"===e.method){let e=await (0,l.getCachedRuntimePreflight)();return t.status(200).json(e)}if("POST"===e.method){(0,l.invalidateRuntimeCache)();let e=await (0,l.getCachedRuntimePreflight)();return t.status(200).json(e)}return t.setHeader("Allow","GET, POST"),t.status(405).json({error:"Method not allowed"})};e.s(["default",0,n],337990);var s=e.i(337990),u=e.i(7031),o=e.i(181927),d=e.i(846432);let c=(0,i.hoist)(s,"default"),p=(0,i.hoist)(s,"config"),h=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/preflight/runtime",pathname:"/api/preflight/runtime",bundlePath:"",filename:""},userland:s,distDir:".next",relativeProjectDir:""});async function m(e,r,a){a.requestMeta&&(0,d.setRequestMeta)(e,a.requestMeta),h.isDev&&(0,d.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/preflight/runtime";i=i.replace(/\/index$/,"")||"/";let l=await h.prepare(e,r,{srcPage:i});if(!l){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:n,params:s,prerenderManifest:c,routerServerContext:p}=l;try{let t,a=e.method||"GET",l=(0,u.getTracer)(),d=l.getActiveScopeSpan(),m=!!(null==p?void 0:p.isWrappedByNextServer),v=h.instrumentationOnRequestError.bind(h),S=async u=>h.render(e,r,{query:{...n,...s},params:s,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:c.preview,propagateError:!1,dev:h.isDev,page:"/api/preflight/runtime",internalRevalidate:null==p?void 0:p.revalidate,onError:(...t)=>v(e,...t)}).finally(()=>{if(!u)return;u.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=l.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==o.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=e.get("next.route");if(n){let e=`${a} ${n}`;u.setAttributes({"next.route":n,"http.route":n,"next.span_name":e}),u.updateName(e),t&&t!==u&&(t.setAttribute("http.route",n),t.updateName(e))}else u.updateName(`${a} ${i}`)});m&&d?await S(d):(t=l.getActiveScopeSpan(),await l.withPropagatedContext(e.headers,()=>l.trace(o.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:u.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},S),void 0,!m))}catch(e){if(h.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,p,"default",0,c,"handler",0,m],193367)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__04x_1t5._.js.map